必须手动安装适配st4的autofilename_st4分支,因原版已停更且不兼容python 3.8+;ctrl+space无反应是插件根本未加载,需卸载旧版、克隆正确仓库、文件夹名严格为autofilename、重启或重载插件。

Sublime 原生不支持磁盘路径自动补全,AutoFileName 是目前唯一能稳定工作的方案;但直接从 Package Control 安装的旧版在 Sublime Text 4 上必然失效,必须用适配 ST4 的分支手动安装。
为什么 Ctrl+Space 没反应?先确认是不是装对了版本
ST4 的 API 变动导致原版 AutoFileName 加载失败,控制台常报 AttributeError: 'NoneType' object has no attribute 'groups'。这不是配置问题,是插件根本没跑起来。
- 别在 Package Control 里搜
AutoFileName直接安装——它推的是已停更的旧版 - 卸载旧版:按
Ctrl+Shift+P→ 输入Package Control: Remove Package→ 选中并删除AutoFileName - 去 GitHub 下载适配 ST4 的版本:BoundInCode/AutoFileName_ST4,只取
auto_file_name.py文件 - 打开
Preferences → Browse Packages…,进入用户Packages目录,在里面新建文件夹叫AutoFileName(注意拼写和大小写) - 把
auto_file_name.py放进该文件夹,确保路径是Packages/AutoFileName/auto_file_name.py - 重启 Sublime,或在控制台执行
sublime_plugin.reload_plugin("AutoFileName.auto_file_name")
路径补全不弹出?检查当前文件语法和触发上下文
AutoFileName 不是全局字符串补全工具,它只在特定作用域、特定字符后响应。比如 src=" 会触发,但 class=" 不会;url( 会触发,但 const p = " 不会。
- 右下角状态栏必须显示
HTML、CSS、JavaScript或Vue等合法语法,不能是Plain Text - 光标处作用域需为路径相关 scope,如
string.quoted.double.html,可用Ctrl+Shift+P → Developer: Show Scope Name验证 - 默认触发字符包括:
src="、href="、url(、import '、require("等,注意引号是否已输入 - JS/TS 中的
import补全仅限单引号或双引号内,模板字符串`${...}`不支持
补全列表为空或漏路径?项目根目录和扫描范围得设对
插件依赖项目根目录做相对路径解析,没加文件夹到 Project 就等于没根目录,补全必然失败;另外大项目默认深度扫描容易卡顿或跳过深层子目录。
- 必须执行
Project → Add Folder to Project,让 Sublime 知道“当前项目在哪” - 打开
Preferences → Package Settings → AutoFileName → Settings,在用户设置中加:
{
"auto_filename_exclude_patterns": ["\.git", "dist", "build", "node_modules"],
"auto_filename_include_patterns": ["src/**", "public/**"],
"auto_filename_alias_map": {
"@": "src",
"#": "src/utils"
}
}
其中 auto_filename_alias_map 是关键,否则 @/components/Button.vue 这类 Webpack/Vite 别名不会被识别为真实路径。
补全慢、卡顿、或者只显示一级目录?关掉深度扫描或限制层级
默认递归扫描整个项目树,遇到 node_modules 或嵌套很深的资源目录时,不仅响应慢,还可能因超时漏掉 src/assets/icons/arrow.svg 这种深层路径。
- 在
AutoFileName设置中添加"auto_filename_max_depth": 4,限制最多扫描 4 层子目录 - 若完全不需要动态扫描(比如项目结构固定),可设
"auto_filename_scan_on_load": false,改用手动刷新 - 想临时禁用扫描看是否卡顿来源?删掉或注释掉
auto_filename_include_patterns,只留排除项测试
别指望它像 VS Code 那样实时监听文件增删——AutoFileName 是静态快照式扫描,文件新增后要手动触发刷新(目前无快捷键,只能重启插件或重载项目)。











