# 📰Impression ## [[Vim駅伝]]の記事執筆 かねてより参加表明していた[[Vim駅伝]]の記事を3月27日に公開した。 <div class="link-card-v2"> <div class="link-card-v2-site"> <img class="link-card-v2-site-icon" src="https://publish-01.obsidian.md/access/35d05cd1bf5cc500e11cc8ba57daaf88/favicon-64.png" /> <span class="link-card-v2-site-name">Minerva</span> </div> <div class="link-card-v2-title"> 📘Vimを使わないVimmerであってもいい </div> <div class="link-card-v2-content">VimやNeovimを日常的に使わなくても、Vimの哲学やキーバインドはObsidianやVSCode、IntelliJ IDEA、Vimiumなど多様なツールで活かせます。Vimの思想を取り入れることで生産性向上が可能です。Vim初心者や他エディタ利用者にも役立つ内容を詳しく解説しています。</div> <img class="link-card-v2-image" src="https://publish-01.obsidian.md/access/35d05cd1bf5cc500e11cc8ba57daaf88/%F0%9F%93%98Articles/attachments/2023-03-27.jpg" /> <a data-href="📘Vimを使わないVimmerであってもいい" class="internal-link"></a> </div> %%[[📘Vimを使わないVimmerであってもいい]]%% 初日が200View、公開から1週間で302Viewとなかなかの数字。[[Minerva]]への休日アクセス数が大体200View/日なので、それに匹敵する数字だ。実際のところ3月27日は全体で542Viewと、普段よりも200Viewほど多かった。 [[Vim駅伝]]自体も無事1ヶ月継続したので、また1ヶ月くらいに記事を書いてみたいと思った。まだ続いていれば...。 ## [[🦉Silhouette]]で計測状態を引き継ぎ可能に [[Obsidian]]で再起動したときや、別の端末で同期された内容を引き継いだ時、[[🦉Silhouette]]の計測状態も復元できるようにした。 <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"> <div> <p class="link-card-title">Release 0.13.0 · tadashi-aikawa/silhouette</p> </div> <div class="link-card-description"> 🔼 Improvements再起動後も計測状態を維持できるようになりました計測中のままObsidianを再起動して操作すると、状態を引き継げない問題が解消しました計測中データのJSO... </div> </div> <img src="https://opengraph.githubassets.com/9755337d866783c637adfc1004df1a5786e3d80f5c99e3ddf407c5cb0cad5642/tadashi-aikawa/silhouette/releases/tag/0.13.0" class="link-card-image" /> </div> <a href="https://github.com/tadashi-aikawa/silhouette/releases/tag/0.13.0"></a> </div> これで[[Obsidian]]開発中のリロードでカウントが停止したり、別端末と作業するときにでも何も考えなくていい。永続化の仕組みをしっかり組み込んだので少し大変だったが、`data.json`以外の設定ファイルとやりとりするノウハウは[[🦉Various Complements]]でも利用できるので、ちょうどいい練習にもなった。 ## コワーキングスペース月間フリーパス 最近通い始めたコワーキングスペースの月間フリーパスを購入した。土日祝のみ利用可能な形態だが、平日は基本仕事なので必要ないからコスパという意味合いでもちょうどいい。もし平日に休みをとるときは、家で作業したり、パソコンから離れて休日を満喫するという方針もいいだろう。 どうしても土日に家にいるとあまり捗らないという事実があるので、土日に綺麗なスペースで美味しいコーヒーを飲みながら作業することは思いの外捗る。コワーキングスペースの周囲はオフィステナント(のはず)だし、19時に閉店するから遅くなりすぎずにいい。そして他の同志と一緒に閉店直前にゾロゾロ外に出ると、謎の一体感があってクセになる。副業している気分だ。 なお、コワーキングスペースでは色々と環境の模索をしてみた。 <div class="link-card"> <div class="link-card-header"> <img src="https://publish-01.obsidian.md/access/35d05cd1bf5cc500e11cc8ba57daaf88/favicon-64.png" class="link-card-site-icon"/> <span class="link-card-site-name">minerva.mamansoft.net</span> </div> <div class="link-card-body"> <div class="link-card-content"> <div> <p class="link-card-title">📜コワーキングスペースに装備をどこまで持ち込んだら捗るか試してみた</p> </div> <div class="link-card-description"> コワーキングスペースはデスクが広いので、色々と持ち込んだときにどれくらい捗るか、費用対効果があるかを試してみた。 </div> </div> <img src="https://publish-01.obsidian.md/access/35d05cd1bf5cc500e11cc8ba57daaf88/Notes/attachments/minerva-image.webp" class="link-card-image" /> </div> <a class="internal-link" data-href="📜コワーキングスペースに装備をどこまで持ち込んだら捗るか試してみた" ></a> </div> %%[[📜コワーキングスペースに装備をどこまで持ち込んだら捗るか試してみた]]%% 結論としては、意外にもノートパソコン1台のみで作業するのが一番効果的な気がしている。[[New Precision 5470]]のキーボードが思いの外、長時間の作業に対して指が優しいという結果も手伝っている気がする。(最近腱鞘炎気味だが、これが[[New Precision 5470]]のせいか、[[尊師スタイル]]で[[HHKB]]使っているせいかは謎であるが...) ## [[OpenAI API]]でプロトタイプ ここ最近、[[ChatGPT]]や[[OpenAI]]の話でつきっきりだが、それを使って何か作ったことはなかったので作ってみた。 <div class="link-card-v2"> <div class="link-card-v2-site"> <img class="link-card-v2-site-icon" src="https://publish-01.obsidian.md/access/35d05cd1bf5cc500e11cc8ba57daaf88/favicon-64.png" /> <span class="link-card-v2-site-name">Minerva</span> </div> <div class="link-card-v2-title"> 📜OpenAI APIを使って従業員のシフトを自然言語からJSONにパースしてみた </div> <div class="link-card-v2-content">OpenAI APIを使い、シフト表などのテキストをAIでJSONへパースするPython・TypeScriptの実装例を紹介。業務効率化やコスト感、フロントエンドからの利用方法もまとめ、text-davinci-003とgpt-3.5-turboの違いにも触れています。</div> <img class="link-card-v2-image" src="https://publish-01.obsidian.md/access/35d05cd1bf5cc500e11cc8ba57daaf88/Notes/attachments/activity.webp" /> <a data-href="📜OpenAI APIを使って従業員のシフトを自然言語からJSONにパースしてみた" class="internal-link"></a> </div> %%[[📜OpenAI APIを使って従業員のシフトを自然言語からJSONにパースしてみた]]%% 作ったものは実用的なものではなくおままごとのようなプロトタイプだが、[[OpenAI API]]のポテンシャルを測るには十分だと思う。 ![[2023-03-29_22h18_29.png|frame]] *AIがシフト表を解釈してformにデフォルト値を挿入した図* [[GPT-4]]がAPIから利用できるようになれば可能性は広がるが、近年では[[GPT-4]]以上のAI利用を禁止する流れも始まっているので、どこまで活用すべきか、どこまで依存すべきかは難しい問題だと思った。 # 🎇Shiny Outputs ## 🦉My products - [[🦉Silhouette]] - [Silhouette v0.13.0リリース](https://github.com/tadashi-aikawa/silhouette/releases/tag/0.13.0) - [Silhouette v0.13.1リリース](https://github.com/tadashi-aikawa/silhouette/releases/tag/0.13.1) - [[🦉Various Complements]] - [Various Complements v8.2.0-beta1リリース](https://github.com/tadashi-aikawa/obsidian-various-complements-plugin/releases/tag/8.2.0-beta1) - [[🦉Another Quick Switcher]] - [Another Quick Switcher v8.7.1リリース](https://github.com/tadashi-aikawa/obsidian-another-quick-switcher/releases/tag/8.7.1) ## 📘Articles - [[📘Vimを使わないVimmerであってもいい]] ## 📖Publish - [[📜2023-03-27 Neovimのファイルエクスプローラーをsidebar.nvimからnvim-tree.luaに戻す]] - [[📜Another Quick SwitcherでPinnedした状態でダイアログを開くと即座に新しいペインが表示されてしまうバグ]] - [[📜IntelliJ IDEAを2023.1にバージョンアップ]] - [[📜2023-04 Neovimのターミナルを使いやすくする]] - [[📜Neovimのプラグインマネージャーをpacker.nvimからlazy.nvimに移行してみた]] - [[📜2023-03 NeoVimの起動を高速化してみた]] - [[📜OpenAI APIを使って従業員のシフトを自然言語からJSONにパースしてみた]] - [[📜2023-04-01 Silhouetteの計測中にObsidianを閉じてもあとで開きなおしたときに動くようにする]] - [[📜コワーキングスペースに装備をどこまで持ち込んだら捗るか試してみた]] - [[📝coc.nvimでLuaのコードを保存時に自動フォーマットできない]] - [[📝coc.nvimでMarkdownファイルが勝手にフォーマットされてしまう]] - [[📝IntelliJ IDEAの2023.1になってからGitの差分表示が新しいダイアログではなくなった]] - [[📝Lazy.nvimでvim-visual-multiのremap設定が効かない]] - [[📝Neovimで一部keymapの設定が効かない]] - [[📝telescope-frecency.nvimで最近開いたファイルが候補にも表示されない]] - [[📰2023年12週 Weekly Report]] - [[📰OpenAI APIの料金]] ## 🙋[[Mond]] - [vimmerの人はなぜvimを熱く布教してくるのでしょうか?入信したほうがご利益がありますか? \| Mond](https://mond.how/ja/topics/ya9wo8vddjp22jh/9tjj9meyttcjxbr) - [vim って、viが変化したものですよね。unixではvi使うことはあるけど、obsidianでvim使う事がありません。 \| Mond](https://mond.how/ja/topics/7am4wmrlcnhkwsa/h73g5gphfg9u4qc) # 👀Medias ## 爆速で起動する Neovim を作る [[Neovim]]の起動速度を本気で高速化するための試行錯誤記事。[[packer.nvim]]をつかっている。 <div class="link-card"> <div class="link-card-header"> <img src="https://cdn.qiita.com/assets/favicons/public/production-c620d3e403342b1022967ba5e3db1aaa.ico" class="link-card-site-icon"/> <span class="link-card-site-name">Qiita</span> </div> <div class="link-card-body"> <div class="link-card-content"> <div> <p class="link-card-title">爆速で起動する Neovim を作る - Qiita</p> </div> <div class="link-card-description"> 1. ayamir/nvimdots の衝撃このエントリーを書くきっかけとなったのは以下のレポジトリーを見たことでした。ayamir/nvimdots: A well configured a... </div> </div> <img src="https://qiita-user-contents.imgix.net/https%3A%2F%2Fcdn.qiita.com%2Fassets%2Fpublic%2Farticle-ogp-background-9f5428127621718a910c8b63951390ad.png?ixlib=rb-4.0.0&w=1200&mark64=aHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTkxNiZ0eHQ9JUU3JTg4JTg2JUU5JTgwJTlGJUUzJTgxJUE3JUU4JUI1JUI3JUU1JThCJTk1JUUzJTgxJTk5JUUzJTgyJThCJTIwTmVvdmltJTIwJUUzJTgyJTkyJUU0JUJEJTlDJUUzJTgyJThCJnR4dC1jb2xvcj0lMjMyMTIxMjEmdHh0LWZvbnQ9SGlyYWdpbm8lMjBTYW5zJTIwVzYmdHh0LXNpemU9NTYmdHh0LWNsaXA9ZWxsaXBzaXMmdHh0LWFsaWduPWxlZnQlMkN0b3Amcz0yOWM3OTA0NTFjNjdhODhmYTMzNmJlNWU4ZWUyNmJjNQ&mark-x=142&mark-y=112&blend64=aHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTYxNiZ0eHQ9JTQwZGVscGhpbnVzJnR4dC1jb2xvcj0lMjMyMTIxMjEmdHh0LWZvbnQ9SGlyYWdpbm8lMjBTYW5zJTIwVzYmdHh0LXNpemU9MzYmdHh0LWFsaWduPWxlZnQlMkN0b3Amcz00ZDNmZWUwNWYyY2M5MDE1NjhmZDc2OGJmM2Q4ZTFiYg&blend-x=142&blend-y=491&blend-mode=normal&s=399759a00523d907499fb920b66cacef" class="link-card-image" /> </div> <a href="https://qiita.com/delphinus/items/fb905e452b2de72f1a0f"></a> </div> この記事のおかげで私も[[Neovim]]の読み込み高速化に対する意識が高まったが、[[packer.nvim]]の設定は難しすぎたため、[[lazy.nvim]]に乗り換えることになった。 ## AI時代のプログラマの在り方 最近AIの進化によって、エンジニアとして今後どうあるべきかを真剣に考える機会が増えたが、その際に必ずといっていいほど訪れる不安とどう向き合うかという記事。 <div class="link-card"> <div class="link-card-header"> <img src="https://assets.st-note.com/poc-image/manual/note-common-images/production/svg/production.ico" class="link-card-site-icon"/> <span class="link-card-site-name">note(ノート)</span> </div> <div class="link-card-body"> <div class="link-card-content"> <div> <p class="link-card-title">AI時代のプログラマの在り方|牛尾 剛|note</p> </div> <div class="link-card-description"> ChatGPT 4がリリースされてから、近い将来プログラマという職業はどうなってしまうのだろうと、と不安になったのですが、ようやく考え方が整理できたので書いてみたいと思います。 AIと過去のテクノロ... </div> </div> <img src="https://assets.st-note.com/production/uploads/images/101447851/rectangle_large_type_2_5ad95beff754c3c46cee37ee65cf3dfc.jpeg?fit=bounds&quality=85&width=1280" class="link-card-image" /> </div> <a href="https://note.com/simplearchitect/n/n76b0b7954ebb"></a> </div> ## Canvas – それはまるで、理想のあの人のように [[Obsidian]]の[[Canvas (Obsidian)|Canvas]]機能についての紹介記事。最近沈黙から復活した[[👤ぷーおん]]さんらしい文章。 <div class="link-card"> <div class="link-card-header"> <img src="https://pouhon.net/wp-content/uploads/2020/12/favicon000-150x150.png" class="link-card-site-icon"/> <span class="link-card-site-name">Output 0.1</span> </div> <div class="link-card-body"> <div class="link-card-content"> <div> <p class="link-card-title">[Obsidian] Canvas – それはまるで、理想のあの人のように</p> </div> <div class="link-card-description"> 本当はこういうこと、あんまり公の場で言っちゃいけないってのは重々承知なんですけどね……奥さん。 </div> </div> <img src="https://pouhon.net/wp-content/uploads/2020/10/obsidian_logo.jpg" class="link-card-image" /> </div> <a href="https://pouhon.net/obsidian-canvas/7616/"></a> </div> ## Neovimを完全にLuaLuaさせた [[Neovim]]の[[init.vim]]を[[init.lua]]化した記事かと思いきや、[[init.lua]]における設定や[[パッケージマネージャー]]選定のクールなチョイスが紹介されていたりする。 <div class="link-card"> <div class="link-card-header"> <img src="https://riq0h.jp/favicon-32x32.png" class="link-card-site-icon"/> <span class="link-card-site-name">点と接線。</span> </div> <div class="link-card-body"> <div class="link-card-content"> <div> <p class="link-card-title">Neovimを完全にLuaLuaさせた - 点と接線。</p> </div> <div class="link-card-description"> 前回の記事の続編にして最終章の幕開けである。ついにinit.lua化は果たされ、主だったプラグインはどれもLua製に置き換わった。プラグイン総数が50前後しかないカジュアルユーザの僕でも丸一日かかった... </div> </div> <img src="https://riq0h.jp/siteicon.png" class="link-card-image" /> </div> <a href="https://riq0h.jp/2023/01/20/210601/"></a> </div> ## Vim 駅伝開始1ヶ月を振り返る [[Vim駅伝]]が1ヶ月継続した記念の記事。私も3月27日に参加させてもらい、[[📘Vimを使わないVimmerであってもいい]]を執筆した。 <div class="link-card"> <div class="link-card-header"> <img src="https://zenn.dev/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"> <div> <p class="link-card-title">Vim 駅伝開始1ヶ月を振り返る</p> </div> <div class="link-card-description"> </div> </div> <img src="https://res.cloudinary.com/zenn/image/upload/s--ggiul6rq--/c_fit%2Cg_north_west%2Cl_text:notosansjp-medium.otf_55:Vim%2520%25E9%25A7%2585%25E4%25BC%259D%25E9%2596%258B%25E5%25A7%258B1%25E3%2583%25B6%25E6%259C%2588%25E3%2582%2592%25E6%258C%25AF%25E3%2582%258A%25E8%25BF%2594%25E3%2582%258B%2Cw_1010%2Cx_90%2Cy_100/co_rgb:6e7b85%2Cg_south_west%2Cl_text:notosansjp-medium.otf_30:vim-jp%2Cx_220%2Cy_135/g_south_west%2Cl_text:notosansjp-medium.otf_34:monaqa%2Cx_220%2Cy_84/bo_3px_solid_rgb:d6e3ed%2Cg_south_west%2Ch_90%2Cl_fetch:aHR0cHM6Ly9zdG9yYWdlLmdvb2dsZWFwaXMuY29tL3plbm4tdXNlci11cGxvYWQvYXZhdGFyLzU1YzllYzNiYzAuanBlZw==%2Cr_20%2Cw_90%2Cx_92%2Cy_82/bo_4px_solid_white%2Cg_south_west%2Ch_50%2Cl_fetch:aHR0cHM6Ly9zdG9yYWdlLmdvb2dsZWFwaXMuY29tL3plbm4tdXNlci11cGxvYWQvYXZhdGFyLzE3OTQ0OWFlNjYuanBlZw==%2Cr_max%2Cw_50%2Cx_139%2Cy_64/og-base.png" class="link-card-image" /> </div> <a href="https://zenn.dev/vim_jp/articles/2023-03-31-vim-ekiden-looking-back-the-first-month"></a> </div> ## neovimターミナルモードエスケープと即座に確定するマッピング [[Neovim]]のターミナルモードが使いにくかったけど、この辺の設定を入れたらいい感じになった。 <div class="link-card"> <div class="link-card-header"> <img src="https://zenn.dev/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"> <div> <p class="link-card-title">neovimターミナルモードエスケープと即座に確定するマッピング</p> </div> <div class="link-card-description"> </div> </div> <img src="https://res.cloudinary.com/zenn/image/upload/s--1O7uoIrr--/c_fit%2Cg_north_west%2Cl_text:notosansjp-medium.otf_55:neovim%25E3%2582%25BF%25E3%2583%25BC%25E3%2583%259F%25E3%2583%258A%25E3%2583%25AB%25E3%2583%25A2%25E3%2583%25BC%25E3%2583%2589%25E3%2582%25A8%25E3%2582%25B9%25E3%2582%25B1%25E3%2583%25BC%25E3%2583%2597%25E3%2581%25A8%25E5%258D%25B3%25E5%25BA%25A7%25E3%2581%25AB%25E7%25A2%25BA%25E5%25AE%259A%25E3%2581%2599%25E3%2582%258B%25E3%2583%259E%25E3%2583%2583%25E3%2583%2594%25E3%2583%25B3%25E3%2582%25B0%2Cw_1010%2Cx_90%2Cy_100/g_south_west%2Cl_text:notosansjp-medium.otf_37:fuzmare%2Cx_203%2Cy_98/g_south_west%2Ch_90%2Cl_fetch:aHR0cHM6Ly9saDMuZ29vZ2xldXNlcmNvbnRlbnQuY29tL2EtL0FPaDE0R2hXeXNFR1h2VTVUX0ZodzJHYnNQX3M2Z3A5YXpjWWVDanVBaENkcmc9czk2LWM=%2Cr_max%2Cw_90%2Cx_87%2Cy_72/og-base.png" class="link-card-image" /> </div> <a href="https://zenn.dev/fuzmare/articles/vim-term-escape"></a> </div> ## Canvasに宿る「保留の美学」とは [[#Canvas – それはまるで、理想のあの人のように]] の続き記事。前回記事は砕けすぎていたけど、本記事は[[Canvas (Obsidian)|Canvas]]利用方法の本質に迫っていて面白かった。 <div class="link-card"> <div class="link-card-header"> <img src="https://pouhon.net/wp-content/uploads/2020/12/favicon000-150x150.png" class="link-card-site-icon"/> <span class="link-card-site-name">Output 0.1</span> </div> <div class="link-card-body"> <div class="link-card-content"> <div> <p class="link-card-title">[Obsidian] Canvasに宿る「保留の美学」とは</p> </div> <div class="link-card-description"> 前回は取り乱してしまい、誠に申し訳ありませんでした。いや、違うんすよ。僕もね、真面目に操作解説やってたつもりなんすけど、いつの間にか変な方向行っちゃって……あんなこと書くつもりじゃなかったのに、おっか... </div> </div> <img src="https://pouhon.net/wp-content/uploads/2020/10/obsidian_logo.jpg" class="link-card-image" /> </div> <a href="https://pouhon.net/obsidian-canvas-hold/7670/"></a> </div> # 📚Inputs - [[🎮OpenAI API Playground]] - [[Beautiful Soup]] - [[CB-CD23]] - [[Chat completion API]] - [[coc.nvimでdiagnosticにアイコンを表示]] - [[coc.nvimでVue3開発]] - [[coc.nvimで上下キーで候補を選択]] - [[coc-prettier]] - [[coc-volar]] - [[code-davinci-002]] - [[Codex]] - [[Completion API]] - [[Diffview.nvim]] - [[GitHubのリポジトリでプルリクエスト作成時のテンプレート]] - [[gpt-3.5-turbo]] - [[gruvbox]] - [[gruvbox-material]] - [[gruvbox.nvim]] - [[lazy.nvim]] - [[キーバインド設定を確認 (Neovim)]] - [[Neovimでファイルを開いたらカレントディレクトリを変更]] - [[Neovimで変数を確認]] - [[normalizedPath]] - [[normalizePath]] - [[nvim-surround]] - [[nvim-treesitter]] - [[Nvim-web-devicons]] - [[obsidian.d.ts]] - [[PIL]] - [[Pillow]] - [[Pythonで複数行文字列]] - [[ディレクトリ内を全文検索 (telescope.nvim)]] - [[text-davinci-003]] - [[lodashを使わずにdebounce (TypeScript)]] - [[VimDevIcons]] - [[ウィンドウ]]