it-swarm-ja.com

Sublime Text 2で角括弧を書くことができません-理由を知るにはどうすればよいですか?

次のパッケージがインストールされたWindowsx64でSublimeText2を実行しています。

  • パッケージ制御
  • CoffeeScript
  • EncodingHelper
  • GIT
  • MarkDownプレビュー
  • Python PEP8 Lint
  • スタイラス
  • SFTP
  • テーマ-ソーダ

コーディングを開始する前にこれらすべてのパッケージをインストールしましたが、角括弧([)がエディターで記述できないことに気付きました。私のノルウェー語キーボードでは、それはALTGR+8です。これらすべてのパッケージ(Sodaテーマを除く)は他のすべての開発マシンにもありますが、それらはすべてUbuntuマシンです。

どうすれば問題が何なのか理解できるのだろうか。いくつかのキーバインドがALTGR+8を上書きしたと思いますが、それを使用しても何も起こりません。何が起こっているのかを理解するために使用できる詳細モードまたはデバッグモードはありますか?あるいは、ALTGR+8キーバインドを設定して開いた正方形のシンボルを書き込むために展開できるハックはありますか?

ありがとう

6
Hubro

私もこの問題を抱えていて、[、]、}を書くことができませんでしたが、パッケージが異なりました。私はデンマーク語のキーボードレイアウトを使用しているので、AltGr+8AltGr+9、およびAltGr+0が私にとって厄介なキーでした。

私の解決策は、ファイル内検索を使用して、すべてのパッケージ内のキーバインディングファイルを検索し、対応するキーバインディングを検索して、デフォルトのキーバインディングをオーバーライドして角かっこを書き込むことでした。

Preferences -> Browse packagesパスをコピーし、SublimeTextに戻り、Ctrl + Shift + Fを押してファイルを検索し、パスをWhereフィールドに貼り付けます。私の場合、alt+ctrl+8alt+ctrl+9alt+ctrl+0を検索し、対応するキーバインドがあった行のコメントを解除する必要がありました。それでもショートカットを使用する必要がある場合は、次のように変更できます。別の組み合わせ。

完璧に動作します。 :)

6
Jervelund

私のように、疑わしいキーバインディングを見つけることができませんでした(ctrl+alt+= ために } フランス語キーボードの場合)、設定>キーバインディング-USERファイルで強制できます。

[
    { "keys": ["ctrl+alt+="], "command": "insert", "args": {"characters": "}"} }
]
3

QWERTZを使用したドイツ語のキーボードレイアウトでも同じです。

解決策:

環境設定>キーバインディング-ユーザー

それらを追加:

{ "keys": ["ctrl+alt+0"], "command": "insert", "args": {"characters": "}"} },
{ "keys": ["ctrl+alt+8"], "command": "insert", "args": {"characters": "["} },
{ "keys": ["ctrl+alt+9"], "command": "insert", "args": {"characters": "]"} },
3
user2499954

で検索しました

C:\ Users *********\AppData\Roaming\Sublime Text 3

alt + ctrl +8およびalt + ctrl +9の場合

そして、対応する2行をコメントアウトしました。これらの組み合わせが使用されたラインは全部で4つありました。

質問をした後、私は実際にそれを非常に迅速に理解しました。もう少しALTGR+8さまざまな状況でのスパムテキストが表示されたクイックパネルが生成されることに気付きました"W391:ファイルの終わりに空の行"これは明らかにPyLintパッケージを指しています。これを無効にすると問題が解決したので、ワークフローを少し破壊しないものに再バインドします。

しかし、この種の問題を(幸運にも解決策に出くわすことなく)理解する方法を知りたいので、この答えは受け入れません。

0
Hubro

コンソールを開いて(Ctrl + `または[表示]> [コンソールの表示])、いずれかのパッケージからエラーメッセージが表示されるかどうかを確認できます。

さらに、エラーでわからない場合に備えて、コンソールでsublime.log_commands(True)を実行して、呼び出されているコマンドを知ることができます。

0
zoli