LAF*_*ica 5 vim powershell windows-7
希望对你而言,这将是微不足道的回答.
我在Win7上有gvim和vim.每当我将命令结果重定向到文件并用Vim(或Gvim,同样的效果)打开它时,我在每个字符之间插入二进制0(^ @符号).
所以,而不是
r96130
我有
^@r^@9^@6^@1^@3^@0^@
任何想法如何(首选)防止它或(罚款)摆脱它?
我试过替换,但显然这不仅仅是^ @,它是二进制零(我认为)所以它没有被接受/^@.
编辑(S):
1)尝试将设置编码设置为UTF-8(我正在处理的内容的编码)和UTF-16(根据@Philippe Wendler的回答,谢谢),无济于事.
2)__PowerShell__是有罪的一方.当我在通常的命令行(via cmd)上进行重定向时,没有副作用.只有在PowerShell会话上创建的文件才会插入这些二进制零.
3)@Christian提到的Powershell好东西并没有帮助.因为我已经将Ubuntu作为我的主要操作系统切换到Ubuntu并在那里使用Vim,所以我将留下未回答的问题,所以这里唯一的"解决方案"现在不使用PowerShell + Vim,这显然缺乏答案.:-)
感谢@ Emperor XLII提供解决方案!这里发布的评论可能不够明显:
dir | OutFile -Encoding UTF8 test
Run Code Online (Sandbox Code Playgroud)
创建一个出现在Vim中但没有二进制零的文件.如果我使用Encoding运行到OEM,ASCII和我测试的其他两个,也会发生同样的情况.
一个有希望的提示在于:he 'fileencodings'- 是的,复数,@ Dan Fitch,但是我没有测试它,因为那时候我已经离开了Win7.
| 归档时间: |
|
| 查看次数: |
418 次 |
| 最近记录: |