emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
From: "Thomas S. Dye" <tsd@tsdye.com>
To: Carsten Dominik <carsten.dominik@gmail.com>
Cc: emacs-orgmode Mailinglist <emacs-orgmode@gnu.org>
Subject: Re: A LaTeX class for Org-mode export
Date: Sat, 16 Oct 2010 07:08:22 -1000	[thread overview]
Message-ID: <77AA8FA8-FC83-47B0-81DC-E6D83EA7A0D5@tsdye.com> (raw)
In-Reply-To: <382F36E0-825B-4EC0-A44A-CFEA708157D4@gmail.com>

Aloha Carsten,

Thanks for your kind words.  I'm having fun with org-article.cls and  
am happy to have Org support in the ways that you mention.

Right now I think the class's main contribution is that it eases  
configuration of LaTeX export.

For the future (perhaps distant), I'm hoping org-article.cls will make  
the case that Org should identify other semantic elements in LaTeX  
export, leaving the details of their representation to the LaTeX class.

For example:

paths: Paths are frequently quite long and when they don't include  
spaces LaTeX can have a difficult time breaking them at the end of a  
line.  There is a LaTeX package, url.sty, that handles this.  I  
believe that the hyperref package loads url.sty for this  
functionality, so it is available to the LaTeX exporter with the  
current defaults.  If paths were identified in the export,
e.g., \org-path{/long/path/to/my/file/deep/in/the/directory/tree},
then the LaTeX class could typeset this with either the \url{} command  
(if hyperref wasn't being used), with \nolinkurl{} (if hyperref was  
being used), or some other way appropriate to the class.

lists: In addition to compact lists (I agree with you that they are an  
improvement over the standard LaTeX lists), it should be possible to  
typeset lists inside paragraphs.  I'm not certain how this might be  
handled in Org-mode, perhaps an #+property or other entity that could  
be set on a list-specific basis.  The LaTeX paralist package that is  
responsible for the compact lists does a good job typesetting lists in  
paragraphs, as well.

#+results:  I'm integrating Eric Fraga's GANTT chart code, which  
generates the LaTeX code to create a high quality graphic using an Org- 
mode table as input.  Currently, the #+results: of Eric's code aren't  
exported unless I add a blank line between the #+results: and # 
+BEGIN_LaTeX lines.  If, instead, the results block were exported  
inside a LaTeX environment, say \begin{org-results} \end{org-results},  
then org-article.cls (or any other LaTeX class) could define an  
environment to typeset the results appropriately.  With the blank line  
inserted, LaTeX export yields a listing of the LaTeX code, which is  
all well and good, but it doesn't get set off *as a result*, which  
might be useful to distinguish it from regular source code blocks in  
the Org-mode file.

I'm not advocating for any specific changes here.  I'm just trying to  
indicate a possibly useful development path for Org-mode LaTeX export  
in tandem with custom LaTeX classes.

All the best,
Tom


On Oct 15, 2010, at 7:57 PM, Carsten Dominik wrote:

>
> Hi Thomas,
>
> Dan just made me look again at this thread, which I had not yet
> studied closely.
>
> I think you have created something very useful indeed.  I love
> the compact lists, and I am sure there is a lot more I would use.
> So I am wondering:  What can Org do to support and integrate this
> class?  I can think of a couple of things:
>
> - distribute it in contrib
> - advertise it in the manual
> - have it as one of the default classes in org-export-latex-classes
>
> But maybe you have other ideas?
>
> Cheers
>
> - Carsten
>
>
> On Sep 14, 2010, at 10:37 PM, Thomas S. Dye wrote:
>
>> Aloha all,
>>
>> I'd like to draw your attention to a LaTeX class that I put  
>> together in response to posts here about configuring the output of  
>> the LaTeX exporter.  The class supports all of the Org-mode LaTeX  
>> default packages.  It supports the standard LaTeX article class and  
>> the KOMA-script scrartcl class and provides several choices of  
>> fonts.  In addition, it  includes facilities to apply  
>> microtypographic adjustments to suitable fonts, set the line  
>> spacing of the document to double space, set lists more compactly  
>> than the standard LaTeX article.cls, and typeset source code  
>> listings, optionally with color.
>>
>> The documentation that should appear shortly in the Babel/Uses  
>> section of Worg includes two examples that illustrate use of the  
>> class.  The first uses the standard LaTeX article class and Times,  
>> Helvetica, and Courier fonts with a 12 point base size to typeset  
>> the literate program on 8.5 x 11 in. paper, with colored source  
>> code listings and microtypographic adjustments.
>>
>>> #+LaTeX_CLASS: org-article-subsubsection
>>> #+LaTeX_CLASS_OPTIONS: [article,letterpaper,times, 
>>> 12pt,listings,color,microtype]
>>
>> The second uses the KOMA-script scrartcl class and Utopia, Bera,  
>> and Inconsolata fonts with a 10 point base size to typeset the  
>> literate program on 5.8 x 8.3 in. paper in landscape mode, also  
>> with colored source code listings and microtypographic  
>> adjustments.  In addition, lists are set tighter than with the  
>> standard LaTeX article class.
>>
>>> #+LaTeX_CLASS: org-article-subsubsection
>>> #+LaTeX_CLASS_OPTIONS: [koma,a5paper,landscape,utopia, 
>>> 10pt,listings,color,microtype,paralist]
>>
>> The project is hosted at GitHub:
>> http://github.com/tsdye/org-article
>>
>> All the best,
>> Tom
>> _______________________________________________
>> Emacs-orgmode mailing list
>> Please use `Reply All' to send replies to the list.
>> Emacs-orgmode@gnu.org
>> http://lists.gnu.org/mailman/listinfo/emacs-orgmode
>

  reply	other threads:[~2010-10-16 17:08 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-09-14 20:37 A LaTeX class for Org-mode export Thomas S. Dye
2010-09-14 21:36 ` Scot Becker
2010-09-14 23:28   ` Thomas S. Dye
2010-09-22  2:44     ` Srinivas
2010-09-22  3:35       ` Thomas S. Dye
2010-09-22  4:44         ` Srinivas Pavani
2010-09-22  5:31           ` Thomas S. Dye
2010-10-16  5:57 ` Carsten Dominik
2010-10-16 17:08   ` Thomas S. Dye [this message]
2010-10-17  5:58     ` Carsten Dominik
2010-10-17 19:25       ` Thomas S. Dye
2010-10-18 18:46         ` John Hendy
2010-10-18 18:48           ` John Hendy
  -- strict thread matches above, loose matches on Subject: below --
2010-11-26  4:32 Mike McLean

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.orgmode.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=77AA8FA8-FC83-47B0-81DC-E6D83EA7A0D5@tsdye.com \
    --to=tsd@tsdye.com \
    --cc=carsten.dominik@gmail.com \
    --cc=emacs-orgmode@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).