インストール
CentOSではデフォルトでsyntax on未対応のため、 vim-enhancedを入れる必要がある。
デフォルト(vim-minimal
)は、Small版になっている。
/usr/bin/vi --version | grep -e Huge -e Small -e Normal
Small version without GUI. Features included (+) or not (-):
vim-enhanced
は、Huge版になっている。
/usr/bin/vim --version | grep -e Huge -e Small -e Normal
Huge 版 without GUI. 機能の一覧 有効(+)/無効(-)
キーバインド
ファイル名は補完可能です。
- 次の単語:
w
- 前の単語:
b
- 行末まで削除:
D
- Undo:
u
- Redo:
Ctrl + r
- ファイルオープン:
:e <ファイル名>
:e
のようにファイル名を指定しないと、現在のファイルを再読込します1。
- ファイルを読み込んで挿入:
:r <ファイル名>
- インデント解除:
Ctrl + D
- ウィンドウ分割:
:sp
(:split
)- ウィンドウ移動(上下左右):
Ctrl + w
+hjkl
- 次のウィンドウに移動:
Ctrl + w
+w
- ウィンドウ移動(上下左右):
- 折りたたみ
- 折りたたみの開閉:
za
- 折りたたみの開閉:
- 検索:
/
,?
- 特殊文字をそのまま検索したい場合は
\V
から始めるとよい2。
- 特殊文字をそのまま検索したい場合は
書式指定
以下のようにする。例えば、SQLの場合。
:set syntax=sql
ファイルのエンコーディングを変更
Shift-JIS(MS932)のファイルを開く場合は以下のようにする。
:e ++enc=cp932
改行を変更して保存
:set ff=unix
:w
クリップボードの中身をそのままペーストする
デフォルトだとインデントされてしまうので、ペーストモードにする。
:set paste
set_pasteを自動で設定したい
検索したが複雑な模様。
a!やi!を使うことで自動でペーストモードになるらしい。
現在ロードされているプラグインを表示する方法
:scriptnames
コマンドを打つ3
.vimrcの書き方
- コメント:
"
(ダブルクォート)を使用してください。閉じる必要はありません。
ファイル名補完
デフォルトでは、最初にマッチしたファイルを補完しますが、 この挙動はbashと違っているため、使いづらいです。
.vimrcに以下の設定を入れることで、bashと同じような挙動になります。
set wildmode=longest,list
Vundleによるプラグイン管理
Quick Startより。
git clone https://github.com/VundleVim/Vundle.vim.git ~/.vim/bundle/Vundle.vim
vimに入って以下のコマンドを打ちます。
:PluginInstall
.vimの設定
必要なのは以下の行のようです。
- 先頭の2行(requiredと書かれている)
call vundle#begin()
Plugin 'VundleVim/Vundle.vim'
(requiredと書かれている)call vundle#end()
filetype plugin indent on
もしくはfiletype plugin on
set nocompatible
filetype off
" set the runtime path to include Vundle and initialize
set rtp+=~/.vim/bundle/Vundle.vim
call vundle#begin()
" let Vundle manage Vundle, required
Plugin 'VundleVim/Vundle.vim'
" All of your Plugins must be added before the following line
call vundle#end() " required