Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/360.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/vim/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何为python文件自动生成头文件_Python_Vim - Fatal编程技术网

如何为python文件自动生成头文件

如何为python文件自动生成头文件,python,vim,Python,Vim,描述了python中正确的头格式 使用VIM或shell脚本,我希望将常用元数据(如\uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu。SVN关键字也很好。将其添加到新文件是最相关的。将其添加到现有文件是一个额外的好处 有一个针对Emacs的解决方案

描述了python中正确的头格式

使用VIM或shell脚本,我希望将常用元数据(如
\uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu。SVN关键字也很好。将其添加到新文件是最相关的。将其添加到现有文件是一个额外的好处

有一个针对Emacs的解决方案。但我无法找到Python的解决方案


在没有Emacs的情况下,python在哪里做到了这一点?VIM可以将文本从一个文件复制到另一个文件,但可能有更好的方式。

< P>这是我的C++文件模板:

/*****************************************************************************
 * @file <file_name>
 *
 * @date <date>
 * @author John Doe
 * @email jdoe@yourcompany.com
 *
 * @brief
 *
 * @detail
 *
 *****************************************************************************/
基本上,我阅读模板文件,用实际信息替换标记和,并将结果插入新创建的文件中。每当vim创建新文件时,都会调用函数
s:insert_description()
。这是由最后一行的
autocmd
设置的

你可以根据这段代码为python创建一个等价物。

只要转到并在那里搜索“新文件模板”,你就会得到大量解决这类问题的插件,所以请查看它们并选择一个。

我强烈推荐该插件。您可以很容易地根据文件类型添加新的剪报,只需键入关键字并点击tab即可触发剪报,例如,您可以点击

header<TAB>
在snip中使用反勾号支持动态条目(Filename和g:snips\u author作为上述选项卡条目1和2的默认值)。可将日期添加为:

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

(来自snipMate帮助文档)。

snipMate的有趣用法。我真的需要学习grok snipMate。文件创建和编辑日期、作者和版本信息都由源代码管理维护。我不理解在文件本身中添加此信息的冗余(可能不准确或过时)副本的用例。将版权/许可证信息放入许可证文件,并将其保留在源代码之外。这在那里毫无用处。项目版本信息应该在项目的某个地方存在一次,而不是在每个文件的头中。联系信息在您的自述中。简而言之,这些标记都不属于源代码的顶部。
# Module Docstring
snippet docs
    '''
    File: ${1:`Filename('$1.py', 'foo.py')`}
    Author: ${2:`g:snips_author`}
    Description: ${3}
    '''
`system("date +%Y-%m-%d")`