CLI環境に移ってきた
あいさつ
こんにちは、静カニです。
この度(言うて2週間くらい過ぎていますが)、GUIからCLI(というかTUI)でのエディターに移ってきました。
理由は、単純にGUIだと少し重い気がしているからです。
エディターの移り変わり
VS Code君
GUI環境は、とりあえずVS Code君にもっぱらお世話になりました(というかVS Code以外にGUIのエディターはIDLEとメモ帳くらいしか使ったことがない)。
だが君、重い!ということで(重いのはたぶん自分が拡張機能を入れまくってるせい)、「よっしゃ、ターミナルで動くやつの方が軽そうだし、GUIなんかやめてやる!」ということで、今回の記事になりました。
vim君
「とりあえず、今インストールせずにに使えるのはvimかな(実はgitに付属してる)」ということで、vimを使おうとしました。
ですが、「VS Codeと同じようにgitのステータス付きの、サイドバーのファイルツリーが欲しいなあ」と思ってしまったのです。
いちおう、ファイルツリー自体はNERDTreeを入れることで解決しましたが、なぜかgitのステータスを表示するためのプラグインを入れられませんでした。
Helix君
「…そういえばターミナルで動くRust製エディターがあったよな…」と思い、Helixをインストールしました。
gitのステータス付きのファイラーに関しては、ファイルビューを使ったり、config.tomlをいじくりまわしたりして対応しました。
ということで(?)現在はこのHelix君に落ち着いています。
ちなみにどうでもいい話ですが、最初はZedと勘違いしていて、入れている途中で、「これ違うぞ…」と調べ直して、
「ああこれか」とHelixにきたという感じです。
Helix君に落ち着いた後のこと
ファイラー
Helixは、ファイルツリーを表示させるのは、プラグインで開発する方針で、そのプラグインも開発されていないそうです。
ネット上には、その代替策として、ターミナルからコマンドで起動できるファイラーを、Helix内で起動させるというものでした。
ですが、gitのステータス表示がうまくいっているように見えませんでした。
そのため、ファイラーに関しては、バニラでspace+fで表示できるもので代用することにしました。
gitのステータス
こちらに関しては、config.tomlを書いてどうにかしました。役に立つ人がいるかもしれないので、ここに載せておきます。
簡単な解説
まず、C-gはCtrl+Gという意味。:newでは、バッファ(VS Codeのタブみたいな感じというイメージを勝手に抱いている)を作成。
:insert-ouputは、ターミナルのコマンドを実行するもので、PowerShellからHelixを起動しても、Bashか何かのものが使われていそうだった。
そのため、.gitフォルダーがあれば、git statusとgit tree(こちらはgit configコマンドでエイリアスとして作成。探せば出てくる。)の結果を
.git/git_statusの中に保存し、そもそも.gitフォルダーがなければ、メッセージを保存しておく。そしてその.git/git_statusを作成したバッファで開く。
また、C-rはC-gと同じノリでCtrl+Rという意味。こちらは単にバッファを更新しているだけ。
言語サーバー(LSPとかいうやつ)
Python
自分はパッケージや仮想環境の管理にryeを使っているが、helix editorにpython-lsp-serverを入れるという記事は、ほぼすべてpipを使っていた。 最初は、rye add python-lsp-serverでどうにかしようとしたが、うまくいかなかった。 そこで、rye install python-lsp-serverを使うと、うまくいったため、それでどうにかしている。
Rust
こちらはそこらへんに上がっている手順だけでどうにかなった(rustup component add rust-analyzerを打つだけ!)。
ちなみにlanguage.tomlは現時点でこれだけ。
はい。至極シンプルです。