From mboxrd@z Thu Jan 1 00:00:00 1970 From: Rainer M Krug Subject: Re: [ANN] BREAKING CHANGE -- removing #+BABEL file-wide property lines Date: Tue, 25 Oct 2011 13:47:57 +0200 Message-ID: References: <87pqhrih3s.fsf@gmail.com> <30891.1319141196@alphaville.dokosmarshall.org> <87fwinifqu.fsf@gmail.com> <32184.1319143892@alphaville.dokosmarshall.org> <87zkgvgxe7.fsf@gmail.com> <1405.1319147324@alphaville.dokosmarshall.org> <87zkgvfhra.fsf@gmail.com> <2127.1319148505@alphaville.dokosmarshall.org> <87vcrjfgt1.fsf@gmail.com> <80sjmmvm60.fsf@somewhere.org> <4EA129DB.4070006@christianmoe.com> <8762ji5jr6.fsf@gmail.com> <87fwil10o2.fsf@gmail.com> <80pqhltnvc.fsf@somewhere.org> <80hb2xtla6.fsf@somewhere.org> Mime-Version: 1.0 Content-Type: multipart/alternative; boundary=001485ee82ee580bd804b01e1cdc Return-path: Received: from eggs.gnu.org ([140.186.70.92]:43708) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1RIfU8-00061G-Kd for emacs-orgmode@gnu.org; Tue, 25 Oct 2011 07:48:06 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1RIfU6-0001gh-WC for emacs-orgmode@gnu.org; Tue, 25 Oct 2011 07:48:00 -0400 Received: from mail-qw0-f41.google.com ([209.85.216.41]:61809) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1RIfU6-0001gc-PO for emacs-orgmode@gnu.org; Tue, 25 Oct 2011 07:47:58 -0400 Received: by qadc11 with SMTP id c11so422988qad.0 for ; Tue, 25 Oct 2011 04:47:58 -0700 (PDT) In-Reply-To: <80hb2xtla6.fsf@somewhere.org> List-Id: "General discussions about Org-mode." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org Sender: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org To: Sebastien Vauban Cc: emacs-orgmode@gnu.org --001485ee82ee580bd804b01e1cdc Content-Type: text/plain; charset=ISO-8859-1 On Tue, Oct 25, 2011 at 12:31 PM, Sebastien Vauban < wxhgmqzgwmuf@spammotel.com> wrote: > Hi Rainer, > > Rainer M Krug wrote: > >> While thinking about all of this, and working in real-life documents, I > >> just > >> came back to a suggestion which I made some time ago. It goes about this > >> enhancement: > >> > >> Would it be possible to specify "buffer-wide language specific" > header > >> arguments? > >> > >> That is, be able to say: > >> > >> "In this document, I want to: > >> - tangle all my .sql chunks, but no other; > >> - eval all the elisp chunks with query, but no other." > >> > >> Something we could write quite easily along the lines: > >> > >> #+PROPERTY: tangle no > >> #+PROPERTY: eval never > >> #+PROPERTY[SQL]: tangle yes > >> #+PROPERTY[EMACS-LISP]: eval query > >> > >> (the syntax used here is just a draft sample!) > >> > >> What do you think about this feature? If you feel it can be something > >> interesting to have, this is surely to incorporate in the current syntax > >> debate. If not... never mind. > > > > I am not Eric, but I think that would be a good idea. > > Thanks for your comments. > > > Bu there needs to be a way of specifying more then one property, either > > by #+PROPERTY+: or by any other way -I acually luike the #+PROPERTY+: . > > Thinking about it, it should be possible without the +: > > > > #+PROPERTY[R]: tangle no > > #+PROPERTY[R]: export both > > Yes, no need for a "+" here, as the lines do target different properties > (in > this case, "tangle" and "export"). > > > The more I see it, the more I like it - also the [] > > In fact, the lines without any language specification would be, at least > semantically, equivalent to something like this: > > #+PROPERTY[*]: tangle no > #+PROPERTY[*]: eval never > So #+PROPERTY followed by square brackets, means properties for source blocks of a given language, and [*] is the default and can be omitted. Two ideas: [R,sh], i.e. specifying a list of languages in the brackets could be useful, as well as wildcards like [dit*]? The latter less usefull, but for consistency? Additionally: it would be nice, if one could define a set of properties, and then recall them for certain blocks. e.g: #+PROPERTY[R:set1]: tangle no #+PROPERTY[R:set1]: eval never #+PROPERTY[R:set2]: tangle yes #+PROPERTY[R:set2]: export both #+src_begin R :set set1 cat(1) #+end would have the first set of properties (tangle no and eval never), where #+src_begin R :set set2 cat(1) #+end would have the second set of properties (tangle no and eval never) Might be a good addition? Cheers, Rainer > Best regards, > Seb > > -- > Sebastien Vauban > > > -- Rainer M. Krug, PhD (Conservation Ecology, SUN), MSc (Conservation Biology, UCT), Dipl. Phys. (Germany) Centre of Excellence for Invasion Biology Stellenbosch University South Africa Tel : +33 - (0)9 53 10 27 44 Cell: +33 - (0)6 85 62 59 98 Fax (F): +33 - (0)9 58 10 27 44 Fax (D): +49 - (0)3 21 21 25 22 44 email: Rainer@krugs.de Skype: RMkrug --001485ee82ee580bd804b01e1cdc Content-Type: text/html; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable

On Tue, Oct 25, 2011 at 12:31 PM, Sebast= ien Vauban <wxhgmqzgwmuf@spammotel.com> wrote:
Hi Rainer,

Rainer M Krug wrote:
>> While thinking about all of this, and working in real-life documen= ts, I
>> just
>> came back to a suggestion which I made some time ago. It goes abou= t this
>> enhancement:
>>
>> =A0 =A0Would it be possible to specify "buffer-wide language = specific" header
>> =A0 =A0arguments?
>>
>> That is, be able to say:
>>
>> =A0 =A0"In this document, I want to:
>> =A0 =A0- tangle all my .sql chunks, but no other;
>> =A0 =A0- eval all the elisp chunks with query, but no other."=
>>
>> Something we could write quite easily along the lines:
>>
>> =A0 =A0#+PROPERTY: =A0 =A0 =A0 =A0 =A0 =A0 =A0 tangle no
>> =A0 =A0#+PROPERTY: =A0 =A0 =A0 =A0 =A0 =A0 =A0 eval never
>> =A0 =A0#+PROPERTY[SQL]: =A0 =A0 =A0 =A0 =A0tangle yes
>> =A0 =A0#+PROPERTY[EMACS-LISP]: =A0 eval query
>>
>> =A0 =A0(the syntax used here is just a draft sample!)
>>
>> What do you think about this feature? If you feel it can be someth= ing
>> interesting to have, this is surely to incorporate in the current = syntax
>> debate. If not... never mind.
>
> I am not Eric, but I think that would be a good idea.

Thanks for your comments.

> Bu there needs to be a way of specifying more then one property, eithe= r
> by #+PROPERTY+: or by any other way -I acually luike the #+PROPERTY+: = .
> Thinking about it, it should be possible without the +:
>
> #+PROPERTY[R]: tangle no
> #+PROPERTY[R]: export both

Yes, no need for a "+" here, as the lines do target differe= nt properties (in
this case, "tangle" and "export").

> The more I see it, the more I like it - also the []

In fact, the lines without any language specification would be, at le= ast
semantically, equivalent to something like this:

=A0 =A0 =A0#+PROPERTY[*]: =A0 =A0 =A0 =A0 =A0 =A0tangle no
=A0 =A0 =A0#+PROPERTY[*]: =A0 =A0 =A0 =A0 =A0 =A0eval never

So

#+PROPERTY followed by square brackets, means propert= ies for source blocks of a given language, and [*] is the default and can b= e omitted.

Two ideas: [R,sh], i.e. specifying a list of languages in the brackets = could be useful, as well as wildcards like [dit*]? The latter less usefull,= but for consistency?

Additionally: it would be nice, if one could d= efine a set of properties, and then recall them for certain blocks.

e.g:

#+PROPERTY[R:set1]: tangle no
#+PROPERTY[R:set1]: eval n= ever

#+PROPERTY[R:set2]: tangle yes
#+PROPERTY[R:set2]: export both

#+src_begin R :set set1
=A0 cat(1= )
#+end

would have the first set of properties (tangle no and eval never), wher= e

#+src_begin R :set set2
=A0 cat(1)
#+end

would have the second set of properties (tangle no and eval never)

Might be a good addition?

Cheers,


Rainer


Best regards,
=A0Seb

--
Sebastien Vauban





--
Rainer M. K= rug, PhD (Conservation Ecology, SUN), MSc (Conservation Biology, UCT), Dipl= . Phys. (Germany)

Centre of Excellence for Invasion Biology
Stell= enbosch University
South Africa

Tel : =A0 =A0 =A0 +33 - (0)9 53 10 27 44
Cell: =A0 = =A0 =A0 +33 - (0)6 85 62 59 98
Fax (F): =A0 =A0 =A0 +33 - (0)9 58 10 27 = 44

Fax (D): =A0 =A0+49 - (0)3 21 21 25 22 44

email: =A0 =A0 = =A0Rainer@krugs.de=

Skype: =A0 =A0 =A0RMkrug

--001485ee82ee580bd804b01e1cdc--