sublime text 不支持复制整个编辑窗口,用户实际需求通常为复制文件路径、全文内容或当前行;需确保文件已保存才能用 copy_file_path 命令,全选推荐 ctrl+home 后 ctrl+shift+end(win/linux)或 cmd+shift+down(macos),复制当前行应先按 ctrl+l 再 ctrl+c。

Sublime Text 没有“复制当前编辑窗口”这个操作——它不支持复制整个窗口(含标签页、侧边栏、状态栏等 UI 元素),你真正想做的,大概率是以下三件事之一:复制当前文件路径、复制当前文件全部内容,或复制当前标签页中光标所在行。别被“窗口”这个词带偏,先确认目标。
copy_file_path 命令只在文件已保存时有效
想复制当前文件的绝对路径(比如 /home/user/project/main.py),必须确保该文件已保存——未保存的 untitled 标签页、插件生成的临时视图(如 Git diff 面板、REPL 输出)、符号链接跳转后的实际路径,都会让 copy_file_path 返回空或无响应。
- 验证方式:看窗口标题栏是否显示带扩展名的文件名,且右下角状态栏有明确路径提示(哪怕只显示目录名)
- 快捷键需手动绑定:
ctrl+alt+c(Windows/Linux)或super+alt+c(macOS),不能直接套用 Windows 键位 - 命令名必须是
copy_file_path(全小写+下划线),拼错就无效 - 改完
Preferences → Key Bindings用户配置后,不用重启,但旧窗口需切换焦点或新开标签页才生效
复制整文件内容:Ctrl+A 后 Ctrl+C 不可靠
直接按 Ctrl+A 全选再 Ctrl+C 看似简单,但在 Sublime 中容易出问题:换行符处理不一致,可能多出空行、缩进错位,尤其在 JSON/YAML 或折叠代码里。
- 更稳做法:先按
Ctrl+Home(跳到文件开头),再按Ctrl+Shift+End(Windows/Linux)或Cmd+Shift+Down(macOS)选中全部内容,最后Ctrl+C - 如果文件极大(>10MB),Sublime 可能卡顿或崩溃;此时建议用终端命令
cat file.py | pbcopy(macOS)或cat file.py | clip(Windows)替代 - 注意:
Ctrl+A在某些语言模式(如 Markdown 表格内)会只选中局部,而非全文
复制当前行:Ctrl+L → Ctrl+C 是唯一跨场景可靠路径
所谓“复制当前编辑窗口”常被误理解为“复制光标所在行”,而 Sublime 默认不支持未选中时隐式复制整行——Ctrl+C 单独按几乎总是什么都没复制,尤其在 JSON、YAML 或含 Unicode 的行里失效概率极高。
-
Ctrl+L是起点:光标停在任意位置,按一次即选中该行(不含换行符);再按一次则包含换行符(粘贴到终端时自动换行) - 别用
Ctrl+Shift+D:它执行duplicate_line,只在下方插入副本,不触发系统剪贴板,切到浏览器按Ctrl+V仍粘出旧内容 - 已选中多行时按
Ctrl+Shift+D,会为每行都克隆一次,导致行数翻倍——这不是复制,是批量插入 - 不连续行复制要用列选择:
Alt+鼠标垂直拖选(Win/Linux)或Cmd+鼠标垂直拖选(macOS),松开后立刻按Ctrl+L扩展为整行,再Ctrl+C
真正容易被忽略的是:Sublime 的“复制”行为高度依赖“是否选中”和“是否已保存”,不是所有看起来像复制的操作都在往系统剪贴板写内容。别凭直觉按快捷键,先确认你要的到底是路径、全文,还是某一行——目标错了,后面全白忙。











