밑줄 명령 _이 왜 유용한가요?


15

_커서 아래 (COUNT-1) 번째 줄의 시작으로 이동 하는 밑줄 명령 이 자체 키를 얻는 이유에 대해 조금 당황 합니다. 언제 +또는 이것을 사용하지 ^않습니까?

답변:


16

좋은 질문!

그 자체로 동의하는 것이 옳습니다 _. 특히 유용한 키는 아닙니다.:h _

                            *_*
_  <underscore>     [count] - 1 lines downward, on the first non-blank
            character |linewise|.

여기서 핵심 단어는 "선별"입니다. 그렇다면 당신의 목표는 다음 커서를 이동하는 것입니다 ^, j그리고 +모든 일을 완수하고, 많은 점에이 아니다 _. 그러나 연산자에 대한 논쟁으로 _강력합니다.

많은 이중 키 바로 가기는 실제로 바로 가기입니다 _. 예를 들어

dd -> d_
cc -> c_
yy -> y_
Y  -> y_

이것은 선으로 동작하기 때문에 커서의 시작 위치에 관계없이 기본적으로 전체 라인을 선택하는 반면, ^캐릭터에서 공백이 아닌 첫 번째 라인으로 이동합니다.

선 방향 v또는 블록 방향 모션에 대해 생각할 때 V모션 직전 또는 오른쪽을 눌렀다는 것을 상상할 수 있습니다. 나는 상상 그래서 d^동등을 v^d나는 상상 d_에 해당하는 것으로 V_dV^d. 물론 동작을 재정 의하여 선 또는 문자 방향으로 만들 수도 있습니다. 그래서 dv_같이 실제로 정확히 동일 d^또는 v^d, 및 dVw처럼 Vwd어떤 정확히 같다 d_.

특히 "count-1th"행인 이유 1dd는 (실제로 d1_) 하나의 전체 행을 삭제하고 2dd(실제로 d2_) 2 개의 전체 행을 3dd삭제하고 3 개의 전체 행을 삭제하는 등입니다.


1
알았어,하지만 실제로 사용 하겠어? dd보다 쉽게 d_하고 3yj보다 쉽습니다 4y_.
Toothrot

5
@toothrot 자신 만의 연산자를 만들고 다음 n 줄 에서 작업하려고한다면
DJMcMayhem

5
@ Toothrot 나는 그것을 조금 명확히하고 싶다고 생각합니다. 일상적인 vim 편집에서 실제로는별로 유용하지 않습니다. 나는 그것을 거의 사용하지 않았다. 유용한 이유 는 많은 유용한 명령 의 정의 이기 때문입니다 . dd보다 편리 할 수도 d_있지만에 dd대한 매핑 이기 때문 입니다 d_. 그리고 그것은 vimscript에서도 유용합니다.
DJMcMayhem

9
"동작"에 작용하는 일부 동작에는 다른 바로 가기가 없을 수 있습니다. "gU_"와 같은 것은 커서가 줄의 시작 부분에 있지 않더라도 현재 줄의 모든 것을 대문자로 표시합니다.
bmb

1
@bmb 어떻 gUU습니까? <operator>_사용되는 실제 예를 찾는 것이 좋습니다 .
Hotschke
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.