0

0

sublime如何设置窗口启动位置和尺寸?(多屏用户优化)

穿越時空

穿越時空

发布时间:2026-01-22 02:25:10

|

104人浏览过

|

来源于php中文网

原创

不能。Sublime Text 各平台原生启动器均不支持--geometry等窗口定位参数,需依赖配置文件remember_window_position设置或AutoHotkey/macOS+Slate等外部工具强制干预。

sublime如何设置窗口启动位置和尺寸?(多屏用户优化)

sublime_text.exe 启动参数能否控制窗口位置和尺寸?

不能。Sublime Text 的 Windows 原生启动器 sublime_text.exe 不接受 --geometry--pos 或类似 X11 风格的命令行参数,传入会被忽略。

macOS 和 Linux 版本也无内置 CLI 窗口定位支持。所有平台都依赖配置文件或外部工具干预。

通过 Preferences → Settings 修改 remember_window_position

这是最直接的干预点:Sublime 默认会记住上次关闭时的位置和大小,但多屏环境下容易“记错”——比如在副屏关闭,下次主屏启动时窗口可能卡在不可见区域。

  • "remember_window_position": true(默认)→ 会读取 Local/Session.sublime_session 中的坐标,但该坐标是绝对屏幕坐标,不随显示器热插拔/缩放比例变化而适配
  • "remember_window_position": false → 每次启动都回到“系统默认位置”,通常是主屏左上角附近,尺寸为默认值(约 1200×800),适合多屏切换频繁的用户
  • 改完后需完全退出 Sublime(右键托盘图标 → Exit,或任务管理器结束 subl.exe 进程),否则设置不生效

用 AutoHotkey 强制定位 Sublime 窗口(Windows 多屏首选)

当需要精确控制(例如:始终在副屏居中、固定宽度+高度、避开任务栏),AutoHotkey 是目前最可靠方案。它在 Sublime 启动后几毫秒内捕获窗口并移动/缩放。

Thiings
Thiings

免费的拟物化图标库

下载

示例脚本(保存为 subl-position.ahk,用 AutoHotkey v2 运行):

SetTitleMatchMode, "RegEx"
Run, "C:\Program Files\Sublime Text\sublime_text.exe"
WinWait, "Sublime Text.*", , 3
if (WinExist()) {
    WinMove("Sublime Text.*", "", 1920, 100, 1200, 900)  ; x=1920 即副屏起始横坐标(主屏宽1920px时)
}
  • 关键点:WinWait 等待窗口出现,WinMove 执行定位;x 值必须匹配你当前副屏的逻辑起始横坐标(可用 WinGetPos 先探测)
  • 若副屏分辨率/缩放比变化(如从 100% 切到 125%),需同步调整 WinMove 的宽高值,否则内容被裁剪
  • 避免用 RunWait,否则会阻塞脚本,导致窗口无法捕获

macOS 上用 applescript + slate 实现类似效果

macOS 原生不提供窗口坐标 API 给第三方 App,但可通过辅助功能权限 + osascript 调用 slate(开源窗口管理器)完成定位。

先安装 slate:brew install slate,再运行:

open -a "Sublime Text"
sleep 0.5
osascript -e 'tell application "Slate" to move window of application "Sublime Text" to {1440, 20, 1200, 900}'
  • {1440, 20, 1200, 900} 表示 x=1440(副屏起点)、y=20、宽1200、高900;数值需根据你的双屏布局实测调整
  • 必须提前在「系统设置 → 隐私与安全性 → 辅助功能」中勾选 SlateTerminal(或你执行脚本的终端)
  • 如果 Sublime 启动慢于 sleep 0.5,窗口可能尚未就绪,建议加 repeat while... 循环检测
多屏下真正稳定的方案,永远不是靠 Sublime 自身记忆,而是用外部工具在窗口创建后立刻接管——坐标值、缩放补偿、显示器热插拔响应,这些细节漏掉一个,窗口就可能消失在视野之外。

相关专题

更多
while的用法
while的用法

while的用法是“while 条件: 代码块”,条件是一个表达式,当条件为真时,执行代码块,然后再次判断条件是否为真,如果为真则继续执行代码块,直到条件为假为止。本专题为大家提供while相关的文章、下载、课程内容,供大家免费下载体验。

91

2023.09.25

session失效的原因
session失效的原因

session失效的原因有会话超时、会话数量限制、会话完整性检查、服务器重启、浏览器或设备问题等等。详细介绍:1、会话超时:服务器为Session设置了一个默认的超时时间,当用户在一段时间内没有与服务器交互时,Session将自动失效;2、会话数量限制:服务器为每个用户的Session数量设置了一个限制,当用户创建的Session数量超过这个限制时,最新的会覆盖最早的等等。

314

2023.10.17

session失效解决方法
session失效解决方法

session失效通常是由于 session 的生存时间过期或者服务器关闭导致的。其解决办法:1、延长session的生存时间;2、使用持久化存储;3、使用cookie;4、异步更新session;5、使用会话管理中间件。

741

2023.10.18

cookie与session的区别
cookie与session的区别

本专题整合了cookie与session的区别和使用方法等相关内容,阅读专题下面的文章了解更详细的内容。

88

2025.08.19

CSS position定位有几种方式
CSS position定位有几种方式

有4种,分别是静态定位、相对定位、绝对定位和固定定位。更多关于CSS position定位有几种方式的内容,可以访问下面的文章。

81

2023.11.23

windows查看端口占用情况
windows查看端口占用情况

Windows端口可以认为是计算机与外界通讯交流的出入口。逻辑意义上的端口一般是指TCP/IP协议中的端口,端口号的范围从0到65535,比如用于浏览网页服务的80端口,用于FTP服务的21端口等等。怎么查看windows端口占用情况呢?php中文网给大家带来了相关的教程以及文章,欢迎大家前来阅读学习。

621

2023.07.26

查看端口占用情况windows
查看端口占用情况windows

端口占用是指与端口关联的软件占用端口而使得其他应用程序无法使用这些端口,端口占用问题是计算机系统编程领域的一个常见问题,端口占用的根本原因可能是操作系统的一些错误,服务器也可能会出现端口占用问题。php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

1124

2023.07.27

windows照片无法显示
windows照片无法显示

当我们尝试打开一张图片时,可能会出现一个错误提示,提示说"Windows照片查看器无法显示此图片,因为计算机上的可用内存不足",本专题为大家提供windows照片无法显示相关的文章,帮助大家解决该问题。

795

2023.08.01

AO3中文版入口地址大全
AO3中文版入口地址大全

本专题整合了AO3中文版入口地址大全,阅读专题下面的的文章了解更多详细内容。

1

2026.01.21

热门下载

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

精品课程

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

共48课时 | 7.5万人学习

Git 教程
Git 教程

共21课时 | 2.9万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号