vim의 '단어'를 구성하는 것은 무엇입니까?
-
19-09-2019 - |
문제
VIM ATM에 다음과 같은 것을 가지고 있다고 가정 해 봅시다.
int main () {
printf("hello");
return 0;
}
vim에서 w 단어를 오른쪽으로 움직이지만 '단어'를 정확히 구성하는 것은 무엇입니까?
예를 들어 커서가있는 경우 피 의 printf
, 누르기 w 당신을 데려갑니다 (
그리고 다른 사람을 누릅니다 w 건너 뜁니다 "
커서를 h
의 hello
. 왜 "
건너 렸나요?
다른 사람을 누릅니다 w 이제 당신을 다른 사람에게 데려갑니다 "
전에 )
그리고 다른 사람을 누릅니다 w
다음 줄로 안내합니다. 왜 )
그리고 ;
건너 렸나요?
그리고 이제 커서가 있습니다 r
의 return
. 눌린 a w 커서를 켭니다 0
그리고 다른 사람을 누릅니다 w 이제 커서를 가져갑니다 ;
. 이 경우 ;
이전 라인과 달리 건너 뛰지 않았습니다. 왜 이런거야?
나는 내 질문을 충분히 명확하게 만들었 으면 좋겠지만이 모든 것이 어떻게 작동하는지 이해하려고 노력하고 있습니다.
해결책
에서 :help word
:
단어는 일련의 글자, 숫자 및 밑줄 또는 기타 비 맹장 문자 시퀀스로 구성되어 있으며 공백 (공백, 탭)으로 분리됩니다. 'iskeyword'옵션으로 변경할 수 있습니다. 빈 줄은 또한 단어로 간주됩니다.
대신 자본 W를 사용하는 경우 :
단어는 공백으로 분리 된 일련의 비 담금 문자로 구성됩니다. 빈 줄은 또한 단어로 간주됩니다.
당신의 예에서 w
키워드가 아닌 문자 시퀀스도 단어로 취급합니다.
편집 : 설정 설정 virtualedit
이에 영향을 미칠 것입니다 : 라인 피널 구두점이 건너 뛸 수 있기 때문에 당신은 그것을 설정하지 않아야합니다. w
(차이를 확인하려면 선 끝에 공백을 추가하십시오). 설정하면 virtualedit=onemore
커서는 라인 끝까지 한 공간을 멈출 수 있으며 라인 최종 구두점은 건너 뛸 수 없습니다.
다른 팁
VIM 내에서 유형
:help word-motions
당신은 당신이 찾는 모든 설명을 얻을 것입니다.