And*_*res 5 customization scripts workspaces desktop-environments default-programs
我使用了几个工作区,以便为不同的作品提供不同的上下文。因此,我在同一工作区中重复运行同一组应用程序。而且我在每组应用程序中运行相同的应用程序,因此设置每个应用程序应运行的默认工作区不适用于此目的。
例如:
那么,有没有办法让脚本或 set_workspace1.sh 之类的东西在运行后打开特定工作区中的所有所需程序?
顺便说一句,我正在运行 11.04
我认为标准窗口管理器没有这样的功能。
但魔鬼派可以做你想做的事。
http://burtonini.com/blog/computers/devilspie/
引自 Devil's Pie 网站:“Devil's Pie 可以配置为在创建窗口时检测窗口,并将窗口与一组规则相匹配。如果窗口与规则匹配,它就可以在该窗口上执行一系列操作。例如,我可以让 X-Chat 创建的所有窗口都出现在所有工作区上,而 Gkrellm1 主窗口不会出现在寻呼机或任务列表中。”
我希望这对你有帮助,
丹尼尔
从技术上讲,工作区被称为viewports,扩展桌面的特定部分,具有特定的坐标,例如0, 0视口 1,并且1366, 0是紧邻右侧的视口。
应该注意的是,CompizConfig 设置管理器有一个用于在特定工作区“固定”打开窗口的选项,但可以创建一个像您提到的脚本。这是我的例子。
#!/bin/bash
get_viewport()
{
xprop -root -notype _NET_DESKTOP_VIEWPORT | awk '{print $3,$4}'
}
spawn_viewport_1()
{
nohup gnome-terminal 2>&1 > /dev/null &
nohup chromium-browser 2>&1 > /dev/null &
}
spawn_viewport_2()
{
nohup xterm 2>&1 > /dev/null &
nohup firefox 2>&1 > /dev/null &
}
main()
{
case $(get_viewport) in
"0, 0") spawn_viewport_1 ;; # note , single space in "0, 0" is important
"1366, 0") spawn_viewport_2 ;;
esac
}
main
Run Code Online (Sandbox Code Playgroud)
本质上发生的事情是我有两个函数,每个函数都针对特定的视口。我还有一个功能可以检查我当前所在的视口。如果我当前位于视口 1(坐标 0,0),它将生成一组应用程序。如果我在视口 2(坐标 1366,0)上,我们将生成不同的应用程序集。
| 归档时间: |
|
| 查看次数: |
990 次 |
| 最近记录: |