Devilspie 是一个用于窗口管理的小工具,可以自动化地控制窗口的位置、大小、透明度等属性。它使用一种基于 Lua 的脚本语言来描述窗口的行为,可以根据窗口的标题、类别、属性等条件来匹配窗口,并执行相应的操作。

Devilspie 的函数说明如下:

  1. if_window():用于定义匹配窗口的条件。可以使用窗口的标题、类别、属性等信息来进行匹配。例如:

    if_window({ class = 'Firefox' }) -- 匹配类别为 Firefox 的窗口
    if_window({ title = 'Terminal' }) -- 匹配标题为 Terminal 的窗口
    if_window({ name = 'Navigator' }) -- 匹配属性为 Navigator 的窗口
    
  2. set_window_*():用于设置窗口的属性。可以设置窗口的位置、大小、透明度等。例如:

    set_window_geometry(0, 0, 800, 600) -- 设置窗口左上角坐标为 (0, 0),宽度为 800,高度为 600
    set_window_opacity(0.5) -- 设置窗口透明度为 50%
    
  3. undecorate_window():用于移除窗口的边框和标题栏。

  4. pin_window():用于将窗口置顶。

  5. stick_window():用于将窗口粘滞在屏幕上。

  6. skip_taskbar():用于隐藏窗口的任务栏图标。

  7. skip_pager():用于隐藏窗口在桌面切换器中的显示。

  8. unmaximize():用于取消窗口的最大化状态。

  9. maximize():用于将窗口最大化。

  10. minimize():用于将窗口最小化。

  11. close():用于关闭窗口。

  12. debug_print():用于输出调试信息。

  13. debug():用于设置调试模式,可以输出更详细的调试信息。

  14. focus():用于将焦点设置到指定的窗口。

  15. set_workspace():用于将窗口移到指定的工作区。

  16. get_window_name():用于获取窗口的名称。

  17. get_window_class():用于获取窗口的类别。

  18. get_window_role():用于获取窗口的角色。

这些函数可以在 Devilspie 的脚本中使用,通过组合和调用这些函数,可以实现对窗口的自动化控制。


原文地址: https://www.cveoy.top/t/topic/pksT 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录