<..frenchb.4ht..>
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% frenchb.4ht 2014-07-12-22:36 %
% Copyright (C) 2001--2009 Eitan M. Gurari %
<.TeX4ht copyright.>
<.declare frenchb shorthand.>
<.frenchb nbsp.>
\Hinput{frenchb}
\endinput
-_-_-
<..declare frenchb shorthand..>
\def\frenchb:shorthand#1#2#3#4{%
\ifhmode
\ifdim \lastskip >\z@ \unskip \penalty \@M
\csname a:#1-#2\endcsname#3\csname b:#1-#2\endcsname
\else
\csname a:#1-#2\endcsname#4\csname b:#1-#2\endcsname
\fi \fi }
-_-_-
<..frenchb nbsp..>
\def\:temp{\leavevmode \nobreak \csname a:system-nbsp\endcsname\ \csname
b:system-nbsp\endcsname}
\expandafter\HLet\csname \system@group @sh@\string ~@\endcsname=\:temp
\expandafter \ifx \csname FDP@space\endcsname\relax
<.since 2001/09/09 v1.5g frenchb.>
\else
<.pre 2001/09/09 v1.5g frenchb.>
\fi
\AtBeginDocument{%
\def\:temp{\frenchb:shorthand{frenchb}{thinspace}
{\thinspace }{\FDP@thinspace}\string ;}%
\expandafter\HLet\csname\language@group @sh@\string ;@\endcsname=\:temp
\def\:temp{\frenchb:shorthand{frenchb}{thinspace}
{\thinspace }{\FDP@thinspace}\string !}%
\expandafter\HLet\csname\language@group @sh@\string !@\endcsname=\:temp
\def\:temp{\frenchb:shorthand{frenchb}{thinspace}
{\thinspace }{\FDP@thinspace}\string ?}%
\expandafter\HLet\csname\language@group @sh@\string ?@\endcsname=\:temp
}
\NewConfigure{frenchb-nbsp}{2}
\NewConfigure{frenchb-thinspace}{2}
\NewConfigure{system-nbsp}{2}
-_-_-
<..pre 2001/09/09 v1.5g frenchb..>
\AtBeginDocument{%
\def\:temp{\frenchb:shorthand{frenchb}{nbsp}{\ }{\FDP@space}\string :}%
\expandafter\HLet\csname\language@group @sh@\string :@\endcsname=\:temp
}
-_-_-
<..since 2001/09/09 v1.5g frenchb..>
\AtBeginDocument{%
\def\:temp{\frenchb:shorthand{frenchb}{nbsp}{\ }{\FDP@colonspace}\string :}%
\expandafter\HLet\csname\language@group @sh@\string :@\endcsname=\:temp
}
-_-_-
The following is for code such as
<..frenchb nbsp..>+
\catcode‘\:=13
\expandafter\let\csname protect\string:\endcsname=:
\expandafter\def\csname active\string
:prefix\endcsname#1{\protect#1\ifx#1:{}\fi}
\catcode‘\:=11
-_-_-
‘With the package \usepackage[francais]{babel} , every ‘;’ ‘:’ ... must be preceded by an unbreakable space. This works okay for the input ‘a:’ and ‘a :’, but for ‘a~:’ TeX4ht introduces _2_ unbreakable spaces instead of one.’