emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
* Structuring and (cross)linking information in org-mode
@ 2015-07-03  8:47 Daniel Hertrich
  2015-07-03 12:25 ` Pascal Fleury
  2015-07-03 14:02 ` John Kitchin
  0 siblings, 2 replies; 8+ messages in thread
From: Daniel Hertrich @ 2015-07-03  8:47 UTC (permalink / raw)
  To: emacs-orgmode

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

 

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: Structuring and (cross)linking information in org-mode
  2015-07-03  8:47 Structuring and (cross)linking information in org-mode Daniel Hertrich
@ 2015-07-03 12:25 ` Pascal Fleury
  2015-07-05  2:21   ` Haider Rizvi
  2015-07-08 11:06   ` Daniel Hertrich
  2015-07-03 14:02 ` John Kitchin
  1 sibling, 2 replies; 8+ messages in thread
From: Pascal Fleury @ 2015-07-03 12:25 UTC (permalink / raw)
  To: Daniel Hertrich; +Cc: emacs-org list

[-- Attachment #1: Type: text/plain, Size: 3847 bytes --]

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
>
>
>

[-- Attachment #2: Type: text/html, Size: 4313 bytes --]

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: Structuring and (cross)linking information in org-mode
  2015-07-03  8:47 Structuring and (cross)linking information in org-mode Daniel Hertrich
  2015-07-03 12:25 ` Pascal Fleury
@ 2015-07-03 14:02 ` John Kitchin
  2015-07-08 11:37   ` Daniel Hertrich
  1 sibling, 1 reply; 8+ messages in thread
From: John Kitchin @ 2015-07-03 14:02 UTC (permalink / raw)
  To: Daniel Hertrich; +Cc: emacs-orgmode

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

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: Structuring and (cross)linking information in org-mode
  2015-07-03 12:25 ` Pascal Fleury
@ 2015-07-05  2:21   ` Haider Rizvi
  2015-07-08 12:10     ` Daniel Hertrich
  2015-07-08 11:06   ` Daniel Hertrich
  1 sibling, 1 reply; 8+ messages in thread
From: Haider Rizvi @ 2015-07-05  2:21 UTC (permalink / raw)
  To: emacs-orgmode

Pascal Fleury <pascal@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

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: Structuring and (cross)linking information in org-mode
  2015-07-03 12:25 ` Pascal Fleury
  2015-07-05  2:21   ` Haider Rizvi
@ 2015-07-08 11:06   ` Daniel Hertrich
  1 sibling, 0 replies; 8+ messages in thread
From: Daniel Hertrich @ 2015-07-08 11:06 UTC (permalink / raw)
  To: emacs-org list

[-- Attachment #1: Type: text/plain, Size: 806 bytes --]

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 <pascal@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.


[-- Attachment #2: Type: text/html, Size: 1510 bytes --]

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: Structuring and (cross)linking information in org-mode
  2015-07-03 14:02 ` John Kitchin
@ 2015-07-08 11:37   ` Daniel Hertrich
  2015-07-08 14:32     ` John Kitchin
  0 siblings, 1 reply; 8+ messages in thread
From: Daniel Hertrich @ 2015-07-08 11:37 UTC (permalink / raw)
  To: emacs-org list

[-- Attachment #1: Type: text/plain, Size: 8255 bytes --]

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 <jkitchin@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 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.

You are right. I meant to use such dares.


> I think INFO here should be a tag too.

Maybe. Will think about that. (see also my question about this above).


> 
>> 
>> * 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/ <http://kitchingroup.cheme.cmu.edu/blog/2015/06/22/Clickable-org-contacts-in-text-files/>

Ah, interesting! Not exactly what I had in mind, but this inspires me to think about a good solution for what I actually want.
Somehow it’s probably possible to make clickable links that call lisp code, which does not, as in the above example, searches the org-contacts, but instead triggers the agenda with a search for that person’s name, so that as a result I have an agenda / match  view of all occurrences of that name in my file(s)? 


> 
>> 
>> - 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.

Oh yes, email is also something which I’d maybe like to integrate into Emacs later. 
Thanks for the pointer. mu4e looks promising. I’d be interested in a comparison chart of email clients that work with / inside Emacs. However, I haven’t found any yet. Do you know something like this?


> 
>> 
>> - 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.

Good enough I guess. Great! :-)



> 
>> 
>> - 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.

Great!

Slowly my image of what my setup might look like gets clearer and clearer. 

Thanks!
Daniel




[-- Attachment #2: Type: text/html, Size: 12998 bytes --]

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: Structuring and (cross)linking information in org-mode
  2015-07-05  2:21   ` Haider Rizvi
@ 2015-07-08 12:10     ` Daniel Hertrich
  0 siblings, 0 replies; 8+ messages in thread
From: Daniel Hertrich @ 2015-07-08 12:10 UTC (permalink / raw)
  To: emacs-org list


> Am 05.07.2015 um 04:21 schrieb Haider Rizvi <harizvi@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

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: Structuring and (cross)linking information in org-mode
  2015-07-08 11:37   ` Daniel Hertrich
@ 2015-07-08 14:32     ` John Kitchin
  0 siblings, 0 replies; 8+ messages in thread
From: John Kitchin @ 2015-07-08 14:32 UTC (permalink / raw)
  To: Daniel Hertrich; +Cc: emacs-org list


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 <jkitchin@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 something like this exist for Emacs, too? Or is it already easily
> possible by using dates and the agenda…?

I bet you can filter the agenda to not show content older than some date.

>
>
>>
>>> ** 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.

I use org-contacts. I looked at bbdb for a while, but it did not stick
with me. The cumulative advantage of contacts in org syntax won out. I
also thought bbdb was underdocumented.

> 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).

You will be writing a lot of code to do all that ;) org-contacts can be
made to do a lot of those things. my helm contacts can insert email
addresses, open urls, could send tweets, etc... depending on what
information is available in a contact.

I use emacs on Mac built from homebrew.


>>>
>>> - 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/ <http://kitchingroup.cheme.cmu.edu/blog/2015/06/22/Clickable-org-contacts-in-text-files/>
>
> Ah, interesting! Not exactly what I had in mind, but this inspires me to think about a good solution for what I actually want.
> Somehow it’s probably possible to make clickable links that call lisp code, which does not, as in the above example, searches the org-contacts, but instead triggers the agenda with a search for that person’s name, so that as a result I have an agenda / match  view of all occurrences of that name in my file(s)?

You can call any emacs-lisp code you want, even a menu of options to do
a variety of different things. My current code gives me a hydra menu to
open the contact, email the contact or open their homepage if there is
one in the contact. It would be easy to extend it to direct message them
on twitter if there is a twitter handle, probably call them on skype
with a skype handle (reaching here, assuming skype can be automated by
applescript or some other command line incantation), or use some kind of
telephony from a phonenumber. The menu is even conditional, and changes
with available contact info. You could do that for a bbdb entry too.

>>> - 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.
>
> Oh yes, email is also something which I’d maybe like to integrate into Emacs later.
> Thanks for the pointer. mu4e looks promising. I’d be interested in a
> comparison chart of email clients that work with / inside
> Emacs. However, I haven’t found any yet. Do you know something like
> this?

Not really. Some people use gnus. that also did not stick with me. mu4e
+ offlineimap + gmail is pretty sweet, and easy to install with homebrew
on mac.

>
>
>>
>>>
>>> - 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.

This might be C-c C-x C-a. The keys above add an archive tag to the headline.
>
> Good enough I guess. Great! :-)
>
>
>
>>
>>>
>>> - 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.
>
> Great!
>
> Slowly my image of what my setup might look like gets clearer and clearer.
>
> Thanks!
> 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

^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2015-07-08 14:33 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-07-03  8:47 Structuring and (cross)linking information in org-mode Daniel Hertrich
2015-07-03 12:25 ` Pascal Fleury
2015-07-05  2:21   ` Haider Rizvi
2015-07-08 12:10     ` Daniel Hertrich
2015-07-08 11:06   ` Daniel Hertrich
2015-07-03 14:02 ` John Kitchin
2015-07-08 11:37   ` Daniel Hertrich
2015-07-08 14:32     ` John Kitchin

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).