
 %%%% Gllmts.tex
   %% Hack for Guillemets
   %% One layer of protection for LaTeX

  %\chardef\GuillemetsUlineCat=\catcode`\_
  %%% Beware: supposes Plain catcodes
  %% Activation of < > later
 \catcode`\_=11
 \catcode`\<=13
 \catcode`\>=13

 \def\gobble_#1{}
 \def\Space{ }
 \def\empty{}
 \let\protect\relax

 \def<{\ifmmode\string<\else
        \expandafter\protect\expandafter\_LG\fi}
 \def\_LG{\futurelet\next\_LGmole}
 \def\_LGmole{%\show\next
    \ifx <\next
       \def\temp_{\_DLG\gobble_}%
    \else
       \ifx \_LG\next
          \def\temp_{\_DLG\gobble_}%
       \else
       \edef\temp_{\string<}%
       \fi
    \fi%\show\temp_
    \temp_}

 \def>{\ifmmode\string>\else
      \expandafter\protect\expandafter\_RG\fi}
 \def\_RG{\futurelet\next\_RGmole}
 \def\_RGmole{%\show\next
    \ifx >\next
       \def\temp_{\_DRG\gobble_}%
    \else
       \ifx \_RG\next
          \def\temp_{\_DRG\gobble_}%
       \else
       \edef\temp_{\string>}%
       \fi
    \fi
    \temp_}

 \let\<\_DLG %% defined in CeasarCK
 \let\>\_DRG

 \def\SetCaesarsGuillemets{%% \_LG etc defined in CeasarCK
   \let<\_LG \let>\_RG      
   \let\<\_DLG \let\>\_DRG} 
   

 \catcode`\_=8
 \catcode`\<=12
 \catcode`\>=12

 \endinput

 aaa aaa \_DLG xx\_DRG{} zzz zzz

\bye

