【问题标题】:How to add a comment style to an emacs mode如何将注释样式添加到 emacs 模式
【发布时间】:2017-04-28 16:01:03
【问题描述】:

我希望在 emacs 上的 Fortran 模式中添加额外的 cmets !* 单行样式,我会将其添加到我的 init.el 文件中。

据我所知,这应该可以使用modify-syntax-entry 命令来实现,但我正在努力取得成功,而且似乎没有fortran-mode-syntax-table,所以我看不出如何将它连接到模式。

我目前的努力(导致错误)。

(modify-syntax-entry ?\!\* "< \n")
(modify-syntax-entry ?\n "< \!\*")

错误读取加载“init.el”时发生错误: 无效的读取语法:?

【问题讨论】:

  • 如果你有错误,你应该指出来。
  • 然而,我很惊讶你需要它。你文件的后缀是什么?我推荐 .f90(或 .F90,如果它经过预处理)。
  • 添加了错误,预处理不是标准预处理器,它是一个额外的预处理器,这就是为什么我不能使用.F90

标签: emacs fortran comments elisp syntax-highlighting


【解决方案1】:

我终于想出了如何做到这一点,值得一提的是,使用普通的 Fortran 设置!导致 cmets,但不是我的。

所以我添加到我的 init.el 是

(add-hook 'fortran-mode-hook   
(lambda () 
(modify-syntax-entry ?\! ". 1")
(modify-syntax-entry ?\* ". 2")
(modify-syntax-entry ?\n ">") ))

前两个 modify-syntax-entry 使用数字语法标志来表示两个字符的注释开始序列!* 并且 > 是注释结束的语法类,为此我使用 \n 以换行符结束注释。

请参阅https://www.gnu.org/software/emacs/manual/html_node/elisp/Syntax-Flags.htmlhttps://www.gnu.org/software/emacs/manual/html_node/elisp/Syntax-Class-Table.html#Syntax-Class-Table 了解更多详情

【讨论】:

    猜你喜欢
    • 2012-08-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-04-03
    • 2019-07-17
    • 2010-10-07
    • 2020-10-27
    相关资源
    最近更新 更多