emacs align-regexp with spaces instead of tabs
emacs, perl, prettify
Solution
In general you should avoid using advice, but since `align.el` directly reads the value of `indent-tabs-mode`, it's probably the best way:
(defadvice align-regexp (around align-regexp-with-spaces activate)
(let ((indent-tabs-mode nil))
ad-do-it))
Here was my original version:
(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)))
As @Phils pointed out, this is unnecessarily complex and less fool proof, so use the code at the top of the post.
Problem
I use `M-x align-regexp` in emacs to prettify my Perl code, but by default it is using tabs instead of spaces, which is something one should not do according to Perl critic. Is there a way to change the behaviour of `align-regexp` so that it fills in with the right amount of spaces instead of tabs?