From: Carsten Dominik <cdominik@newartisans.com>
To: emacs-orgmode@gnu.org
Subject: [Accepted] Allow inactive timestamps in org-expiry (copy of lost patch)
Date: Tue, 24 May 2011 15:18:39 +0200 (CEST) [thread overview]
Message-ID: <20110524131839.DED6445FFFA@u016822.science.uva.nl> (raw)
In-Reply-To: 20110328202149.67a32bdc@hsdev.com
Patch 722 (http://patchwork.newartisans.com/patch/722/) is now "Accepted".
Maintainer comment: none
This relates to the following submission:
http://mid.gmane.org/%3C20110328202149.67a32bdc%40hsdev.com%3E
Here is the original message containing the patch:
> Content-Type: text/plain; charset="utf-8"
> MIME-Version: 1.0
> Content-Transfer-Encoding: 7bit
> Subject: [O] Allow inactive timestamps in org-expiry (copy of lost patch)
> Date: Mon, 28 Mar 2011 22:21:49 -0000
> From: Marcel van der Boom <marcel@hsdev.com>
> X-Patchwork-Id: 722
> Message-Id: <20110328202149.67a32bdc@hsdev.com>
> To: emacs-orgmode@gnu.org
>
> Hi,
>
> Attached is a patch to org-expiry.el in contrib/lisp to allow a
> customization of the timestamps inserted by org-expiry for 'CREATED'
> and 'EXPIRED' properties.
>
> This patch is what is attached to the message displayed at [1]. I have
> been using this patch for a while and it works fine. From searching it
> looks like this patch was 'forgotten', but I may have overlooked
> something.
>
> If the patch was rejected, you can ignore me. If it was forgotten I'd
> like to request to include it.
>
> Thx,
> marcel
>
> [1] http://www.mail-archive.com/emacs-orgmode@gnu.org/msg20882.html
>
>
> diff --git a/contrib/lisp/org-expiry.el b/contrib/lisp/org-expiry.el
> index 4a49399..930b921 100644
> --- a/contrib/lisp/org-expiry.el
> +++ b/contrib/lisp/org-expiry.el
> @@ -81,6 +81,11 @@
> :tag "Org Expiry"
> :group 'org)
>
> +(defcustom org-expiry-inactive-timestamps nil
> + "Insert inactive timestamps for the created and expired time properties"
> + :type 'boolean
> + :group 'org-expiry)
> +
> (defcustom org-expiry-created-property-name "CREATED"
> "The name of the property for setting the creation date."
> :type 'string
> @@ -283,21 +288,25 @@ to today's date. With two `C-u' prefixes, prompt the user for to
> update the date."
> (interactive "P")
> (let* ((d (org-entry-get (point) org-expiry-created-property-name))
> - d-time d-hour)
> + d-time d-hour timestr)
> (when (or (null d) arg)
> ;; update if no date or non-nil prefix argument
> ;; FIXME Use `org-time-string-to-time'
> - (setq d-time (if d (apply 'encode-time (org-parse-time-string d))
> + (setq d-time (if d (org-time-string-to-time d)
> (current-time)))
> (setq d-hour (format-time-string "%H:%M" d-time))
> + (setq timestr
> + ;; two C-u prefixes will call org-read-date
> + (if (equal arg '(16))
> + (concat "<" (org-read-date
> + nil nil nil nil d-time d-hour) ">")
> + (format-time-string (cdr org-time-stamp-formats))))
> + ;; maybe transform to inactive timestamp
> + (if org-expiry-inactive-timestamps
> + (setq timestr (concat "[" (substring timestr 1 -1) "]")))
> (save-excursion
> (org-entry-put
> - (point) org-expiry-created-property-name
> - ;; two C-u prefixes will call org-read-date
> - (if (equal arg '(16))
> - (concat "<" (org-read-date
> - nil nil nil nil d-time d-hour) ">")
> - (format-time-string (cdr org-time-stamp-formats))))))))
> + (point) org-expiry-created-property-name timestr)))))
>
> (defun org-expiry-insert-expiry (&optional today)
> "Insert a property with the expiry date.
> @@ -306,15 +315,20 @@ and insert today's date."
> (interactive "P")
> (let* ((d (org-entry-get (point) org-expiry-expiry-property-name))
> d-time d-hour)
> - (setq d-time (if d (apply 'encode-time (org-parse-time-string d))
> + (setq d-time (if d (org-time-string-to-time d)
> (current-time)))
> (setq d-hour (format-time-string "%H:%M" d-time))
> + (setq timestr (if today
> + (format-time-string (cdr org-time-stamp-formats))
> + (concat "<" (org-read-date
> + nil nil nil nil d-time d-hour) ">")))
> + ;; maybe transform to inactive timestamp
> + (if org-expiry-inactive-timestamps
> + (setq timestr (concat "[" (substring timestr 1 -1) "]")))
> +
> (save-excursion
> (org-entry-put
> - (point) org-expiry-expiry-property-name
> - (if today (format-time-string (cdr org-time-stamp-formats))
> - (concat "<" (org-read-date
> - nil nil nil nil d-time d-hour) ">"))))))
> + (point) org-expiry-expiry-property-name timestr))))
>
> ;;; Functions to process expired entries:
>
>
prev parent reply other threads:[~2011-05-24 13:18 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-03-28 18:21 [PATCH] Allow inactive timestamps in org-expiry (copy of lost patch) Marcel van der Boom
2011-03-28 18:55 ` Nick Dokos
2011-03-28 20:21 ` Marcel van der Boom
2011-05-24 19:07 ` David Maus
2011-05-24 13:18 ` Carsten Dominik [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: https://www.orgmode.org/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20110524131839.DED6445FFFA@u016822.science.uva.nl \
--to=cdominik@newartisans.com \
--cc=emacs-orgmode@gnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this public inbox
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).