# Package trackchanges: problem with UTF8

the package trackchanges doesn't seem to work with utf8 encoding. Did somebody encounter the same problem? Does anybody have a solution ?

Minimal example :

\documentclass[12pt]{article}
\usepackage[utf8]{inputenc}
\usepackage{trackchanges}
\begin{document}
text \remove{öäü}
\end{document}


The compilation error :

 ! Argument of \UTFviii@two@octets has an extra }.
<inserted text>
\par
l.6 text \remove{öäü}
I've run across a }' that doesn't seem to match anything.


Wit oau instead of öäü, it works of course.

It seems that loading the package soulutf8 before trackchanges solves the problem

\documentclass[12pt]{article}
\usepackage[utf8]{inputenc}
\usepackage{soulutf8}
\usepackage{trackchanges}
\begin{document}
text \remove{öäü}
\end{document}


This seems to be an issue of the internally used soul package (Strike-Out, UnderLine) used for highlighting of the changes. It reads the content stepwise and splits the Unicode characters in two. You might find help in the soul manual.

As a workaround I would redefine the used highlighting macros, e.g. \stcolor for the given example. Here I use a simple \textcolor (from the already loaded xcolor package) instead of the soul code.

\documentclass[12pt]{article}
\usepackage[utf8]{inputenc}
\usepackage{trackchanges}
\renewcommand{\stcolor}[2]{\textcolor{#1}{#2}}
\begin{document}
text \remove{öäü}
\end{document}


This works for me.

• Fine ! it seems to be a good workaround. Thanks a lot. – nicolas roy Dec 22 '11 at 22:10

It's a very late answer: The package soul has problems with Umlauts. Use the package ulem and its function uline instead of ul from soul` and it should work.