Add deadlines in README

This commit is contained in:
Nikolay Puzanov 2014-05-20 16:35:16 +04:00
parent 3fc94fdf6b
commit bd3123de01

View File

@ -8,10 +8,28 @@
Программа написана на [[http://www.schemers.org/][Scheme]] (реализация - [[http://www.gnu.org/software/guile/][GNU Guile]]) и предназначена для учета
рабочего времени. Применяется следующим образом:
#+begin_src text
Usage: timer [command]
Commands:
start [TASK] Start new task. If no task, use last runned task
stop Stop task
report Show report
report day [DATE] Show report for today or DATE
report week [DATE] Show report for current week or week of DATE
report month [DATE] Show report for current month or month of DATE
report TASK Show report for project
deadline set [TASK] DATE|TIME Add deadline for project (or for last task)
deadline clear [TASK] Remove deadline for project (or for last task)
deadline [TASK] Show deadline for project
deadline all Show all deadlines
refresh Refresh worksheet file after manual edit
(no command) Show running task and timer
#+end_src
Начало работы над задачей:
#+begin_src sh
$ worktimer.scm start [НАЗВАНИЕ_ЗАДАЧИ]
$ worktimer.scm start [НАЗВАНИЕ_ЗАДАЧИ]
#+end_src
Название задачи может состоять из нескольких частей, разделенных символом
@ -23,7 +41,7 @@ $ worktimer.scm start [НАЗВАНИЕ_ЗАДАЧИ]
Пример:
#+begin_src sh
$ worktimer.scm start uberproject/website/design
$ worktimer.scm start uberproject/website/design
#+end_src
Стартует отсчет времени на подзадачу "design" задачи "website" проекта
@ -33,28 +51,28 @@ $ worktimer.scm start uberproject/website/design
Остановить отсчет времени можно командой =stop=:
#+begin_src sh
$ worktimer.scm stop
$ worktimer.scm stop
#+end_src
или запустив новую задачу:
#+begin_src sh
$ worktimer.scm start uberproject/website/programming
$ worktimer.scm start uberproject/website/programming
#+end_src
По команде =report= выводится отчет по всем проектам и задачам:
#+begin_src sh
$ worktimer.scm report
--- REPORT
Overall: 00:03:45
$ worktimer.scm report
--- REPORT
Overall: 00:03:45
uberproject: 00:03:45
website: 00:03:45
programming: 00:02:34
design: 00:01:11
--- LAST STOPPED TASK
uberproject/website/programming: [2014-04-18 09:47:04] - [2014-04-18 09:49:38] - 00:02:34
--- LAST STOPPED TASK
uberproject/website/programming: [2014-04-18 09:47:04] - [2014-04-18 09:49:38] - 00:02:34
#+end_src
Как видно, общее время работы над проектом составило 3 минуты и 45 секунд, из
@ -72,20 +90,55 @@ uberproject/website/programming: [2014-04-18 09:47:04] - [2014-04-18 09:49:38] -
Кроме того, параметром команды =report= может быть название проекта, например:
#+begin_src sh
$ worktimer.scm report uberproject/website
--- REPORT
Overall: 00:03:45
$ worktimer.scm report uberproject/website
--- REPORT
Overall: 00:03:45
uberproject: 00:03:45
website: 00:03:45
--- LAST STOPPED TASK
uberproject/website/programming: [2014-04-18 09:47:04] - [2014-04-18 09:49:38] - 00:02:34
--- LAST STOPPED TASK
uberproject/website/programming: [2014-04-18 09:47:04] - [2014-04-18 09:49:38] - 00:02:34
#+end_src
При запуске программы без аргументов выводится имя текущей задачи и текущий
таймер:
#+begin_src sh
$ worktimer.scm
uberproject/website/programming: 00:02:51
$ worktimer.scm
uberproject/website/programming: 00:02:51
#+end_src
Команда =deadline= предназначена для добавления и удаления дедлайнов. Дедлайны
могут быть датой, до которой нужно закончить проект, или временем, которое можно
потратить на выполнение задачи.
Установить дедлайт для проекта можно командой =deadline set=. В качестве
аргумента может выступать имя задачи и дата/время или просто дата/время (в этом
случае дедлайн установится для последней запущеной задачи).
Удаляется дедлайн командой =deadline clear= с именем проекта в качестве
параметра.
Посмотреть установленные дедлайны можно командой =deadline all=. Команда =deadline=
без параметров выведет дедлайн для текущей задачи.
Дедлайны отображаются в отчете. Для дедлайна по времени признак истечения
времени зависит от периода, за который сформирован отчет. Например, если дедлайн
по проекту 1 час, а всего на проект потрачено 2 часа, из которых сегодня только
20 минут, то при формировании отчета за весь период (или по проекту) признак
превышения времени будет установлен. А при отчете за сегодня, до дедлайна
останется еще 40 минут. Это может быть удобно при планировании времени на
день/неделю/месяц.
** Автодополнение для zsh
Для включения автодополнения в zsh скопируйте файл =zsh-completion/_timer= в
=~/.zsh-completion/=, и добавте в файл =~/.zshrc= строки
#+begin_src sh
fpath=(~/.zsh-completions $fpath)
autoload -Uz compinit
compinit
#+end_src
И не забудте сделать симлинк (например) =/usr/local/bin/timer= на =worktimer.scm=.