很长时间kate
用户切换到vim
。
想知道vim
是否具有易于激活的选项(或者它已被编码为插件),以便在编码主要语言时“巧妙地”将静态自动换行应用于大字符串:C / C ++,Java,Python,PHP ,(更多关注)。
不仅在写作时,还在对视觉文本块应用缩进修改时,或者(不)对其进行评论。让我们有一个伪Java情况,如:
1 String loremIpsum = "Lorem ipsum dolor sit amet, consectetur adipi" +
2 "sicing elit, sed do eiusmod tempor incididunt ut " +
3 "labore et dolore magna aliqua. Ut enim ad minim v" +
4 "eniam, quis nostrud exercitation ullamco laboris " +
5 "nisi ut aliquip ex ea commodo consequat. Duis aut" +
6 "e irure dolor in reprehenderit in voluptate velit" +
7 " esse cillum dolore eu fugiat nulla pariatur. Exc" +
8 "epteur sint occaecat cupidatat non proident, sunt" +
9 " in culpa qui officia deserunt mollit anim id est" +
10 " laborum.";
~
在某些时候会想要添加或删除一些缩进级别,但依赖于编辑器使用我们的静态自动换行规则重建整个语言配置字符串。假设现在由于某种原因需要删除两个缩进空格,所需的输出将是:
1 String loremIpsum = "Lorem ipsum dolor sit amet, consectetur adipisi" +
2 "cing elit, sed do eiusmod tempor incididunt ut labo" +
3 "re et dolore magna aliqua. Ut enim ad minim veniam," +
4 " quis nostrud exercitation ullamco laboris nisi ut " +
5 "aliquip ex ea commodo consequat. Duis aute irure do" +
6 "lor in reprehenderit in voluptate velit esse cillum" +
7 " dolore eu fugiat nulla pariatur. Excepteur sint oc" +
8 "caeact cupidatat non proident, sunt in culpa qui of" +
9 "ficia deserunt mollit anim id est laborum.";
~
由vim
构建的工具是什么?
答案 0 :(得分:1)
使用Vim,gq
命令重新格式化行;这甚至可以使用:set formatoptions+=a
按键进行。
不幸的是,Vim的内置功能仅限于基本功能(参见:help fo-table
);精心设计和特定于语言的格式化程序应由外部程序('formatprg'
)或Vimscript('formatexpr'
)提供,后者尚未实际使用过。
所以,如果你很幸运,你会找到一个可以集成的外部代码格式化程序,或者你必须自己编写这样的东西。