Таймер, який автоматично блокує екран, щоб відірватися від комп'ютера?


63

Я шукаю графічну програму чи програму командного рядка, яка надає мені наступний робочий процес:

  1. Почніть сеанс за 25 хвилин
  2. Після закінчення 25 хвилин екран автоматично блокується на 5 хв (а може, просто став чорним?)
  3. Тепер мені допомагають зробити перерву, тому що я нічого не можу зробити перед комп’ютером, окрім того, як дивитись на чорний або заблокований екран :)
  4. Через 5 хвилин екран автоматично повертається, і я можу продовжувати роботу

Чи є програма, яка робить саме це?


Як функцію за замовчуванням ви маєте на увазі?
orschiro

Привіт орхіро, це зроблено! Дивіться останню
редакцію

@JacobVlijm щойно встановив версію PPA. Яке гарне додаток ви створили. Ще раз дякую!
orschiro

@orschiro Дякую за приємне запитання! Працювати над цим було дуже цікаво, і, будь ласка, якщо ви знайдете помилки або якщо у вас є пропозиції, не соромтесь згадати це на панелі запуску (або помилка, або посилання на запитання).
Яків Влійм

Відповіді:


86

Відпочинь

TakeaBreak тепер на стартовій панелі

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

Нещодавно (також) висунуто на 18.04 / 18.10 / 19.04


Відмова: Я автор

Сміливо подайте сюди помилки тощо або коментуйте тут . Дякуємо Орширо за приємне запитання та Рінцвінд за заохочення!


залишилися секунди перерви (використовуючи параметр відліку)

введіть тут опис зображення

Налаштування

введіть тут опис зображення

введіть тут опис зображення


EDIT

Тепер інтегрована та модернізована версія для Ubuntu Budgie:

введіть тут опис зображення введіть тут опис зображення


введіть тут опис зображення


Цей аплет швидше за все , буде доступний за умовчанням в Ubuntu 19.04 Budgie, але тепер може бути досягнутий тут в якості експериментальної.


Коментарі не для розширеного обговорення; ця розмова переміщена до чату .
Томас Уорд

23

Ви також можете розглянути питання про Workrave , хоча він вже не розробляється. Я вважав його простим у використанні та легко настроюється. У ньому також є кілька приємних статистичних даних про те, як ти користуєшся комп’ютером та скільки перерв. Нарешті, я вважаю, що він також може синхронізуватися між багатьма комп’ютерами, що корисно, якщо, наприклад, ви працюєте як на ноутбуці, так і на шкільному комп’ютері.

workrave відпочинок підказка

EDIT: У ньому є багато інших функцій, про які я не згадував, як-от пропоную вам виконувати деякі вправи, поки екран заблокований. І він може враховувати лише час, коли ви користуєтесь комп’ютером, тому він не запропонує вам перерви, коли ви повернетеся з туалету :)

EDIT 2:

Переконайтесь, що ви перевірили режим "Читання"!

Наведена вище функція лише підрахунку часу, який ви активно використовуєте за комп’ютером, може розглядатися як помилка, якщо ви мало займаєтесь (ні миша, ні події на клавіатурі), оскільки вона підкаже ваш перерву лише коли ви накопичите 1 годину використання (або скільки часу ви налаштували). У таких випадках, якщо ввімкнути режим «Читання», він підкаже в точний час, незалежно від використання.


Дякую! Серед функцій, таким чином, він може чорніти або блокувати мій екран під час перерви?
orschiro

2
це однозначно може блокувати. не впевнений у тому, що затулити це.
Ciprian Tomoiagă

Це кошмар, щоб встановити.
bartekbrak

1
@bartekbrak sudo apt-get install workrave?
Ciprian Tomoiagă

12

Сирий, мінімалістичний, командний рядок:

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

Це також можна перетворити на ярлик на робочому столі або перетворити на функцію в .bashrc

Чому 1500 і 300? тому що це секунди, 1500 секунд / 60 секунд на хвилину = 25 хвилин.


Нижче представлений сценарій таймера, який дозволяє встановлювати змінну сесію та час перерви, а також методи сигналізації перерви.

Пам’ятайте, що будь-який скрипт на Linux повинен бути збережений у вигляді файлу і мати встановлені виконавчі дозволи chmod +x /path/to/script.sh. Як тільки це буде зроблено, ви можете прив’язати скрипт до ярлика, як показано у розділі Як зв'язати .sh файли з комбінацією клавіатури? або створити ярлик на робочому столі, як показано в розділі Як я можу створити пускові установки на робочому столі?

Під час запуску сценарію ви повинні побачити таке меню:

введіть тут опис зображення

#!/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 ###########

Мені подобається бачити різні шляхи, якими люди йдуть про ці речі. Прислів про існування декількох способів шкіри шкіри кішки здається доречним. Можливо, розгадаєте, як це пов’язати чи, можливо, зробити ярлик на робочому столі? (Припускаючи, що повнота - ваша мета.)
KGIII

10

Ось ще один інструмент під назвою « Безпечні очі» з тією ж метою.

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

Екран коротких перерв безпечних очей

Особливості:

  • Короткі перерви з вправами для очей
  • Тривалі перерви, щоб змінити фізичне положення і зігрітися
  • Сувора перерва для тих, хто захоплюється комп'ютером
  • Не турбуйте під час роботи з повноекранними програмами (наприклад: Перегляд фільмів)
  • Вимкніть клавіатуру під час перерви
  • Повідомлення перед кожною перервою
  • Підтримка декількох дисплеїв
  • Автоматична пауза, якщо система не працює
  • Необов’язковий звуковий сигнал у кінці перерв
  • Багатомовна підтримка

Детальніше: https://github.com/slgobinath/SafeEyes


1
Любіть це так сильно!
Ассаль

6

Я використовував xwrits на протязі багатьох років для цієї мети.

sudo apt-get install xwrits

За замовчуванням це в 5 - хвилинну перерву кожні 55 хвилин, але по сторінці людини ці часи налаштовується з допомогою breaktimeі typetimeопцій командного рядка, відповідно. Ви також можете керувати тим, чи блокується він за допомогою +lockпараметра. Отже, щоб встановити його на 5-хвилинну перерву кожні 25 хвилин, щоб заблокувати вас, слід запустити так

xwrits typetime=25 breaktime=5 +lock &

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.