Клавиатура Colemak с Emacs или VIM

Я вычеркивал вещи из своего списка TODO. Я недавно подобрал Colemak. Затем я хотел изучить Vim или Emacs. Я склонялся к Виму, однако одно из его преимуществ - прилипание к домашнему скандалу. С Colemak, домашний ряд был изменен. Я понимаю, что могу переназначить клавиши, но назначение функциональности для разных букв мне не очень нравится (если есть какая-то связь между буквами и их функцией. Я знаю, что движение не коррелирует, но я не уверен во всех остальных.)

Я не хочу начинать спорный пост о текстовых редакторах, а скорее получать комментарии от пользователей Colemak (или Dvorak) об альтернативных сочетаниях клавиш и этих двух редакторах.

Спасибо

8 ответов

Решение

Рад видеть другого пользователя Colemak:)

Для Emacs действительно нет необходимости переназначать, так как начальные "горячие клавиши" не предназначены для того, чтобы быть близко друг к другу. Во всяком случае, вам будет удобнее использовать Emacs на Colemak, чем на Qwerty (по крайней мере, так было).

В Vim все намного сложнее, так как hjkl будет полностью испорчен. С другой стороны, я всегда чувствовал, что hlkl был сломан и вместо этого должен был быть jkj; или ijkl, так что переназначение, вероятно, хорошая вещь. Вот более широкая дискуссия о Colemak+Vim на форуме Colemak: http://forum.colemak.com/viewtopic.php?id=50

Я использую аналогичную настройку для Грэма (вверх, вниз, влево, вправо, hkjl (Qwerty hnyu)), но вместо использования noremap переназначим с помощью langmap в мой.vimrc:

set langmap=hk,jh,kj

Это дает дополнительное преимущество изменения других команд, использующих эти клавиши перемещения (например, g, z и Cw), без необходимости переопределять все эти команды вручную, т.е. C-wh перемещается вверх по окну, C-wk перемещается вниз по окну и т. Д.

Я недавно перешел на Colemak, и я также использую Vim в качестве основного редактора.

Я могу сказать вам, что нет необходимости переназначать клавиши перемещения или любые другие клавиши Vim в этом отношении. Ваш мозг быстро освоит новые положения клавиш движения. Для мнемонических ключей определенно нет необходимости переназначать - вы хотите сохранить мнемонические значения за ключами.

Если вы переназначите клавиши перемещения Vim, вы окажетесь в плачевном положении, когда вы не сможете управлять ванильным Vim с какой-либо реальной эффективностью - например, если вам нужен SSH к серверу. Я утверждаю, что для большинства людей это будет гораздо более распространенным явлением, чем использование чьего-либо компьютера без Colemak.

Кроме того, есть плагины Vim, которые вы можете получить в один прекрасный день, которые будут конфликтовать с вашими переназначениями, или вы однажды прочтете совет Vim о функции, которую вы не можете сейчас использовать, потому что вы переназначили вещи.

Это будет настоящей болью для вас, поэтому я не буду беспокоиться о перераспределении.

Это в вашем.vimrc изменит движение курсора для Colemak, не затрагивая другие отображения vim, потому что это влияет только на буквы h/j/k.

  • вверх = h (обозначено как "h" на клавиатуре)
  • вниз = k (обозначено как "n" на клавиатуре)
  • left = j (обозначено как "y" на клавиатуре)
  • право = l (обозначено как "u" на клавиатуре)

Вот карта:

noremap h k
noremap j h
noremap k j

Я бегал с Дворжаком уже несколько лет (наверное, ~4). Я также использовал vim по всем стандартным причинам, по которым вы должны использовать vim как вещи (меньше, изменения конфигурации, которые имеют свои собственные редакторы (visudo и т. Д.) И т. Д.). На самом деле Emacs была первой Unix-программой, которую я изучил (я родом из мира Apple), и в настоящее время я поднял ее обратно после того, как Егге начал рассуждать о том, насколько это смешно.

Если говорить строго о раскладке клавиатуры, я бы сказал, что Emacs, вероятно, победитель, потому что переназначение не требуется. Помимо замены клавиши Caps-Lock на клавишу Control (что действительно должно быть сделано в течение определенного периода времени, клавиша Caps-Lock похожа на все средние школьные трюки на клавиатуре), я бы сказал, что каждая связка клавиш удобнее использовать с Dvorak, чем с Qwerty. Я особенно нахожу, что постоянно используемые привязки Cx и Mx очень удобны для печати.

Тем не менее, vim на самом деле ничего страшного. "j" и "k" по-прежнему находятся рядом друг с другом. 'h' и 'l', по крайней мере, удобно с одной стороны, и находятся над и над домашним рядом. Кроме этого, это просто переназначение клавиш в вашем уме для того, чтобы делать в редакторе то, что вы хотите, чтобы это произошло. Лично я не вижу смысла что-либо переставлять, и у меня высокий риск развития RSI (отсюда переход на Дворжак). Для приложений, ориентированных на клавиатуру, таких как vim и emacs, тот факт, что я могу использовать их без каких-либо изменений, должен быть довольно впечатляющим.:)

Удачи!

Я использую решение Райана Хейса для Vim:

Я придумал "NEST" навигационные привязки, которые сохраняют физическое расположение клавиш навигации вверх / вниз (влево / вправо различны, но все еще находятся в домашнем ряду):

N = вниз E = вверх S = влево T = вправо

Команды для настройки этого находятся на моей странице Colemak внизу:

http://www.ryanheise.com/colemak/

В основном, эти привязки позволяют вам использовать обычный шпаргалку vim для изучения команд, за исключением, конечно, навигации.

Из 4 клавиш, назначенных в NEST, "N" (результат поиска "n"ext) и "E" (перемещение "e" nd текущего слова) были частыми, но сожрали. Я переназначил их обратно на исходные позиции QWERTY, и поэтому они являются единственными двумя командами, которые не имеют своих исходных логических имен.

Взято с https://forum.colemak.com/topic/50-colemak-vim/p2/

Я пользователь vim+qwerty (я пробовал изучать дворак, но оказалось, что скорость набора не является фактором, ограничивающим скорость, и у меня нет проблем с RSI). Только клавиши перемещения курсора hjkl в vi(m) зависят от позиции, все остальное является мнемоническим. Я вижу на раскладке Colemak, что h/l смутно влево / вправо, но j/k вниз / вверх. Тем не менее, я сомневаюсь, что это станет серьезным камнем преткновения. Вместо этого вы можете либо использовать клавиши со стрелками, либо продолжать использовать hjkl и разбираться с забавными позициями.

Я не склонен пытаться переназначать функции vim в зависимости от раскладки клавиатуры. Это кажется слишком большой потенциальной путаницей для меня.

Вот предыдущий пост, который должен вам помочь. Там есть некоторые обсуждения, некоторые пользователи не переназначают. Некоторые делают.

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

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