From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ali Tofigh Subject: Re: Feature suggestion: highlights Date: Fri, 16 Apr 2010 12:00:35 -0400 Message-ID: References: <87r5mgfcp4.fsf@gollum.intra.norang.ca> Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Return-path: Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1O2nyW-0005eA-Q8 for emacs-orgmode@gnu.org; Fri, 16 Apr 2010 12:01:00 -0400 Received: from [140.186.70.92] (port=35098 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1O2nyU-0005cV-9P for emacs-orgmode@gnu.org; Fri, 16 Apr 2010 12:01:00 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.69) (envelope-from ) id 1O2nyS-0006Ru-4s for emacs-orgmode@gnu.org; Fri, 16 Apr 2010 12:00:58 -0400 Received: from mail-qy0-f179.google.com ([209.85.221.179]:50580) by eggs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1O2nyR-0006Rn-VD for emacs-orgmode@gnu.org; Fri, 16 Apr 2010 12:00:56 -0400 Received: by qyk9 with SMTP id 9so3034960qyk.1 for ; Fri, 16 Apr 2010 09:00:55 -0700 (PDT) In-Reply-To: <87r5mgfcp4.fsf@gollum.intra.norang.ca> List-Id: "General discussions about Org-mode." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org Errors-To: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org To: Bernt Hansen Cc: emacs-orgmode On Thu, Apr 15, 2010 at 20:44, Bernt Hansen wrote: > Ali Tofigh writes: > >> First, I want to thank everyone who has worked on creating org-mode. I >> am a new user and I enjoy using org-mode a lot! Thank you for your >> efforts. >> >> Second, I have a suggestion for a feature: A new "highlight" feature >> which can also be tagged and made into a todo item, just like >> headlines. For example (using -:: text ::- as example begin/end pairs) >> >> ---8<----- >> * journal >> ** group meeting [2010-02-17 Wed 14:00] >> =C2=A0 =C2=A0text text text... >> >> =C2=A0 =C2=A0-:: should try the above in project 1 ::- =C2=A0=C2=A0 :ide= a: >> =C2=A0 =C2=A0-:: Sandy made a good point there! ::- >> =C2=A0 =C2=A0-:: TODO Sandy wants me to mail her the details ::- >> ---8<----- >> >> This would allow users to stay in the same level when writing their >> documents instead of creating new ones with headlines. Also, it would >> allow users to create todo items in the context in which they arose. >> >> An alternative that may be easier to implement is to extend tagging >> and todos to list items: >> >> - should try the above in project 1 =C2=A0=C2=A0 :idea: >> - Sandy made a good point there! >> - TODO Sandy wants me to mail her the details >> >> Perhaps this has not been a feature that has been requested before. >> But I believe that if it is implemented, it will be used frequently by >> users. What do you think? > > Hi Ali, > > There are a few problems with this proposal. =C2=A0Currently tags can onl= y > live on headlines so tagging your list items and general text isn't > going to work as an org-mode tag. =C2=A0I doubt this will change anytime = soon. > > I take meeting notes in org-mode regularly and just use lists for point > form notes which I distribute. =C2=A0I have non-org-mode todo and done > entries in my notes as part of the list. =C2=A0Something like this: > > ,---- > | =C2=A0 - notes for meeting go here > | =C2=A0 - more notes > | =C2=A0 - TODO: remember to do something > | =C2=A0 - more notes > | =C2=A0 =C2=A0 - DONE: did that thing > | =C2=A0 - etc... > `---- > > then I highlight the notes for the meeting and run a function to convert > the - TODO: and - DONE: entries into something easily seen in the flow > of text. > > (defun bh/prepare-meeting-notes () > =C2=A0"Prepare meeting notes for email > =C2=A0 Take selected region and convert tabs to spaces, mark TODOs with l= eading >>>, and copy to kill ring for pasting" > =C2=A0(interactive) > =C2=A0(let (prefix) > =C2=A0 =C2=A0(save-excursion > =C2=A0 =C2=A0 =C2=A0(save-restriction > =C2=A0 =C2=A0 =C2=A0 =C2=A0(narrow-to-region (region-beginning) (region-e= nd)) > =C2=A0 =C2=A0 =C2=A0 =C2=A0(untabify (point-min) (point-max)) > =C2=A0 =C2=A0 =C2=A0 =C2=A0(goto-char (point-min)) > =C2=A0 =C2=A0 =C2=A0 =C2=A0(while (re-search-forward "^\\( *-\\\) \\(TODO= \\|DONE\\): " (point-max) t) > =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0(replace-match (concat (make-string (le= ngth (match-string 1)) ?>) " " (match-string 2) ": "))) > =C2=A0 =C2=A0 =C2=A0 =C2=A0(goto-char (point-min)) > =C2=A0 =C2=A0 =C2=A0 =C2=A0(kill-ring-save (point-min) (point-max)))))) > > which gives me this: > > ,---- > | =C2=A0 - notes for meeting go here > | =C2=A0 - more notes > | >>> TODO: remember to do something > | =C2=A0 - more notes > | >>>>> DONE: did that thing > | =C2=A0 - etc... > `---- > > then I can just paste them into some mail client and mail them to all of > the participants. =C2=A0The TODO: and DONE: entries are easy to see in th= e > text and the body of the heading is just plain text. =C2=A0I'm free to li= nk > to these meeting notes as a reference. =C2=A0If any of the TODO items in = the > meeting are for me I create a separate set of TODOs for each of those -- > the meeting is over and the task for the meeting is marked DONE. =C2=A0Th= e > original TODOs are easy to see in the context they were created. > > It's not fancy... but it works and it's _fast_. Thanks for sharing that! I'll have to play around to see what works for me. But this setup sounds really interesting. Thanks for the elist-code too. After all these years of programming, maybe I'm finally motivated enough to actually learn elisp. Not a small feat by org-mode given years of resistance. Cheers, /Ali