3
7

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 5 years have passed since last update.

無人島に持っていくvimrc

Last updated at Posted at 2019-03-01

vimの特徴といえば「どのLinuxにも入っている」ことですが、そうは言っても素のvimをいきなり使うと辛い部分が多々あるので、最低限の設定だけは持っていきましょう。

持っていく方法自体は sshした先に.bashrcや.vimrcを持って行きたい人のためのsshrc の記事に譲ります。

これを持っていけ!

" 日本語エンコード対応
set encoding=utf-8
set fileencoding=utf-8
set fileencodings=utf-8,cp932,euc-jp

" 環境を汚さない設定
set nobackup
set noswapfile

" 古いvimでも出来る見た目の改善
" 入力途中のコマンドを表示
set showcmd
" 括弧をハイライト
set showmatch
" デフォルトのハイライト時間が長すぎるので短くする
set matchtime=1

" インデントを維持するなど挙動を改善する
set smartindent

" バックスペースの挙動を普通にする
set backspace=eol,indent,start

" 画面に余裕をもたせてスクロールする
set scrolloff=5

" 素早くウィンドウ移動(まさかカーソルキーを使ってる人はいませんよね?)
nnoremap <Left> <C-w>h
nnoremap <Down> <C-w>j
nnoremap <Up> <C-w>k
nnoremap <Right> <C-w>l

" Backspace キーを使う
" なおかつレジスタを汚さない
noremap <BS> "_xh

逆にこれはなくてもいいなと思う設定もあります。

" カーソル位置ハイライトは重くなりがち
set cursorline
set cursorcolumn

" 行番号は出さないのが出来るvimmerのやり方
set number
" 相対行番号は重くもなるのでなおさら
set relativenumber

無人島での戦い方

プラグインがないときにこそ光る機能のご紹介。

  • <C-o> <C-i>: カーソルを戻る/進む。ファイル履歴をまたいで移動できるので、vimを開き直した後でも <C-o> 連打でさっき開いたファイルに戻ったりできます。
  • ^ $: 行頭/行末に飛ぶ。素早く移動するなら必須でしょう。
  • %: 対応する括弧に飛ぶ。関数の始めから最後まで飛ぶなど応用が効く。
  • cgn: 検索ワードを置き換える (cが置換で、gnが検索ワードという意味の対象)。nで次のワードに飛びながら実行したり、nなしで.で繰り返すだけでも次々と置き換えていけるのでかなり捗ります。

以上、入門記事にはあまり取り上げられない機能のご紹介でした。

おことわり

VSCodeでリモート編集すればいいじゃんってのは言わない約束です

3
7
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
3
7

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?