Vim 사용자 여러분, 오른손은 어디에 있습니까? [닫은]


116

오랫동안 vim 사용자 여러분, 손가락을 계속 사용하십니까, jkl;아니면 hjkl일반 모드입니까?

표준 터치 타이핑은 오른손의 홈 위치가 j키에 검지 손가락이 있으므로 손가락이 켜져 있음을 알려줍니다 jkl;.

그러나 표준 vim 모션 키는 hjkl.

나는 10 년 이 넘은 후 vim으로 돌아오고 (omg, 내가주의를 기울이지 않았을 때 나이가 들었다)hjkl ...에 끌리는 나 자신을 발견한다 . 그러나 그것은 오른쪽 위 문자, 중괄호 등을 입력하는 것을 더 어렵게 만든다. 나중에 다시 훈련하는 대신 지금 가장 효율적이고 실용적인 방법을 사용하도록 스스로 훈련하고 싶습니다.

오랫동안 하드 코어 Vim 사용자에게 가장 좋은 방법은 무엇입니까?


노트 :

  1. 와 더 큰 중첩 터치 타이피스트가 VI에서 탐색 방법은?
  2. 나는 이것이 단순히 사람들의 선호도가 아니라 무의식적 인 모범 사례를 고의적으로 배양하는 것이기 때문에 "주관적"테스트를 통과한다고 생각합니다.

26
이것이 진짜 질문 이 아닌 이유는 무엇입니까? 그는 당신의 손가락을 어디에 두어야하는지 묻습니다. 완벽하게 대답 할 수 있습니다.
— 대안

이 경우 "모범 사례"는 주관적입니다. 사람들은 다르며 자신에게 편한 곳에 손을 놓을 것입니다.
— Randy Morris

1
시작 중이며 동일한 문제가 있습니다. jklç (pt 키보드)는 컴퓨터 키보드에서 입력하는 것이 가장 좋습니다. 자연 스러워요. 저는 vim이 제가 너무 많은 학습과 연습을하면서 올바른 타이핑 방법을 배우지 못하게하는 것을 원하지 않습니다.
— ancm

1
@RandyMorris 확실히 사람은 다르며, 자신에게 가장 잘 맞는 일을해야하지만, 그렇다고해서 대부분의 상황에서 특정 관행이 더 낫다는 의미는 아닙니다. 일반적인 터치 타이핑을위한 홈 키가 떠 오릅니다. 그래서 나는 이것이 주관적이기 때문에 대답 할 수 없다는 주장을 사지 않는다. 그리고 그것이 실제로 그것이 분명한 모범 사례가없는 이유를 보여주는 정보와 함께 대답이되어야하는 경우이다.
— jonvw

답변:


118

나는 그것이 jkl;실제로 vi에 대한 더 적절한 사용법 이라고 생각합니다 . 하나, h그리고 l정말 많은 문제가되지 않습니다. w, e,와 b크게 수평 탐색을위한 더 유용합니다. 보너스 ;로 언어에 필요한 경우 쉽게 얻을 수 있습니다. k상처 부위에 손가락이 약하고 , 네 손가락 중 가장 많이 사용되는에 h있어야 할 때 가장 강한 손가락이 필요하지 않습니다 j.


젠장. 저는 몇 년 동안 vim 사용자이고 항상 화살에 hjkl을 사용했습니다. 당신이 제안한 방법이 더 효율적이라는 것을 이해하지만, 그 방법으로 전환 할 용기가 충분하지 않을 것입니다.
— Mikhail Kalashnikov

2
세상에, 내가 시작한이 토끼 구멍은 무엇인가 ...
— Jason Kelley

16

소개

이전 두 솔루션 중 어느 것도 100 % 만족스럽지 않았습니다. 두 세계의 장점을 결합한 세 번째 방법을 제안합니다.

내 추천 : "왼쪽 위 아래로"

그들이있는 곳에서 위 / 아래를 유지 한 다음 세 번째 및 네 번째 손가락을 왼쪽 및 오른쪽으로 만듭니다.

그런 다음 기본 Vim 기능을 덮어 쓰지 않으려면 다음을 수행하십시오 . 이제 비어있는 h 버튼으로

귀여운 보너스로 " l "키는 이제 " 왼쪽 "을 의미합니다 .)

noremap lh
noremap; l
noremap h;



둘 다 "left-down-up-right"레이아웃을 사용하는 이전 "주자" :


선택 1 : "hjkl"

@alternative의 추천 . 키 바인드는 기본값 ( hjkl )을 유지하고 오른손 은 홈 행에 유지 ( jkl; )

  • 장점 :
    • j (아래쪽) 및 k (위쪽)는 기본 두 손가락에 머물러 있습니다.
  • 단점 :
    • h (왼쪽) 에 도달해야합니다 . w, e, b 만큼 사용되지 않더라도 여전히 피투성이의 화살표 버튼이며 홈 행에 있으면 좋을 것입니다.
    • 기본적으로 : 네 손가락 모두 자연스럽게 화살표 버튼 위에 놓이지 않습니다. 손이 헷갈리네요


선택 2 : "jkl;"

4 개의 바인드 를 1 번 위로 밀어서 홈 행에 앉도록합니다.

noremap; l
noremap lk
noremap kj
noremap jh

  • 장점 :
    • 손가락 혼란이 없습니다. 모든 화살표는 자연스럽게 손가락 아래에 있습니다.
  • 단점 :
    • @alternative가 말했듯 이 두 번째 및 세 번째 손가락에있는 위 / 아래 는 매우 "최적이 아닙니다"
    • 마찬가지로 왼쪽 에있는 가장 강한 손가락 도 낭비입니다

1
감사. 귀하의 권장 사항에 관해서는 지금까지 작동하지 않는 유일한 것은 Ctrl + W + <direction>.
— Rafał Cieślak 2014

11

나는 일반적인 터치 타이피스트 방식으로 내 손을 홈 행에 유지합니다. 이동에 h 키를 사용하는 경우는 거의 없습니다. 왼쪽으로 한 칸 이동하는 것은 일반적으로 효율적인 이동 방법이 아니기 때문입니다 (Vim의 본질에 맞지 않습니다).


6

나는 그것이 hjkl역사적인 이유로 사용 된다는 것을 이해하고 (즉, vim이 hjkl 키를 화살표 키로 사용하는 이유입니다 ) 인체 공학적 근거에 근거하지 않습니다.

개인적으로 i3 창 관리자 가 권장하는 접근 방식을 선호 합니다. 기본 구성이 jkl을 사용하는 이유 에 대한 FAQ에 설명되어 있습니다. hjkl 대신? 인체 공학적 선택입니다.

i3는 jkl;이러한 키가 터치 입력시 오른손 아래의 "홈 행"을 구성하기 때문에 사용합니다 .

vim에서 hjkl 을 다시 매핑하여 확인하십시오.jkl;


4

홈 행에서 모든 무브먼트를 사용할 수 있다는 Vim의 철학을 이해하는 동안 저는 hjkl직관적이지 않은 것으로 나타났습니다 . 훨씬 더 건전한지도는ijkl

    nnoremap j h
    nnoremap k j
    nnoremap i k

나는 이것이 매우 자연스럽게 탐색하기가 매우 쉽다는 것을 알았습니다.

j:left
i:up
k:down
l:right

삽입 / 정상 모드로 전환하려면 Alt-e거의 항상 Gvim을 사용하고 일부 터미널에 Alt에 문제가 있는지 걱정할 필요가 없기 때문에 개인적으로 사용 합니다.

    nnoremap <A-e> i
    inoremap <A-e> <esc>l

2
의심스럽게 emacs처럼 들립니다!
— rlms
당사 사이트를 사용함과 동시에 당사의 쿠키 정책과 개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.