概要
Rustの開発をしたくて環境構築した時の備忘録です。vimのインストールは省略します。補完はVim標準のomni補完を利用します。
VisualStudioをインストール
後ほどインストールするrustupにはC++コンパイラが必要です。VisualStudioをインストールするときに「C++デスクトップ開発」にチェックを入れればC++コンパイラもインストールされる。
https://visualstudio.microsoft.com/ja/downloads/
rustupのインストール
RustにはrustupというCLIのインストーラがある。rustに関するツールやライブラリがrustupからインストールできる。
https://rustup.rs/
rlsのインストールし、vimのプラグインを入れる
vimからlanguage serverを利用するプラグインvim-lspを追加します。
Rustのlanguage serverであるrlsをインストールします。
https://github.com/prabirshrestha/vim-lsp
https://github.com/prabirshrestha/vim-lsp/wiki/Servers-Rust
vimにrust用プラグインを追加
vimrcの設定
rustでlspを使うように設定
インサートモードで.か:を入力したときに補完ができるように設定
if executable('rls')
let g:lsp_diagnostics_enabled = 0 " エラー表示はALEで行う
au User lsp_setup call lsp#register_server({
\ 'name': 'rls',
\ 'cmd': {server_info->['rustup', 'run', 'stable', 'rls']},
\ 'workspace_config': {'rust': {'clippy_preference': 'on'}},
\ 'whitelist': ['rust'],
\ })
autocmd FileType rust setlocal omnifunc=lsp#complete
" .か:を押したときに自動的にオムニ補完
autocmd FileType rust imap <expr> . ".\<C-X>\<C-O>"
autocmd FileType rust imap <expr> : ":\<C-X>\<C-O>"
endif
VimにALEを追加
コードチェッカーであるALEを追加します。
rlsでもコードチェックはできるが、コード内に下線が引かれないのでALEを使用
https://github.com/w0rp/ale