Ein Timer, der den Bildschirm automatisch sperrt, um eine Pause vom Computer zu machen?

63

Ich suche ein Grafik- oder Befehlszeilenprogramm, das mir den folgenden Workflow bietet:

  1. Starten Sie eine 25-minütige Sitzung
  2. Nach 25 Minuten wird der Bildschirm automatisch für 5 Minuten gesperrt (oder ist er nur schwarz?)
  3. Jetzt hilft es mir, eine Pause einzulegen, da ich vor dem Computer nichts anderes tun kann, als auf einen schwarzen oder gesperrten Bildschirm zu schauen :)
  4. Nach 5 Minuten kehrt der Bildschirm automatisch zurück und ich kann weiterarbeiten

Gibt es ein Programm, das genau das macht?

Orschiro
quelle
Standardmäßig meinst du?
Orschiro
Hallo Orschiro, es ist geschafft! Siehe letzte
Änderung
@JacobVlijm hat gerade die PPA-Version installiert. Was für eine schöne Anwendung, die Sie erstellt haben. Nochmals vielen Dank!
Orschiro
@orschiro Danke für die nette Frage! Es hat wirklich Spaß gemacht, daran zu arbeiten. Wenn Sie Fehler finden oder Vorschläge haben, zögern Sie nicht, diese auf dem Launchpad zu erwähnen (entweder über den Bug-Link oder den Frage-Link).
Jacob Vlijm

Antworten:

86

TakeaBreak

TakeaBreak ist jetzt auf dem Launchpad

sudo add-apt-repository ppa:vlijm/takeabreak
sudo apt-get update
sudo apt-get install takeabreak

Kürzlich (auch) für 18.04 / 18.10 / 19.04 gepusht


Haftungsausschluss: Ich bin der Autor

Fühlen Sie sich frei, Fehler usw. hier einzureichen oder hier zu kommentieren . Danke an Orschiro für die nette Frage und Rinzwind für die Ermutigung!


verbleibende Pause- Sekunden (mit Countdown- Option)

Bildbeschreibung hier eingeben

die Einstellungen

Bildbeschreibung hier eingeben

Bildbeschreibung hier eingeben


BEARBEITEN

Eine integrierte und modernisierte Version für Ubuntu Budgie ist jetzt verfügbar:

Bildbeschreibung hier eingeben Bildbeschreibung hier eingeben


Bildbeschreibung hier eingeben


Dieses Applet wird höchstwahrscheinlich standardmäßig in Ubuntu Budgie 19.04 verfügbar sein, kann hier jedoch als experimentelles Applet ausgeführt werden .

Jacob Vlijm
quelle
Kommentare sind nicht für längere Diskussionen gedacht. Diese Unterhaltung wurde in den Chat verschoben .
Thomas Ward
23

Vielleicht möchten Sie auch Workrave in Betracht ziehen , obwohl es sich nicht mehr in der Entwicklung befindet. Ich fand es einfach zu bedienen und sehr anpassbar. Es enthält auch einige nützliche Statistiken darüber, wie Sie den Computer benutzen und wie viele Pausen Sie einlegen. Schließlich glaube ich, dass es sich auch zwischen vielen Computern synchronisieren lässt, was nützlich ist, wenn Sie beispielsweise sowohl am Laptop als auch an einem Schulcomputer arbeiten.

workrave pausenaufforderung

BEARBEITEN: Es hat viele andere Funktionen, die ich nicht erwähnt habe, wie zum Beispiel Vorschläge für Übungen, die Sie machen sollten, während der Bildschirm blockiert ist. Und es kann nur die Zeit berücksichtigen, zu der Sie den Computer benutzen, sodass Sie keine Pause einlegen müssen, wenn Sie von der Toilette zurückkommen :)

EDIT 2:

Stellen Sie sicher, dass Sie den "Reading" -Modus auschecken!

Die obige Funktion, nur die Zeit zu zählen, die Sie aktiv mit dem Computer verbracht haben, kann als Fehler angesehen werden, wenn Sie nicht viel tun (keine Maus, keine Tastaturereignisse), da dies nur dann zu einer Pause führt, wenn Sie insgesamt 1 Stunde verwenden (oder wie viel Zeit Sie eingerichtet haben). In diesen Situationen wird der Modus "Lesen" unabhängig von der Verwendung zur genauen Zeit aktiviert.

Ciprian Tomoiagă
quelle
Vielen Dank! Unter den Features kann es also während der Pausen meinen Bildschirm schwarz oder sperren?
Orschiro
2
es kann es definitiv blockieren. Ich bin nicht sicher, ob ich es schwärzen soll.
Ciprian Tomoiagă
Es ist ein Albtraum zu installieren.
Bartekbrak
1
@bartekbrak sudo apt-get install workrave?
Ciprian Tomoiagă
12

Grobe, minimalistische Befehlszeilenmethode:

sleep 1500; gnome-screensaver-command -l; sleep 300; killall gnome-screensaver

Das kann auch in eine Desktop-Verknüpfung oder in eine Funktion in umgewandelt werden .bashrc

Warum 1500 und 300? denn das sind Sekunden, 1500 Sekunden / 60 Sekunden pro Minute = 25 Minuten.


Im Folgenden finden Sie ein Skript für einen Timer, mit dem Sie variable Sitzungs- und Pausenzeiten sowie Methoden zum Signalisieren der Pause festlegen können.

Denken Sie daran, dass jedes Skript unter Linux als Datei gespeichert werden muss und ausführbare Berechtigungen mit festgelegt werden müssen chmod +x /path/to/script.sh. Sobald dies erledigt ist, können Sie das Skript an eine Verknüpfung binden, wie unter Wie binde ich SH-Dateien an eine Tastaturkombination? oder erstellen Sie eine Desktop-Verknüpfung wie in Wie kann ich Starter auf meinem Desktop erstellen?

Wenn Sie das Skript starten, sollte folgendes Menü angezeigt werden:

Bildbeschreibung hier eingeben

#!/bin/bash

# Author: Serg Kolo
# Date : Nov 17th, 2015
# Purpose: pomodoro timer script,
# with bunch of options
# Written for: https://askubuntu.com/q/696620/295286

#####################################################
# screenSaver function
# this one uses gnome-screensaver-command for locking
# and killall for unlocking the screen;
# $1 is provided from chooseBreakMethod function
#####################################################

function screenSaver
{
  gnome-screensaver-command -l; sleep $1 ; killall gnome-screensaver 
}


##############################################
# dialogBreak function
# this serves as "screensaver". The screen is never 
# actually locked but rather we open terminal window 
# with a simple command line dialog
# in full sccrean mode
# $1 provided in chooseBreakMethod function
##################################################
function dialogBreak
{
 gnome-terminal --full-screen  -e  "bash -c 'sleep $1 | dialog --progressbox \"TAKE A BREAK\" 100 100 ' "
}

#################################################################
# dimScreen function 
# dims the screen using xrandr; the --brightness 
# can be configured
# for full or partial dimming using decimal values
# from 1 to 0
# $1 is provided from chooseBreakMethod function
################################################################

function dimScreen
{
  xrandr  | awk '$2 == "connected" {print $1}' | xargs -I % xrandr --output % --brightness 0.5
  notify-send 'Take a Break'
  sleep $1
  xrandr  | awk '$2 == "connected" {print $1}' | xargs -I % xrandr --output % --brightness 1
}

##############################
# getSettings function
# This is where the user enters 
# the settings they want
# All the values must be integers
#############################
function getSettings
{
  FORM=$(zenity --forms \ --title="Sergiy's Tomato Script" --text="Choose this session options" \
   --add-entry="Number of Sessions (how many loops)" \
   --add-entry="Session time (minutes)" \
   --add-entry="Break time (minutes)" \
   --add-entry="Dim,dialog,or screensaver? (1,2,3)" \
   --separator=" " )  

  [ $? -eq 0 ] || exit 1

   echo $FORM
}

################################
# chooseBreakMethod function
# A helper function that calls appropriate
# break method, based on the value we got
# from getSettings function
# Because dialogBreak calls gnome-terminal
# this function exits, so it doesn't wait
# Therefore we need to add additional sleep
# command
###############################

function chooseBreakMethod
{

 # $1 is method passed from  ${SETS[3]}
 # $2 is break time passed from ${SETS[2]}
  case $1 in
    1) dimScreen $2 ;;
        2) dialogBreak $2 ; sleep $2 ;;
    3) screenSaver $2 ;;
  esac

}


function minutesToSeconds
{
  echo $(($1*60))
}

#################
# MAIN
#################

# get user settings and store them into array
# Item 0 : num sessions
# Item 1 : session duration
# Item 2 : break duration
# Item 3 : break method - lockscreen, dialog, or just
# turn off the screen 
# SETS == settings
SETS=( $(getSettings) )

COUNTER=${SETS[0]}

#######################################
# This is where most of the job is done
# we loop according to number of session
# specified in the  getSettings function
#########################################

notify-send 'Session started'
while [ $COUNTER -ne 0  ]; do

  sleep $( minutesToSeconds ${SETS[1]} ) # session timer
  chooseBreakMethod ${SETS[3]} $( minutesToSeconds ${SETS[2]} )
  COUNTER=$(($COUNTER-1))
done

notify-send "tomatoScript is done"
####### END OF SCRIT ###########
Sergiy Kolodyazhnyy
quelle
Ich genieße es, die verschiedenen Arten zu sehen, wie Menschen diese Dinge angehen. Das Sprichwort, dass es mehr als eine Möglichkeit gibt, eine Katze zu häuten, erscheint angemessen. Vielleicht fluffen Sie heraus, wie man es bindet oder wie man eine Desktop-Verknüpfung erstellt? (Unter der Annahme, dass Vollständigkeit Ihr Ziel ist.)
KGIII
10

Hier ist ein weiteres Tool namens Safe Eyes für den gleichen Zweck.

sudo add-apt-repository ppa:slgobinath/safeeyes
sudo apt-get update
sudo apt-get install safeeyes

Safe Eyes Short Break-Bildschirm

Eigenschaften:

  • Kurze Pausen mit Augenübungen
  • Lange Pausen, um die Körperhaltung zu verändern und sich aufzuwärmen
  • Strikte Pause für Computersüchtige
  • Nicht stören, wenn Sie mit Vollbildanwendungen arbeiten (z. B. Filme ansehen)
  • Deaktivieren Sie die Tastatur während der Pause
  • Benachrichtigungen vor jeder Pause
  • Unterstützt mehrere Displays
  • Automatisch anhalten, wenn das System inaktiv ist
  • Optionale akustische Warnung am Ende der Pausen
  • Unterstützung für mehrere Sprachen

Für weitere Informationen: https://github.com/slgobinath/SafeEyes

Gobinath
quelle
1
Liebe es so sehr!
Asalle
6

Ich benutze dafür seit vielen Jahren xwrits .

sudo apt-get install xwrits

Die Standardeinstellung ist eine Pause von 5 Minuten alle 55 Minuten. Laut Manpage können diese Zeiten jedoch über die Optionen breaktimeund die typetimeBefehlszeile angepasst werden . Mit dieser +lockOption können Sie auch steuern, ob der Bildschirm gesperrt wird. Wenn Sie also alle 25 Minuten eine 5-minütige Pause einlegen möchten, sollten Sie dies so ausführen

xwrits typetime=25 breaktime=5 +lock &
Michael Mandel
quelle