gpt4 book ai didi

vim - 如果我打开的任何文本文件不是 unix,我如何设置 vim 以自动将其转换为 unix?

转载 作者:行者123 更新时间:2023-12-04 15:26:56 26 4
gpt4 key购买 nike

我正在寻找某种插件/vi 代码来检测是否有任何 ^M (回车?)在任何文件或任何类型的行尾不是 unix 的指示中,如果是这样,请删除它们或运行 dos2unix在文件上。

我需要它在文件打开之前/期间自动工作。

此外,对于那些打算建议手动转换行尾的方法的人,一个答案指出做 :set ff=unix但这不会杀死 ^M在一个unix文件中,我想。

并且没有使用 :%s/^M//g 的技巧吗?因为使用文字 ^不匹配字符?

最佳答案

下面的函数很有趣,因为
它将光标保持在其原始位置
把它放在你的。 vimrc

" dos2unix ^M
fun! Dos2unixFunction()
let _s=@/
let l = line(".")
let c = col(".")
try
set ff=unix
w!
"%s/\%x0d$//e
catch /E32:/
echo "Sorry, the file is not saved."
endtry
let @/=_s
call cursor(l, c)
endfun
com! Dos2Unix keepjumps call Dos2unixFunction()
au BufReadPost * keepjumps call Dos2unixFunction()

关于vim - 如果我打开的任何文本文件不是 unix,我如何设置 vim 以自动将其转换为 unix?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5357330/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com