我使用“闹钟小程序”来时不时提醒我不要盯着屏幕,让我的眼睛休息一下。界面很笨拙,但很管用。
不过,我遇到的一个问题是,有时我没有注意到它何时熄灭。Gnome 面板中的指示器图标(我使用 Flashback)变为黄色,但很容易被忽略。
它可以设置为播放声音,但我经常在公共场合使用笔记本电脑,在这种情况下,定期响起闹钟是不可接受的。
该程序确实为我提供了在闹钟响起时运行命令的选项。如果我可以设置一些东西,比如在屏幕上放置我无法忽略的通知,或者在所有内容上覆盖透明的红色,或者诸如此类的东西,那就太好了。我愿意听取各种想法,重点是它应该是我无法忽略的东西。
我可以运行任何命令来创建某种完全明显的视觉通知吗?
答案1
您可以使用zenity
它来创建图形(GTK+)对话框。
尝试添加此命令:
zenity --warning --text="Insert yout text here!"
或者在脚本中插入命令。
请参阅zenity --help
或man zenity
获取更多帮助。
答案2
使闹钟变暗并为您的屏幕着色,并可选择暂停或关闭:
- 创建目录
~/bin
- 复制以下脚本的代码,并将其保存
alarm
为~/bin
。 将 中的值替换
snooze_time = 90
为您想要的休眠间隔时间。如果您愿意,您还可以使用伽马值和亮度值,只要您保留语法( 之后第一行中的值while snoozeoption == 1:
)。使脚本可执行。保存
~/bin
并使脚本可执行是必要的,因为时钟小程序不运行组合命令;您需要能够使用单身的来自闹钟小程序的命令。
您可能需要先注销/登录才能正常工作。
这是脚本:
#!/usr/bin/python3
import subprocess
import time
# snooze time
snooze_time = 90
def get_screenname():
screendata = subprocess.Popen(["xrandr"], stdout=subprocess.PIPE)
return [line for line in screendata.communicate()[0].decode("utf-8").split("\n") if " connected" in line][0].split(" ")[0]
screen = get_screenname()
snoozeoption = 1
while snoozeoption == 1:
subprocess.Popen(["xrandr", "--output", screen, "--gamma", "1:1:0.3", "--brightness", "0.6"])
snoozeoption = subprocess.call(["zenity", "--question", "--text=What to do?", "--ok-label=Dismiss", "--cancel-label=Snooze", "--title=Take a Break"])
if snoozeoption == 1:
subprocess.call(["xrandr", "--output", screen, "--gamma", "1:1:1", "--brightness", "1"])
time.sleep(snooze_time)
else:
pass
subprocess.call(["xrandr", "--output", screen, "--gamma", "1:1:1", "--brightness", "1"])
在闹钟小程序中,设置运行命令:
alarm
答案3
安装compizconfig-settings-manager
sudo apt-get install compizconfig-settings-manager
打开 CCSM 并转到Effects
-> Wizard
,选择一些组合键来打开/关闭它。
对我来说它是Ctrl+++ Shift。AltW
不要忘记启用向导。
现在你可以尝试一下。按Ctrl+ Shift+ Alt+W打开/关闭动画。
我希望这足够了公然的为你。
报警
现在进入终端,并运行:
xdotool key ctrl+shift+alt+w
如果您想每 20 分钟运行一次,只需将此命令添加到crontab
,并导出DISPLAY
变量。
执行crontab -e
,并添加此行
20 * * * * export DISPLAY=:0.0 && xdotool key ctrl+alt+shift+w
最好自动关闭这种效果,尤其是当你远离电脑时。
此命令将执行相同的操作,但 20 秒后它会关闭。
20 * * * * export DISPLAY=:0.0 && xdotool key ctrl+alt+shift+w && sleep 20 && xdotool key ctrl+alt+shift+w
答案4
可以使用标准桌面通知。例如:
notify-send 'Hello world!' 'This is an example notification.' --icon=dialog-information
参考: