気になっていたエディタがいつの間にやらwindows10でも使えるようになっていたので紹介する

個人的にはzellijも早くwindowsで使えれば良いなあと思っている

参考資料: GitHub(Issues, Discussions, Wiki), Documentations, Website

アップデートされたバージョン22.81も情報もある

? 注意点(執筆時期2022/4/29) version22.03
まだHelixは鋭意開発中なので変更が多くあります
ここに書いていることが上手く機能しないことがあります

Summary

appearance.png

Rust製の標準機能が豊富な軽く速いテキストエディタ

ターミナルと(一応)GUIの両方がある

kakoune(コクーン)/neovimの二つから影響を受けている

特に開発者がkakouneの強い影響を受けている

キーマップやポップアップがわかりやすい特徴として挙げられる

操作している感じはウェブサイトの動画が分かりやすい

多くの言語でLSPによる補完やtree-sitterによるシンタックスハイライトなどなどサポートしている

プラグイン用のAPIなどまだ実装段階で,プラグイン自体がない

独特な操作感で好みが分かれる

vimに慣れていればいるほど使いにくいかもしれない

個人的な感想としては,vim/neovimの代用にはならない

ただし,軽量で高速,取り出してすぐ使えるので一瞬だけターミナルで起動するときにはこれで十分な感じになる

Q.「ならvim/neovimで良くない?」

A.「そのその通りです」

What Is This?

A post-modern text editor.
A kakoune / neovim inspired editor, written in Rust.
The editing model is very heavily based on kakoune; during development I found myself agreeing with most of kakoune’s design decisions.

kakoune(コクーン)とneovimに影響を受けたRustで書かれたテキストエディタ

    • vimみたいなモードがあるエディタ

 

    • 複数のカーソル選択編集機能

 

    • 組み込みで言語サーバーサポート

 

    複数言語のシンタックスハイライトやテキストオブジェクトサポート

How to Install

Windowsならreleasesページからダウンロードする

次に解凍した中にあるruntimeをhelixのフォルダにコピーする

xcopy runtime %AppData%/helix/runtime

MacOSならhomebrewでインストールできる

brew tap helix-editor/helix
brew install helix

その他はGitHubやドキュメントを参照する

きちんとインストールできたかどうかはhx -Vやhx -hで確認できる

また,hx —health (lang_name)で利用できるLSPなどのリストが表示される

> hx --health rust
Configured language server: rust-analyzer
Binary for language server: ..\rust-analyzer.EXE
Configured debug adapter: lldb-vscode
Binary for debug adapter: Not found in $PATH
Highlight queries: Found
Textobject queries: Found
Indent queries: Found

基本的には他のエディタと同じ

hx file_name # ファイルを開く
hx file01 file02 # 複数ファイルを開く
hx dir_name # ディレクトリを直接開く
hx . # 現在いるディレクトリを開く

Settings

設定したければconfig.tomlを開いてすぐに設定できる

:config-openで設定ファイルを開ける

config.gif

helixを起動した状態で:を押すとコマンドモードになる

このモードでは利用できるコマンドの一覧が表示される

コマンドモードではtabで次へ,shift+tabで前へ移動できる(上に説明が書いてあるのは地味にうれしい)

:config-reloadで設定ファイルをリロードできる

:theme theme_nameでテーマを試せる(私のテーマはOnedark)

Wiki Themesでも探せる

とりあえずは以下内容をconfig.tomlで保存して,これを~/.config/helix/か~/AppData/Roaming/helix/に配置するだけで良い

# 任意のテーマ
theme = "onedark"

[key.cursor-shape]
insert = "bar"
normal = "block"
select = "underline"

[keys.insert]
j = { j = "normal_mode"} # jjでノーマルモードへ戻る
# C: Ctrl, S: Shift, A: Alt それぞれの接頭辞
# "C-c" = "normal_mode" # Ctrl-cでノーマルモードへ戻る

他にもhx —healthにあるようにLSPやtree-sitterの設定もできる

デフォルトではシンタックスハイライトのみでLSPは個人で設定する

GitHubにあるlanguages.tomlの中から必要な言語をコピーして貼り付けるだけで良い

もちろんLSPなどの設定は自分で行う必要がある

そもそも,まだLSPなどが実装されてなけれは使えないのでそこは注意する

これも~/.config/helix/か~/AppData/Roaming/helix/に配置するだけで良い

[[language]]
name = "rust"
scope = "source.rust"
injection-regex = "rust"
file-types = ["rs"]
roots = ["Cargo.toml", "Cargo.lock"]
auto-format = true
comment-token = "//"
language-server = { command = "rust-analyzer" }
indent = { tab-width = 4, unit = "    " }

[[grammar]]
name = "rust"
source = { git = "https://github.com/tree-sitter/tree-sitter-rust", rev = "a360da0a29a19c281d08295a35ecd0544d2da211" }

現在進行形で未対応のLSPやtree-sitterのissueは上がっているのでmasterを追跡すれば使えるようになっている可能性もある

Favorite Points for Me

デフォルト機能が多く,取り出してすぐ利用できる

GUIもあるのでターミナルを起動などの手間が省いてぱっと使える

キー操作で情報がポップアップするので初心者にやさしい

vim/neovimの経験がある人は割と楽に操作できる

kakouneは使ったことがないので良い判断材料にはならないがキーマップが覚えやすい(人による)

押しやすかったりわかりやすいのではなく一貫性がある(議論の余地あり)

vim/neovimなどの代替ではなく補助的利用なら問題は少ない

エディタが育つのを眺めるのが面白い

Bad Points

プラグインまだ作れない
プラグイン用のAPIなど実装予定はあるが当分はない

キーマップが冗長な箇所がありこれらはまだ議論中で再度変更が行われる可能性がある
インサートモードの矢印キーの移動が消されて,それがrevertされたりした
ディスカッションなどを見るのが楽しい

configでマッピングをしてもまだ意図した挙動になりにくい
これもmasterを追っていたら部分的にはできるようになっていたりする
恐らくもう大丈夫

マクロや.(ドット)の挙動が気に入らない
試験的であったり,そもそも機能が違うのでなれるしかない
修正された

Conclusion

エディタ自体は基礎が既に出来上がっているので補助的に使う分には申し分ない

まだかゆいところに届きそうで届かないもどかしさがある

多くの人にはまだneovim/vimの代用にはならないなりそうになってきた

楽しむ分にはちょうど良いかもしれない

モード操作編

第二弾

广告
将在 10 秒后关闭
bannerAds