VIM: 여러 줄의 버퍼를 생성하는 함수 만들기

VIM: 여러 줄의 버퍼를 생성하는 함수 만들기

거의 동일한 추가 코드 블록을 추가해야 하는 구성 파일이 약 90개 있습니다. 매번 단어의 두 인스턴스만 다릅니다. 나는 가능한 한 적게 반복하고 싶습니다.

VIM에서는 인수를 기반으로 텍스트 블록을 생성하고 이를 버퍼에 공급하거나 현재 커서 위치 뒤에 붙여넣는 함수를 작성할 수 있습니까? 그렇다면 어떤 서류를 봐야 할까요?

답변1

좋아요편집 동반자newconf예를 들어 write , press 에 사용할 수 있습니다 . Tab이는 지정된 템플릿으로 확장되어 newconf캐럿을 한 위치에 배치합니다(그리고 후속 키를 누르면 캐럿을 다음 위치에 배치합니다 Tab). 분명히 Hart는 설명할 수 없었습니다.이 비디오설명해주세요(여기에는 플러그인이 없는 것 같습니다). 이것이 최선의 솔루션인지는 확실하지 않지만 전반적으로 매우 편리합니다.

아마도 sed, patch심지어Coccinelle("의미론적 수정")도 도움이 될 수 있습니다.

답변2

약어로 .vimrc 파일을 사용자 정의하여 VIM에서 직접 이 작업을 수행할 수도 있습니다.

.vimrc에서:

:ab _mytxt ################################################################################^M# This is a comment^Mkey1=value1^Mkey2=value2^M#^Mecho "Hello, World!"^M################################################################################

vi의 삽입 모드에서 간단히 입력 _mytxt하면 vim이 자동으로 축약되지 않은 텍스트로 대체합니다.

_mytxt

~이 되다

################################################################################
# This is a comment
key1=value1
key2=value2
#
echo "Hello, World!"
################################################################################

.vimrc 파일을 읽고 사용자 정의하면 됩니다. 일반적으로 VIM에서 사용되는 .exrc 파일의 사용자 정의를 볼 수도 있습니다.

관련 정보