# How can I prevent hyphenation in a table column?

I have a table (tabular) with some fixed width columns, and I'd like to prevent a hyphen being inserted (preferring a line break to be inserted prematurely).

The sample table's content is below.

\begin{tabular}{p{4cm}p{4cm}}
Want to avoid hyphenation & also want to avoid hyphenation here \\
\end{tabular}


How can I do this? I'd also like to tell latex not to allow each column to exceed its specified width (so I don't want a solution that means assigning hyphenation the same badness rating as an overfull hbox).

-
Setting \hyphenpenalty10000 causes the hyphenation to go away for me and I get no overfull hboxes. –  TH. Sep 8 '10 at 10:48

Setting the text ragged right will do this for you. Something like

\usepackage{array}
...
\begin{tabular}{>{\raggedright}p{4cm}>{\raggedright\arraybackslash}p{4cm}}
Want to avoid hyphenation & also want to avoid hyphenation here \\
\end{tabular}

-
Better use \RaggedRight from ragged2e, no? –  Konrad Rudolph Sep 8 '10 at 11:37
The point was to not have hyphenation. \RaggedRight's whole purpose is to allow hyphenation. –  TH. Sep 8 '10 at 14:08
Thanks for this. Unfortunately this now means that I can't use the booktabs package with \midrule and \bottomrule (in both cases I get a misplace \noalign error). –  bryn Sep 9 '10 at 5:38
Oh, that just means I was lazy with my example. Should be fixed now. –  Will Robertson Sep 9 '10 at 6:51
Thanks -- I have no idea what \arraybackslash is for but that fixes the problem. –  bryn Sep 9 '10 at 8:20