[Orgmode] Re: Feature Request? #+CONFIG keyword - to abstract more configuration into org files,

2009-10-22 Thread Carsten Dominik


On Oct 22, 2009, at 11:52 PM, Matthew Lundin wrote:


Carsten Dominik  writes:


On Oct 22, 2009, at 10:23 PM, Matt Lundin wrote:


Bernt Hansen  writes:


"Tim O'Callaghan"  writes:

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



Thanks for the explanation. I aplogize if I'm missing something, but I
can't seem to get the bind line to work. I've placed the following  
line

at the top of an org file:

,
| #+BIND: org-footnote-section "References"
`

...and yet after killing, reloading, and refreshing the buffer, the
footnotes still appear in the section in which they are entered, in
keeping with my global org-footnote-section setting (nil).

Out of curiosity, I've also tried the following line to no avail:

,
| #+BIND: org-footnote-section t
`

I've tried setting org-export-allow-BIND and org-export-allow-BIND- 
local

to t, but the same results occur.

On the other hand, when I use local variables, as below, the footnotes
appear under the headline "References".


,
| * COMMENT Local Variables
| # Local Variables:
| # org-footnote-section: "References"
| # End:
`


Do I have the correct syntax for #+bind? Is there another variable  
that

activates "bind" syntax? Or does it perhaps work only for certain
variables?


You are right, I was mistaken!  In fact, BIND works for any variables,  
but only during export :-)


- Carsten



___
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


[Orgmode] Re: Feature Request? #+CONFIG keyword - to abstract more configuration into org files,

2009-10-22 Thread Matthew Lundin
Carsten Dominik  writes:

> On Oct 22, 2009, at 10:23 PM, Matt Lundin wrote:
>
>> Bernt Hansen  writes:
>>
>>> "Tim O'Callaghan"  writes:
>>>
>>> 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
>

Thanks for the explanation. I aplogize if I'm missing something, but I
can't seem to get the bind line to work. I've placed the following line
at the top of an org file:

,
| #+BIND: org-footnote-section "References"
`

...and yet after killing, reloading, and refreshing the buffer, the
footnotes still appear in the section in which they are entered, in
keeping with my global org-footnote-section setting (nil).

Out of curiosity, I've also tried the following line to no avail:

,
| #+BIND: org-footnote-section t
`

I've tried setting org-export-allow-BIND and org-export-allow-BIND-local
to t, but the same results occur.

On the other hand, when I use local variables, as below, the footnotes
appear under the headline "References".

>> ,
>> | * COMMENT Local Variables
>> | # Local Variables:
>> | # org-footnote-section: "References"
>> | # End:
>> `

Do I have the correct syntax for #+bind? Is there another variable that
activates "bind" syntax? Or does it perhaps work only for certain
variables?

Thanks! I'll be glad to write an FAQ about this, seeing as I'm quickly
turning it into a frequently asked question. :)

- Matt


___
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


Re: [Orgmode] Re: Feature Request? #+CONFIG keyword - to abstract more configuration into org files,

2009-10-22 Thread Tim O'Callaghan
2009/10/22 Carsten Dominik :
>
> On Oct 22, 2009, at 10:23 PM, Matt Lundin wrote:
>
>> Bernt Hansen  writes:
>>
>>> "Tim O'Callaghan"  writes:
>>>
 Expand the #+ 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 ') or an
(eval ) 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.


___
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


Re: [Orgmode] Re: Feature Request? #+CONFIG keyword - to abstract more configuration into org files,

2009-10-22 Thread Carsten Dominik


On Oct 22, 2009, at 10:23 PM, Matt Lundin wrote:


Bernt Hansen  writes:


"Tim O'Callaghan"  writes:


Expand the #+ 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



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

Best,
Matt


___
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


- Carsten





___
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


[Orgmode] Re: Feature Request? #+CONFIG keyword - to abstract more configuration into org files,

2009-10-22 Thread Matt Lundin
Bernt Hansen  writes:

> "Tim O'Callaghan"  writes:
>
>> Expand the #+ 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.

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

Best,
Matt


___
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


[Orgmode] Re: Feature Request? #+CONFIG keyword - to abstract more configuration into org files,

2009-10-22 Thread Bernt Hansen
"Tim O'Callaghan"  writes:

> Simply,
>
> Expand the #+ 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?

-Bernt


___
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