[Tex/LaTex] easylist and \usepackage[utf8]{inputenc}

easylistinput-encodings

With the following MWE:

\documentclass{article}
% \usepackage[utf8]{inputenc}
\usepackage{easylist}

\begin{document}
\begin{easylist}[enumerate]
  § A first item
      §§ A sub item
      §§ another subitem    
\end{easylist}
\end{document}

We get the desired output:

enter image description here

But if the line \usepackage[utf8]{inputenc} is uncommented, we'd then get:

enter image description here

While this can be fixed by either (a) using XeLaTeX, or (b) \usepackage[at]{easylist} and @ instead of §, is there a way to make § markers work with \usepackage[utf8]{inputenc} in pdfLaTeX?

Best Answer

You can use the following hack that changes the unicode character § to be an easylist item inside the easylist environment:

\documentclass{article}

\usepackage[utf8]{inputenc}
\usepackage{easylist}

\DeclareUnicodeCharacter{00A7}{\easylistitemornot}
\let\easylistitemornot\S

\def\easylist{%
  \def\easylistitemornot{\futurelet\elNextToken\elCreateItem}%
  \begingroup\elPredefinedStyle}%
\def\endeasylist{\endgroup\par}
\def\Activate{%
  \def\easylistitemornot{\futurelet\elNextToken\elCreateItem}%
}
\def\Deactivate{%
  \let\easylistitemornot\S
}

\begin{document}
\begin{easylist}[enumerate]
  § A first item
      §§ A sub item
      §§ another subitem    
\end{easylist}

Here we have a real §.
\end{document}

Nevertheless I would recommend to use, e.g., option at to change the item marker:

\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage[at]{easylist}

\begin{document}
\begin{easylist}[enumerate]
  @ A first item
      @@ A sub item
      @@ another subitem    
\end{easylist}
\end{document}