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

vimrcの便利そうな設定をカテゴリ毎にまとめてみた

$
0
0

移動系

左右のカーソル移動で行を跨いで移動

参考:vimrcのwhichwrapオプションについて

setwhichwrap=b,s,h,l,<,>,[,],~

マウス操作を有効にする

参考:端末vimでマウスを使う

setmouse=a

スクロールの余裕を確保する

参考:Vimで、画面の端でスクロールするのではなく、数行余裕があるうちにスクロールする方法(scrolloff)

example
setscrolloff=3

折り返し表示の際にも表示行単位で移動する

参考:vimのカーソル移動を表示行単位で行うようにしたい

nnoremapj gj
nnoremapk gk
vnoremapj gj
vnoremapk gk

ウィンドウ間の移動を楽にする

example
nnoremap<C-j><C-w>jnnoremap<C-k><C-w>knnoremap<C-l><C-w>lnnoremap<C-h><C-w>h

インサートモードでjjと入力した場合はESCとみなす

inoremap jj <Esc>

編集系

バックスペースでの削除をいつでも有効にする

参考:vimで文字が削除出来ないと思ったらバックスペースが効かなくなった

set backspace=indent,eol,start

Yを行末までのヤンクにする

nnoremap Y y$

タブ・インデントの設定をする

参考:Vim のカスタマイズ 〜 タブ/インデントの設定

example
setexpandtab" タブの代わりに空白を使うsettabstop=4" タブの幅setshiftwidth=4" 自動インデントでずれる幅setsofttabstop=2" 連続した空白に対してタブキーやバックスペースキーでカーソルが動く幅(デフォルトでは無効: 0)setautoindent" 改行時に前の行のインデントを継続するsetsmartindent" 改行時に入力された行の末尾に合わせて次の行のインデントを増減する

検索機能の向上

参考:

example
setignorecase" 大文字小文字を無視setsmartcase" ignorecaseと合わせることで,小文字入力の時のみ大文字小文字を無視setincsearch" インクリメンタルサーチsethlsearch" 検索結果をハイライトnnoremap<silent><ESC><ESC> :nohlsearch<CR>" ESCキー連打でハイライトを消す

インサートモードに入る時に自動でコメントアウトされないようにする

参考:Disable automatic comment insertion

autocmdFileType * setlocalformatoptions-=cformatoptions-=rformatoptions-=o

置換の際のgオプションをデフォルトで有効化する

setgdefault

保存時に行末の空白を削除する

参考:Vimで行末の余分なスペースを取り除く

autocmdBufWritePre * :%s/\s\+$//ge

見た目系

カラムラインを引く

setcolorcolumn=80

行番号を表示する

setnumber

カラースキームを適用

参考:

example
syntaxoncolorscheme molokai

テキストが折り返されないようにする

setnowrap

変換候補で一度に表示される数を設定する

setpumheight=10

左下のインサートモードなどの文字を非表示にする

setnoshowmode

下部のステータスラインを常に表示

setlaststatus=2

スペルチェック機能を使う

参考:Vimのスペルチェック機能を使う

setspellsetspelllang=en,cjk "日本語を除外

スクロールバーを消す

参考:Vimでメニューバー、ツールバー、スクロールバーそれぞれを非表示にする方法

example
setguioptions-=rsetguioptions-=R
setguioptions-=lsetguioptions-=L
setguioptions-=b

ソースコードを折畳み表示する

参考:

example
setfoldmethod=marker
" manual: 手動で折畳を定義する" indent: インデントの数を折畳のレベル(深さ)とする" expr:   折畳を定義する式を指定する" syntax: 構文強調により折畳を定義する" diff:   変更されていないテキストを折畳対象とする" marker: テキスト中の印で折畳を定義する

現在の行をハイライト

参考:編集行の行番号を常にハイライトする

example
setcursorline" 現在の行をハイライトhi clear CursorLine " 上と合わせることで行番号のみハイライト

iTerm2やtmux上でもインサートモード時のカーソルの形状を変化させる

参考:

example
if exists('$TMUX')let&t_SI="\<Esc>Ptmux;\<Esc>\<Esc>]50;CursorShape=1\x7\<Esc>\\"let&t_EI="\<Esc>Ptmux;\<Esc>\<Esc>]50;CursorShape=0\x7\<Esc>\\"elselet&t_SI="\<Esc>]50;CursorShape=1\x7"let&t_EI="\<Esc>]50;CursorShape=0\x7"endif

その他

文字コードの設定をする

参考:

example
setencoding=utf-8setfileencoding=utf-8

ビープ音を消す

参考:vimのBeep音を消す方法

example
setvbt_vb=

最後に

自分が設定していないものも書きましたが,正直切りがないですね.それでもこれはオススメ!ってのがありましたら,是非教えて下さい.追記したいと思います.


Viewing all articles
Browse latest Browse all 5608

Trending Articles



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