魚の殻で動作するように nvm を設定するには?


最近、oh-my-zsh から fish shell に切り替えましたが、後悔はしていません. Fish は使いやすくて使いやすいコマンドライン シェルです. fish は、構文の強調表示、自動提案、タブ補完などの強力な機能をサポートしており、学習や設定は必要ありません.
しかし、nvm (Node Version Manager) をインストールしようとしたときに問題が発生しました.シェルが nvm コマンドを認識しませんでした.いくつかの調査の後、解決策を見つけました.
まず、 fisher をインストールする必要があります. Fisher は、fish shell のパッケージ マネージャです.関数ディレクトリまたは関数パス上の任意のディレクトリに fisher.fish をダウンロードします.

curl https://git.io/fisher --create-dirs -sLo ~/.config/fish/functions/fisher.fish


シェルが新しく追加された関数をロードするまでに数秒かかる場合があります. fisher コマンドがすぐに使用できない場合は、新しいセッションを起動するか、実行中のシェルを新しいものに置き換えます.
fisher をインストールしたら、Bass パッケージを追加する必要があります. Bass は、フィッシュ シェルで Bash 用に作成された使いやすいユーティリティです.フィッシャーの使用:

fisher add edc/bass


nvm 用の新しい fish ファイルを作成します.

touch ~/.config/fish/functions/nvm.fish


nvm をロードするように fish 関数を追加します:

function nvm
    bass source ~/.nvm/nvm.sh -- no-use ‘;’ nvm $argv
end


これで、すぐに NVM を使用できます.

NVM はどのように機能しますか?



ノードの最新リリースをダウンロード、コンパイル、およびインストールする場合は、次の手順を実行するだけです.

nvm install node # “node” is an alias for the latest version


特定のバージョンのノードをインストールするには:

nvm install 10.10.0 # or 8.9.1, etc.


最初にインストールされたバージョンがデフォルトになることを知っておくことが重要です.新しいシェルは、ノードのデフォルト バージョンで開始されます.
新しいシェルでデフォルトの Node バージョンを設定するには、エイリアス「default」を使用します.

nvm alias default [version of node] # e.g.
nvm alias default 12.13.1


プロジェクトに特定のバージョンの NodeJS を使用する場合は、プロジェクト内の .nvmrc ファイル内で NodeJS バージョンを指定できます. 12.13.1 を作成し、シェルで nvm use コマンドを使用してアクティブ化します.