Назначение клавиш Conkeror в Mac OSX
Кто-нибудь разобрался, как изменить привязки клавиш для мета и управляющих клавиш для Conkeror на Mac OSX? Например, в Emacs мой C сопоставлен с ключом команды apple, а мой M - с ключом опции. Есть ли способ сделать это для Conkeror? Кто-нибудь может предоставить javascript для файла.conkerorrc?
2 ответа
Установите KeyRemap4MacBook.
Поместите это в свой .conkerorrc
,
modifiers.C = new modifier(
function (event) { return event.metaKey; },
function (event) { event.metaKey = true; });
modifiers.M = new modifier(
function (event) { return event.ctrlKey; },
function (event) { event.ctrlKey = true; });
Поместите это в ~/Library/Application Support/KeyRemap4MacBook/private.xml
,
<?xml version="1.0"?>
<root>
<appdef>
<appname>CONKEROR</appname>
<equal>org.mozdev.conkeror</equal>
</appdef>
<item>
<name>Enable only in Conkeror</name>
<item>
<name>Option_L to Control_L</name>
<identifier>private.app_cokeror_option_l_to_control_l</identifier>
<only>CONKEROR</only>
<autogen>__KeyToKey__ KeyCode::OPTION_L, KeyCode::CONTROL_L</autogen>
</item>
<item>
<name>Option_R to Control_R</name>
<identifier>private.app_conkeror_option_r_to_control_r</identifier>
<only>CONKEROR</only>
<autogen>__KeyToKey__ KeyCode::OPTION_R, KeyCode::CONTROL_R</autogen>
</item>
</item>
</root>
Запустите KeyRemap4MacBook и отметьте два поля в разделе "Включить только в Conkeror".
Вы должны найти CMD M-
и альт C-
,
Превращение cmd в M-
было просто - это первые три строки .conkerorrc
, Делать альт в C-
это не так просто, потому что Conkeror не может обнаружить, когда клавиша Alt нажата в OS X. Вот почему я сказал Conkeror прослушивать нажатия клавиш Ctrl, затем установил KeyRemap4MacBook, чтобы представить, что клавиши Alt на самом деле являются клавишами Ctrl, но только для Conkeror., Естественно, это означает, что Ctrl и Alt M-
, Это не должно быть проблемой, если вы действительно не хотите использовать клавиши Ctrl для другого использования.
Вам придется немного поиграться с этим, чтобы получить именно то, что вы хотите, но в качестве примера... привязка C к M
modifiers.C = new modifier(
function (event) { return event.metaKey; },
function (event) { event.metaKey = true; });
Все, что вам нужно сделать, это заменить C на M или A или S для Meta, Alt и Super соответственно. а затем замените metaKey на то, что вы хотите, чтобы ключ был. Я не уверен, что выдает командный ключ, так что вам придется с этим возиться, но я уверен, что этот параметр - Alt, так что
modifiers.M = new modifier(
function (event) { return event.altKey; },
function (event) { event.altKey = true; });
Забавно, что в каждой системе, кроме OS X, Conkeror по умолчанию рассматривает Meta и Alt как одинаковые.
Править На самом деле это выглядит сложнее, чем я говорил сначала. Об этом следует прочитать вики-страницу Conkeror.