# 🏆MVP
## Various Complements v10 正式リリース
[[🦉Fenice]]も頑張ったけど、どうせスクショなどの公開が難しいから、2ヶ月間ずっとbetaだった[[🦉Various Complements]]のv10リリースについて。
<div class="link-card">
<div class="link-card-header">
<img src="https://github.githubassets.com/favicons/favicon.svg" class="link-card-site-icon"/>
<span class="link-card-site-name">GitHub</span>
</div>
<div class="link-card-body">
<div class="link-card-content">
<p class="link-card-title">Release 10.0.0 · tadashi-aikawa/obsidian-various-complements-plugin</p>
<p class="link-card-description">🎇 Shiny New ThingsFallback linkify #292The Fallback linkify feature relaxes Match strategy or suggests creating a ... </p>
</div>
<img src="https://opengraph.githubassets.com/b2e66fa5ddabbf5097101a94865a1a64fb6e8cb55d2055bf0eb6bb3661cc4c5c/tadashi-aikawa/obsidian-various-complements-plugin/releases/tag/10.0.0" class="link-card-image" />
</div>
<a href="https://github.com/tadashi-aikawa/obsidian-various-complements-plugin/releases/tag/10.0.0"></a>
</div>
[[#🚀Releases]]でも触れているように、目玉機能は[[Fallback linkify]]。
実行するたびに候補表示の条件が緩和され、最終的には[[内部リンク]]の新規作成候補を表示するという挙動をする。
![frame](https://tadashi-aikawa.github.io/docs-obsidian-various-complements-plugin/resources/Pasted%20image%2020240504172436.png)
この機能はFeature Requestされたわけではなく、自分で考えて追加した機能。[[Internal link complement]]や[[Intelligent suggestion prioritization]]以来の目玉機能となる。
利用シーンとしては 『既に[[ノート]]を作成したと思っていたから[[Internal link complement]]の候補に表示されると思っていたら表示されない...』というケース。その場合、通常は以下のようなアクションを踏むと想定している。
1. 以下いずれかの方法で[[ノート]]を本気で探す
- [[🦉Another Quick Switcher]]で検索
- [[Match strategy (Various Complements)|Match strategy]]を`partial` に切り替える (prefixの場合)
2. 1で見つからない場合はカーソルを戻して新たな[[内部リンク]]として入力しなおす
[[Fallback linkify]]はこの2つのプロセスを[[ホットキー (Obsidian)|ホットキー]]1つで確認できる機能であり、カーソルを移動することなく最適なFallbackプロセスを提供する。
![frame](https://tadashi-aikawa.github.io/docs-obsidian-various-complements-plugin/resources/fallback-linkify.gif)
個人的にはそこまで大きな手間とは感じないが、人によってはカーソルキーに手を当てることすらも憚れるようなので、そのような方にはフィットするのかもしれない。ただ、普段`prefix`を使っているので、`partial`へのFallbackは便利かも。([[🦉Another Quick Switcher]]を使っていた)
# ✨Highlights
- [[📕Tailwind CSSでよく使う表現]]
- [[Tailwind CSS]]を仕事で本格利用することになったので、よく使うパターンをメモすることにした
- [[📜2024-04-29 openapi-zod-clientを使ってOpenAPI SpecificationのyamlファイルからZodのTypeScriptファイルを自動生成してみた]]
- `openapi.yaml`から自動で[[Zod]]対応のクライアントコードを生成できるのでめちゃくちゃ楽
- 今までは生成されるクライアントのIFや手間があったので独自実装し続けていたが、ようやく脱却できそう
- [[📜2024-04-29 orvalを使ってOpenAPI SpecificationのyamlファイルからZodのTypeScriptファイルを自動生成してみた]]
- [[openapi-zod-client]]の前に[[orval]]で試した記録
- [[📜2024-05-03 12時間以上経ってからFeniceを起動するとトークンのエラーになる件]]
- [[🦉Fenice]]が抱えている厄介な不具合の1つ
- ちゃんと調査してないので調査すれば解決するとは思うけど.. 優先度は低くなる
- 5月中にストア公開したいので、それまでに修正したい
- [[📜2024-05-05 Slack Web APIのchat.postMessageでスレッド返信したときchannelにも通知する方法の調査]]
- 字面通りの挙動はしたけど、どうしてもBOTユーザーになってしまうので利用は断念した
- [[📝Neovimからnone-ls経由で実行したBiomeのフォーマットとCLIのbiome formatコマンドの結果が異なる]]
- 今まで雰囲気で設定してた[[nvim-lspconfig]]と[[none-ls.nvim]]のツケが一気に回ってきた感じ
- かなり苦戦したけど、解決したし勉強にもなったのでよかった
- [[📝Neovimで設定したautocmdがnvim_clear_autocmdsを呼び出していないのに無効化されてしまう]]
- [[Neovim]]は[[augroup]]周りの冗長な表現がなくなっているという記憶はあったけど、これのことか... `autocmd`コマンド使わずにやってたら滅茶苦茶ハマった (それはそう)
# 🚀Releases
- [[🦉Various Complements]]
- [Various Complements v10.0.0リリース](https://github.com/tadashi-aikawa/obsidian-various-complements-plugin/releases/tag/10.0.0)
- [[Fallback linkify]]、特定ワードパターンをindexing対象から除外、オプションのデフォルト値変更 など
- [[🦉Another Quick Switcher]]
- [Another Quick Switcher v11.4.0リリース](https://github.com/tadashi-aikawa/obsidian-another-quick-switcher/releases/tag/11.4.0)
- [[エイリアス (Obsidian)|エイリアス]]が存在する場合、常に[[エイリアス (Obsidian)|エイリアス]]をタイトルとして候補に表示するオプション 'Display the alias as the title'
- [[🦉Fenice]]
- [Fenice v0.7.0リリース](https://github.com/tadashi-aikawa/fenice/releases/tag/v0.7.0)
- 絵文字補完やメンション補完のソートロジック、ソート順、最大候補数を改善
- [Fenice v0.8.0リリース](https://github.com/tadashi-aikawa/fenice/releases/tag/v0.8.0)
- スレッド返信機能、captionの削除 など
- [[🦉Jumeaux]]
- [Jumeaux v5.0.1リリース](https://tadashi-aikawa.github.io/jumeaux/ja/releases/v5/#501)
- セキュリティアップデート
# 👑Page Ranking
| 位 | ノート | 閲覧数 | 前週 |
| ---------- | -------------------------------------------------------- | --- | --- |
| **1** (V2) | [[📝pip installするとexternally-managed-environmentエラーが出る]] | 107 | 1 |
| ↗️**2** | [[📘果てなきデイリーノートの旅路 with Obsidian]] | 94 | 3 |
| ️↘️**3** | [[📘丸3年Obsidianを利用して培ったノート戦略を体系化してみた]] | 72 | 2 |
| 4 | [[📘あまり紹介されていないけど かけがえのないNeovimプラグインたち]] | 66 | 4 |
| 5 | [[📘VimmerエンジニアのObsidian利用方法 ~1年半使ってみて~]] | 60 | 5 |
# 👀Reading
## エラーや非同期処理をより安全に扱うための TypeScript ライブラリ Effect-TS
<div class="link-card">
<div class="link-card-header">
<img src="https://azukiazusa.dev/favicon.png" class="link-card-site-icon"/>
<span class="link-card-site-name">azukiazusaのテックブログ2</span>
</div>
<div class="link-card-body">
<div class="link-card-content">
<p class="link-card-title">エラーや非同期処理をより安全に扱うための TypeScript ライブラリ Effect-TS</p>
<p class="link-card-description">Effect-TS は、開発者が複雑なエラーや非同期処理をより安全に開発できるようにすることを目的とした TypeScript ライブラリです。Effect-TS は、TypeScript の型システムを活用して ... </p>
</div>
<img src="https://azukiazusa.dev/blog/ogp/%E3%82%A8%E3%83%A9%E3%83%BC%E3%82%84%E9%9D%9E%E5%90%8C%E6%9C%9F%E5%87%A6%E7%90%86%E3%82%92%E3%82%88%E3%82%8A%E5%AE%89%E5%85%A8%E3%81%AB%E6%89%B1%E3%81%86%E3%81%9F%E3%82%81%E3%81%AE%20TypeScript%20%E3%83%A9%E3%82%A4%E3%83%96%E3%83%A9%E3%83%AA%20Effect-TS/TypeScript/Effect-TS.png" class="link-card-image" />
</div>
<a href="https://azukiazusa.dev/blog/typescript-library-for-safer-error-handling-and-async-operations-effect-ts"></a>
</div>
~~~
関数型系はいくつか試したし、Resultも自作したことあるけど、結局はGo形式のエラーハンドリングがなんだかんだ実用的という結論になりつつある。type guardも効くし。
何より、関数型の理解ない人が引き継げなかったり、途中でライブラリーのメンテ止まるのがきつい。言語仕様と思想が違うのも手伝って。
https://azukiazusa.dev/blog/typescript-library-for-safer-error-handling-and-async-operations-effect-ts
~~~
## 導入3000台「転ばない」「よけて通る」ネコ型配膳ロボが賢い理由|CHANTO WEB
<div class="link-card">
<div class="link-card-header">
<img src="https://chanto.ismcdn.jp/common/images/android-icon.png" class="link-card-site-icon"/>
<span class="link-card-site-name">CHANTO WEB</span>
</div>
<div class="link-card-body">
<div class="link-card-content">
<p class="link-card-title">導入3000台「転ばない」「よけて通る」ネコ型配膳ロボが賢い理由|CHANTO WEB</p>
<p class="link-card-description">近年、ロボットは多くのサービスシーンで活躍しています。「ガスト」「しゃぶ葉」「バーミヤン」など、すかいらーくグループのファミレスチェーンで見られるのは、猫をモチーフにした配膳ロボット。その導入にはどんな目的があっ ... </p>
</div>
<img src="https://chanto.ismcdn.jp/mwimgs/5/2/1200wm/img_520a353c4b029593ab48ee179f707c43471772.jpg" class="link-card-image" />
</div>
<a href="https://chanto.jp.net/articles/-/1003328?display=b"></a>
</div>
~~~
人間が考えたフローの一部をAIに任せようとするケースを多く見かけるけど、そうじゃない。
この記事のようにAIができることを把握し、活躍できる状況を考え、今のフローの目的に沿って今のフローを変えていく必要がある。
改善が苦手な組織はこれができない。
https://chanto.jp.net/articles/-/1003328?display=b
~~~
## 📘Dataviewをプロパティで操作
<div class="link-card">
<div class="link-card-header">
<img src="https://masaki39.github.io/static/icon.png" class="link-card-site-icon"/>
<span class="link-card-site-name">masaki39.github.io</span>
</div>
<div class="link-card-body">
<div class="link-card-content">
<p class="link-card-title">📘Dataviewをプロパティで操作</p>
<p class="link-card-description">はじめに 久しぶりに Dataview でのノート抽出方法を見直す。目的は、抽出方法自体を動的に変更して、データベース検索ページが作ることだ。それと、今回は自作プラグイン Outline Converter で文章を書いてみることにする。 以前のコード 以下の通り。 table without id authors0 as ... ... </p>
</div>
<img src="https://quartz.jzhao.xyz/static/og-image.png" class="link-card-image" />
</div>
<a href="https://masaki39.github.io/%F0%9F%93%98Dataview%E3%82%92%E3%83%97%E3%83%AD%E3%83%91%E3%83%86%E3%82%A3%E3%81%A7%E6%93%8D%E4%BD%9C"></a>
</div>
~~~
プロパティを入力コンポーネントに見立てる発想が斬新だと思った。
https://masaki39.github.io/%F0%9F%93%98Dataview%E3%82%92%E3%83%97%E3%83%AD%E3%83%91%E3%83%86%E3%82%A3%E3%81%A7%E6%93%8D%E4%BD%9C
~~~
## 全米が感動したイチロースピーチに学ぶ「オレオレ・スピーチ」からの脱却(リップシャッツ 信元夏代)
<div class="link-card">
<div class="link-card-header">
<img src="https://gendai.media/common/frau/images/icons/da7c024e3594ab00db25b3023db7a951f217aeae.png" class="link-card-site-icon"/>
<span class="link-card-site-name">FRaU | 講談社</span>
</div>
<div class="link-card-body">
<div class="link-card-content">
<p class="link-card-title">全米が感動したイチロースピーチに学ぶ「オレオレ・スピーチ」からの脱却(リップシャッツ 信元夏代)</p>
<p class="link-card-description">新型コロナの中、世界各国のリーダーたちのスピーチを聞いて、「心に響くもの」「心に入ってこないもの」を感じることはなかった ... </p>
</div>
<img src="https://gendai-m.ismcdn.jp/mwimgs/e/8/1200m/img_e81effcda5773e194974ed816fa33e5d34677.jpg" class="link-card-image" />
</div>
<a href="https://gendai.media/articles/-/73282?page=1&imp=0"></a>
</div>
~~~
なんとなくやってたこともあるけど、主語までは意識できてなかった。今度機会があったら活かしてみたい。
https://gendai.media/articles/-/73282?page=1&imp=0
~~~
## #153 フィードバックをするときに気をつけてることってありますか?
<div class="link-card">
<div class="link-card-header">
<img src="https://open.spotifycdn.com/cdn/images/favicon32.b64ecc03.png" class="link-card-site-icon"/>
<span class="link-card-site-name">Spotify</span>
</div>
<div class="link-card-body">
<div class="link-card-content">
<p class="link-card-title">#153 フィードバックをするときに気をつけてることってありますか?</p>
<p class="link-card-description">Listen to this episode from Work In Progress on Spotify. フィードバックをする際に気をつけていることや印象に残っているフィードバックについて話しました。◎ 関連リンクフィードバックガイドライン ... </p>
</div>
<img src="https://i.scdn.co/image/ab6765630000ba8a84d35c98e7c15ae1f7136715" class="link-card-image" />
</div>
<a href="https://open.spotify.com/episode/1fkEpx9qKl1WshimYgRNA2?si=vgaxFKW5TZ-U1toIrje_FQ"></a>
</div>
~~~
フィードバックする側・受ける側の双方にとってとてもいい話。
たまに直接聞いたときと第三者を通したときでFB違う人いるけど、一気に信頼感0になるからそれだけはやめてほしいと思っている。一番いいのは『直接FBしてくれる』→『今後についてお互いに意見交換し集約』→『第3者からのFBはその結果を再確認のために聞くだけ』という形かなと。文字だけの一方的なFBとかは論外。
https://open.spotify.com/episode/1fkEpx9qKl1WshimYgRNA2?si=vgaxFKW5TZ-U1toIrje_FQ
~~~
## Vimの思想について
<div class="link-card">
<div class="link-card-header">
<img src="https://static.zenn.studio/images/logo-transparent.png" class="link-card-site-icon"/>
<span class="link-card-site-name">Zenn</span>
</div>
<div class="link-card-body">
<div class="link-card-content">
<p class="link-card-title">Vimの思想について</p>
</div>
<img src="https://res.cloudinary.com/zenn/image/upload/s---RkKy4FH--/c_fit%2Cg_north_west%2Cl_text:notosansjp-medium.otf_55:Vim%25E3%2581%25AE%25E6%2580%259D%25E6%2583%25B3%25E3%2581%25AB%25E3%2581%25A4%25E3%2581%2584%25E3%2581%25A6%2Cw_1010%2Cx_90%2Cy_100/g_south_west%2Cl_text:notosansjp-medium.otf_37:convers39%2Cx_203%2Cy_121/g_south_west%2Ch_90%2Cl_fetch:aHR0cHM6Ly9zdG9yYWdlLmdvb2dsZWFwaXMuY29tL3plbm4tdXNlci11cGxvYWQvYXZhdGFyLzE5MDY4Y2U3NTguanBlZw==%2Cr_max%2Cw_90%2Cx_87%2Cy_95/v1627283836/default/og-base-w1200-v2.png" class="link-card-image" />
</div>
<a href="https://zenn.dev/convers39/articles/d875643a4fabf6"></a>
</div>
~~~
新たにcdoを習得した
https://zenn.dev/convers39/articles/d875643a4fabf6
~~~
# 📚New Notes
- [[Zodios]]
- [[openapi-zod-client]]
- [[orval]]
- [[インストールされたパッケージ一覧を表示 (Bun)]]
- [[クライアントトークン (Slack)]]
- [[設定 (Vitest)]]
- [[📕Tailwind CSSでよく使う表現]]
- [[📜2024-04-29 openapi-zod-clientを使ってOpenAPI SpecificationのyamlファイルからZodのTypeScriptファイルを自動生成してみた]]
- [[📜2024-04-29 orvalを使ってOpenAPI SpecificationのyamlファイルからZodのTypeScriptファイルを自動生成してみた]]
- [[📜2024-05-03 12時間以上経ってからFeniceを起動するとトークンのエラーになる件]]
- [[📜2024-05-05 Slack Web APIのchat.postMessageでスレッド返信したときchannelにも通知する方法の調査]]
- [[📝Neovimからnone-ls経由で実行したBiomeのフォーマットとCLIのbiome formatコマンドの結果が異なる]]
- [[📝Neovimで設定したautocmdがnvim_clear_autocmdsを呼び出していないのに無効化されてしまう]]
- [[📰2024年17週 Weekly Report]]