从 ;; 更改 emacs 注释标记到 //
Posted
技术标签:
【中文标题】从 ;; 更改 emacs 注释标记到 //【英文标题】:Change emacs comment markers from ;; to // 【发布时间】:2022-01-06 15:58:07 【问题描述】:当我使用 Emacs 编辑“.s”文件时,我想从“;;”更改注释到 ”//”。我似乎不知道如何更改评论标识符?
例如,当我评论区域时。
更多信息: 我似乎处于 ASM-MODE,这是编辑汇编文件的默认模式。我通过
确定我处于 asm 模式 (setq auto-mode-alist
(append '(("\\.s$" . asm-mode)auto-mode-alist))
因为汇编程序通常使用 ;作为注释指示器,asm-mode 使用它。但是,由于某种原因,我无法确定 GNU 汇编器(用于 Raspbian 的 GNU Binutils)2.35.2 使用 // 或 @ 或 # 用于 cmets 而不是 ;
因此,我想更改行为,以便当我选择一个区域和 M-X 注释区域时,它使用 // 或 @ 表示 cmets。我不能使用默认的注释字符,我需要将其更改为双斜杠 // 或 at 符号 @
真正的问题是如何在模式中更改默认注释字符?
【问题讨论】:
问题可能更清楚。说出缓冲区处于什么模式,或者您希望它处于什么模式。默认情况下,注释字符和样式取决于主要模式。您对.s
文件拥有或想要的模式应该适当地定义注释。 ;
是 Emacs-Lisp 缓冲区的注释开始字符。
【参考方案1】:
假设.s
文件的主要模式是asm-mode
,你可以使用模式挂钩来调整评论开始字符串:
(defun my/asm-comment-tweak ()
(setq-local comment-start "// "))
(eval-after-load "asm"
(add-hook 'asm-mode-hook #'my/asm-comment-tweak))
将上述内容添加到您的 init 文件应该可以让您打开一个 .s
文件,该文件将位于 asm-mode
中。 asm-mode
完成的最后一件事是运行模式挂钩,它将调用函数 my/asm-comment-tweak
:该函数会将缓冲区局部变量 comment-start
设置为您指定的字符串。
这种模式非常很常见:自定义 emacs 中的许多问题都以完全相同的方式解决。您定义一个调整变量的函数,并安排该函数由适当的模式挂钩调用。
【讨论】:
以上是关于从 ;; 更改 emacs 注释标记到 //的主要内容,如果未能解决你的问题,请参考以下文章
javascript 使用jQuery从html获取所有注释标记
从Sharepoint 2010中删除“我喜欢”和“标记”以及“注释”图标