Re: how to get multi-line author in ODT export?

2021-08-27 Thread Eric S Fraga
Juan Manuel,

thank you very much.  This is both very useful and ever so simple!  I
did have to set org-export-allow-bind-keywords for this to work (in case
others wonder why nothing seems to happen ;-)).

Thanks again,
eric

-- 
: Eric S Fraga via Emacs 28.0.50, Org release_9.4.6-628-g366444
: Latest paper written in org: https://arxiv.org/abs/2106.05096



Re: how to get multi-line author in ODT export?

2021-08-26 Thread Juan Manuel Macías
Hi John,

you're welcome. I realized that in these lines of the meta.xml file:

 ... 
 ... 

line breaks can be achieved simply by adding a new line without marks (as
discussed in this thread:
https://stackoverflow.com/questions/10917555/adding-a-new-line-break-tag-in-xml/10923392)

Best regards,

Juan Manuel

John Kitchin writes:

> That is really nice, thanks for sharing it!
> John
>
> ---
> Professor John Kitchin (he/him/his)
> Doherty Hall A207F
> Department of Chemical Engineering
> Carnegie Mellon University
> Pittsburgh, PA 15213
> 412-268-7803
> @johnkitchin
> http://kitchingroup.cheme.cmu.edu
>
> On Thu, Aug 26, 2021 at 12:55 PM Juan Manuel Macías
>  wrote:
>
> Hi again,
>
> Another simpler approach, with a filter:
>
> #+TITLE: The kessel run in 12 parsecs
> #+AUTHOR: Han Solo !!! Chewbacca !!! Lando Calrissian
>
> #+BIND: org-export-filter-plain-text-functions (author-lb-filter)
> #+begin_src emacs-lisp :exports results :results none
>   (defun author-lb-filter (text backend info)
> (cond ((org-export-derived-backend-p backend 'odt)
>(replace-regexp-in-string "!!!" "\n" text))
>   ((org-export-derived-backend-p backend 'latex)
>(replace-regexp-in-string "!!!" "" text
> #+end_src
>
> Content...
>
> Best regards,
>
> Juan Manuel
>
> Juan Manuel Macías writes:
>
> > Hi Eric,
> >
> > I think the problem is in this two lines of `org-odt-template',
> that
> > creates the meta.xml file inside the odt file:
> >
> > (format "%s\n" author)
> > (format "%s\n"
> author)
> >
> > Perhaps, modifying them like this:
> >
> > (format "\n"
> (replace-regexp-in-string "" "\n" author))
> > (format "\n" (replace-regexp-in-string
> "" "\n" author))
> >
> > We could do this in our documents:
> >
> > #+AUTHOR: Han Solo \\ Chewbacca
> >
> > (little tested)
> >
> > Best regards,
> >
> > Juan Manuel
> >
> > Eric S Fraga writes:
> >
> >> So, as usual, I answer my own question, sort of.
> >>
> >> The problem is that org exports the author text enclosed within
> a
> >> special directives, specifically:
> >>
> >>  (format "%s"
> author))
> >>
> >> New line directives are not allowed within this declaration, it
> >> seems.  Removing (manually) the initial-creator directive then
> works.
> >>
> >> So, my question would be: is this text:initial-creator tagging
> >> necessary?  If not, can we remove it?  The OpenDocument schema
> is vague
> >> about whether this is necessary.  If we cannot remove it, i.e
> if
> >> initial-creator is required in the document, could it be put in
> >> separately (as a meta:initial-creator tag) so that the author
> field can
> >> be more general?
> >>
> >> I am *not* an ODT expert of any sort.  But it is my route to
> Word
> >> documents when the need arises (which is luckily seldom).
> >>
> >> Anyway, no panic: I can simply manually edit the odt file just
> before
> >> the final processing...
> >>
> >> Thank you,
> >> eric
> >
> >
>



Re: how to get multi-line author in ODT export?

2021-08-26 Thread John Kitchin
That is really nice, thanks for sharing it!
John

---
Professor John Kitchin (he/him/his)
Doherty Hall A207F
Department of Chemical Engineering
Carnegie Mellon University
Pittsburgh, PA 15213
412-268-7803
@johnkitchin
http://kitchingroup.cheme.cmu.edu



On Thu, Aug 26, 2021 at 12:55 PM Juan Manuel Macías 
wrote:

> Hi again,
>
> Another simpler approach, with a filter:
>
> #+TITLE: The kessel run in 12 parsecs
> #+AUTHOR: Han Solo !!! Chewbacca !!! Lando Calrissian
>
> #+BIND: org-export-filter-plain-text-functions (author-lb-filter)
> #+begin_src emacs-lisp :exports results :results none
>   (defun author-lb-filter (text backend info)
> (cond ((org-export-derived-backend-p backend 'odt)
>(replace-regexp-in-string "!!!" "\n" text))
>   ((org-export-derived-backend-p backend 'latex)
>(replace-regexp-in-string "!!!" "" text
> #+end_src
>
> Content...
>
> Best regards,
>
> Juan Manuel
>
> Juan Manuel Macías writes:
>
> > Hi Eric,
> >
> > I think the problem is in this two lines of `org-odt-template', that
> > creates the meta.xml file inside the odt file:
> >
> > (format "%s\n" author)
> > (format "%s\n" author)
> >
> > Perhaps, modifying them like this:
> >
> > (format "\n"
> (replace-regexp-in-string "" "\n" author))
> > (format "\n"
> (replace-regexp-in-string "" "\n" author))
> >
> > We could do this in our documents:
> >
> > #+AUTHOR: Han Solo \\ Chewbacca
> >
> > (little tested)
> >
> > Best regards,
> >
> > Juan Manuel
> >
> > Eric S Fraga writes:
> >
> >> So, as usual, I answer my own question, sort of.
> >>
> >> The problem is that org exports the author text enclosed within a
> >> special directives, specifically:
> >>
> >>  (format "%s" author))
> >>
> >> New line directives are not allowed within this declaration, it
> >> seems.  Removing (manually) the initial-creator directive then works.
> >>
> >> So, my question would be: is this text:initial-creator tagging
> >> necessary?  If not, can we remove it?  The OpenDocument schema is vague
> >> about whether this is necessary.  If we cannot remove it, i.e if
> >> initial-creator is required in the document, could it be put in
> >> separately (as a meta:initial-creator tag) so that the author field can
> >> be more general?
> >>
> >> I am *not* an ODT expert of any sort.  But it is my route to Word
> >> documents when the need arises (which is luckily seldom).
> >>
> >> Anyway, no panic: I can simply manually edit the odt file just before
> >> the final processing...
> >>
> >> Thank you,
> >> eric
> >
> >
>
>


Re: how to get multi-line author in ODT export?

2021-08-26 Thread Juan Manuel Macías
Hi again,

Another simpler approach, with a filter:

#+TITLE: The kessel run in 12 parsecs
#+AUTHOR: Han Solo !!! Chewbacca !!! Lando Calrissian

#+BIND: org-export-filter-plain-text-functions (author-lb-filter)
#+begin_src emacs-lisp :exports results :results none
  (defun author-lb-filter (text backend info)
(cond ((org-export-derived-backend-p backend 'odt)
   (replace-regexp-in-string "!!!" "\n" text))
  ((org-export-derived-backend-p backend 'latex)
   (replace-regexp-in-string "!!!" "" text
#+end_src

Content...

Best regards,

Juan Manuel

Juan Manuel Macías writes:

> Hi Eric,
>
> I think the problem is in this two lines of `org-odt-template', that
> creates the meta.xml file inside the odt file:
>
> (format "%s\n" author)
> (format "%s\n" author)
>
> Perhaps, modifying them like this:
>
> (format "\n" (replace-regexp-in-string 
> "" "\n" author))
> (format "\n" 
> (replace-regexp-in-string "" "\n" author))
>
> We could do this in our documents:
>
> #+AUTHOR: Han Solo \\ Chewbacca
>
> (little tested)
>
> Best regards,
>
> Juan Manuel
>
> Eric S Fraga writes:
>
>> So, as usual, I answer my own question, sort of.
>>
>> The problem is that org exports the author text enclosed within a
>> special directives, specifically:
>>
>>  (format "%s" author))
>>
>> New line directives are not allowed within this declaration, it
>> seems.  Removing (manually) the initial-creator directive then works.
>>
>> So, my question would be: is this text:initial-creator tagging
>> necessary?  If not, can we remove it?  The OpenDocument schema is vague
>> about whether this is necessary.  If we cannot remove it, i.e if
>> initial-creator is required in the document, could it be put in
>> separately (as a meta:initial-creator tag) so that the author field can
>> be more general?
>>
>> I am *not* an ODT expert of any sort.  But it is my route to Word
>> documents when the need arises (which is luckily seldom).
>>
>> Anyway, no panic: I can simply manually edit the odt file just before
>> the final processing...
>>
>> Thank you,
>> eric
>
>



Re: how to get multi-line author in ODT export?

2021-08-26 Thread Juan Manuel Macías
Hi Eric,

I think the problem is in this two lines of `org-odt-template', that
creates the meta.xml file inside the odt file:

(format "%s\n" author)
(format "%s\n" author)

Perhaps, modifying them like this:

(format "\n" (replace-regexp-in-string 
"" "\n" author))
(format "\n" 
(replace-regexp-in-string "" "\n" author))

We could do this in our documents:

#+AUTHOR: Han Solo \\ Chewbacca

(little tested)

Best regards,

Juan Manuel 

Eric S Fraga writes:

> So, as usual, I answer my own question, sort of.
>
> The problem is that org exports the author text enclosed within a
> special directives, specifically:
>
>  (format "%s" author))
>  
> New line directives are not allowed within this declaration, it
> seems.  Removing (manually) the initial-creator directive then works.
>
> So, my question would be: is this text:initial-creator tagging
> necessary?  If not, can we remove it?  The OpenDocument schema is vague
> about whether this is necessary.  If we cannot remove it, i.e if
> initial-creator is required in the document, could it be put in
> separately (as a meta:initial-creator tag) so that the author field can
> be more general?
>
> I am *not* an ODT expert of any sort.  But it is my route to Word
> documents when the need arises (which is luckily seldom).
>
> Anyway, no panic: I can simply manually edit the odt file just before
> the final processing...
>
> Thank you,
> eric




Re: how to get multi-line author in ODT export?

2021-08-26 Thread Eric S Fraga
Hi John,

On Thursday, 26 Aug 2021 at 10:50, John Kitchin wrote:
> Does something like this work for you:

Yes, thank you, hand crafting the author field directly would do the
job indeed!

Thanks again,
eric

-- 
: Eric S Fraga via Emacs 28.0.50, Org release_9.4.6-628-g366444
: Latest paper written in org: https://arxiv.org/abs/2106.05096



Re: how to get multi-line author in ODT export?

2021-08-26 Thread John Kitchin
Does something like this work for you:

#+options: author:nil
#+author: Test author - not shown in export

@@odt:First author
lineSecond
line@@

Testing with content

This exports to ODT like this for me:
[image: image.png]

John

---
Professor John Kitchin (he/him/his)
Doherty Hall A207F
Department of Chemical Engineering
Carnegie Mellon University
Pittsburgh, PA 15213
412-268-7803
@johnkitchin
http://kitchingroup.cheme.cmu.edu



On Thu, Aug 26, 2021 at 10:24 AM Eric S Fraga  wrote:

> So, as usual, I answer my own question, sort of.
>
> The problem is that org exports the author text enclosed within a
> special directives, specifically:
>
>  (format "%s" author))
>
> New line directives are not allowed within this declaration, it
> seems.  Removing (manually) the initial-creator directive then works.
>
> So, my question would be: is this text:initial-creator tagging
> necessary?  If not, can we remove it?  The OpenDocument schema is vague
> about whether this is necessary.  If we cannot remove it, i.e if
> initial-creator is required in the document, could it be put in
> separately (as a meta:initial-creator tag) so that the author field can
> be more general?
>
> I am *not* an ODT expert of any sort.  But it is my route to Word
> documents when the need arises (which is luckily seldom).
>
> Anyway, no panic: I can simply manually edit the odt file just before
> the final processing...
>
> Thank you,
> eric
>
> --
> : Eric S Fraga via Emacs 28.0.50, Org release_9.4.6-628-g366444
> : Latest paper written in org: https://arxiv.org/abs/2106.05096
>
>


Re: how to get multi-line author in ODT export?

2021-08-26 Thread Eric S Fraga
So, as usual, I answer my own question, sort of.

The problem is that org exports the author text enclosed within a
special directives, specifically:

 (format "%s" author))
 
New line directives are not allowed within this declaration, it
seems.  Removing (manually) the initial-creator directive then works.

So, my question would be: is this text:initial-creator tagging
necessary?  If not, can we remove it?  The OpenDocument schema is vague
about whether this is necessary.  If we cannot remove it, i.e if
initial-creator is required in the document, could it be put in
separately (as a meta:initial-creator tag) so that the author field can
be more general?

I am *not* an ODT expert of any sort.  But it is my route to Word
documents when the need arises (which is luckily seldom).

Anyway, no panic: I can simply manually edit the odt file just before
the final processing...

Thank you,
eric

-- 
: Eric S Fraga via Emacs 28.0.50, Org release_9.4.6-628-g366444
: Latest paper written in org: https://arxiv.org/abs/2106.05096