I tried to redefine the tabular that is used as default for tables in Lyx. The reason is, I want to have an option for 'auto line break in cells'. That you can do with tabularx with the argument 'X'. Example:
\usepackage{tabularx}
...
\begin{tabularx}{\linewidth}{ r X }
right-aligned foo & long long line of blah blah that will wrap when the table fills the column width\\
\end{tabularx}
The redefinition of tabular I use in Lyx looks like this:
\let\ORIGtabular\tabular
\let\ORIGendtabular\endtabular
\let\ORIGtabularx\tabularx
\renewcommand*{\tabularx}{%
\def\tabular{%
\let\endtabular\ORIGendtabular
\ORIGtabular
}%
\ORIGtabularx
}
\renewcommand{\tabular}{ \tabularx{\textwidth}}
\renewcommand{\endtabular}{\endtabularx}
As result I get the following tables (sample lyx file is attached at the end of the post):

Questions & Problems:
- Why are the tables 0.1 and 0.2 wider than it's content? How do I prevent this?
- How do I set 'X' argument for each cell as default?
tabularxworks out how wideXneeds to be then uses atabular*withXreplaced byp{2cm}or whatever, so you get lucky thattabular*doesn't calltabularwhich would make you loop. Also you are inserting an unwanted space here\renewcommand{\tabular}{ \– David Carlisle Mar 07 '14 at 13:19