В vim, почему 'j' используется для вниз и 'k' для вверх?


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

6 56

6 ответов:

ответ wikipedia запись для vi. Билл Джой, который написал визуальный режим ex-который в конечном итоге стал предшественником VI - использовал терминал Lear Siegler ADM3A, на котором клавиши H, J, K, L отображались влево, вниз, вверх, вправо - и с тех пор это было так.

вот раскладка клавиатуры:

enter image description here

еще несколько примечательных моментов в макете ADM3A:

  • слева от Q: клавиша escape-несколько более удобный, чем там, где он находится на клавиатурах сегодня, следовательно, хороший выбор для переключения между нормальным и вставить режимы.
  • вверху справа: ключ "Home" удваивается как Тильда (~), которая впоследствии стала сокращением для домашнего каталога пользователя Unix.

vimtutor обеспечивает мнемонику, что " J " смутно напоминает стрелку вниз, хотя это может быть или не быть первоначальной причиной, по которой она была выбрана.

Это общее предположение, но:Ctrl+J символ-это символ" подачи строки", который на традиционном TTY перемещается вниз по одной строке, обеспечивая мнемонику. K был рядом с ним на клавиатуре Qwerty, под вторым наиболее часто используемым пальцем на правой руке, когда он находится в исходном положении.

Я всегда думал, что это потому, что на макете Дворжака j и k также находятся рядом друг с другом. Существует не так много ключей, которые имеют это свойство как на DVORAK, так и на A/QWERTY/Z

с точки зрения пользовательского опыта, после открытия файла, вы всегда вниз первая и перемещение вниз, как правило,более частая операция. Так как слева направо это естественное направление для большинства из нас, имеет смысл связать задачу, которую вы выполняете в первую очередь или чаще с ключом слева. Вы можете попробовать переключить 2 клавиши и попытаться сказать, какой путь лучше. Для меня "J" для пуха более естественно и комфортно.

Если объясняет это, если вы запустите vimtutor в терминале. Он говорит:

клавиша h находится слева и перемещается влево.

клавиша l находится справа и перемещается вправо.

клавиша j выглядит как стрелка вниз.