Sebastien Vauban writes:
> Hi Myles and Nick, > > Nick Dokos wrote: >> Myles English <mylesengl...@gmail.com> wrote: >>> Sebastien Vauban writes: >>> > Myles English wrote: >>> >> This patch replaces every occurence of the \begin{center} environment >>> >> with \centering in the file contrib/lisp/org-e-latex.el. >>> >> ... >>> >> - (format "\\begin{center}\n%s\\end{center}" contents))) >>> >> + (format "\\centering\n%s" contents))) >>> > >>> > Wouldn't you have to replace >>> > >>> > \begin{center} >>> > ... >>> > \end{center} >>> > >>> > by >>> > >>> > {\centering >>> > ... >>> > } >>> > >>> > ? That is, add a group around? >>> >>> I don't think so, at least I have not come across that usage, and it >>> seems to work without. Do you know different? >> >> If a \centering occurs at top-level in a latex document, >> then *everything* after it will be centered: it's a declaration that >> remains in force for the current group (which is the rest of the >> document if it occurs at top-level). > > As confirmed by Nick, \centering just changes the layout for ever... up to the > end of the document. > > Why does it work? I guess because there are grouping commands inserted by Org > at other places, that stop the propagation of the centering that far... But > it's dangerous to count on them, IMHO. > >> \begin{center}...\end{center} is essentially {\centering ...} except >> that it also starts a new paragraph. >From within a figure or table environment, that new paragraph shows up as uneeded vertical space, see the example I give lower down. >> >> >> It's not clear to me at least, that wholesale replacement is the correct >> thing to do: it needs to be looked at on a case-by-case basis I >> think. Nick, I think you are right about this, the modified patch at the end of this email makes only the replacements that are necessary just to replace the center environment within table blocks. The other \begin{center}'s in the org-e-latex.el file may be changed some other time, if needed. > I think that's a safe replacement (_with_ the grouping), and with something I > forgot about (well seen Nick!): the \par. I don't think the grouping is necessary because the implied group will be closed when the table environment is ended. Likewise, I don't think the \par is necessary. If you compile this this latex it illustrates the problem, and the solution: %______________________________begin example.tex_______________ \documentclass[11pt]{article} \usepackage{float} \begin{document} Before.------------------------------- \begin{table}[htb] \caption{\label{tab:progress}Summary} \begin{center} \begin{tabular}{ll} A & B\\ \end{tabular} \end{center} \end{table} After.-------------------------------- Before.------------------------------- \begin{table}[htb] \caption{\label{tab:progress}Summary} \centering \begin{tabular}{ll} A & B\\ \end{tabular} \end{table} After.------------------------------- \end{document} %______________________________end example.tex_______________ > See, for example, > https://groups.google.com/forum/?fromgroups=#!topic/fr.comp.text.tex/0s4WfsIfmy8 > for the answer of Manuel Pégourié-Gonnard, one reference wrt LaTeX > questions: My French, and my browser apparently, is not good enough to understand that thread. Sorry. Please translate if it is still relevant to this discussion. > > "replace the environment by {\centering ... \par}" [answered above] > > Best regards, > Seb Myles >From 51686ada4cb2560eb5dfb6b445af547eccff8bff Mon Sep 17 00:00:00 2001 From: Myles English <mylesengl...@gmail.com> Date: Tue, 13 Nov 2012 21:04:16 +0000 Subject: [PATCH] org-e-latex: Tables get correct amount of vertical space * contrib/lisp/org-e-latex.el: Replaced a set of \begin{center} and \end{center} environment markers with a \centering declaration. Using both \begin{table} and \being{center} environments leads to double the vertical space around the float, whereas \centering adds none. TINYCHANGE --- contrib/lisp/org-e-latex.el | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/contrib/lisp/org-e-latex.el b/contrib/lisp/org-e-latex.el index 165beb3..5635c6a 100644 --- a/contrib/lisp/org-e-latex.el +++ b/contrib/lisp/org-e-latex.el @@ -2302,14 +2302,13 @@ This function assumes TABLE has `org' as its `:type' attribute." (concat (format "\\begin{%s}%s\n" float-env placement) (if org-e-latex-table-caption-above caption ""))) - (when org-e-latex-tables-centered "\\begin{center}\n") + (when org-e-latex-tables-centered "\\centering\n") (format "\\begin{%s}%s{%s}\n%s\\end{%s}" table-env (if width (format "{%s}" width) "") alignment contents table-env) - (when org-e-latex-tables-centered "\n\\end{center}") (when float-env (concat (if org-e-latex-table-caption-above "" caption) (format "\n\\end{%s}" float-env)))))))) -- 1.8.0