I would like a tabular environment with fully justified columns. I my best guess of how to make this happen is to use a tabularx environment (so the tabular knows how wide to be) and then put \hilll (for some appropriate repetition of the letter l) between all adjacent columns. However, that didn't work. See the MWE below.
\documentclass{article}
\usepackage{tabularx}
\begin{document}
Text before. Text before. Text before. Text before. Text before. Text before. Text before.
\begin{tabularx}{\textwidth}{l@{\hfill}c@{\hfill}r}
On the LEFT & In the middle & On the RIGHT
\end{tabularx}
Text between. Text between. Text between. Text between. Text between. Text between. Text between.
\def\magicNumber{50pt}
\begin{tabularx}{\textwidth}{lcr}
On the LEFT & \hspace{\magicNumber} In the middle \hspace{\magicNumber} & On the RIGHT
\end{tabularx}
Text after. Text after. Text after. Text after. Text after. Text after. Text after. Text after.
\end{document}

The first tabularx environment is my failed attempt. The second tabularx environment is typeset (approximately) correct but is a hack using magic numbers.
Question:
How can one properly use infinite glues (like \hfill) to specify the space between tabularx columns? More generally, how can one obtain a tabular environment with fully justified columns?


Xcolumn oftabularx? – Johannes_B Oct 01 '14 at 19:09Xcolumn is syntactic sugar forp{<some value>}, which specifies how wide the column in question should be. I want to modify the space between columns. – Tyson Williams Oct 01 '14 at 19:18\tabcolsepis the length that indicates buffer space around column data. – Steven B. Segletes Oct 01 '14 at 19:58