当我编辑并保存文件时,有一种方式是sublime文本自动更新文件注释块中的日期吗?
像:
/**
* @author yada yada
* @date 2015-01-08
*/
为:
/**
* @author yada yada
* @date 2015-01-19
*/
答案 0 :(得分:4)
偏好设置>密钥绑定 - 用户
[
{"keys": ["ctrl+s"], "command": "date_and_save" }
]
add_date.py
'''
Autodate header
@date <>
'''
from datetime import datetime
import sublime, sublime_plugin
class AddDateCommand(sublime_plugin.TextCommand):
def run(self, args):
content = self.view.substr(sublime.Region(0, self.view.size()))
begin = content.find('@date <',0,100)
if begin == -1:
return
end = content.find("\n", begin)
target_region = sublime.Region(begin, end)
self.view.sel().clear()
self.view.sel().add(target_region)
self.view.run_command(
"insert_snippet",
{ "contents": "@date <%s>" % datetime.now().strftime("%Y-%m-%d %H:%M:%S") } )
class DateAndSaveCommand(sublime_plugin.WindowCommand):
def run(self):
self.window.run_command("add_date")
self.window.run_command("save")
\ o /
答案 1 :(得分:0)
很棒的东西!上述解决方案的一小部分:
而不是
end = begin + 19
这一行会使它变得更具动态性,因为它会消除所有内容直到行尾。
end = content.find("\n", begin)
帮助进行版本控制,例如,行长度可能会有所不同。