perltidy格式复杂如果

前端之家收集整理的这篇文章主要介绍了perltidy格式复杂如果前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
如何将perltidy配置为格式化if if语句如下:
if (
    ('this is an example' =~ /an.*example/ and 1 * 2 * 3 == 6) or
    ('hello world' =~ /world/ and 6 = 3 * 2 * 1)
) {
    print "hello\n";
}

或者像这样

if (
    ('this is an example' =~ /an.*example/ and 1 * 2 * 3 == 6)
    or ('hello world' =~ /world/ and 6 == 3 * 2 * 1)
) {
    print "hello\n";
}

编辑1:perltidyrc

--maximum-line-length=100
--indent-columns=4
--default-tabsize=4
--continuation-indentation=4
--closing-token-indentation=0

--no-indent-closing-brace

--paren-tightness=2
--square-bracket-tightness=2
--block-brace-tightness=0

--trim-qw

--nospace-terminal-semicolon
--nospace-for-semicolon

--indent-spaced-block-comments
--ignore-side-comment-lengths

--cuddled-else

--no-opening-brace-on-new-line
--no-opening-sub-brace-on-new-line
--no-opening-anonymous-sub-brace-on-new-line
--no-brace-left-and-indent

--blanks-before-comments
--blank-lines-before-subs=1
--blanks-before-blocks
--maximum-consecutive-blank-lines=1

编辑2:我们的想法是在第一个(也是最后一个)后面有一个换行符号{.如果这是不可能的,任何其他建议更好的格式将不胜感激.

解决方法

perltidy的默认样式是尽可能遵循 Perl Style Guide.这导致了这个输出
if (   ( 'this is an example' =~ /an.*example/ and 1 * 2 * 3 == 6 )
    or ( 'hello world' =~ /world/ and 6 == 3 * 2 * 1 ) )
{
    print "hello\n";
}

您可以控制花括号,无论它们是否在新行上.您可以控制括号的紧密度.但是,您无法控制代码块中括号的新行.

默认样式尽可能接近您想要的输出.

猜你在找的Perl相关文章