1. nushellを試す理由

最大の理由はpowershellに慣れずに使いにくいから。

普段はlinux上でbashを使用しているのでできればbashに近い操作が理想。

特にvi-modeを使用しているのでその機能もほしい。

1.1. なぜbashではだめなのか?

bashを使用できるならそれに越したことはない。

でも仕事で支給されたPCなどでWSLを使用できなかっったりソフトウェアを自由にインストールできないことがたまにあるのだ。

Windows上でbashを使用したい場合にはmsys2などインストールする方法があるけれどもインストールできない場合や、もしインストールできたとしても動作がモサモサしていてストレスが貯まる。

兎にも角にもWindows上でCLI操作は面倒。

1.2. nushellの最大のメリット

それはbinaryファイルが配布されていること。

インストーラを起動する必要がないので管理者権限がなくてもインストールできる。

これがnushellを試してみようと思った最大の理由です。

あと蛇足ですがもう一つ。どのプラットフォームでも共通で使用できそうなところに惹かれました。

プラットフォームで別のツールを使いのは面倒ですからね。

2. インストール

binaryファイルをダウンロードしてPATHを通すだけなのだがpowershellに慣れていないのでそこが面倒。

2.1. binaryのダウンロード

リリースページからzipファイルをダウンロードします。

@github.com/nushell

nushell/releases

そして解答しておきます。

2.2. PATHを通す

powershellでのパスの通し方がいつも迷う。

$profileファイルでpathを設定します。

2.2.1. profileファイルのテスト

profileファイルが存在するかどうかを確認します。

terminal
test-path $profile

ファイルが存在すれば編集。ない場合はファイルを作成します。

2.2.2. profileを作成する

powershellでファイルを作成するコマンドがそもそもわからないので調べることになります。

この辺も楽にできるシェルを見つけたいです。

terminal
New-Item -Path $profile -Type File -Force

3. vi modeを設定

powershellで一番困っているのはvi-modeがなさそうなところです。

bashではvi-modeを使用しているのでpowershellでは戸惑います。

nushellではvi-modeの設定があります。

config nuコマンドで設定ファイルが開きます。

edit_modeで検索すると編集箇所が見つかります。

config.nu
  edit_mode: vi # emacs, vi

3.1. jjを入力することでinsertモードからnormalモードに戻りたいけど設定方法がわからない

調べたけれども方法が分かりませんでした。

今のところここが一番実現したい改善点です。

4. 試してみての印象

nushellを初めて試してみましたがかなりの好印象です。

Windows環境では第一の選択肢になりそうなほど気に入りました。

bashが使用できれば出番はなさそうですが何かしらの制約でpowershellやcmdしか使用できない環境のときには役に立つかもしれません。