Re: [Orgmode] LaTeX multicolumn count wrong in table export

2009-08-28 Thread Nick Dokos
Karl Stump karlst...@yahoo.com wrote:

 When exporting a table with a horizontal line the column count is wrong.
 
 Output from pdflatex run:   
 
 ! Extra alignment tab has been changed to \cr.  
 template \endtemplate 
 
 l.32 \multicolumn{4}{r}{Continued on next page} 
   \ 
 ?   
 
 Here's the table in the tex file:   
 
 \begin{longtable}{||lll||}  
 \caption{This is a long table with lines around and between cells}\\
  Heading1Heading2Heading3 \\  
 \hline  
 \endhead
 \hline\multicolumn{4}{r}{Continued on next page}\   
 \endfoot
 \endlastfoot
 \hline  
  alpha   betagamma \\ 
\\ 
 \end{longtable} 
 
 Here's the org file:
 
 ** table export test
 
 #+CAPTION: This is a long table with lines around and between cells 
 #+LATEX_HEADER: \usepackage[landscape]{geometry}
 #+LATEX_HEADER: \geometry{left=0.12in,right=0.12in,top=0.25in,bottom=0.25in}
 #+ATTR_LaTeX: longtable align=||lll||   
 
 | / | 30 | 10 | 10 |  
 |   | Heading1 | Heading2 | Heading3 |  
 |---+--+--+--|  
 |   | alpha| beta | gamma|  
 |   |  |  |  |  
 
 start: -00-00 end: -00-00
 


I believe it's because of the dummy calculation-mark column,
which is not exported. However, the variable org-table-last-alignment
(a list, whose length becomes the value of the \multicolumn argument)
ends up having the value (nil nil nil nil), i.e. it counts the dummy
column as well. What the proper place to adjust the value is, I don't
know, but it should be easy for Carsten to fix it. For the time being,
you can either get rid of the dummy row and column (e.g. if you don't
need the widths) or fix it by hand in the LaTeX file.

Nick


___
Emacs-orgmode mailing list
Remember: use `Reply All' to send replies to the list.
Emacs-orgmode@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-orgmode


Re: [Orgmode] LaTeX multicolumn count wrong in table export

2009-08-28 Thread Nick Dokos
Nick Dokos nicholas.do...@hp.com wrote:

 Karl Stump karlst...@yahoo.com wrote:
 
  When exporting a table with a horizontal line the column count is wrong.
  
  Output from pdflatex run:   
  
  ! Extra alignment tab has been changed to \cr.  
  template \endtemplate 
  
  l.32 \multicolumn{4}{r}{Continued on next page} 
\ 
  
  ** table export test
  
  #+CAPTION: This is a long table with lines around and between cells 
  #+LATEX_HEADER: \usepackage[landscape]{geometry}
  #+LATEX_HEADER: \geometry{left=0.12in,right=0.12in,top=0.25in,bottom=0.25in}
  #+ATTR_LaTeX: longtable align=||lll||   
  
  | / | 30 | 10 | 10 |  
  |   | Heading1 | Heading2 | Heading3 |  
  |---+--+--+--|  
  |   | alpha| beta | gamma|  
  |   |  |  |  |  
  
  start: -00-00 end: -00-00
  
 
 
 I believe it's because of the dummy calculation-mark column,
 which is not exported. However, the variable org-table-last-alignment
 (a list, whose length becomes the value of the \multicolumn argument)
 ends up having the value (nil nil nil nil), i.e. it counts the dummy
 column as well. What the proper place to adjust the value is, I don't
 know, but it should be easy for Carsten to fix it. For the time being,
 you can either get rid of the dummy row and column (e.g. if you don't
 need the widths) or fix it by hand in the LaTeX file.
 

I think the following patch fixes the above problem and is correct in
its essentials:

diff --git a/lisp/org-latex.el b/lisp/org-latex.el
index c21c9ce..d41c231 100644
--- a/lisp/org-latex.el
+++ b/lisp/org-latex.el
@@ -1449,7 +1449,7 @@ The conversion is made depending of STRING-BEFORE and 
STRING-AFTER.
 \\endhead
 \\hline\\multicolumn{%d}{r}{Continued on next page}\\
 \\endfoot
-\\endlastfoot (length org-table-last-alignment))
+\\endlastfoot (- (length org-table-last-alignment) (if 
org-table-clean-did-remove-column 1 0)))
   nil)))
  (if (not longtblp) (concat \n\\end{tabular}))
  (if longtblp \n (if org-export-latex-tables-centered


HTH,
Nick



___
Emacs-orgmode mailing list
Remember: use `Reply All' to send replies to the list.
Emacs-orgmode@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-orgmode


Re: [Orgmode] LaTeX multicolumn count wrong in table export

2009-08-28 Thread Carsten Dominik


On Aug 29, 2009, at 1:04 AM, Nick Dokos wrote:


Karl Stump karlst...@yahoo.com wrote:

When exporting a table with a horizontal line the column count is  
wrong.


Output from pdflatex run:

! Extra alignment tab has been changed to \cr.
template \endtemplate

l.32 \multicolumn{4}{r}{Continued on next page}
 \
?

Here's the table in the tex file:

\begin{longtable}{||lll||}
\caption{This is a long table with lines around and between cells}\\
Heading1Heading2Heading3 \\
\hline
\endhead
\hline\multicolumn{4}{r}{Continued on next page}\
\endfoot
\endlastfoot
\hline
alpha   betagamma \\
  \\
\end{longtable}

Here's the org file:

** table export test

#+CAPTION: This is a long table with lines around and between cells
#+LATEX_HEADER: \usepackage[landscape]{geometry}
#+LATEX_HEADER:  
\geometry{left=0.12in,right=0.12in,top=0.25in,bottom=0.25in}

#+ATTR_LaTeX: longtable align=||lll||

   | / | 30 | 10 | 10 |
   |   | Heading1 | Heading2 | Heading3 |
   |---+--+--+--|
   |   | alpha| beta | gamma|
   |   |  |  |  |

start: -00-00 end: -00-00




I believe it's because of the dummy calculation-mark column,
which is not exported. However, the variable org-table-last-alignment
(a list, whose length becomes the value of the \multicolumn argument)
ends up having the value (nil nil nil nil), i.e. it counts the dummy
column as well. What the proper place to adjust the value is, I don't
know, but it should be easy for Carsten to fix it. For the time being,
you can either get rid of the dummy row and column (e.g. if you don't
need the widths) or fix it by hand in the LaTeX file.



Indeed.  I have fixed this.  We now pops `org-table-last-alignment' if
the first column has been removed by `org-table-clean-before-export'.
The same problem must have caused a one-off error when setting the
alignment in LaTeX tables, bu it seems nobody has noticed this so
far.  Anyway, also this is fixed now.

Thanks to both of you!

- Carsten



___
Emacs-orgmode mailing list
Remember: use `Reply All' to send replies to the list.
Emacs-orgmode@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-orgmode