【问题标题】:I like c.vim plugin, but I don't use K&R code style我喜欢 c.vim 插件,但我不使用 K&R 代码风格
【发布时间】:2012-01-13 23:21:25
【问题描述】:

我写代码的时候想用ANSI C风格,但是c.vim模板里的代码风格是K&R。

我在哪里可以获得另一个模板或任何其他插件而不是 c.vim

【问题讨论】:

    标签: c vim plugins


    【解决方案1】:

    你应该检查:help cinoptions-value并定义你自己的C风格。

    IIRC,您需要 set cindent 以便将 cinoptions 考虑在内。

    FWIW,这是我打开 C 或 h 文件时所做的:

    setlocal cinoptions={0,:1s,g1s,t0,(0,=.5s
    setlocal noautoindent
    setlocal nosmartindent
    setlocal cindent
    

    【讨论】:

    • Accoding to :help C-indenting, "实际上有四种主要的缩进方法,如果启用,每一种方法都会覆盖前一种方法" - 所以看起来setlocal noautoindentsetlocal nosmartindent是不需要。
    【解决方案2】:

    有一个很棒的程序叫做 Artistic Style 或 astyle,它为你做了一大堆代码格式化。您可以告诉它是否需要运算符周围的空格、与循环在同一行上打开大括号、如何缩进等。我在这里更详细地讨论它: Auto format C。它易于使用,但选项允许您设置多种编码样式,包括一些常用样式的预定义,例如 K&R。

    基本上,一旦您在 vimrc 中设置了它,只需键入 gggqG 即可重新格式化您的文件。 (gg 到顶部,gq 开始格式化,G 一直格式化到最后。)

    这无助于在编写代码时格式化,但在必须处理格式不正确的预先存在的文件或快速清理自己的代码时,它可以成为救命稻草.

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-11-29
      相关资源
      最近更新 更多