# Highlighting words with special characters using \hl (soul)

I am using xelatex, polyglossia and the document is in UTF-8 encoding. I use the soul package to highlight words (using soulutf8 makes no difference).

The problem is really weird, so I will go directly to the minimal (non)working example.

% !TeX encoding = UTF-8
% !TeX spellcheck = sl_SI
% !TeX program = xelatex
\documentclass[a4paper]{book}
\usepackage{polyglossia}
\setdefaultlanguage{slovenian}
\usepackage{xcolor,soulutf8}
\usepackage[parfill]{parskip}

\begin{document}

\mainmatter

% 'č'
Močan: ''\hl{Močan}'' \\
Moč: ''\hl{Moč}'' \\
č: ''\hl{č}'' \\

% 'š'
Pošta: ''\hl{Pošta}'' \\
Tuš: ''\hl{Tuš}'' \\
š: ''\hl{š}'' \\

% 'ž'
Križanec: ''\hl{Križanec}'' \\
Križ: ''\hl{Križ}'' \\
ž: ''\hl{ž}'' \\

\end{document}


The document is rendered like this:

As you can see, I am testing three special characters (čšž). Each of the character is displayed correctly only when it is in the middle of the word. It if is in the beggining or at the end, it is not displayed at all.

I have tried using suggestions from this post, but couldn't solve the problem. Any ideas?