问题标签 [perl-tidy]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
663 浏览

perl - 如何防止 PerlTidy 对齐分配但继续添加单个空格?

如何防止 PerlTidy 对齐分配但继续添加单个空格?

这个问题类似于如何防止 PerlTidy 对齐我的作业?但我想在指定的地方添加单个空格。由于这个-naws开关对我不起作用。我只是不想插入多个空格。是否可以使用 perltidy 或其他工具?

Perl 整洁的变化:

进入

使用 -naws 它保持不变:

我希望将此代码格式化为:

0 投票
2 回答
323 浏览

svn - 用 PerlTidy 颠覆 Perl 存储库?

我想清理包含格式错误的 Perl 代码的现有 subversion 存储库。由于我不确定是否需要与相当旧的代码进行一些比较,所以理想情况下,我希望所有版本的格式都相同。

另一方面,通过签出所有旧版本、使用 perltidy 重新格式化和签入来创建新的存储库,必须保留原始日志消息。

有什么工具/食谱可以做到吗?

0 投票
1 回答
255 浏览

perl - 说服 Perltidy 不理会空白

我正在使用Perltidy将一些旧的 Perl 文件重新格式化为更接近我当前偏好的样式。我遇到了这个片段的问题:

Perltidy坚持要删除令牌后的空格&,导致:

...在我看来,这是一个令人眼花缭乱的东西。我能做些什么来说服 Perltidy 离开那个单独的空间?我什-fws至尝试了该选项无济于事。

我正在使用 Perltidy 20101217,这显然是最新版本。

编辑:

一些额外的观察:

  • 使用--indent-only( -io) 选项不会删除上述空格。

  • 以下等效代码段不受此问题的影响:

    /li>

编辑2:

我最终颠倒了&运算符参数的顺序,因为这似乎暂时解决了 Perltidy 问题。此外,这种方法不需要添加额外的括号或任何其他可能有助于 Perltidy 做正确事情的标记,但从长远来看肯定会让我感到困惑。

更新:

我就这个问题联系了 Perltidy 的作者 Steve Hancock。从他的回应中:

我检查了一下,问题是在这种情况下 & 被错误地标记为函数调用符号。基本问题是 perltidy 看不到其他模块的原型,即使是内置的,所以它必须猜测何时涉及“Fcntl::S_IRUSR”之类的东西。换句话说,它不知道这是一个函数调用还是一个常量,并且必须猜测。当您颠倒顺序时,它消除了 & 上的歧义。

感谢您的注意。我会看看我能不能想出一个补丁来解决这个问题。

0 投票
0 回答
300 浏览

perl - Perltidy 不对齐赋值运算符(= 和 =>)

我有以前格式化的代码perltidy。它具有对齐的赋值运算符。我怎样才能perltidy不对齐赋值运算符。我一直在阅读手册,尝试和试验。这是我当前的参数列表:

-i=2 -nt -bt=2 -bbvt=0 -dws -asc -dsm -vt=2 -pt=2 -nwls='= =>' -wls='= =>' -sak='if elsif for while unless'

注意,我想要的是-nwls='= =>' -wls='= =>',也就是说,删除=or=>运算符左侧的所有空格,然后在左侧添加一个空格。我想我真正需要做的只是编写一个运行perltidy两次的脚本以删除 周围的空格=,然后再次添加它。

0 投票
1 回答
204 浏览

perl - 格式化 Perl 源代码时如何按键对哈希条目进行排序?

看着perltidy我没有看到这样的选择。有没有什么工具可以做到这一点?

0 投票
1 回答
534 浏览

perl - 如何删除 Perl::Tidy 中的前导注释空格?

我只是在配置 Perl::Tidy 以匹配我的偏好。我只剩下一个问题,我找不到解决办法。

示例脚本:

perltidyrc:

结果:

如您所见,有一个前导空格导致“#”与第四个选项卡不匹配。

如何删除这个领先的空间?

0 投票
3 回答
1167 浏览

perl - perltidy 格式复杂的 if

如何配置 perltidy 以格式化长 if 语句,如下所示:

或者像这样


编辑1:perltidyrc


Edit2:这个想法是在第一行之后有一个新行,(最后)一个与{. 如果这是不可能的,任何其他更好的格式建议将不胜感激。

0 投票
1 回答
280 浏览

emacs - Emacs 中的 perltidy 模式自动运行

我有一个perltidy-mode.el lisp 文件,它正在被加载 - 我可以通过M-x perltidy-mode.

打开文件(或加载 emacs)后自动运行它的正确方法是什么?

似乎不起作用。


看来我忘记了很多 lisp/emacs

0 投票
3 回答
192 浏览

perl - 如何在 vim 中启用 map 命令?

仅当文件类型为“perl”时如何启用映射命令?

就像是:

但它不起作用。

0 投票
1 回答
362 浏览

perl - svn diff 通过 perltidy

我想在我的颠覆工作副本中寻找差异之前运行 perltidy。在 svn 配置中我写道:

正如大卫 W 在这个答案中所说的那样https://stackoverflow.com/a/5834900/1927848我制作了一个脚本 /usr/bin/d.sh:

当我在工作副本中制作 svn diff 时,我遇到了一些错误:

我的错误在哪里?

UPD:$1 和 $2 不是文件名,$6 和 $7 包含文件名。感谢ikegami评论,我对代码做了一些修改

但现在脚本只执行第一个 perltidy 命令并等待......有什么问题?
UPD2:perl 脚本,有效: