From mboxrd@z Thu Jan 1 00:00:00 1970 From: Nick Dokos Subject: Re: property values and timestamps Date: Fri, 14 Oct 2011 11:59:29 -0400 Message-ID: <25568.1318607969@alphaville.dokosmarshall.org> References: <11760.1318571403@alphaville.dokosmarshall.org> Reply-To: nicholas.dokos@hp.com Return-path: Received: from eggs.gnu.org ([140.186.70.92]:58729) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1REkAZ-00060r-IS for emacs-orgmode@gnu.org; Fri, 14 Oct 2011 11:59:36 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1REkAY-0007ry-BN for emacs-orgmode@gnu.org; Fri, 14 Oct 2011 11:59:35 -0400 Received: from g6t0186.atlanta.hp.com ([15.193.32.63]:35605) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1REkAY-0007rl-7p for emacs-orgmode@gnu.org; Fri, 14 Oct 2011 11:59:34 -0400 In-Reply-To: Message from Skip Collins of "Fri, 14 Oct 2011 11:40:07 EDT." List-Id: "General discussions about Org-mode." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org Sender: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org To: Skip Collins Cc: nicholas.dokos@hp.com, emacs-orgmode@gnu.org Skip Collins wrote: > > org-time-stamp-inactive uses the minibuffer, and calling > > a function that uses the minibuffer *from* the minibuffer (as > > org-set-property would do) make emacs unhappy. > > Elisp does seem to allow recursive minibuffers: > http://www.gnu.org/software/emacs/elisp/html_node/Recursive-Mini.html > > Would the implementation of this for org-set-property be straightforward? > Oh, very nice: I didn't know about that. Here's a proof-of-concept snippet, redefining the org-completing-read function to bind org-time-stamp-inactive to a key ("!" in the following, but you will probably want to season to taste): --8<---------------cut here---------------start------------->8--- (setq enable-recursive-minibuffers t) (defun org-completing-read (&rest args) "Completing-read with SPACE being a normal character." (let ((minibuffer-local-completion-map (copy-keymap minibuffer-local-completion-map))) (org-defkey minibuffer-local-completion-map " " 'self-insert-command) (org-defkey minibuffer-local-completion-map "?" 'self-insert-command) (org-defkey minibuffer-local-completion-map "!" 'org-time-stamp-inactive) (apply 'org-icompleting-read args))) --8<---------------cut here---------------end--------------->8--- It even seems to work!-) Thanks, Nick