5
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

Windows で init.vim(.vimrc)を素早く Neovim でひらきたい

Last updated at Posted at 2023-10-02

私は Neovim を使っています。Neovim の設定ファイルは init.vim で設定します。
この init.vim いつも行方不明になります(笑)。

というのも1年半ほど前から会社PCが Windows になりまして、 Windows の場合だと init.vim の場所が Mac と異っていた & Neovim の設定が成熟してきていて、init.vim を修正する機会が少なってきているため、毎回場所どこやねん状態になっていました。

いいかげん、対策しようと思い、対策しました。

"nvim init.vim へのパス" のコマンドを関数化する

最初に結論を書くと $PROFILEeditvimrc という名前の関数を登録し、PowerShell で editvimrc を入力することで素早く init.vim を開けるようにしました。

登録した editvimrc 関数は下記の通りです。

$PROFILE
# init.vim を neovim で開く
# Set-Alias だと nvim に渡すパスを含めてエイリアスを設定できないため、関数を定義している
function editvimrc {
    nvim $HOME\AppData\Local\nvim\init.vim
}

ここからは、上記にいたるまでの考えの流れをメモ書きしておきます。

読み込まれている init.vim の場所を特定する

まず、「init.vim の場所はどこやねん」を明らかにします。ChatGPTに聞きました。
image.png

:echo $MYVIMRC を vim で実行します。
~_works 2023-10-02 15.27.44.png
すると、C:\Users\sasab\AppData\Local\nvim\init.vim と表示されました。
なるほど。こりゃ自分で特定できる自信がありませんw。

init.vim をひらくためのエイリアスコマンドを作成する

ついでに、PowerShell で neovim init.vim へのパス をエイリアス化するにはどうすれば良いか、ChatGPTに聞きました。

すると下記の回答を得られました。
Vim 設定ファイルの場所 - Google Chrome 2023-10-02 10.04.20.png

この回答によると、一度関数化して、さらにエイリアスを設定するみたいです。
なぜ、この手順が必要なのか分からなかったので試しに Set-Alias editvimrc nvim $HOME\AppData\Local\nvim\init.vim$PROFILE に設定します。

実行すると、$PROFILE 読み込みの時点でエラーを吐きました。
__works 2023-10-02 10.03.18.png
どうやらパスの部分がエイリアスの引数として正しくないようです。

ググると下記のQiita記事を見つけました。

引数ごとエイリアスとして設定したい場合は、Set-Alias を使わずに関数化するようです。
なるほど。となるとChatGPTが最初に関数化して、エイリアスを貼っていたのも納得できます。

関数化しよう

ChatGPTは関数化後にさらにエイリアスを貼っていましたが、自分がやりたいことは関数化の部分だけで満たされます。

悩んだのは関数名(実行するときのコマンド)です。
ChatGPTの画像をよく見ると分かるのですが、最初私は init.vim ではなく vim.init だと思っていました。今後も同様の勘違いをしてコマンド自体が忘れ去られる可能性があります。

なので、ChatGPT がおすすめしてくれたように、vim 時代から親しみのある vimrc というワードをコマンド名にいれることにします。(editvimまでは覚えられそう&あとはtab補完でなんとかなるやろという考えもありました)

ということで記事の頭らへんで紹介した内容を $PROFILE に書きます。

$PROFILE
# init.vim を neovim で開く
# Set-Alias だと nvim に渡すパスを含めてエイリアスを設定できないため、関数を定義している
function editvimrc {
    nvim $HOME\AppData\Local\nvim\init.vim
}

$PROFILE に書き込み後、PowerShell を再起動し、 editvimrc を実行すると見事に init.vim が Neovim で開けることを確認できました。

最悪、コマンドを忘れても、この記事を書いたことは頭に残っているのでコマンドが行方不明になることもなさそうですw。アウトプットはこういう意味でも大切だなーと思いました。

5
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?