copyfilename插件是sublime text中唯一可靠实现一键复制纯文件名(如settings.json)的方案,它轻量稳定、专注单一功能,需手动安装并配置快捷键,未保存文件不支持。

CopyFileName 插件是唯一可靠方案
Sublime Text 原生没有 copy_file_name 命令,也不存在一键复制纯文件名(如 settings.json)的功能。所有声称“原生支持”的说法都不准确——你搜 Copy File Name 或在命令面板里输类似关键词,看到的一定是插件提供的命令。
目前最轻量、稳定、专注这事的插件是 CopyFileName。它不改菜单、不加右键项、不附带其他功能,只做一件事:按下快捷键,把当前已保存文件的纯文件名(含扩展名,不含路径)塞进剪贴板。
- 安装方式:按
Ctrl+Shift+P(Win/Linux)或Cmd+Shift+P(macOS)→ 输入Package Control: Install Package→ 搜CopyFileName→ 回车 - 验证是否装好:菜单
Preferences → Package Control → List Packages里能看到CopyFileName - 默认快捷键:
Ctrl+Alt+C(Win/Linux)、Cmd+Alt+C(macOS) - 注意:未保存的
untitled标签页无效;焦点必须在编辑区(不能在侧边栏或控制台)
别误用 copy_file_path 或 Copy Full Path
很多人装错插件或点错命令,结果复制出一长串路径,比如 /home/user/project/src/main.py,这不是你要的“文件名”。关键区别在于命令名和行为:
-
copy_file_path是 Sublime 原生命令,但输出的是绝对路径,不是文件名;它默认没快捷键,需手动绑定 - 插件名带
Full Path、Absolute Path的(如某些Copy Full Path),大概率也是输出完整路径,不是文件名 -
SideBarEnhancements的右键Copy Path项,默认也是绝对路径;它的Copy Relative Path则依赖项目结构,且仍不是纯文件名 - 命令面板里搜 “file name” 没结果?说明插件根本没装成功,别硬试
快捷键冲突常见于中文输入法和系统级热键
Ctrl+Alt+C 和 Cmd+Alt+C 看似顺手,但实际容易失效,原因很具体:
- Windows 上,中文输入法常劫持
Ctrl+Alt+C弹候选框;macOS 上,Cmd+Option+C和系统截图快捷键冲突 - Sublime 不会提示冲突,只会静默失败——按了没反应,你可能以为插件坏了
- 解决方案:打开
Preferences → Key Bindings,在右侧用户配置中换一组更安全的组合,例如:[ {"keys": ["ctrl+k", "ctrl+c"], "command": "copy_file_name"} ] - 注意:命令名必须是
copy_file_name(全小写+下划线),不是CopyFileName或copy_filename;拼错就完全不响应
没装插件时的临时替代:控制台一行命令
真不想装插件,又急需复制一次文件名,可以临时用控制台命令,但仅限应急:
- 按
Ctrl+`(反引号)调出 Sublime 控制台 - 输入并回车:
view.file_name().split('/')[-1] if view.file_name() else ""(macOS/Linux)或view.file_name().split('\')[-1] if view.file_name() else ""(Windows) - 结果会打印在控制台里,手动选中复制即可
- 缺点明显:不能一键、不跨平台、未保存文件返回空、每次都要敲、不适用于批量操作
真正需要频繁传输文件名的场景,插件不是可选项,而是必要条件。容易被忽略的一点是:插件启用后,快捷键不会自动覆盖已有绑定——如果你之前给 copy_file_path 绑过 Ctrl+Alt+C,那现在按这个组合键复制的仍是路径,不是文件名。得先删掉旧绑定,再确认新命令生效。











