如何在 Ubuntu Unity 16.04 中快速禁用待机盖子?

ors*_*iro 16 suspend power-management software-recommendation

关闭盖子时快速禁用待机功能的最快方法是什么?我非常喜欢这种行为,但尤其是在播放音乐时,我想在不将机器切换到待机状态的情况下合上盖子。

但是,我不想永久禁用此功能,而只是暂时关闭它,直到我听完音乐为止。

也许有一个类似于咖啡因的指标?

在此处输入图片说明

Jac*_*ijm 19

下面的脚本将在“nothing”和“suspend”之间切换关闭操作:

#!/usr/bin/env python3
import subprocess

key = ["org.gnome.settings-daemon.plugins.power",
       "lid-close-ac-action", "lid-close-battery-action"]

currstate = subprocess.check_output(["gsettings", "get",
    key[0], key[1]]).decode("utf-8").strip()

if currstate == "'suspend'":
    command = "'nothing'"
    subprocess.Popen(["notify-send", "Lid closes with no action"])
else:
    command = "'suspend'"
    subprocess.Popen(["notify-send", "Suspend will be activated when lid closes"])

for k in [key[1], key[2]]:
    subprocess.Popen(["gsettings", "set", key[0], k, command])
Run Code Online (Sandbox Code Playgroud)

...并通知当前设置的状态:

在此处输入图片说明

如何使用

简单地:

  • 将脚本复制到一个空文件中,另存为 toggle_lid.py
  • 将其添加到快捷键:选择:系统设置>“键盘”>“快捷方式”>“自定义快捷方式”。单击“+”并添加命令:

    python3 /path/to/toggle_lid.py
    
    Run Code Online (Sandbox Code Playgroud)

解释

可以通过命令检索关闭盖子动作设置的当前状态

gsettings get org.gnome.settings-daemon.plugins.power lid-close-ac-action
Run Code Online (Sandbox Code Playgroud)

(在电源上),和

gsettings get org.gnome.settings-daemon.plugins.power lid-close-battery-action
Run Code Online (Sandbox Code Playgroud)

(电池)

该脚本读取当前状态,并使用以下命令设置相反的(“暂停”/“无”):

gsettings get org.gnome.settings-daemon.plugins.power lid-close-ac-action '<action>'
Run Code Online (Sandbox Code Playgroud)

可选(另外)

可选/另外,您可以将指示器作为检测器运行,以显示盖子设置的当前状态。它会显示:

在此处输入图片说明

...在面板中,如果关闭盖子时会阻止暂停,如果没有,它将显示灰色。

在此处输入图片说明

剧本

python3 /path/to/toggle_lid.py
Run Code Online (Sandbox Code Playgroud)

如何使用

  1. 将上面的脚本复制到一个空文件中,另存为 show_state.py
  2. 复制下面的两个图标(右键单击->另存为),并将它们保存在与 相同的目录中show_proc.py,并准确命名如下所示

    green.png

    在此处输入图片说明

    nocolor.png

    在此处输入图片说明

  3. 现在show_state.py通过命令测试运行:

    python3 /path/to/show_state.py
    
    Run Code Online (Sandbox Code Playgroud)

    并通过按您设置此答案的第一部分的快捷方式来更改当前状态。

  4. 如果一切正常,请将以下内容添加到启动应用程序中:

    /bin/bash -c "sleep 15 && python3 /path/to/show_state.py"
    
    Run Code Online (Sandbox Code Playgroud)

笔记

上面的检测器指示器是此答案的编辑版本。只需在功能改变测试runs()(任选与根据面板图标),你可以用它来显示的状态什么TrueFalse


Win*_*nix 5

另一个选项是在 Ubuntu 设置 - 电源中从“暂停”更改为“什么都不做”:

Ubuntu 设置 - 电源

PS:这不会在通知区域提供指示器,但比为新用户创建脚本更简单。

PPS:在此屏幕快照中,UPS 用于电缆调制解调器 + 索尼 Android 电视,而不是带有电池的笔记本电脑......哈哈。