俺の.vimrc

この記事は[FIXER 2nd Advent Calendar 2020](https://adventar.org/calendars/5752) 10日目の記事です。

はじめに

普段VSCodeを使っている身ですが、WSLのUbuntuの設定ファイルを弄ったり、VSCodeを起動するのも面倒な時にはvimを使ってます。そんなvimの使用頻度が低い自分ですが「デフォルトの設定では嫌だ!」と言うわがままな人間なので、 .vimrc を設定しています。今回は自分の .vimrc の内容と、自分のおすすめの設定を書きます。

俺のvim

自分の環境でvimを開いたときの画面を貼っておきます。

そもそも .vimrc ってなんなの?

vimの設定ファイルです。これを設定することでvimがオシャレになったり、操作性が上がったりします。

実行環境

  • WSL
    • Ubuntu 20.04 LTS
  • ターミナル
    • Windows Terminal(Microsoft Storeから入手)

自分が行った設定手順

1. 下記コマンドを実行

git clone https://github.com/VundleVim/Vundle.vim.git ~/.vim/bundle/Vundle.vim
git clone https://github.com/tomasr/molokai.git
mv molokai/colors/ ~/.vim/


2. `~/.vimrc` に下記値を設定 

" Vundleでプラグインをインストールするための設定
set rtp+=~/.vim/bundle/Vundle.vim
call vundle#begin()
" Vundleのプラグイン
Plugin 'VundleVim/Vundle.vim'
" lightlineのプラグイン
Plugin 'itchyny/lightline.vim'
call vundle#end()

" UTF-8化
set fenc=utf-8
" バックアップファイルを作らない
set nobackup
" スワップファイルを作らない
set noswapfile

" 行番号表示
set number
" 現在の行を強調表示
set cursorline
" 行末まで移動可能
set virtualedit=onemore
" smartindentの設定
set smartindent
" ビープ音を可視化
set visualbell
" 対応する括弧の強調表示
set showmatch
" シンタックスハイライトの有効化
syntax on
" シンタックスハイライトのテーマ設定
colorscheme  molokai
" ステータスラインの有効化
set laststatus=2
" ステータスラインのテーマ設定
let g:lightline = { 'colorscheme': 'molokai' }

" マウス操作の有効化 & ホイール操作の有効化
set mouse=a
set ttymouse=xterm2

" tabを半角スペース化
set expandtab
" 行頭以外のtabをスペース2個分にする
set tabstop=2
" 行頭以外のtabをスペース2個分にする
set shiftwidth=2

" 大文字小文字区別せず検索
set ignorecase
" 検索文字列に大文字が含まれていれば区別して検索
set smartcase
" 検索文字列を順次ヒットさせる
set incsearch
" 検索文字列が最後まで行ったら最初に戻る
set wrapscan
" 検索文字をハイライト表示
set hlsearch
" ESC連打でハイライト解除
nmap <Esc><Esc> :nohlsearch<CR><Esc>


3. vimで `~/.vimrc` を開いて下記コマンドを実行

:PluginInstall


個人的おすすめ設定項目

行番号表示

set number

行番号を表示します。この設定は入れない意味がありません。

マウス操作の有効化 & ホイール操作の有効化

set mouse=a
set ttymouse=xterm2

クリックでカーソル移動、ホイールデスクロールできます。タッチパッドであれば2本指でスクロールできます。vimはキーボードのみで操作していても不自由ないエディタですが、設定していて損することはありません。

シンタックスハイライトの有効化 & テーマ設定

syntax on
colorscheme  molokai

デフォルトの色よりもこっちのほうがオシャレに感じたので色設定を変えてます。このテーマ設定のために、設定手順で https://github.com/tomasr/molokai.git をクローンしています。

ステータスラインの有効化 & テーマ設定

set laststatus=2
let g:lightline = { 'colorscheme': 'molokai' }

ステータスラインでは現在の行数、開いているファイル名、現在のモード(Normalモード、Insertモード、Visualモード)などを表示させることができます。エラーが何行目の何文字目で発生している、とのエラー文が出たときに分かりやすかったり、現在のモードが分かりやすかったりするのはとても便利です。またvimのプラグインでlightlineを使用しています。これによってデフォルトのステータスラインがとてもオシャレになります。このlightlineを使用するために ~/.vimrc にて Plugin ‘itchyny/lightline.vim’  と設定し、 :PluginInstall を実行しています。

おわりに

最後までお読みいただきありがとうございました。現状自分のおすすめ設定は上述の通りですが、何かまたおすすめが出てきたら記事を上げるかもしれません。もしよろしければそちらの記事もお読みいただけると幸いです。