我们的代码库具有“拥抱式”花括号样式。也就是说,与其附带的(或或)语句{
出现在同一行:function
if
while
if (condition) {
doThis();
}
else {
doThat();
}
我们有一位程序员,他总是在下一行的空白处用花括号来写东西,这让我很抓狂:
if (condition)
{
doThis();
}
else
{
doThat();
}
我不想就这两种格式的优劣展开争论,但我确实想让这位程序员的代码符合我们既定的风格。是否有 Sublime Text 插件或宏可以在这些风格之间进行转换?手动操作似乎太浪费时间了。
答案1
正如 Daniel Beck 在他的评论中所建议的那样,这可以通过正则表达式查找和替换来完成。最终在 Sublime Text 中为我工作的正则表达式如下:
找什么: \n(\s)*\{
(即,查找任何换行符,后跟零个或多个空格字符,后跟左花括号字符)
用。。。来代替: {
(一个空格和一个左花括号)
我正在逐一进行替换,因为有时我的流氓程序员有时也会将代码卡在“花括号”行上,就像这样......
if (condition)
{doThis();}
... 在进行替换之前我必须再检查一遍。
我仍然认为插件可能能够非常优雅地处理这种情况,但现在这种方法是可行的。
答案2
我找到了一款出色的 Sublime Text 插件,名为代码格式化程序这将调整许多不同类型的代码中的括号样式,以及执行其他一些“美化”功能。
好极了!