我开始使用doxygen来生成我的Python代码的文档.
我使用doxypy过滤器来预处理Python文档字符串.
我的目标是在Python中有一个很好的语法突出显示doxygen注释.
在专用.dox文件中编写主页时,我发现可以使用以下命令在vim中突出显示doxygen注释:
set syntax=c.doxygen
我为Python尝试了相同的命令,但我什么都没得到:
set syntax = python.doxygen
我也做了一些谷歌搜索,找不到任何有趣的东西
这是我要强调的一段典型代码:
class CompilationTab:
"""
The compilation tab of the verif GUI. It contains the layout description
and the functions required to deal with specific behaviors of the tab
"""
def __init__(self, notebook, tab_name):
"""
The class constructor.
@param notebook Notebook: The parent @c Notebook widget
@param tab_name String: The display name of the tab
"""
有人已经解决了这个问题吗?
谢谢你的帮助!
解决方法:
如果你查看syntax / doxygen.vim,你可以阅读目前只有文件的前导码
cpp, c, idl, doxygen and php
文件受支持.
由于doxygen.vim与syn region命令一起工作,我搜索了在syntax / python.vim中定义多行字符串的行.
定义此区域的命令的有趣部分是
syn region pythonString start=+[uU]\=\z('''\|"""\)+ end="\z1" keepend
派生自doxygen.vim和上面的行,您可以添加以下行
"delete the following line if you don't want to have enhanced colors
let g:doxygen_enhanced_color=1
runtime! syntax/doxygen.vim
syn region doxygenComment matchgroup=pythonString start=+[uU]\=\z('''\|"""\)+ end="\z1" contains=doxygenSyncStart,doxygenStart,doxygenTODO keepend fold containedin=pythonString
到〜/ .vim / after / syntax / python.vim或手动执行它们.
此外,您可能需要手动自定义添加的doxygen突出显示组的颜色.至少我会这样做,因为由此产生的外观不符合我的口味.
也许syn命令的fold参数对您特别感兴趣.如果将foldmethod设置为语法,则可以折叠和展开多行注释.如果你再也不能忍受这些颜色的看法并且懒得调整它们,这似乎是有用的:)
没有doxygen突出显示:
使用doxygen高亮显示和g:doxygen_enhanced_color == 1: