asm*_*rer 12 python emacs restructuredtext
如何让Emacs rst-mode
在Python文件中的文档字符串中使用?我依稀记得文件某些区域内的不同模式是可能的,但我不记得它是如何完成的.
rra*_*rra 14
支持它的Emacs包是mmm-mode
.确保已安装,然后像这样的代码作为Emacs启动的一部分应该这样做:
(require 'mmm-mode)
(setq mmm-global-mode 'maybe)
(mmm-add-classes
'((python-rst
:submode rst-mode
:front "^ *[ru]?\"\"\"[^\"]*$"
:back "^ *\"\"\""
:include-front t
:include-back t
:end-not-begin t)))
(mmm-add-mode-ext-class 'python-mode nil 'python-rst)
Run Code Online (Sandbox Code Playgroud)
我用一些Python程序测试了它,它似乎工作正常.
请注意,对于每个三引号字符串,这将切换到rst模式,而不仅仅是函数定义开头的字符串.您可以将它限制为功能定义开头的那些前端正则表达式,但我不完全确定如何处理它,因为我认为默认情况下mmm模式定义一次匹配一行.
编辑:我的原始版本会将Emacs置于单行文档字符串的第一模式,然后将其保留在该模式中直到下一个文档字符串的开头.如果在与文档字符串的开头相同的行上有另一个双引号,这个版本避免将Emacs置于第一模式,这仍然不完美但应该更接近.
归档时间: |
|
查看次数: |
1222 次 |
最近记录: |