python - 如何为 python 文件设置自动 header

标签 python vim

描述了 python 中正确的 header 格式 here .

使用 VIM 或 shell 脚本,我希望将常用的元数据(如 __author__、__authors__、__contact__、__copyright__、__license__、__deprecated__、__date__ 和 __version__)添加到文件头。 SVN 关键字也不错。将它添加到新文件是最相关的。将它添加到现有文件是一种奖励。

Ruslan's Blog 有 Emacs 的解决方案。但是我找不到适用于 Python 的解决方案。

对于没有 Emacs 的 python,这是在哪里完成的? VIM 可以将文本从一个文件复制到另一个文件 like so ,但也许有更好的方法。

最佳答案

我强烈推荐 snipMate插入。您可以轻松地为每种文件类型添加新的片段,只需输入关键字并点击标签即可触发它们,例如您可以点击

header<TAB>

所有字段都将被添加,您可以轻松地通过 Tab 键浏览任何需要在每个文件基础上填写的字段。在内置的 python 代码片段 (vimfiles/snippets/python.snippets) 中甚至已经有一个名为 docs 的代码片段,看起来它为文档字符串填充了类似的元数据,您可以根据自己的目的轻松修改它,这里是一个示例截图格式:

# Module Docstring
snippet docs
    '''
    File: ${1:`Filename('$1.py', 'foo.py')`}
    Author: ${2:`g:snips_author`}
    Description: ${3}
    '''

在您的片段中使用反引号支持动态条目(文件名和 g:snips_author 作为上面的 tabbable 条目 1 和 2 的默认值)。可以添加日期:

`system("date +%Y-%m-%d")`

(来自 snipMate 帮助文档)。

关于python - 如何为 python 文件设置自动 header ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6201302/

相关文章:

vim - 如何使用vi用缓冲区中的内容替换当前行

python - ElementTree - findall 递归选择所有子元素

python - Pymongo 匹配和排序

vim - vim 上有 cit、dit、yit(更改、删除、猛拉标签内)...是否有类似 pit(粘贴到标签内?)

vim - 跨选项卡自动调整 Vim 中的拆分大小

vim - 在 vim 中将一行从一个屏幕移动到另一个屏幕

vim - 如何禁用 vim 中的所有键映射?

python - Tkinter 将鼠标点击绑定(bind)到框架

python - 从 Python 启动一个完全独立的进程

python - 使用生成器从给定的单词造句