Sublime Text 无原生置顶功能,需依赖系统工具:Windows 用 AutoHotkey 脚本(Ctrl+T 切换),macOS 用 Slate + AppleScript,Linux 各桌面环境提供图形菜单或 wmctrl 命令。
Sublime Text 本身不提供窗口置顶功能,这是操作系统层级的控制权限,所有“置顶”方案都必须绕过编辑器、借助系统工具或脚本实现。
Windows:用 AutoHotkey 实现一键切换置顶(最灵活)
AutoHotkey 是 Windows 下最稳定、响应最快、且完全免费的方案。它不依赖后台服务,脚本轻量,还能复用于其他应用。
- 下载安装 AutoHotkey v2(推荐 v2,语法更清晰)
- 新建文本文件,保存为
subl-top.ahk,内容如下:
^t:: ; Ctrl+T 切换当前窗口置顶状态 WinSet, AlwaysOnTop, Toggle, A return
- 双击运行该脚本,确保任务栏右下角出现
AHk图标 - 激活
Sublime Text窗口,按Ctrl+T即可置顶;再按一次取消
⚠️ 注意:WinSet, AlwaysOnTop, Toggle, A 中的 A 表示“活动窗口”,无需写窗口标题,避免因版本名差异(如 Sublime Text 4 / Sublime Text)匹配失败;也比 wmctrl 类命令更可靠——后者在某些 Windows 版本或高 DPI 场景下可能失效。
macOS:用 Slate + AppleScript 实现无感置顶
macOS 原生不开放窗口层级 API,但通过辅助功能授权 + 第三方窗口管理器 Slate 可以稳定控制。它比 Stay 或 Afloat 更轻量、开源、可脚本化。
- 终端执行:
brew install slate(需先装 Homebrew) - 前往「系统设置 → 辅助功能 → 旁白/辅助控制」中,勾选
Slate - 创建脚本
subl-top.sh:
#!/bin/zsh open -a "Sublime Text" sleep 0.3 osascript -e 'tell application "Slate" to float window of application "Sublime Text"'
-
chmod +x subl-top.sh后运行,即可自动启动并置顶
⚠️ 注意:首次运行 osascript 会弹窗请求辅助功能权限,必须手动允许,否则命令静默失败;float 是 Slate 的置顶指令,不是 macOS 原生命令,不可替换为 set frontmost(后者只切前台,不锁层级)。