我想知道是否有办法创建一个脚本或自动播放器任务,它将打开具有预设大小和位置的窗口。我想用应用程序以及finder窗口来做这件事。
例如,我想打开Sublime,让它占据屏幕的上半部分,然后打开Chrome占据屏幕的下半部分。
另一个例子是我想打开四个取景器窗口,每个窗口占据屏幕的四分之一。
答案 0 :(得分:0)
我建议使用脚本编辑器编写一些AppleScripts,以满足不同应用程序的不同布局要求。
我将演示如何使用您的第一个以 Sublime 和 Google Chrome 为主题的示例,这些示例将占据上半部分和下半部分屏幕分别。
此脚本假定应用程序已在运行,并且每个应用程序都有可见的窗口可供操作。它实际上是一个非常短的脚本,但看起来很长,因为我在每个阶段插入的注释行(它们以--
开头)引导您完成脚本的每个部分所做的事情:
tell application "System Events"
set Chrome to the front window of application process "Google Chrome"
set Sublime to the front window of application process "Sublime Text"
-- Get the size of the screen's display in pixels
get the size of scroll area 1 of application process "Finder"
set Display to {width:item 1, height:item 2} of the result
-- First attempt to make Sublime take up the full width and
-- height of the display.
set position of Sublime to [0, 0]
set size of Sublime to [the Display's width, the Display's height]
-- However, the presence of a visible menu bar and dock
-- will create natural barriers that the window won't cross.
-- Retrieve the actual size and position that Sublime's
-- window ended up adopting.
set [_w, _h] to the size of Sublime
set [_x, _y] to the position of Sublime
-- Half Sublime's window's height. It should now be
-- correctly positioned and sized.
set the size of Sublime to [_w, _h / 2 - 1]
-- Position Chrome first so that its horizontally aligned
-- with Sublime, and the top edge of Chrome's window's meets
-- the bottom edge of Sublime's.
set position of Chrome to [_x, _y + _h / 2]
-- Then size Chrome's window identically to that of Sublime.
set size of Chrome to [_w, _h / 2 - 1]
end tell
-- Lastly, bring both applications to the foreground
activate application "Sublime Text"
activate application "Google Chrome"
请记住,这只是一个快速示例,说明如何在给定最佳起点的情况下完成此任务(两个应用程序都打开,每个应用程序都有一个活动窗口)。但是,您可能希望采用处理不太理想情况的方法,例如,如果您在打开 Chrome 之前意外触发了脚本,那么您希望脚本的行为如何;或者如果您希望将四个 Finder 窗口安排到屏幕的不同角落,但当时有五个窗口打开。
或者,您可以花费大约1美元从 App Store 获取应用程序,该应用程序将根据您希望的任何安排来确定窗口的大小和位置。这是一个:
答案 1 :(得分:0)
至少在 Sublime 上,我通过以下三个简单步骤解决了该问题
Preferences.sublime-preferences
"remember_full_screen": true
打开崇高状态
手动调整升华窗口的大小至所需大小(最大高度和宽度)
☝️
按照上述步骤操作后,现在每次打开崇高状态(即使使用subl
),崇高状态也会在我手动调整其大小的最后一个窗口中打开。