Jer*_*rph 77 vim line-endings carriage-return
我在Windows上使用gVim.我的代码^M在行尾显示字符.我:set ff=dos以前没有用.^M现有行的字符仍然存在,但不会显示我输入的换行符.我已将模式切换为mac(显示^J字符)和unix(也显示^M字符)并返回dos.有没有人见过这个?
ric*_*chq 139
当你有Windows行结尾和Unix行的结尾时会发生这种情况.如果您有100行,其中99是\ r \n,其中一行是\n,您将看到99 ^ M个字符.修复是找到一行并替换它.或者在文件上运行dos2unix.您可以使用以下命令替换Windows行结尾:
:%s/\r\(\n\)/\1/g
bec*_*lmw 42
你也可以运行:
:e ++ff=dos
Run Code Online (Sandbox Code Playgroud)
要删除^M:请参阅文件格式 - Vim Tips Wiki.
Eva*_*van 19
我通常使用以下内容来清理我的行结尾:
:g/^M$/s///
Run Code Online (Sandbox Code Playgroud)
为了获得ctrl-M,我通常输入ctrl-Q,然后ctrl-M并将它放入.(在某些环境中它可能是ctrl-V然后ctrl-M.)我不知道为什么,但我发现比rq更容易记住.
不要忘记这样做:set ff=dos,否则你最终还是会保存UNIX行结尾.
小智 15
我知道这已经得到了解答,但我使用的技巧是
:%s/\r/\r/g
Run Code Online (Sandbox Code Playgroud)
这将使用Windows CRLF替换unix回车.只是添加以防其他人有问题.
| 归档时间: |
|
| 查看次数: |
63628 次 |
| 最近记录: |