2

I am using a custom counter to number some paragraphs, but I would like to print the counter as if it were part of an enumerate with hanging indent (as the package enumitemprovides). Unfortionately, I cannot use a list for this as it doesn't work with another package I need to use. I attached a screenshot of how enumitem typesets the numbering (with geometry's "showframe"-option). How can one make a custom counter typeset as if it were a list item with hanging indent (so that it also has the right indent when there a multiple digits)?

MWE using a list :

%!TEX program = lualatex
\documentclass[12pt,a4paper,twoside]{memoir}

\usepackage{parskip}

\usepackage{enumitem}

\usepackage[margin=2cm, showframe]{geometry}

\newcounter{myname}
\newcommand{\mycommand}{%
    \refstepcounter{myname}%
    \textbf{\themyname.\ }%
}

\begin{document}

    \begin{enumerate}[leftmargin=-\itemindent,ref={\arabic*}]

    \item lipsuLorem ipsum dolor sit amet, consectetur adipiscing elit. Donec quis feugiat massa. Fusce id est libero. Aliquam fringilla velit eget sollicitudin porta.

    \item Vivamus fringilla aliquam vestibulum. In hac habitasse platea dictumst. Etiam rhoncus convallis laoreet. Cras porta nisi a elit dignissim commodo.

    \item Phasellus massa urna, dictum molestie cursus vel, porttitor quis erat. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas.

    \item Donec non dapibus dolor. Ut maximus tincidunt ligula cursus tristique.

    Curabitur consectetur, ex ac tristique ultricies, neque dolor porta metus, sed dapibus purus lacus in lacus. Sed vel libero nulla. Donec non aliquet nibh.

    \item Curabitur laoreet libero lectus, nec finibus est pulvinar et. Phasellus vehicula, nulla eget molestie cursus, sapien nibh ornare mauris, molestie dapibus tellus magna in lectus. Mauris porta a elit id fringilla.

    \item Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Vestibulum varius eros augue, ullamcorper porta tortor aliquet at. Proin sodales commodo molestie. Pellentesque id leo eu magna sollicitudin aliquam nec et orci. Fusce sollicitudin, nulla non sollicitudin tincidunt, nulla lacus consequat quam, a tempor nisi ex ut erat. Maecenas venenatis tincidunt fermentum.

    \item Integer hendrerit felis ullamcorper, dapibus nisl in, lacinia purus. Etiam sollicitudin rutrum mattis.

    \item Fusce sed lacinia ipsum, ut tincidunt neque. Aliquam nunc magna, volutpat vitae velit in, volutpat accumsan odio. Fusce nec quam egestas, feugiat metus ac, vehicula diam.

    \item Curabitur facilisis varius magna, at lobortis eros luctus nec. Vestibulum turpis tellus, egestas vitae tincidunt nec, egestas eu dolor.

    \item Nulla sit amet metus eu mauris dapibus tristique. Duis pretium tempus gravida. Donec imperdiet pulvinar nibh, sit amet volutpat ipsum viverra a.

    Morbi imperdiet, purus euismod molestie dictum, orci lorem dictum justo, nec tincidunt velit purus fringilla sem. Nulla justo diam, porttitor sit amet purus in, dapibus pellentesque dui. Nunc hendrerit, erat ut lacinia viverra, tellus sapien tempus enim, id vulputate dui augue et mauris.

    \item Duis pellentesque dapibus turpis, in tempus lectus fringilla tincidunt. Aliquam erat volutpat. Duis a tempor erat, vel iaculis nunc.

    \item Morbi sollicitudin augue ut nunc blandit, vitae congue diam sagittis.

    \item Sed at dolor feugiat, blandit lorem quis, ullamcorper libero. Phasellus facilisis dolor ut accumsan dictum.

    \end{enumerate}

\end{document}

list as enumitem typesets it

I am using a custom counter to number some paragraphs, but I would like to print the counter as if it were part of an enumerate with hanging indent (as the package enumitemprovides). Unfortionately, I cannot use a list for this as it doesn't work with another package I need to use. I attached a screenshot of how enumitem typesets the numbering (with geometry's "showframe"-option). How can one make a custom counter typeset as if it were a list item with hanging indent (so that it also has the right indent when there a multiple digits)?

MWE using a list :

%!TEX program = lualatex
\documentclass[12pt,a4paper,twoside]{memoir}

\usepackage{parskip}

\usepackage{enumitem}

\usepackage[margin=2cm, showframe]{geometry}

\newcounter{myname}
\newcommand{\mycommand}{%
    \refstepcounter{myname}%
    \textbf{\themyname.\ }%
}

\begin{document}

    \begin{enumerate}[leftmargin=-\itemindent,ref={\arabic*}]

    \item lipsuLorem ipsum dolor sit amet, consectetur adipiscing elit. Donec quis feugiat massa. Fusce id est libero. Aliquam fringilla velit eget sollicitudin porta.

    \item Vivamus fringilla aliquam vestibulum. In hac habitasse platea dictumst. Etiam rhoncus convallis laoreet. Cras porta nisi a elit dignissim commodo.

    \item Phasellus massa urna, dictum molestie cursus vel, porttitor quis erat. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas.

    \item Donec non dapibus dolor. Ut maximus tincidunt ligula cursus tristique.

    Curabitur consectetur, ex ac tristique ultricies, neque dolor porta metus, sed dapibus purus lacus in lacus. Sed vel libero nulla. Donec non aliquet nibh.

    \item Curabitur laoreet libero lectus, nec finibus est pulvinar et. Phasellus vehicula, nulla eget molestie cursus, sapien nibh ornare mauris, molestie dapibus tellus magna in lectus. Mauris porta a elit id fringilla.

    \item Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Vestibulum varius eros augue, ullamcorper porta tortor aliquet at. Proin sodales commodo molestie. Pellentesque id leo eu magna sollicitudin aliquam nec et orci. Fusce sollicitudin, nulla non sollicitudin tincidunt, nulla lacus consequat quam, a tempor nisi ex ut erat. Maecenas venenatis tincidunt fermentum.

    \item Integer hendrerit felis ullamcorper, dapibus nisl in, lacinia purus. Etiam sollicitudin rutrum mattis.

    \item Fusce sed lacinia ipsum, ut tincidunt neque. Aliquam nunc magna, volutpat vitae velit in, volutpat accumsan odio. Fusce nec quam egestas, feugiat metus ac, vehicula diam.

    \item Curabitur facilisis varius magna, at lobortis eros luctus nec. Vestibulum turpis tellus, egestas vitae tincidunt nec, egestas eu dolor.

    \item Nulla sit amet metus eu mauris dapibus tristique. Duis pretium tempus gravida. Donec imperdiet pulvinar nibh, sit amet volutpat ipsum viverra a.

    Morbi imperdiet, purus euismod molestie dictum, orci lorem dictum justo, nec tincidunt velit purus fringilla sem. Nulla justo diam, porttitor sit amet purus in, dapibus pellentesque dui. Nunc hendrerit, erat ut lacinia viverra, tellus sapien tempus enim, id vulputate dui augue et mauris.

    \item Duis pellentesque dapibus turpis, in tempus lectus fringilla tincidunt. Aliquam erat volutpat. Duis a tempor erat, vel iaculis nunc.

    \item Morbi sollicitudin augue ut nunc blandit, vitae congue diam sagittis.

    \item Sed at dolor feugiat, blandit lorem quis, ullamcorper libero. Phasellus facilisis dolor ut accumsan dictum.

    \end{enumerate}

\end{document}

list as enumitem typesets it

EDIT: the other package is wrapfig. There is a solution on that problem at Will it ever be possible to use wrapfig with an enumerate or itemize environment?, but I didn't manage to get it to work. It seemed also more clean to use a counter in stead of a list (as it spans my entire document) and it would make it more clear of I make a mistake later in the document (I use another list in my footnotes but sometimes the different lists get intermingled due to an error).

The problem with wrapfig is that it puts the image on the absolute end of the document in stead of where it should be, even it I pause the running list and resume it after the declaration of the wrapfigure (enumitem: \end{enumerate} and \begin{enumerate}[resume*=[name of the list]]

EDIT 2: as asked, a MWE showing the problem with wrapfig and lists:

%!TEX program = lualatex
\documentclass[12pt,a4paper,twoside]{memoir}

\usepackage{parskip}

\usepackage{enumitem}

\usepackage[margin=2cm, showframe]{geometry}

\newcounter{mycounter}
\newcommand{\mycommand}{%
    \refstepcounter{mycounter}%
    \noindent \textbf{\themycounter.\ }%
}

\usepackage{wrapfig}
\usepackage{graphicx}

\begin{document}

    \begin{enumerate}[leftmargin=-\itemindent,ref={\arabic*},series=numbers]

    \item lipsuLorem ipsum dolor sit amet, consectetur adipiscing elit. Donec quis feugiat massa. Fusce id est libero. Aliquam fringilla velit eget sollicitudin porta.

    \item Vivamus fringilla aliquam vestibulum. In hac habitasse platea dictumst. Etiam rhoncus convallis laoreet. Cras porta nisi a elit dignissim commodo.

    \item Phasellus massa urna, dictum molestie cursus vel, porttitor quis erat. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas.

    \item Donec non dapibus dolor. Ut maximus tincidunt ligula cursus tristique.

    Curabitur consectetur, ex ac tristique ultricies, neque dolor porta metus, sed dapibus purus lacus in lacus. Sed vel libero nulla. Donec non aliquet nibh.

    \item Curabitur laoreet libero lectus, nec finibus est pulvinar et. Phasellus vehicula, nulla eget molestie cursus, sapien nibh ornare mauris, molestie dapibus tellus magna in lectus. Mauris porta a elit id fringilla.

\end{enumerate}

    \begin{wrapfigure}{R}{0.3\textwidth}

        \begin{center}
            \includegraphics[width=5cm]{lion.png}
            % source: http://www.ctan.org/lion/ctan_lion_350x350.png
        \end{center}

        \caption{Caption}

    \end{wrapfigure}

\begin{enumerate}[resume*=numbers]

    \item Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Vestibulum varius eros augue, ullamcorper porta tortor aliquet at. Proin sodales commodo molestie. Pellentesque id leo eu magna sollicitudin aliquam nec et orci. Fusce sollicitudin, nulla non sollicitudin tincidunt, nulla lacus consequat quam, a tempor nisi ex ut erat. Maecenas venenatis tincidunt fermentum.

    \item Integer hendrerit felis ullamcorper, dapibus nisl in, lacinia purus. Etiam sollicitudin rutrum mattis.

    \item Fusce sed lacinia ipsum, ut tincidunt neque. Aliquam nunc magna, volutpat vitae velit in, volutpat accumsan odio. Fusce nec quam egestas, feugiat metus ac, vehicula diam.

    \item Curabitur facilisis varius magna, at lobortis eros luctus nec. Vestibulum turpis tellus, egestas vitae tincidunt nec, egestas eu dolor.

    \item Nulla sit amet metus eu mauris dapibus tristique. Duis pretium tempus gravida. Donec imperdiet pulvinar nibh, sit amet volutpat ipsum viverra a.

    Morbi imperdiet, purus euismod molestie dictum, orci lorem dictum justo, nec tincidunt velit purus fringilla sem. Nulla justo diam, porttitor sit amet purus in, dapibus pellentesque dui. Nunc hendrerit, erat ut lacinia viverra, tellus sapien tempus enim, id vulputate dui augue et mauris.

    \end{enumerate}

\end{document}
  • 3
    Instead of this example, could you show an example of how enumitem interacts badly with the other package? Maybe we could solve that problem. – Alan Munn Mar 25 '18 at 19:33
  • I've added more details on the output – Andrew Mar 25 '18 at 20:38
  • Ok, that tells us the package. Can you produce a minimal document that shows the issue? – Alan Munn Mar 25 '18 at 20:38
  • added a MWE showing the problem with wrapfig and lists. it seems wrapfig interacts badly with any list. – Andrew Mar 25 '18 at 20:49
  • You can circumvent the wrapfig package, replacing it in lists with the insbox plain TeX macro package. Furthermore, remember that can end a list environment, the resume it later with the resume key defined by enumitem. – Bernard Mar 25 '18 at 20:49
4

Here a way with insbox:

\documentclass[12pt,a4paper,twoside]{memoir}

\usepackage{parskip}

\usepackage{enumitem}

\usepackage[margin=2cm, showframe]{geometry}

\newcounter{mycounter}
\newcommand{\mycommand}{%
    \refstepcounter{mycounter}%
    \noindent \textbf{\themycounter.\ }%
}

\usepackage{wrapfig}
\usepackage{insbox, caption, adjustbox}
\usepackage{graphicx}

\begin{document}

    \begin{enumerate}[leftmargin=-\itemindent,ref={\arabic*},series=numbers]

    \item lipsuLorem ipsum dolor sit amet, consectetur adipiscing elit. Donec quis feugiat massa. Fusce id est libero. Aliquam fringilla velit eget sollicitudin porta.

    \item Vivamus fringilla aliquam vestibulum. In hac habitasse platea dictumst. Etiam rhoncus convallis laoreet. Cras porta nisi a elit dignissim commodo.

    \item Phasellus massa urna, dictum molestie cursus vel, porttitor quis erat. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas.

    \item Donec non dapibus dolor. Ut maximus tincidunt ligula cursus tristique.

    Curabitur consectetur, ex ac tristique ultricies, neque dolor porta metus, sed dapibus purus lacus in lacus. Sed vel libero nulla. Donec non aliquet nibh.

    \item Curabitur laoreet libero lectus, nec finibus est pulvinar et. Phasellus vehicula, nulla eget molestie cursus, sapien nibh ornare mauris, molestie dapibus tellus magna in lectus. Mauris porta a elit id fringilla.

\end{enumerate}

            \InsertBoxR{0}{\parbox{5cm}{\includegraphics[ width=5cm]{ctan_lion}
            \captionof{figure}{Caption}}}

\begin{enumerate}[resume*=numbers, rightmargin = 6cm,before = \vspace*{-\dimexpr\baselineskip}]

    \item Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Vestibulum varius eros augue, ullamcorper porta tortor aliquet at. Proin sodales commodo molestie. Pellentesque id leo eu magna sollicitudin aliquam nec et orci. Fusce sollicitudin, nulla non sollicitudin tincidunt, nulla lacus consequat quam, a tempor nisi ex ut erat. Maecenas venenatis tincidunt fermentum.

    \item Integer hendrerit felis ullamcorper, dapibus nisl in, lacinia purus. Etiam sollicitudin rutrum mattis.
    \item Fusce sed lacinia ipsum, ut tincidunt neque. Aliquam nunc magna, volutpat vitae velit in, volutpat accumsan odio. Fusce nec quam egestas, feugiat metus ac, vehicula diam.
    \end{enumerate}


\begin{enumerate}[resume*=numbers]

    \item Curabitur facilisis varius magna, at lobortis eros luctus nec. Vestibulum turpis tellus, egestas vitae tincidunt nec, egestas eu dolor.

    \item Nulla sit amet metus eu mauris dapibus tristique. Duis pretium tempus gravida. Donec imperdiet pulvinar nibh, sit amet volutpat ipsum viverra a.

    Morbi imperdiet, purus euismod molestie dictum, orci lorem dictum justo, nec tincidunt velit purus fringilla sem. Nulla justo diam, porttitor sit amet purus in, dapibus pellentesque dui. Nunc hendrerit, erat ut lacinia viverra, tellus sapien tempus enim, id vulputate dui augue et mauris.

    \end{enumerate}

\end{document} 

enter image description here

0

enter image description here

\documentclass[12pt,a4paper,twoside]{memoir}

\usepackage{parskip,xparse}
\usepackage[margin=2cm, showframe]{geometry}

\newcounter{myname}

\NewDocumentEnvironment{MyList}{O{0}}{%
    \setcounter{myname}{#1}
    \begin{list}
        % défini la forme de l'étiquette
        {\stepcounter{myname}\makebox[1.5em][r]{\textbf{\themyname.}}}
        % défini les longueurs
        {\setlength{\labelwidth}{0pt}
         \setlength{\leftmargin}{0pt}
         \setlength{\itemindent}{-1.5em}
         }%
    }
    {\end{list}}

\begin{document}

    \begin{MyList}

    \item lipsuLorem ipsum dolor sit amet, consectetur adipiscing elit. Donec quis feugiat massa. Fusce id est libero. Aliquam fringilla velit eget sollicitudin porta.

    \item Vivamus fringilla aliquam vestibulum. In hac habitasse platea dictumst. Etiam rhoncus convallis laoreet. Cras porta nisi a elit dignissim commodo.

    \item Phasellus massa urna, dictum molestie cursus vel, porttitor quis erat. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas.

    \item Donec non dapibus dolor. Ut maximus tincidunt ligula cursus tristique.

    Curabitur consectetur, ex ac tristique ultricies, neque dolor porta metus, sed dapibus purus lacus in lacus. Sed vel libero nulla. Donec non aliquet nibh.

    \item Curabitur laoreet libero lectus, nec finibus est pulvinar et. Phasellus vehicula, nulla eget molestie cursus, sapien nibh ornare mauris, molestie dapibus tellus magna in lectus. Mauris porta a elit id fringilla.

    \item Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Vestibulum varius eros augue, ullamcorper porta tortor aliquet at. Proin sodales commodo molestie. Pellentesque id leo eu magna sollicitudin aliquam nec et orci. Fusce sollicitudin, nulla non sollicitudin tincidunt, nulla lacus consequat quam, a tempor nisi ex ut erat. Maecenas venenatis tincidunt fermentum.

    \item Integer hendrerit felis ullamcorper, dapibus nisl in, lacinia purus. Etiam sollicitudin rutrum mattis.

    \item Fusce sed lacinia ipsum, ut tincidunt neque. Aliquam nunc magna, volutpat vitae velit in, volutpat accumsan odio. Fusce nec quam egestas, feugiat metus ac, vehicula diam.

    \item Curabitur facilisis varius magna, at lobortis eros luctus nec. Vestibulum turpis tellus, egestas vitae tincidunt nec, egestas eu dolor.

    \item Nulla sit amet metus eu mauris dapibus tristique. Duis pretium tempus gravida. Donec imperdiet pulvinar nibh, sit amet volutpat ipsum viverra a.

    Morbi imperdiet, purus euismod molestie dictum, orci lorem dictum justo, nec tincidunt velit purus fringilla sem. Nulla justo diam, porttitor sit amet purus in, dapibus pellentesque dui. Nunc hendrerit, erat ut lacinia viverra, tellus sapien tempus enim, id vulputate dui augue et mauris.

    \item Duis pellentesque dapibus turpis, in tempus lectus fringilla tincidunt. Aliquam erat volutpat. Duis a tempor erat, vel iaculis nunc.

    \item Morbi sollicitudin augue ut nunc blandit, vitae congue diam sagittis.

    \item Sed at dolor feugiat, blandit lorem quis, ullamcorper libero. Phasellus facilisis dolor ut accumsan dictum.

    \end{MyList}

\end{document}
  • Thank you! It it possible to typeset the numbers in the margin? So that "lorem ipsum…" is not indented and that the number, the point and some whitespace is typesetted in the margin? – Andrew Mar 25 '18 at 19:59
  • Change the width as you want to custom the environment. I have no computer now to do it. – Tarass Mar 25 '18 at 20:09
  • Found it, thanks! However, it seems the other package doesn't work with any list… – Andrew Mar 25 '18 at 20:11
  • I maybe not understood what you want at the first time. Is it better ? – Tarass Mar 26 '18 at 5:53
  • The problem is that wrapfig doesn't work with any list, even if the list is paused – Andrew Mar 27 '18 at 14:07

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.