6

I have some nested lists that I'm trying to format. I would like to remove the bullet and the leading space from the outer list while leaving the inner list unmodified.

Here is some sample code:

\documentclass[10pt]{article}
\usepackage{enumitem}

\begin{document}

\section{Section Title}
\subsection{Subsection Titlte}

\begin{itemize}[label={$\bullet$}, topsep=0pt, itemsep=0pt]
    %
    \item List item with bullet that I want gone
        \begin{itemize}[label={$\bullet$}, topsep=0pt, itemsep=0pt]
            \item Inner list item (I want to keep these bullets)
            \item Inner list item (I want to keep these bullets)
        \end{itemize}
    %
    \item List item with bullet that I want gone
        \begin{itemize}[label={$\bullet$}, topsep=0pt, itemsep=0pt]
            \item Inner list item (I want to keep these bullets)
            \item Inner list item (I want to keep these bullets)
        \end{itemize}
    %
\end{itemize}
\end{document}

Below is an image that shows the output of the above code in the top half. The bottom half of the image shows what I would like my output to look like. I've added the red and blue vertical lines to help illustrate the desired spacing. Note that the desired output removes both the bullet point and the leading space from the outer list. It aligns the text of the outer list with the left side of the deleted bullet point. The inner list remains completely unchanged.

I have attempted to use enumitem to set values for leftmargin, labelindent, and labelsep. However, I can't figure out how to achieve the desired output. Any tips would be greatly appreciated.

Top is what I have, bottom is what I want

  • Welcome to TeX.SX! Why do you introduce \bullet for the outer list? – TeXnician May 13 '18 at 8:11
  • @TeXnician, I forgot to mention that in my original post. I only added bullet to the outer list for illustrative purposes. I know that I can easily remove the bullet by removing the $\bullet$ from the curly braces on the outer list. However, simply removing the $\bullet$ from the outer list doesn't affect the spacing. That's where I'm really stuck. – James May 13 '18 at 17:08
8

Here is a solution:

\documentclass[10pt]{article}
\usepackage{enumitem}
\newlist{balditemize}{itemize}{1}
\setlist[balditemize]{label=, wide=\parindent, labelsep*=0pt, leftmargin=*, topsep=0pt, itemsep=0pt}
\usepackage[showframe]{geometry}

\begin{document}

\section{Section Title}
\subsection{Subsection Title}

\begin{itemize}[label={$\bullet$}, topsep=0pt, itemsep=0pt]
    %
    \item List item with bullet that I want gone
        \begin{itemize}[label={$\bullet$}, topsep=0pt, itemsep=0pt]
            \item Inner list item (I want to keep these bullets)
            \item Inner list item (I want to keep these bullets)
        \end{itemize}
    %
    \item List item with bullet that I want gone
        \begin{itemize}[label={$\bullet$}, topsep=0pt, itemsep=0pt]
            \item Inner list item (I want to keep these bullets)
            \item Inner list item (I want to keep these bullets)
        \end{itemize}
    %
\end{itemize}

\section{Section Title}
\subsection{Subsection Title}

\begin{balditemize}
   \setlist[itemize, 1]{wide=\dimexpr\leftmargini-\fontdimen2\font, leftmargin=*, labelsep =5pt, topsep=0pt, itemsep=0pt}%
    \item List item with bullet that I want gone List item with bullet that I want gone List item with bullet that I want gone List item with bullet that I want gone
        \begin{itemize}
            \item Inner list item (I want to keep these bullets) Inner list item (I want to keep these bullets) Inner list item (I want to keep these bullets) Inner list item (I want to keep these bullets)
            \item Inner list item (I want to keep these bullets)
        \end{itemize}

    \item List item with bullet that I want gone
        \begin{itemize}
            \item Inner list item (I want to keep these bullets)
            \item Inner list item (I want to keep these bullets)
        \end{itemize}
    %
\end{balditemize}

\end{document} 

enter image description here

  • You have some code messed up in there, with the image and stuff. – Andreas Storvik Strauman May 13 '18 at 9:43
  • Oh! yes. Some problem with my clipboard manager while editing. Thanks for pointing it! – Bernard May 13 '18 at 9:48
  • Ahh, setlist with a level of 1, that's the magic I was looking for. Anytime I attempted to alter the spacing on the outer list I also affected the spacing on the inner list. After reading the documentation on setlist it appears to be just what I need. – James May 13 '18 at 18:59
  • I have a question about the 22pt value that you selected for wide. Where did you get this number from? I was trying to avoid magic numbers so that the outer list without the bullet would align with other lists in my document. – James May 13 '18 at 19:01
  • By trial and error. I first tried with intrinsic lengths (such as \labelselsep or \labelwidth), but there remained a small difference, probably in relation with the bullet width, so I ended up in adjusting the value of wide=. – Bernard May 13 '18 at 19:09
3

You might want a more automatic approach, but here is an ad-hoc solution:

You could use \item[] combined with leftmargin. By inspecting the values, the default leftmargin seem to be 25pt, and the width of the \bullet seem to be 5pt and the spacing between the bullet and the text also 5pt. Thus the new leftmargin should be 25pt - 10pt=15pt. Also we have to add 5pt to the "inner" left margin (5pt+25pt=30pt) to make up for the distance removed between the bullet and the item: and it actually works as expected:

\documentclass[10pt]{article}
\usepackage{enumitem}
\begin{document}

\section{Section Title}
\subsection{Subsection Title}
\begin{itemize}[label={$\bullet$}, topsep=0pt, itemsep=0pt]
    %
    \item List item with bullet that I want gone (below)
        \begin{itemize}[label={$\bullet$}, topsep=0pt, itemsep=0pt]
            \item Inner list item (I want to keep these bullets)
            \item Inner list item (I want to keep these bullets)
        \end{itemize}
    %
    \item List item with bullet that I want gone (below)
        \begin{itemize}[label={$\bullet$}, topsep=0pt, itemsep=0pt]
            \item Inner list item (I want to keep these bullets)
            \item Inner list item (I want to keep these bullets)
        \end{itemize}
    %
\end{itemize}

\begin{itemize}[label={$\bullet$}, topsep=0pt, itemsep=0pt, leftmargin=15pt]
    %
    \item[] List item with bullet that I want gone
        \begin{itemize}[label={$\bullet$}, topsep=0pt, itemsep=0pt, leftmargin=30pt]
            \item Inner list item (I want to keep these bullets)
            \item Inner list item (I want to keep these bullets)
        \end{itemize}
    %
    \item[] List item with bullet that I want gone
        \begin{itemize}[label={$\bullet$}, topsep=0pt, itemsep=0pt, leftmargin=30pt]
            \item Inner list item (I want to keep these bullets)
            \item Inner list item (I want to keep these bullets)
        \end{itemize}
    %
\end{itemize}
\end{document}

Output

enter image description here

  • Where did you find the default values for leftmargin, and bullet? I wasn't sure where to find this information. – James May 13 '18 at 19:06
  • Inside the item environment, I just did \the\leftmargin. Furthermore I used this answer to get the width of the bullet point :) – Andreas Storvik Strauman May 13 '18 at 19:08
  • If I use a different character for the bullet point, will that width change? For example, if I use label={}on the outer list will that 5pt decrease? If so, is there a way to automatically determine the width of the bullet character? – James May 13 '18 at 19:11

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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