我M-x align-regexp
在 emacs 中使用来美化我的 Perl 代码,但默认情况下它使用制表符而不是空格,根据 Perl 评论家,这是不应该做的事情。
有没有办法改变它的行为,align-regexp
以便它填充适量的空格而不是制表符?
一般来说,您应该避免使用建议,但由于align.el
直接读取 的值indent-tabs-mode
,这可能是最好的方法:
(defadvice align-regexp (around align-regexp-with-spaces activate)
(let ((indent-tabs-mode nil))
ad-do-it))
这是我的原始版本:
(defadvice align-regexp (around align-regexp-with-spaces activate)
(let ((old-indent-tabs-mode indent-tabs-mode))
(setq indent-tabs-mode nil)
ad-do-it
(setq indent-tabs-mode old-indent-tabs-mode)))
正如@Phils 指出的那样,这不必要地复杂且不太简单,因此请使用帖子顶部的代码。