Vim에서 줄 바꿈 삭제
Vim의 줄 끝에서 줄 바꿈을 삭제하여 다음 줄이 현재 줄에 추가되도록하는 방법이 있습니까?
예를 들면 다음과 같습니다.
Evaluator<T>():
_bestPos(){
}
줄을 복사하여 이전 줄에 붙여 넣지 않고이 모든 것을 한 줄에 넣고 싶습니다. 커서를 각 줄의 끝 부분에 놓고 키를 누르고 다음 줄이 커서가있는 것과 같은 줄로 이동할 수 있어야합니다.
최종 결과 :
Evaluator<T>(): _bestPos(){ }
Vim에서 가능합니까?
첫 번째 줄에있는 경우 (대문자)를 누르면 J해당 줄과 다음 줄이 합쳐져 줄 바꿈이 제거됩니다. 이것을 카운트와 결합 할 수도 있으므로를 누르면 3J
3 개의 라인이 모두 결합됩니다.
확실히. Vim은 \ n 문자를 줄 바꿈으로 인식하므로 검색하고 바꿀 수 있습니다. 명령 모드에서 다음을 입력하십시오.
:%s/\n/
정상 모드에서 상단 라인에있는 동안 Shift+를 누르십시오 j.
개수를 앞에 추가 할 수도 있으므로 3J
맨 위 줄에서 해당 줄을 모두 합칩니다.
J
여분의 선행 간격 (있는 경우)을 삭제하고 단일 공백으로 라인을 결합합니다. (일부 예외 : after /[.!?]$/
에는 공백이 두 개 삽입 될 수 있습니다 /^\s*)/
.
해당 동작을 원하지 않으면 gJ
개행을 제거하고 공백으로 영리한 작업을 수행하지 마십시오.
다른 답변에서 언급했듯이 (대문자) J
및 검색 + 바꾸기는 \n
일반적으로 줄 바꿈 문자를 제거하고 줄을 연결하는 데 사용할 수 있습니다.
그러나 마지막 줄에서 후행 줄 바꿈 문자 를 제거하려면 Vim 에서이 작업을 수행해야합니다.
:set noendofline binary
:w
다음은 모두 커서가 첫 번째 줄에 있다고 가정합니다.
노멀 매핑 사용 :
3Shift+J
Ex 명령 사용 :
:,+2j
의 약어입니다
:.,.+2 join
다음 바로 가기로 입력 할 수도 있습니다.
3:j
더 짧은 Ex 명령 :
:j3
set backspace=indent,eol,start
당신의 .vimrc에 사용할 수 backspace
와 delete
에 \n
삽입 모드 (줄 바꿈).
set whichwrap+=<,>,h,l,[,]
X
(1 열에있을 때) 일반 모드에서 이전 LF를 삭제할 수 있습니다 .
아마도 귀하의 설정에 따라 다르지만 일반적으로 A<delete>
A
줄의 끝에 어디에 추가합니까? 아마도 nocompatible
모드 가 필요 합니다 :)
<CURSOR>Evaluator<T>():
_bestPos(){
}
첫 줄에 커서
이제 일반 모드에서
shift+v
2j
shift+j
또는
V2jJ
: 정상 V2jJ
줄 바꿈을 제거하려는 행에서 A (행 끝에 추가, 삽입 모드로 전환)를 누른 다음 삭제를 누릅니다.
다른 쉘 도구를 사용하지 않아도된다면
tr -d "\n" < file >t && mv -f t file
sed -i.bak -e :a -e 'N;s/\n//;ba' file
awk '{printf "%s",$0 }' file >t && mv -f t file
문제는 보이지 않는 여러 문자 0A (\ n)가 누적 될 수 있다는 것입니다. 100 행에서 끝까지 정리하려고한다고 가정하십시오.
ESC 입력 및 : (터미널 사령관)
:110,$s/^\n//
vim 스크립트에서 :
execute '110,$s/^\n//'
설명 : 110에서 끝까지 새 행으로 시작하는 행을 찾고 (공백) 제거합니다.
참고 URL : https://stackoverflow.com/questions/3983406/delete-newline-in-vim
'Programing' 카테고리의 다른 글
파이썬에서 산술 평균 (한 유형의 평균) 계산 (0) | 2020.04.03 |
---|---|
.NET으로 Windows 64 비트 플랫폼을 감지하는 방법? (0) | 2020.04.03 |
PowerShell에서 Windows 탐색기 창을 열 수 있습니까? (0) | 2020.04.03 |
드롭 다운 목록에서 기본 화살표 아이콘을 제거하는 방법 (선택 요소)? (0) | 2020.04.03 |
Windows 탐색기에서 PowerShell을 어떻게 시작합니까? (0) | 2020.04.03 |