Devilspie2 lua脚本在指定位置打开所有bluej应用程序。

时间:2014-05-10 19:11:36

标签: lua bluej

我得到了一个devilspie2的.lua脚本,我正试图开始工作。脚本的目的是强制所有bluej窗口在指定位置打开。我只能让主窗口在指定位置启动。从主bluej窗口打开的所有其他bluej窗口都忽略此规则。这是脚本代码。

--Start Bluej at specified position. 
if (get_application_name()=="bluej-Boot") then
   -- x,y-coordinates, xsize, ysize
   set_window_position(2655,197);
end

这是devilspie2文档。 Devilspie2

正如您所看到的,我使用get_application_name()来检查字符串文字“bluej-boot”,这适用于主应用程序。问题是从bluej中打开的窗口没有相同的应用程序名称。它被重命名以匹配窗口名称。如何识别这些窗口并对它们应用与主窗口相同的规则?

1 个答案:

答案 0 :(得分:0)

使用" -d"目标窗口打开时的选项,使用这样的cfg:

gwc=get_window_class()
gwt=get_window_type()
gan=get_application_name()
gcin=get_class_instance_name()

debug_print("Window name: " .. get_window_name());
debug_print("Application name: " .. gan);
debug_print("Window type: " .. gwt);
debug_print("Window role: " .. get_window_role());
debug_print("Window class: " .. gwc);
debug_print("Class instance: " .. gcin);
x, y, width, height = get_window_geometry();
debug_print("X: "..x..", Y: "..y..", width: "..width..", height: "..height);
debug_print("--------------------------------------------------")

并查看可以使用哪些字符串来选择它们。