MacにHHKBを付けているので、Karabiner-Elementsにいつもお世話になってます。
仕事ではMacとWindowsを同時に使うのでMacとWindowsのキーバインドをある程度あわせたくて、Complex Modificationsに PC-Style Shortcuts
の中から PC-Style Copy/Paste/Cut
を追加しています。
ところでVimで矩形選択をたまにしたくなるのですが「Ctrl + v」がペーストになってしまいます。
iTerm2の中でVim使ってるときはうまくいくのだからこれはなにかの設定に違いない。。。
ぐぐると frontmost_application_unless
を設定しなさいということらしい。
~/.config/karabiner/assets/complex_modifications/
を探ると 1543454397.json
が PC-Style Shortcuts
のようです。
※ このファイル名、別のMacで見てみたら違ってました。
「Ctrl + v」を探すと
{ "type": "basic", "from": { "key_code": "v", "modifiers": { "mandatory": [ "control" ], "optional": [ "any" ] } }, "to": [ { "key_code": "v", "modifiers": [ "left_command" ] } ], "conditions": [ { "type": "frontmost_application_unless", "bundle_identifiers": [ "^com\\.microsoft\\.rdc$", "^com\\.microsoft\\.rdc\\.mac$", "^com\\.microsoft\\.rdc\\.macos$", "^com\\.microsoft\\.rdc\\.osx\\.beta$", "^net\\.sf\\.cord$", "^com\\.thinomenon\\.RemoteDesktopConnection$", "^com\\.itap-mobile\\.qmote$", "^com\\.nulana\\.remotixmac$", "^com\\.p5sys\\.jump\\.mac\\.viewer$", "^com\\.p5sys\\.jump\\.mac\\.viewer\\.web$", "^com\\.teamviewer\\.TeamViewer$", "^com\\.vmware\\.horizon$", "^com\\.2X\\.Client\\.Mac$", "^com\\.vmware\\.fusion$", "^com\\.vmware\\.horizon$", "^com\\.vmware\\.view$", "^com\\.parallels\\.desktop$", "^com\\.parallels\\.vm$", "^com\\.parallels\\.desktop\\.console$", "^org\\.virtualbox\\.app\\.VirtualBoxVM$", "^com\\.vmware\\.proxyApp\\.", "^com\\.parallels\\.winapp\\.", "^com\\.apple\\.Terminal$", "^com\\.googlecode\\.iterm2$", "^co\\.zeit\\.hyperterm$", "^co\\.zeit\\.hyper$", "^io\\.alacritty$", "^net\\.kovidgoyal\\.kitty$" ] }
とありました。やっぱり iterm2
設定されてる。
ここにMacVimを追加しよう! Karabiner-ElementsのEvenViewerを立ち上げて、「Frontmost Application」にしてからMacVimを触ると
Bundle Identifier: org.vim.MacVim File Path: /Applications/MacVim.app/Contents/MacOS/MacVim
と出ます。
ということで↑の bundle_identifiers
に
"^org\\.vim\\.MacVim$"
を追加します。
これでKarabiner-Elementsを再起動すればいいと思ったのですがどうも反映しない。
Complex Modificationsで PC-Style Copy/Paste/Cut
をremoveしてからadd ruleしてみたら反映した!
やっと出来たー。