在ipython
中,我可以使用?
来获取其前面对象的文档,例如os.path.join?<enter>
。然后我得到这样的输出:
Signature: os.path.join(a, *p)
Docstring:
Join two or more pathname components, inserting '/' as needed.
If any component is an absolute path, all previous path components
will be discarded. An empty last part will result in a path that
ends with a separator.
File: ~/conda/envs/test/lib/python3.6/posixpath.py
Type: function
我想将此输出加载到Vim中并突出显示语法。
filetype
?filetype
描述此格式,如何设置其语法突出显示?答案 0 :(得分:0)
如果Vim带有突出显示的语法,则很可能还会有文件类型检测,因为这些通常会一起出现。您可以搜索Internet是否有人已经在vim.org和/或GitHub存储库中为其创建了语法并将其发布。
要开始开发自己的语法,请参见:help :syn-define
和:help usr_44.txt
。
例如,要突出显示Signature:
,File:
,...前缀,您可以使用:
syntax match pythondocPrefix "^\a\+:"
建议不要链接到自定义颜色,而是链接到现有的高光组。 cp。 :help highlight-groups
。
highlight def link pythondocPrefix Type
这只是一个开始;您可以根据需要定义尽可能多的不同元素!它有助于查看现有的语法脚本(在$VIMRUNTIME/syntax/
中),以了解其完成方式。对于Signature:
之后的Python字符串,最好在其中包含Python语法。参见:help :syn-include
。
您已将所有这些命令放入文件~/.vim/syntax/pythondoc.vim
中。 :help 44.12
还有其他提示。
通常,您随后将定义一个具有检测功能的:help new-filetype
,但是由于您显然想通过自定义映射或命令来触发文档查找,因此可以直接在该暂存缓冲区中:setlocal syntax=pythondoc
。