Visual Studio プラグイン ViEmu をいじってみる

辺りを見渡してもあまりいない Vi 使い。通称「Vimmer
仕事上、Visual Studio を使用することもあり、そろそろ GVim + ctags コンビも辛くなってきたので ViEmu を購入してみた。
http://www.viemu.com/
EclipseNetbeans のViライクなプラグインにはどうも慣れなかったけど ViEmu はなんとかいけそう。
というわけで ViEmu の初期設定ファイル .viemurc を晒してみる。

set hlsearch
set ignorecase
set incsearch
set nowrapscan
set noterse
set smartcase

nnoremap                Y              y$
vnoremap                Y              y$
nnoremap                p              gp
vnoremap                p              gp
nnoremap                P              gP
vnoremap                P              gP

nnoremap                n              nzz
nnoremap                N              Nzz
nnoremap                *              *zz
nnoremap                #              #zz
nnoremap                g*             g*zz
nnoremap                g#             g#zz
nnoremap                <C-T>          <C-&>zz

nnoremap                k              gk
nnoremap                j              gj
vnoremap                k              gk
vnoremap                j              gj
nnoremap                h              <backspace>
nnoremap                l              <space>
nnoremap                <Left>         <backspace>
nnoremap                <Right>        <space>

cnoremap                <C-v>          <C-R>+
inoremap                <C-v>          <C-R>+
inoremap                <C-g>          <Delete>
nnoremap                <C-[>          :noh<CR>
nnoremap                <ESC>          :noh<CR>
nnoremap                <C-Q>          :close<CR>
vnoremap                /              y/<C-R>/<CR>

vnoremap                <              <gv
vnoremap                >              >gv

"----------------------------------------
"     コマンドモード用
"----------------------------------------
cnoremap                <C-d>          <Right>
cnoremap                <C-s>          <Left>
cnoremap                <C-a>          <Home>
cnoremap                <C-f>          <End>
cnoremap                <M-c>          \\C
cnoremap                <M-w>          <Home>\\<<End>\\>
cnoremap                <C-j>          <Enter>

[既知な制約事項]

  • 複数キーリマップには設定ファイルは対応していない
  • レジスタ1つしかなく、指定しても同一レジスタに保存される

whichwrap の設定はできないのでこれで代用。

nnoremap                h              <backspace>
nnoremap                l              <space>
nnoremap                <Left>         <backspace>
nnoremap                <Right>        <space>