有没有办法打开“额外的”临时工作区?

有没有办法打开“额外的”临时工作区?

[运行 Ubuntu 14.04,Unity]

因此,我启用了工作区等。我知道可以设置一些选项,让 Ubuntu 默认有四个以上的工作区 — 但这不是我想要的。

目前,我想要一个第五工作区,但只是暂时的(也就是说,我不希望它成为默认的五个打开的。我只希望今天使用它,并且可能在别的日子我需要它)。

有没有办法做到这一点?

答案1

下面的脚本允许您保留两组不同的工作空间。如果您将脚本放在快捷键下,则可以在两组之间切换:

正常工作空间 -

在此处输入图片描述

扩展工作空间 -

在此处输入图片描述

如何使用

  1. 将以下脚本复制到一个空文件中。在 head 部分,定义行/列中的“正常”情况:

    normal = (2, 2)
    

    以及您希望在行/列中看到的“扩展”情况:

    extended = (2, 4)
    
  2. 将脚本另存为manage_workspaces.py。通过运行以下命令测试它是否按你的要求执行:

    python3 /path/to/manage_workspaces.py
    

    当您运行该命令时,工作区设置应在两组之间切换,并且通知区域中应出现一条消息(参见上图)

  3. 如果一切顺利,请将运行脚本的命令添加到您选择的快捷键:选择:系统设置>“键盘”>“快捷键”>“自定义快捷键”
    单击“+”并添加命令:

    python3 /path/to/manage_workspaces.py
    

    剧本:

    #!/usr/bin/env python3
    
    import subprocess
    
    # default situation rows / columns
    normal = (2, 2)
    # extended set of workspaces
    extended = (2, 4)
    # commands to read the current state
    key = "/org/compiz/profiles/unity/plugins/core/"
    read_hor = "dconf read "+key+"hsize"; read_vert = "dconf read "+key+"vsize"
    hor = int(subprocess.check_output(["/bin/bash", "-c", read_hor]).decode("utf-8").strip())
    vert = int(subprocess.check_output(["/bin/bash", "-c", read_vert]).decode("utf-8").strip())
    # take action, depending on current state
    if (hor,vert) == normal:        
        set_h = "dconf write "+key+"hsize "+str(extended[1])
        set_v = "dconf write "+key+"vsize "+str(extended[0])
        message = "notify-send 'set to extended workspaces: "+str(extended[0])+" x "+str(extended[1])+"'"
    else:
        set_h = "dconf write "+key+"hsize "+str(normal[1])
        set_v = "dconf write "+key+"hsize "+str(normal[0])
        message = "notify-send 'set to normal workspaces: "+str(normal[0])+" x "+str(normal[1])+"'"
    for item in (set_h, set_v, message):
        subprocess.call(["/bin/bash", "-c", item])
    

答案2

我有一个过时的 PPA,它可能可以使用,但工作区暂时不可用。因此,要禁用/启用,您必须转到应用程序。

PPA:debhttp://ppa.launchpad.net/tualatrix/ppa/ubuntu轻快的主

相关内容