6

I'm stuck on a problem for hours. I'm using the tabularx environment to create a double-column table where the second column takes up several lines. An example of that table is shown here.

Since such a table could not fit in a single page on my document, I've been looking for a way to break it in more pages. Unfortunately, neither the longtable nor the supertabular package can split the table within a row. Could you please help me find a solution?

In particular, if I can't get this result with a table is there a way to obtain it with some working alternative (I've already found the parcolumns and the glossary packages but I would like something that allows me to draw al least a vertical line to separate the two columns.

3
  • 2
    I would suggest to set this document not as a table but in a list-like environment where page breaks can happen at any place. If you need to match the look exactly this could be achieved with a custom list environment but it would require some expertise to set it up. To further the discussion, please provide a minimal working example. Dec 26, 2012 at 18:04
  • Welcome to TeX.SE! To further Christian's excellent comment, see MWE for details on creating a MWE :)
    – cmhughes
    Dec 26, 2012 at 18:26
  • Welcome to TeX.sx! Usually, we don't put a greeting or a "thank you" in our posts. While this might seem strange at first, it is not a sign of lack of politeness, but rather part of our trying to keep everything very concise. Upvoting is the preferred way here to say "thank you" to users who helped you. Dec 26, 2012 at 23:20

1 Answer 1

5

Here's an attempt that comes close to what you want using the mdframed package. Because mdframed conceives of its frames as single units, I don't know if it's possible to vary the thickness of just the top and bottom lines. Also, since I've used (or abused) the frame title by putting it outside the frame, there's no simple way to get lines to separate the headings. From the sample document you gave it looks like the format is pretty fixed, so I wrapped each part in either a command or an environment.

\documentclass{article}
\usepackage{mdframed}
\usepackage{kantlipsum}
\mdfsetup{frametitlealignment=\hspace{-1in},topline=true, bottomline=false,rightline=false,frametitlebelowskip=-\baselineskip}
\newcommand{\ID}[1]{%
\begin{mdframed}[frametitle={ID}]
\texttt{#1}
\end{mdframed}}
\newcommand{\Name}[1]{%
\begin{mdframed}[frametitle={Name},topline=false]
#1
\end{mdframed}}
\newcommand{\Priority}[1]{%
\begin{mdframed}[frametitle={Priority},topline=false]
#1
\end{mdframed}}
\newenvironment{Description}{%
\begin{mdframed}[frametitle={Description}]}
{\end{mdframed}}
\newenvironment{Comments}{%
\begin{mdframed}[frametitle={Comments}]}
{\end{mdframed}}
\begin{document}
\subsubsection{A command name}
\ID{F\_Req\_01\_03}
\Name{Password Recovery}
\Priority{Must Have}
\begin{Description}
\kant[1]
\end{Description}
\begin{Comments}
\kant[2-4]
\end{Comments}
\end{document}

detail output of code

3
  • Thank you Alan, this result is as close as I expected. I'm not so used to LaTeX yet, so customizing things isn't within my reach!
    – Driu
    Dec 27, 2012 at 10:25
  • Sorry @Alan, but I ran into a problem and I can't it figure out. I'm using ScribTeX to produce my document but it compiles your code with some errors. This is what your code looks like. It seems it don't recognize the mdfsetup macro because I got an undefined control sequence for this command. I cannot find any working solution elsewhere. I also checked that ScribTeX uses the full TeXLive environment (so mdframed loads perfectly). Hope you can help me!
    – Driu
    Dec 27, 2012 at 12:48
  • 1
    I'm sorry I don't have any experience with ScribTeX. If you put \listfiles as the first line of your document you can see from the log the versions of the packages you used. My version of mdframed is 1.6d. If the \mdfsetup command doesn't work, then it seems that ScribTeX has an older version.
    – Alan Munn
    Dec 27, 2012 at 13:30

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .