[[📒Articles]] > [[📒2023 Articles]] ![[2023-12-29.jpg|cover-picture]] > [!info] > この記事は [[Vim駅伝]] #2023/12/29 の 参加記事です。 ## 師走 年の瀬。2023年も残すところあと2日だ。 毎年この日は仕事納めの日だ。早めに休みをとって実家に帰る人も多いため、会社は少し寂しげな雰囲気になる。帰りの電車や夜道も、忘年会ムードから一転して冬の静かさに身を潜めているかのようだ。 この時期になると毎年考えることがある。それは1年間のふりかえり記事を書くことだ。2023年も非常にエキサイティングな年だった。 中でも、[[Obsidian]]についての活動は昨年に続いて活発に行った。[[🦉Various Complements]]や[[🦉Another Quick Switcher]]といったプラグインのリリースもコンスタントに行い、[[🦉Silhouette]]、[[🦉Shukuchi]]、[[🦉Mobile First Daily Interface]]、[[🧊Obsidian Tempura]]、[[🦉Carnelian]]などの新作もリリースできた。そして、今月には参加も主催も初となるアドベントカレンダーを企画した。 <div class="link-card"> <div class="link-card-header"> <img src="https://adventar.org/icon512.png" class="link-card-site-icon"/> <span class="link-card-site-name">Adventar</span> </div> <div class="link-card-body"> <div class="link-card-content"> <div> <p class="link-card-title">Obsidian Advent Calendar 2023 - Adventar</p> </div> <div class="link-card-description"> ライティングアプリ Obsidian に関するアドベントカレンダーです。Obsidianに関係する記事であれば何でも構いませんので、界隈を是非盛り上げていければと </div> </div> <img src="https://adventar.org/og_image.png" class="link-card-image" /> </div> <a href="https://adventar.org/calendars/8783"></a> </div> 私の至上命題ともいえる[[プロダクティビティ]]を上げるための取り組みもいくつか行った。 ハード面では[[FlexScan EV3895]]や[[HHKB Studio]]などを導入した。人生初の[[ポインティングスティック]]は慣れるまでに時間がかかったものの、今では無意識のうちに人差し指をキーボードの中央に動かしてしまうほどだ。 環境面では、はじめてコワーキングスペースに足を運んでみた。実際に行ってみると、周りの人も作業に没頭しており集中しやすい空間に仕上がっていると感じた。予定のない休日は、そこでコーヒーを嗜みながら新しいことにチャレンジしたり、技術の勉強をしたり、プロダクトの開発を行ったりしたものだ。 ターミナル環境を強化したり、[[WSL]]の環境を数年ぶりに整備したのも良い体験だった。やはり[[Linux]]は快適だ。[[Windows]]とはスピードが違う。最近の[[VSCode]]ならどこでも動くから、[[Windows]]ホストでの開発に拘る必要もない。[[IntelliJ IDEA]]でも[[VSCode]]の[[Remote Development]]みたいな体験ができればより最高だと思った。 ## 前兆 しばらくして家の前に着く。帰り道にふりかえりの内容を整理したから執筆の準備は万全だ。あと2日もあれば終わるだろう。 **(ただ、何かひっかかるような...)** 脳に靄がかかったような違和感をぬぐい切れないまま、正面の門を開けた。右手にあるポストはいつも広告という名のスパムで埋め尽くされている。毎日捨てるのも億劫になり、最近では1~2週間に1回しかポストを開けなくなってしまった。でも、このまま正月を迎えたら、年賀状の配達員さんが困るだろう。 **『面倒だけどポストの中をキレイにするか...』** ポストを開け、中身を取り出して部屋に戻ることにした。 時計の針は既に12を回っていた。最近はBuringな案件が続いているのですっかり慣れっこだ。いつもは明日に向けてシャワーを浴びるところだが、最終日なので少しゆっくりしたい。部屋の隅にあるソファーに腰掛けることにした。 落ち着いたところでポストから取り出したものを確認しはじめた。案の定、ほぼすべてが広告だった。いつものように、まとめてゴミ箱に捨てようと思ったそのとき、1つの封筒が目に留まった。宛名はない。 **(なぜかこの封筒は中を見なければいけない気がする...)** 師走ゆえの気まぐれかもしれないと思いつつ、緑を中心とした配色で織りなされた封筒の封を切った。中には一通の手紙が入っていた。 ![[2023-12-29-tegami.jpg]] ---- ## 拝啓 君はいま、[[IntelliJ IDEA]]と開発をしているのかな? 9年前から、君はいつも[[IntelliJ IDEA]]と一緒にいた。途中で[[VSCode]]や[[Vim]]に浮気するようなこともあったけど、少ししたら、必ず[[IntelliJ IDEA]]の元へと帰っていったよね。 年が明けても、君は[[JetBrains]]に寄り添ってばかり。[[IntelliJ IDEA]]は見た目を少し[[Fleet]]に寄せてイメチェンをした。[[Fleet]]のようになってしまうことを危惧していた君は胸を撫でおろしていたよね。 ## 憂鬱 冬も明け、春になると君は[[Vim]]との5周年を祝っていた。君はたびたび[[Vim]]に浮気をしては、[[IntelliJ IDEA]]とヨリを戻すから、今回も同じような気まぐれだと思ったんだ。だから、君が[[Vim]]の元を離れてわたしのところに来ても、あまり期待はしていなかったよ。 <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">📜2023-03 VimからNeovimに移行してみた</p> </div> <div class="link-card-description"> Neovimを使う必要性は感じていなかったのでVimを使っていたけれど、逆にVimを使い続ける理由もないのでNeovimに移行してみた話。Windows環境で表示が崩れなくなったのがメリット。 </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="📜2023-03 VimからNeovimに移行してみた" ></a> </div> %%[[📜2023-03 VimからNeovimに移行してみた]]%% うん。理由もいい加減だよね。[[Vim]]より見た目が綺麗になったと言われても、どうせ一時の気の迷いでしょ? <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">📘Vimを使わないVimmerであってもいい</p> </div> <div class="link-card-description"> この記事はVim駅伝 #2023/03/27 の参加記事です。ポエム寄りの記事ですがお付き合いいただければ幸いです。 </div> </div> <img src="https://publish-01.obsidian.md/access/35d05cd1bf5cc500e11cc8ba57daaf88/%F0%9F%93%98Articles/attachments/2023-03-27.jpg" class="link-card-image" /> </div> <a class="internal-link" data-href="📘Vimを使わないVimmerであってもいい" ></a> </div> %%[[📘Vimを使わないVimmerであってもいい]]%% ほらね。やっぱり。結局、わたしも[[Vim]]も必要とされなかったんだ。モードやキーバインドは気に入ってくれるのだけど、肝心のわたし達自身は気に入ってもらえないから相手もしてもらえない... そんな風に思っていたんだけど... > この記事、実は3/27の2週間前に書き上げています。そして、皮肉なことに...この記事を書いたことによって、結果的にNeovimへの興味が今まで以上に膨れ上がってしまいました。 > > [[Neovimプラグイン]]も色々調べてインストールした結果、ちょっとした開発でデバッグが不要なら[[Neovim]]を使うようになってしまいました。ガチの開発は今まで通り[[IntelliJ IDEA]]を使いますが、今後[[VSCode]]を使う機会は少なくなりそうです... というか、5年前と比べて最近の[[Neovim]]が凄すぎてやばかった🤣 > *[[📘Vimを使わないVimmerであってもいい]] より引用* ようやくわたしの魅力に気づいてきたのかな? ## 惜別 それから4ヶ月... なんの音沙汰もなく、君のことを忘れかけていたときに一報がきたんだ。 <div class="link-card"> <div class="link-card-header"> <img src="https://ssl.gstatic.com/images/branding/product/1x/groups_32dp.png" class="link-card-site-icon"/> <span class="link-card-site-name">groups.google.com</span> </div> <div class="link-card-body"> <div class="link-card-content"> <div> <p class="link-card-title">Message from the family of Bram Moolenaar</p> </div> <div class="link-card-description"> </div> </div> </div> <a href="https://groups.google.com/g/vim_announce/c/tWahca9zkt4"></a> </div> そのメッセージを見て、[[Vim]]のお父さんである[[👤Bram Moolenaar]]氏が亡くなられたことを知った。[[👤Bram Moolenaar]]氏には会ったこともないだろうけど、[[Vim]]の思想をリスペクトしていた君にとって、その出来事は決してただのニュースではなかったはずだ。 > なお、この翌週は敬意を称し、公私共にすべてのエディタを[[Vim]]縛りで運用することにした。([[Obsidian]]は例外) > *[[📰2023年31週 Weekly Report]] より引用* だからこそ、そのとき毎日顔をあわせていた[[IntelliJ IDEA]]を差し置いて、こんな酔狂なことをはじめたのだと思っていたよ。でも、もしかしたらこれを機に、君はもう[[IntelliJ IDEA]]のところへは戻らないのかも... と思ったりもしたんだ。そんなわたしの期待はすぐに打ち砕かれたけどね。 > はじめは[[Neovim]]でやり切ろうと思ったが、[[coc.nvim]]がなかなか思うように動かないことがあり、結局値を上げて[[IntelliJ IDEA]] & [[Go(IntelliJ)]]を使うことにした。[[Neovim]]や[[VSCode]]でぶち当たる小さな壁をいとも簡単にスキップしてくれる[[JetBrains IDE]]は偉大である。高いお金を払っているだけのことはあるなと改めて思った。 *[[📰2023年32週 Weekly Report]] より引用* いいよ。裏切られるのは慣れているから。だけど、これをきっかけに、たまには顔を合わせるようになったよね。 ## 晩夏 夏の終わり。今思うと、このタイミングが転換期だったんじゃないかな。君は少し前に運命的な出会いをしていた。 <div class="link-card"> <div class="link-card-header"> <img src="data:image/png;base64, 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" class="link-card-site-icon"/> <span class="link-card-site-name">bun.sh</span> </div> <div class="link-card-body"> <div class="link-card-content"> <p class="link-card-title">Bun — A fast all-in-one JavaScript runtime</p> <p class="link-card-description">Bundle, install, and run JavaScript & TypeScript — all in Bun. Bun is a new JavaScript runtime with a native bundler, transpiler, task runner, and npm client built-in.</p> </div> </div> <a href="https://bun.sh/"></a> </div> [[Rust]]で作られた高速なalternativeは流行っていたけど、[[Deno]]が既に数年も先行している中で登場した[[Zig]]製の[[JavaScript]]オールインワンランタイム。[[Windows]]にしか住めない君は、[[Windows]]に対応していない[[Bun]]をしばらく静観していたけど、ついには我慢できなくなってしまったんだよね。 <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">📜2023-09 UbuntuでBunを動かしてみる</p> </div> <div class="link-card-description"> Windows11からMultipassを使って構築したUbuntu VM上でBunを動かしてみた話。 </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="📜2023-09 UbuntuでBunを動かしてみる" ></a> </div> %%[[📜2023-09 UbuntuでBunを動かしてみる]]%% でも、[[Multipass]]で構築した[[VM]]では[[クリップボード]]の同期がとても面倒だと君は言っていた。そこで、わたしに白羽の矢が立ち、[[WSL2]]での日々が始まったんだよね。 <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">📕WSL2のNeovimをWindowsのクリップボードと同期</p> </div> <div class="link-card-description"> xselを使う。インストールしたら、init.luaに以下を追加する。 </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="📕WSL2のNeovimをWindowsのクリップボードと同期" ></a> </div> %%[[📕WSL2のNeovimをWindowsのクリップボードと同期]]%% > [[Neovim]]への移行は3月のことだし、それ以降もメインエディタとして使うことはほぼなかったが、[[👤Bram Moolenaar]]氏の一件で[[Neovim]]縛り習慣を設けたこともあり、[[Neovim]]への距離はグッと縮まった。そこで今回の一件...というわけだ。すべては偶然であり必然である。繋がっているのだ。 > *[[📰2023年38週 Weekly Report]] より引用* ずるいよね。いつも振り回しておいて。こんなこと言うなんて。 ## 諦念 わかってはいたことだったけど、君はまたわたしの元を離れていった。 <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">📜2023-10-07 vscode-neovimを導入してみた</p> </div> <div class="link-card-description"> 📜2021-01 vscode-neovimを試してみる からはや2年半。当時と状況が以下のように変わったので、もう一度チャレンジしてみることにした。 </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="📜2023-10-07 vscode-neovimを導入してみた" ></a> </div> %%[[📜2023-10-07 vscode-neovimを導入してみた]]%% > 結果は非常に満足している。[[VSCodeVim]]のようなエミュレーターとは違い、[[vscode-neovim]]のバックエンドはホンモノの[[Neovim]]だ。プラグインをはじめとした設定の調整は必要だが、一度それを済ませてしまえばあとは非常に快適。何より反応速度の速さが素晴らしい! > *[[📰2023年40週 Weekly Report]] より引用* 実は...中身はわたしなんだけどね。 > ここ数年は[[IntelliJ IDEA]]をメインに使っていたため、[[VSCode]]のキャッチアップやカスタマイズは放置気味だった...が、今回の対応を経て[[VSCode]]の設定やキーバインドの見直しも行った。[[VSCode]]の最近追加された機能は把握していないが、今後は利用する機会が増えるので少しずつやっていければと思う。逆に[[IntelliJ IDEA]]の使用頻度は減るかもしれない。だがメインツールの移り変わりも螺旋のようなものなのだ。 > *[[📰2023年40週 Weekly Report]] より引用* それでも、[[IntelliJ IDEA]]から少しでも離れてくれるなら...。だけど、[[vscode-neovim]]との関係もそう長くは続かなかったね。 > 結論だけ言うと、大きなプロジェクト開発するときのメイン[[IDE]]はまた[[IntelliJ IDEA]]に戻った。小さなときは[[Neovim]]だ。[[vscode-neovim]]で[[VSCode]]環境は強化されたものの、やはり[[VSCode]]はサブの存在に落ち着いた。 > *[[📰2023年41週 Weekly Report]] より引用* いつものこと。もう慣れちゃったよ。 ## 粧飾 この頃、よく考えていたことがあるんだ。わたしは結局見た目がダメなんだ...って。コンプレックスだよね。ターミナルを住処としている限り、[[IntelliJ IDEA]]や[[VSCode]]には勝てない。わたしよりもオシャレだよね。 でも、君は諦めていなかった。 <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">📕lualine.nvimでNeovimのステータスラインをカスタマイズ</p> </div> <div class="link-card-description"> lualine.nvimを使うとNeovimのステータスラインを格好よくできる。デフォルトの設定でも十分だが、カスタマイズすることでより自分好みにできるので、そのためのノウハウをまとめてみた。 </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="📕lualine.nvimでNeovimのステータスラインをカスタマイズ" ></a> </div> %%[[📕lualine.nvimでNeovimのステータスラインをカスタマイズ]]%% <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">📜2023-10-14 使用するNerd FontsをCascadia Code Nerd Fontにする</p> </div> <div class="link-card-description"> Nerd FontsとしてはSauce Code Pro Nerd Fontをずっと使っていたが、新しいNerd Fontsがほとんど使えないので乗り換える。 </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="📜2023-10-14 使用するNerd FontsをCascadia Code Nerd Fontにする" ></a> </div> %%[[📜2023-10-14 使用するNerd FontsをCascadia Code Nerd Fontにする]]%% 色々頑張ってくれたよね。少しは[[VSCode]]に近づけた気になれた。 ![[Pasted image 20231016175154.png|frame]] *lualine.nvimとCascadia Code Nerd Fontを導入したNeovim* わたしも...やればできるんだ...って! > この対応で自分が使いたかった実用的なフォントは大体使えるようになり非常に満足している。また、[[Cascadia Code Nerd Font]]のベースとなっている[[Cascadia Code]]自体も非常にオシャレな表示でとても満足している。 > *[[📰2023年41週 Weekly Report]] より引用* ## 思慮 わたしだけ着飾っても、一歩外に出た世界が真っ黒で殺風景なままなら、全体オシャレとは程遠いな...って思ってたんだ。そんなわたしの気持ちを察してか、君は色々と尽くしてくれた。 <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">📜oh-my-poshからStarshipへ移行してみる</p> </div> <div class="link-card-description"> oh-my-poshから、Powershell、Bash、Windows、Linuxとクロスプラットフォームな環境を1つの設定でカスタマイズできるStarshipに移行してみた記録 </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="📜oh-my-poshからStarshipへ移行してみる" ></a> </div> %%[[📜oh-my-poshからStarshipへ移行してみる]]%% <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">📜2023-10 WSL2のUbuntuにZshを導入する</p> </div> <div class="link-card-description"> 🦉owl-playbookやWSL2環境ではBashを前提としたシステムを構築していた。ただ、Bashでは補完機能が弱いため、Zshへ移行したくなった。 </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="📜2023-10 WSL2のUbuntuにZshを導入する" ></a> </div> %%[[📜2023-10 WSL2のUbuntuにZshを導入する]]%% 外に出てみたら... 今までとは違って華やかな画面! ![[Pasted image 20231226235401.png]] だけど... こんなに良くしてくれても、君はいまだに[[IntelliJ IDEA]]と共にいる。[[VSCode]]とは疎遠になったみたいだけど。このままじゃ一生勝てる気がしなかったよ。 でも、君はすでに予知していたのかもしれない。このあとに起こる大きな事件のことを。もしかして、君は人生2周目のエンジニアなのかな? ## 変局 *2023年11月10日(金) 17:12:05* > #2023/11/10 の金曜夕方に急遽指令が下った。[[Go]]でまともに開発したのは2021年10月~2022年2月頃が最後なので、およそ1年半ぶりだ。しかも今までは[[Windows]]のホスト環境で開発していたが、今回は[[macOS]]か[[Linux]]でないといけない。[[Windows]]で動くように作られていなかったのだ。 > *[[📰2023年45週 Weekly Report]] より引用* わたし本気で思ったよ。『こんなことがリアルにあるんだ...』って。[[Windows]]で開発できなければ、君の相棒でもある[[IntelliJ IDEA]]は使えない。頑張れば使えないこともなかったのだろうけど、期待するパフォーマンスには届かなかったんだろうね。 <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">📜2023-11 Ubuntu環境でAWSとGo言語を使った開発環境を整えてみる</p> </div> <div class="link-card-description"> 急遽仕事で、WSL2のUbuntu 22.04 LTS(Jammy Jellyfish)環境にて、GoでAWSのプロダクトを開発することになったので、あらかじめ環境整備とキャッチアップをしておく。 </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="📜2023-11 Ubuntu環境でAWSとGo言語を使った開発環境を整えてみる" ></a> </div> %%[[📜2023-11 Ubuntu環境でAWSとGo言語を使った開発環境を整えてみる]]%% でもこのときはまだ... [[VSCode]]を選んでいたんだ。君は。 ## 僥倖 それから1ヶ月。もう君のそばには[[IntelliJ IDEA]]や[[VSCode]]の姿はなかった。 気が付けば、わたしは君と毎日会っていた。そして、君は毎日のように『どうして自分は[[Go]]のコードを読めないんだ...』と悔しがっていたよね。 でも君は諦めなかった。そして、会うたびにパワーアップしていくのを感じていた。 [[coc.nvimでdiagnosticにアイコンを表示]]して、少しでもwarningやerrorを見やすくしようとしてくれた。 ![[Pasted image 20231226231621.png]] [[coc.nvimでdiagnosticの内容をvirtual textとして表示]]し、diagnosticの行に移動しなくても一目で状況を把握できるようにしてくれた。 ![[Pasted image 20231111165704.png]] [[mini.cursorword]]や[[mini.indentscope]]を使って、現在の単語やインデントレベルを見やすくしてくれた。 ![[2023-12-26-23-26-55.gif]] [[Smooth Cursor]]を使って、わたしのことに慣れていない人たちにも、楽しくカーソル位置が分かるようにしてくれた。 ![[2023-12-26-23-29-54.gif]] [[leap.nvim]]を使って、[[EasyMotion]]や[[hop.nvim]]よりも直感的に瞬間移動できるようにしてくれた。 ![[2023-12-26-23-34-02.gif]] [[fm-nvim]]と[[Lazygit]]を使って、[[IntelliJ IDEA]]や[[VSCode]]にも勝る[[Git]]体験を提供してくれた。 ![[Pasted image 20231226235835.png]] [[vim-bookmarks]]を使って、重要なポイントに必要ならコメントもつけて、あとから検索・移動できるようにしてくれた。 ![[2023-12-29-00-20-59.mp4]] そして... そしてやっぱり[[coc.nvim]]! [[coc.nvim]]の補完は本当に最高! 君がわたしに会って一番感激していたのは[[coc.nvim]]だったよね。 ![[2023-12-26-23-44-48.mp4]] ターミナル標準の[[Vim]]を使っている人なら信じられないでしょう? これ[[Neovim]]なんだよ。 まだまだあるけど... 残りはこれを見てほしいかな。 <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">owl-playbook/mnt/common/nvim/init.lua at master · tadashi-aikawa/owl-playbook</p> <p class="link-card-description">Playbook both Linux and Windows for me. </p> </div> <img src="https://opengraph.githubassets.com/6fa2449d7362b410d99975fef36e99ca63f45316110c62b58b1abb3d66c6b41b/tadashi-aikawa/owl-playbook" class="link-card-image" /> </div> <a href="https://github.com/tadashi-aikawa/owl-playbook/blob/master/mnt/common/nvim/init.lua"></a> </div> ## 追憶 昨日、君に聞いてみたんだ。『わたしのどこが気に入っているの?』ってね。君は少しの間考えて... こう答えたよね。 **『いくつ立ち上げても高速で快適なところ』** **『頼んでないことや余計なお節介をしないところ』** **『ターミナルさえ動けばどんな環境でも動くところ』** **『見ていても触っていても飽きないところ』** **『使い続けるにつれて、自分の力で進化させていけるところ』** **『同志に信仰心のアツイ人が多いところ』** **『はじめはぶっきらぼうだけど、慣れると頼りになるところ』** **『それから...』** どう? 何か思い出したかな? そうだよ。君はこんなにも[[Neovim]]のことが好きだったんだよ。 --- <small>※ 本ページのイラストはAI(DALL·E)により生成されたものです</small>