커서 이동을위한 vim help quickref 명령을보고 있습니다. 다음 줄은 모두 똑같이 작동하기 때문에 혼란 스럽습니다. 누군가가 예제와의 차이점을 설명해 줄 수 있습니까?
N w N words forward
N W N blank-separated WORDS forward
e와 E도 같은 질문입니다.
커서 이동을위한 vim help quickref 명령을보고 있습니다. 다음 줄은 모두 똑같이 작동하기 때문에 혼란 스럽습니다. 누군가가 예제와의 차이점을 설명해 줄 수 있습니까?
N w N words forward
N W N blank-separated WORDS forward
e와 E도 같은 질문입니다.
답변:
이 치트 시트 에 따르면 구두점으로 내려가는 것 같습니다.
w jump by start of words (punctuation considered words)
W jump by words (spaces separate words)
e jump to end of words (punctuation considered words)
E jump to end of words (no punctuation)
사용하여 데모 w

사용하여 데모 W

첫 번째 데모에서 언제 어떻게 w 에서는 커서가 문장 부호에 놓이는 이 연속으로 치는 을, 두 번째 데모에서는 문장 부호를 건너 뜁니다. 이것이 소문자 명령과 그에 상응하는 대문자의 차이점입니다.
실제로는 매우 간단합니다. w 하고 다음 단어로 건너 뛰지 만 구두점이나 공백은 단어를 구분합니다. W산업적으로 강력한 다음 단어 명령과 같습니다. 단어는 공백, 탭, 공백 또는 개행 문자로만 구분됩니다. w당신이 그것을 처리하고자하는 경우에도 구분 구두점에서 멈 춥니 다.
호스트 이름으로 가장 유용한 차이점을 발견했습니다.
birdman.cartoons.fictional.com # Fictional host
을 사용 w하면 호스트 이름의 각 부분과 점에서 멈 춥니 다. W전체 호스트 이름을 건너 뛰고로 이동합니다 #. 이 두 가지 모두에 적용됩니다d 및 c삭제와 단어를 변경.
위 줄의 시작 부분에 있으면 birdman.cartoons다른 3cw것으로 바꾸려면 처음 두 부분과 가운데 점을 모두 바꾸는 데 사용 합니다. W전체 호스트 이름을 다시 입력하지 않고 는 할 수 없었습니다 .
문장 부호가 단어를 구분하는 단어에 대한 Vim의 개념에 어떤 영향을 줄 수 있는지를 고려하면 가장 잘 이해되는 차이점입니다.
이 예제 텍스트의 경우 :
This line is space separated with no commas
however, this line is—note—comma, separated,see
w협상 할 공간 만 있기 때문에 첫 번째 줄에서 각 단어의 첫 글자로 건너 뜁니다. 구두점과 함께 2 행에서 각 단어의 첫 글자 와 쉼표 및 대시가 잘못 표시됩니다 . 2 행의 단어에서 단어로 이동하려면 Shiftw1 을 사용해야 합니다.
1. 그럼에도 불구하고, Vim은 "is-note-comma"를 한 단어로 본다.
차이점은 vim의 내부 도움말 페이지에서 찾을 수 있습니다. 먼저 :helpw 또는 w를 사용하여 w와 W에 대한 설명을 얻습니다 :help W.
이제 우리는 단어와 단어의 정의가 무엇인지 알고 싶습니다. 다시 수동 조회 :help word하고 :help WORD, 우리는 그들을 찾을 수 있습니다.
a sequence of letters, digits and underscores또는 a
sequence of other non-blank characters, separated with white space(공백, 탭,)으로 구성됩니다. 'iskeyword'옵션으로 변경할 수 있습니다. 빈 줄도 단어로 간주됩니다.a sequence of non-blank characters, separated with white
space. 빈 줄도 WORD로 간주됩니다.