두 줄이 있어요윔아래와 같이 편집기
3 àáâ
4 aaa
이 두 줄을 바탕으로 다음과 같은 결과를 얻고 싶습니다.
'à' => 'a',
'á' => 'a',
'â' => 'a',
어떤 아이디어가 있나요?
답변1
반복적인 작업을 수행해야 하는 경우 매크로를 기록할 수 있습니다.
예를 들어 여기에서는
qajxkphi'
Escla' => '
Escla',
Enter Escq
설명하다:
qa
: 매크로 기록 시작a
jxkp
: 한 줄 아래로 이동, 문자 지우기 및 복사, 위로 이동, 인쇄hi'
Esc: 왼쪽에 하나를 삽입'
하고 일반 모드로 돌아갑니다.la' => ',
Esc: 오른쪽으로 이동하여 현재 문자에 추가' => '
하고 일반 모드로 돌아갑니다.la'
EnterEsc : 오른쪽으로 추가',
하고 줄 바꿈한 다음 일반 모드로 돌아갑니다.q
: 녹음 중지
매크로를 사용하고 작동하는지 확인하려면 첫 번째 문자 위에 자신을 놓고 을 누르십시오 @a
. 결과 :
'à' => 'a',
áâ
aa
당신은 두 번째 줄에 있습니다. 2@a
매크로를 실행하고 다음을 얻으려면 두 번 누르십시오 .
'à' => 'a',
'á' => 'a',
'â' => 'a',
답변2
다음 3번의 map
ping을 파일에 넣은 ~/.exrc
다음 vi|vim|gvim
편집하려는 위치에 파일을 로드합니다. 변환하려는 라인의 아무 곳으로나 커서를 이동하고 Q
나머지 작업을 수행하려면 모드 아래의 키를 누르기만 하면 됩니다. 참고: 문자 그대로의 의미는 아니지만 다음 키 조합을 누르면 파일에 삽입됩니다.ESC
vi
recursive
macro
^M
<Ctrl><V> <Ctrl><M>
:map q :s/./&\r/^M
:map v :s/\(.\) \(.\)/'\1' => '\2',/^M
:map Q :/^^M-q+q-dd-P-Jv+Q