diff options
Diffstat (limited to 'Master/texmf-dist/tex/latex/bxjscls/bxjscompat.sty')
-rw-r--r-- | Master/texmf-dist/tex/latex/bxjscls/bxjscompat.sty | 140 |
1 files changed, 140 insertions, 0 deletions
diff --git a/Master/texmf-dist/tex/latex/bxjscls/bxjscompat.sty b/Master/texmf-dist/tex/latex/bxjscls/bxjscompat.sty new file mode 100644 index 00000000000..6673a7f9961 --- /dev/null +++ b/Master/texmf-dist/tex/latex/bxjscls/bxjscompat.sty @@ -0,0 +1,140 @@ +%% +%% This is file `bxjscompat.sty', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% bxjscls.dtx (with options: `anc,compat') +%% +%% IMPORTANT NOTICE: +%% +%% For the copyright see the source file. +%% +%% Any modified versions of this file must be renamed +%% with new filenames distinct from bxjscompat.sty. +%% +%% For distribution of the original source see the terms +%% for copying and modification in the file bxjscls.dtx. +%% +%% This generated file may be distributed as long as the +%% original source files, as listed above, are part of the +%% same distribution. (The sources need not necessarily be +%% in the same archive or directory.) +%% \CharacterTable +%% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z +%% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z +%% Digits \0\1\2\3\4\5\6\7\8\9 +%% Exclamation \! Double quote \" Hash (number) \# +%% Dollar \$ Percent \% Ampersand \& +%% Acute accent \' Left paren \( Right paren \) +%% Asterisk \* Plus \+ Comma \, +%% Minus \- Point \. Solidus \/ +%% Colon \: Semicolon \; Less than \< +%% Equals \= Greater than \> Question mark \? +%% Commercial at \@ Left bracket \[ Backslash \\ +%% Right bracket \] Circumflex \^ Underscore \_ +%% Grave accent \` Left brace \{ Vertical bar \| +%% Right brace \} Tilde \~} +\ProvidesPackage{bxjscompat} + [2016/02/20 v1.1a BXJS document classes] +\def\bxac@pkgname{bxjscompat} +\let\bxac@engine=n +\def\bxac@do#1#2{% + \edef\bxac@tmpa{\string#1}% + \edef\bxac@tmpb{\meaning#1}% + \ifx\bxac@tmpa\bxac@tmpb #2\fi} +\bxac@do\XeTeXversion{\let\bxac@engine=x} +\bxac@do\luatexversion{\let\bxac@engine=l} +\ifx\jsAtEndOfClass\@undefined + \let\bxac@delayed@if@bxjs\@firstofone +\else \let\bxac@delayed@if@bxjs\jsAtEndOfClass +\fi +\newif\ifbxac@in@old@behavior +\let\ImposeOldLuaTeXBehavior\relax +\let\RevokeOldLuaTeXBehavior\relax +\ifx x\bxac@engine +\@onlypreamble\bxac@adjust@charclass +\bxac@delayed@if@bxjs{% + \@ifpackageloaded{xeCJK}{}{%else + \ifx\xe@alloc@intercharclass\@undefined\else + \ifnum\xe@alloc@intercharclass=\z@ + \PackageInfo\bxac@pkgname + {Setting up interchar class for CJK...\@gobble}% + \InputIfFileExists{load-unicode-xetex-classes.tex}{% + \xe@alloc@intercharclass=3 + }{%else + \PackageWarning\bxac@pkgname + {Cannot find file 'load-unicode-xetex-classes.tex'% + \@gobble}% + }% + \fi\fi + \ifnum\XeTeXcharclass"3041=\z@ + \PackageInfo\bxac@pkgname + {Adjusting interchar class for CJK...\@gobble}% + \@for\bxac@x:={% + 3041,3043,3045,3047,3049,3063,3083,3085,3087,308E,% + 3095,3096,30A1,30A3,30A5,30A7,30A9,30C3,30E3,30E5,% + 30E7,30EE,30F5,30F6,30FC,31F0,31F1,31F2,31F3,31F4,% + 31F5,31F6,31F7,31F8,31F9,31FA,31FB,31FC,31FD,31FE,% + 31FF% + }\do{\XeTeXcharclass"\bxac@x=\@ne}% + \fi + }% +} +\fi +\ifx l\bxac@engine +\unless\ifnum\luatexversion<80 \ifnum\luatexversion<85 + \chardef\pdftexversion=200 + \def\pdftexrevision{0} + \let\pdftexbanner\luatexbanner +\fi\fi +\begingroup\expandafter\expandafter\expandafter\endgroup +\expandafter\ifx\csname outputmode\endcsname\relax\else +\def\bxac@ob@list{% + \do{\let}\pdfoutput{\outputmode}% + \do{\let}\pdfpagewidth{\pagewidth}% + \do{\let}\pdfpageheight{\pageheight}% + \do{\protected\edef}\pdfhorigin{{\pdfvariable horigin}}% + \do{\protected\edef}\pdfvorigin{{\pdfvariable vorigin}}} +\def\bxac@ob@do#1#2{\begingroup + \expandafter\bxac@ob@do@a\csname bxac@\string#2\endcsname{#1}#2} +\def\bxac@ob@do@a#1#2#3#4{\endgroup + \ifbxac@in@old@behavior \let#1#3\relax #2#3#4\relax + \else \let#3#1\relax \let#1\@undefined + \fi} +\protected\def\ImposeOldLuaTeXBehavior{% + \unless\ifbxac@in@old@behavior + \bxac@in@old@behaviortrue + \let\do\bxac@ob@do \bxac@ob@list + \fi} +\protected\def\RevokeOldLuaTeXBehavior{% + \ifbxac@in@old@behavior + \bxac@in@old@behaviorfalse + \let\do\bxac@ob@do \bxac@ob@list + \fi} +\fi + \ifnum\luatexversion>64 \directlua{ + local function range(cs, ce, cc, ff) + if ff or not tex.getcatcode(cs) == cc then + local setcc = tex.setcatcode + for c = cs, ce do setcc(c, cc) end + end + end + range(0x3400, 0x4DB5, 11, false) + range(0x4DB5, 0x4DBF, 11, true) + range(0x4E00, 0x9FCC, 11, false) + range(0x9FCD, 0x9FFF, 11, true) + range(0xAC00, 0xD7A3, 11, false) + range(0x20000, 0x2A6D6, 11, false) + range(0x2A6D7, 0x2A6FF, 11, true) + range(0x2A700, 0x2B734, 11, false) + range(0x2B735, 0x2B73F, 11, true) + range(0x2B740, 0x2B81D, 11, false) + range(0x2B81E, 0x2B81F, 11, true) + range(0x2B820, 0x2CEA1, 11, false) + range(0x2CEA2, 0x2FFFD, 11, true) + }\fi +\fi +\endinput +%% +%% End of file `bxjscompat.sty'. |