我是很棒的 wm 新手,我想设置一个快捷方式,让我回到上一个窗口(历史上),无论它是在当前标签、另一个标签甚至另一个屏幕上(例如Alt+Tab
在 Gnome 或 Windows 中) 。
默认情况下,可以Super+Tab
返回,但只能返回相同的标签。
并且可以Super+Esc
返回到之前的活动标签。
如果没有(全局)转到上一个窗口的函数,我可以编写自己的函数吗rc.lua
(如果我懂Lua)?
答案1
您可以直接通过使用历史列表
awful.client.focus.history.list
表的第一个元素是当前聚焦的客户端,因此 2 是前一个
从客户端获取第一个标签查看此标签
然后抬起客户端使其位于顶部
function ()
local c = awful.client.focus.history.list[2]
client.focus = c
local t = client.focus and client.focus.first_tag or nil
if t then
t:view_only()
end
c:raise()
end
所以你可以从rc.lua更改
awful.key({ modkey, }, "Tab",
function ()
awful.client.focus.history.previous()
if client.focus then
client.focus:raise()
end
end,
{description = "go back", group = "client"}),
到
awful.key({ modkey, }, "Tab",
function ()
local c = awful.client.focus.history.list[2]
client.focus = c
local t = client.focus and client.focus.first_tag or nil
if t then
t:view_only()
end
c:raise()
end,
{description = "go back", group = "client"}),