def run(self, edit):
if not check_extension(self.view.file_name(), self.view.name()):
return
vgs = get_prefs()
fname = vgs.get("header", "")
if fname == "example":
if ST3:
text = sublime.load_resource('Packages/Verilog Gadget/template/verilog_header.v')
else:
fname = os.path.join(sublime.packages_path(), 'Verilog Gadget/template/verilog_header.v')
if fname != "example":
if fname.startswith('Packages'):
fname = re.sub('Packages', sublime.packages_path(), fname)
if not os.path.isfile(fname):
disp_error("Insert Header : File not found (" + fname + ")")
return
else:
with open(fname, "r", encoding="utf8") as f:
text = str(f.read())
# replace {DATE}, {FILE}, {YEAR}, {TIME}, {TABS}, {SUBLIME_VERSION}
date = time.strftime('%Y-%m-%d', time.localtime())
year = time.strftime('%Y', time.localtime())
ntime = time.strftime('%H:%M:%S', time.localtime())
tabs = str(self.view.settings().get('tab_size'))
enco = self.view.encoding()
sver = sublime.version()[0]
text = re.sub("{DATE}", date, text) # {DATE}
text = re.sub("{YEAR}", year, text) # {YEAR}
text = re.sub("{TIME}", ntime, text) # {TIME}
text = re.sub("{TABS}", tabs, text) # {TABS}
text = re.sub("{SUBLIME_VERSION}", sver, text) # {SUBLIME_VERSION}
_file = re.compile(r"{FILE}").findall(text)
if _file:
fname = self.view.file_name()
if not fname:
disp_msg("Insert Header : Save with name")
fname = ""
else:
fname = os.path.split(fname)[1]
text = re.sub("{FILE}", fname, text) # {FILE}
self.view.insert(edit, 0, text)
评论列表
文章目录