LoginSignup
57
49

More than 3 years have passed since last update.

最近ぼくがVimに設定したこと

Last updated at Posted at 2019-12-03

ハロー、ハッピーVimmer :tada:

今日はVim pluginと、それに対する僕の設定を紹介します。

マクロの実行をdot repeat可能にした

まずはシンプルかつ最強なやつです。

dot-repeatは通常1つの動作のみを繰り返しますが、これを使えば、以下のような繰り返しが可能です。

  1. qa マクロ記録開始
  2. dt( 動作1
  3. dib 動作2
  4. 3lD 動作3
  5. +q マクロ記録完了
  6. @a マクロを発動
  7. . 下に移動してから、上述のdt(から3lDまでを実行
  8. . 下に移動してから(略
  9. . 下に移動してからry
  10. 繰り返し

sample

Webページを非同期で表示するようにした

これは自作プラグインで、まだドキュメントの整備が終わっていない(する予定がない)のですが、せっかくなので紹介させてください。

これを以下のように設定すると

次のようにweblio辞書をVimのpopupで表示します。

sample

ドキュメントを追加して、あとは内部のバッファをいじれるようにすれば、もっと便利になると思いますが、使う人は僕以外いないし、いらんか。という。
だれかドキュメント書いて!

英和翻訳を非同期で表示するようにした

weblio辞書で和英ができるようになったので、あとは英和が必要です。

<leader>kで、選択した英文を翻訳してくれるようにしました。

sample

日本語関連の操作をしやすくした - vim-fmap

これはfキー及びFtTキーの4つへ、キーバインディングを提供してくれるプラグインです。

例えば以下を実行すると

nmap <leader>f <Plug>(fmap-forward-f)
FNoreMap p (  " 大文字括弧開き

<leader>fpbキーで、Vimデフォルトのf(を実行してくれます。

sample

僕はこれを以下のように設定して、IMEオンオフなしで日本語文字にジャンプできるようにしています!
これでnormal・visual・operatorへのいずれでも、ジャンプが可能になります :point_down:

let g:fmap_escape_keys = ['', '', '']

augroup vimrc
  autocmd VimEnter * FNoreMap / ・
  autocmd VimEnter * FNoreMap T ・
  autocmd VimEnter * FNoreMap tt …
  autocmd VimEnter * FNoreMap ''  
  autocmd VimEnter * FNoreMap p (
  autocmd VimEnter * FNoreMap k 「
  autocmd VimEnter * FNoreMap K 〈
  autocmd VimEnter * FNoreMap -k 『
augroup END

詳しくは :point_down:

括弧の操作を最強にした - vim-operator-surround

いわずと知れたプラグインですが、これも僕は日本語文字に活用しています。
(もちろん日本語文字以外にも。)

例えばカーソル下にwordという単語があれば、normalからのgajKキーでその周りに「」を追加することができ、つまりは「word」することができます。

これ :point_down: の執筆で大活躍でした。(宣伝)

gina.vimのコミット画面をcommittia.vimみたいにした

gina.vimは今季マジ推しのプラグインのうち、ひとつです。

そのまま使うでも便利なのですが、自前でキーマッピングを追加してみました。
見てみてください! :point_down:

sample

ちなみに、このキーマッピングの本家は :point_down:
(これを直接利用しようと考えたのですが、どうやらターミナルからgit-commitする用だったので、諦めました。もしVim上からもできるようだったら、すみません。)


以上です。
Happy Viming!

ZZ

57
49
2

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
57
49