Эту глупую мантру часто повторяют машинистки на ощупь, для которых домашний ряд похож на второй позвоночник, или машинистка на ощупь, которые хотят выглядеть круто. Для тех, кто не печатает на ощупь, домашний ряд просто не такой уж особенный, и легкое перемещение правой руки для достижения стрелок вообще не проблема.
Важно учитывать то, что люди, которые повторяют эту мантру, предлагают использовать вместо этого.
Большую часть времени они настаивают на использовании hjkl
.
Если мы упустим тот факт, что эти клавиши используются только потому, что на клавиатуре, использованной автором vi, не было физических клавиш со стрелками и, таким образом, любой аргумент против клавиш со стрелками - это просто рационализация, hjkl
в любом случае они лишь немного лучше, чем стрелки. Да, единственным преимуществом использования hjkl
над стрелками является то, что вы пропускаете это небольшое движение правой руки к стрелкам и от них. Стоит ли эта выгода - ваш звонок.
Но это движение правой руки не является причиной того, что использование только стрелок неэффективно. Это неэффективно, потому что они ограничивают вас, чтобы перемещать символ за символом и строку за строкой, в то время как большая часть движения, необходимого для редактирования текста, имеет гораздо больший диапазон.
Удар правой стрелки 13 раз неэффективен и скучен. Является ли это , что лучше забивать l
ключевые 13 раз? Нет, это одинаково глупо.
Удерживание стрелки вправо, пока вы не достигнете цели, менее скучно, но подвержено ошибкам и почти так же неэффективно, как 13 попаданий, из-за необходимого и недетерминированного замедления в конце. Является ли это , что лучше держать l
нажатой клавишу? Нет, конечно нет.
К счастью, большинство GUI-инструментариев предоставляют подобные комбинации, Ctrl+Right
которые позволяют нам переходить слово за словом или переходить к EOL, к следующему абзацу или как угодно. Эти ярлыки помогают нам перемещаться намного быстрее и разумнее, чем с помощью одной стрелки. У нас так же hjkl
? Нет, мы не Мы можем использовать счет, если мы хотим, но кто хочет считать символы для каждого движения? Делать 14k
с помощью relativenumber
это здорово, но как насчет горизонтальных движений? Для больших движений, hjkl
на самом деле, хуже, чем модификаторы + стрелки. И угадайте, что? Большие движения - это то, что нам нужно больше всего.
Но мы счастливчики, наш любимый редактор имеет множество движений, которые вращаются вокруг стрелок и hjkl
: bBeEwW/?*#{}()
и так далее. Эти команды неизмеримо более мощные, чем hjkl
и по большей части гораздо более логичные и интуитивно понятные, если вы привыкли Ctrl+Right
и друзья.
Переход от <Right><Right><Right><Right><Right><Right><Right><Right><Right>
к lllllllll
или даже 9l
до смешного бессмысленно.
Переключение с <Right><Right><Right><Right><Right><Right><Right><Right><Right>
на <C-Right>
гораздо лучше. С этого момента переключиться на w
легко и быстро. Не надо <nop>
твои стрелки!
Если эти команды более полезны, более мощны и интуитивно понятны hjkl
, почему, черт возьми, столько блоггеров и комментаторов настаивают на замене стрелок на hjkl
?
У меня есть. Без понятия.
В заключение, hjkl
имейте их место в нашем инструментальном поясе, потому что мы всегда должны двигаться на 2 символа или линии, но это чаще всего дерево, которое скрывает лес. Остерегайтесь людей, проповедующих против стрел: то, что они приготовили для вас, может быть вовсе не лучше.