[vim] 버퍼를 변경하지 않고 Vim에서 발생 횟수 계산

현재 버퍼에 패턴이 몇 번이나 존재하는지 알기 위해 다음을 수행합니다.

:%s/pattern-here/pattern-here/g

패턴의 발생 횟수를 제공하지만 분명히 번거롭고 ‘변경됨’상태를 설정하는 부작용도 있습니다.

더 우아한 계산 방법이 있습니까?



답변

대체를 방지하려면 두 번째 패턴을 비워두고 “n”플래그를 추가합니다.

:%s/pattern-here//gn

이것은 공식적인 팁으로 설명됩니다 .


답변

:help count-items

VIM 6.3에서 수행하는 방법은 다음과 같습니다.

:set report=0
:%s/your_word/&/g    # returns the count without substitution

VIM 7.2에서 수행하는 방법은 다음과 같습니다.

:%s/your_word/&/gn   # returns the count, n flag avoids substitution


답변

:!cat %| grep -c "pattern"

정확히 vim 명령은 아니지만 vim에서 필요한 것을 제공합니다.
자주 사용해야하는 경우 명령에 매핑 할 수 있습니다.


답변

vimscript IndexedSearch 는 “M 개 일치 중 #N 일치”를 표시하도록 Vim 검색 명령을 향상시킵니다.


답변

세고 싶은 단어에 커서를 놓고 다음을 실행합니다.

:%s/<c-r><c-w>//gn

보다 :h c_ctrl-r_ctrl-w


답변

vimgrep은 여기에서 당신의 친구입니다 :

vimgrep pattern %

쇼 :

(1 of 37)


답변