我正在尝试为一种新的类c语言编写一个新的emacs模式,这是我在某些学术研究中必须使用的。
我希望代码能像c-mode一样着色和缩进,但有以下例外:
- '%'不作为运算符,而是作为一些特定关键字的第一个字符(例如:'%p','%action'等)
- 代码行不以分号结尾。
是否可以创建一个派生模式(从c-mode派生),并将其设置为忽略'%'和';'的原始用途?是否可以使“按下RET后自动缩进”功能在没有';'的情况下工作?
是否有类似语言的相似模式(具有'{}'括号,但没有分号)可以尝试修补?
我应该尝试从头开始编写一个major mode吗?
我考虑过从http://ess.r-project.org/中修补R-mode,但此模式不支持形式为“/* comment */”的注释。
我正在寻找的最重要的功能是括号缩进,即在按下RET后缩进'{}'块内的代码(在不以';'结尾的行后没有额外缩进)。部分解决方案也将有所帮助。