emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
From: Mark Elston <m_elston@comcast.net>
To: emacs-orgmode@gnu.org
Subject: Re: Request for feedback about LaTeX setup changes
Date: Mon, 05 Apr 2010 11:28:56 -0700	[thread overview]
Message-ID: <4BBA2BE8.1080005@comcast.net> (raw)
In-Reply-To: <7A9D7D79-E29E-476F-9EEC-1778DADB404F@gmail.com>

Carsten,

I, for one, like this writeup.  It is very clear concerning the
ins and outs of the new setup. Of course, I paid attention to all
the other discussion on this topic so I may be somewhat biased.

It only *sounds* complicated when you see it all laid out like you
have it below.  It breaks down to some simple mechanisms as you
have shown.

Mark

On 4/5/2010 6:13 AM, Carsten Dominik wrote:
> Dear all,
>
> I need some feedback.
>
> Here is new new section from the list of changes, about the LaTeX setup.
> I would like to hear honest answers if I have gone completely crazy, of
> if this actually makes any sense.
>
> Thanks.
>
> - Carsten
> --------------------------------------------------------------------------
> Changes to the intended use of =org-export-latex-classes=
> =========================================================
>
> So far this variable has been used to specify the complete header
> of the LaTeX document, including all the =\usepackage= calls
> necessary for the document. This setup makes it difficult to
> maintain the list of packages that Org itself would like to call,
> for example for the special symbol support it needs. Each time I
> have to add a package, I have to ask people to revise the
> configuration of this variable. In this release, I have tried to
> fix this.
>
> First of all, you can *opt out of this change* in the following
> way: You can say: /I want to have full control over headers, and
> I will take responsibility to include the packages Org needs/.
> If that is what you want, add this to your configuration and skip
> the rest of this section (except maybe for the description of the
> =[EXTRA]= place holder):
>
>
> (setq org-export-latex-default-packages-alist nil
> org-export-latex-packages-alist nil)
>
> /Continue to read here if you want to go along with the modified
> setup./
>
> There are now two variables that should be used to list the LaTeX
> packages that need to be included in all classes. The header
> definition in =org-export-latex-classes= should then not contain
> the corresponding =\usepackage= calls (see below).
>
> The two new variables are:
>
> 1. =org-export-latex-default-packages-alist= :: This is the
> variable where Org-mode itself puts the packages it needs.
> Normally you should not change this variable. The only
> reason to change it anyway is when one of these packages
> causes a conflict with another package you want to use.
> Then you can remove that packages and hope that you are not
> using Org-mode functionality that needs it.
>
> 2. =org-export-latex-packages-alist= :: This is the variable
> where you can put the packages that you'd like to use across
> all classes. For example, I am putting =amsmath= and =tikz=
> here, because I always want to have them.
>
> The sequence how these customizations will show up in the LaTeX
> document are:
> 1. Header from =org-export-latex-classes=
> 2. =org-export-latex-default-packages-alist=
> 3. =org-export-latex-packages-alist=
> 4. Buffer-specific things set with =#+LaTeX_HEADER:=
>
> If you want more control about which segment is placed where, or
> if you want, for a specific class, have full control over the
> header and exclude some of the automatic building blocks, you can
> put the following macro-like place holders into the header:
>
>
> [DEFAULT-PACKAGES] \usepackage statements for default packages
> [NO-DEFAULT-PACKAGES] do not include any of the default packages
> [PACKAGES] \usepackage statements for packages
> [NO-PACKAGES] do not include the packages
> [EXTRA] the stuff from #+LaTeX_HEADER
> [NO-EXTRA] do not include #+LaTeX_HEADER stuff
>
> If you have currently customized =org-export-latex-classes=, you
> should revise that customization and remove any package calls that
> are covered by =org-export-latex-default-packages-alist=. This
> applies to the following packages:
>
> - inputenc
> - fontenc
> - graphicx
> - longtable
> - float
> - wrapfig
> - soul
> - t1enc
> - textcomp
> - marvosym
> - wasysym
> - latexsym
> - amssymb
> - hyperref
>
> If one of these packages creates a conflict with another package
> you are using, you can remove it from
> =org-export-latex-default-packages-alist=. But then you risk
> that some of the advertised export features of Org will not work
> properly.
>
> You can also consider moving packages that you use in all classes
> to =org-export-latex-packages-alist=. If necessary, put the
> place holders so that the packages get loaded in the right
> sequence. As said above, for backward compatibility, if you omit
> the place holders, all the variables will dump their content at
> the end of the header.
>
> Damn, this has become more complex than I wanted it to be. I
> hope that in practice, this will not be complicated at all.
>

  reply	other threads:[~2010-04-05 18:29 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-04-05 13:13 Request for feedback about LaTeX setup changes Carsten Dominik
2010-04-05 18:28 ` Mark Elston [this message]
2010-04-07 14:01 ` Giovanni Ridolfi
  -- strict thread matches above, loose matches on Subject: below --
2010-04-07 17:04 Aaron Hammitt
2010-04-07 22:33 ` Carsten Dominik

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=4BBA2BE8.1080005@comcast.net \
    --to=m_elston@comcast.net \
    --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).