[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Orgmode] Timestamp increment inside tables

From: Niels Giesen
Subject: [Orgmode] Timestamp increment inside tables
Date: Thu, 03 May 2007 19:33:45 +0200
User-agent: Gnus/5.110006 (No Gnus v0.6) Emacs/22.0.95 (gnu/linux)

Hi Carsten,

Please consider this patch to `org-table-copy-down', serving to increment 
timestamps in
an org-table while copying down, similar to integer icrements:

--- org.el      2007-04-25 08:26:21.000000000 -0100
+++ org2.el     2007-05-03 19:24:00.776923788 -0100
@@ -6495,7 +6495,11 @@
 column to be filled row-by-row.
 If the variable `org-table-copy-increment' is non-nil and the field is an
-integer, it will be incremented while copying."
+integer or a timestamp, it will be incremented while copying.  In the case of
+a timestamp, if the cursor is on the year, change the year.  If it is on the
+month or the day, change that.  Point will stay on the current date field
+in order to easily repeat the interval."
   (interactive "p")
   (let* ((colpos (org-table-current-column))
+        (column (- (point) (point-at-bol)))
         (field (org-table-get-field))
         (non-empty (string-match "[^ \t]" field))
@@ -6526,5 +6530,8 @@
          (insert txt)
-         (org-table-align))
+         (org-table-align)
+         (when (and org-table-copy-increment (org-at-timestamp-p t))
+           (goto-char (+ (point-at-bol) column))
+           (org-timestamp-up 1)))
       (error "No non-empty field found"))))
Table alignment does not seem to pose any problems, but this is one thing that 
require some critical looking into.


Niels Giesen

PS: its use? Making expenses claims for train tickets without having to fire up 
It's always darkest just before the lights go out.
                -- Alex Clark

reply via email to

[Prev in Thread] Current Thread [Next in Thread]