emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
* [Exporter] Why is :author a list in the communication channel?
@ 2013-11-02 20:40 Thorsten Jolitz
  2013-11-02 21:33 ` Nicolas Goaziou
  2013-11-02 22:30 ` Aaron Ecay
  0 siblings, 2 replies; 10+ messages in thread
From: Thorsten Jolitz @ 2013-11-02 20:40 UTC (permalink / raw)
  To: emacs-orgmode


Hi List, 

I wonder why the :author attribute in INFO is a list (while :email,
:creator and others are not)?

It would make sense if several authors would be collected as a list of
strings, like e.g.

,-------------------------------------
| ("Thorsten Jolitz" "Thomas Mueller")
`-------------------------------------

but I don't know how to write the #+AUTHOR: information to achieve
that.

This

,----------------------------------------
| #+AUTHOR: Thorsten Jolitz Thomas Mueller
`----------------------------------------

and other versions I tried (with comma or double quotes as separators)
always results in a single string element inside the :author list

,-----------------------------------
| ("Thorsten Jolitz Thomas Mueller")
`-----------------------------------

so why make the value a list and not a string?


-- 
cheers,
Thorsten

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

* Re: [Exporter] Why is :author a list in the communication channel?
  2013-11-02 20:40 [Exporter] Why is :author a list in the communication channel? Thorsten Jolitz
@ 2013-11-02 21:33 ` Nicolas Goaziou
  2013-11-02 21:48   ` Thorsten Jolitz
  2013-11-02 22:30 ` Aaron Ecay
  1 sibling, 1 reply; 10+ messages in thread
From: Nicolas Goaziou @ 2013-11-02 21:33 UTC (permalink / raw)
  To: Thorsten Jolitz; +Cc: emacs-orgmode

Hello,

Thorsten Jolitz <tjolitz@gmail.com> writes:

> I wonder why the :author attribute in INFO is a list (while :email,
> :creator and others are not)?

:author's value is parsed, as all keywords in
`org-element-document-properties'. So its value is a secondary string,
i.e. an element without type.


Regards,

-- 
Nicolas Goaziou

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

* Re: [Exporter] Why is :author a list in the communication channel?
  2013-11-02 21:33 ` Nicolas Goaziou
@ 2013-11-02 21:48   ` Thorsten Jolitz
  0 siblings, 0 replies; 10+ messages in thread
From: Thorsten Jolitz @ 2013-11-02 21:48 UTC (permalink / raw)
  To: emacs-orgmode

Nicolas Goaziou <n.goaziou@gmail.com> writes:

> Hello,
>
> Thorsten Jolitz <tjolitz@gmail.com> writes:
>
>> I wonder why the :author attribute in INFO is a list (while :email,
>> :creator and others are not)?
>
> :author's value is parsed, as all keywords in
> `org-element-document-properties'. So its value is a secondary string,
> i.e. an element without type.

Ah, ok, so these

,---------------------------------------------------------
| org-element-document-properties is a variable defined in
| `org-element.el'.
| Its value is ("AUTHOR" "DATE" "TITLE")
`---------------------------------------------------------

are different from the others. Thanks.

--
cheers,
Thorsten

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

* Re: [Exporter] Why is :author a list in the communication channel?
  2013-11-02 20:40 [Exporter] Why is :author a list in the communication channel? Thorsten Jolitz
  2013-11-02 21:33 ` Nicolas Goaziou
@ 2013-11-02 22:30 ` Aaron Ecay
  2013-11-04 18:10   ` Thorsten Jolitz
  1 sibling, 1 reply; 10+ messages in thread
From: Aaron Ecay @ 2013-11-02 22:30 UTC (permalink / raw)
  To: Thorsten Jolitz, emacs-orgmode

Hi Thorsten,

I would have expected multiple author lines to have this effect, so that
your desired list of two authors would be generated by:
,----
| #+author: Thorsten Jolitz
| #+author: Thomas Mueller
`----

But it seems that only the last #+author line is used; previous ones are
discarded.  Maybe the :author plist entry should just be converted into
a string.  But if it remains a list to somehow support multiply-authored
documents, I think the most natural way to specify the entries is with
multiple lines as above.

--
Aaron Ecay

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

* Re: [Exporter] Why is :author a list in the communication channel?
  2013-11-02 22:30 ` Aaron Ecay
@ 2013-11-04 18:10   ` Thorsten Jolitz
  2013-11-04 18:20     ` Nicolas Goaziou
  0 siblings, 1 reply; 10+ messages in thread
From: Thorsten Jolitz @ 2013-11-04 18:10 UTC (permalink / raw)
  To: emacs-orgmode

Aaron Ecay <aaronecay@gmail.com> writes:

Hi Aaron,

> I would have expected multiple author lines to have this effect, so that
> your desired list of two authors would be generated by:
> ,----
> | #+author: Thorsten Jolitz
> | #+author: Thomas Mueller
> `----
>
> But it seems that only the last #+author line is used; previous ones are
> discarded.  Maybe the :author plist entry should just be converted into
> a string.  But if it remains a list to somehow support multiply-authored
> documents, I think the most natural way to specify the entries is with
> multiple lines as above.

I can confirm that behaviour ... I'm not sure if I really get the idea
of a 'typeless secondary' string as mentioned by Nicolas, but in daily
practice 

,-----------------------
| (plist-get info :author)
`-----------------------

returns a list with one string in it for me ...

-- 
cheers,
Thorsten

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

* Re: [Exporter] Why is :author a list in the communication channel?
  2013-11-04 18:10   ` Thorsten Jolitz
@ 2013-11-04 18:20     ` Nicolas Goaziou
  2013-11-04 18:42       ` Thorsten Jolitz
  0 siblings, 1 reply; 10+ messages in thread
From: Nicolas Goaziou @ 2013-11-04 18:20 UTC (permalink / raw)
  To: Thorsten Jolitz; +Cc: emacs-orgmode

Hello,

Thorsten Jolitz <tjolitz@gmail.com> writes:

> Aaron Ecay <aaronecay@gmail.com> writes:
>
> Hi Aaron,
>
>> I would have expected multiple author lines to have this effect, so that
>> your desired list of two authors would be generated by:
>> ,----
>> | #+author: Thorsten Jolitz
>> | #+author: Thomas Mueller
>> `----
>>
>> But it seems that only the last #+author line is used; previous ones are
>> discarded.  Maybe the :author plist entry should just be converted into
>> a string.  But if it remains a list to somehow support multiply-authored
>> documents, I think the most natural way to specify the entries is with
>> multiple lines as above.
>
> I can confirm that behaviour ... I'm not sure if I really get the idea
> of a 'typeless secondary' string as mentioned by Nicolas, but in daily
> practice 
>
> ,-----------------------
> | (plist-get info :author)
> `-----------------------
>
> returns a list with one string in it for me ...

Try

  #+AUTHOR: This is *Me*!

The point is that you can have Org objects within AUTHOR (or TITLE, or
DATE). See "secondary string" definition in org-element.el header.

This is orthogonal to the fact that multiple lines are not allowed. For
that, see BEHAVIOUR item in `org-export-options-alist'. In particular,
you can compare "TITLE" and "AUTHOR" entries.


Regards,

-- 
Nicolas Goaziou

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

* Re: [Exporter] Why is :author a list in the communication channel?
  2013-11-04 18:20     ` Nicolas Goaziou
@ 2013-11-04 18:42       ` Thorsten Jolitz
  2013-11-04 19:30         ` Nicolas Goaziou
  2013-11-04 19:45         ` Nick Dokos
  0 siblings, 2 replies; 10+ messages in thread
From: Thorsten Jolitz @ 2013-11-04 18:42 UTC (permalink / raw)
  To: emacs-orgmode


Hello,

Nicolas Goaziou <n.goaziou@gmail.com> writes:

> Thorsten Jolitz <tjolitz@gmail.com> writes:
>
>> Aaron Ecay <aaronecay@gmail.com> writes:
>>
>> Hi Aaron,
>>
>>> I would have expected multiple author lines to have this effect, so that
>>> your desired list of two authors would be generated by:
>>> ,----
>>> | #+author: Thorsten Jolitz
>>> | #+author: Thomas Mueller
>>> `----
>>>
>>> But it seems that only the last #+author line is used; previous ones are
>>> discarded.  Maybe the :author plist entry should just be converted into
>>> a string.  But if it remains a list to somehow support multiply-authored
>>> documents, I think the most natural way to specify the entries is with
>>> multiple lines as above.
>>
>> I can confirm that behaviour ... I'm not sure if I really get the idea
>> of a 'typeless secondary' string as mentioned by Nicolas, but in daily
>> practice 
>>
>> ,-----------------------
>> | (plist-get info :author)
>> `-----------------------
>>
>> returns a list with one string in it for me ...
>
> Try
>
>   #+AUTHOR: This is *Me*!
>
> The point is that you can have Org objects within AUTHOR (or TITLE, or
> DATE). See "secondary string" definition in org-element.el header.
>
> This is orthogonal to the fact that multiple lines are not allowed. For
> that, see BEHAVIOUR item in `org-export-options-alist'. In particular,
> you can compare "TITLE" and "AUTHOR" entries.

Ok, I understand, so this is all working fine just as intended. For
multiple authors one could use a workaround/convention like 

 ,------------------------------------------
 | #+author: Thorsten_Jolitz Thomas_Mueller
 `------------------------------------------

and then split the string two times (first blanks, then underscores). 

-- 
cheers,
Thorsten

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

* Re: [Exporter] Why is :author a list in the communication channel?
  2013-11-04 18:42       ` Thorsten Jolitz
@ 2013-11-04 19:30         ` Nicolas Goaziou
  2013-11-04 20:07           ` Marcin Borkowski
  2013-11-04 19:45         ` Nick Dokos
  1 sibling, 1 reply; 10+ messages in thread
From: Nicolas Goaziou @ 2013-11-04 19:30 UTC (permalink / raw)
  To: Thorsten Jolitz; +Cc: emacs-orgmode

Thorsten Jolitz <tjolitz@gmail.com> writes:

> Ok, I understand, so this is all working fine just as intended. For
> multiple authors one could use a workaround/convention like 
>
>  ,------------------------------------------
>  | #+author: Thorsten_Jolitz Thomas_Mueller
>  `------------------------------------------
>
> and then split the string two times (first blanks, then underscores).

It is also possible to allow multiple author lines, by adding `space'
behaviour in `org-export-options-alist', but I'm not sure this is really
necessary.


Regards,

-- 
Nicolas Goaziou

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

* Re: [Exporter] Why is :author a list in the communication channel?
  2013-11-04 18:42       ` Thorsten Jolitz
  2013-11-04 19:30         ` Nicolas Goaziou
@ 2013-11-04 19:45         ` Nick Dokos
  1 sibling, 0 replies; 10+ messages in thread
From: Nick Dokos @ 2013-11-04 19:45 UTC (permalink / raw)
  To: emacs-orgmode

Thorsten Jolitz <tjolitz@gmail.com> writes:

> Nicolas Goaziou <n.goaziou@gmail.com> writes:
>
>> ...
>> This is orthogonal to the fact that multiple lines are not allowed. For
>> that, see BEHAVIOUR item in `org-export-options-alist'. In particular,
>> you can compare "TITLE" and "AUTHOR" entries.
>
> Ok, I understand, so this is all working fine just as intended. For
> multiple authors one could use a workaround/convention like 
>
>  ,------------------------------------------
>  | #+author: Thorsten_Jolitz Thomas_Mueller
>  `------------------------------------------
>
> and then split the string two times (first blanks, then underscores). 

... or you could modify org-export-options-alist, e.g.:

  (setcar org-export-options-alist '(:author "AUTHOR" nil user-full-name space))

This is a bit too fragile as a general solution: it assumes that the
:author entry is the car of org-export-options-alist which happens to be
the case in my setup, but if you rearrange things, it might not be the
case in your setup. Doing list surgery in the general case is left as
an exercise.

Nick

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

* Re: [Exporter] Why is :author a list in the communication channel?
  2013-11-04 19:30         ` Nicolas Goaziou
@ 2013-11-04 20:07           ` Marcin Borkowski
  0 siblings, 0 replies; 10+ messages in thread
From: Marcin Borkowski @ 2013-11-04 20:07 UTC (permalink / raw)
  To: emacs-orgmode

Dnia 2013-11-04, o godz. 20:30:24
Nicolas Goaziou <n.goaziou@gmail.com> napisał(a):

> Thorsten Jolitz <tjolitz@gmail.com> writes:
> 
> > Ok, I understand, so this is all working fine just as intended. For
> > multiple authors one could use a workaround/convention like 
> >
> >  ,------------------------------------------
> >  | #+author: Thorsten_Jolitz Thomas_Mueller
> >  `------------------------------------------
> >
> > and then split the string two times (first blanks, then
> > underscores).
> 
> It is also possible to allow multiple author lines, by adding `space'
> behaviour in `org-export-options-alist', but I'm not sure this is
> really necessary.

It is well possible that I don't understand something here, but in some
LaTeX classes you use \author{...} many times instead of the default
\author{... \and ...}.  Maybe when exporting to such LaTeX classes,
allowing multiple #+AUTHOR: lines might make sense?

> Regards,

Best,

-- 
Marcin Borkowski
http://octd.wmi.amu.edu.pl/en/Marcin_Borkowski
Adam Mickiewicz University

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

end of thread, other threads:[~2013-11-04 20:08 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2013-11-02 20:40 [Exporter] Why is :author a list in the communication channel? Thorsten Jolitz
2013-11-02 21:33 ` Nicolas Goaziou
2013-11-02 21:48   ` Thorsten Jolitz
2013-11-02 22:30 ` Aaron Ecay
2013-11-04 18:10   ` Thorsten Jolitz
2013-11-04 18:20     ` Nicolas Goaziou
2013-11-04 18:42       ` Thorsten Jolitz
2013-11-04 19:30         ` Nicolas Goaziou
2013-11-04 20:07           ` Marcin Borkowski
2013-11-04 19:45         ` Nick Dokos

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