vim의 모든 줄 끝에서 ^ M
vim 및 다른 편집기를 사용하여 소스 파일을 편집 할 때 가끔 줄 끝에 이러한 ^ M 문자가 표시됩니다. Windows에서 파일을 편집 한 다음 Linux에서 파일을 편집하는 것과 관련이 있다고 생각합니다. 이 모든 것을 자동으로 제거하려면 어떻게해야합니까?
명령으로
:%s/^M$//
^ M을 얻으려면 ^ V ^ M을 누릅니다. 여기서 ^는 대부분의 키보드에서 CTRL입니다.
DOS 줄 끝을 제거하는 쉬운 방법 중 하나는 ff
옵션 을 사용하는 것입니다.
:set ff=unix
:wq
이제 파일이 유닉스로 돌아 왔습니다.
DOS 줄 끝 을 추가 하려면 (프린터를 행복하게 유지하거나 멋진 도구가없는 Windows 친구와 파일을 전송하기 위해) 반대 방향으로 쉽게 이동할 수 있습니다.
:set ff=dos
:wq
당신은 이것을 할 수 있습니다 :
:set fileformats=dos
^M
파일을 건드리지 않고의 파일 을 숨 깁니다 .
dos2unix 라는 프로그램 이 있습니다. Windows는 다른 줄 끝 문자를 사용하므로 이런 일이 발생합니다.
이것은 한 줄에 모든 것이있는 파일에서 나를 위해 일했습니다.
먼저 모든 경기를 찾으십시오
:%s/^M//
(를 얻으려면 ^M
^ V ^ M을 누르십시오. 여기서 ^는 Ctrl대부분의 키보드에 있습니다)
그런 다음 줄 바꿈으로 바꿉니다.
:%s//\r/g
결합 된 명령은 다음과 같습니다.
:%s/^M/\r/g
감염된 파일을 fromdos
다시 열기 전에이를 실행하는 경향이 있습니다. tofrodos 패키지의 fromdos
일부입니다 .
문제의 원인은 FTP 전송을 통한 것일 수 있습니다. 한 상자에서 다른 상자로 이러한 파일을 FTP로 전송할 때는 ASCII 전송을 사용해야합니다. "ASC"명령을 사용하십시오.
" put this in your ~/.vimrc file and :source ~/.vimrc
" then you can do: Dos2Unix
" dos2unix ^M
fun! Dos2unixFunction()
let _s=@/
let l = line(".")
let c = col(".")
try
set ff=unix
w!
"%s/\%x0d$//e
catch /E32:/
echo "Sorry, first save the file."
endtry
let @/=_s
call cursor(l, c)
endfun
com! Dos2Unix keepjumps call Dos2unixFunction()
mcedit : shift + f2, 유닉스 형식 설정 (LF), 확인
참고 URL : https://stackoverflow.com/questions/1110678/m-at-the-end-of-every-line-in-vim
'Programing' 카테고리의 다른 글
마지막 요소를 얻는 XSLT (0) | 2020.07.07 |
---|---|
루비 % r {} 표현식 (0) | 2020.07.07 |
Javascript에서 키 / 값 객체를 반복하는 방법은 무엇입니까? (0) | 2020.07.07 |
내 Android Gradle 기반 프로젝트에 -Xlint : unchecked를 추가하는 방법은 무엇입니까? (0) | 2020.07.07 |
Windows에서 git이 암호를 기억하지 못하는 이유 (0) | 2020.07.07 |