在我相当普通的 Ubuntu 22.04 桌面安装中,我设置了六个工作区,我喜欢有简单、明确的快捷方式,可以直接切换到每个工作区并将窗口移动到每个工作区。所以我设置了Alt+1
切换到工作区 1,Alt+2
切换到工作区 2,等等。这些都很好用。然后我设置了Shift+Alt+!
将窗口移动到工作区 1,Shift+Alt+@
将窗口移动到工作区 2,等等。这些都很好用除了将Shift+Alt+$
窗口移动到工作区 4,但它什么也不做!似乎有其他函数正在抢占使用Shift+Alt+$
,但我不知道它是什么或如何找出它。
一个可能的线索:我注意到,当Shift+Alt+4
焦点在终端窗口上时,我按下 ,终端会显示一条类似 的消息Display all 141 possibilities? (y or n)
,如果我按下y
,它似乎会转储一堆环境变量的名称(例如BASH
、BASH_ALIASES
、BASH_ARGC
等等)。我不知道这是什么命令——而且它似乎无法解释为什么当非终端窗口具有焦点时快捷方式不起作用——但也许这个终端行为与问题有某种关联?
编辑2023-06-25:以下是 Gnome 设置中相关快捷键的屏幕截图,显示 Shift+Alt+$ 按预期绑定到“将窗口移动到工作区 4”。如上所述,工作区 1-3 的类似快捷键工作正常(以及我在命令行中设置的工作区 5-6 的快捷键),但工作区 4 的快捷键不起作用。
编辑2023-07-02:首先,为了确认键绑定确实设置正确,下面是摘录dconf dump /
:
move-to-workspace-1=['<Shift><Alt>exclam']
move-to-workspace-2=['<Shift><Alt>at']
move-to-workspace-3=['<Shift><Alt>numbersign']
move-to-workspace-4=['<Shift><Alt>dollar']
move-to-workspace-5=['<Shift><Alt>5']
move-to-workspace-6=['<Shift><Alt>6']
再次,除第四个之外,其他所有方法都有效。
其次,通过一些研究我发现发现当我在终端中按下时,显示“显示所有 X 可能性”消息Shift+Alt+4
来自制表符补全。如果我按下Shift+Alt+4
此命令中的双引号之间,会出现一个有趣的结果:
echo "" | cat -A
$
我得到一个“$”作为输出。但cat -A
,如果我使用非纯,我只会看到“$” cat
,而当我在双引号之间输入时,我看不到它。因此,综合证据表明 Terminal 看到的Shift+Alt+4
是类似 的内容<invisible "$"><tab><tab>
。这解释了为什么当我响应y
“显示所有可能性”提示时,我基本上会得到我所有环境变量的列表,因为那些将是“$”开头的制表符完成结果。
这是一个很好的数据点,但我仍然不明白为什么此组合键在终端中是这样解释的。Shift+Alt+4
例如,如果我在 gedit 窗口中输入,则看不到任何输出。因此它通常不会产生文字“$”。