Help us understand the problem. What is going on with this article?

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

ハロー、ハッピー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

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away