69.55 utf8x.def

Note: the following file is requested by ucs.4ht and loaded outside the normal tex4ht environmet so, in particular, catcode are not set for it.

<..utf8x.4ht..>
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 % utf8x.4ht                             2014-07-12-22:36 %
 % Copyright (C) 2007--2009       Eitan M. Gurari         %
 <.TeX4ht copyright.>
 <.config utf8x.>%
 %  \Hinput{utf8x}
 \endinput
 -_-_-

<..config utf8x..>
 \bgroup
 \def\temp#1{%
    \ifnum \count255<224
       \expandafter\gdef\csname :u8-\number\count255\endcsname ##1{%
            \string#1\string##1}%
    \else\ifnum \count255<240
       \expandafter\gdef\csname :u8-\number\count255\endcsname ##1##2{%
            \string#1\string##1\string##2}%
    \else \ifnum \count255<245
       \expandafter\gdef\csname :u8-\number\count255\endcsname ##1##2##3{%
            \string#1\string##1\string##2\string##3}%
    \fi\fi\fi
    \edef\tempa{%
       \noexpand\Configure{@newlabel}{\noexpand\let\noexpand #1\expandafter
                       \noexpand\csname :u8-\number\count255\endcsname}}%
    \tempa
 }
 
 
  \count255=194\relax
  \loop\ifnum\count255<245\relax
     \catcode\count255\active
     \begingroup
       \uccode‘\~\count255%
       \uccode‘\u‘\u%
       \uppercase{%
     \endgroup
          \temp{~}}%
     \advance\count255by1\relax
  \repeat
   \expandafter\global\expandafter\let\csname a:@newlabel\expandafter
                            \endcsname\csname a:@newlabel\endcsname
 \egroup
 -_-_-

What is the difference between ‘\uccode‘\~\count255 %SPACE’ and

      \uccode‘\~\count255% 
      \uccode‘\u‘\u% 

utf8x.def has both.

The above is to preserve characters in ‘sensitive’ locations:

\documentclass{article} 
\usepackage{ucs} 
\usepackage[utf8]{inputenc} 
\usepackage{ngerman} 
\usepackage{hyperref} 
 
\begin{document} 
   X \autoref{fig:add_todo} 
 
   \begin{figure}[hbt!] 
      \caption{Fr X} 
      \label{fig:add_todo} 
   \end{figure} 
\end{document}