Ubuntu 17.10固定工作区配置与xdotool脚本适配技术咨询
嘿,我来帮你搞定Ubuntu 17.10里的固定工作区和脚本切换问题——毕竟Unity换成GNOME Shell后,确实得换套思路了😉
设置固定非动态工作区(GNOME Shell)
Ubuntu 17.10默认采用GNOME Shell桌面替代了Unity,咱们得用GNOME专属的配置方式来搞定工作区:
方法1:图形界面(GNOME Tweaks)
首先得安装GNOME Tweaks(旧称GNOME Tweak Tool),打开终端运行这条命令:sudo apt update && sudo apt install gnome-tweaks
安装完成后打开Tweaks工具,找到工作区选项卡:
- 先关掉「动态工作区」的开关,这样工作区数量就会固定下来,不会随窗口增减自动变化
- 调整工作区布局:
- 垂直/水平单排列:直接修改「工作区数量」的数值即可,布局方向可以通过下方的「工作区布局」选项切换
- 网格状布局:原生GNOME Shell不支持网格,得安装
Workspace Grid扩展——打开GNOME软件搜索这个扩展安装,启用后在Tweaks的扩展面板里就能设置行数和列数,完全满足横竖网格的需求
方法2:命令行(gsettings)
如果你习惯用命令行配置,GNOME依然支持gsettings工具,步骤如下:
- 关闭动态工作区:
gsettings set org.gnome.shell.overrides dynamic-workspaces false - 设置固定工作区数量(比如4个):
gsettings set org.gnome.desktop.wm.preferences num-workspaces 4 - 切换布局方向:
- 垂直排列(默认):
gsettings set org.gnome.mutter workspaces-layout 'vertical' - 水平排列:
gsettings set org.gnome.mutter workspaces-layout 'horizontal' - 网格布局还是得靠
Workspace Grid扩展,安装后可以通过扩展的配置界面或命令调整行列数
- 垂直排列(默认):
替换xdotool的工作区切换脚本
Unity里用xdotool模拟点击的方法,在GNOME Shell里可能因为界面元素位置变化失效,推荐用更稳定的原生命令替代:
方案1:wmctrl命令(简单直接)
wmctrl是轻量窗口管理工具,直接指定工作区索引就能切换(索引从0开始):
- 切换到第一个工作区:
wmctrl -s 0 - 切换到第二个工作区:
wmctrl -s 1 - 以此类推,把脚本里的xdotool命令换成对应的wmctrl命令就行,稳定性拉满
方案2:gdbus调用GNOME Shell API(灵活适配布局)
如果需要按方向切换工作区(比如上/下/左/右),可以用gdbus调用GNOME Shell的原生API:
- 切换到上一个工作区:
gdbus call --session --dest org.gnome.Shell --object-path /org/gnome/Shell --method org.gnome.Shell.Eval "global.workspace_manager.get_active_workspace().get_neighbor(Meta.MotionDirection.UP).activate(global.get_current_time())" - 切换到下一个工作区:把命令里的
UP换成DOWN;如果是水平布局,换成LEFT或RIGHT即可
这个方法能完美适配GNOME Shell的工作区布局,不会因为界面更新失效
内容的提问来源于stack exchange,提问作者daveboss
相关产品推荐
相关产品推荐

