WSL へ Neovim を入れて環境構築 (+Python)

Tips
Tips
スポンサーリンク

はじめに

WSL2にNeovimをインストールし、Pythonの実行環境をセットアップする手順を残しておきます。

関連記事

Pythonの環境構築

下記の記事に記載しました。pyenv, pyenv-virtualenv で仮想環境を構築しています。

Linuxコマンドや設定方法で躓いたところなど

WSLの設定で躓いたところ等

WSL2のセットアップ

WSL2のインストール

コマンドプロンプトで下記を実行します。

wsl --install

ピープ音を消す(WSL2, Vim)

下記を参考に設定を行いました。

WSL2 コマンドラインのピープ音

~/.inputrc に下記を追加します。

set bell-style none

Vimのピープ音

~/.vimrc に下記を追加します。

set belloff=all
Turn off the beep ― ビープ音を消す

[補足] WSL2 コンソール表示 キーボードでのスクロール方法

Ctrl + Shift + PageUp または Ctrl + Shift + PageDown でページごとに上下します。

Ctrl + Shift + Home または Ctrl + Shift + PageEnd で最初と最後に移動します。

terminal — キーボードを使用して端末をスクロールするには?
キーボードのみを使用してbashでスクロールするにはどうすればよいですか? bashでそれができない場合、これをサポートする他のシェルはありますか?...

Neovim のインストール

Neovim(最新版)のインストール

WSLのUbuntu上で下記を実行します。

systemctl # systemdのサポートを確認
sudo vim /etc/wsl.conf # 下記を確認
# [boot]
# systemd=true
### 参考:https://crieit.net/posts/systemd-supported-in-wsl


snap -h # WSL2でのsnapのサポートを確認
### 参考:https://qiita.com/lx-sasabo/items/123b95ada9a3a4813899


# `sudo apt install neovim` だと最新版がインストールされないようなので、`snap`でインストールする。
sudo snap install --beta nvim --classic # 今回は v0.9.1 だった
# nvim v0.9.1 from neovim-snap (neovim-snap) installed
# Channel latest/beta for nvim is closed; temporarily forwarding to stable.
### 参考:https://github.com/neovim/neovim/wiki/Installing-Neovim#snap


# nvimのバージョン確認
nvim -v
# NVIM v0.9.1
# Build type: RelWithDebInfo
# LuaJIT 2.1.0-beta3

# nvim 起動
nvim

最終的に下記画面が表示されたらOKです。Vimを使うのが初めてなので、今後使い勝手を向上させていこうと思っています。

【WSL2】systemdがサポートされたようなので試してみた - Crieit
ここ数年はWindowsの環境をクリーンインストールするたびにWSL2の環境を作り直し、その度にgenieを使ってsystemdをPID 1 にするための方法をメモしてきました。 【WSL2】systemctlが動かない問題をきちんと...
WSL2 の Ubuntu に最新の Neovim を入れる - Qiita
ざっくり結論apt だと最新版がインストールできていませんでした。snap を使うことで最新にできました。snap を使うために systemd を有効にする必要がありました。背景WSL2…
Installing Neovim
Vim-fork focused on extensibility and usability. Contribute to neovim/neovim development by creating an account on GitHu...

aliasの設定|Neovimをvim, viで開くようにする

下記の記述を行うことで、vim, vi で Neovim が起動するようになります。

nvim ~/.bashrc

# ~/.bashrc の末尾に下記を追加
########
alias vi="nvim"
alias vim="nvim"
########

source ~/.bashrc

# ここで再ログイン 

nvim
vi
vim
# 上記ですべてNeoVimが立ち上がればOK

ホームディレクトリから開始

wsl で起動すると、デフォルトではホームディレクトリからは起動しません。ホームディレクトリから起動させたいと思い、ChatGPTに聞いたところ、 ~/.bashrccd ~ を追記する方法が一番簡単そうだったので、この方法をとりました。

########################################################################
# WSL上で実行
nvim ~/.bashrc

# 末尾に下記を追加
########
cd ~
########

exit
########################################################################

# ここで再ログインすると...
# Home Directory から開始する
[User]
WSL2(Ubuntu)をコマンドプロンプトから起動したときに、~から開始する方法は?

[ChatGPT]
WSL2(Ubuntu)をコマンドプロンプトから起動するときに、デフォルトでホームディレクトリ(~)から開始するには、いくつかの方法があります。以下に主な手法をいくつか説明します。

・wsl コマンドにオプションを追加: wsl コマンドに-eオプションを使用してシェルを起動する際にコマンドを実行できます。例えば、wsl -e bash -c "cd ~; exec bash"とすることで、ホームディレクトリに移動した状態で新しいbashシェルを起動します。
・ショートカットの作成: Windowsで特定のコマンドを実行するショートカットを作成し、そのショートカットからWSL2を起動することもできます。その場合、ショートカットのターゲットに上述のwsl -e bash -c "cd ~; exec bash"コマンドを設定します。
・ユーザープロフィールの調整: Ubuntu(または他のLinuxディストリビューション)内で.bashrcや.zshrc(使用するシェルによる)にcd ~を追加する方法もあります。ただし、これはすべてのシェルセッションで影響を与えるため、注意が必要です。
・WSLの設定ファイル: WSL2には/etc/wsl.confという設定ファイルがあり、この中で起動時の動作をカスタマイズすることができます。ただし、このファイルでシェルの起動ディレクトリを指定する機能は直接サポートされていないようです。

以上のいずれかの方法で、WSL2(Ubuntu)をコマンドプロンプトから起動したときにホームディレクトリから開始することが可能です。具体的な状況やニーズに応じて最適な方法を選んでください。


[User]
ユーザープロフィールの調整 の詳細を教えてくれる?

[ChatGPT]
Linuxシステムでは、ユーザープロフィールは通常、ホームディレクトリ内の設定ファイル、特に.bashrc(bashの場合)、.zshrc(zshの場合)などで管理されます。これらのファイルは各ユーザーごとに存在し、そのユーザーのシェルが起動される際に自動的に実行されるコマンドや設定が記述されています。

~/.bashrc(または選択したシェルの対応する設定ファイル)にcd ~という行を追加することで、シェルが起動したときに自動的にホームディレクトリに移動するように設定できます。

手順は以下の通りです:

テキストエディタを開く: まずは、設定ファイルを編集するためにテキストエディタ(例えば、nano、vim、emacsなど)を開きます。コマンドラインで以下のように入力することで開けます。

nano ~/.bashrc  # bashの場合
# or
nano ~/.zshrc  # zshの場合
コマンドを追加: ファイルが開いたら、最後にcd ~という行を追加します。これがシェル起動時に自動的に実行されるコマンドとなります。

保存と終了: 変更を保存してエディタを終了します。nanoを使用している場合は、Ctrl + Oで保存し、Ctrl + Xで終了できます。

設定の再読み込み: 変更を有効にするためには、新しいシェルセッションを開始するか、現在のセッションで以下のように入力して設定を再読み込みします。

source ~/.bashrc  # bashの場合
# or
source ~/.zshrc  # zshの場合
以上の手順で、新たに開始する各シェルセッションは自動的にホームディレクトリ(~)で開始されるようになります。ただし、これはそのユーザーが起動するすべてのシェルセッションに影響しますので、その点を考慮した上で設定してください。

おわりに

今回はNeoVimをエディタとして使いたい人のために使ったWSLの環境構築について書きました。今後はプラグイン等も紹介できればと思ってます。

Pythonの環境構築

また、Pythonの実行環境を構築する記事も掲載しています。pyenv, pyenv-virtualenv で仮想環境を構築しています。

Linuxコマンドや設定方法で躓いたところなど

WSLの設定で躓いたところ等

コメント

タイトルとURLをコピーしました