emacs-orgmode
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Orgmode] Re: Feature Request? #+CONFIG keyword - to abstract more


From: Tim O'Callaghan
Subject: Re: [Orgmode] Re: Feature Request? #+CONFIG keyword - to abstract more configuration into org files,
Date: Thu, 22 Oct 2009 23:35:08 +0200

2009/10/22 Carsten Dominik <address@hidden>:
>
> On Oct 22, 2009, at 10:23 PM, Matt Lundin wrote:
>
>> Bernt Hansen <address@hidden> writes:
>>
>>> "Tim O'Callaghan" <address@hidden> writes:
>>>
>>>> Expand the #+<KEYWORD> in-org file configuration possibilities with
>>>> a #+CONFIG or similar keyword.
>>>>
>>>> The idea being to abstract more configuration into actual org files,
>>>> and let extensions have an easy way to use #+KEYWORD configuration.  I
>>>> expect it could also be used to auto-load suitably registered
>>>> extensions/contributions.
>>>>
>>>> So for example, my org-action-verb extension might use a line like:
>>>>
>>>> #+CONFIG org-action-verb TODO|NEXT Address Ask Buy Change Clarify
>>>>
>>>> Where there is handler function CONFIG:org-action-verb, that is
>>>> defined as auto-loadable and called with the rest of the line to
>>>> configure the extension.
>>>>
>>>> I guess this mechanism could also be extended to abstract more
>>>> core-org configuration - such as agenda keys, stuck projects, or
>>>> whatever.
>>>>
>>>> what do people think?
>>>
>>> Can you use the #+BIND: keyword to set arbitrary variables and achieve
>>> the same result?
>>
>> If I understand it correctly, #+BIND only works for export related
>> variables.
>
>
> Nope, it works for any variables.  It is special that is *also* works for
> export variables, which is complicated because the *output buffer* is
> current when export happens, so local variables would be out of scope.
>
> - Carsten
>

The docs do not explain this. I'll look into it.

>>
>> For local options that are not part of the default in-buffer syntax, I
>> use Local Variables. E.g.,
>>
>> ,----
>> | * COMMENT Local Variables
>> | # Local Variables:
>> | # org-footnote-section: "References"
>> | # End:
>> `----
>>

I'm using something similar at the moment, but i was thinking of a
mechanism that could also be used to load and initialise core and
contributed code without having to have a (require '<module>) or an
(eval <find org site-lisp>) in the org file(s). I'm currently working
on getting someone else to track my org files, and i don't want to
have them track my .emacs as well. The auto-loading would be more
useful than  a unified abstraction of a configuration mechanism for
this.

Tim.




reply via email to

[Prev in Thread] Current Thread [Next in Thread]