🦍

My Vim philosophy2

2023/04/28に公開
2

はじめに

以前 My Vim philosophy という記事を書きました。
こちらは自分が普段Vimを使う上で意識していることをまとめた内容となっています。
あれから、2年半くらい経ち自分の中ですこし変わってきていることもあるので、それについて書いていきます。

正直、参考になる内容ではないかなと思うので、この人はこんな感じなんだ、ふーんくらいの気持ちで読んで頂ければと思います。

プラグインに頼りすぎない

これは今も変わらず、プラグインがないとコード書けない、操作方法がわからない状態はなるべく避けるようにしています。
ただ、以前と比べるとしきい値が低くなっている感覚があります。

というのも、最近Rustを書き始めましたがrust-analyzerの恩恵は非常に大きいです。
これなしでコード書ける気がしない(厳密には書けるが、効率悪い)というのが現状です。
補完プラグインも一時期は使わなかったんですが、書いていてなかなかしんどかったです。

自分のスキルが追いついていないといえばそれまでですが、
それを理由に仕事のパフォーマンスを出せないのは筋が違うなと思っています。
ただ、仕事以外なら別にrust-analyzerを使わないで書くのはよいと思っているので、気が向いたらまた再チャレンジしようかなと思っています。

プラグインはあくまで補助道具として使うべきところは使う、というふうに少ししきい値は下がったかなと感じています。
これもRustを書かなかったら考え方が変わらなかったかもしれないです。

編集ではなく、周辺を強化

これも以前と変わらずかなという感覚です。
最近だと VimでTwitterをするプラグインを作った で紹介したツイ廃になれるプラグインを作って愛用しています。
編集自体は以前から変わらず、ほとんど強化するプラグインを入れていないです。便利と思うプラグインは色々あるけど、現状でもさほど困っていないので導入に至らずという感じですね。

やはり「Vimでやることじゃない」ことをVimでやるのが一番楽しいなって感じます。
ここは変わらずです。

自動補完を使わない

ここは完全に変わりました。ゴリゴリ補完使っています。
そもそも補完を使わないと理由はこのような体験があるからでした。

しかし自動補完に頼りすぎてしまって、いざ自動補完が使えなくなったら、ググらないとまったくコードを書けませんでした。

しかし、先ほど述べたようにrust-analyzerがないと効率が悪くてパフォーマンスが出ません。(悔しいけど)
なので、気にせず補完を使っています。
ただ、脳死で補完して関数とかを覚えないのは良くないと思っているので、使いつつもなるべく意識して覚えるようにしています。

また、以前はこのように考えていました。

ただ、「自動補完がないとまともにコードを書けないならプログラマーって胸張って周りにいえないな」と思っています。

これも、今となってはさほどこだわることじゃないなという気持ちが強くなってきています。
これからの時代はAIの発展によって働き方も変わっていくんだろうなと思っていて、
そうなったとき補完がなくてもコードを書けるエンジニアは果たしてどれくらい価値があるのだろうか?と考えるようになりました。
自分がエンジニアとして仕事で一番価値を提供しないといけないのは成果物や結果であって、自分のスキルを提供しているわけではないんだよなぁと思うようになりました。

かといって以前みたいな考え方を否定しているわけではなく、どこに価値を見出しているのか、何を大事にしているかの違いかなと思っています。

よりシンプルに

「なるべくシンプルに」というのはほぼ変わらずですが、少しUIがリッチになりました。
最近NeovimはVim scriptからluaに移行していて、自分もその波になりました。
そして、lua製のプラグインはUIがリッチなもの、便利なものが多いと感じています。
せっかくのluaに移行したんだから、既存で使っていたプラグインもluaに置き換えようと色々と置き換えていきました。

具体的には次のluaプラグインを導入して使っています。まぁ多分よくある構成かなと思っています。

luaプラグイン一覧
  • bufferline.nvim
  • capture.vim
  • cmp-buffer
  • cmp-nvim-lsp
  • cmp-path
  • cmp-vsnip
  • copilot.vim
  • fidget.nvim
  • gitsigns.nvim
  • indent-blankline.nvim
  • lazy.nvim
  • lsp_signature.nvim
  • lualine.nvim
  • mason-lspconfig.nvim
  • mason.nvim
  • nightfox.nvim
  • nvim-autopairs
  • nvim-cmp
  • nvim-lspconfig
  • nvim-treesitter
  • nvim-web-devicons
  • plenary.nvim
  • telescope-ui-select.nvim
  • telescope.nvim

そして、画面はこんな感じになりました。

なんだか今どきって感じですよね。悪くない。

さいごに

この記事を見て、色々言っていること変わっているじゃんって思う人もいるかも知れません。
たしかに変わっているし、これでいいのかは正直わかりません。

しかし、諸行無常という言葉があるように何ことも常に変化していくので、これもその変化のひとつかなと思っています。
1年後にまた違うこと言っているかもしれないですが、それもよいことかなと思っています。

常に変化していくことが、実は一番大事かもしれません。
というわけでちょっとした振り返りでした。

またなんかあったらMy Vim philosophy3を書くかもしれません。

Discussion

k_ikeda_0421k_ikeda_0421

大変興味深く拝読しました。有難うございます。

変わることは、大いに結構なんじゃないですかね?。良いか悪いかの問題ではなく、そぉゆぅものじゃないでしょうか。今の時代、いつまでも変わらない方が窮屈、不自由、な気がします。もちろん、そこに何らかの主義、ポリシーがあるならそれはそれで尊重すべきでしょうけど、ある程度の柔軟性は必要、私はそう思って日々過ごしています。年寄りの戯言として解釈していただければ。。。

ゴリラ@時代はRustですゴリラ@時代はRustです

@k_ikeda_0421
わざわざ、コメントありがとうございます
変化してよいと最近思うようになりました
これでいいのか?と思うのは、今のやり方でいいのか?っていう少し不安なものに対して言っていることなので、変化に対して不安があるわけではないですね(言葉足らずでした)