Sublime Text 初めてKeybindingsを設定する時は [ ] で囲まないといけないよ!


はじめに

僕が良く使うエディタはVisual Studio CodeSublime Text

で、このSublime Textはオリジナルのショートカットキーなんかを設定できる。
そんな時にいじるファイルが
Default (Windows).sublime-keymapもしくはDefault (OSX).sublime-keymap

ここに設定を書いたのに、なぜかセーブ時にエラー&設定が反映されていない!って事で、結構困ってたのだが、一瞬で解決したお話。。。

ショートカットキーを自分で作成してみよう

メニューのSublime Text>Preferences>Key Bindings

Default (Windows).sublime-keymapという2つのファイルが開く。(Mac OSならDefault (OSX).sublime-keymap
こんな感じ

編集できるのは右側だけ

左側は元々の設定で編集できない。なので自作するショートカットキーは右側に書く。

今回は実際に僕が行ったSublime Text でインデントが崩れないようにペーストするをやってみよう。

右側に下記を追加

{ "keys": ["super+v"], "command": "paste_and_indent" },
{ "keys": ["super+shift+v"], "command": "paste" },

これでセーブしてみる。

[ ]がないとエラー

セーブしてもこんな感じのエラーが出て、設定が反映されないのである!
なんでやねん!

左側を見てみると

[ ] がある!!

そう、[ ] が必要だっただけなのだ。でも大体のサンプルコードでは [ ] が省かれているので、この簡単なトリックに数時間も悩み続けた僕でした。。。

[
{ "keys": ["super+v"], "command": "paste_and_indent" },
{ "keys": ["super+shift+v"], "command": "paste" },
]

これが正解。