2

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}
  • 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
7
  • 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}|}
  • 1
    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. – Robbie May 23 '11 at 13:41

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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