[Tex/LaTex] Create two column with vertical line in a presentation

beamerlistings

I'm doing a beamer presentation in LaTeX, and I want know if it's possible make something like this:

enter image description here

Best Answer

A combination of tabularx and listings would suffice:

enter image description here

\documentclass{beamer}% http://ctan.org/pkg/beamer
\usepackage{tabularx,listings}% http://ctan.org/pkg/{tabularx,listings}
\lstset{
  language=C++,
  basicstyle=\small\ttfamily
}
\newsavebox{\codebox}% Used to store listings/code
\begin{document}
\begin{lrbox}{\codebox}
\begin{lstlisting}
public class <Name> {
  ....
  ...
  ..
  .
  ..
  ...
  ....
}
\end{lstlisting}
\end{lrbox}
\begin{frame}
  \begin{tabularx}{\linewidth}{X|X}
  \usebox{\codebox}
  &
  \usebox{\codebox}
  \end{tabularx}
\end{frame}
\end{document}

The fragile nature of beamer's frame environment can be avoided by storing the content in a box (\codebox) and use it later. Or, you could explicitly use the fragile option for each frame. See How to put C++ source code into beamer slides. For a flavour in terms of keyword colouring, see How to format C program code block nicely.

See the listings documentation for more information on possible settings.