为什么-b(二进制)选项在vim中不起作用?

时间:2012-06-11 08:43:01

标签: vim

正如vim doc所说,我可以使用-b选项打开二进制文件。


-b      Binary mode.  File I/O will only recognize <NL> to separate
        lines.  The 'expandtab' option will be reset.  The 'textwidth'
        option is set to 0.  'modeline' is reset.  The 'binary' option
        is set.  This is done after reading the vimrc/exrc files but
        before reading any file in the arglist.  See also
        |edit-binary|.  {not in Vi}

我使用此命令打开vim:

$ vim --cmd 'set et' -u NONE -b

我输入此命令以查看选项:

:set et? bin?

  expandtab
  binary

未重置etexpandtab)选项。为什么呢?
谢谢你的帮助!

1 个答案:

答案 0 :(得分:1)

问题是,简单地说,在处理其他标志后执行--cmd -c或+cmd参数。这是有道理的,因为它不会有效地做任何事情。

 :verbose set et?

会告诉你的确如此。如果您需要针对特定​​样本vim +'set binary'的解决方法(不太可能,因为et!= binary)

你在--cmd的文档上是对的。因此,它归结为 order ,其中解释了命令行标志,这基本上是“未定义的”#。虽然

  

这是在读取vimrc / exrc文件之后但在读取arglist中的任何文件之前完成的

在处理其他命令行参数之前,可以采用

来暗示&#39;。

注意&#39; +&#39;命令基本上与特定文件一起使用,并且(AFAICT)按照它们出现的顺序进行处理,即使与文件名参数混合也是如此。