How to deal with cases that cell is too long to display?

Some times I met a problem: some cells is too long to display. I have to break manualky. So my question: Is there a method making it automatically? I have tried supertabular and longtable, but they seems not to work. Didn't I use them in correct way?

For example,

\begin{supertabular}{|c|c|}\hline
A poem &A man is bringing a cup of coffee to his face,
tilting it to his mouth. It's historical, he thinks.
He scratches his head: another historical event.
He really ought to rest, he's making an awful lot of
history this morning.
Oh my, now he's buttering toast, another piece of
He wonders why it should have fallen on him to be
so historical. Others probably just don't have it,
he thinks, it is, after all, a talent.
He thinks one of his shoelaces needs tying. Oh well,
another important historical event is about to take
place. He just can't help it. Perhaps he's taking up
too large an area of history? But he has to live, hasn't
he? Toast needs buttering and he can't go around with
one of his shoelaces needing to be tied, can he?
Certainly it's true, when the 20th century gets written
in full it will be mainly about him. That's the way the
cookie crumbles--ah, there's a phrase that'll be quoted
for centuries to come.\\
\hline

\end{supertabular}


There only 1 row and 2 columns. But the second cell is quite enormous to display.

-
\begin{supertabular}{|c|p{10cm}|} ... does the job. –  wasteofspace Feb 5 '13 at 18:36
Yes, it works! Thank you very much! –  Popopo Feb 6 '13 at 10:20
@wasteofspace Could you make your comment an answer? –  Joseph Wright Aug 6 '13 at 12:29
To have text break within a table, you can use a paragraph column, which is specified with p{<width>}, so for example
\begin{supertabular}{|c|p{10cm}|}