From: Carsten Dominik <carsten.dominik@gmail.com>
To: Samuel Wales <samologist@gmail.com>
Cc: emacs-orgmode@gnu.org
Subject: Re: Re: user-defined agenda sorting
Date: Sat, 20 Jun 2009 06:12:13 +0200 [thread overview]
Message-ID: <2AAD5C1A-D60F-4770-9891-8C536A522FA7@gmail.com> (raw)
In-Reply-To: <20524da70906191300t68758b56i81ecef1db8dcf961@mail.gmail.com>
On Jun 19, 2009, at 10:00 PM, Samuel Wales wrote:
> Thanks.
>
> Just to confirm, to get the inherited tags and the priority letter, I
> have to go to the original buffer?
No. The priority letter is still in the string, you can use a regular
expression to
get it directly from a
(or (and (string-match "\\[#\\([ABC]\\)\\]" a) (match-string 1 a))
"B")
The text property tags contains a list of all tags, the inherited tags
carry
a text peroperty `inherited'.
HTH
- Carsten
>
> On Fri, Jun 19, 2009 at 08:39, Carsten Dominik<carsten.dominik@gmail.com
> > wrote:
>>
>> On Jun 16, 2009, at 11:13 AM, Samuel Wales wrote:
>>
>>> If my skills at cargo-cult programming can summon the air force,
>>> then
>>> (get-text-property 1 'priority a/b] will work. But I'm not sure if
>>> there are functions for parsing tags etc. Testing seems difficult
>>> as
>>> cut and paste of headline strings seems to not include properties.
>>>
>>> Thanks.
>>>
>>> On Tue, Jun 16, 2009 at 01:57, Samuel Wales<samologist@gmail.com>
>>> wrote:
>>>>
>>>> I have a sort comparison function for the outline, which
>>>> returns a number. This works well.
>>>>
>>>> The documentation for user-defined agenda sorting says "This
>>>> function must receive two arguments, agenda entry a and b."
>>>> I am not sure what a and b are, strings?
>>>>
>>>> My function gets priorities, tags, and todo kw assuming point is
>>>> on a
>>>> headline. It uses org functions to get those. The org code for
>>>> agenda sorting uses text properties.
>>>>
>>>> How to adapt my function to get the following information:
>>>> priorities
>>>> as [?A..?C], inherited and local tags as a list, and todo kw as a
>>>> string?
>>>>
>>>> Is there a place where how to parse a and b is documented?
>>
>>
>> Not really. `a' and `b' are the strings that are inserted into the
>> agenda,
>> each line in the agenda may be `a' or `b'.
>> The strings are loaded with text properties carrying all kinds of
>> information.
>> You can look at these properties by pressing `C-u C-x =' on a line
>> in the
>> agenda.
>> If the information you want is not there, you can take the
>> org-morker and org-hd-marker properties to visit the original
>> entries and
>> get the needed info from there. And example for this is in
>> `org-cmp-todo-state'
>> which returns to the original buffer in order to get the buffer-local
>> list of TODO states from there.
>>
>> All the org-cmp-.... functions contain examples on how the text
>> properties
>> are used from comparing entries.
>>
>> The reason why these are in different text properties is historic,
>> because I
>> added this stuff one by one, over time. Looking back, a single
>> property
>> list
>> would have been better for tasks like the one you are working on.
>>
>> HTH
>>
>> - Carsten
>>
>>>>
>>>> Thanks.
>>>>
>>>> --
>>>> Myalgic encephalomyelitis denialism is causing death and severe
>>>> suffering,
>>>> worse than MS. Conflicts of interest are destroying research. /
>>>> You/ can
>>>> get the disease at any time permanently. Do science and justice
>>>> matter
>>>> to
>>>> you? http://www.meactionuk.org.uk/What_Is_ME_What_Is_CFS.htm
>>>>
>>>
>>>
>>>
>>> --
>>> Myalgic encephalomyelitis denialism is causing death and severe
>>> suffering,
>>> worse than MS. Conflicts of interest are destroying research. /
>>> You/ can
>>> get the disease at any time permanently. Do science and justice
>>> matter to
>>> you? http://www.meactionuk.org.uk/What_Is_ME_What_Is_CFS.htm
>>>
>>>
>>> _______________________________________________
>>> Emacs-orgmode mailing list
>>> Remember: use `Reply All' to send replies to the list.
>>> Emacs-orgmode@gnu.org
>>> http://lists.gnu.org/mailman/listinfo/emacs-orgmode
>>
>>
>
>
>
> --
> Myalgic encephalomyelitis denialism is causing death and severe
> suffering,
> worse than MS. Conflicts of interest are destroying research. /
> You/ can
> get the disease at any time permanently. Do science and justice
> matter to
> you? http://www.meactionuk.org.uk/What_Is_ME_What_Is_CFS.htm
prev parent reply other threads:[~2009-06-20 4:12 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-06-16 8:57 user-defined agenda sorting Samuel Wales
2009-06-16 9:13 ` Samuel Wales
2009-06-19 15:39 ` Carsten Dominik
2009-06-19 20:00 ` Samuel Wales
2009-06-20 4:12 ` Carsten Dominik [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: https://www.orgmode.org/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=2AAD5C1A-D60F-4770-9891-8C536A522FA7@gmail.com \
--to=carsten.dominik@gmail.com \
--cc=emacs-orgmode@gnu.org \
--cc=samologist@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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).