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

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

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

Спасибо

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

warren 31.10.2008 18:06

Насколько я знаю, Qwerty, Dvorak и Colemak - единственные, кто действительно имеет значение.

Sergio Acosta 01.11.2008 02:07

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

Tim Visher 04.11.2008 03:13

@ Тим: Я читал, что Colemak имеет ту же эргономичную поддержку, что и Dvorak, но также включает более простые сочетания клавиш для копирования / вставки / и т. д. Он также имеет более широкое распространение и реализацию.

Chetan 15.09.2010 21:20

@Chetan: Я не читал этого, когда разбирался в вещах, но поиск в Google показывает, что вы в основном правы, особенно если вы программист. Похоже, что преобладающие анекдотические комментарии заключаются в том, что если вы все еще используете QWERTY и вы программист, переключитесь на Colemak. Если вы все еще используете QWERTY и в основном печатаете по-английски, переключитесь на Дворжака. Если вы уже переключились на какой-либо из них, не беспокойтесь о переключении снова. Если у вас есть реальное исследование, на которое вы можете указать, я бы хотел получить на него ссылку.

Tim Visher 22.09.2010 18:53

@warren: "бесконечно". ;) mkweb.bcgsc.ca/carpalx

Tim Visher 22.09.2010 18:54

@ Тим: Да, я бы не стал переключаться, если бы я уже выучил одно или другое. Они оба великолепны, и Colemak лучше для программистов, но, опять же, ненамного.

Chetan 23.09.2010 07:54

Некоторые пользователи Vim могут захотеть взглянуть на этот плагин: github.com/jooize/vim-colemak. Сопоставления клавиш Colemak для Vim!

MortezaE 02.06.2015 17:03

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

MatrixManAtYrService 09.12.2015 19:19

Я столкнулся с той же проблемой, когда решил выключить QWERTY. И, наконец, сделал свое собственное решение: расположение наиболее часто используемых ключей Emacs в более удобных местах. И это также решает проблемы QWERTY. Что ж, это может иметь смысл, только если вы смотрите на мир через стекло Emacs :) Раскладка клавиатуры: github.com/keyboard-ergonomics/keymacs

Alexander I.Grafov 17.01.2017 14:42

Разверните ответ на @warren, теперь есть и Workman. Прочитав сравнение на веб-сайте Workman, я решил пойти с Colemak, но, возможно, оглядываясь назад, Workman был бы лучше, хотя у Colemak больше поддержки, например привязок vim, которые мне не очень нравятся.

andho 22.01.2021 16:23
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
27
11
10 237
8
Перейти к ответу Данный вопрос помечен как решенный

Ответы 8

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

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

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

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

Ответ принят как подходящий

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

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

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

Я согласен с HJKL. NEIO - лучший вариант :)

Zequez 16.01.2015 21:11

Я сделал навигацию в стиле hnei для злого режима (vim в emacs) и упаковал его github.com/wbolster/evil-colemak-basics

wouter bolsterlee 20.10.2016 17:41

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

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

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

Удачи!

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

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

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

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

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

К сожалению, вы правы. Я переназначил привязки клавиш и очень часто сталкиваюсь со всеми этими проблемами. Это действительно расстраивает.

Mert Nuhoglu 13.07.2010 11:04

Вы, наверное, правы, что переназначение не переносимо. Но если наиболее часто используемые клавиши в vim - это диагональные движения, это вызовет нагрузку на руки, верно? Весь смысл (не исторический) использования hjkl в том, что до него легче добраться, чем до клавиш со стрелками.

andho 22.01.2021 16:33

@andho - это не большая нагрузка на руки. Правый указательный палец отвечает за все 4 клавиши (hjkl). Этот палец самый сильный и в любом случае способен дотянуться до верха или низа. С тех пор, как я написал этот ответ, я уже 12 лет использую Vim с Colemak, и у меня нет проблем с деформацией рук относительно hjkl. И в любом случае в любом случае лучше использовать другие средства навигации, например f, t и т. д. Другие программы unix, т.е. less также использует j / k для движения вверх и вниз - лучше, чтобы все было единообразно. Переназначение - это просто не лучшая идея, ИМО

asgeo1 05.02.2021 05:43

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

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

Вот отображение:

noremap h k
noremap j h
noremap k j

Мне очень нравится это решение. Я просто хотел бы, чтобы по умолчанию было лучше. Я много занимаюсь парным программированием с пользователями dvorak / qwerty, поэтому мне понадобится способ включать и выключать это, чтобы это было практично, хотя

Bo Jeanes 18.06.2010 12:19

@bjeanes, вы можете сочетания клавиш для смены сочетаний клавиш, например: nnoremap <F1> <Esc>:nnoremap h k<CR>:noremap j h<CR>:noremap k j<CR> <br /> nnoremap <F2> <Esc>:nnoremap h h<CR>:noremap j j<CR>:noremap k k<CR> <br /> Добавьте это в свой ~ / .vimrc, и F1 / F2 будет переключаться между клавишами перемещения qwerty / colemak. Если вы имеете в виду смену раскладки клавиатуры, а не только сопоставления Vim, для этого тоже должно быть (зависящее от ОС) решение ;-)

jabirali 25.07.2010 07:05

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

set langmap=hk,jh,kj

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

Это здорово, спасибо! Просто невозможно привыкнуть к тому, как клавиши движения отображаются по умолчанию с Colemak, что с ощущением вверх и вниз вверх ногами!

Adam DiCarlo 27.04.2011 04:17

Аккуратный способ сделать переназначение. Тем не менее, меня убедил ответ @ asgeo1 о том, что вообще не переназначение. Теперь на Colemak кажется естественным использовать клавиши клавиатуры с пометками «y», «n», «u» и «h» для перемещения вниз / вверх / вправо / влево (что соответствует буквам j, k, l, h), не имея чтобы перенастроить Vim для каждого сервера, на котором я использую SSH.

Graham 19.05.2011 16:01

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

c_oreills 15.06.2011 19:17

Я только что обнаружил, что это может немного нарушить плагины vim (замеченные в paredit.vim), которые используют j / k / h для движения в своих функциях, поэтому я попытаюсь вернуться в режим «симулятора полета» и не переназначать вообще.

c_oreills 25.10.2013 02:01

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

I came up with the "NEST" navigation bindings which preserve the physical location of the up/down navigation keys (left/right are different but still on the home row):

N = down E = up S = left T = right

The commands for setting this up are on my Colemak page at the bottom:

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

Mostly, these bindings allow you to use a regular vim cheat sheet to learn the commands, except for navigation of course.

Of the 4 keys assigned in N-E-S-T, the "N" ("n"ext search result) and "E" (move "e"nd of current word) were frequent but gobbled up. I remapped them back to their original QWERTY positions and so they are the only two commands that don't have their original logical names.

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

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