2013年1月5日土曜日

UbuntuでSublimeText2の入力補完が出来ない時

# ハマったので、備忘録としてと同じ轍を踏む人のためのエントリ

問題

Q. あれ? UbuntuのSublimeText2で ctrl+space で入力補完出来ないぞ!?
A. 落ち着け。Linux版だと入力補完のキーバインドの初期値は alt+/ だ

何故?

ダウンロードページにあるchangelogに書いてある。正式にVersion 2.0になったタイミングで変わったらしい。 ctrl+space だとIME切り替えのキーバインドと被るからね。
  • Linux: Show Completions has changed from ctrl+space to alt+/, to not interfere with IMEs
  • 「Sublime Text - Download http://www.sublimetext.com/2」から

    普段は半角/全角キーを使うか、mac風に変換キーのキーバインドを変えてIMEのon/off出来るようにしてるので、これにハマった時になかなか思い至らなかった。

    workaround

    今は、以下のような設定をPreferences -> Key Bindings-Userに記述している。
    [
      { "keys": ["ctrl+space"], "command": "auto_complete" },
      { "keys": ["ctrl+space"], "command": "replace_completion_with_auto_complete", "context":
        [
          { "key": "last_command", "operator": "equal", "operand": "insert_best_completion" },
          { "key": "auto_complete_visible", "operator": "equal", "operand": false },
          { "key": "setting.tab_completion", "operator": "equal", "operand": true }
        ]
      }
    ]
    

    Preferences -> Key Bindings-Defaultから入力補完の設定部分の記述をコピーして ctrl+space に書き換えただけ。

    0 件のコメント: