From mboxrd@z Thu Jan 1 00:00:00 1970 From: Marcin Borkowski Subject: Re: hook for inserting headlines Date: Wed, 14 Jan 2015 21:54:59 +0100 Message-ID: <87mw5lhyl8.fsf@wmi.amu.edu.pl> References: <5c980d6fde7a4961b5270932bcf62be4@fcmailsvr2.familycareinc.org> <87y4p642r7.fsf@wmi.amu.edu.pl> <1da9467831234dd58d54fd71a0f3fa93@fcmailsvr2.familycareinc.org> Mime-Version: 1.0 Content-Type: text/plain Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:51410) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YBUy8-0000s2-4V for emacs-orgmode@gnu.org; Wed, 14 Jan 2015 15:55:16 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1YBUy0-0000vL-2u for emacs-orgmode@gnu.org; Wed, 14 Jan 2015 15:55:12 -0500 Received: from msg.wmi.amu.edu.pl ([2001:808:114:2::50]:59278) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YBUxz-0000tL-Sb for emacs-orgmode@gnu.org; Wed, 14 Jan 2015 15:55:04 -0500 Received: from localhost (localhost [127.0.0.1]) by msg.wmi.amu.edu.pl (Postfix) with ESMTP id E903947F10 for ; Wed, 14 Jan 2015 21:55:01 +0100 (CET) Received: from msg.wmi.amu.edu.pl ([127.0.0.1]) by localhost (msg.wmi.amu.edu.pl [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id iVCAyiXYZFqk for ; Wed, 14 Jan 2015 21:55:01 +0100 (CET) Received: from localhost (117-116.echostar.pl [213.156.117.116]) by msg.wmi.amu.edu.pl (Postfix) with ESMTPSA id 6244947F07 for ; Wed, 14 Jan 2015 21:55:01 +0100 (CET) In-reply-to: <1da9467831234dd58d54fd71a0f3fa93@fcmailsvr2.familycareinc.org> 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: "emacs-orgmode@gnu.org" On 2015-01-14, at 18:27, Subhan Michael Tindall wrote: >> -----Original Message----- >> From: emacs-orgmode-bounces+subhant=familycareinc.org@gnu.org >> [mailto:emacs-orgmode-bounces+subhant=familycareinc.org@gnu.org] On >> Behalf Of Marcin Borkowski >> Sent: Tuesday, January 13, 2015 4:36 PM >> To: emacs-orgmode@gnu.org >> Subject: Re: [O] hook for inserting headlines >> >> >> On 2015-01-14, at 01:18, Subhan Michael Tindall >> wrote: >> >> > Is there a hook that is run with creating a new headline in org mode? >> > I have several properties that I always set for working todos & I'd >> > like to have them automatically created when I make a new headline >> > (say when I hit return at the end of it) >> > IE: >> > ,*** this is a sample headline >> > >> > ,*** this is a sample headline >> > :PROPERTIES: >> > >> > :END: >> > >> > And maybe even an interactive schedule/deadline prompt? >> > I have a function to create the properties drawer but don't know how to >> hook it to headline creation. >> >> Why not create a specialized function which might ask for the title of the >> headline and insert that headline along with the properties? Or even insert >> an /empty/ headline with these properties and place the point after the >> string of asterisks and a space, so that you can type the title? Or, if we are at >> it, why not use Yasnippet for that? >> >> Not exactly what you want, but maybe this is what you /need/? >> >> If not, I guess that advising org-return /might/ be the way to go. >> (For instance, you might check whether the user hits RET with the point at >> the end of a headline with empty contents.) > This last one sounds closest. I'm not really familiar with how advising a function works though. > The point (for me) is to avoid interrupting my 'flow' while setting up projects, TODOs, etc. I'm pretty well programmed to manually type my headlines and having some of the extra drudge work get added in automatically would help my process quite a bit. > Thanks for the suggestion! Adivising functions is easy (especially in Emacs 24.4+). Basically, you give some code which will be executed before or after (or both) the advised function. Also, Yasnippet might really be the way to go. Very easy to set up and configure. See http://sachachua.com/blog/2015/01/thinking-make-better-use-yasnippet-emacs-workflow/, for instance. (Sacha also mentions org-capture, which is yet another alternative.) You might configure Yasnippet so that if you type e.g. "todo" and press TAB, it "expands" to the template of your headline, with the drawer and such, with the point in desired place. Hth, -- Marcin Borkowski http://octd.wmi.amu.edu.pl/en/Marcin_Borkowski Faculty of Mathematics and Computer Science Adam Mickiewicz University