LINUX.ORG.RU
ФорумTalks

vim - почему такой странный выбор клавиш для навигации - hjkl?

 , ,


2

2

Сабж.

Ведь куда удобнее использовать wasd, или esdf (было бы даже удобнее) или аналогичное ijkl.

Кроме того, абсолютно наркоманское распределение направлений даже по тем же hjkl - h-влево, j-вниз, k-вверх, l-вправо. Влево и вправо - ок, к ним вопросов нет. А вот вверх и вниз следовало бы поменять местами, чтоб hj - движение в сторону начала документа, kl - в сторону конца документа.

В общем, почему так, и как это можно исправить, не переломав кривыми биндами всю работу vim'а?

★★★★

Ответ на: комментарий от deadNightTiger

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

ekzotech ★★★★
() автор топика
Ответ на: комментарий от pawnhearts

Ну стрелочки требуют существенного передвижения, а суть vim - в том, чтобы пальцы всегда оставались на клавишах ввода. Отсюда все команды буквами, а не комбинациями клавиш, от которых можно пальцы переломать.

ekzotech ★★★★
() автор топика

Скопировали с интерфейса gmail, очевидно же.

x3al ★★★★★
()

Видимо, потому что на одном ряду. Про jk хз, я просто привык.

f1u77y ★★★★
()
Ответ на: комментарий от deadNightTiger

hjkl-obsessed hipster

о, я теперь знаю, как их правильно называть, спасибо

f1u77y ★★★★
()
Ответ на: комментарий от ekzotech

Да всё проще, vi - это программа из 70-х годов ещё, и тогда на многих терминалах просто не было курсорных клавиш вообще.

anonymous_incognito ★★★★★
()

Так исторически сложилось. В качестве доводов «за» можно отметить, что подобная раскладка удобна при десятипальцевом наборе (со сдвигом, т.к. : юзается достаточно часто). Перебиндить всё никто не мешает, но всё же проще просто привыкнуть — иначе потом весь софт с вимоподобным управлением замучаешься перенастраивать.

Karthago ★★
()

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

hungry_ewok
()

Ведь куда удобнее использовать wasd, или esdf (было бы даже удобнее) или аналогичное ijkl.

Всё зависит от того, к чему привыкаешь изначально. В те же игры с hjkl вполне удобно играть поставив указательные пальцы на 'j' и 'k', а средние на 'h' и 'l' соответственно. Тогда по диагонали легко перемещаться перемещая пальцы левой руки на «yu» и «bn» соответственно.

saahriktu ★★★★★
()
Ответ на: комментарий от pawnhearts

Использую стрелочки

Воспаления правой кисти ещё нет? Т.ч. либо казуал, либо не работаешь за клавой 8 часов в день.

beastie ★★★★★
()

Освой уже слепую печать и всё станет на место.

Самое частое направление — вниз (J) — указательный палец. Обратно вверх (K) средний палец.

Вправо (L) безимянный. И самое редкое направление влево (H) — указательный.

Причём заметь — все клавиши на base line. Рука позиции не меняет.

PS: печатающие одним пальцем должны страдать. Остальным и так всё ясно.

beastie ★★★★★
()
Последнее исправление: beastie (всего исправлений: 1)

Ведь куда удобнее использовать wasd, или esdf

Зачем fps-геймеру текстовый редактор?

andreyu ★★★★★
()
Ответ на: комментарий от beastie

Я либо ползаю по тексту либо в режиме вставки. Постоянно не переключаюсь туда-сюда. Либо команды использую какие-нить в нормальном режиме.

pawnhearts ★★★★★
()

Ведь куда удобнее использовать wasd,

ты что, хэдшот-скрипты к CS писать решил? по теме - юзаю стрелки, hjkl в insert обламывается

upcFrost ★★★★★
()

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

Shtsh ★★★★
()
Последнее исправление: Shtsh (всего исправлений: 1)

почему

Потому что взять из vi.

Ygor ★★★★★
()

А с Dvorak становится вообще весело...

panter_dsd ★★★★
()
Ответ на: комментарий от DELIRIUM

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

Строчная j «торчит» вниз, k - вверх. А h и l, соответственно, слева и справа от них.

alegz ★★★★
()

Так надо.

Диды пальцы на спецклавах с hjkl ломали, а ты что, умный самый?

Эта такая фича GNU/Linux, тянуть всякое заскорузлое легаси в систему. Ладно в Vim'е хоть к этому привыкнуть можно. В emacs'е так вообще Ctrk-p, Ctrl-n, Ctrl-b, Ctrl-f. Видимо они всё ещё думают, что у каждого использующего emacs дома есть SpaceCadet и Lisp-машина.

EXL ★★★★★
()
Ответ на: комментарий от Rastafarra

средний же!

Посмотри, где «пимпочки» на кнопках — F и J — это там, где находятся указательные пальцы.

beastie ★★★★★
()
Ответ на: комментарий от EXL

Эта такая фича GNU/Linux, тянуть всякое заскорузлое легаси в систему. Ладно в Vim'е хоть к этому привыкнуть можно. В emacs'е так вообще Ctrk-p, Ctrl-n, Ctrl-b, Ctrl-f. Видимо они всё ещё думают, что у каждого использующего emacs дома есть SpaceCadet и Lisp-машина.

Во-первых, Vim в GNU никакого отношения не имеет. Во-вторых — удобно же, ну.

kirk_johnson ★☆
()
Последнее исправление: kirk_johnson (всего исправлений: 1)
Ответ на: комментарий от beastie

это там, где находятся указательные пальцы.

у меня всю дорогу были средние ))

Rastafarra ★★★★
()
Ответ на: комментарий от beastie

либо не работаешь за клавой 8 часов в день

Машинистка чтоле?

ilammy ★★★
()

В Виме такой странный выбор для совместимости с редактором vi (а он одногодка с Емаксом, то есть это конец семидесятых).

В vi — для совместимости с редактором ex.

ex писался совместимым с еще более древним редактором — ed’ом, но были ли эти странные клавиши в ed’е уже тогда, или их добавили позднее, я сейчас не скажу.

Так или иначе, они были в одном из самых популярных терминалов тех лет (название я не помню, но товарищ deadNightTiger выше даже фото клавиатуры привел), на котором сидели и авторы ex’а, так что особого выбора и у них не было.

В терминале они появились под явным влиянием телетайповых управляющих символов: C-h — это «забой» (который, очевидно побочно двигает курсор влево), а C-j — «перевод строки» (который, очевидно, вниз). C-k — «вертикальная табуляция», а C-l — «конец страницы», и здесь уже очевидного меньше.

Причина того, почему забой — это именно C-h, а перевод строки — именно C-j теряются где-то в первой половине XX века, но рискну предположить, что коль скоро это самые частоиспользуемые управляющие символы и по сей день, то их и расположили на самом легкодоступном месте — под указательным пальцем правой руки.

Zmicier ★★★★★
()
Последнее исправление: Zmicier (всего исправлений: 4)
Ответ на: комментарий от EXL

В emacs'е так вообще Ctrk-p, Ctrl-n, Ctrl-b, Ctrl-f.
Видимо они всё ещё думают, что у каждого использующего emacs дома есть SpaceCadet и Lisp-машина.

Поясните, пожалуйста. На любой современной клавиатуре аккорды куда более удобны в использовании, чем на Space Cadet Keyboard.

Zmicier ★★★★★
()

В общем, почему так, и как это можно исправить, не переломав кривыми биндами всю работу vim'а?

Я не озадачивался этим вопросом особо, но что тут поломаешь? Это же не ГНУ Емакс с десятками режимов, здесь из раз, два и обчелся — разберетесь. А переназначать, очевидно, так: i ← k, h ← i, j ← h, k ← j.

Zmicier ★★★★★
()
Ответ на: комментарий от beastie

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

ekzotech ★★★★
() автор топика
Ответ на: комментарий от upcFrost

юзаю стрелки, hjkl в insert обламывается

Потому что надо использовать normal mode, а не insert для навигации.

ekzotech ★★★★
() автор топика

куда удобнее использовать wasd, или esdf

Нет.

как это можно исправить

В твоем случае - переход на любой другой текстовый редактор.

outtaspace ★★★
()
Ответ на: комментарий от ekzotech

Потому что надо использовать normal mode, а не insert для навигации.

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

upcFrost ★★★★★
()
Ответ на: комментарий от beastie

либо не работаешь за клавой 8 часов в день.

Упаси господи от такой работы. Это наверное надо китайским программистом(которым по слухам платят за строки кода) быть или и правда машинисткой.

Loki13 ★★★★★
()

Стрелочки работают же

tiinn ★★★★★
()
Ответ на: комментарий от beastie

8 часов в день за клавой безотрывно только машинистки когда-то сидели.

leave ★★★★★
()

Проще не использовать редакторы, написанные чужими для хищников. Они - удел упоротых извращенцев и людей, у которых нет выбора.

GblGbl ★★★★★
()
Последнее исправление: GblGbl (всего исправлений: 1)
Ответ на: комментарий от GblGbl

Ты так говоришь, будто есть редакторы, способные заменить vim без мышевозения и тонн комбинаций вида ctrl+shift+alt+p и тому подобное.

ekzotech ★★★★
() автор топика
Ответ на: комментарий от upcFrost

для этого переключение режима в ви выносят на педаль под стол.

bl ★★★
()
Ответ на: комментарий от ekzotech

Да. Даже ctrl-shift-alt-p намного лучше, чем постоянное перескакивание между режимами, чтобы совершать самые банальные операции.
Как консольный редактор - mcedit, в крайнем случае, nano. Для программизма есть IDE и редакторы с подсветкой.

GblGbl ★★★★★
()
Ответ на: комментарий от bl

Не space, а m. И то в 80-90-е на ZX Spectrum'е. А hjkl+yubn управление в современных рогаликах, включая nethack, и не только.

saahriktu ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.