bash - 使用脚本操作 OS X 窗口

标签 bash macos applescript osx-elcapitan mission-control

好的,所以我试图通过创建一个我可以在早上运行的脚本来使我的设置变得 super 简单,该脚本将启动我当天使用的所有应用程序并将它们布置在我的“空间”中喜欢他们。

一切顺利,我可以轻松地让 bash 脚本启动应用程序,然后调用 AppleScript 来移动和调整窗口大小。

但是,我喜欢使用新的 El Capitan 功能并将我的一些空间设置为“ Split View”空间。例如。全屏 Xcode/终端拆分。我似乎找不到通过脚本控制它的方法。

Tl;dr 有谁知道如何获取 bash 脚本/AppleScript 以在 OS X El Capitan 上将两个应用程序置于“ Split View”中?

最佳答案

看起来可以使用 fairly simple script 来完成有关启动和全屏应用程序的第一步。 ,尽管它需要先启用辅助功能权限。但是,它不会执行分屏操作。

虽然我一直在寻找并且Better Touch Tool (支付你想要的,最低 4.49 美元)似乎是我能找到的最接近的东西,允许你触发全屏模式并在同一操作中调出分屏显示选择器。它似乎是通过模拟 long mouse down on the full screen window control button 来做到这一点的。 (左上角的绿色)。你得到的是这样的:

Safari entering Full Screen mode with spilt-screen Expose view

我一直在研究这个,似乎有一种(到目前为止看起来非常难以理解,但可靠的)方法来控制全屏应用程序的顺序并在某种情况下触发应用程序进入分屏模式以前全屏显示的应用程序是唯一可用于拆分屏幕的选项。

例如,给定以下内容,通过 +^+F 将 iA Writer 启动到全屏(空格 2)来完成:

enter image description here

聚焦 Safari 并使用 Better Touch Tool 触发分屏模式会导致:

enter image description here

...只有一个分屏应用程序,即使有多个应用程序仍在运行。

从这个位置,您可以使用 BTT 中的“移动到位置”操作并触发对唯一可用应用程序的点击——我认为这在理论上可以实现您想要的,尽管它令人费解且有点可疑。

综上所述,这似乎是在不触摸鼠标的情况下将两个应用程序启动到分屏模式的唯一方法,因为这可能都是您从 Automator 脚本触发的 BTT 工作流程。进一步挖掘,您可能能够了解 BTT 如何完成它们的操作并编写一个程序来为您执行此操作,但我们已经远远超出了 bash 或简单的 cli 脚本。

我个人只使用 Spectacle和 tmux 来缩放我的窗口,虽然我承认,自动分屏将接近实时变化。

关于bash - 使用脚本操作 OS X 窗口,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37806253/

相关文章:

linux - 在 Fedora 上运行远程根脚本

linux - 根据参数将 bash 中的命令替换为其他命令

macos - 如何在 Mac 10.8.3 上安装 qpdf?

swift - 更改 NSButton 的图像

python - 在同一台机器 (OS X) 的 Python 2 和 Python 3 上安装 Beautiful Soup

linux - 如何将输出重定向到文件和标准输出

linux - bash ps 命令从字符串执行时返回错误

objective-c - 有没有办法使用 AppleScript 单击 osx 菜单项而不访问 "System Events"?

applescript - 将消息(聊天)状态设置为当前在 radio 中播放的歌曲

xcode - 如何使用 AppleScript 在 XCode 中创建新项目?