Take the 2-minute tour ×
TeX - LaTeX Stack Exchange is a question and answer site for users of TeX, LaTeX, ConTeXt, and related typesetting systems. It's 100% free, no registration required.

I've got the following table, which I'd prefer not to split, and it's slightly too wide for the page. How can I make some of the column headings hyphenate? I don't want to have to define a fixed width of each column or something like that; it'd be much simpler if I could make "Labiodental" be hyphenated as "Labio-dental", as that's the troublesome column.

\begin{table}[htpb]\small\capstart
    \begin{center}
        \begin{tabular}{|>{\bfseries}fc|c c|c c|c c|c c|c c|c c|c c|c c|c c|}
            \hline
            \SetRowStyle{\bfseries} & \multicolumn{2}{-c|}{Bilabial} & \multicolumn{2}{-c|}{Labiodental} & \multicolumn{2}{-c|}{Dental} & \multicolumn{2}{-c|}{Alveolar} & \multicolumn{2}{-c|}{Retroflex} & \multicolumn{2}{-c|}{Palatal} & \multicolumn{2}{-c|}{Velar} & \multicolumn{2}{-c|}{Glottal} \tabularnewline\hline
            Nasal & & m & & & & \textsubbridge{n} & & & & & & ɲ & & & & \tabularnewline%\hline
            Plosive & p & & & & \textsubbridge{t} & & & & & & & & k & & & \tabularnewline%\hline
            Affricate & & & & & \multicolumn{2}{c|}{\textsubbridge{t}θ} & ts & & ʈʂ & & tɕ & & & & & \tabularnewline%\hline
            Fricative & & & f & \multirow{2}{*}{ʋ} & θ & \multirow{2}{*}{ð} & s & & ʂ & & ɕ & & x & & h & \tabularnewline%\cline{1-4} \cline{6-6} \cline{8-17}
            Approximant & & & \multicolumn{1}{r}{} & & \multicolumn{1}{r}{} & & & & & & & j & & w & & \tabularnewline%\hline
            Lateral & & & & & & & & l & & & & & & & & \tabularnewline%\hline
            Rhotic & & & & & & & & r\textasciitilde\textfishhookr & & & & & & & & \tabularnewline\hline
        \end{tabular}
        \caption{Consonants\label{tab:consonants}}
    \end{center}
\end{table}
share|improve this question
4  
Please complete your code to a minimally working example as I can't get it to compile because I don't know what packages I am missing. –  Christian Lindig May 22 '11 at 6:05
add comment

1 Answer

up vote 5 down vote accepted
  • Use a multiline cell, such as a p column

  • TeX doesn't hyphenate the first word of a paragraph, you can insert \hspace{0pt} to work around it.

This example will be hyphenated as desired:

\multicolumn{2}{p{1cm}|}{\hspace{0pt}Labiodental}

hyphenation in cell

This workaround can be efficiently used with the >{...} feature of the array package or even \newcolumntype, if it's required more often. Simply applied to this example in \multicolumn:

\multicolumn{2}{>{\hspace{0pt}}p{1cm}|}
share|improve this answer
    
Thanks. It just fits; I think I might have to decrease the margins a bit as well, as I have quite a lot of tables that are that mm or so too wide. –  zoqaeski May 23 '11 at 13:41
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.