Sublime Text 3 Code autoformatting

时间:2014-01-25 02:45:51

标签: sublimetext2 sublimetext sublimetext3

我搜索过高和低,但我似乎无法找到一个插件,使Sublime的工作方式类似于Visual Studio格式化代码的方式。

例如,当写一个for循环时,它看起来像这样:

for(int i=0;i<value.length;i++) {
    //loop body
}

只要我完成循环体,Visual Studio就会将其格式化为更具可读性:

for (int i = 0; i < value.length; i++)
{
    //loop body
}

基本上,在这种情况下,它只是在运算符周围添加空格,但它做得更多。如果我编写可怕的缩进HTML / XML代码,它会更正缩进。数组和多行条件变得更易读。

是否有任何与此类似的Sublime Text 3插件?每个人似乎都强烈推荐使用“Reindent”命令,该命令适用于HTML / XML格式,但它并不能以一致的方式将所有内容分开。 JsParen看起来不错,但它不适用于我使用的任何其他语言,即PHP,而且适用于ST2。

1 个答案:

答案 0 :(得分:38)

CodeFormatter是PHP的一种可能选择。它使用PEAR PHP_Beautifier,您需要单独安装。 README中详细介绍了一些配置选项,因此您应该能够找到适合您需求的内容。

对于C / C ++ / C#/ Java代码,使用流行的AStyle规则的格式化程序SublimeAStyleFormatter不会出错。同样,有许多选项可用,请查看.sublime-settings文件以获取详细信息。

HTML-CSS-JS Prettify是我目前使用的那些语言。它需要node.js才能工作,因此请务必仔细阅读说明。

最后,你可能会认为我很滑稽,但我真的不是:在编码时要注意风格。我在Python中工作很多,其中代码的可视化表示实际上是语法的一部分。代码应该由其他开发人员和机器来阅读,并且在考虑“我稍后会对它进行美化”时,没有任何人能够尝试并敲出格式不佳的,未缩进的代码。也许你的格式化程序不会修复你的所有错误,或者你可能会忘记,或者变得懒惰。如果您专注于代码的外观和结构,您可以更容易地看到不同部分如何组合在一起,并且可能在它们造成任何伤害之前捕获一些错误。为自己设置一个清晰的风格指南,并坚持下去。你会很高兴的。