✌️

vimmerになるためにzedを使い始めた話

2024/09/12に公開
8

vim logo

なぜvimmerになりたいのか

ごく単純な理由ではあるが、プログラマーであればvimをスラスラ使いこなしたいという夢がみんなあると僕は思う(勝手な思い込み)
なぜvimがそんなにかっこよく見えるようになったのかというと、devaslifeというyoutubeチャンネルを見始めてから、全部キーボードで操作していてかっこいいなと思ったから。
https://www.youtube.com/c/devaslife

彼以外にもtheprimeagenというチャンネルの人もテック系インフルエンサーの人で、その人もvim使いこなしててめっちゃカッコいいと思ったから。
https://www.youtube.com/c/theprimeagen

また、彼以外にも、プログラマーオタクでおなじみのbawadもガチガチのvimmerで、素早くカーソル移動してて、カッコイイと思ったから。
https://www.youtube.com/@bawad

ヒカキンに憧れる小学生みたいでyoutuber紹介コーナーになってしまって申し訳ない🙇‍♂️

今までの自分

自分は2017からvscode使い始めていいるので、マウスありでの操作に慣れてしまい、いきなりvimやemacsには乗り換えられなかった。
その理由はいくつかある

  • そもそもVScodeみたいにインストールするだけでvimは動かない(動くけど、IDEとしては動かない?)
  • 学習しなければいけない(当たり前だけど)
    • これは最初に何回かかneovimのチュートリアルをやったが、日々使わないと忘れてしまう。
  • VSCodeでよく使う拡張機能がvimで必ず見つかるとは限らない
  • ターミナル選びが大変
    • これは色々と好みが分かれそうだけど、そもそもターミナルと相性が悪かったりすると、アイコンなどの表示が正しく表示されなかったりする、実際に遭遇して、挫折してしまった。

vimmerになるために試したこと

VScodeにvim bindingというプラグインをインストールして試してみた

これは日本語タイピングがうまく入力できないときがあったり、カーソルがどっちのものになっているかわからないときがあったりと、バグが多かったから断念。

vscodeにvscode neovimというプラグインをインストールして試してみた。

この拡張機能はマシーンにインストールされているvimを参照して動いているらしいので、ほとんどの場合は問題ないと思うが、VScode特有のショートカットを使うときにneovimと衝突したりして、毎回毎回設定ファイルでキーを無効化しなければいけないという手間があったのと、VSCodeがもっさりするような印象だった。クリップボードが共有されなかったりと、偶にバグったりもする、一番致命的なのがnevoimのプラグインと互換性がないものがあって、VScodeもvimも半々みたいになり、モヤモヤした状態になった。
https://marketplace.visualstudio.com/items?itemName=asvetliakov.vscode-neovim

astrovimというvimのスーパーセット?的なものをインストールして試してみた

最初からvimをインストールして自分で細かい設定をするよりは、これをいれたら一発でよく使われているプラグインがあらかじめ入ってるので、すごい楽だった、ただ、そのプラグインたちの使い方が良くわからなくなり、イライラが溜まったので諦めた。(諦めがはやい😪)

https://astronvim.com/

最終的な着地

zedエディターのvimモードで使う

なぜzedなのか

  • zedはrustで書かれているオープンソースなエディターで、atom(現在開発が終了した)を開発した人達によって開発されている。
  • 基本的にVScodeとショートカットがにているので、キーが分からず困ることは少ない
  • とても高速に動く、ときに起動時間が圧倒的に早い。
  • vimモードというのが拡張機能なしで有効にできる。

ただ、やはりまだまだそんなに成熟していないので、若干クセがあると感じた、でもそんなに気にするほどではない、アップデートもものすごい頻繁にされている気がするので、そのうち良くなっていくと信じている。

vimiumとうchromeの拡張機能を使う

https://chromewebstore.google.com/detail/vimium/dbepggeogbaibhgnhhndojpepiihcmeb?hl=ja

これの意図としては、上で書いたvimチュートリアルやったが、忘れてしまう問題を克服するためである。
コード書くときよりブラウザーでページをみているときが圧倒的に多いので、ブラウザでカーソル移動とかを慣れてきたら、エディターでのカーソル移動はそんなに苦じゃなくなってくる(実際にそうだった)
しかもかなり使いやすかった。
ただ、自分にとっての唯一の問題は、仕事のブラウザーはarc browserを使っているせいで、ちょっとだけchromeと挙動が違ったりショートカットが被ったり、機能が被ったりして、若干不便なときはあったが、なんとかなるレベル。


以上、vimmerへの道程でした。

Discussion

ryoppippiryoppippi

vim-jpでお待ちしてます!

qaynamqaynam

ありがとうございます。
discordチャンネルとcosenseのプロジェクトに入りました!
これからよろしくお願いします。 🙇

qaynamqaynam

ありがとうございます!
参加しました!

yasunori0418yasunori0418

日常の一部にvimがある状態にして、いっぱい設定すれば良いと思います。
多分ですが、一から設定するのが億劫になっていませんか?
一から設定すれば、大量にあるプラグインが何か分からないみたいなことはなくなります。

qaynamqaynam

コメントありがとうございます。

そうなんですよね、普段の業務でずっとコード書いているので、そこをいきなり慣れていないvimでやろうとするとスピードが落ちてしまうのと、luaを覚えないといけないとう壁を作ってしまい、断念してしいました。

vimiumを入れたのはかなり大きかったのかもしれません、まだ業務は完全にvim操作でこなしていませんが、サイドプロジェクトはzedのvimモードを使っていて、1週間ぐらい経ちますが、そこそこ慣れてきました。

多分そのうちプラグインを自分で一からいれるところにいずれたどり着く気がします!

ryoppippiryoppippi

初めからwebの情報だけでvimプラグインを入れるのは難しいでしょうね〜

SNKKSNKK

ぼくも1年ほど前にneovimを1から設定したのでとても気持ち分かります。
まずはゴリゴリに書かれすぎてない誰かのdotfilesを写経して都度どんなプラグインかを調べていけば気づいたら自分のオリジナルになってるのでおすすめですよー