Re: [O] Structuring and (cross)linking information in org-mode
Dear John, also to you, many thanks for your time to answer so many questions of mine. I’ll comment them below: Am 03.07.2015 um 16:02 schrieb John Kitchin jkitc...@andrew.cmu.edu: This all sounds doable, but it will take some work ;) I guessed so. ;-) But that’s the trade-off. Take some ready-made software that works out of the box, but then it won’t work as you want it to work. The other extreme is to program a personalized solution entirely on your own. I have done this before. But I hope Emacs is something in-between. The framework is there, and it’s only a matter of writing some scripts to make it work exaclty as I wish. The problem is also, that I don’t know exactly in advance how I’d like it to work. These wishes will evolve with time. Another advantage of scripting an existend application. I can adapt it easier to new requirements than re-writing an entire application. ;-) I know how to make tasks with the org-todo-keywords. Now I want to mark chunks of information in that file in a similar way, but keep it outside of the task workflow. I’d like to have that information accessible and finable easily, and I want to differentiate different kinds of information. Quick example: * TODO This is my first task Some task description goes here * MEETINGNOTE of meeting 2015-07-02 MyCompany I think you should probably use a tag of :MEETINGNOTE: here, instead of a TODO keyword like this. TODO keywords imply to me some kind of changeable state not a type of content. Alteratively you could make it a property. with your curson on the headline, type C-c C-c and enter MEETINGNOTE to add the tag. I have to press „TAB“ („free“) before entering a new tag. Might be because I already defined some tags to be used in quick access. You are right, somehow a tag is more suuitable for this kind of marking information. However, I just came across the possiblitiy of defining several TODO keyword workflows in parallel. I could imagine to have one for my own todos (TODO), one for other people’s todos that I’m monitoring (TASK) and maybe also one for information that expires or becomes outdated. Like this, partially taken from the org-secretary explanation, but adapted by me: (setq org-todo-keywords '((sequence TODO(t) | DONE(d) CANCELLED(c)) (sequence TASK(f) | DONE(d)) (sequence „INFO(i) |“ „INFO-EXPIRED(e Or would you consider this total nonsense? I know there is the archiving feature. Maybe expired info should be archived instead of maker „expired“? ;-) This brings me to another idea: Maybe you know the outliner „NoteCase Pro“ (www.notecasepro.com http://www.notecasepro.com/). I have written some plugins for it (www.notecaseproplugins.com http://www.notecaseproplugins.com/), one of them being a plugin for helping to keep your files clean. One way to keep them clean is to assign an expiry date to every chunk of information in the file. If you generate an entry, you are automatically asked to quickly choose a validity time span (only a rough one, so you don't need to think too much at this point: one day, one week, one month, one year, 5 years, forever). Based on your selection, the plugin sets the corresponding date in the ffuture as expiry date for this piece of information. Everytime you open your file, the plugin searches for expired info and present only one expired info per session (so you are not overwhelemed by having to make decisions) to you and lets you choose to archive it, prolong the validity time span or to delete the expiry date entirely. I think in times of gigantic flood of information we need such mechanisms to be able to maintain our information. Does something like this exist for Emacs, too? Or is it already easily possible by using dates and the agenda…? ** participants *** — John Doe *** — Mary Sample ** Goal This is the description of meeting goal ** Outcome Outcome of the meeting * PERSON John Doe Street address email address telephone PERSON should also be a tag, or look at org-contacts, where those bits in the body would be stored as properties. org-contacts seems to have a similar use case as BBDB (big brother data base). What is better? :-D I know, this is a very sloppy question. New attempt: Which one would you recommend? I’d like to have a full-fledged contacts database that i’d like to sync with CardDAV servers and possibly iCloud, so that ai can use the same address data in any email client / telephone assistance solution on the Mac, and also inside Emacs for referring to todos etc., maybe to write letters inside Emacs with LaTex export and automatic inclusion of the snail mail address of the person etc. etc. All on a Mac. (Currently using Aquamacs, but maybe switching to Emacs Mac Port later, as that seems to be more standard, more stable and also less performance-hungry). * COMPANY MyCompany address field of operation employees: - John Doe - Mary
Re: [O] Structuring and (cross)linking information in org-mode
Am 05.07.2015 um 04:21 schrieb Haider Rizvi hari...@gmail.com: I use a yasnippet for writing down my meeting minutes, that also creates some properties. Daniel may find it useful. Indeed I do! This is great, and will probably have its place in my future setup. I will look into this. Thanks, Daniel
Re: [O] Structuring and (cross)linking information in org-mode
Dear Pascal, thanks for your answer. org-secretary looks vey interesting. I have already looked into this before, but not deeply enough (because I didn’t understand most of it yet, but now my Emacs knowledge is good enough to understand most of it). Personalized agendas will definitly be a component of my new system! Thanks! Daniel Am 03.07.2015 um 14:25 schrieb Pascal Fleury pas...@telefleuries.com: I think properties can be used for this. I personally like the org-secretary module, described nicely here by the author: http://juanreyero.com/article/emacs/org-teams.html http://juanreyero.com/article/emacs/org-teams.html Also, personalized agendas http://orgmode.org/manual/Storing-searches.html#Storing-searches for your entire set of org-files is useful here.
Re: [O] Structuring and (cross)linking information in org-mode
Daniel Hertrich writes: Dear John, also to you, many thanks for your time to answer so many questions of mine. I’ll comment them below: Am 03.07.2015 um 16:02 schrieb John Kitchin jkitc...@andrew.cmu.edu: This all sounds doable, but it will take some work ;) I guessed so. ;-) But that’s the trade-off. Take some ready-made software that works out of the box, but then it won’t work as you want it to work. The other extreme is to program a personalized solution entirely on your own. I have done this before. But I hope Emacs is something in-between. The framework is there, and it’s only a matter of writing some scripts to make it work exaclty as I wish. The problem is also, that I don’t know exactly in advance how I’d like it to work. These wishes will evolve with time. Another advantage of scripting an existend application. I can adapt it easier to new requirements than re-writing an entire application. ;-) I think Emacs+org-mode is somewhere in the middle there. I know how to make tasks with the org-todo-keywords. Now I want to mark chunks of information in that file in a similar way, but keep it outside of the task workflow. I’d like to have that information accessible and finable easily, and I want to differentiate different kinds of information. You might look at inlinetasks. C-c C-x t you can put headline like items in a headline that doesn't change the headline level. Quick example: * TODO This is my first task Some task description goes here * MEETINGNOTE of meeting 2015-07-02 MyCompany I think you should probably use a tag of :MEETINGNOTE: here, instead of a TODO keyword like this. TODO keywords imply to me some kind of changeable state not a type of content. Alteratively you could make it a property. with your curson on the headline, type C-c C-c and enter MEETINGNOTE to add the tag. I have to press „TAB“ („free“) before entering a new tag. Might be because I already defined some tags to be used in quick access. You are right, somehow a tag is more suuitable for this kind of marking information. However, I just came across the possiblitiy of defining several TODO keyword workflows in parallel. I could imagine to have one for my own todos (TODO), one for other people’s todos that I’m monitoring (TASK) and maybe also one for information that expires or becomes outdated. Like this, partially taken from the org-secretary explanation, but adapted by me: (setq org-todo-keywords '((sequence TODO(t) | DONE(d) CANCELLED(c)) (sequence TASK(f) | DONE(d)) (sequence „INFO(i) |“ „INFO-EXPIRED(e This is certainly reasonable. I use this for various states of proposals and manuscripts. For example, just in a file called manuscripts.org, I have this at the top: #+TODO: TODO PREPARATION | SUBMITTED REVISING | ACCEPTED DONE REJECTED and in proposals.org: #+TODO: TODO PENDING | DONE DECLINED AWARDED EXPIRED In my mind TODO keywords should represent states of a headline, not categories (which I use tags for). Although states can also be used as a category, e.g. all PENDING proposals. I think the INFO/INFO-EXPIRED should be tags though (just my opinion). What headline is not information? and when it is expired, it should be archived. Or would you consider this total nonsense? I know there is the archiving feature. Maybe expired info should be archived instead of maker „expired“? ;-) The point of archiving in org-mode is to keep the information out of the agenda. You can use a tag ARCHIVE (C-c C-x a) for this if you want to keep the headline in the file, or setup archiving to move the headline to a new file with C-c C-x C-a. This brings me to another idea: Maybe you know the outliner „NoteCase Pro“ (www.notecasepro.com http://www.notecasepro.com/). I have written some plugins for it (www.notecaseproplugins.com http://www.notecaseproplugins.com/), one of them being a plugin for helping to keep your files clean. One way to keep them clean is to assign an expiry date to every chunk of information in the file. If you generate an entry, you are automatically asked to quickly choose a validity time span (only a rough one, so you don't need to think too much at this point: one day, one week, one month, one year, 5 years, forever). Based on your selection, the plugin sets the corresponding date in the ffuture as expiry date for this piece of information. Everytime you open your file, the plugin searches for expired info and present only one expired info per session (so you are not overwhelemed by having to make decisions) to you and lets you choose to archive it, prolong the validity time span or to delete the expiry date entirely. You could pretty easily expire headlines based on a date. see http://orgmode.org/w/?p=org-mode.git;a=blob_plain;f=contrib/lisp/org-expiry.el;hb=HEAD I think in times of gigantic flood of information we need such mechanisms to be able to maintain our information. Does
Re: [O] Structuring and (cross)linking information in org-mode
Pascal Fleury pas...@telefleuries.com writes: I think properties can be used for this. I use a yasnippet for writing down my meeting minutes, that also creates some properties. Daniel may find it useful. # -*- mode: snippet -*- # name : mtgmins # key : mtgmins # contributor: Haider Rizvi # -- `(org-insert-heading nil)`[`(format-time-string %Y-%m-%d %a (current-time))`] ${1:Meeting title} Attendees: Haider, ${2:Attendees} `(org-set-property STYLE Meeting minutes)` `(org-set-property STARTED (format-time-string [%Y-%m-%d %H:%M:%S] (current-time)))` - Haider
Re: [O] Structuring and (cross)linking information in org-mode
This all sounds doable, but it will take some work ;) I know how to make tasks with the org-todo-keywords. Now I want to mark chunks of information in that file in a similar way, but keep it outside of the task workflow. I’d like to have that information accessible and finable easily, and I want to differentiate different kinds of information. Quick example: * TODO This is my first task Some task description goes here * MEETINGNOTE of meeting 2015-07-02 MyCompany I think you should probably use a tag of :MEETINGNOTE: here, instead of a TODO keyword like this. TODO keywords imply to me some kind of changeable state not a type of content. Alteratively you could make it a property. with your curson on the headline, type C-c C-c and enter MEETINGNOTE to add the tag. ** participants *** — John Doe *** — Mary Sample ** Goal This is the description of meeting goal ** Outcome Outcome of the meeting * PERSON John Doe Street address email address telephone PERSON should also be a tag, or look at org-contacts, where those bits in the body would be stored as properties. * COMPANY MyCompany address field of operation employees: - John Doe - Mary Sample * INFO 2015-07-01 John Doe does not want to work with Emacs You should use org dates like [2015-07-01] which will make them clickable. I think INFO here should be a tag too. * NOTE 2015-07-02 16:20 called John on the phone here go some notes about the telephone call with John So for example: - I’d like to have all the info (cross)linked, so that if I click e.g. on any occurrence of „John Doe“ I’d like to see a list of matches that mention John Doe: his PERSON entry, the notes of meetings he participated, the company he is an employee of etc. How can I mark up info in a way that Emacs or org links such info? Or isn’t this possible? Do I have to use Gnowsys or something like that for this? This is not totally possible, org-mode does not know how to make John Doe clickable unless you make a special link. but see: http://kitchingroup.cheme.cmu.edu/blog/2015/06/22/Clickable-org-contacts-in-text-files/ - I’d like to be able to search all „PERSON“ entries for a specific name. See org-contacts. i integrated something like this into helm: http://kitchingroup.cheme.cmu.edu/blog/2015/03/14/A-helm-mu4e-contact-selector/ which I use all the time. - I’d like to be able to archive chunks of information, e.g. a MEETINGNOTE that’s obsolete, equally as I can do it with tasks C-c C-x a will archive a headline. you can only archive headlines, not pieces of text. - I’d like to filter, i.e. have Emacs only show me e.g. the „MEETINGNOTES“ entries with all their text, but filter out everything else. Maybe even only „MEETINGNOTES“ with tag „XY“… combined filtering. Possible via Agenda, as I understand it, at least partially. Matching tags and combinations of tags etc. This sounds pretty doable with tag/property searches. Fot those of you who owned (or still own) a HP 200LX Palmtop and use Andreas Garzotto’s excellent PIM/PE on it (PE was a text editor that was partially inspired by Emacs and PIM was quite similar to org-mode, although PIM existed prior to org-mode): I’d like to do something similar with Emacs / org that was possible with PIM/PE. :-) Thanks for any hints, pointers and ideas, Daniel -- Professor John Kitchin Doherty Hall A207F Department of Chemical Engineering Carnegie Mellon University Pittsburgh, PA 15213 412-268-7803 @johnkitchin http://kitchingroup.cheme.cmu.edu
Re: [O] Structuring and (cross)linking information in org-mode
I think properties can be used for this. I personally like the org-secretary module, described nicely here by the author: http://juanreyero.com/article/emacs/org-teams.html Also, personalized agendas http://orgmode.org/manual/Storing-searches.html#Storing-searches for your entire set of org-files is useful here. --paf On Fri, Jul 3, 2015 at 10:47 AM, Daniel Hertrich daniel@daniel-hertrich.photo wrote: Hi all, I’m new to this mailing list and very eager to see what’s up in here. Is it still active? I hope so. Emacs is old, but it seems that still many people use it. So am I. After trying many different approaches to organizing information and tasks, I’m now looking into Emacs / org-mode, because I like the efficient keyboard-centric text-mode way of working. One question that I did not find a satisfactory answer for on my numerous days of research about Emacs / org-mode (however, maybe I „don’t see the wood for the trees“): I want to mix information and tasks in one file. That’s how it’s supposed to be, as far as I understand. I want to enter information as a journal, relatively strictly. So if I add a note to an appointment, I’d like to add that note not in the file area of that appointment, but to the end of the file, crosslinking the appointment and the new note. Is there a way to achieve that easily? I know how to make tasks with the org-todo-keywords. Now I want to mark chunks of information in that file in a similar way, but keep it outside of the task workflow. I’d like to have that information accessible and finable easily, and I want to differentiate different kinds of information. Quick example: * TODO This is my first task Some task description goes here * MEETINGNOTE of meeting 2015-07-02 MyCompany ** participants *** — John Doe *** — Mary Sample ** Goal This is the description of meeting goal ** Outcome Outcome of the meeting * PERSON John Doe Street address email address telephone * COMPANY MyCompany address field of operation employees: - John Doe - Mary Sample * INFO 2015-07-01 John Doe does not want to work with Emacs * NOTE 2015-07-02 16:20 called John on the phone here go some notes about the telephone call with John So for example: - I’d like to have all the info (cross)linked, so that if I click e.g. on any occurrence of „John Doe“ I’d like to see a list of matches that mention John Doe: his PERSON entry, the notes of meetings he participated, the company he is an employee of etc. How can I mark up info in a way that Emacs or org links such info? Or isn’t this possible? Do I have to use Gnowsys or something like that for this? - I’d like to be able to search all „PERSON“ entries for a specific name. - I’d like to be able to archive chunks of information, e.g. a MEETINGNOTE that’s obsolete, equally as I can do it with tasks - I’d like to filter, i.e. have Emacs only show me e.g. the „MEETINGNOTES“ entries with all their text, but filter out everything else. Maybe even only „MEETINGNOTES“ with tag „XY“… combined filtering. Possible via Agenda, as I understand it, at least partially. Matching tags and combinations of tags etc. Fot those of you who owned (or still own) a HP 200LX Palmtop and use Andreas Garzotto’s excellent PIM/PE on it (PE was a text editor that was partially inspired by Emacs and PIM was quite similar to org-mode, although PIM existed prior to org-mode): I’d like to do something similar with Emacs / org that was possible with PIM/PE. :-) Thanks for any hints, pointers and ideas, Daniel
[O] Structuring and (cross)linking information in org-mode
Hi all, I’m new to this mailing list and very eager to see what’s up in here. Is it still active? I hope so. Emacs is old, but it seems that still many people use it. So am I. After trying many different approaches to organizing information and tasks, I’m now looking into Emacs / org-mode, because I like the efficient keyboard-centric text-mode way of working. One question that I did not find a satisfactory answer for on my numerous days of research about Emacs / org-mode (however, maybe I „don’t see the wood for the trees“): I want to mix information and tasks in one file. That’s how it’s supposed to be, as far as I understand. I want to enter information as a journal, relatively strictly. So if I add a note to an appointment, I’d like to add that note not in the file area of that appointment, but to the end of the file, crosslinking the appointment and the new note. Is there a way to achieve that easily? I know how to make tasks with the org-todo-keywords. Now I want to mark chunks of information in that file in a similar way, but keep it outside of the task workflow. I’d like to have that information accessible and finable easily, and I want to differentiate different kinds of information. Quick example: * TODO This is my first task Some task description goes here * MEETINGNOTE of meeting 2015-07-02 MyCompany ** participants *** — John Doe *** — Mary Sample ** Goal This is the description of meeting goal ** Outcome Outcome of the meeting * PERSON John Doe Street address email address telephone * COMPANY MyCompany address field of operation employees: - John Doe - Mary Sample * INFO 2015-07-01 John Doe does not want to work with Emacs * NOTE 2015-07-02 16:20 called John on the phone here go some notes about the telephone call with John So for example: - I’d like to have all the info (cross)linked, so that if I click e.g. on any occurrence of „John Doe“ I’d like to see a list of matches that mention John Doe: his PERSON entry, the notes of meetings he participated, the company he is an employee of etc. How can I mark up info in a way that Emacs or org links such info? Or isn’t this possible? Do I have to use Gnowsys or something like that for this? - I’d like to be able to search all „PERSON“ entries for a specific name. - I’d like to be able to archive chunks of information, e.g. a MEETINGNOTE that’s obsolete, equally as I can do it with tasks - I’d like to filter, i.e. have Emacs only show me e.g. the „MEETINGNOTES“ entries with all their text, but filter out everything else. Maybe even only „MEETINGNOTES“ with tag „XY“… combined filtering. Possible via Agenda, as I understand it, at least partially. Matching tags and combinations of tags etc. Fot those of you who owned (or still own) a HP 200LX Palmtop and use Andreas Garzotto’s excellent PIM/PE on it (PE was a text editor that was partially inspired by Emacs and PIM was quite similar to org-mode, although PIM existed prior to org-mode): I’d like to do something similar with Emacs / org that was possible with PIM/PE. :-) Thanks for any hints, pointers and ideas, Daniel