You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

perltidy执行缩进规则前能否先移除所有行首空白字符?

实现方案

这个需求可以直接通过perltidy自带参数实现,不需要提前手动处理代码。

你需要用的参数是 -ils(全称为 --ignore-leading-space),作用是完全忽略原代码的行首缩进基准,直接按照规则重新生成所有行的缩进,刚好符合你「先清除所有行首空白左对齐,再应用缩进规则」的要求。

你之前尝试的 -dws 参数作用是删除行内多余的空格,不涉及行首缩进基准的重置,因此不会生效。

用法示例

直接对目标文件执行命令:

perltidy -ils test.pl

处理你的示例代码后,输出结果如下:

use Data::Dump q[pp];
sub something{
    return 2 + 2;
}

如果需要长期生效,可以把 ignore-leading-space = 1 写入你的.perltidyrc 配置文件,后续执行perltidy时会自动应用该规则。

内容的提问来源于stack exchange,提问作者sail0r

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.30 22:27:04