Take the 2-minute tour ×
TeX - LaTeX Stack Exchange is a question and answer site for users of TeX, LaTeX, ConTeXt, and related typesetting systems. It's 100% free, no registration required.

So I'm writing up a CV and I would like to use the nifty itemize environment to list some things within a tabular environment. Unfortunately, things end up looking a bit this, which isn't at all what I want. Specifically, I want to the itemize environment to hug closely to "BIG COMPANY NAME" so that it appears as "Software Development Intern" does, and likewise at the bottom. My current code looks a bit like so:

\textsc{May 2010 to Aug 2010}
    & Software Development Intern  \\
    & \textsc{BIG COMPANY NAME} \\
    & \begin{itemize}
        \setlength{\itemsep}{0pt}
        \setlength{\parskip}{0pt}
        \setlength{\parsep}{0pt}
        \setlength{\partopsep}{0pt}
        \setlength{\topsep}{0pt}
        \item item1
        \item item2
    \end{itemize} \\
    & \small{Cool Details}\\

Buuut it's not doing the job at all. Any suggestions, Latex gurus?

share|improve this question
add comment

5 Answers 5

You can use \novspace to get rid of the space at the top, nolistsep from enumitem for the spaces in the list, the internal \parbox for the space at the bottom and the \strut to give the \parbox the correct depth.

\documentclass[]{book}
\usepackage{enumitem}
\makeatletter
\newcommand\novspace{\@minipagetrue}
\makeatother

\begin{document}
\begin{tabular}{lp{5cm}}
 \textsc{May 2010 to Aug 2010}
    & Software Development Intern  \\
    & \textsc{BIG COMPANY NAME} \\
    &\parbox[t]{5cm}{\novspace
      \begin{itemize}[nolistsep]
        \item item1
        \item item2\strut
      \end{itemize}}\\
    & \small Cool Details
\end{tabular}
\end{document}
share|improve this answer
add comment

You can use the package paralist which defines among others the compactitem environment (which is a compact itemize). It also redefines itemize that way, but there are options to leave it, like olditem.
In your case I would just load

\usepackage[olditem,oldenum]{paralist}

and use \begin{compactitem} ... \end{compactitem} inside tables.

share|improve this answer
add comment

I have several suggestions. I would suggest using one of the numerous cv/resumé packages. My own cv uses currvita. The next suggestion would be to use the enumitem package for changing the spacing of your lists. Finally, you don't have a table of data so tabular is probably the wrong thing to use.

share|improve this answer
    
What would you recommend in its place? I suppose what I'm really looking for is a list of items with a left and right side -- perhaps a list of 2-column 1-row tables? –  duckworthd Aug 27 '10 at 11:34
1  
I would recommend the currvita package. Or you can take a look at this question which is about writing a CV in LaTeX. –  TH. Aug 27 '10 at 12:04
add comment

Including an itemized list within a tabular column using the paralist package is a good solution to the vertical space issue at the top. However, the space at the bottom is not solved by this, which, I guess, is why the @Ulricke Fischer uses the parbox also.

Note the paralist doesn't solve the problem, in that the space is added to the top and bottom when in a tabular environment.

So this is the solution I eventually went with.

\usepackage{array}
\makeatletter
\newcolumntype{P}[1]{>{\@minipagetrue}p{#1}}
\makeatother

Gets rid of the initial vertical space (of course you have to change the tabular argument from p to P.

Then include a negative vspace after the final item:

\begin{tabular}{r|P{13cm}
& \begin{compactitem}
\item blah
\item final item\vspace*{-\baselineskip}
\end{compactitem}

It's a bit manual, but it does at least work relatively easily.

share|improve this answer
add comment

I was also looking how to get rid mostly of the extra space before and after (!) a list of \begin{list} ... \end{list} in a tabular environment.

I now found a somewhat very easy way to solve the latter problem:

\begin{tabular}
\multicolumn{2}{l}
    & \vspace{-0.3cm}\begin{list}{-} 
      % \vspace to align the '-' with the title line
{\setlength{\topsep}{1pt}\setlength{\partopsep}{0pt}\setlength{\itemsep}{1pt}\setlength{\parsep}{0pt}\leftmargin=10pt} 
     % I wanted small extra-spaces inbetween the items (\itemsep) and just on top (\topsep)for better readibility
        \item item1
        \item item2
    \end{list} \\[-0.4cm] 
% This is what really helps me to have a coherent table without extra-spacings!
    & \small{Cool Details}\\
\end{tabular}

So, [-0.xcm] (adjust x to what suits you best) squeezes the extra-space after the list generated by the list environment. I hope this also helps other people.

share|improve this answer
    
Welcome to TeX.SX. If you highlight text and click the button marked {} it will be marked as code, as you see from my edit. –  Torbjørn T. Dec 17 '13 at 21:34
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.