我想在我的.emacs中添加这样的东西:
(local-set-key (kbd "C-c a =")
(lambda () (interactive)
(align-regexp (region-beginning) (region-end) "=")))
Run Code Online (Sandbox Code Playgroud)
但每当我运行它时,我都会收到错误"错误的类型参数:numberp,nil".
这个错误意味着什么,我如何得到我正在寻找的效果?
我M-x align-regexp在emacs中用来美化我的Perl代码,但默认情况下它使用的是制表符而不是空格,根据Perl评论家的说法,这是不应该做的.
有没有办法改变行为,align-regexp以便填充适当数量的空格而不是标签?
在回答中,我注意到:
;; Align with spaces only
(defadvice align-regexp (around align-regexp-with-spaces)
"Never use tabs for alignment."
(let ((indent-tabs-mode nil))
ad-do-it))
(ad-activate 'align-regexp)
Run Code Online (Sandbox Code Playgroud)
这听起来很有希望,但是...它是做什么的?
我尝试eval-region了代码块。但是对我来说,它所做的就是在align-regexp文档中添加以下内容:
建议使用此功能。
围绕建议的“ align-regexp-with-spaces”:
切勿使用制表符进行对齐。
我似乎无法实际使用align-regexp-with-spaces,如果那是什么效果……我想念的是什么?
我使用了GNU Emacs版本24.0.96.1(i386-mingw-nt6.1.7601)。
现在我知道如何在Emacs中右对齐数值列,我对此解决方案有两个问题:
例如,当第一列中的某些值包含数字时,它不起作用.
不幸的是,它会插入标签.
现在我使用矩形函数(C-xrk)非常多.这让我想到:是否可以使用一个函数来右对齐所选矩形中的所有文本?