Commit Graph

674 Commits

Author SHA1 Message Date
Carsten Dominik 855f85b46f New face for clock in mode line. 2009-06-06 08:13:40 +02:00
Carsten Dominik 90c38a0045 Clock: Improve messages 2009-06-02 17:10:23 +02:00
Carsten Dominik a5dc9456dd New option `org-clock-out-switch-to-state'.
Can be used to change the TODO state when clocking out.
2009-06-02 17:01:11 +02:00
Carsten Dominik 8a2247454c Bug fix 2009-06-02 16:36:16 +02:00
Carsten Dominik 1db461321a Keep compiler happy 2009-06-02 14:49:38 +02:00
Carsten Dominik ee4bcda0e9 Clock: More control about what time is shown in mode line while clocking
This commit changes which time is shown in the mode line while
clocking.  Normally this will now be the total time ever clocked on
this task and its children.

However, when the task is a repeating one, only the time since the
last reset of the task will be shown.  The time of the last reset is
now recorded in a LAST_REPEAT property.

You can also set the CLOCK_MODELINE_TOTAL property to the value
"current" to only show the current clocking instance.  Or it may be
the value "today", to only add up the time spent today on this task.
Other possible values are "repeat", "all", or "auto".

Finally, you can set your default for this property with
`org-clock-modeline-total'.
2009-06-02 13:47:50 +02:00
Carsten Dominik 5ce1c5708f Clocking: Fix bug in the new cocking code
The cursor could move while collecting the total time for the current
subtree.
2009-05-28 19:49:11 +02:00
Carsten Dominik 19748886eb Tables: Allow #+TBLFM to be indented 2009-05-28 17:44:12 +02:00
Carsten Dominik 2b6a3ac71d Clock notification: Cleaning up some issues 2009-05-28 13:24:23 +02:00
krick e17fdc3aa9 Merge branch 'origin' into clock-effort-notify 2009-05-28 11:17:13 +02:00
krick 59c6574c05 org-clock-sound could be
* nil. No sound played.
* any string, that is not a file. Make a beep
* file name. Emacs tries to play it with aplay, if available.
  If not, use standard emacs play-sound-file function.
2009-05-28 01:10:27 +02:00
krick 8c3ffc6259 Remove setq of the org-clock-sound here :) 2009-05-27 08:49:51 +02:00
krick 3c2099c29b Show total clocked time in mode line.
(Instead time since last start)
2009-05-26 23:30:38 +02:00
Carsten Dominik ae7b8f6b12 Push version number to 6.27trans 2009-05-26 15:41:44 +02:00
krick 7c2930e96b In case we set effort estimate on the currently clocked item,
show notification when time is up.
 * Linux only: If libnotify is used - the standard notification
   system in linux, then show notification with it.
   Note: Additional package libnotify-bin should be installed.
Additionally, use beep if variable org-clock-sound is set.
 * If aplay (alsa player) is available, interpret org-clock-sound as
   path to the file, which should be played.
2009-05-25 22:01:34 +02:00
krick d4b85109dd Show estimated effort in the mode-line if it is set.
* Set org-clock-effort variable in org-clock-in function.
* If org-clock-effort is not nil, show estimated effort in the mode-line.
2009-05-25 16:54:03 +02:00
Carsten Dominik 0421dead4b Release 6.27a 2009-05-25 16:04:45 +02:00
Carsten Dominik b681c7b26e Release 6.27 2009-05-23 08:22:04 +02:00
Carsten Dominik 88673a8724 Clock history: Second try to get fontification right. 2009-05-05 14:44:05 +02:00
Carsten Dominik e1f6e949ed Clock history: Present all tasks fontified
Bernt Hansen requested this.
2009-05-05 10:23:47 +02:00
Carsten Dominik 69e6d249aa Push version number to 6.26trans 2009-04-22 09:08:13 +02:00
Carsten Dominik 73854f435d Release 6.26d 2009-04-22 06:42:17 +02:00
Carsten Dominik 38b5a9e704 Clock: New variable to allow finding a recent task with `org-clock-goto' 2009-04-22 06:41:15 +02:00
Carsten Dominik 595e9603ac Release 6.26c 2009-04-21 20:26:27 +02:00
Carsten Dominik 654e629ed9 Clock: Make `C-c C-x C-j' jump to most recently clocked task as well.
If there is no running clock, this command will go to the most
recently clocked task.
2009-04-21 20:25:30 +02:00
Carsten Dominik e0cd12716a Release 6.26b 2009-04-21 10:21:36 +02:00
Bernt Hansen a04237d4f4 Revert "Jump to selected clock task when starting the clock"
This reverts commit 61dfa0c67f.

This wasn't such a great idea after all.  There is one case where
this is really annoying - if you are in the middle of displaying
an agenda view with lots of filters active and you change what you
are clocking it jumps away and you lose the agenda view.

This one case makes hitting a dedicated function key that runs
org-clock-goto more desireable.
2009-04-21 06:10:30 +02:00
Carsten Dominik b8a5f1a7fc Release 6.26a 2009-04-19 22:31:36 +02:00
Carsten Dominik ba66d2c8ae Release 6.26 2009-04-19 08:38:49 +02:00
Bernt Hansen 61dfa0c67f Jump to selected clock task when starting the clock
Move the point to the selected task when clocking in using the clock
history.  I find I'm always going to the currently clocked task after
picking it off of the menu and this saves one small step.

This could be optionally controlled by a variable.
2009-04-16 06:02:13 +02:00
Carsten Dominik 08b81dbb1d Minor fix 2009-04-14 12:40:25 +02:00
Carsten Dominik 633e8cdd90 Clock: Fix bugs when resuming the clock.
Adam Elliot writes:

>  Automatically resuming the clock after an Emacs restart
>  fails under the following cases:
>
>  1. If org-log-states-order-reversed set to t (default), and
>     a state change line precedes the clock line to resume.
>     Error message is "Cannot restart clock because task does
>     not contain unfinished clock".
>
[...]
>  2. If org-log-states-order-reversed set to nil.  Error
>     message is the same.  Reason: point is placed *after*
>     last clock line and so fails looking-at test.
>

This commit fixes the problem, in a slightly different way
than Adam proposed.  Instead of trying to fix the old way to
find the position of the clock, we now simple search the
entry if there is an unfinished clock and go there.  Since
new clocks are added before older ones, this should be a
safe bet.
2009-04-14 09:50:05 +02:00
Carsten Dominik ef2ee3df5d Version number pushed to 6.25trans 2009-04-07 18:43:42 +02:00
Carsten Dominik eef47f820f Release 6.25d 2009-04-05 15:29:45 +02:00
Carsten Dominik e2eebc83a1 Release 6.25c 2009-04-05 08:45:39 +02:00
Carsten Dominik 5624263d97 Release 6.25b 2009-04-03 19:18:41 +02:00
Carsten Dominik 1426f8bcfd Release 6.25a 2009-04-02 18:24:52 +02:00
Carsten Dominik aeb5cb98d6 Release 6.25 2009-04-01 16:00:39 +02:00
Carsten Dominik 098cf35983 Clock: Clock out when done also in indirect buffers
Chris Randle writes:

>  I have one giant Org-mode file for everything. I frequently use
>  `C-c C-x b' to take the current node and show it in a new frame
>  with narrow subtree so that I can concentrate on just that region
>  of my file. Rather like hoist in GrandView, if anyone remembers
>  that.
>
>  My Org Manual (6.24b) says "The indirect buffer...will contain
>  the entire buffer, but will be narrowed to the current
>  tree. Editing the indirect buffer will also change the original
>  buffer, but without affecting visibility in that buffer.
>
>  I've noticed that, when working in the new frame, changing the
>  TODO state of any item within the frame to DONE (when it is the
>  currently clocked in item) does not stop the clock. Going back to
>  my main frame and doing the same thing there on the same item
>  does stop the clock.
>
>  I haven't altered `org-clock-out-when-done', and Emacs reports
>  its value as t.

This was caused by the fact that markers seem to point to the
base buffer always, so we need to check if the current buffer's
base buffer is equal to the marker buffer.
2009-03-23 21:02:23 +01:00
Carsten Dominik 76ac6dce68 Bugfix: Fix indentation problems
David Maus writes:

>  When I start to clock a headline (C-c C-x C-i) that does not have a
>  LOGBOOK drawer orgmode inserts one but removes the indentation of the
>  first line below the headline:
>
>  Example:
>
>  * TODO Do something
>   Do this, do that etc.
>
>  after C-c C-x C-i becomes
>
>  * TODO Do something
>   :LOGBOOK:
>   CLOCK: [2009-03-20 Fr 19:03]--[2009-03-20 Fr 19:03] =>  0:00
>   :END:
>  Do this, do that etc.

Fixed with this commit, a patch written by Peter Jones.
2009-03-21 18:24:51 +01:00
Carsten Dominik 722fc9a490 Version number to 6.24trans 2009-03-14 08:03:10 +01:00
Carsten Dominik c8b6a9cc60 Release 6.24c 2009-03-12 12:51:17 +01:00
Carsten Dominik 680d8cb440 Release 6.24b 2009-03-10 17:50:17 +01:00
Carsten Dominik 7e8a387184 Release 6.24a 2009-03-09 05:37:09 +01:00
Carsten Dominik 20828f3176 Release 6.24 2009-03-05 21:11:18 +01:00
Carsten Dominik 0850b14c8f Clocktable: Use inactive time stamps for stepwise table
Adam Elliott writes:

>  When run in day-step mode, the clocktable header line for each day's
>  table contains an active timestamp.  I figure it should be an inactive
>  timestamp, since otherwise I get a junk entry in the agenda each day
>  (whatever heading was previous to the clocktable).
>
>  I'm talking about the output from a spec such as the following:
>
>  #+BEGIN: clocktable :block thisweek :step day

This commit is the patch Adam sent in.
2009-03-05 16:11:57 +01:00
Carsten Dominik 721dae7dd5 Bugfix: Better indentation for new clock/logbook drawers 2009-03-02 06:41:29 +01:00
Carsten Dominik c91bca9d1c Push version number to 6.23trans 2009-02-26 21:32:04 +01:00
Carsten Dominik 6c8beec225 Release 6.23b 2009-02-22 18:37:24 +01:00
Carsten Dominik 482216f300 Release 6.23a 2009-02-21 15:18:39 +01:00
Carsten Dominik 82f2fca21e Release 6.23 2009-02-20 11:16:03 +01:00
Carsten Dominik cac8788f35 Clocking: Capture clock in LOGBOOK drawer, abandon CLOCK drawer
Clock lines are now by default captured into the drawer LOGBOOK.  This
means that, if state notes are also captured into a drawer, they will
be mixed with notes.
2009-02-15 09:22:14 +01:00
Carsten Dominik 492a5b5ea9 Version number: Push to 6.22trans 2009-02-13 07:45:42 +01:00
Carsten Dominik c32de18ae0 Allow previous state to be shown in state change log notes.
Wanrong Lin writes:

     My TODO sequence is set up as following:

     (setq org-todo-keywords '((sequence "TODO(t)" "STARTED(s!)"
     "WAITING(w@/!)"      "MAYBE(m/!)" "DELEGATED(g@/!)"
     "DEFERRED(d!/!)" "HOLD(h!/!)" "|" "DONE(x)"      "CANCELED(c)")))

     The state change logging is great, but I wonder whether we can
     further improve it:

     1. Can we also include the original state in the log message?
     i.e.: instead of having      - State "DEFERRED"   [2009-02-11 Wed 11:38]
     we can have
     - State "DEFERRED"  from "HOLD" [2009-02-11 Wed 11:38]

     The message will be clearer, and useful even when somebody edited
     the TODO keyword in place without using the "org-todo" command
     (in that case, simply looking at all the "destination states" in
     the log message does not give us the right information).

This strikes me like a good idea, so I have implemented it with this
commit.
2009-02-12 09:48:07 +01:00
Carsten Dominik 651d2e7a14 Bugfix: Allow org-clock-into-drawer to be 1. 2009-02-11 16:17:38 +01:00
Carsten Dominik f993ecd67d Daniel Clemente writes:
Consider a file with 2 lines:

     ------------------
     **** heading

     ------------------

      Place the cursor at line 2 (where you can type). Then use C-c C-x C-i
      to start a clock.

      You have now 3 lines:

     ------------------
     **** heading
         CLOCK: [2009-02-07 sb 01:06]

     ------------------

      However, the cursor is still placed at line 2, like before. I think
      it would be more useful if it were moved to line 3 so that you can
      start writing right away, just as before.  This saves you the C-n
      needed to move again to a blank line.

This commit implements exactly this request.
2009-02-11 15:01:13 +01:00
Carsten Dominik 621bafc1b5 Clocking: Make insertion of the CLOCK drawer safer
Daniel Clemente noticed that the clock drawer, when it is created for
the second clock entry, will swallow a plain list item after it,
because it thinks it might be a clock note.

This commit makes this function check for indentation.  If the plain
list item is indented less than the last clock line, it will be
assumed that it does not belong to the clocking line, and the drawer
will not swallow the item.
2009-02-11 14:41:22 +01:00
Carsten Dominik bc5b0056e7 Release 6.22b 2009-02-10 20:21:33 +01:00
Carsten Dominik e592c77846 Release 6.22a 2009-02-10 10:11:23 +01:00
Carsten Dominik 8d213584ff Release 6.22 2009-02-10 08:23:35 +01:00
Carsten Dominik 93ec228f36 Push version number to 6.21trans 2009-02-03 00:06:22 +01:00
Carsten Dominik 0b424cb238 Release 6.21b 2009-02-02 21:42:20 +01:00
Carsten Dominik 2fa17ebf74 Release 6.21a 2009-02-02 14:23:54 +01:00
Carsten Dominik 193fab0788 Release 6.21 2009-02-02 12:18:44 +01:00
Carsten Dominik c1296074f2 Release 6.20i 2009-02-01 00:16:43 +01:00
Carsten Dominik 924110aecc Release 6.20h 2009-01-30 18:31:37 +01:00
Carsten Dominik f99b00f61c Release 6.20g 2009-01-30 09:20:41 +01:00
Carsten Dominik bb3570eae9 Release 6.20f 2009-01-29 15:29:07 +01:00
Carsten Dominik 11fa49dd21 Release 6.20e 2009-01-29 14:13:30 +01:00
Carsten Dominik 317f08c69b Release 6.20d 2009-01-29 10:38:35 +01:00
Carsten Dominik 435ac059bf Release 6.20c 2009-01-28 14:35:50 +01:00
Carsten Dominik bc19e4df69 Release 6.20b 2009-01-28 14:04:56 +01:00
Carsten Dominik 16f7c4f384 Release 6.20a 2009-01-28 12:28:54 +01:00
Carsten Dominik b81f597de0 Release 6.20 2009-01-28 09:30:12 +01:00
Carsten Dominik a89bbe5cab Clocktables: Fix display of ISO week.
David Bremner writes:

    I have a clocktable that begins like this.

    #+BEGIN: clocktable :maxlevel 2 :block 2009-W05 :scope agenda-with-archives
    Clock summary at [2009-01-27 Tue 17:15], for week 2009-W04.

    [contents snipped]

    #+END:

    Whatever week I put in :block, it puts one less in the title.  It
    seems actually gather the clock data from the right week, but the
    title is wrong?  Or I misunderstand something as usual :-).

There was a problem wit the week starting date.
2009-01-28 09:24:51 +01:00
Carsten Dominik 78b4ca8cfc Release 6.19e 2009-01-27 11:44:49 +01:00
Carsten Dominik 2860252c9e Minor fixes, and release 6.19d 2009-01-27 09:11:34 +01:00
Carsten Dominik c848dae4be Release 6.19c 2009-01-27 09:02:13 +01:00
Carsten Dominik f31255c8f3 Maintenance: Remove unused variables. 2009-01-26 11:04:45 +01:00
Carsten Dominik ea446a6ff7 Release 6.19b 2009-01-26 08:22:14 +01:00
Carsten Dominik 5e965557b3 Release 6.19a 2009-01-25 16:08:16 +01:00
Carsten Dominik 41e51dfef4 Release 6.19 2009-01-25 13:41:09 +01:00
Carsten Dominik 7d05ba72c8 Clock: Independent face for clock overlay display.
William Henney writes:

     If a heading has tags, then that heading's time summary
     overlay (shown by C-c C-x C-d) is displayed using the
     org-tag face. This looks a bit strange. Is it intended? It
     is especially noticeable in my case, since I have my tags
     shown in a smaller font.

This is cause by the fact that we use the `secondary-selection' face
here which only highlights but inherits the rest from what is below.
The idea was that these clock times should have the same color as the
headline they belong to, but this idea is defeated when a line has tags
with a very different face.

This commit introduces a separate face for this purpose, so that users
can customize it.
2009-01-22 07:27:36 +01:00
Carsten Dominik 19351e35c2 Version number: pushed to 6.18trans 2009-01-21 17:59:42 +01:00
Carsten Dominik 5f814319eb Release 6.18c 2009-01-21 10:34:03 +01:00
Carsten Dominik d164a22da6 Release 6.18a 2009-01-21 10:24:46 +01:00
Carsten Dominik b76b28f2a7 Release 6.18 2009-01-20 10:23:26 +01:00
Carsten Dominik 1371205fc2 Maintenance: Rename some ill-named functions. 2009-01-08 11:19:37 +01:00
Carsten Dominik 34867369df Push version number to 6.17trans 2009-01-07 13:27:02 +01:00
Carsten Dominik 6b686333fb Release 6.17c 2009-01-06 23:35:50 +01:00
Carsten Dominik 621d11687d Update copyright notice to 2009 2009-01-06 10:47:36 +01:00
Carsten Dominik da36bd29ab Release 6.17b 2009-01-06 09:56:42 +01:00
Carsten Dominik 35c0798d69 Release 6.17a 2009-01-05 13:25:58 +01:00
Carsten Dominik 2f38ef0c60 Release 6.17 2009-01-04 09:00:34 +01:00
Carsten Dominik 8915859c08 Version number back to 6.16trans. 2008-12-25 11:10:02 +01:00
Carsten Dominik 20f2f8e1e1 Release 6.16c 2008-12-25 11:06:35 +01:00
Carsten Dominik a8282e38c3 Version number: Pushed to 6.16trans. 2008-12-22 07:35:14 +01:00
Carsten Dominik f35b0549ec Release 6.16a 2008-12-21 12:47:50 +01:00
Carsten Dominik d89284b240 Release 6.16 2008-12-20 11:16:01 +01:00
Carsten Dominik 952c6b9901 Version number to 6.15trans. 2008-12-19 09:14:00 +01:00
Carsten Dominik 8ff0c60894 Release 6.15f 2008-12-18 23:38:53 +01:00
Carsten Dominik 2075b26a92 Pushing version number to 6.15trans. 2008-12-18 09:04:15 +01:00
Carsten Dominik ec702aa4ba Release 6.15d. 2008-12-17 11:52:55 +01:00
Carsten Dominik 181235f605 Release 6.15c. 2008-12-17 09:59:25 +01:00
Carsten Dominik 9029d93e3a Release 6.15b. 2008-12-17 09:18:32 +01:00
Bernt Hansen 757f6beed0 Fix typos in org-clock.el comments 2008-12-16 11:55:50 -05:00
Carsten Dominik 96d9a2e467 Release 6.15a 2008-12-16 10:40:42 +01:00
Carsten Dominik 67a50839e9 Release 6.15 2008-12-16 08:30:55 +01:00
Carsten Dominik c5ca477c38 Pushed version number to 6.14trans. 2008-12-10 23:34:16 +01:00
Carsten Dominik ac83bc01d7 Better implementation of unique entry IDs.
Unique identifiers for entries can now be used more efficiently.
Internally, a hash array has replaced the alist used so far to
keep track of the files in which an ID is defined.  This makes it
quite fast to find an entry by ID.

There is now a new link type which looks like this:

id:GLOBALLY-UNIQUE-IDENTIFIER

This link points to a specific entry.  When you move the entry to
a different file, for example if you move it to an archive
file, this link will continue to work.

The file /org-id.el/ contains an API that can be used to write
code using these identifiers, including creating IDs and finding
them wherever they are.

Org has its own method to create unique identifiers, but if the
system has /uuidgen/ command installed (Mac's and Linux systems
generally do), it will be used by default.  You an also select
the method by hand, using the variable =org-id-method=.

If the ID system ever gets confused about where a certain ID is,
it initiates a global scan of all agenda files with associated
archives, all files previously known containing any IDs, and all
currently visited Org-mode files to rebuild the hash.  You can
also initiate this by hand: =M-x org-id-update-id-locations=.
Running this command will also dump into the =*Messages*= buffer
information about any duplicate IDs.  These should not exist, but
if you /copy/ an entry with its properties, duplicate IDs will
inevitably be produced.  This is unavoidable in a plain text
system that allows you to edit the text in arbitrary ways, and a
portion of care on your side is needed to keep this system clean.

The hash is stored in the file =~/.emacs.d/.org-id-locations=.
This is also a change from previous versions where the file was
=~/.org=id-locations=.  Therefore, you can remove this old file
if you have it.  I am not sure what will happen if the =.emacs.d=
directory does not exists in your setup, but in modern Emacsen, I
believe it should exist.  If you do not want to use IDs across
files, you can avoid the overhead with tracking IDs by
customizing the variable =org-id-track-globally=.  IDs can then
still be used for links inside a single file.

IDs will also be used when you create a new link to an Org-mode
buffer.  If you use =org-store-link= (normally at =C-c l=) inside
en entry in an Org-mode buffer, and ID property will be created
if it does not exist, and the stored link will be an =id:= link.
If you prefer the much less secure linking to headline text, you
can configure the variable =org-link-to-org-use-id=.  The default
setting for this variable is =create-if-interactive=, meaning
that an ID will be created when you store a link interactively,
but not if you happen to be in an Org-mode file while you create
a remember note (which usually has a link to the place where you
were when starting remember).
2008-12-10 23:32:37 +01:00
Carsten Dominik 7b6ad9054e Release 6.14. 2008-12-06 07:34:30 +01:00
Carsten Dominik 0e157c59ba 6.14pre01
Moving toward a release.
2008-12-05 14:55:58 +01:00
Carsten Dominik db782da26b Remove unnecessary whitespace. 2008-12-04 15:33:43 +01:00
Carsten Dominik 825fdfa95e Change version number to 6.13trans. 2008-11-25 20:42:53 +01:00
Carsten Dominik eb48aaa7c1 Release 6.13a. 2008-11-24 12:22:56 +01:00
Carsten Dominik 06edd56942 Release 6.13 2008-11-23 08:10:04 +01:00
Carsten Dominik 3bd0676370 Issue warning if the clock cannot be resumed.
If a clock-save file tries to restore the running clock, but the task
does not have an unfinished clock, warn the user with a message.
2008-11-23 08:07:56 +01:00
Carsten Dominik 382eedaab4 Make sure the clocktable sees the first line of the buffer.
Org-mode still has a few operations that do not work well when the
first line of a buffer is a headline.  One was constructing the clock
table, but this one is eliminated by this patch.
2008-11-23 07:30:18 +01:00
Carsten Dominik 5810f0a8c9 6.13pre05
Getting close.....
2008-11-22 10:25:55 +01:00
Carsten Dominik db5c609be9 6.13pre04 2008-11-21 13:35:45 +01:00
Carsten Dominik 8a13a7704f Fix XEmacs compatibility problems. 2008-11-21 09:14:26 +01:00
Carsten Dominik 7d45c9f4bf 6.13p03 2008-11-21 07:18:35 +01:00
Carsten Dominik da7b292ce9 More clean-up of the clock persistence code.
This patch compacts the persistence code.  It also make sure that no
variables outside Org's name space are created.  Finally, it makes
sure that the resumed clock is not hidden after a restart of Emacs.
2008-11-21 06:19:29 +01:00
Carsten Dominik 0529c08e5b Do much more consistency checking when storing and resuming the clock.
Saving the clock history and the running clock could lead to pointers
to non-existing buffer, or to dired buffers of directories.  This
patch implements more consistency checks.

It also allows a new value for `org-clock-persist'.  When this is
`clock', only the running clock, but not the entire clock history
is saved.
2008-11-20 17:54:26 +01:00
Carsten Dominik 81e3b95843 6.13pre02. 2008-11-20 15:02:53 +01:00
Carsten Dominik 926bab3a67 Pushing version number to 6.13pre01. 2008-11-20 08:28:02 +01:00
Carsten Dominik 24b32f199b Switch version number to 6.12trans 2008-11-17 07:58:11 +01:00
Carsten Dominik 3b5007cd2b Release 6.12b. 2008-11-12 23:58:49 +01:00
Carsten Dominik b55ec41bc4 Release 6.12a
Because I forgot to push before I pressed the release button.....
2008-11-11 11:21:36 +01:00
Carsten Dominik ed81800ccf Release 6.12 2008-11-11 11:03:17 +01:00
Carsten Dominik e41a0d9608 Implement table formulas for clocktables.
Org-mode produces summaries of clocked items in the form of Org-mode
tables.  This patch implements the possibility to define formulas that
should be applied to the clock tables, in order to do additional
analysis.

Formulas for clock tables are supported in two ways.

First, a formula can simply be added by hand to a table.  Part of this
patch makes sure that, when the previous version of the table contains
a #+TBLFM: line, it will be copied to the new version.

Secondly, the clocktable definition allows a new parameter
`:formula'.  The string value of this parameter will be installed as
the formula line for the table.  If a formula parameter is given, it
will overrule any previous formula line.

As a special case, using the symbol `%' as the formula will install a
formula that will compute the fraction of total time that was spent in
a subtree.

In both cases, the formulas will be immediately evaluated after the
table has been created.
2008-11-10 20:57:48 +01:00
Carsten Dominik 1ffa6b76f5 Release 6.11c. 2008-11-09 08:20:00 +01:00
Carsten Dominik eb4f62ae34 Release 6.11a. 2008-11-08 22:29:54 +01:00
Carsten Dominik c708279809 Release 6.11 2008-11-08 16:43:48 +01:00
Carsten Dominik 2c0291287a Push version number to 6.11pre01.
We are moving toward the next release, please test!
2008-11-06 09:14:14 +01:00
Carsten Dominik 293d3311d6 Check for horizontally-split windows when shrinking a window.
So far, Org used either `fit-window-to-buffer' or
`shrink-window-if-larger-than-buffer' without any further checks when
displaying one of its many help and selection buffers.  This can cause
problems if the user has set up Emacs to split windows horizontally
rather than vertically, because the window being shrunken then may be
side-by-side with another window, and shrinking the height of one will
also change the other.

With this patch, shrinking a window always goes through the new
function `org-fit-window-to-buffer' which only acts if the current
window spans the whole width of the frame.

Furthermore, this function also helps with compatibility, because it
falls back to `shrink-window-if-larger-than-buffer' if
`fit-window-to-buffer' does not exist, as is the case on older version
of Emacs and XEmacs.
2008-11-03 13:38:25 +01:00
Carsten Dominik 99572d93b2 Bug fixes. 2008-10-28 09:52:52 +01:00
Carsten Dominik 7c40034fd8 Remove the dependence on time-stamp.el. 2008-10-28 09:46:42 +01:00
Carsten Dominik 67070b0289 Initial documentation of the new clock features. 2008-10-28 07:36:33 +01:00
James TD Smith 6ca2053982 Add clock persistence.
Clock-related data are saved when exiting emacs ands restored when emacs
is restarted. The data saved include the contents of `org-clock-history',
and the running clock, if there is one.

To use this, you will need to add

(require 'org-clock)
(org-clock-persistence-insinuate)

to your .emacs and either add

(setq org-clock-persist t)
(setq org-clock-in-resume t)

or set those options to t in custom.

This patch requires the clock resume patch.

Add missing blank line to changelog
2008-10-27 23:04:25 +00:00
James TD Smith a70426f115 Add clock resuming.
If the option `org-clock-resume' is t, and the first clock line in an entry is is
open, clocking into that task resumes the clock from that time.
2008-10-27 23:03:10 +00:00
Carsten Dominik 523cf1fe31 Release 6.10c. 2008-10-25 12:56:42 +02:00
Carsten Dominik 3794f574e2 Release 6.10b. 2008-10-25 12:54:49 +02:00
Carsten Dominik 88d4405e86 Release 6.10a. 2008-10-24 23:16:42 +02:00
Carsten Dominik 794839f1da Release 6.10. 2008-10-23 09:19:43 +02:00
Carsten Dominik b7db897e6d Moving toward the 6.10 release. 2008-10-22 09:57:42 +02:00
Carsten Dominik f70127dd3f Allow org-clock-in-switch-to-state to be a function.
Allow org-clock-in-switch-to-state to be a function. This lets you have
different clocked in states for different TODO keyword sets, for example

(defun ahkt-clock-state (state)
  (cond ((string= state "TOREAD") "READING")
	((string= state "TOWATCH") "WATCHING")
	(t state)))

Also fix indentation on clock lines, and empty clock drawers when they are
inserted.
2008-10-16 18:26:43 +02:00
Carsten Dominik 4574d894ce Release 6.09a. 2008-10-12 07:36:18 +02:00
Carsten Dominik 5ebc1a7982 Release 6.09. 2008-10-09 13:18:25 +02:00
Carsten Dominik 57e912c275 Push version number to 6.09pre01. 2008-10-07 15:45:58 +02:00
Carsten Dominik 4c55b885d5 Documentation fixes. 2008-10-05 12:57:01 +02:00
Carsten Dominik e195a3ee4b Release 6.08a. 2008-10-05 08:31:54 +02:00
Carsten Dominik c0292f955e Release 6.08. 2008-10-05 08:27:53 +02:00
Carsten Dominik 2a8dac9f70 Store remember notes under the current clock entry with `C-2 C-c C-c'.
Patch from James TD Smith, but modified.
2008-10-02 18:07:12 +02:00
Carsten Dominik d6d72b3436 Merge branch 'js' 2008-09-21 08:34:45 +02:00
Carsten Dominik feab6c1348 Change version number to 6.08-pre01 2008-09-21 08:34:23 +02:00
Carsten Dominik a8b3081610 Release 6.07b. 2008-09-21 08:26:30 +02:00
Carsten Dominik e6630ed359 Limit length of clock string and make it clickable.
Patch from James TD Smith.
2008-09-21 07:35:01 +02:00
Carsten Dominik b777e88fd6 Release 6.07a. 2008-09-19 16:19:32 +02:00
Carsten Dominik 194faab2b6 Bumping up the version number to 6.07. 2008-09-19 08:25:13 +02:00
Carsten Dominik 785cde4d2b Incude note when clock entry gets moved into a drawer. 2008-09-13 18:35:57 +02:00
Carsten Dominik f03ea46b3a The note buffer for clocking out now mentions the task. 2008-09-07 08:29:16 +02:00
Carsten Dominik 2c26217b88 Release 6.06b. 2008-07-25 14:58:41 -07:00
Carsten Dominik 177e154e6c Release 6.06a. 2008-07-24 06:42:03 -07:00
Carsten Dominik 14ffcc8b9a Release 6.06. 2008-07-24 06:26:02 -07:00
Carsten Dominik 989b2b6865 Fixed typo in docstring. 2008-07-09 11:37:25 -07:00
Bastien Guerry b68b57c99f Small doc fixes from Emacs (Juanma Barranquero) and a bug fix in org-exp.el.
See <E1KE2Mh-0005EC-CF@cvs.savannah.gnu.org> in emacs-commit@:
* org.el (org-agenda-skip-unavailable-files):
* org-clock.el (org-clock-out-when-done): Doc fixes.

The bug affected the exportation of commented subtree: case cannot be
ignored when checking for the COMMENT cookie ("Comment" is a frequent
word in french, and has a completely different meaning.)
2008-07-04 04:09:00 +02:00
Carsten Dominik b5ed7fca04 Version number bumped to 6.06pre01. 2008-07-02 13:34:26 -07:00
Carsten Dominik e6b8a60432 Fix bug with "yesterday" in clocktables. 2008-06-23 05:46:33 +02:00
Carsten Dominik 21499409c3 Release 6.05b. 2008-06-20 00:21:15 +02:00
Carsten Dominik 2a8f099e7e Release 6.05a. 2008-06-17 17:06:16 +02:00
Carsten Dominik e1c22570b7 Version number 6.05, this will be released soon. 2008-06-16 17:51:04 +02:00
Carsten Dominik e8202bf861 Version number 6.05pre01, with a detailed list of changes.
Yes, the 6.05 release is just around the corner.
2008-06-15 09:44:21 +02:00
Carsten Dominik c9ea8bc470 Release 6.04c. 2008-05-27 08:09:31 +02:00
Carsten Dominik 174cc21d08 Bug fix for removal of comments during export. 2008-05-25 16:15:25 +02:00
Carsten Dominik 3b2b3556b7 Use C-c ' to exit source code editing. 2008-05-25 14:54:53 +02:00
Carsten Dominik 0950127491 Release 6.04. 2008-05-25 09:08:46 +02:00
Carsten Dominik 9bd2896c94 Version number to 6.04pre01
We are preparing for another release.....
2008-05-24 22:35:23 +02:00
Carsten Dominik 8ee2a8b7d8 Default format for calc changed to (fload 8)
This gives better accuracy and less surprises.
2008-05-16 12:34:24 +02:00
Carsten Dominik 56a96e0364 Clock/add_time Format
Replace all occurrences of the format string "%d:%02d" with
org-time-clocksum-format, which contains the same string by default.

This allows anyone to customize the appearance of clock summaries.

For example:

  (setq org-time-clocksum-format "%02d:%02d")
2008-05-16 07:36:27 +02:00
Carsten Dominik b4159c5017 Release 6.03. 2008-05-15 04:40:55 +02:00
Carsten Dominik 4b8f738e62 Version number pumped to 6.03pre03 2008-05-14 10:32:24 +02:00
Carsten Dominik 77f1f31c99 Remove special characters as selection keys for clock history.
Patch from Bernt Hansen.
2008-05-09 21:40:50 +02:00
Carsten Dominik 66f801cbff Version number change to 6.03pre01.
Yes, we are moving to the 6.03 release.
2008-05-08 17:17:58 +02:00
Carsten Dominik 7972356d09 Allow up to 42 elements for the clock history. 2008-05-06 15:08:35 +02:00
Carsten Dominik fe5c248122 Sync copyright fixes from downstream Emacs 2008-05-06 14:47:44 +02:00
Carsten Dominik 453dbf7372 Bug fixes and documentation related to saving clock markers. 2008-05-02 09:01:56 +02:00
Carsten Dominik 3a94b2d07f Bug fix for clock drawers. 2008-05-01 10:04:14 +02:00
Carsten Dominik 6d6c6e1d5d Move markers with some cut-and-paste operations.
Clock-related markers and agenda markers used to get lost
when editing a file using cut and paste.  Now some cut
and past operations move the markers with them.  In particular,
structure editing like moving subtrees up and down.
Also, when exiting a remember buffer with a running clock, the clock
can now be moved along with the entry to the target location.
2008-05-01 09:52:45 +02:00
Carsten Dominik f476a046f5 Bug fixes related to clocking in with narrowed buffers. 2008-04-29 21:06:53 +02:00
Carsten Dominik 15db65ad72 Arch-tag lines and declaration fixes from upstream Emacs. 2008-04-29 07:15:41 +02:00
Carsten Dominik 49799dd08e Release 6.02b. 2008-04-27 07:43:19 +02:00
Carsten Dominik c490fe784a Bug fix for clock history.
Now it is possible to select also the current clocking task after
pressing C-u C-c C-x C-i.  What will happen then is that this
entry will be clocked out, and then clocked in again.
2008-04-26 07:03:19 +02:00
Carsten Dominik 619e082d83 Bug fixes concerning the Clock history. 2008-04-25 19:59:51 +02:00
Carsten Dominik 0082c0c129 Release 6.02a 2008-04-25 15:45:35 +02:00
Carsten Dominik 05d3162553 Bug fixes. 2008-04-25 15:44:07 +02:00
Carsten Dominik add34418c8 Implement a basic history system for recently clocked tasks.
Recently clocked tasks are now remembered as well as a default
task and an interrupted task.

There is no automatic clock-in yet.

Also, a number of bug fixes have sneaked into this patch,
sorry for the mess.
2008-04-25 08:18:49 +02:00
Carsten Dominik 1f6c502765 Work around XEmacs indentation problems.
There is an old XEmacs bug with indentation in the presence of
an extent with an invisibility property.  We work around this now
by turning the invisibility property off, temporarily.
2008-04-24 16:44:12 +02:00
Carsten Dominik 2ea352b4cf Release 6.02. 2008-04-24 10:29:47 +02:00
Carsten Dominik 739edc7849 6.02pre06, now for real! 2008-04-23 10:20:43 +02:00
Carsten Dominik 55235195fe Version number increase to 6.02pre-06. 2008-04-23 08:44:39 +02:00
Carsten Dominik 931aa5b895 Bugfix removing clock line that results to 0.00 hours.
There was a bug that removing the line could remove any amount of
invisible text after it.
2008-04-21 22:05:46 +02:00
Carsten Dominik 383774f360 New version number. 2008-04-20 18:18:51 +02:00
Carsten Dominik 3798fbb8f5 New version number, effort estimates work now. 2008-04-18 18:03:08 +02:00
Carsten Dominik 6237667df0 Option to remove clock lines that result into 0 minutes.
Proposed by Bernt Hansen.
2008-04-18 16:43:48 +02:00
Carsten Dominik f19c474a78 Bug fixes and come cleaning up. 2008-04-18 15:24:58 +02:00
Carsten Dominik f35c6615a5 Clocktables including archives. 2008-04-18 09:50:50 +02:00
Carsten Dominik 2763b2001c Allow search commands access to arhive files. 2008-04-18 05:34:16 +02:00
Carsten Dominik 4fda0399d5 Further steps concerning effort estimates. Still not done.
But I am pushing this, so that it can be tested......
2008-04-17 18:26:27 +02:00
Carsten Dominik 1a2d615023 6.02pre02, with an implementation of summaries in agenda columns. 2008-04-15 11:05:39 +02:00
Carsten Dominik 7e4a730ac7 Release 6.01c 2008-04-15 08:51:09 +02:00
Carsten Dominik b63bd61796 release 6.01b 2008-04-14 21:31:16 +02:00
Carsten Dominik 9068f7c1c6 Version number set to 6.01a, release 6.01a. 2008-04-14 20:00:38 +02:00
Carsten Dominik 62db67e9eb Correct dependencies in the Makefile.
Also a new variable and better implementation around export
processing in the background.
2008-04-14 14:59:37 +02:00
Carsten Dominik d237e3dd0a Version number set to 6.01, this will be the release. 2008-04-14 07:52:18 +02:00
Carsten Dominik 80a93d5d1b Version number bump, 6.00pre-6 2008-04-13 22:17:29 +02:00
Carsten Dominik 1018c67ebb Bug fix. 2008-04-10 14:50:39 +02:00
Carsten Dominik b7628661b1 Version number change to 6.00pre-5 2008-04-10 08:37:43 +02:00
Carsten Dominik d2d495df4f Apply patches by James TD Smith. 2008-04-10 08:27:56 +02:00
Carsten Dominik 15534acef0 Implemented new archiving mechanism: The Attic Sibling.
Archiving to the attic sibling means to move the entry to
become a child of a sibling with heading "Attic", that is also
marked with the ARCHIVE tag.
2008-04-08 12:29:28 +02:00
Carsten Dominik 417d3e5303 Version number bump to 6.00pre-3 2008-04-07 08:35:14 +02:00
Carsten Dominik b9293a6766 Make the agenda clockreport configurable.
We now have an option that allows to specify properties for the
report table.  Most interesting is probably to set :maxlevel.
2008-04-06 17:53:34 +02:00
Carsten Dominik 3ab4658e17 Implemented showing a clock report in the agenda.
This is a new display mode in the agenda view.  It appends a clock
table to the daily/weekly agenda view that covers clocked time
for the time span shown in the agenda, and also limited to the
files that were used to create the current view.
2008-04-06 17:25:47 +02:00
Carsten Dominik de99ecb8bb Created org-clock.el as split-off from org.el. 2008-04-03 17:58:13 +02:00