AFAIU (reading ltlists.dtx), lists (itemize, enumerate) in LaTeX rely on \parshape. Is there an other way to get the same result without \parshape.

Motivation: wrapfigure and list environments badly interact together because both use \parshape AFAIU, so I'm looking for a replacement. I could use two minipages but I'd like to know if something else is possible.

  • 2
    To a certain extent you can emulate them with \leftskip
    – egreg
    Nov 22 '13 at 15:05
  • 2
    I can't show you a 'released code' approach, but with the mechanisms in l3galley it's possible to decouple paragraph shape from lists (or other 'running' shapings) in a natural way. That's done not by using a different TeX primitive (not available!) but instead by building data structures which abstract the different concepts.
    – Joseph Wright
    Jan 11 '14 at 18:53
  • @JosephWright You mean I won't use wrapfig with those mechanisms?
    – cjorssen
    Jan 11 '14 at 22:25
  • 7
    @JosephWright: Is there released code now that can be used? Sep 14 '18 at 22:25

Package enumitem has a diagram (must-see) in its documentation that shows all the margins defined for list environments, and allows you to redefine any of them. One of the most basic ways to redefine is


% \setlist[enumerate]{left= <labelindent> .. <leftmargin>]
%%% OR to set locally: %%%
% \begin{enumerate}[left= <labelindent> .. <leftmargin>]
% ...
% \end{enumerate}

%so for example
\setlist[enumerate]{left=\quad .. 2em]
  • 1
    Welcome to TeX.SE! Please -- as usual here -- make your code snippet compilable for a fast proof and can you add an screenshot of your result to your answer?
    – Mensch
    Jul 22 '19 at 14:07
  • 2
    enumitem relies on \parshape, too. Jul 22 '19 at 14:47

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.