Re: Errori nel compilare una longtable

#55348
Up
0
Down
::

Ciao a tutti.
Il titolo parla da sé: compilando questo codice, che a Lorenzo non dà problemi

`\documentclass[12pt]{article}

\usepackage{booktabs,longtable}

\begin{document}
\begin{longtable}{ll}
% didascalia ed etichetta
\caption{Un esempio di tabella ripartita su più pagine.}
\label{tab:longtable} \\
% intestazione iniziale
\toprule
Comando & Effetto \\
\midrule
\endfirsthead
% intestazione normale
\multicolumn{2}{l}{\footnotesize\itshape\tablename~\thetable:
continua dalla pagina precedente} \\
\toprule
Comando & Effetto \\
\midrule
\endhead
% piede normale
\midrule
\multicolumn{2}{r}{\footnotesize\itshape\tablename~\thetable:
continua nella prossima pagina} \\
\endfoot
% piede finale
\bottomrule
\multicolumn{2}{r}{\footnotesize\itshape\tablename~\thetable:
si conclude dalla pagina precedente} \\
\endlastfoot
% corpo della tabella
a & a \\
a & a \\
a & a \\
a & a \\
a & a \\
a & a \\
a & a \\
a & a \\
a & a \\
a & a \\
a & a \\
a & a \\
a & a \\
a & a \\
a & a \\
a & a \\
b & b \\
b & b \\
b & b \\
b & b \\
b & b \\
b & b \\
b & b \\
b & b \\
b & b \\
b & b \\
b & b \\
b & b \\
b & b \\
c & c \\
c & c \\
c & c \\
c & c \\
c & c \\
c & c \\
c & c \\
c & c \\
\end{longtable}
\end{document}`

ottengo questo:

`This is pdfTeX, Version 3.1415926-1.40.11 (TeX Live 2010)
\write18 enabled.
entering extended mode
(./prova-longtable.tex
LaTeX2e <2009/09/24>
Babel and hyphenation patterns for english, dumylang, nohyphenation, ge
rman-x-2009-06-19, ngerman-x-2009-06-19, afrikaans, ancientgreek, ibycus, arabi
c, armenian, basque, bulgarian, catalan, pinyin, coptic, croatian, czech, danis
h, dutch, ukenglish, usenglishmax, esperanto, estonian, ethiopic, farsi, finnis
h, french, galician, german, ngerman, swissgerman, monogreek, greek, hungarian,
icelandic, assamese, bengali, gujarati, hindi, kannada, malayalam, marathi, or
iya, panjabi, tamil, telugu, indonesian, interlingua, irish, italian, kurmanji,
lao, latin, latvian, lithuanian, mongolian, mongolianlmc, bokmal, nynorsk, pol
ish, portuguese, romanian, russian, sanskrit, serbian, slovak, slovenian, spani
sh, swedish, turkish, turkmen, ukrainian, uppersorbian, welsh, loaded.
(/usr/local/texlive/2010/texmf-dist/tex/latex/base/article.cls
Document Class: article 2007/10/19 v1.4h Standard LaTeX document class
(/usr/local/texlive/2010/texmf-dist/tex/latex/base/size12.clo))
(/usr/local/texlive/2010/texmf-dist/tex/latex/booktabs/booktabs.sty)
(/usr/local/texlive/2010/texmf-dist/tex/latex/tools/longtable.sty)
(./prova-longtable.aux)
! Misplaced \omit.
\multispan ->\omit
\@multispan
l.8 …empio di tabella ripartita su più pagine.}

?`

Ora, posto che ho un Mac con TeX Live 2010 aggiornata e uso TeXShop impostato su UTF-8, come sapete, e che l’errore non è nuovo, e che ho SEMPRE avuto problemi nel compilare una longtable, provo a rispondermi da solo:

1. ho copiato e incollato questo codice dal mio server di posta elettronica, che forse usa un’altra codifica e ottengo qualche errore;

2. manca qualche pacchetto che ignoro;

3. potrei evitare una long table, lo so, ma questa serve proprio 😀

4. aiutatemi.

Informo anche che ho provato a commentare tutto progressivamente e a rimettere tutto progressivamente, ma ottengo comunque errori, specialmente con la didascalia. Forse che una tabella di questo tipo ha bisogno del pacchetto caption per qualche motivo?

Ciao
Tommaso

Propendo per la presenza di caratteri stravaganti. Se copio e incollo non ho problemi. Naturalmente la presenza di lettere accentate senza una corrispondente dichiarazione della codifica può dare risultati scorretti.

Non sono riuscito a riprodurre l’errore, però. Quello che fa \caption dentro una longtable è di inserire la didascalia per mezzo di qualcosa equivalente a \multicolumn{}{c}{}, dove è il numero di colonne della tabella, che longtable sa calcolare da sé. Evidentemente c’è qualcosa tra la graffa di chiusura di {ll} e \caption (propendo per caratteri invisibili di fine riga). Un comando \multicolumn deve infatti comparire per primo all’inizio di una riga o dopo un &.

Ciao
Enrico

Go to top