在 Emacs 中,如何在一系列初始化语句中排列等号?
Posted
技术标签:
【中文标题】在 Emacs 中,如何在一系列初始化语句中排列等号?【英文标题】:In Emacs, how to line up equals signs in a series of initialization statements? 【发布时间】:2010-10-29 07:05:31 【问题描述】:我在哪里看到过这个,但现在找不到了。 emacs 中是否有内置函数,或者是否有人有 elisp,可以在 cc 模式下将一系列初始化语句中的所有等号对齐?
之前:
int t=9;
Graphics g = new Graphics();
List<String> list = new List<String>();
之后:
int t = 9;
Graphics g = new Graphics();
List<String> list = new List<String>();
【问题讨论】:
【参考方案1】:这是对 harpo 对 ShreevatsaR 回答的评论的回应:
唯一的问题是它“制表”了输出,这可能不是你想要的。你知道有什么方法可以防止这种情况发生吗?
这是我为解决该问题所做的:
;; 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)
【讨论】:
这不是对原始问题的一个很好的答案,但是很有价值,很有价值,很有价值。 (我想我只是鲍尔默德。) 我花了一些时间才明白这是什么does...【参考方案2】:使用M-x align-regexp
(此处为M-x align-regexp RET = RET
)。您还可以将“对齐规则”添加到变量align-rules-list
,以便将来M-x align
执行此操作。有关详细信息,请参阅文档 (C-h f align
)。
【讨论】:
好的,我已将它绑定到 C-x |。我是怎么使用 emacs 这么久却不知道这个的?感谢您的帮助。 唯一的问题是它“制表”了输出,这可能不是你想要的。你知道有什么方法可以防止这种情况发生吗? harpo:我为您的问题添加了新答案。 此 URL 有助于将其变为 fn:***.com/questions/3633120/…【参考方案3】:M-x align 应该可以解决问题。
【讨论】:
以上是关于在 Emacs 中,如何在一系列初始化语句中排列等号?的主要内容,如果未能解决你的问题,请参考以下文章
Emacs shell 脚本 - 如何将初始选项放入脚本中?