Sublime怎么设置自动生成作者信息?Sublime自定义文件头部注释

陌辰小哥_1400

陌辰小哥_1400

2026-04-12

545人浏览

原创

sublime text需插件实现自动添加作者信息:fileheader插件需配置settings-user变量、语言模板占位符及正确文件后缀;严格场景须用on_pre_save自定义插件,动态生成日期并正则校验头部。

sublime怎么设置自动生成作者信息?sublime自定义文件头部注释

Sublime Text 本身不支持开箱即用的「新建或保存时自动加作者信息」,必须靠插件或自定义逻辑驱动。官方设置里改 Preferences → Settings 没用,靠 snippet 或 key binding 也只解决手动触发问题——真要自动化,得明确选对机制:新建文件时注入,还是保存时检查补全。

FileHeader 插件是最快上手方案,但必须配对模板和变量

它不是装完就生效,关键在三处联动:

  • Package Settings → File Header → Settings-User 里填好变量,比如:
    {
      "Default": {
        "author": "Zhang San",
        "email": "zhang@example.com",
        "desc": ""
      }
    }
  • 进 Preferences → Browse Packages → FileHeader/template/header/,找到对应语言的 .tmpl 文件(如 python.tmpl),确保里面用了 {{author}}、{{email}} 这类占位符,且拼写和 Settings-User 里完全一致
  • 新建文件后必须立刻保存为指定后缀(如 .py),否则插件无法识别语言类型,不会渲染模板

常见失败点:Settings-User 里写成 "Author"(首字母大写),但模板里是 {{author}} ——大小写不匹配就留空;或者保存前没选后缀,Sublime 默认当 Plain Text 处理,跳过所有语言相关逻辑。

on_pre_save 自定义插件才是真自动,适合团队统一规范

FileHeader 对保存事件响应弱,也不支持「已有头部就不重复加」的判断。如果要求严格(比如 CI 检查头部必须存在、日期必须是保存时间),就得自己写 Python 插件:

学习导航
学习导航

一款AI开发辅助工具,主要用于学习者优质的学习网址导航网站,适合需要提升相关任务效率的用户。

下载
  • 监听 on_pre_save 事件,不是 on_post_save(后者已写入磁盘,改了也白改)
  • 用正则检查文件开头 3 行是否含 # -*-、/**、//、# @Author 等标记,有则跳过
  • 模板从 Packages/User/file_header_template.json 读取,避免硬编码,方便 Git 同步团队配置
  • 日期必须用 datetime.now().strftime("%Y-%m-%d") 动态生成,不能写死或依赖 snippet 的 ${date}(它只在插入瞬间解析)

注意:插件代码里调用 view.insert() 要传 edit 对象,且位置必须是 0(文件开头);直接 view.replace(edit, region, text) 替换前几行更稳妥,避免空行错位。

snippet 只适合手动触发,别指望它自动运行

很多人误以为建个 .sublime-snippet 就能“自动”加头,其实它本质是快捷补全工具:

  • 触发靠 <tabtrigger>header</tabtrigger>,必须手动输 header 再按 Tab
  • ${date} 在 snippet 里不自动更新,实际插入的是当前时间字符串,不是动态值
  • <scope>source.python</scope> 能限定语言,但无法阻止你在 .txt 文件里误触发
  • 想让新建文件一打开就带头?不行。除非你绑定一个 new_file 事件插件去自动触发该 snippet,那又绕回插件方案了

所以 snippet 更适合快速补全函数级注释,或作为插件失效时的备用手段,不是自动化解法。

真正难的不是加一行作者名,而是让这个行为稳定、可维护、不污染非目标文件。模板路径写错、正则漏掉某种注释风格、日期格式和团队规范不一致——这些细节出问题,比功能没实现还难排查。

相关文章

PHP速学视频免费教程(入门到精通)
PHP速学视频免费教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

相关标签:

sublime

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
json数据格式
json数据格式

JSON是一种轻量级的数据交换格式。本专题为大家带来json数据格式相关文章,帮助大家解决问题。

2023.08.07

1995

5

json是什么
json是什么

JSON是一种轻量级的数据交换格式,具有简洁、易读、跨平台和语言的特点,JSON数据是通过键值对的方式进行组织,其中键是字符串,值可以是字符串、数值、布尔值、数组、对象或者null,在Web开发、数据交换和配置文件等方面得到广泛应用。本专题为大家提供json相关的文章、下载、课程内容,供大家免费下载体验。

2023.08.23

2842

1

jquery怎么操作json
jquery怎么操作json

操作的方法有:1、“$.parseJSON(jsonString)”2、“$.getJSON(url, data, success)”;3、“$.each(obj, callback)”;4、“$.ajax()”。更多jquery怎么操作json的详细内容,可以访问本专题下面的文章。

2023.10.13

976

3

go语言处理json数据方法
go语言处理json数据方法

本专题整合了go语言中处理json数据方法,阅读专题下面的文章了解更多详细内容。

2025.09.10

3199

7

js 字符串转数组
js 字符串转数组

js字符串转数组的方法:1、使用“split()”方法;2、使用“Array.from()”方法;3、使用for循环遍历;4、使用“Array.split()”方法。本专题为大家提供js字符串转数组的相关的文章、下载、课程内容,供大家免费下载体验。

2023.08.03

1598

5

js截取字符串的方法
js截取字符串的方法

js截取字符串的方法有substring()方法、substr()方法、slice()方法、split()方法和slice()方法。本专题为大家提供字符串相关的文章、下载、课程内容,供大家免费下载体验。

2023.09.04

2384

5

java基础知识汇总
java基础知识汇总

java基础知识有Java的历史和特点、Java的开发环境、Java的基本数据类型、变量和常量、运算符和表达式、控制语句、数组和字符串等等知识点。想要知道更多关于java基础知识的朋友,请阅读本专题下面的的有关文章,欢迎大家来php中文网学习。

2023.10.24

5864

49

字符串介绍
字符串介绍

字符串是一种数据类型,它可以是任何文本,包括字母、数字、符号等。字符串可以由不同的字符组成,例如空格、标点符号、数字等。在编程中,字符串通常用引号括起来,如单引号、双引号或反引号。想了解更多字符串的相关内容,可以阅读本专题下面的文章。

2023.11.24

5089

6

java读取文件转成字符串的方法
java读取文件转成字符串的方法

Java8引入了新的文件I/O API,使用java.nio.file.Files类读取文件内容更加方便。对于较旧版本的Java,可以使用java.io.FileReader和java.io.BufferedReader来读取文件。在这些方法中,你需要将文件路径替换为你的实际文件路径,并且可能需要处理可能的IOException异常。想了解更多java的相关内容,可以阅读本专题下面的文章。

2024.03.22

6814

16

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程