Как заставить Sublime text build выполняться на numpad enter?

Я использую GoSublime внутри возвышенного текста для разработки Golang. прессование Ctrl + B дает мне панель сборки, затем мне нужно набрать команду, например, go run main.go и нажмите Enter, Когда я хочу выполнить команду, используя numpad Enter это не работает Как заставить это работать с numpad Enter тоже?

Я проверил раскладку клавиш по умолчанию в возвышенном тексте, она предоставляет только следующие привязки клавиш для инструмента сборки

    { "keys": ["f7"], "command": "build" },
    { "keys": ["ctrl+b"], "command": "build" },
    { "keys": ["ctrl+shift+b"], "command": "build", "args": {"select": true} },
    { "keys": ["ctrl+break"], "command": "exec", "args": {"kill": true} },

Благодарю вас!

1 ответ

Единственное предложение, которое я могу дать, это попробовать использовать numpad_enter как с включенным, так и выключенным NumLock, и посмотреть, будет ли это иметь значение. Я использую OS X и использую стандартную проводную клавиатуру Apple с цифровой клавиатурой, а также я использую Linux на виртуальной машине. Когда я открываю консоль (Ctrl `) и запускаю команду

sublime.log_input(True)

затем перефокусируем файл, над которым я работаю, нажав Return (Ввод эквивалент на главной клавиатуре), чтобы получить

key evt: enter

в консоли, а при нажатии Enter на клавиатуре выдает

key evt: keypad_enter

Это поведение не изменяется в OS X или Linux (я еще не пробовал в моей виртуальной машине Windows) независимо от того, как установлен NumLock. Если вы используете Windows или Linux с клавиатурой Windows, это может измениться, но я сомневаюсь в этом.


Причина, по которой Sublime делает это, заключается в том, что numpad_enter и Enter / Return посылают разные коды клавиш программе. Sublime ищет определенный код клавиши (отправленный Enter) для отправки содержимого всплывающих меню и еще много чего, и игнорирует код, отправленный numpad_enter. К сожалению, поскольку это встроенное поведение, нет настройки или привязки клавиш, которые можно было бы установить для переопределения.

Единственная другая возможность, о которой я могу подумать, - это использовать утилиту для вашей ОС, чтобы перепрограммировать вас numpad_enter для отправки того же кода клавиши, что и Enter. Я не очень знаком с ним, но для Windows я слышал, что AutoHotKey - довольно полезная утилита, и, насколько я могу судить, бесплатна. Вы можете переназначить ключи с ним довольно легко. Вам придется поискать другие утилиты в Google, если вы используете OS X или Linux.

Удачи!

Другие вопросы по тегам