如何防止 PerlTidy 对齐分配但继续添加单个空格?
这个问题类似于如何防止 PerlTidy 调整我的作业?但我希望在指示的地方添加单个空格。由于此-naws
开关对我不起作用。我只是不想插入多个空格。可以使用 perltidy 或其他工具吗?
Perl 整洁的变化:
my $a = 1;
my $aa = 2;
my $aaa= 3;
into
my $a = 1;
my $aa = 2;
my $aaa = 3;
使用 -naws 时它保持不变:
my $a = 1;
my $aa = 2;
my $aaa= 3;
我希望这段代码的格式如下:
my $a = 1;
my $aa = 2;
my $aaa = 3;
有一个无证标志--no-valign
这似乎在不修改 perltidy 源的情况下实现了两全其美。
正如你所指出的,--no-add-whitespace
过于激进,会阻止在其他所需位置(运算符周围等)添加空格。和--no-valign
perltidy 仍在纠正诸如my ($arg)=@_;
to my ($arg) = @_;
但不尝试跨行垂直对齐运算符。该设置不会完全禁用垂直对齐器,因此您仍然可以在其他地方获得一些好处(例如侧面注释)。
到目前为止,我发现的唯一问题是侧面注释块的第一个侧面注释与后续注释不一致:
my @DISAGREE_NONFATAL = grep { exists $warnings::Offsets{$_} } (
'newline', # stat on nonexistent file with a newline in it
'experimental', # no reason for these to be fatal
'deprecated', # unfortunately can't make these fatal
'portable', # everything worked fine here, just may not elsewhere
);
这只是尊重--minimum-space-to-comment
。我不确定为什么后续(第三和第四)行可以正常工作。我不太使用旁注,所以这不是一个主要问题(你可以使用--format-skipping
在这样的块上)。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)