Re: [O] How to view everything DONE today?

2014-11-27 Thread John Kitchin
try (org-read-date)? It seems to return a string after you select the date.

#+BEGIN_SRC emacs-lisp
(org-read-date)
#+END_SRC

#+RESULTS:
: 2014-11-28




Sascha Ziemann  writes:

> This:
>
> http://jcardente.blogspot.de/2010/06/org-mode-hack-tasks-done-last-month.html
>
> inspired my to do this:
>
> (defun org-done-view (&optional offset)
> "Shows all TODOs, which are done."
> (interactive "nOffset: ")
> (let ((offset (or offset 0)))
> (let ((t0 (calendar-current-date offset))
> (t1 (calendar-current-date (+ offset 1
> (org-tags-view nil 
> (format "CLOSED>=\"[%s-%s-%s]\"+CLOSED<=\"[%s-%s-%s]\""
> (calendar-extract-year t0)
> (calendar-extract-month t0)
> (calendar-extract-day t0)
> (calendar-extract-year t1)
> (calendar-extract-month t1)
> (calendar-extract-day t1))
>
> How can I open a calendar to pick a date?
>
> Regards,
> Sascha
>
> 2014-11-26 20:44 GMT+01:00 John Kitchin :
>
> I am not sure how to do this through the agenda, but here is a way
> to
> find headlines in the current file that were closed today. You
> could
> wrap this in a loop over the files in your agenda list. It is a
> little
> clumsy on the time comparisons but it works ;)
> 
> * Getting items done today
> 
> ** DONE item 1
> CLOSED: [2014-11-26 Wed 13:09] DEADLINE: <2014-11-26 Wed>
> 
> 
> 
> ** DONE item 2
> CLOSED: [2014-11-25 Tue 13:09] DEADLINE: <2014-11-26 Wed>
> 
> 
> ** Mapping entries to find what closed today.
> 
> First, we look at a timestamp comparison function.
> #+BEGIN_SRC emacs-lisp
> (org-time= "<2014-11-26 Wed>" "<2014-11-26 Wed>")
> #+END_SRC
> 
> #+RESULTS:
> : t
> 
> #+BEGIN_SRC emacs-lisp
> (org-map-entries
> (lambda ()
> (let* ((closed (org-entry-get (point) "CLOSED"))
> (today (format-time-string "<%Y-%m-%d>")))
> (when closed
> (when
> (org-time=
> today
> (let ((parts (org-parse-time-string closed)))
> (format "<%s-%s-%s>"
> (nth 5 parts) ; year
> (nth 4 parts) ; month
> (nth 3 parts) ; day
> )))
> (message-box "Found a closed task: %s"
> (org-heading-components)))
> 
> #+END_SRC
> 
> #+RESULTS:
> | nil | Found a closed task: (2 2 DONE nil item 1 nil) | nil | nil
> |
> 
> 
> 
> 
> 
> 
> Sascha Ziemann  writes:
> 
> > Hi,
> >
> > I tried to get a list of all items done today. I tried to open
> the
> > agenda view but is does not show anything. What is the right
> command
> > to see the items done today?
> >
> > Regards,
> > Sascha
> >
> 
> 
> --
> ---
> John Kitchin
> Professor
> Doherty Hall A207F
> Department of Chemical Engineering
> Carnegie Mellon University
> Pittsburgh, PA 15213
> 412-268-7803
> http://kitchingroup.cheme.cmu.edu
> 
>
>

-- 
---
John Kitchin
Professor
Doherty Hall A207F
Department of Chemical Engineering
Carnegie Mellon University
Pittsburgh, PA 15213
412-268-7803
http://kitchingroup.cheme.cmu.edu



Re: [O] How to view everything DONE today?

2014-11-27 Thread Sascha Ziemann
This:

http://jcardente.blogspot.de/2010/06/org-mode-hack-tasks-done-last-month.html

inspired my to do this:

(defun org-done-view (&optional offset)
  "Shows all TODOs, which are done."
  (interactive "nOffset: ")
  (let ((offset (or offset 0)))
(let ((t0 (calendar-current-date offset))
  (t1 (calendar-current-date (+ offset 1
  (org-tags-view nil
 (format "CLOSED>=\"[%s-%s-%s]\"+CLOSED<=\"[%s-%s-%s]\""
 (calendar-extract-year t0)
 (calendar-extract-month t0)
 (calendar-extract-day t0)
 (calendar-extract-year t1)
 (calendar-extract-month t1)
 (calendar-extract-day t1))

How can I open a calendar to pick a date?

Regards,
Sascha


2014-11-26 20:44 GMT+01:00 John Kitchin :

> I am not sure how to do this through the agenda, but here is a way to
> find headlines in the current file that were closed today. You could
> wrap this in a loop over the files in your agenda list. It is a little
> clumsy on the time comparisons but it works ;)
>
> * Getting items done today
>
> ** DONE item 1
>CLOSED: [2014-11-26 Wed 13:09] DEADLINE: <2014-11-26 Wed>
>
>
>
> ** DONE item 2
>CLOSED: [2014-11-25 Tue 13:09] DEADLINE: <2014-11-26 Wed>
>
>
> ** Mapping entries to find what closed today.
>
> First, we look at a timestamp comparison function.
> #+BEGIN_SRC emacs-lisp
> (org-time= "<2014-11-26 Wed>" "<2014-11-26 Wed>")
> #+END_SRC
>
> #+RESULTS:
> : t
>
> #+BEGIN_SRC emacs-lisp
> (org-map-entries
>   (lambda ()
> (let* ((closed (org-entry-get (point) "CLOSED"))
>(today (format-time-string "<%Y-%m-%d>")))
>   (when closed
> (when
> (org-time=
>  today
>  (let ((parts (org-parse-time-string closed)))
>(format "<%s-%s-%s>"
>(nth 5 parts) ; year
>(nth 4 parts) ; month
>(nth 3 parts) ; day
>)))
>   (message-box "Found a closed task: %s"
>(org-heading-components)))
>
> #+END_SRC
>
> #+RESULTS:
> | nil | Found a closed task: (2 2 DONE nil item 1 nil) | nil | nil |
>
>
>
>
> Sascha Ziemann  writes:
>
> > Hi,
> >
> > I tried to get a list of all items done today. I tried to open the
> > agenda view but is does not show anything. What is the right command
> > to see the items done today?
> >
> > Regards,
> > Sascha
> >
>
> --
> ---
> John Kitchin
> Professor
> Doherty Hall A207F
> Department of Chemical Engineering
> Carnegie Mellon University
> Pittsburgh, PA 15213
> 412-268-7803
> http://kitchingroup.cheme.cmu.edu
>


Re: [O] How to view everything DONE today?

2014-11-26 Thread John Kitchin
I am not sure how to do this through the agenda, but here is a way to
find headlines in the current file that were closed today. You could
wrap this in a loop over the files in your agenda list. It is a little
clumsy on the time comparisons but it works ;)

* Getting items done today

** DONE item 1
   CLOSED: [2014-11-26 Wed 13:09] DEADLINE: <2014-11-26 Wed>



** DONE item 2
   CLOSED: [2014-11-25 Tue 13:09] DEADLINE: <2014-11-26 Wed>


** Mapping entries to find what closed today.

First, we look at a timestamp comparison function. 
#+BEGIN_SRC emacs-lisp
(org-time= "<2014-11-26 Wed>" "<2014-11-26 Wed>")
#+END_SRC

#+RESULTS:
: t

#+BEGIN_SRC emacs-lisp
(org-map-entries
  (lambda ()
(let* ((closed (org-entry-get (point) "CLOSED"))
   (today (format-time-string "<%Y-%m-%d>")))
  (when closed
(when
(org-time=
 today
 (let ((parts (org-parse-time-string closed)))
   (format "<%s-%s-%s>"
   (nth 5 parts) ; year
   (nth 4 parts) ; month
   (nth 3 parts) ; day
   )))
  (message-box "Found a closed task: %s"
   (org-heading-components)))
 
#+END_SRC

#+RESULTS:
| nil | Found a closed task: (2 2 DONE nil item 1 nil) | nil | nil |




Sascha Ziemann  writes:

> Hi,
>
> I tried to get a list of all items done today. I tried to open the
> agenda view but is does not show anything. What is the right command
> to see the items done today?
>
> Regards,
> Sascha
>

-- 
---
John Kitchin
Professor
Doherty Hall A207F
Department of Chemical Engineering
Carnegie Mellon University
Pittsburgh, PA 15213
412-268-7803
http://kitchingroup.cheme.cmu.edu



Re: [O] How to view everything DONE today?

2014-11-26 Thread Richard Lawrence
Hi Sascha,

Sascha Ziemann  writes:

> I tried to get a list of all items done today. I tried to open the agenda
> view but is does not show anything. What is the right command to see the
> items done today?

If you use logging, one way to do this is to press "l" in the agenda, to
turn on "log mode".  This will show you all the tasks you worked on,
including the ones that you marked done.

I'm not sure if this is possible without logging, since your org files
won't record when tasks were marked done.  You can turn on logging with
a line like

#+STARTUP: logdone

in the preamble of an org file to turn logging on for that file, or

(setq org-log-done 'time) 

in your .emacs, to turn it on globally.

To keep things neat, you might also want to use

#+STARTUP: logdrawer

or 

(setq org-log-into-drawer t)

so your logs go in a LOGBOOK drawer.

Hope that helps!

Best,
Richard