gpt4 book ai didi

python - 让 Emacs 使用 rst-mode 编辑 Python 文档字符串

转载 作者:太空狗 更新时间:2023-10-29 17:46:04 26 4
gpt4 key购买 nike

如何让 Emacs 在 Python 文件的文档字符串中使用 rst-mode?我依稀记得在一个文件的某些区域内可能有不同的模式,但我不记得它是如何完成的。

最佳答案

支持的 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)

我用一些 Python 程序对此进行了测试,它似乎可以正常工作。

请注意,这将为每个三引号字符串切换到 rst-mode,而不仅仅是函数定义开头的字符串。您可以将它限制为仅使用更复杂的前端正则表达式的函数定义开头的那些,但我不完全确定如何处理它,因为我认为默认情况下的 mmm 模式定义一次匹配一行。

编辑:我的原始版本会在单行文档字符串处将 Emacs 置于第一个模式,然后将其保持在该模式直到下一个文档字符串开始。如果在文档字符串开头的同一行上有另一个双引号,此版本避免将 Emacs 置于 rst-mode,这仍然不完美,但应该更接近。

关于python - 让 Emacs 使用 rst-mode 编辑 Python 文档字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15493342/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com