From bd3123de01d7176f481354f6b3f6ad6d8a97bc38 Mon Sep 17 00:00:00 2001 From: Nikolay Puzanov Date: Tue, 20 May 2014 16:35:16 +0400 Subject: [PATCH] Add deadlines in README --- README.org | 101 ++++++++++++++++++++++++++++++++++++++++------------- 1 file changed, 77 insertions(+), 24 deletions(-) diff --git a/README.org b/README.org index b8a5017..43bb936 100644 --- a/README.org +++ b/README.org @@ -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 - 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 + $ 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 #+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 - 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 + $ 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 #+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=. +