2013-07-13 11 views
5

を変更はCtrl +RためはCtrl +Hを変更すると、デフォルトの動作を防止するための方法。エースエディタ - 私は</kbd> + <kbd>F</kbd>しかし、私が見つけようとしている、組み込みのダイアログを「検索」のための素晴らしい作品<em>エースエディタ</em>と<kbd>Ctrlキーの実装に取り​​組んでいますCTRL + Hのキーバインド

私はキーバインドでの作業についてのドキュメントやフォーラム上で見てきたが、私は 'を置換]ダイアログをインスタンス化するために呼ばれているものの方法や、それを上書きする方法を識別することはできません。

答えて

12

コマンドがhere定義されて交換してください。それをCtrlキー + R

editor.commands.addCommand({ 
    name: "replace", 
    bindKey: {win: "Ctrl-R", mac: "Command-Option-F"}, 
    exec: function(editor) { 
     require("ace/config").loadModule("ace/ext/searchbox", function(e) { 
      e.Search(editor, true) 
      // take care of keybinding inside searchbox   
      // this is too hacky :(    
      var kb = editor.searchBox.$searchBarKb 
      command = kb.commandKeyBinding["ctrl-h"] 
      if (command && command.bindKey.indexOf("Ctrl-R") == -1) { 
       command.bindKey += "|Ctrl-R" 
       kb.addCommand(command) 
      } 
     }); 
    } 
}); 

のためにHCtrlキー + を変更するには、次のコードを使用することが可能であるが、内部コマンドを使用して、一部は非常に醜いですが、私は問題を作ることをお勧めしたいですそのため、通常の名前を使用するか、またはreplaceコマンドキーを拾うのいずれかにエースリポジトリに自動的に

+0

ちょうど注意してください - それは@todayでは動作しません。 –

0

これが私の仕事:

editor.commands.addCommand({ 
name: 'replace', 
bindKey: {win: 'Ctrl-R', mac: 'Command-Option-F'}, 
exec: function(editor) { 
ace.config.loadModule("ace/ext/searchbox", function(e) {e.Search(editor, true)}); 
}, 
readOnly: true 
}); 
関連する問題

 関連する問題