用于非平铺窗口管理器的python简单平铺器
pystiler的Python项目详细描述
此项目的目标是能够定义平铺工作区和 在非平铺wms上轻松打开它们。
这是一个简单的python脚本,它将wmctrl包装起来,以便 平铺。
将它绑定到一个键或窗口创建挂钩上的autowhatever,创建脚本以设置工作区,或创建别名以快速移动终端。
最初是github.com/thewanterr/stiler的一个分支,但现在已经发展到几乎不计算原始代码的程度。
安装
使用安装
pip3 install pystiler
用法
可以使用pyst工具移动活动窗口。
使用
运行简单命令pyst move <arg>
当前的参数是左、右、顶部、底部、Top-Lead、ButtoMyLead、TopiWrand、ButoMyTrand和最大化,所有这些都与活动窗口所期望的差不多。
使用
运行更复杂的命令pyst explicit <screen rows> <screen columns> <first column> <last column> <first row> <last row>
例如
pyst explicit 2 3 2 2 1 2
定义一个包含2行3列维度的屏幕网格,并调整活动窗口的大小以仅填充第二列(第一行到第二行)。(因此,窗口将占据屏幕的中间垂直三分之一)
以及
pyst explicit 3 2 1 2 1 2
定义一个包含3行2列的屏幕网格,并调整活动窗口的大小,以填充第一列到第二列(屏幕顶部的2/3)的第一行到第二行。
工作空间
使用此脚本,可以定义和运行工作区配置。工作区配置允许您在屏幕上的某些位置打开某些应用程序时设置工作APC。
pystiler查找配置文件的~/.pystiler.ini。它使用configparser来解析它。您可以通过运行pyst workspace-example生成示例配置。有三种配置模式:
- 很简单,应用程序(以及可选的目录)每次都是相同的,但位置不同
- 具体来说,可能有多个应用程序,并且目录可能不同
- 显式,您可以在其中使用显式api来使用非命名位置。
使用pyst workspace $workspacename
启动工作区目前,Terminaldir什么也不做。这在待办事项清单上。
别名
下面是一些在终端中使用的好别名:
alias l='pyst move left' alias r='pyst move right' # override r builtin alias tl='pyst move top_left' alias tr='pyst move top_right' # override tr builtin alias bl='pyst move bottom_left' alias br='pyst move bottom_right' alias m='pyst move maximize' alias t='pyst move top' alias b='pyst move bottom' alias ws='pyst workspace' function wso { pyst workspace $1 exit }
项目的待办事项
- [X]添加顶部和底部目标
- [X]添加[上,下][左,右]目标
- [X]添加简单的cli界面
- [X]添加简单的测试用例
- [X]制作精美的Python包
- [X]添加简单的工作区配置
- [X]添加复杂的工作区配置
- []允许向工作区配置传递参数
- []增加覆盖范围
- []使用日志记录而不是调试标志
- []添加窗口大小调整测试
- []使显式api更好
- []找出cols和rows反转的原因并修复它
- []找出导致WMCTRL在第二次呼叫时失火的原因
- []找出其他人修复了哪些错误
- []制定项目的最终目标
- []列出已调整大小的窗口ID以减轻调整大小的影响 问题
- []找出工作区的异步加载
- []添加代码质量评审