LoginSignup
8
12

More than 1 year has passed since last update.

3年ぶりに neovim の設定を刷新してみた

Last updated at Posted at 2023-03-21

はじめに

neovim の設定を3年以上サボっていたので、久しぶりに整理しました。
バージョンが古くなっていたり、新しくリニューアルされたプラグインがあったので、更新ついでに改めてプラグインの使い方をおさらいしてみました。

そして、新しく購入した MacBook のローカル環境を汚したくなかったので、コンテナイメージを Docker Hub にアップロードして、開発に利用しています。

プラグインの紹介を見るよりも使ってみたいという方がいれば、ぜひプルしてみてください。

環境

  • Chip: Apple M2
  • macOS: Ventura 13.2.1
  • neovim: v0.8.2

Package Manager

Shougo/dein.vim

自分が長らく愛用している Shougo さん作のパッケージマネージャーです。

Fuzzy Finder

Shougo/ddu.vim

以前使用していたファジーファインダープラグインである denite.nvim の後継プラグインです。

ddu.nvim を拡張するプラグインが複数存在し、それらもインストールすることで以下のようなことが可能になります。

  • ディレクトリ構造をツリー上に表示
  • 特定の文字列をタイトルに含むファイルを再帰的に検索
  • 特定の文字列が存在するファイルの行を検索
file listing file_rec code grep
Screenshot 2023-03-21 at 18.11.02.png Screenshot 2023-03-21 at 18.11.22.png Screenshot 2023-03-21 at 18.12.08.png

詳しい説明に関しては、開発者本人が記事を書かれていますので、そちらをご覧ください。

Auto Completion

Shougo/ddc.vim

以前使用していた自動補完プラグインである deoplete.nvim の後継プラグインです。

ddc.nvim を拡張するプラグインが複数存在し、それらもインストールすることで以下のようなことが可能になります。

  • 現在操作中のバッファー内に書かれているコードから文字列を補完する
  • LSP から提供される情報をもとに文字列を補完する
around completion LSP completion
Screenshot 2023-03-21 at 18.30.00.png Screenshot 2023-03-21 at 18.30.00 copy.png

詳しい説明に関しては、開発者本人が記事を書かれていますので、そちらをご覧ください。

windwp/nvim-autopairs

括弧やクォーテーションなどを自動で閉じてくれるプラグインです。
括弧が多い場合に、閉じ括弧の数が足りてなくてシンタックスエラーになるのを防げます。

Ecosystem

vim-denops/denops.vim

上記で説明した ddu.vimddc.vim は、 README にもあるように denops.vim を導入している必要があるため、インストールしています。

Visual

EdenEast/nightfox.nvim

スター数が 2k を超えるカラースキーム系のライブラリです。

様々な種類のスキームがありますが、目に優しそうな Nightfox が気に入っています。

feline-nvim/feline.nvim

ステータスラインのカスタマイズを助けてくれるプラグインです。

ステータスラインをカスタマイズすると一気に華やかになりますね。

Screenshot 2023-03-21 at 19.18.26.png

nanozuki/tabby.nvim

タブラインのカスタマイズを助けてくれるプラグインです。

画面を縦分割している場合は、右上を見るとそれぞれ何のファイルを開いているか分かります。
また複数タブを開いている場合は、左上を見ると何個目のタブを開いているかがわかります。

Screenshot 2023-03-21 at 19.20.44.png

mhinz/vim-startify

neovim を開いたときに最初に表示される画面を編集できるプラグインです。

最初に開く画面で開発テンションを上げたいので、自分で ASCII art を書きました。

nvim-tree/nvim-web-devicons

ステータスラインやタブラインでアイコンを表示するために、導入しているプラグインです。

Shougo/pum.vim

Shougo さん作の独自補完ウィンドウのプラグインです。

pum.vim はネイティブで用意されている補完機能を使用せずに、自前で Vim の popup window 機能や floating window 機能を用いて補完を行うプラグインです。

引用元: https://zenn.dev/shougo/articles/ddc-vim-pum-vim

ネイティブ依存ではなく、独自のウィンドウを使用することで様々なメリットがあるみたいですね。
本人が記事をまとめてくださっているので、そちらをご覧ください。

Git

lewis6991/gitsigns.nvim

neovim 上で Git の操作ができるプラグインです。

このプラグインを導入することで、以下のようなことができます。

  • 修正のあるところまでコードジャンプできる
  • 特定の追加・削除・変更されたコードを修正前に戻せる
  • neovim 操作中に git blame を見れる

LSP

neovim/nvim-lspconfig

neovim で素早く Language Server Protocol の使用を可能にしてくれるプラグインです。

AI

github/copilot.vim

"AI pair programmer" である GitHub Copilot を neovim でも使用できるようにしてくれるプラグインです。

Clipboard

ojroques/nvim-osc52

自分は Docker を使用するので、 yank した内容をホストのクリップボードにも反映させないといけません。そのために入れているプラグインです。

おわりに

自分は Shougo さんが作成する Dark powered plugin シリーズが大好きなので、 Deno のパワーも取り入れて新しくなったプラグインを見て、テンションが上がりました。

より効率よく開発できるようにするには、他にもプラグインがあると良さそうなので、ここからまたアップデートしていこうと思います。

8
12
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
8
12