나는 종종 큰 파일 전체에 걸쳐 일치하는 검색과 대체 검색이 아닌 대체를 수행해야하는 경우가 많다.
예를 들어, 같은 함수 호출이 있다고 가정 해보십시오 okFunction(arg1, arg2 arg3)
. 인수는 물론 모든 함수 호출에 따라 다릅니다. 이제 필요없는 더 나은 기능을 발견했다고 가정 해보십시오 arg2
. 쉽게 전체 파일을 조정할 수 있습니다
:%s/\<okFunction(\(\w\+\), \(\w\+\), \(\w\+\))/betterFunction(\1, \3)/gc
개념적으로는 간단하지만이 긴 패턴으로 구문이 올바른지 확실하지 않습니다. 이 c
플래그는 실제로 여기에 도움이되지만 문제는 확인을 요청할 때 vim이 일치하는 항목을 표시하지 않는다는 것입니다. 그것은 대체 식을 보여 주지만 평가 결과는 보여주지 않을 것입니다. 으로 교체를 확인하면 y
vim은 즉시 다음 경기로 넘어 가며 실수를 저지른 적이 없습니다.
문제를 부분적으로 해결 하는 vim-over 플러그인을 찾았 지만 명령을 입력 할 때 화면에 모든 수학이 표시되는 경우에만 가능합니다. Enter 키를 누르면 동작은 위에서 설명한 것과 동일하며 미리 볼 수 없습니다.
대체 명령에 대한 확인을 요청할 때 vim이 대체 표현식을 평가할 수있는 방법이 있습니까?
2
그것은 vim-bug tracker의 위시리스트 아이템입니다 (죄송합니다)
—
Christian Brabandt
가치있는 것을 위해 나는 보통없이 첫 번째 줄에서 대체를 사용하여 대체하지 않고
—
statox
%
결과가 내가 기대 한 결과인지 확인한 다음 대체를 사용합니다 %
(키를 몇 번만 누르면 됩니다 :<up><c-b>%
). 분명히 미리보기 옵션이 그보다 훨씬 효율적입니다. 패치를 구할 수는 없지만 이런 종류의 옵션으로 vimscript 함수에서 대체를 래핑 할 수는 있지만 많은 작업처럼 들립니다 ...
@ChristianBrabandt 그것을 찾았습니다 . 아직 분류되지 않은 우선 순위는 ...
—
Vitor Eiji
@VitorEiji는 내가 생각한 것이 아닙니다. 그러나 현재 가능하지 않기 때문에 실제로 중요하지 않습니다. Neovim은 'inccommand'옵션을 제공합니다. 작동하지 않을 수도 있습니다 (또는 실제로는 그렇지 않습니다)
—
Christian Brabandt