Remap Capslock Key в Keymando? - PullRequest
       12

Remap Capslock Key в Keymando?

3 голосов
/ 24 сентября 2011

Можете ли вы переназначить клавишу CapsLock в Keymando ?

CapsLock - это , указанный как доступный ключ , но когда я пытаюсь выполнить тест вроде:

map "<CapsLock-j>" { alert("CapsLock-j") }

... и нажмите Reload Config в меню Keymando, я получаю диалоговое окно с сообщением:

Ошибка анализа файла конфигурации Keymando

неопределенный метод `ctrl 'для nil: NilClass

Возможно, есть сокращение CapsLock? Например, в доступных ключах управляющая клавиша просто указана как Control, но в коде примера это ctrl. Есть ли подобное сокращение для CapsLock?

Если возможно, я бы хотел использовать клавишу CapsLock в качестве клавиши режима для реализации логики, такой как:

if <CapsLock>
  map <j>, <Down>
  map <k>, <Up>
  # ...etc
end

Ответы [ 2 ]

2 голосов
/ 27 сентября 2011

Извините, это ошибка в нашей части списка Capslock на сайте.В настоящее время его можно переназначить в Control, Option или Command через Keyboard.prefPane в разделе «Modifer Keys ...», и сейчас у нас нет возможности определить, нажата ли она.

Мы будем продолжатьнаши глаза открыты для решения, но на данный момент он не будет делать то, что вы хотите.Сожалею.

Сайт также исправлен, чтобы избежать путаницы.

1 голос
/ 08 января 2012

Хотя вы не можете переназначить capslock, вы можете достичь почти такой же функциональности, добавив базовое состояние в файл keymandorc.Я не мог понять, как сопоставить что-то с одной только клавишей выбора, но кроме этого, это должно сделать то, к чему вы стремитесь:

В верхней части вашего keymandorc поставьте:

@caps = false

Затем, где бы вы ни определяли свои привязки, поместите что-то вроде следующего:

map "j" do
  if @caps then
    send("<Down>")
  else
    send("j")
  end
end
map "<Option-v>" do
  @caps = !@caps;
  alert("Vim Mode: " + @caps.to_s)
end

Затем вы можете также связать escape для выхода из режима, если @caps равно true, и т. Д.

...