답변:
"dap"은 실제로 모든 것을 삭제하지는 않습니다. 예를 들어 이것을 버퍼에 넣으십시오.
1
1
2
2
3
3
그런 다음 커서를 '2'에 놓고 "dap"을 입력하십시오. '1'과 '3'을 그대로 둡니다.
"dap"은 단락을 삭제하기 때문 입니다. 사실, 그것은 실제로는 니모닉입니다 : "(D) elete (A) (P) aragraph". 아래 도움말에서 볼 수 있습니다 :h ap
.
*v_ap* *ap*
ap "a paragraph", select [count] paragraphs (see
|paragraph|).
Exception: a blank line (only containing white space)
is also a paragraph boundary.
When used in Visual mode it is made linewise.
이것을 "텍스트 객체"라고합니다. 에 대한 내용을 읽을 수 있습니다 : :h text-objects
또는 텍스트 객체에 대한이 멋진 기사를 읽을 수 있습니다 .
어느 쪽이든, 텍스트 개체의 기본 개념은 당신이의 경계를 정의하는 것입니다 오브젝트를 하고 당신이 그것의 중간에있을 경우에도 그 전체 개체에 명령을 적용합니다. 예를 들어, dw
단어를 삭제하는 데 사용할 수 있다는 것을 알고 있습니다 . 그러나이 시나리오에 있다면 어떨까요?
Hello world
Cursor: ^
을 입력 dw
해도 여전히 wo
왼쪽이됩니다. 을 입력 하면 단어 내부diw
가 삭제 되므로 대부분을 입력하는 것과 같습니다 .bdw
이런 종류의 물건을 어떻게 알 수 있습니까?
당신은 기본 아이디어를 가지고 있었다! 도움말 확인은 항상 좋은 시작입니다. 이 경우 d
연산자 임을 알 수 있었으므로 실제로 찾고자하는 도움은 연산자에 대한 논거였습니다 (이 경우) ap
.
diw
하고 bde
여전히 같은 꽤 있습니다 : 커서가 단어의 시작에 있는지. 마찬가지로 커서가 단어 사이의 공백에 있으면 bdw
왼쪽 daw
의 단어는 삭제되고 오른쪽의 단어는 삭제됩니다. 나는 원래 답변의 "대부분…"이 아마도 우리가 이러한 동등성 측면에서 얻을 수있는 최선이라고 생각합니다.