沿Xmonad线的MacOS的平铺窗口管理器。
如果您想了解有关平铺窗户经理的更多信息,以及紫水晶的功能,YouTube上有一些很棒的社区资源。
用紫水晶提高MacOS的生产率|平铺窗口管理器
紫水晶可直接下载在发行页面或使用自制桶。
brew install --cask amethyst
注意:现在仅在MacOS 10.15+上支持紫水晶。
必须在“隐私与安全”选项卡中使用访问权限API的权限,隐私 - > Accessibilty。
重要说明:您可能希望Automatically rearrange Spaces based on most recent use
(在系统偏好中找到的任务控制下)。默认情况下启用了此设置,并且会导致您的空间根据使用来交换位置。这使得键盘在空间之间导航不可预测。
或在终端运行:
defaults write com.apple.dock workspaces-auto-swoosh -bool NO
killall Dock
有关一些常见问题,请参见故障排除。
紫水晶使用两个修饰符组合( mod1
和mod2
),并且可以选择使用另外两个( mod3
和mod4
)。
默认快捷方式 | 描述 |
---|---|
mod1 | option + shift |
mod2 | ctrl + option + shift |
mod3 | 默认未定义 |
mod4 | 默认未定义 |
并定义以下命令,主要是映射到Xmonad键组合。
默认快捷方式 | 描述 |
---|---|
mod1 + space | 循环布局向前 |
mod2 + space | 向后循环布局 |
mod1 + h | 收缩主窗格 |
mod1 + l | 扩展主窗格 |
mod1 + , | 增加主窗格计数 |
mod1 + . | 减少主窗格计数 |
mod1 + j | 顺时针移动聚焦 |
mod1 + k | 顺时针移动焦点 |
mod1 + p | 将重点移至逆时针屏幕 |
mod1 + n | 将重点移至顺时针屏幕 |
mod2 + h | 交换集中的窗口逆时针屏幕 |
mod2 + l | 将集中的窗口交换到顺时针屏幕 |
mod2 + j | 交换聚焦的窗口逆时针方向 |
mod2 + k | 顺时针交换窗口 |
mod1 + enter | 与主窗口交换窗口 |
mod1 + z | 迫使窗户被重新评估 |
mod2 + z | 重新启动紫水晶 |
mod2 + left | 将集中的窗户扔向左侧的空间 |
mod2 + right | 将集中的窗户扔向空间 |
mod2 + 1 | 将重点窗口扔向空间1 |
mod2 + 2 | 将重点窗口扔向空间2 |
mod2 + 3 | 将重点窗口扔向空间3 |
mod2 + 4 | 将重点窗口扔向空间4 |
mod2 + 5 | 将重点窗口扔向空间5 |
mod2 + 6 | 将重点窗口扔向空间6 |
mod2 + 7 | 将重点窗口扔向空间7 |
mod2 + 8 | 将重点窗口扔向空间8 |
mod2 + 9 | 将重点窗口扔向空间9 |
mod2 + 0 | 将重点窗口扔向空间10 |
none | 将重点窗口扔向空间11 |
none | 将重点窗口扔向空间12 |
mod1 + w | 聚焦屏幕1 |
mod2 + w | 将重点窗口扔向屏幕1 |
mod1 + e | 聚焦屏幕2 |
mod2 + e | 将重点窗口扔向屏幕2 |
mod1 + r | 聚焦屏幕3 |
mod2 + r | 将重点窗口扔向屏幕3 |
mod1 + q | 聚焦屏幕4 |
mod2 + q | 将重点窗口扔向屏幕4 |
mod1 + g | 聚焦屏幕5 |
mod2 + g | 将重点窗口扔向屏幕5 |
mod1 + t | 切换浮子以进行聚焦窗口 |
mod1 + i | 显示当前布局 |
mod2 + t | 切换全局瓷砖 |
mod1 + a | 选择高层布局 |
none | 选择高右侧布局 |
mod1 + s | 选择宽布局 |
none | 选择中间布局 |
mod1 + d | 选择全屏布局 |
mod1 + f | 选择列布局 |
none | 选择行布局 |
none | 选择浮动布局 |
none | 选择宽屏 - 高音布局 |
none | 选择BSP布局 |
紫水晶允许您在几个不同的窗口布局中循环。布局也可以启用/禁用,以控制它们是否完全出现在周期序列中。
默认布局。这给了您左侧的一个“主窗格”,右侧为另一个窗格。默认情况下,将一个窗口放在主窗格中(扩展了屏幕的整个高度),所有其余的窗户都放在另一个窗格中。如果任何一个窗格都有多个窗口,则该窗格将均匀地分成行,以显示所有窗口。您可以使用上面的键盘快捷键来控制哪个窗口以及主窗格中的多少个窗口,以及主窗格的水平尺寸与另一个窗格的水平尺寸。
与高个子完全相同,但主窗格在右侧,另一个窗格在左侧。
旋转版的高高,主窗格在顶部(延伸屏幕的全宽度),另一个窗格在底部。如果任何一个窗格都有多个窗口,则该窗格将分为列而不是行。
该布局有两个可见的窗格 - 主窗格和次级窗格。就像在其他布局中一样,主窗格中的窗口被固定在另一个窗格中,其余的所有窗口都放在另一个窗格中,一次只能看到一个窗口,可以交换(使用键盘快捷键)。该布局自动根据屏幕方向适应水平/垂直瓷砖。主窗格在水平方向的左侧,在垂直方向的顶部。
一个三列的高个子,左侧有一个主窗格(延伸屏幕的全高)和另外两个窗格,一个在中间,一个在右侧。像高个子一样,如果任何窗格都有一个以上的窗口,该窗格将被分成行。您可以像往常一样控制主窗格中有多少个窗户;其他两个窗户之间将尽可能均匀地分配其他窗口。
就像3column-Left一样,但是主窗格在中间,其他窗格在两侧。 (在以前的紫水晶版本中,这种布局被称为中间。)
就像3column-Left一样,但是主窗格在右侧,其他窗格在中间和左侧。
该模式就像高个子,但是如果主窗格中有多个窗户,主窗格将分成柱而不是行。另一个窗格仍然将窗户分成一行,例如高个子。这种布局之所以获得其名称,是因为它可能在非常宽的屏幕上具有最有意义的,其中一个大型主窗格由几列组成,所有其余的窗户都堆叠在最后一列中。在非常宽的屏幕上运行良好的其他布局包括任何允许两列以上(以利用屏幕宽度的优势),例如3column-*布局或列。
在此布局中,当前集中的窗口占用了整个屏幕,而其他窗口根本看不到。您可以像往常一样使用“焦点下一个窗口”快捷方式在每个窗口之间旋转。
该布局每个窗口都有一个列,每个窗口都扩展了屏幕的全高度。最远的左窗被认为是“主”窗口,从某种意义上说,您可以通过“收缩/扩展主窗格”快捷方式更改其大小;其他窗户将剩余的空间均匀地拆分。
圆形的旋转版本,每个窗口都占据整个行,从而扩展了屏幕的完整宽度。
此模式使所有窗口都“浮动”,使您可以移动并调整它们的大小,就像暂时停用的紫水晶一样。与其他模式不同,这将意味着可以将窗户“互相”放置在彼此的顶部,从而掩盖了您对某些窗户的视野。
这种布局没有其他布局的主窗格。当添加窗口时,任何给定的窗格都可以沿轴线更长的轴均匀分成两个窗格。这是递归的,使得窗格A可以在中间分成左侧的窗格A,右侧为窗格B;然后可以将窗格B分成底部的窗格B,底部的窗格C;然后可以将窗格C分为左侧的窗格C,右侧为窗格D;等等。
可以通过JavaScript实现自定义布局。请参阅自定义布局。
Amethyst在主目录中通过YAML支持配置。请参阅配置文件。
如果您有疑问或反馈,最好的选择是推文或戴上吉特。
如果您想捐款,请从development
部门分支机构,并开放拉动请求,而不是master
。否则,只需尝试坚持代码的一般样式即可。
紫水晶是自由的,永远都是。也就是说,有几个人表示愿意捐款以感谢。鉴于当前的政治气候,我建议向其中一个组织捐款:
还有一堆面向技术的技术: