我正在编辑C代码,我需要将注释的开始放在同一列中,并在所有行上的一些不同列中结束注释。
。
int i; /* some var */
int j; /* some other */
char c; /* new char */
要求输出
int i; /* some var */
int j; /* some other */
char c; /* new char */
我试过indent
,阅读手册页,但没有找到我可以使用的选项(太多的标志,也许我错过了一些东西)。我还尝试了一个vim插件Tabularize
,但没有得到如何实现上述目标。
帮忙吗?
对于Tabularize
,您可以使用以下命令将/*
和*/
分成3个部分:
首先选择要格式化的行,然后键入:
Tabularize /(/*|*/)
这基本上等于其他语言中的正则表达式(/*|*/)
,但Vim需要额外的转义。
int i; /* some var */
int j; /* some other */
char c; /* new char */
要从您的示例中产生确切的结果,您可以告诉tabulalize添加额外的空格,如下所示:
Tabularize /(/*|*/)/l8l1l2