Quantcast
Channel: Vimタグが付けられた新着記事 - Qiita
Viewing all articles
Browse latest Browse all 5608

vimrcを1から書きなおしていく

$
0
0

 先日新しいPCを手に入れたので環境を整えるべく.vimrcや.zshrcなどのドットファイルをgitで管理しようとしてたのですが、誤ってそいつら消しちゃいました...。しかもアホなことにcommitする前に消しちゃったし、最近バックアップとるのさぼってたので戻し方わかりません。
 まあせっかく出しこの際1から書いていくかーってことでその時の備忘録。便利だなーと思ってるものをpick upして紹介していく

syntax on

これは必須だろうと思ってる。構文に色を付けてくれる

syntax on

tabstop

タブを挿入した際の幅を調整する。僕的にはデフォルトだと空きすぎて気持ち悪いので調整(2だと逆に短すぎるかも)

set tabstop=2

incsearch

インクリメンタル検索にする。記述無しの場合、例えば「hoge」と検索をかけるとすると「/hoge」まで打ち込んでからEnter押さないとハイライトされないので分からない。これを入れておけば一字打つごとに検索をかけられるのでかなり見やすい。

set incsearch

number

行数を左端に表示する。僕は行数見えたほうがいいかなーと思うので。

set number

キーマッピング

デフォルトだとちょくちょく煩わしい操作があるのでキーマッピングで解決。詳細は割愛。

括弧の補完に関しては
カッコの補完を手軽にカッコ良く
を参考にさせていただきました。

"===========================================
"キーマッピング
"===========================================
inoremap <C-c> <Esc>    "Esc押しづらいので入れておく
noremap <S-h> ^     "S-hで左端へ
noremap <S-l> $     "S-lで右端へ

"インサートモードでも移動
inoremap <C-j>  <down>
inoremap <C-k>  <up>
inoremap <C-h>  <left>
inoremap <C-l>  <right>

"括弧の補完
inoremap { {}<Left>
inoremap {<Enter> {}<Left><CR><ESC><S-o>
inoremap ( ()<ESC>i
inoremap (<Enter> ()<Left><CR><ESC><S-o>
inoremap ' ''<LEFT>
inoremap " ""<LEFT>

nnoremap == gg=G    "=を二回連続入力でバッファ全体をインデント整理

プラグインは後から入れる感じで、取り敢えずこれを.vimrcに設定しておけばだいぶ快適になるはず。
一応紹介した分だけ下記にまとめて置いておきます。

syntax on
set tabstop=2
set incsearch
set number

"===========================================
"キーマッピング
"===========================================
inoremap <C-c> <Esc>    "Esc押しづらいので入れておく
noremap <S-h> ^     "S-hで左端へ
noremap <S-l> $     "S-lで右端へ

"インサートモードでも移動
inoremap <C-j>  <down>
inoremap <C-k>  <up>
inoremap <C-h>  <left>
inoremap <C-l>  <right>

"括弧の補完
inoremap { {}<Left>
inoremap {<Enter> {}<Left><CR><ESC><S-o>
inoremap ( ()<ESC>i
inoremap (<Enter> ()<Left><CR><ESC><S-o>
inoremap ' ''<LEFT>
inoremap " ""<LEFT>

nnoremap == gg=G    "=を二回連続入力でバッファ全体をインデント整理

Viewing all articles
Browse latest Browse all 5608

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>