【问题标题】:awesome-wm: create a shortcut key for toggling view desktopawesome-wm:为切换视图桌面创建快捷键
【发布时间】:2021-07-24 23:48:44
【问题描述】:

awesome窗口管理器中,我想创建一个toggle show dekstop的快捷方式(比如modkey + d

我按 ModKey + d 然后它应该显示 destop 然后我再次按 Modkey + d 它应该像以前一样显示窗口

这可能吗

【问题讨论】:

  • 最简单的方法可能是取消选择所有标签以显示桌面(但粘性客户端(所有标签上可见的客户端)仍然可见;这对您来说是个问题吗?)。
  • 如果显示粘性客户端没问题。
  • 现在测试的时间不多,但我认为awful.tag.viewnone(s) 应该让屏幕在屏幕上可见sawful.tag.history.restore(s) 应该让客户端再次可见。但我不完全确定恢复是否有效,也许它需要是 restore(s, 0)restore(s, 1) 或类似的东西......

标签: awesome-wm


【解决方案1】:

在您的rc.lua 中设置以下内容:

local show_desktop = false

然后在globalkeys = gears.table.join( 中添加:

-- Toggle showing the desktop
awful.key({ altkey, "Control" }, "d",
    function(c)
        if show_desktop then
            for _, c in ipairs(client.get()) do
                c:emit_signal(
                    "request::activate", "key.unminimize", {raise = true}
                )
            end
            show_desktop = false
        else
            for _, c in ipairs(client.get()) do
                c.minimized = true
            end
            show_desktop = true
        end
    end,
    {description = "toggle showing the desktop", group = "client"}),

我使用 ctrl+alt+d 但如果愿意,您可以将上面的内容替换为 awful.key({ modkey }, "d",

这也是我的Reddit post 的链接。

【讨论】:

    【解决方案2】:

    这是我曾经这样做的(借自here),虽然我记得它搞乱了客户端/窗口的安排:

    awful.key({ M }, "d", function()
        local tags = awful.screen.focused().tags
        for i = 1, 2 do tags[i].selected = false end end,
        create_description("show", "desktop")),
    
    awful.key({ M, S }, "d", function()
        local tags = awful.screen.focused().tags
        for i = 1, 2 do tags[i].selected = true end end,
        create_description("unshow", "desktop")),
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-03-14
      • 1970-01-01
      • 1970-01-01
      • 2011-06-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多