Show last task name by default.
This commit is contained in:
parent
7321deeb0e
commit
bc4ca19818
@ -5,6 +5,7 @@
|
|||||||
Commands:
|
Commands:
|
||||||
start [TASK] Start new task. If no task, use last runned task
|
start [TASK] Start new task. If no task, use last runned task
|
||||||
stop Stop task
|
stop Stop task
|
||||||
|
current Show current running task
|
||||||
report Show report
|
report Show report
|
||||||
report day [DATE] Show report for today or DATE
|
report day [DATE] Show report for today or DATE
|
||||||
report week [DATE] Show report for current week or week of DATE
|
report week [DATE] Show report for current week or week of DATE
|
||||||
@ -88,7 +89,7 @@
|
|||||||
uberproject/website/programming: [2014-04-18 09:47:04] - [2014-04-18 09:49:38] - 00:02:34
|
uberproject/website/programming: [2014-04-18 09:47:04] - [2014-04-18 09:49:38] - 00:02:34
|
||||||
|
|
||||||
При запуске программы без аргументов выводится имя текущей задачи и текущий
|
При запуске программы без аргументов выводится имя текущей задачи и текущий
|
||||||
таймер:
|
таймер или название последней задачи, если таймер не запущен:
|
||||||
|
|
||||||
$ worktimer.scm
|
$ worktimer.scm
|
||||||
uberproject/website/programming: 00:02:51
|
uberproject/website/programming: 00:02:51
|
||||||
|
|||||||
@ -240,6 +240,11 @@
|
|||||||
(let ((last (last-pair sheet)))
|
(let ((last (last-pair sheet)))
|
||||||
(if (null? last) #f (car last))))
|
(if (null? last) #f (car last))))
|
||||||
|
|
||||||
|
;;; Returns running record
|
||||||
|
(define (running sheet)
|
||||||
|
(let ((last (last-task sheet)))
|
||||||
|
(if (and last (not (caddr last))) last #f)))
|
||||||
|
|
||||||
;;; Stop task. Returns #t if stopped, #f if no running task.
|
;;; Stop task. Returns #t if stopped, #f if no running task.
|
||||||
(define (stop-task task)
|
(define (stop-task task)
|
||||||
(if (not (caddr task))
|
(if (not (caddr task))
|
||||||
@ -818,18 +823,12 @@
|
|||||||
(if (equal? p task) a
|
(if (equal? p task) a
|
||||||
(cons p a))) '() archives))))))
|
(cons p a))) '() archives))))))
|
||||||
|
|
||||||
;;; ================================ MAIN FUNCTION ==================================
|
;;; Show current running task
|
||||||
|
(define (cmd-current sheet deadlines archives . params)
|
||||||
(define (main cmdl)
|
(let ((runrec (running sheet)))
|
||||||
(let ((command (cdr cmdl)))
|
(if runrec
|
||||||
(let-values (((sheet deadlines archives) (read-timesheet ts-file)))
|
(let* ((path (car runrec))
|
||||||
(if (null? command)
|
(timer (date-difference (current-date) (cadr runrec))))
|
||||||
|
|
||||||
;; Show running task
|
|
||||||
(let ((last (last-task sheet)))
|
|
||||||
(if (and last (not (caddr last)))
|
|
||||||
(let* ((path (car last))
|
|
||||||
(timer (date-difference (current-date) (cadr last))))
|
|
||||||
(format #t "~a: ~a ~a\n"
|
(format #t "~a: ~a ~a\n"
|
||||||
(path->string path)
|
(path->string path)
|
||||||
(time->string timer)
|
(time->string timer)
|
||||||
@ -847,8 +846,22 @@
|
|||||||
(date/time->string deadtime))
|
(date/time->string deadtime))
|
||||||
")"))
|
")"))
|
||||||
""))))
|
""))))
|
||||||
|
(begin
|
||||||
|
(format #t "NO TASKS\n"))))
|
||||||
|
(values #f #f #f))
|
||||||
|
|
||||||
(format #t "NO TASKS\n")))
|
;;; ================================ MAIN FUNCTION ==================================
|
||||||
|
|
||||||
|
(define (main cmdl)
|
||||||
|
(let ((command (cdr cmdl)))
|
||||||
|
(let-values (((sheet deadlines archives) (read-timesheet ts-file)))
|
||||||
|
(if (null? command)
|
||||||
|
(begin
|
||||||
|
(cmd-current sheet deadlines archives)
|
||||||
|
(if (not (running sheet))
|
||||||
|
(begin
|
||||||
|
(display "Last task: ")
|
||||||
|
(cmd-lasttask sheet deadlines archives))))
|
||||||
|
|
||||||
;; Else run command
|
;; Else run command
|
||||||
(let ((param (cdr command))
|
(let ((param (cdr command))
|
||||||
@ -865,6 +878,7 @@
|
|||||||
((string= command "timesheet") cmd-timesheet)
|
((string= command "timesheet") cmd-timesheet)
|
||||||
((string= command "archive") cmd-archive)
|
((string= command "archive") cmd-archive)
|
||||||
((string= command "unarch") cmd-unarch)
|
((string= command "unarch") cmd-unarch)
|
||||||
|
((string= command "current") cmd-current)
|
||||||
;; Service commands
|
;; Service commands
|
||||||
((string= command "tasklist") cmd-tasklist)
|
((string= command "tasklist") cmd-tasklist)
|
||||||
((string= command "deadlist") cmd-deadlist)
|
((string= command "deadlist") cmd-deadlist)
|
||||||
@ -879,6 +893,7 @@
|
|||||||
(format #t "Commands:\n")
|
(format #t "Commands:\n")
|
||||||
(format #t " start [TASK] Start new task. If no task, use last runned task\n")
|
(format #t " start [TASK] Start new task. If no task, use last runned task\n")
|
||||||
(format #t " stop Stop task\n")
|
(format #t " stop Stop task\n")
|
||||||
|
(format #t " current Show current running task\n")
|
||||||
(format #t " report Show report\n")
|
(format #t " report Show report\n")
|
||||||
(format #t " report day [DATE] Show report for today or DATE\n")
|
(format #t " report day [DATE] Show report for today or DATE\n")
|
||||||
(format #t " report week [DATE] Show report for current week or week of DATE\n")
|
(format #t " report week [DATE] Show report for current week or week of DATE\n")
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user