% history.kbc                                An idea of Bernard Gaulle 07/29/92
%                                     Copyright Bernard Gaulle as in french.doc
% kbconfig HISTORY
%
% mods: Let \csubinverse be known of the rest of the world.       --bg 04/20/93
%       Let 7-bit accent macro produce 8-bit chars when possible. --bg 04/28/93
%       Accent macros must produce only one token  otherwise
%           upper/lower-casing isn't correctly
%           converted (bug found by Jean-Claude Vivalda).         --bg 05/06/93
% V1.3  Define << and >> for any 8-bit usage(pointed by H.Soulard)--bg 08/10/93
% V1.4  Define a \global \FontEncoding as "CMR" or "ECM" to pass
%           to any run-time style such as french.sty  (but let
%           it asis if already defined).                          --bg 08/18/93
%       Add code for kb2lex interface (only for TeX V3.xx)        --bg 08/27/93
%       #4 param of \Madef wasn't a balanced text.                --bg 08/30/93
%       Replace \FontEncoding by \encodingdefault of NFSS2.       --bg 08/31/93
%       Current encoding used if any (\f@encoding).               --bg 09/01/93
%       \@tempa no more redefined bec. used in \input def of NFSS2--bg 09/02/93
%       But ngow using \@tempc...                            
%       Introduce \protect outside kb2lex because a macro such
%       as \copyright is not expandable due to alignement macros. --bg 09/03/93
%       LaTeX loop over \@tempc solved by \edef to null in[ macros
%       Issue warning when TeX V3 and CMR only.                   --bg 11/22/93
%       \f@encoding may be undefined.                             --bg 12/03/93
%       Allow the NFSS2 user to change of font encoding on the fly--bg 12/15/93
%       \input replaced by \@@input if defined.                   --bg 12/17/93
% V1.5  Accent macros redefined at end to usual if outside MlTeX.
%       \aa and \AA were not redefined for 8bits.                 --bg 12/21/93
% V1.6  Let \ifECM be globaly false if undefined. (pb of Goussard)--bg 03/23/94
% V1.7  Correction of previous change that was wrongly coded.     --bg 03/31/94
% V1.8  \ISOfalse disactivated too much active chars.             --bg 05/09/94
% V1.9  Reduced usage of backslash in lex code.(pointed by Vial). --bg 05/30/94
% V1.10 Give a global default definition for < and >.             --bg 06/07/94
% V1.11 Reset invalid LaTeX2e chars to internal \catcode 11.      --bg 09/27/94
%       Hack the format dumping time to set catcode correctly
%       (normally to remove for the 94-95 winter release of LaTeX)--bg 09/29/94
%       Take care of \I & \SS already defined in 2e.              
%       Correct 2e bug regarding OT1 uppercasing of ^^Y, ^^Z      --bg 09/30/94
%       Document these hacks via \wlog.                           --bg 10/03/94
%       Create a latex209.cfg to patch latex209.def which wrongly
%         reset \catcodes.                                        --bg 10/06/94
%       Let 8bit << and >> be equal to \fguillemets and \endfguillemets
%         avoiding them to become back 7bit when a solution will
%         be found...                                             --bg 10/10/94
%       Don't define globally current 2e TextSymbols.             
%       Don't redefine accent macros for 2e T1 which includes something
%         like our MlTeX \csubinverse mechanism.                  --bg 10/26/94
%       Rename \: in \r wich is what 2e is using.                 --bg 11/16/94
%       Stronger error messages when running initex TeX+cmr.      
%       Define MlTeX \OT1\accent macros for 2e.                   --bg 11/30/94
%       Take in account case when hexa code are undefined for
%         double chars outside MlTeX.                             --bg 12/17/94
%       Set low invalid chars to 11 even if gobbled.              
%       Reload of kbconfig needed only for OT1.                   --bg 12/18/94
%       8bit chars in T1 were not defined as accent on letter.    --bg 12/20/94
% V1.13 oe, ae, etc were not activated in T1 ISO.
%       Uppercase of oe, ae, etc were not set to 11 in T1.        
%       Force T1 if necessary when emulating 209.                 --bg 01/05/95
% V1.14 \@c@@ wasn't correctly defined for OT1 in 2e.             --bg 01/09/95
%       Avoid hexa codes to point back elsewhere in non-ISO.                 
%       Enforce \ifHB and encodingdefault wishes.                 --bg 01/10/95
%       Use ^^9c as a gateway to uppercase estzet.                
%       \csubinverse didn't use hexa code for non-ISO.            
%       \r was undefined in plain TeX.                            
%       \lccode of \OE was undefined in (and for) plain TeX.      
%       Plain def of pounds must not use \char bu \string         --bg 01/14/95
% V1.15 Let \i and \j be i and j inside 2e.                       --bg 02/05/95
% V1.16 Low chars need to be 11, even in 2e.                      --bg 03/06/95
%       Force T1 in latex209.cfg for non-MlTeX engines to ensure
%         that hyphenation be clean. Sugg. by D.B.Roegel.         
%       No lcc/ucc for normal T1 ISO slots (correctly set in font).
%       In T1 ISO, chars are not initiated. This was true except
%         for MACRO & LIGS (chars were already activated).
%       \DOhex provides chardef adjustement in hex. True but not 
%         for LEX.                                               
%       Plain has an incompatible \i definition for \csubinverse  
%        and no definition of \pounds (was wrongly removed by me
%        as few defs for \oe \OE \ae \AE \o \O \ss... (just that!)
%        probably when modifying the code for LEX and 2e).        --bg 03/07/95
%       TeX3+CMR warning message rewritten in english and no more
%        issued twice.                                            --bg 03/08/95
% V1.17 Reset \Def \Let \Let to undefined as suggested by jose
%        Grimm to avoid conflicts with theorem.sty.               --bg 10/12/95
% V1.18 Math accents too introduced!.                             --bg 01/09/96
% V1.19 Allow to load various keyboard.xxx with \@kbencoding which
%        is defautly set to "dat". See keyboard.sty too.          --bg 02/21/96
%       Add \documentstyle option "english" for compatibilty, thus
%        avoiding to load english.sty.                            --bg 04/05/96
% V1.20 Don't use DC accents in maths with LaTeX T1 font encoding.--bg 06/25/96
% V1.21 Messages numbered.                                        --bg 96/10/29
% V1.22 accent macros modified to accept \relax argument.         --bg 97/02/18
%       accent macros no more generate an enclosed token {x}.     --bg 97/02/19
% V2.00 Removing stuff for 2.09 and TeX V2
%       Introducing \ifEightBitOuput generation to let packages
%         know if they can output 8bit or not.                    --bg 97/06/23
% V2.01 \ifISO replaced internally by \nonActifCar. At users
%       level one use \ACTIVEtrue/false.                          --bg 97/09/19
% V3.00 keyboard.dat file is now fully a configuration file for
%         the user. New keyboard.cfg is for site installator. 
%         Encoding tables are now in xxx.kbc (instead of 
%         keyboard.xxx).                                          --bg 97/09/26
%       ^^9c is used by various encoding, specially ansinew. So
%         i introduce \unusedslot which is defaultly set to ^^9c.
%         \unusedslot can be changed in *.kbc files.              --bg 97/10/14
% V3.01 8-bits chars with accents are usable in math with MlTeX.  
%       Except for \c \r and \H (no solution found, none found
%         in plain.tex too).                                      --bg 97/11/06
%       Define \degre.                                            --bg 97/12/09
%       Now use \ESC before any TeX cs in *.kbc when wiling
%         to pass TeX code to LEX. \copyright and \degre have
%         been modified in *.kbc.                                 --bg 97/12/10
%       Output of \copyright need not to be protected.            --bg 97/12/19
% V3,02 \ESC wasn't defined.                                      --bg 98/01/23
% V3,03 There was no reason to modify OT1 accent macros of LaTeX
%         when kbconfig called from T1. Removed.                  --bg 98/01/27
% V3,04 Conversion of \degre to 8bits was wrong due to mismatch.  --bg 98/02/06
% V3,05 Let \ifECM be true for any other encoding except OT1, this
%         will allow LY1 to be used too.                          --bg 98/02/17
% V3,06 As pointed by Thomas Esser, ^^e9 generated a LaTeX error
%         during the second pass in a non-MlTeX engine, because
%         ^^e9 was activated in the first pass. No more use in the
%         second pass.                                            --bg 98/04/15
% V3,07 Files names may have a blank space on Mac, thus you can't
%         use \jobname asis. I introduce \@jobname for that 
%         purpose.                                                --bg 98/04/16
%       Inproved by D. Barbier.                                   --bg 98/04/22
% V3,08 As when using MlTeX on Mac kbconfig produced bad accent
%         macros (as pointed by M. Bovani) i found that the
%         \csubinverse generation was absolutely wrong. The 8bits
%         code produced was a T1 code in place of a Mac code.
%         Obviously all input encoding near T1 encoding, e.g. latin1
%         ran perfectly untill now.
%         \csubinverse generation modified.                       --bg 98/04/29
%         Doing a loop from 128 to 256 for \catcodes setting.     
%         Pb to \uppercase es-tzet on Mac. Due to \uccode targeting
%         a non active char. Uppercase hexa code now defined to its
%         uppercase letter value.                                 --bg 98/05/05
%         Redefining \newcount for plain TeX.                     --bg 98/05/06
% V3,09 Modifications to allow MlTeX to map the Cork encoding.
%         This can be forced by any def. of \forceMlTeXtoCork 
%         but then removing the facility to have usual 8bits 
%         chars with diacritics in math.                          --bg 98/05/11
%       \imath and \jmath used in math in place of \i and \j.     
%       Letters with diacritics now available in math with 
%         MlTeX T1, as well as OT1.                               
%       Math accents for Plain corrected when ec font used.
%       Any \cedilla macro for math somewhere?                    --bg 98/05/12
%       Message issued when \unusedslot is already actively active
%         or just a char.
%       ^^P and ^^Q used erroneously in T1 with MlTeX for \i & \j
%         as pointed by M. Bovani.                                --bg 98/05/15
% V3,10 Defaultly chars have no lower/upper case except 
%         themselves.                                             --bg 98/06/09
%       \texteuro defaultly defined.                              --bg 98/06/12
% V3,11 Defaultly, in T1 too, chars have no lower/upper case except 
%         themselves.                                             --bg 98/07/07
%       When T1, \ss comparison now done on the target code ^^ff. --bg 98/08/13
%       Initiate codes each time of loading (except for LEX)
%         exactly as LaTeX do for the format. Just for caution.   --bg 98/08/14
%       Never activate chars for math when T1.                    --bg 98/09/01
%       ^^Y ^^Z ^^P ^^Q were invalid chars with plain TeX.        --bg 98/09/07
%       Validate \forceMlTeXtoCork only when MlTeX. M. Bovani
%         was pointing that hack for other formats.               --bg 98/09/12
%       Correction of \ifx\texeuro.                               --bg 98/12/15
% *.kbc all char-macros are now ended with {} as suggested by 
%       Michel Bovani.                                            --bg 99/01/15
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
