こんにちは、ひがしです。
今回はRust初心者がRustをVimで書く際にやってよかった設定を紹介していきます。

環境

今回の環境は以下の通りです。

  • OS
    • manjaro
  • shell
    • fish
  • Vim
    • patch8.2.0423

導入したプラグイン

Rust初心者の私がVimでRustを書くために導入したプラグインはこちらです。

LSP系

こちらはvim-lspを使うために導入しました。

フォーマッタ系

こちらはrustfmtを使ってファイルを自動でフォーマットしてくれます。
ちなみにrustfmtのインストールは以下のとおりです

$ rustup component add rustfmt

Postfix Completion

こちらはPostfix Completionを使用するために導入しました。

プラグインのインストール

今回vim-plugを使用してインストールするため、vimrcに以下を記述します。

call plug#begin('~/.vim/plugged')
Plug 'prabirshrestha/async.vim'
Plug 'prabirshrestha/vim-lsp'
Plug 'mattn/vim-lsp-settings'
Plug 'prabirshrestha/asyncomplete.vim'
Plug 'prabirshrestha/asyncomplete-lsp.vim'
Plug 'rust-lang/rust.vim'
Plug 'mattn/vim-sonictemplate'
call plug#end()

vimrcに設定を追記する

また、それぞれのプラグインをしようするための設定を以下のように追記しました。

" asyncomplete
let g:asyncomplete_auto_popup = 1

" rus.vim
let g:rustfmt_autosave = 1

" sonictemplate.vim
let g:sonictemplate_vim_template_dir = expand('~/.template')

Postfix Completionを使うための設定

次にvim-sonictemplateを使ってPostfix Completionを使うための設定を書きます。
詳しく知りたい方はゴリラさんがQiitaの方で解説記事を投稿されているのでそちらをご覧ください。

↓記事はこちらから↓

https://qiita.com/gorilla0513/items/d1b826137aa35890f4df

まずはディレクトリの作成です。
今回は ~/.template としますが、こちらはお好きなように変更してください。
また、こちらのディレクトリの指定は先程vimrcに追記したlet g:sonictemplate_vim_template_dir で行えます。

$ cd ~/

$ mkdir .template

$ cd .template

その後、 ~/.template 内に rust という名前のディレクトリを作成します。名前が違うと動かないと思われますので名前は rust にしてください。

$ mkdir rust

$ cd rust

最後に、~/.template/rust/ 内に pattern.stpl というファイルを作成し、pattern.stpl に以下を記述し、保存してください。

Rustのファイルを開き、パッケージ名.use を入力後、<C-y><C-b>をすることで自動でuse パッケージ名::ここにカーソル; が展開されるようになります。

パッケージ名.use{} を入力するとuse パッケージ名::{ここにカーソル}; が展開されます。嬉しいね。

デモ動画

まとめ

こんな感じでVimmerの私は快適なRust生活を送っています。
みなさんもよければ設定してみてください。

カテゴリー: Vim

0件のコメント

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です