keymap.csonJavaScript ソースのインデントが少し異なるようにファイルを更新しようとしています。caseのインデントとdefaultステートメントを削除したくありませんswitch。
デフォルトでは、Atom は次のようにフォーマットします。
switch(x) {
case 1:
//stuff
case 2:
//stuff
default:
//stuff
}
私は自分の case ステートメントを 1 回インデントする (そしてもう一度インデントする//stuff) のが好きです。
だから私はキーマップを編集して、このようにフォーマットするようにしようとしています:
switch(x) {
case 1:
//stuff
case 2:
//stuff
default:
//stuff
}
残念ながら、私が何をしようとしても、「ケース」の後にスペースバーを押すとすぐにインデントの減少を止めることができません。
Keymaps Documentationから、次の coffeescript をkeymap.csonファイルに入れると、デフォルトの動作が無効になり、新しい動作 (|case|default正規表現の 2 行目から省略される) を追加する必要があるように見えますが、なぜ機能しないのかわかりません:
'.source.js':
'editor':
'decreaseIndentPattern': 'unset!'
'.source.js':
'editor':
'decreaseIndentPattern': '(?x)
^(.*\\*/)?\\s*(\\}|\\))
| ^\\s* else \\s*$
'
元のキーマップはlanguage-javascript パッケージ hereにあると思います。