Python 为EnThound Corporation创建模板文件

Python 为EnThound Corporation创建模板文件,python,enthought,canopy,Python,Enthought,Canopy,我目前使用的是Enthough制作的应用程序,我要求我制作的每个文件都必须在顶部包含一条注释,说明作者是谁,文件是何时创建的,最后一次编辑的 我想知道是否有一种方法,当我在Canopy中创建一个新文件(特别是python文件)时,它可以在顶部用这些信息自动填充该文件。类似地,如果我在保存文件后重新打开该文件,或者每次新保存时,它都会自动用新的日期时间戳更新注释中最后编辑的相关部分 热情的申请已经通知我将问题提交给Stackoverflow,因此我希望这是合适的。是的,这是提问的正确地点 cano

我目前使用的是Enthough制作的应用程序,我要求我制作的每个文件都必须在顶部包含一条注释,说明作者是谁,文件是何时创建的,最后一次编辑的

我想知道是否有一种方法,当我在Canopy中创建一个新文件(特别是python文件)时,它可以在顶部用这些信息自动填充该文件。类似地,如果我在保存文件后重新打开该文件,或者每次新保存时,它都会自动用新的日期时间戳更新注释中最后编辑的相关部分


热情的申请已经通知我将问题提交给Stackoverflow,因此我希望这是合适的。

是的,这是提问的正确地点

canopy允许您通过使用宏录制器来执行此操作和许多其他自定义操作。在顶棚打开的情况下,选择工具>录制宏。键入该宏的名称,类似于带有标题的
new\u file\u
。然后在代码编辑器中单击,然后
ctrl-n
cmd-n
创建新文件并在顶部键入所需内容。然后,工具>停止宏录制,然后工具>编辑宏。您应该找到您创建的新代码,双击它应该会显示如果您执行它将运行的代码。我只写了
#Hello world
,得到了:

# -*- coding: utf-8 -*-

def run():
    code_task = get_active_task()
    code_task.new_file(factory_id='canopy.editor.code_editor', editor_type='Python')
    code_editor = code_task.active_editor
    cursor = code_editor.cursor
    cursor.write(u'# Hello world')
    code_editor.autoindent_newline()
好消息是这是纯python,因此如果您想添加今天的日期,可以对其进行类似的修改:

# -*- coding: utf-8 -*-
import datetime
def run():
    code_task = get_active_task()
    code_task.new_file(factory_id='canopy.editor.code_editor', editor_type='Python')
    code_editor = code_task.active_editor
    cursor = code_editor.cursor
    cursor.write(u'# Hello world %s' % datetime.datetime.now().strftime("%H-%M-%S"))
    code_editor.autoindent_newline()
最后,分配一个尚未使用的keybinding并退出