%<*sty> %% Changes %% 2006-06-14: added definitions for shortcastling and longcastling %% added \chesscomment for \comment to prevent a clash with some verbatim %% packages. Added lsbc5 encoding. %% %% 2006-06-09 %% changed the default font to skaknew. The skaknew option don't do anything now. %% %% 2006-06-07 %% corrected def of chesssee ->bugreport %% 2006-05-26 %% changed handling of textchars, %% added language commands %% added new encodings for layers board chars %% changed a lot of things in the documentation %% 2006-05-22 %% Corrected definition of BlackRookOnWhite %% Added \setboardfontencoding %% 2006-03-31: %% changed the name of the informatorsymbol \see to %% \chesssee to avoid a clash with makeidx %% %% Fontencoding declaration are now in external .def-files. %% fd-informations of skak and skaknew are in external .fd-files. %% %% Changed the internal definition of the pieces. They now use %% \DeclareTextCommand etc. So they now longer execute font %% commands like size! The user definitions like %% \WhiteEmptySquare or \king are unchanged. %% %% I added an LSBXA-encoding that can be used to color the back of board %% pieces differently to the piece itself. %% 2005-12-15: added three length (\len@cfss@squarewidth, \len@cfss@squaretotalheight), %% \len@cfss@squaredepth) %% added the commands \cfss@getsquaresize and \getsquaresize, %% changed \cfss@setupboardsize and \setboardfontsize. %% They now stores the dimensions of a square of the board. %% 2005-12-15: changed definition of \cfss@boardsymbol. To prevent the %% insertion of italic correction in boards \DeclareTextFontCommand %% is no longer used %% 2005-12-02: corrected missing % in definition of \cfss@sidefont %% 2005-06-28: Changed definition of boardfont. The baselineskip is now %% set to the total height of a square. This corrects a problem with fonts, %% where the board squares are not really squares. %% 2005-05-09: Corrected the definitions of \with and \without. %% \with is now |_ and \without is now _| (the old definition were the other %% way round). \NeedsTeXFormat{LaTeX2e}% \ProvidesPackage{chessfss}[2006/06/14 v1.2a chess font selection scheme] \RequirePackage{ifthen,xkeyval} \providecommand\cfss@default@family{skaknew} \DeclareOption{skaknew}{} \ProcessOptions %%%% Deklaration of the standard encodings %% other encoding have to been loaded e.g. with fontenc \input{lsbenc.def} \input{lsfenc.def} \input{lsienc.def} %%%% font commands %%%% commands for the figurine %%% encoding \newcommand\cfss@figfontencoding{LSF} %% figurines can be written in a game as figurine symbols or as text characters. %% Text characters can change with the language. %% I provide three sets to print figurines: %% \figfont and \figsymbol{} and \symking, \symqueen ... prints only symbols %% \textfigsymbol{}, \textking, \textqueen ... prints only a text %% character, %% \textsymfigsymbol{}, \king, \queen, \textsymking, \textsymqueen ... prints either a text or %% symbol depending on a switch. The switch can be set with \usetextfig %% and \usesymfig. %% For the two \text... and \textsym command there aren't declaration commands, but the %% the fontstyle can be set with \settextfigstyle{}. %%% commands to print figurine symbols \newcommand\cfss@figfontfamily {\cfss@default@family} \newcommand*\setfigfontfamily[1]{% \renewcommand*\cfss@figfontfamily{#1}} \DeclareRobustCommand\cfss@figfont{% \fontencoding {\cfss@figfontencoding}% \fontfamily {\cfss@figfontfamily}% \selectfont} \let\figfont\cfss@figfont \DeclareTextFontCommand\cfss@figsymbol{\cfss@figfont} \let\figsymbol\cfss@figsymbol %% "symbol" figurines \DeclareRobustCommand\symking {\figsymbol{\cfss@symking}} \DeclareRobustCommand\symqueen {\figsymbol{\cfss@symqueen}} \DeclareRobustCommand\symrook {\figsymbol{\cfss@symrook}} \DeclareRobustCommand\symbishop {\figsymbol{\cfss@symbishop}} \DeclareRobustCommand\symknight {\figsymbol{\cfss@symknight}} \DeclareRobustCommand\sympawn {\figsymbol{\cfss@sympawn}} %%% command to get text characters %% Defining the output characters and the translation from english input to the %% output %% Languagesupport/Input/Output %% new 2006-05-26 \newcommand\cfss@textfiglanguage{english} \newcommand\cfss@symfiglanguage{@LSB} \newcommand\cfss@figlanguage{\cfss@symfiglanguage} \newcommand*\settextfiglanguage[1]{% \ifcsname cfss@king@#1\endcsname \def\cfss@textfiglanguage{#1}% \else \PackageWarning{chessfss}{% Chars for language #1 undefined! \MessageBreak I will use english instead!} \def\cfss@textfiglanguage{english}% \fi} \newcommand*\cfss@king@@LSB{\cfss@figsymbol{K}} \newcommand*\cfss@queen@@LSB{\cfss@figsymbol{Q}} \newcommand*\cfss@rook@@LSB{\cfss@figsymbol{R}} \newcommand*\cfss@bishop@@LSB{\cfss@figsymbol{B}} \newcommand*\cfss@knight@@LSB{\cfss@figsymbol{N}} \newcommand*\cfss@pawn@@LSB{\cfss@figsymbol{p}} \newcommand*\settextfigchars[7][english]{% language, {K}{Q}{R}{B}{N}{P} \@namedef{cfss@king@#1}{#2}% \@namedef{cfss@queen@#1}{#3}% \@namedef{cfss@rook@#1}{#4}% \@namedef{cfss@bishop@#1}{#5}% \@namedef{cfss@knight@#1}{#6}% \@namedef{cfss@pawn@#1}{#7}} \let\setfigtextchars\settextfigchars \settextfigchars[english]{K}{Q}{R}{B}{N}{P} \settextfigchars[german]{K}{D}{T}{L}{S}{B} \settextfigchars[spanish]{R}{D}{T}{A}{C}{P} \settextfigchars[finnish]{K}{D}{T}{L}{R}{S} \settextfigchars[french]{R}{D}{T}{F}{C}{P} \settextfigchars[interlingua]{R}{G}{T}{E}{C}{P} \settextfigchars[icelandic]{K}{D}{H}{B}{R}{P} \settextfigchars[italian]{R}{D}{T}{A}{C}{P} \settextfigchars[portuges]{R}{D}{T}{B}{C}{P} \newcommand*\cfss@kingchar{K} \newcommand*\cfss@queenchar{Q} \newcommand*\cfss@rookchar{R} \newcommand*\cfss@bishopchar{B} \newcommand*\cfss@knightchar{N} \newcommand*\cfss@pawnchar{P} \newcommand*{\cfss@input@K@english}{king} \newcommand*{\cfss@input@k@english}{king} \newcommand*{\cfss@input@Q@english}{queen} \newcommand*{\cfss@input@q@english}{queen} \newcommand*{\cfss@input@R@english}{rook} \newcommand*{\cfss@input@r@english}{rook} \newcommand*{\cfss@input@B@english}{bishop} \newcommand*{\cfss@input@b@english}{bishop} \newcommand*{\cfss@input@N@english}{knight} \newcommand*{\cfss@input@n@english}{knight} \newcommand*{\cfss@input@P@english}{pawn} \newcommand*{\cfss@input@p@english}{pawn} \newcommand*\cfss@checkinputchar[1]{% \ifcsname cfss@input@#1@english\endcsname \else \PackageError{chessfss}{Input char #1 unknown}{}% \fi} \DeclareRobustCommand\cfss@puretextfigsymbol[1]{% \cfss@checkinputchar{#1}% \csname cfss@\csname cfss@input@#1@english\endcsname @\cfss@textfiglanguage\endcsname} \DeclareRobustCommand\cfss@styletextfigsymbol[1]{% \cfss@checkinputchar{#1}% {\cfss@figstyle{\csname cfss@\csname cfss@input@#1@english\endcsname @\cfss@textfiglanguage\endcsname}}} \DeclareRobustCommand\cfss@textking {\cfss@textfigsymbol{K}} \DeclareRobustCommand\cfss@textqueen {\cfss@textfigsymbol{Q}} \DeclareRobustCommand\cfss@textrook {\cfss@textfigsymbol{R}} \DeclareRobustCommand\cfss@textbishop {\cfss@textfigsymbol{B}} \DeclareRobustCommand\cfss@textknight {\cfss@textfigsymbol{N}} \DeclareRobustCommand\cfss@textpawn {\cfss@textfigsymbol{P}} \let\textking\cfss@textking \let\textqueen\cfss@textqueen \let\textrook\cfss@textrook \let\textbishop\cfss@textbishop \let\textknight\cfss@textknight \let\textpawn\cfss@textpawn \DeclareRobustCommand\cfss@puretextsymfigsymbol[1]{% \cfss@checkinputchar{#1}% \csname cfss@\csname cfss@input@#1@english\endcsname @\cfss@figlanguage\endcsname} \DeclareRobustCommand\cfss@styletextsymfigsymbol[1]{% \cfss@checkinputchar{#1}% {\cfss@figstyle{% \csname cfss@\csname cfss@input@#1@english\endcsname @\cfss@figlanguage\endcsname}}} \DeclareRobustCommand\cfss@textsymking {\cfss@textsymfigsymbol{K}} \DeclareRobustCommand\cfss@textsymqueen {\cfss@textsymfigsymbol{Q}} \DeclareRobustCommand\cfss@textsymrook {\cfss@textsymfigsymbol{R}} \DeclareRobustCommand\cfss@textsymbishop {\cfss@textsymfigsymbol{B}} \DeclareRobustCommand\cfss@textsymknight {\cfss@textsymfigsymbol{N}} \DeclareRobustCommand\cfss@textsympawn {\cfss@textsymfigsymbol{p}} \let\textsymking\cfss@textsymking \let\textsymqueen\cfss@textsymqueen \let\textsymrook\cfss@textsymrook \let\textsymbishop\cfss@textsymbishop \let\textsymknight\cfss@textsymknight \let\textsympawn\cfss@textsympawn \DeclareRobustCommand\cfss@king {\cfss@textsymfigsymbol{K}} \DeclareRobustCommand\cfss@queen {\cfss@textsymfigsymbol{Q}} \DeclareRobustCommand\cfss@rook {\cfss@textsymfigsymbol{R}} \DeclareRobustCommand\cfss@bishop {\cfss@textsymfigsymbol{B}} \DeclareRobustCommand\cfss@knight {\cfss@textsymfigsymbol{N}} \DeclareRobustCommand\cfss@pawn {\cfss@textsymfigsymbol{p}} \let\king\cfss@king \let\queen\cfss@queen \let\rook\cfss@rook \let\bishop\cfss@bishop \let\knight\cfss@knight \let\pawn\cfss@pawn \newif\ifcfss@textchars \newcommand\usesymfig{% \def\cfss@figlanguage{\cfss@symfiglanguage}} \newcommand{\usetextfig}{% \def\cfss@figlanguage{\cfss@textfiglanguage}} \usesymfig %default %% figstyle, \newcommand*\cfss@figstyle{} \DeclareRobustCommand\setfigstyle[1]{% \def\next{#1}% \ifx\next\empty \let\cfss@textfigsymbol\cfss@puretextfigsymbol \let\textfigsymbol\cfss@textfigsymbol \let\cfss@textsymfigsymbol\cfss@puretextsymfigsymbol \let\textsymfigsymbol\cfss@textsymfigsymbol \else \let\cfss@textfigsymbol\cfss@styletextfigsymbol \let\textfigsymbol\cfss@textfigsymbol \let\cfss@textsymfigsymbol\cfss@styletextsymfigsymbol \let\textsymfigsymbol\cfss@textsymfigsymbol \DeclareRobustCommand\cfss@figstyle{#1}% \fi} \let\settextfigstyle\setfigstyle \setfigstyle{} %default %%%% commands for the board %% the font for the boards/diagrams, the size should be set independant %% of surrounding font sizes. I don't think that an "\itshape"-board is possible, %% but I provide a command to change to "bold" boards (I have a font with such a board). \newcommand*\cfss@boardfontencoding{LSB} \newcommand*\cfss@boardfontfamily {\cfss@default@family} \newcommand*\cfss@boardfontseries {\mddefault} \newcommand*\cfss@boardfontsize {20pt} \newcommand*\setboardfontencoding[1]{% \renewcommand*\cfss@boardfontencoding{#1}} \newcommand*\setboardfontfamily[1]{% \renewcommand*\cfss@boardfontfamily{#1}} \newcommand*\setboardfontseries[1]{% \renewcommand*\cfss@boardfontseries{#1}} \newcommand*\setboardfontsize[1]{% %changed 2005-12-15. added \cfss@getsquaresize \renewcommand*\cfss@boardfontsize{#1}% \cfss@getsquaresize{\BlackEmptySquare}} \newcommand\showchessboardencoding[2][skaknew]{% \ifcsname cfss@showboardencoding#2\endcsname \@ifundefined{colorbox} {\PackageWarning{chessfss}{color package not loaded!}{} \def\colorbox[2][]{}} {\begingroup \setboardfontencoding{#2}% \setboardfontfamily{#1}% \normalfont \colorbox[gray]{0.95}{\csname cfss@showboardencoding#2\endcsname} \endgroup}% \else \PackageError{chessfss}{Encoding #2 has no description or hasn't been loaded}{} \fi} %%% New 2005-12-15. Commands to get width, totalheight, and depth (for %%% correction) of the board. \newlength\len@cfss@squarewidth \newlength\len@cfss@squaretotalheight \newlength\len@cfss@squaredepth \newcommand\cfss@getsquaresize[1]{% use e.g.e as \cfss@getsquaresize{\BlackEmptySquare} \settowidth\len@cfss@squarewidth{#1}% \settodepth\len@cfss@squaredepth{#1}% \settoheight\len@cfss@squaretotalheight{\raisebox{\depth}{#1}}}% \newcommand\cfss@globalgetsquaresize[1]{% use e.g.e as \cfss@getsquaresize{\BlackEmptySquare} \settowidth{\global\len@cfss@squarewidth}{#1}% \settodepth{\global\len@cfss@squaredepth}{#1}% \settoheight{\global\len@cfss@squaretotalheight}{\raisebox{\depth}{#1}}}% \let\getsquaresize\cfss@getsquaresize %%% end New 2005-12-15 %%2006-05-24 color encodings commands \providecommand\cfss@whitefieldmaskcolor{\color{white}} \providecommand\cfss@blackfieldmaskcolor{\color{gray}} \providecommand\cfss@whitefieldcolor{} \providecommand\cfss@blackfieldcolor{} \providecommand\cfss@whiteonwhitepiecemaskcolor{\color{white}} \providecommand\cfss@whiteonblackpiecemaskcolor{\color{white}} \providecommand\cfss@blackonwhitepiecemaskcolor{\color{white}} \providecommand\cfss@blackonblackpiecemaskcolor{\color{white}} \providecommand\cfss@whitepiececolor{} \providecommand\cfss@blackpiececolor{} \define@key[UFCF]{gloset}{whitefieldmask}{% \def\cfss@whitefieldmaskcolor{\color{#1}}}% \define@key[UFCF]{gloset}{blackfieldmask}{% \def\cfss@blackfieldmaskcolor{\color{#1}}}% \define@key[UFCF]{gloset}{whitefield}{% \def\cfss@whitefieldcolor{\color{#1}}}% \define@key[UFCF]{gloset}{blackfield}{% \def\cfss@blackfieldcolor{\color{#1}}}% \define@key[UFCF]{gloset}{whiteonwhitepiecemask}{% \def\cfss@whiteonwhitepiecemaskcolor{\color{#1}}}% \define@key[UFCF]{gloset}{blackonwhitepiecemask}{% \def\cfss@blackonwhitepiecemaskcolor{\color{#1}}}% \define@key[UFCF]{gloset}{whiteonblackpiecemask}{% \def\cfss@whiteonblackpiecemaskcolor{\color{#1}}}% \define@key[UFCF]{gloset}{blackonblackpiecemask}{% \def\cfss@blackonblackpiecemaskcolor{\color{#1}}}% \define@key[UFCF]{gloset}{whitepiece}{% \def\cfss@whitepiececolor{\color{#1}}}% \define@key[UFCF]{gloset}{blackpiece}{% \def\cfss@blackpiececolor{\color{#1}}}% \newcommand\setboardfontcolors[1]{% \setkeys[UFCF]{gloset}{#1}} %% Font commands. The baselineskip is equal to the total height of the black %% square \DeclareRobustCommand\cfss@boardfont{% changed 2005-06-28 \fontencoding{\cfss@boardfontencoding}% \fontfamily{\cfss@boardfontfamily}% \fontshape{n}% \fontseries{\cfss@boardfontseries}% \fontsize{\cfss@boardfontsize}{\cfss@boardfontsize}% \selectfont \settoheight\baselineskip{\raisebox{\depth}{Z}}}% \let\boardfont\cfss@boardfont \DeclareRobustCommand\cfss@boardsymbol[1]{% %%changed 2005-12-15 to prevent the insertion of italic %%correction in boards. \DeclareTextFontCommand is no longer %%used \ifmmode \nfss@text{\cfss@boardfont#1}% \else \hmode@bgroup \cfss@boardfont#1% \egroup \fi }% \let\boardsymbol\cfss@boardsymbol %% to be able to change figurine and board together %% we define a setchessfontfamily command: \newcommand*\setchessfontfamily[1]{% \renewcommand*\cfss@figfontfamily{#1}% \renewcommand*\cfss@boardfontfamily{#1}} %% and a command for all three families \newcommand*\setallchessfontfamily[1]{% \renewcommand*\cfss@figfontfamily{#1}% \renewcommand*\cfss@boardfontfamily{#1}% \renewcommand*\cfss@inffontfamily{#1}} %%%% the font with the informator symbol. \newcommand*\cfss@inffontencoding{LSI} \newcommand*\cfss@inffontfamily {\cfss@default@family} \newcommand*\setinffontfamily[1]{% \renewcommand*\cfss@inffontfamily{#1}} %% declaration command \DeclareRobustCommand\cfss@inffont{% \fontencoding {LSI}% \fontfamily {\cfss@inffontfamily}% \selectfont} \let\inffont\cfss@inffont \DeclareTextFontCommand\cfss@infsymbol{\cfss@inffont} \let\infsymbol\cfss@infsymbol %%% for notation on the board side, this font should be a "fixed" font, so %%% every font characteristik can be defined: \newcommand*\cfss@sidefontencoding{\encodingdefault} \newcommand*\cfss@sidefontfamily {\sfdefault} \newcommand*\cfss@sidefontshape {\updefault} \newcommand*\cfss@sidefontseries {\mddefault} \newcommand*\cfss@sidefontsize {6pt} \newcommand*\setsidefontencoding[1]{% \renewcommand*\cfss@sidefontencoding{#1}} \newcommand*\setsidefontfamily[1]{% \renewcommand*\cfss@sidefontfamily{#1}} \newcommand*\setsidefontshape[1]{% \renewcommand*\cfss@sidefontshape{#1}} \newcommand*\setsidefontseries[1]{% \renewcommand*\cfss@sidefontseries{#1}} \newcommand*\setsidefontsize[1]{% \renewcommand*\cfss@sidefontsize{#1}} %% declaration command \DeclareRobustCommand\cfss@sidefont{%changed 2005-12-02 %corrected missing % \fontsize{\cfss@sidefontsize}{\cfss@sidefontsize}% \usefont{\cfss@sidefontencoding}% {\cfss@sidefontfamily}% {\cfss@sidefontseries}% {\cfss@sidefontshape}} \newcommand\sidefont{} \let\sidefont\cfss@sidefont \DeclareTextFontCommand\cfss@sidesymbol{\cfss@sidefont} \newcommand\sidesymbol{} \let\sidesymbol\cfss@sidesymbol %%% command to change size of boardfont and notation font %%% This is an internal command as packages will perhaps %%% need to adjust other things %%% The command is obsolete. package writer should better %%% decide themselve which piece should be the reference piece. %%% But as skak.sty use the command I didn't delete it. \newcommand\cfss@setupboardsize[2]{% %% changed 2005-12-15. added \cfss@getsquaresize \renewcommand\cfss@boardfontsize {#1}% \renewcommand\cfss@sidefontsize {#2}% \cfss@getsquaresize{\BlackEmptySquare}} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%% support for symbols %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%% Symbols from figurine font (LSF encoding), %%% commands are above %%% Symbols from the board font (LSB encoding) %%% These symbols are of less use for the normal user, so names with Initials are used \DeclareRobustCommand\WhiteEmptySquare {\cfss@boardsymbol{\cfss@WhiteEmptySquare}} \DeclareRobustCommand\BlackEmptySquare {\cfss@boardsymbol{\cfss@BlackEmptySquare}} \DeclareRobustCommand\WhiteKingOnWhite {\cfss@boardsymbol{\cfss@WhiteKingOnWhite}} \DeclareRobustCommand\BlackKingOnWhite {\cfss@boardsymbol{\cfss@BlackKingOnWhite}} \DeclareRobustCommand\WhiteKingOnBlack {\cfss@boardsymbol{\cfss@WhiteKingOnBlack}} \DeclareRobustCommand\BlackKingOnBlack {\cfss@boardsymbol{\cfss@BlackKingOnBlack}} \DeclareRobustCommand\WhiteQueenOnWhite {\cfss@boardsymbol{\cfss@WhiteQueenOnWhite}} \DeclareRobustCommand\BlackQueenOnWhite {\cfss@boardsymbol{\cfss@BlackQueenOnWhite}} \DeclareRobustCommand\WhiteQueenOnBlack {\cfss@boardsymbol{\cfss@WhiteQueenOnBlack}} \DeclareRobustCommand\BlackQueenOnBlack {\cfss@boardsymbol{\cfss@BlackQueenOnBlack}} \DeclareRobustCommand\WhiteRookOnWhite {\cfss@boardsymbol{\cfss@WhiteRookOnWhite}} \DeclareRobustCommand\BlackRookOnWhite {\cfss@boardsymbol{\cfss@BlackRookOnWhite}} \DeclareRobustCommand\WhiteRookOnBlack {\cfss@boardsymbol{\cfss@WhiteRookOnBlack}} \DeclareRobustCommand\BlackRookOnBlack {\cfss@boardsymbol{\cfss@BlackRookOnBlack}} \DeclareRobustCommand\WhiteBishopOnWhite{\cfss@boardsymbol{\cfss@WhiteBishopOnWhite}} \DeclareRobustCommand\BlackBishopOnWhite{\cfss@boardsymbol{\cfss@BlackBishopOnWhite}} \DeclareRobustCommand\WhiteBishopOnBlack{\cfss@boardsymbol{\cfss@WhiteBishopOnBlack}} \DeclareRobustCommand\BlackBishopOnBlack{\cfss@boardsymbol{\cfss@BlackBishopOnBlack}} \DeclareRobustCommand\WhiteKnightOnWhite{\cfss@boardsymbol{\cfss@WhiteKnightOnWhite}} \DeclareRobustCommand\BlackKnightOnWhite{\cfss@boardsymbol{\cfss@BlackKnightOnWhite}} \DeclareRobustCommand\WhiteKnightOnBlack{\cfss@boardsymbol{\cfss@WhiteKnightOnBlack}} \DeclareRobustCommand\BlackKnightOnBlack{\cfss@boardsymbol{\cfss@BlackKnightOnBlack}} \DeclareRobustCommand\WhitePawnOnWhite {\cfss@boardsymbol{\cfss@WhitePawnOnWhite}} \DeclareRobustCommand\BlackPawnOnWhite {\cfss@boardsymbol{\cfss@BlackPawnOnWhite}} \DeclareRobustCommand\WhitePawnOnBlack {\cfss@boardsymbol{\cfss@WhitePawnOnBlack}} \DeclareRobustCommand\BlackPawnOnBlack {\cfss@boardsymbol{\cfss@BlackPawnOnBlack}} %%% Various Symbols from textfont \DeclareRobustCommand\castlingchar {O} \DeclareRobustCommand\novelty {{\textsf{N}}} \ifcsname comment\endcsname \PackageWarning{chessfss}{\string\comment\space already defined \MessageBreak I will not overwrite it} \else \newcommand\comment {{\textsf{\mbox{RR}}}} \fi \DeclareRobustCommand\chesscomment {{\textsf{\mbox{RR}}}} \DeclareRobustCommand\various {{\textsf{R}}} %%% Commands for castling, definitions are temporary, don't know yet %%% the best way to handle them, so that glyphs can be used \newcommand\shortcastling{\mbox{\castlingchar\castlinghyphen\castlingchar}} \newcommand\longcastling{\mbox{\castlingchar\castlinghyphen\castlingchar\castlinghyphen\castlingchar}} \newcommand\cfss@shortcastling{\mbox{\castlingchar\castlinghyphen\castlingchar}} \newcommand\cfss@longcastling{\mbox{\castlingchar\castlinghyphen\castlingchar\castlinghyphen\castlingchar}} %%% Symbols from the LSI encoding (informator symbols) \DeclareRobustCommand\castlinghyphen{{\cfss@infsymbol{\cfss@castlinghyphen}}} \DeclareRobustCommand\checksymbol {{\cfss@infsymbol{\cfss@checksymbol}}} \let\checksign\checksymbol %for texmate \DeclareRobustCommand\bishoppair {{\cfss@infsymbol{\cfss@bishoppair}}} \let\bishops\bishoppair %for texmate \DeclareRobustCommand\betteris {{\cfss@infsymbol{\cfss@betteris}}} \DeclareRobustCommand\wupperhand {{\cfss@infsymbol{\cfss@wupperhand}}} \let\wBetter\wupperhand %for texmate \DeclareRobustCommand\doublepawns {{\cfss@infsymbol{\cfss@doublepawns}}} \let\doubledpawns\doublepawns %for texmate \DeclareRobustCommand\bupperhand {{\cfss@infsymbol{\cfss@bupperhand}}} \let\bBetter\bupperhand %for texmate \DeclareRobustCommand\wbetter {{\cfss@infsymbol{\cfss@wbetter}}} \DeclareRobustCommand\bbetter {{\cfss@infsymbol{\cfss@bbetter}}} \DeclareRobustCommand\wdecisive {{\cfss@infsymbol{\cfss@wdecisive}}} \let\WBetter\wdecisive %for texmate \DeclareRobustCommand\bdecisive {{\cfss@infsymbol{\cfss@bdecisive}}} \let\BBetter\bdecisive %for texmate \DeclareRobustCommand\equal {{\cfss@infsymbol{\cfss@equal}}} \DeclareRobustCommand\unclear {{\cfss@infsymbol{\cfss@unclear}}} \DeclareRobustCommand\chesssee {{\cfss@infsymbol{\cfss@chesssee}}} %% Definition of \see delated as there is clash with makeidx %%\let\chesssee\see %for texmate \DeclareRobustCommand\mate {{\cfss@infsymbol{\cfss@mate}}} \DeclareRobustCommand\compensation {{\cfss@infsymbol{\cfss@compensation}}} \DeclareRobustCommand\opposbishops {{\cfss@infsymbol{\cfss@opposbishops}}} \let\oppositebishops\opposbishops %for texmate \DeclareRobustCommand\seppawns {{\cfss@infsymbol{\cfss@seppawns}}} \let\separatedpawns\seppawns %for texmate \DeclareRobustCommand\passedpawn {{\cfss@infsymbol{\cfss@passedpawn}}} \DeclareRobustCommand\samebishops {{\cfss@infsymbol{\cfss@samebishops}}} \DeclareRobustCommand\devadvantage {{\cfss@infsymbol{\cfss@devadvantage}}} \let\development\devadvantage%for texmate \DeclareRobustCommand\unitedpawns {{\cfss@infsymbol{\cfss@unitedpawns}}} \DeclareRobustCommand\with {{\cfss@infsymbol{\cfss@with}}} %changed2005.05.09 \DeclareRobustCommand\without {{\cfss@infsymbol{\cfss@without}}} %changed2005.05.09 \DeclareRobustCommand\markera {{\cfss@infsymbol{\cfss@markera}}} \DeclareRobustCommand\markerb {{\cfss@infsymbol{\cfss@markerb}}} \DeclareRobustCommand\withattack {{\cfss@infsymbol{\cfss@withattack}}} \let\attack\withattack %for texmate \DeclareRobustCommand\withinit {{\cfss@infsymbol{\cfss@withinit}}} \let\initiative\withinit %for texmate \DeclareRobustCommand\zugzwang {{\cfss@infsymbol{\cfss@zugzwang}}} \DeclareRobustCommand\withidea {{\cfss@infsymbol{\cfss@withidea}}} \DeclareRobustCommand\onlymove {{\cfss@infsymbol{\cfss@onlymove}}} \DeclareRobustCommand\diagonal {{\cfss@infsymbol{\cfss@diagonal}}} \let\boarddiagonal\diagonal %for texmate \DeclareRobustCommand\file {{\cfss@infsymbol{\cfss@file}}} \let\boardfile\file %for texmate \DeclareRobustCommand\centre {{\cfss@infsymbol{\cfss@centre}}} \let\boardcenter\centre %for texmate \DeclareRobustCommand\weakpt {{\cfss@infsymbol{\cfss@weakpt}}} \let\weak\weakpt %for texmate, symbol changed \DeclareRobustCommand\ending {{\cfss@infsymbol{\cfss@ending}}} \DeclareRobustCommand\qside {{\cfss@infsymbol{\cfss@qside}}} \let\queenside\qside %for texmate \DeclareRobustCommand\kside {{\cfss@infsymbol{\cfss@kside}}} \let\kingside\kside %for texmate \DeclareRobustCommand\etc {{\cfss@infsymbol{\cfss@etc}}} \let\chessetc\etc %for texmate \DeclareRobustCommand\morepawns {{\cfss@infsymbol{\cfss@morepawns}}} \let\pawnsno\morepawns %for texmate \DeclareRobustCommand\timelimit {{\cfss@infsymbol{\cfss@timelimit}}} \let\timetrouble\timelimit %for texmate \DeclareRobustCommand\moreroom {{\cfss@infsymbol{\cfss@moreroom}}} \let\spaceadv\moreroom %for texmate, use other symbol than texmate here! \DeclareRobustCommand\counterplay {{\cfss@infsymbol{\cfss@counterplay}}} \DeclareRobustCommand\capturesymbol {{\cfss@infsymbol{\cfss@capturesymbol}}} \InputIfFileExists{chessfss.cfg}{}{} % %Encoding files %<*lsfenc> \ProvidesFile{lsfenc.def} [2006/06/09 v1.2 Standard LaTeX file] \DeclareFontEncoding{LSF}{}{} \DeclareFontSubstitution{LSF}{skaknew}{m}{n} %% Symbols from the figurine font (LSF encoding) \DeclareTextSymbol\cfss@symrook {LSF}{82} \DeclareTextSymbol\cfss@symknight {LSF}{78} \DeclareTextSymbol\cfss@symbishop {LSF}{66} \DeclareTextSymbol\cfss@symqueen {LSF}{81} \DeclareTextSymbol\cfss@symking {LSF}{75} \DeclareTextSymbol\cfss@sympawn {LSF}{112} \DeclareTextSymbolDefault\cfss@symrook {LSF} \DeclareTextSymbolDefault\cfss@symknight {LSF} \DeclareTextSymbolDefault\cfss@symbishop {LSF} \DeclareTextSymbolDefault\cfss@symqueen {LSF} \DeclareTextSymbolDefault\cfss@symking {LSF} \DeclareTextSymbolDefault\cfss@sympawn {LSF} % %<*lsbenc> \ProvidesFile{lsbenc.def} [2006/06/09 v1.2 Standard LaTeX file] \DeclareFontEncoding{LSB}{}{} \DeclareFontSubstitution{LSB}{skaknew}{m}{n} \providecommand\cfss@whitepiececolor{} \providecommand\cfss@blackpiececolor{} \providecommand\cfss@whitefieldcolor{} \providecommand\cfss@blackfieldcolor{} \@namedef{cfss@showboardencodingLSB}{% \begin{tabular}{llllll} \multicolumn{6}{l}{\bfseries Encoding \ttfamily LSB}\\[0.5ex] Layer: & fieldmask & field & piecemask & piece & result\\ WhiteSquare & & (color) & &\boardfont\cfss@whitepiececolor 0 &\boardfont\cfss@WhiteEmptySquare\\ BlackSquare & & (color) & &\boardfont\cfss@blackpiececolor Z &\boardfont\cfss@BlackEmptySquare\\ WhiteOnWhite & & (color) & &\boardfont\cfss@whitepiececolor K &\boardfont\cfss@WhiteKingOnWhite\\ WhiteOnBlack & & (color) & &\boardfont\cfss@whitepiececolor J &\boardfont\cfss@WhiteKingOnBlack\\ BlackOnWhite & & (color) & &\boardfont\cfss@blackpiececolor k &\boardfont\cfss@BlackKingOnWhite\\ BlackOnBlack & & (color) & &\boardfont\cfss@blackpiececolor j &\boardfont\cfss@BlackKingOnBlack\\ \end{tabular}} %% Symbols from the board font (LSB encoding) \DeclareTextCommand\cfss@WhiteEmptySquare {LSB}{{\cfss@whitefieldcolor\cfss@whitepiececolor 0}} \DeclareTextCommand\cfss@BlackEmptySquare {LSB}{{\cfss@blackfieldcolor\cfss@blackpiececolor Z}} \DeclareTextCommand\cfss@WhiteKingOnWhite {LSB}{{\cfss@whitefieldcolor\cfss@whitepiececolor K}} \DeclareTextCommand\cfss@BlackKingOnWhite {LSB}{{\cfss@whitefieldcolor\cfss@blackpiececolor k}} \DeclareTextCommand\cfss@WhiteKingOnBlack {LSB}{{\cfss@blackfieldcolor\cfss@whitepiececolor J}} \DeclareTextCommand\cfss@BlackKingOnBlack {LSB}{{\cfss@blackfieldcolor\cfss@blackpiececolor j}} \DeclareTextCommand\cfss@WhiteQueenOnWhite {LSB}{{\cfss@whitefieldcolor\cfss@whitepiececolor Q}} \DeclareTextCommand\cfss@BlackQueenOnWhite {LSB}{{\cfss@whitefieldcolor\cfss@blackpiececolor q}} \DeclareTextCommand\cfss@WhiteQueenOnBlack {LSB}{{\cfss@blackfieldcolor\cfss@whitepiececolor L}} \DeclareTextCommand\cfss@BlackQueenOnBlack {LSB}{{\cfss@blackfieldcolor\cfss@blackpiececolor l}} \DeclareTextCommand\cfss@WhiteRookOnWhite {LSB}{{\cfss@whitefieldcolor\cfss@whitepiececolor R}} \DeclareTextCommand\cfss@BlackRookOnWhite {LSB}{{\cfss@whitefieldcolor\cfss@blackpiececolor r}} \DeclareTextCommand\cfss@WhiteRookOnBlack {LSB}{{\cfss@blackfieldcolor\cfss@whitepiececolor S}} \DeclareTextCommand\cfss@BlackRookOnBlack {LSB}{{\cfss@blackfieldcolor\cfss@blackpiececolor s}} \DeclareTextCommand\cfss@WhiteBishopOnWhite{LSB}{{\cfss@whitefieldcolor\cfss@whitepiececolor B}} \DeclareTextCommand\cfss@BlackBishopOnWhite{LSB}{{\cfss@whitefieldcolor\cfss@blackpiececolor b}} \DeclareTextCommand\cfss@WhiteBishopOnBlack{LSB}{{\cfss@blackfieldcolor\cfss@whitepiececolor A}} \DeclareTextCommand\cfss@BlackBishopOnBlack{LSB}{{\cfss@blackfieldcolor\cfss@blackpiececolor a}} \DeclareTextCommand\cfss@WhiteKnightOnWhite{LSB}{{\cfss@whitefieldcolor\cfss@whitepiececolor N}} \DeclareTextCommand\cfss@BlackKnightOnWhite{LSB}{{\cfss@whitefieldcolor\cfss@blackpiececolor n}} \DeclareTextCommand\cfss@WhiteKnightOnBlack{LSB}{{\cfss@blackfieldcolor\cfss@whitepiececolor M}} \DeclareTextCommand\cfss@BlackKnightOnBlack{LSB}{{\cfss@blackfieldcolor\cfss@blackpiececolor m}} \DeclareTextCommand\cfss@WhitePawnOnWhite {LSB}{{\cfss@whitefieldcolor\cfss@whitepiececolor P}} \DeclareTextCommand\cfss@BlackPawnOnWhite {LSB}{{\cfss@whitefieldcolor\cfss@blackpiececolor p}} \DeclareTextCommand\cfss@WhitePawnOnBlack {LSB}{{\cfss@blackfieldcolor\cfss@whitepiececolor O}} \DeclareTextCommand\cfss@BlackPawnOnBlack {LSB}{{\cfss@blackfieldcolor\cfss@blackpiececolor o}} %% Symbols from the board font (LSB encoding) \DeclareTextSymbolDefault\cfss@WhiteEmptySquare {LSB} \DeclareTextSymbolDefault\cfss@BlackEmptySquare {LSB} \DeclareTextSymbolDefault\cfss@WhiteKingOnWhite {LSB} \DeclareTextSymbolDefault\cfss@BlackKingOnWhite {LSB} \DeclareTextSymbolDefault\cfss@WhiteKingOnBlack {LSB} \DeclareTextSymbolDefault\cfss@BlackKingOnBlack {LSB} \DeclareTextSymbolDefault\cfss@WhiteQueenOnWhite {LSB} \DeclareTextSymbolDefault\cfss@BlackQueenOnWhite {LSB} \DeclareTextSymbolDefault\cfss@WhiteQueenOnBlack {LSB} \DeclareTextSymbolDefault\cfss@BlackQueenOnBlack {LSB} \DeclareTextSymbolDefault\cfss@WhiteRookOnWhite {LSB} \DeclareTextSymbolDefault\cfss@BlackRookOnWhite {LSB} \DeclareTextSymbolDefault\cfss@WhiteRookOnBlack {LSB} \DeclareTextSymbolDefault\cfss@BlackRookOnBlack {LSB} \DeclareTextSymbolDefault\cfss@WhiteBishopOnWhite{LSB} \DeclareTextSymbolDefault\cfss@BlackBishopOnWhite{LSB} \DeclareTextSymbolDefault\cfss@WhiteBishopOnBlack{LSB} \DeclareTextSymbolDefault\cfss@BlackBishopOnBlack{LSB} \DeclareTextSymbolDefault\cfss@WhiteKnightOnWhite{LSB} \DeclareTextSymbolDefault\cfss@BlackKnightOnWhite{LSB} \DeclareTextSymbolDefault\cfss@WhiteKnightOnBlack{LSB} \DeclareTextSymbolDefault\cfss@BlackKnightOnBlack{LSB} \DeclareTextSymbolDefault\cfss@WhitePawnOnWhite {LSB} \DeclareTextSymbolDefault\cfss@BlackPawnOnWhite {LSB} \DeclareTextSymbolDefault\cfss@WhitePawnOnBlack {LSB} \DeclareTextSymbolDefault\cfss@BlackPawnOnBlack {LSB} % %<*lsienc> \ProvidesFile{lsienc.def} [2006/06/09 v1.2 Standard LaTeX file] \DeclareFontEncoding{LSI}{}{} \DeclareFontSubstitution{LSI}{skaknew}{m}{n} %% Symbols from the figurine font (LSI encoding) \DeclareTextSymbol\cfss@castlinghyphen{LSI}{45} \DeclareTextSymbol\cfss@checksymbol {LSI}{43} \DeclareTextSymbol\cfss@bishoppair {LSI}{97} \DeclareTextSymbol\cfss@betteris {LSI}{98} \DeclareTextSymbol\cfss@wupperhand {LSI}{99} \DeclareTextSymbol\cfss@doublepawns {LSI}{100} \DeclareTextSymbol\cfss@bupperhand {LSI}{101} \DeclareTextSymbol\cfss@wbetter {LSI}{102} \DeclareTextSymbol\cfss@bbetter {LSI}{103} \DeclareTextSymbol\cfss@wdecisive {LSI}{104} \DeclareTextSymbol\cfss@bdecisive {LSI}{105} \DeclareTextSymbol\cfss@equal {LSI}{106} \DeclareTextSymbol\cfss@unclear {LSI}{107} \DeclareTextSymbol\cfss@chesssee {LSI}{108} \DeclareTextSymbol\cfss@mate {LSI}{109} \DeclareTextSymbol\cfss@compensation {LSI}{110} \DeclareTextSymbol\cfss@opposbishops {LSI}{111} \DeclareTextSymbol\cfss@seppawns {LSI}{113} \DeclareTextSymbol\cfss@passedpawn {LSI}{114} \DeclareTextSymbol\cfss@samebishops {LSI}{115} \DeclareTextSymbol\cfss@devadvantage {LSI}{116} \DeclareTextSymbol\cfss@unitedpawns {LSI}{117} \DeclareTextSymbol\cfss@with {LSI}{118} \DeclareTextSymbol\cfss@without {LSI}{119} \DeclareTextSymbol\cfss@markera {LSI}{120} \DeclareTextSymbol\cfss@markerb {LSI}{121} \DeclareTextSymbol\cfss@withattack {LSI}{65} \DeclareTextSymbol\cfss@withinit {LSI}{67} \DeclareTextSymbol\cfss@zugzwang {LSI}{68} \DeclareTextSymbol\cfss@withidea {LSI}{69} \DeclareTextSymbol\cfss@onlymove {LSI}{70} \DeclareTextSymbol\cfss@diagonal {LSI}{71} \DeclareTextSymbol\cfss@file {LSI}{72} \DeclareTextSymbol\cfss@centre {LSI}{73} \DeclareTextSymbol\cfss@weakpt {LSI}{74} \DeclareTextSymbol\cfss@ending {LSI}{76} \DeclareTextSymbol\cfss@qside {LSI}{77} \DeclareTextSymbol\cfss@kside {LSI}{79} \DeclareTextSymbol\cfss@etc {LSI}{80} \DeclareTextSymbol\cfss@morepawns {LSI}{83} \DeclareTextSymbol\cfss@timelimit {LSI}{84} \DeclareTextSymbol\cfss@moreroom {LSI}{85} \DeclareTextSymbol\cfss@counterplay {LSI}{86} \DeclareTextSymbol\cfss@capturesymbol {LSI}{88} \DeclareTextSymbolDefault\cfss@castlinghyphen{LSI} \DeclareTextSymbolDefault\cfss@checksymbol {LSI} \DeclareTextSymbolDefault\cfss@bishoppair {LSI} \DeclareTextSymbolDefault\cfss@betteris {LSI} \DeclareTextSymbolDefault\cfss@wupperhand {LSI} \DeclareTextSymbolDefault\cfss@doublepawns {LSI} \DeclareTextSymbolDefault\cfss@bupperhand {LSI} \DeclareTextSymbolDefault\cfss@wbetter {LSI} \DeclareTextSymbolDefault\cfss@bbetter {LSI} \DeclareTextSymbolDefault\cfss@wdecisive {LSI} \DeclareTextSymbolDefault\cfss@bdecisive {LSI} \DeclareTextSymbolDefault\cfss@equal {LSI} \DeclareTextSymbolDefault\cfss@unclear {LSI} \DeclareTextSymbolDefault\cfss@see {LSI} \DeclareTextSymbolDefault\cfss@mate {LSI} \DeclareTextSymbolDefault\cfss@compensation {LSI} \DeclareTextSymbolDefault\cfss@opposbishops {LSI} \DeclareTextSymbolDefault\cfss@seppawns {LSI} \DeclareTextSymbolDefault\cfss@passedpawn {LSI} \DeclareTextSymbolDefault\cfss@samebishops {LSI} \DeclareTextSymbolDefault\cfss@devadvantage {LSI} \DeclareTextSymbolDefault\cfss@unitedpawns {LSI} \DeclareTextSymbolDefault\cfss@with {LSI} \DeclareTextSymbolDefault\cfss@without {LSI} \DeclareTextSymbolDefault\cfss@markera {LSI} \DeclareTextSymbolDefault\cfss@markerb {LSI} \DeclareTextSymbolDefault\cfss@withattack {LSI} \DeclareTextSymbolDefault\cfss@withinit {LSI} \DeclareTextSymbolDefault\cfss@zugzwang {LSI} \DeclareTextSymbolDefault\cfss@withidea {LSI} \DeclareTextSymbolDefault\cfss@onlymove {LSI} \DeclareTextSymbolDefault\cfss@diagonal {LSI} \DeclareTextSymbolDefault\cfss@file {LSI} \DeclareTextSymbolDefault\cfss@centre {LSI} \DeclareTextSymbolDefault\cfss@weakpt {LSI} \DeclareTextSymbolDefault\cfss@ending {LSI} \DeclareTextSymbolDefault\cfss@qside {LSI} \DeclareTextSymbolDefault\cfss@kside {LSI} \DeclareTextSymbolDefault\cfss@etc {LSI} \DeclareTextSymbolDefault\cfss@morepawns {LSI} \DeclareTextSymbolDefault\cfss@timelimit {LSI} \DeclareTextSymbolDefault\cfss@moreroom {LSI} \DeclareTextSymbolDefault\cfss@counterplay {LSI} \DeclareTextSymbolDefault\cfss@capturesymbol {LSI} % %<*lsb1enc> %% %% LSB1: An encoding for chessboard chars %% that makes it possible to color field and the piece differently. %% In this encoding the pieces/fields are build with two characters: %% as field-Layer: pieceOnBlack and as piece-layer: pieceOnWhite. %% The solid fieldmask layer and the piecemask layer are not used. %% The encoding (only) works with fonts that can also be encoded as LSB. %% It will not give a professional looking result! %% It will not work well if the pieceOnWhite don't cover the pieceOnBlack exactly. \ProvidesFile{lsb1enc.def} [2006/06/09 v1.1 Standard LaTeX file] \DeclareFontEncoding{LSB1}{}{} \DeclareFontSubstitution{LSB1}{skaknew}{m}{n} \providecommand\cfss@whitefieldcolor{} \providecommand\cfss@blackfieldcolor{} \providecommand\cfss@whitepiececolor{} \providecommand\cfss@blackpiececolor{} \providecommand\cfss@composefpcolorchar[4]{%range layer: f, p \makebox[0pt][l]{% \csname cfss@#1fieldcolor\endcsname#2}% {\csname cfss@#3piececolor\endcsname#4}}% \@namedef{cfss@showboardencodingLSB1}{% \begin{tabular}{llllll} \multicolumn{6}{l}{\bfseries Encoding \ttfamily LSB1}\\[0.5ex] Layer: & fieldmask & field & piecemask & piece & result\\ WhiteSquare & &\boardfont\cfss@whitefieldcolor 0 & & &\boardfont\cfss@WhiteEmptySquare\\ BlackSquare & &\boardfont\cfss@blackfieldcolor Z & & &\boardfont\cfss@BlackEmptySquare\\ WhiteOnWhite & & & &\boardfont\cfss@whitepiececolor K &\boardfont\cfss@WhiteKingOnWhite\\ WhiteOnBlack & &\boardfont\cfss@blackfieldcolor J & &\boardfont\cfss@whitepiececolor K &\boardfont\cfss@WhiteKingOnBlack\\ BlackOnWhite & & & &\boardfont\cfss@blackpiececolor k &\boardfont\cfss@BlackKingOnWhite\\ BlackOnBlack & &\boardfont\cfss@blackfieldcolor j & &\boardfont\cfss@blackpiececolor k &\boardfont\cfss@BlackKingOnBlack\\ \end{tabular}} \DeclareTextCommand\cfss@WhiteEmptySquare {LSB1}{{\cfss@whitefieldcolor 0}} \DeclareTextCommand\cfss@BlackEmptySquare {LSB1}{{\cfss@blackfieldcolor Z}} \DeclareTextCommand\cfss@WhiteKingOnWhite {LSB1}{\cfss@composefpcolorchar{white}{}{white}{K}} \DeclareTextCommand\cfss@BlackKingOnWhite {LSB1}{\cfss@composefpcolorchar{white}{}{black}{k}} \DeclareTextCommand\cfss@WhiteKingOnBlack {LSB1}{\cfss@composefpcolorchar{black}{J}{white}{K}} \DeclareTextCommand\cfss@BlackKingOnBlack {LSB1}{\cfss@composefpcolorchar{black}{j}{black}{k}} \DeclareTextCommand\cfss@WhiteQueenOnWhite {LSB1}{\cfss@composefpcolorchar{white}{}{white}{Q}} \DeclareTextCommand\cfss@BlackQueenOnWhite {LSB1}{\cfss@composefpcolorchar{white}{}{black}{q}} \DeclareTextCommand\cfss@WhiteQueenOnBlack {LSB1}{\cfss@composefpcolorchar{black}{L}{white}{Q}} \DeclareTextCommand\cfss@BlackQueenOnBlack {LSB1}{\cfss@composefpcolorchar{black}{l}{black}{q}} \DeclareTextCommand\cfss@WhiteRookOnWhite {LSB1}{\cfss@composefpcolorchar{white}{}{white}{R}} \DeclareTextCommand\cfss@BlackRookOnWhite {LSB1}{\cfss@composefpcolorchar{white}{}{black}{r}} \DeclareTextCommand\cfss@WhiteRookOnBlack {LSB1}{\cfss@composefpcolorchar{black}{S}{white}{R}} \DeclareTextCommand\cfss@BlackRookOnBlack {LSB1}{\cfss@composefpcolorchar{black}{s}{black}{r}} \DeclareTextCommand\cfss@WhiteBishopOnWhite{LSB1}{\cfss@composefpcolorchar{white}{}{white}{B}} \DeclareTextCommand\cfss@BlackBishopOnWhite{LSB1}{\cfss@composefpcolorchar{white}{}{black}{b}} \DeclareTextCommand\cfss@WhiteBishopOnBlack{LSB1}{\cfss@composefpcolorchar{black}{A}{white}{B}} \DeclareTextCommand\cfss@BlackBishopOnBlack{LSB1}{\cfss@composefpcolorchar{black}{a}{black}{b}} \DeclareTextCommand\cfss@WhiteKnightOnWhite{LSB1}{\cfss@composefpcolorchar{white}{}{white}{N}} \DeclareTextCommand\cfss@BlackKnightOnWhite{LSB1}{\cfss@composefpcolorchar{white}{}{black}{n}} \DeclareTextCommand\cfss@WhiteKnightOnBlack{LSB1}{\cfss@composefpcolorchar{black}{M}{white}{N}} \DeclareTextCommand\cfss@BlackKnightOnBlack{LSB1}{\cfss@composefpcolorchar{black}{m}{black}{n}} \DeclareTextCommand\cfss@WhitePawnOnWhite {LSB1}{\cfss@composefpcolorchar{white}{}{white}{P}} \DeclareTextCommand\cfss@BlackPawnOnWhite {LSB1}{\cfss@composefpcolorchar{white}{}{black}{p}} \DeclareTextCommand\cfss@WhitePawnOnBlack {LSB1}{\cfss@composefpcolorchar{black}{O}{white}{P}} \DeclareTextCommand\cfss@BlackPawnOnBlack {LSB1}{\cfss@composefpcolorchar{black}{o}{black}{p}} % %<*lsb2enc> %% %% LSB2: An encoding for chessboard chars %% that makes it possible to color field and the piece differently. %% In this encoding the pieces/fields are build only with the pieceOnWhite characters. %% Black fields must get their color through commands like \colorbox. %% The color of the background will shine through the inner of the pieces %% The solid fieldmask layer, the field layer and the piecemask layer are not used. %% The encoding works with fonts that have the pieceOnWhite chars. (This should be all fonts) %% It will not give a professional looking result because of the colored inside of the chars! \ProvidesFile{lsb2enc.def} [2006/06/09 v1.1 Standard LaTeX file] \DeclareFontEncoding{LSB2}{}{} \DeclareFontSubstitution{LSB2}{skaknew}{m}{n} \providecommand\cfss@whitepiececolor{} \providecommand\cfss@blackpiececolor{} \providecommand\cfss@composepcolorchar[2]{%range layer: p {\csname cfss@#1piececolor\endcsname#2}}% \@namedef{cfss@showboardencodingLSB2}{% \begin{tabular}{llllll} \multicolumn{6}{l}{\bfseries Encoding \ttfamily LSB2}\\ \multicolumn{6}{l}{fields have no color!}\\[0.5ex] Layer: & fieldmask & field & piecemask & piece & result\\ WhiteSquare & & & & &\boardfont\cfss@WhiteEmptySquare\\ BlackSquare & & & & &\boardfont\cfss@BlackEmptySquare\\ WhiteOnWhite & & & &\boardfont\cfss@whitepiececolor K &\boardfont\cfss@WhiteKingOnWhite\\ WhiteOnBlack & & & &\boardfont\cfss@whitepiececolor K &\boardfont\cfss@WhiteKingOnBlack\\ BlackOnWhite & & & &\boardfont\cfss@blackpiececolor k &\boardfont\cfss@BlackKingOnWhite\\ BlackOnBlack & & & &\boardfont\cfss@blackpiececolor k &\boardfont\cfss@BlackKingOnBlack\\ \end{tabular}} \DeclareTextCommand\cfss@WhiteEmptySquare {LSB2}{\phantom{Z}} \DeclareTextCommand\cfss@BlackEmptySquare {LSB2}{\phantom{Z}} \DeclareTextCommand\cfss@WhiteKingOnWhite {LSB2}{\cfss@composepcolorchar{white}{K}} \DeclareTextCommand\cfss@BlackKingOnWhite {LSB2}{\cfss@composepcolorchar{black}{k}} \DeclareTextCommand\cfss@WhiteKingOnBlack {LSB2}{\cfss@composepcolorchar{white}{K}} \DeclareTextCommand\cfss@BlackKingOnBlack {LSB2}{\cfss@composepcolorchar{black}{k}} \DeclareTextCommand\cfss@WhiteQueenOnWhite {LSB2}{\cfss@composepcolorchar{white}{Q}} \DeclareTextCommand\cfss@BlackQueenOnWhite {LSB2}{\cfss@composepcolorchar{black}{q}} \DeclareTextCommand\cfss@WhiteQueenOnBlack {LSB2}{\cfss@composepcolorchar{white}{Q}} \DeclareTextCommand\cfss@BlackQueenOnBlack {LSB2}{\cfss@composepcolorchar{black}{q}} \DeclareTextCommand\cfss@WhiteRookOnWhite {LSB2}{\cfss@composepcolorchar{white}{R}} \DeclareTextCommand\cfss@BlackRookOnWhite {LSB2}{\cfss@composepcolorchar{black}{r}} \DeclareTextCommand\cfss@WhiteRookOnBlack {LSB2}{\cfss@composepcolorchar{white}{R}} \DeclareTextCommand\cfss@BlackRookOnBlack {LSB2}{\cfss@composepcolorchar{black}{r}} \DeclareTextCommand\cfss@WhiteBishopOnWhite{LSB2}{\cfss@composepcolorchar{white}{B}} \DeclareTextCommand\cfss@BlackBishopOnWhite{LSB2}{\cfss@composepcolorchar{black}{b}} \DeclareTextCommand\cfss@WhiteBishopOnBlack{LSB2}{\cfss@composepcolorchar{white}{B}} \DeclareTextCommand\cfss@BlackBishopOnBlack{LSB2}{\cfss@composepcolorchar{black}{b}} \DeclareTextCommand\cfss@WhiteKnightOnWhite{LSB2}{\cfss@composepcolorchar{white}{N}} \DeclareTextCommand\cfss@BlackKnightOnWhite{LSB2}{\cfss@composepcolorchar{black}{n}} \DeclareTextCommand\cfss@WhiteKnightOnBlack{LSB2}{\cfss@composepcolorchar{white}{N}} \DeclareTextCommand\cfss@BlackKnightOnBlack{LSB2}{\cfss@composepcolorchar{black}{n}} \DeclareTextCommand\cfss@WhitePawnOnWhite {LSB2}{\cfss@composepcolorchar{white}{P}} \DeclareTextCommand\cfss@BlackPawnOnWhite {LSB2}{\cfss@composepcolorchar{black}{p}} \DeclareTextCommand\cfss@WhitePawnOnBlack {LSB2}{\cfss@composepcolorchar{white}{P}} \DeclareTextCommand\cfss@BlackPawnOnBlack {LSB2}{\cfss@composepcolorchar{black}{p}} % %<*lsb3enc> %% %% LSB3: An encoding for chessboard chars. %% that makes it possible to color field and the piece differently. %% In this encoding the pieces/fields are build only with the BlackpieceOnWhite characters. %% Black fields must get their color through commands like \colorbox. %% Black and white pieces must be colored differently! %% The color of the background will shine through the inner of the pieces, but not %% so much, as black pieces are more solid. %% The solid fieldmask layer, the field layer and the piecemask layer are not used. %% The encoding works with fonts that have the pieceOnWhite chars. (This should be all fonts) \ProvidesFile{lsb3enc.def} [2006/06/09 v1.1 Standard LaTeX file] \DeclareFontEncoding{LSB3}{}{} \DeclareFontSubstitution{LSB3}{skaknew}{m}{n} \providecommand\cfss@whitepiececolor{} \providecommand\cfss@blackpiececolor{} \providecommand\cfss@composepcolorchar[2]{%range layer: p {\csname cfss@#1piececolor\endcsname#2}}% \@namedef{cfss@showboardencodingLSB3}{% \begin{tabular}{llllll} \multicolumn{6}{l}{\bfseries Encoding \ttfamily LSB3}\\ \multicolumn{6}{l}{fields have no char or color!}\\ \multicolumn{6}{l}{White and black pieces use the same char!}\\[0.5ex] Layer: & fieldmask & field & piecemask & piece & result\\ WhiteSquare & & & & &\boardfont\cfss@WhiteEmptySquare\\ BlackSquare & & & & &\boardfont\cfss@BlackEmptySquare\\ WhiteOnWhite & & & &\boardfont\cfss@whitepiececolor k &\boardfont\cfss@WhiteKingOnWhite\\ WhiteOnBlack & & & &\boardfont\cfss@whitepiececolor k &\boardfont\cfss@WhiteKingOnBlack\\ BlackOnWhite & & & &\boardfont\cfss@blackpiececolor k &\boardfont\cfss@BlackKingOnWhite\\ BlackOnBlack & & & &\boardfont\cfss@blackpiececolor k &\boardfont\cfss@BlackKingOnBlack\\ \end{tabular}} \DeclareTextCommand\cfss@WhiteEmptySquare {LSB3}{\phantom{Z}} \DeclareTextCommand\cfss@BlackEmptySquare {LSB3}{\phantom{Z}} \DeclareTextCommand\cfss@WhiteKingOnWhite {LSB3}{\cfss@composepcolorchar{white}{k}} \DeclareTextCommand\cfss@BlackKingOnWhite {LSB3}{\cfss@composepcolorchar{black}{k}} \DeclareTextCommand\cfss@WhiteKingOnBlack {LSB3}{\cfss@composepcolorchar{white}{k}} \DeclareTextCommand\cfss@BlackKingOnBlack {LSB3}{\cfss@composepcolorchar{black}{k}} \DeclareTextCommand\cfss@WhiteQueenOnWhite {LSB3}{\cfss@composepcolorchar{white}{q}} \DeclareTextCommand\cfss@BlackQueenOnWhite {LSB3}{\cfss@composepcolorchar{black}{q}} \DeclareTextCommand\cfss@WhiteQueenOnBlack {LSB3}{\cfss@composepcolorchar{white}{q}} \DeclareTextCommand\cfss@BlackQueenOnBlack {LSB3}{\cfss@composepcolorchar{black}{q}} \DeclareTextCommand\cfss@WhiteRookOnWhite {LSB3}{\cfss@composepcolorchar{white}{r}} \DeclareTextCommand\cfss@BlackRookOnWhite {LSB3}{\cfss@composepcolorchar{black}{r}} \DeclareTextCommand\cfss@WhiteRookOnBlack {LSB3}{\cfss@composepcolorchar{white}{r}} \DeclareTextCommand\cfss@BlackRookOnBlack {LSB3}{\cfss@composepcolorchar{black}{r}} \DeclareTextCommand\cfss@WhiteBishopOnWhite{LSB3}{\cfss@composepcolorchar{white}{b}} \DeclareTextCommand\cfss@BlackBishopOnWhite{LSB3}{\cfss@composepcolorchar{black}{b}} \DeclareTextCommand\cfss@WhiteBishopOnBlack{LSB3}{\cfss@composepcolorchar{white}{b}} \DeclareTextCommand\cfss@BlackBishopOnBlack{LSB3}{\cfss@composepcolorchar{black}{b}} \DeclareTextCommand\cfss@WhiteKnightOnWhite{LSB3}{\cfss@composepcolorchar{white}{n}} \DeclareTextCommand\cfss@BlackKnightOnWhite{LSB3}{\cfss@composepcolorchar{black}{n}} \DeclareTextCommand\cfss@WhiteKnightOnBlack{LSB3}{\cfss@composepcolorchar{white}{n}} \DeclareTextCommand\cfss@BlackKnightOnBlack{LSB3}{\cfss@composepcolorchar{black}{n}} \DeclareTextCommand\cfss@WhitePawnOnWhite {LSB3}{\cfss@composepcolorchar{white}{p}} \DeclareTextCommand\cfss@BlackPawnOnWhite {LSB3}{\cfss@composepcolorchar{black}{p}} \DeclareTextCommand\cfss@WhitePawnOnBlack {LSB3}{\cfss@composepcolorchar{white}{p}} \DeclareTextCommand\cfss@BlackPawnOnBlack {LSB3}{\cfss@composepcolorchar{black}{p}} % %<*lsbc1enc> %% %% LSBC1: An encoding for chessboard chars. %% that makes it possible to color field and the piece differently. %% In this encoding the pieces/fields are build with a transparent fieldmask, %% the piecemask and the pieceOnWhite. %% If a color package is loaded, the piecemask will be white. %% The solid fieldmask layer is not used. %% The encoding works with fonts that have transparent fieldmask on position 149-154 %% piecemask (T-Y) and the pieceOnWhite chars. %% A possible free font is skaknew. %% DiaTTFri.ttf (from fritz) also has the necessary characters but must be converted %% reencoded first. \ProvidesFile{lsbc1enc.def} [2006/05/22 v1.0 Standard LaTeX file] \DeclareFontEncoding{LSBC1}{}{} \DeclareFontSubstitution{LSBC1}{skaknew}{m}{n} \AtBeginDocument{% \@ifundefined{color} {\def\color#1{}% \PackageWarning{chessfss} {You haven't load a color package. I will define the color command to do nothing}{}} {}} \providecommand\cfss@whitefieldcolor{} \providecommand\cfss@blackfieldcolor{} \providecommand\cfss@whiteonwhitepiecemaskcolor{\color{white}} \providecommand\cfss@whiteonblackpiecemaskcolor{\color{white}} \providecommand\cfss@blackonwhitepiecemaskcolor{\color{white}} \providecommand\cfss@blackonblackpiecemaskcolor{\color{white}} \providecommand\cfss@whitepiececolor{} \providecommand\cfss@blackpiececolor{} \providecommand\cfss@composefpmpcolorchar[6]{%range layer. f, pm, p \makebox[0pt][l]{% fieldlayer \csname cfss@#1fieldcolor\endcsname#2}% \makebox[0pt][l]{% piecemasklayer \csname cfss@#3piecemaskcolor\endcsname#4}% {\csname cfss@#5piececolor\endcsname#6}}% piecelayer \@namedef{cfss@showboardencodingLSBC1}{% \begin{tabular}{llllll} \multicolumn{6}{l}{\bfseries Encoding \ttfamily LSBC1}\\[0.5ex] Layer: &fieldmask &field &piecemask &piece &result\\ WhiteSquare & &\boardfont\cfss@whitefieldcolor 0 & & &\boardfont\cfss@WhiteEmptySquare\\ BlackSquare & &\boardfont\cfss@blackfieldcolor Z & & &\boardfont\cfss@BlackEmptySquare\\ WhiteOnWhite & & &\boardfont\cfss@whiteonwhitepiecemaskcolor T &\boardfont\cfss@whitepiececolor K &\boardfont\cfss@WhiteKingOnWhite\\ WhiteOnBlack & &\boardfont\cfss@blackfieldcolor\symbol{149} &\boardfont\cfss@whiteonblackpiecemaskcolor T &\boardfont\cfss@whitepiececolor K &\boardfont\cfss@WhiteKingOnBlack\\ BlackOnWhite & & &\boardfont\cfss@blackonwhitepiecemaskcolor T &\boardfont\cfss@blackpiececolor k &\boardfont\cfss@BlackKingOnWhite\\ BlackOnBlack & &\boardfont\cfss@blackfieldcolor\symbol{149} &\boardfont\cfss@blackonblackpiecemaskcolor T &\boardfont\cfss@blackpiececolor k &\boardfont\cfss@BlackKingOnBlack\\ \end{tabular}} \DeclareTextCommand\cfss@WhiteEmptySquare {LSBC1}{{\cfss@whitefieldcolor 0}} \DeclareTextCommand\cfss@BlackEmptySquare {LSBC1}{{\cfss@blackfieldcolor Z}} \DeclareTextCommand\cfss@WhiteKingOnWhite {LSBC1} {\cfss@composefpmpcolorchar {}{} {whiteonwhite}{T} {white}{K}} \DeclareTextCommand\cfss@BlackKingOnWhite {LSBC1} {\cfss@composefpmpcolorchar {}{} {blackonwhite}{T} {black}{k}} \DeclareTextCommand\cfss@WhiteKingOnBlack {LSBC1} {\cfss@composefpmpcolorchar {black}{\symbol{149}} {whiteonblack}{T} {white}{K}} \DeclareTextCommand\cfss@BlackKingOnBlack {LSBC1} {\cfss@composefpmpcolorchar {black}{\symbol{149}} {blackonblack}{T} {black}{k}} \DeclareTextCommand\cfss@WhiteQueenOnWhite {LSBC1} {\cfss@composefpmpcolorchar {}{} {whiteonwhite}{X} {white}{Q}} \DeclareTextCommand\cfss@BlackQueenOnWhite {LSBC1} {\cfss@composefpmpcolorchar {}{} {blackonwhite}{X} {black}{q}} \DeclareTextCommand\cfss@WhiteQueenOnBlack {LSBC1} {\cfss@composefpmpcolorchar {black}{\symbol{153}} {whiteonblack}{X} {white}{Q}} \DeclareTextCommand\cfss@BlackQueenOnBlack {LSBC1} {\cfss@composefpmpcolorchar {black}{\symbol{153}} {blackonblack}{X} {black}{q}} \DeclareTextCommand\cfss@WhiteRookOnWhite {LSBC1} {\cfss@composefpmpcolorchar {}{} {whiteonwhite}{V} {white}{R}} \DeclareTextCommand\cfss@BlackRookOnWhite {LSBC1} {\cfss@composefpmpcolorchar {}{} {blackonwhite}{V} {black}{r}} \DeclareTextCommand\cfss@WhiteRookOnBlack {LSBC1} {\cfss@composefpmpcolorchar {black}{\symbol{151}} {whiteonblack}{V} {white}{R}} \DeclareTextCommand\cfss@BlackRookOnBlack {LSBC1} {\cfss@composefpmpcolorchar {black}{\symbol{151}} {blackonblack}{V} {black}{r}} \DeclareTextCommand\cfss@WhiteBishopOnWhite {LSBC1} {\cfss@composefpmpcolorchar {}{} {whiteonwhite}{W} {white}{B}} \DeclareTextCommand\cfss@BlackBishopOnWhite {LSBC1} {\cfss@composefpmpcolorchar {}{} {blackonwhite}{W} {black}{b}} \DeclareTextCommand\cfss@WhiteBishopOnBlack {LSBC1} {\cfss@composefpmpcolorchar {black}{\symbol{152}} {whiteonblack}{W} {white}{B}} \DeclareTextCommand\cfss@BlackBishopOnBlack {LSBC1} {\cfss@composefpmpcolorchar {black}{\symbol{152}} {blackonblack}{W} {black}{b}} \DeclareTextCommand\cfss@WhiteKnightOnWhite {LSBC1} {\cfss@composefpmpcolorchar {}{} {whiteonwhite}{U} {white}{N}} \DeclareTextCommand\cfss@BlackKnightOnWhite {LSBC1} {\cfss@composefpmpcolorchar {}{} {blackonwhite}{U} {black}{n}} \DeclareTextCommand\cfss@WhiteKnightOnBlack {LSBC1} {\cfss@composefpmpcolorchar {black}{\symbol{150}} {whiteonblack}{U} {white}{N}} \DeclareTextCommand\cfss@BlackKnightOnBlack {LSBC1} {\cfss@composefpmpcolorchar {black}{\symbol{150}} {blackonblack}{U} {black}{n}} \DeclareTextCommand\cfss@WhitePawnOnWhite {LSBC1} {\cfss@composefpmpcolorchar {}{} {whiteonwhite}{Y} {white}{P}} \DeclareTextCommand\cfss@BlackPawnOnWhite {LSBC1} {\cfss@composefpmpcolorchar {}{} {blackonwhite}{Y} {black}{p}} \DeclareTextCommand\cfss@WhitePawnOnBlack {LSBC1} {\cfss@composefpmpcolorchar {black}{\symbol{154}} {whiteonblack}{Y} {white}{P}} \DeclareTextCommand\cfss@BlackPawnOnBlack {LSBC1} {\cfss@composefpmpcolorchar {black}{\symbol{154}} {blackonblack}{Y} {black}{p}} % %<*lsbc2enc> %% %% LSBC2: An encoding for chessboard chars. %% that makes it possible to color field and the piece differently. %% In this encoding the pieces/fields are build with a solid fieldmask, %% a transparent fieldmask and pieceOnWhite chars. %% If a color package is loaded, the piecemask will be white. %% The piecemask layer is not used. %% The encoding works with fonts that have solid fieldmask on position 49-54, %% transparent fieldmask on position 149-154 and the pieceOnWhite chars. %% A possible free font is skaknew. (To my knowledge it is the only one with all chars) \ProvidesFile{lsbc2enc.def} [2006/05/22 v1.0 Standard LaTeX file] \DeclareFontEncoding{LSBC2}{}{} \DeclareFontSubstitution{LSBC2}{skaknew}{m}{n} \AtBeginDocument{\@ifundefined{color}{% \def\color#1{}% \PackageWarning{chessfss} {You haven't load a color package. I will define the color command to do nothing}{}}{}} \providecommand\cfss@whitefieldmaskcolor{\color{white}} \providecommand\cfss@blackfieldmaskcolor{\color{gray}} \providecommand\cfss@whitefieldcolor{} \providecommand\cfss@blackfieldcolor{} \providecommand\cfss@whitepiececolor{} \providecommand\cfss@blackpiececolor{} \providecommand\cfss@composefmfpcolorchar[6]{%range layer. fm, f, p \makebox[0pt][l]{% \csname cfss@#1fieldmaskcolor\endcsname#2}% \makebox[0pt][l]{% \csname cfss@#3fieldcolor\endcsname#4}% {\csname cfss@#5piececolor\endcsname#6}}% \@namedef{cfss@showboardencodingLSBC2}{% \begin{tabular}{llllll} \multicolumn{6}{l}{\bfseries Encoding \ttfamily LSBC2}\\[0.5ex] Layer: & fieldmask & field & piecemask & piece &result\\ WhiteSquare &\boardfont\cfss@whitefieldmaskcolor z & & & &\boardfont\cfss@WhiteEmptySquare\\ BlackSquare &\boardfont\cfss@blackfieldmaskcolor z &\boardfont\cfss@blackfieldcolor Z & & &\boardfont\cfss@BlackEmptySquare\\ WhiteOnWhite &\boardfont\cfss@whitefieldmaskcolor 1 &\boardfont & &\boardfont\cfss@whitepiececolor K &\boardfont\cfss@WhiteKingOnWhite\\ WhiteOnBlack &\boardfont\cfss@blackfieldmaskcolor 1 &\boardfont\cfss@blackfieldcolor\symbol{149} & &\boardfont\cfss@whitepiececolor K &\boardfont\cfss@WhiteKingOnBlack\\ BlackOnWhite &\boardfont\cfss@whitefieldmaskcolor 1 &\boardfont & &\boardfont\cfss@blackpiececolor k &\boardfont\cfss@BlackKingOnWhite\\ BlackOnBlack &\boardfont\cfss@blackfieldmaskcolor 1 &\boardfont\cfss@blackfieldcolor\symbol{149} & &\boardfont\cfss@blackpiececolor k &\boardfont\cfss@BlackKingOnBlack\\ \end{tabular}} \DeclareTextCommand\cfss@WhiteEmptySquare {LSBC2}{{\cfss@whitefieldmaskcolor z}} \DeclareTextCommand\cfss@BlackEmptySquare {LSBC2} {{\makebox[0pt][l]{\cfss@blackfieldmaskcolor z}}{\cfss@blackfieldcolor Z}} \DeclareTextCommand\cfss@WhiteKingOnWhite {LSBC2} {\cfss@composefmfpcolorchar {white}{1} {}{} {white}{K}} \DeclareTextCommand\cfss@BlackKingOnWhite {LSBC2} {\cfss@composefmfpcolorchar {white}{1} {}{} {black}{k}} \DeclareTextCommand\cfss@WhiteKingOnBlack {LSBC2} {\cfss@composefmfpcolorchar {black}{1} {black}{\symbol{149}} {white}{K}} \DeclareTextCommand\cfss@BlackKingOnBlack {LSBC2} {\cfss@composefmfpcolorchar {black}{1} {black}{\symbol{149}} {black}{k}} \DeclareTextCommand\cfss@WhiteQueenOnWhite {LSBC2} {\cfss@composefmfpcolorchar {white}{5} {}{} {white}{Q}} \DeclareTextCommand\cfss@BlackQueenOnWhite {LSBC2} {\cfss@composefmfpcolorchar {white}{5} {}{} {black}{q}} \DeclareTextCommand\cfss@WhiteQueenOnBlack {LSBC2} {\cfss@composefmfpcolorchar {black}{5} {black}{\symbol{153}} {white}{Q}} \DeclareTextCommand\cfss@BlackQueenOnBlack {LSBC2} {\cfss@composefmfpcolorchar {black}{5} {black}{\symbol{153}} {black}{q}} \DeclareTextCommand\cfss@WhiteRookOnWhite {LSBC2} {\cfss@composefmfpcolorchar {white}{3} {}{} {white}{R}} \DeclareTextCommand\cfss@BlackRookOnWhite {LSBC2} {\cfss@composefmfpcolorchar {white}{3} {}{} {black}{r}} \DeclareTextCommand\cfss@WhiteRookOnBlack {LSBC2} {\cfss@composefmfpcolorchar {black}{3} {black}{\symbol{151}} {white}{R}} \DeclareTextCommand\cfss@BlackRookOnBlack {LSBC2} {\cfss@composefmfpcolorchar {black}{3} {black}{\symbol{151}} {black}{r}} \DeclareTextCommand\cfss@WhiteBishopOnWhite {LSBC2} {\cfss@composefmfpcolorchar {white}{4} {}{} {white}{B}} \DeclareTextCommand\cfss@BlackBishopOnWhite {LSBC2} {\cfss@composefmfpcolorchar {white}{4} {}{} {black}{b}} \DeclareTextCommand\cfss@WhiteBishopOnBlack {LSBC2} {\cfss@composefmfpcolorchar {black}{4} {black}{\symbol{152}} {white}{B}} \DeclareTextCommand\cfss@BlackBishopOnBlack {LSBC2} {\cfss@composefmfpcolorchar {black}{4} {black}{\symbol{152}} {black}{b}} \DeclareTextCommand\cfss@WhiteKnightOnWhite {LSBC2} {\cfss@composefmfpcolorchar {white}{2} {}{} {white}{N}} \DeclareTextCommand\cfss@BlackKnightOnWhite {LSBC2} {\cfss@composefmfpcolorchar {white}{2} {}{} {black}{n}} \DeclareTextCommand\cfss@WhiteKnightOnBlack {LSBC2} {\cfss@composefmfpcolorchar {black}{2} {black}{\symbol{150}} {white}{N}} \DeclareTextCommand\cfss@BlackKnightOnBlack {LSBC2} {\cfss@composefmfpcolorchar {black}{2} {black}{\symbol{150}} {black}{n}} \DeclareTextCommand\cfss@WhitePawnOnWhite {LSBC2} {\cfss@composefmfpcolorchar {white}{6} {}{} {white}{P}} \DeclareTextCommand\cfss@BlackPawnOnWhite {LSBC2} {\cfss@composefmfpcolorchar {white}{6} {}{} {black}{p}} \DeclareTextCommand\cfss@WhitePawnOnBlack {LSBC2} {\cfss@composefmfpcolorchar {black}{6} {black}{\symbol{154}} {white}{P}} \DeclareTextCommand\cfss@BlackPawnOnBlack {LSBC2} {\cfss@composefmfpcolorchar {black}{6} {black}{\symbol{154}} {black}{p}} % %<*lsbc3enc> %% %% LSBC3: An encoding for chessboard chars. %% that makes it possible to color field and the piece differently. %% In this encoding the pieces/fields are build with a solid fieldmask, %% a transparent fieldmask, a piecemask and pieceOnWhite chars. %% If a color package is loaded, the piecemask will be white. %% The encoding works with fonts that have solid fieldmasks on position 49-54, %% transparent fieldmasks on position 149-154, piecemask on T-Y and the pieceOnWhite chars. %% A possible free font is skaknew. (To my knowledge it is the only one with all chars) \ProvidesFile{lsbc3enc.def} [2006/05/22 v1.0 Standard LaTeX file] \DeclareFontEncoding{LSBC3}{}{} \DeclareFontSubstitution{LSBC3}{skaknew}{m}{n} \AtBeginDocument{\@ifundefined{color}{% \def\color#1{}% \PackageWarning{chessfss} {You haven't load a color package. I will define the color command to do nothing}{}}{}} \providecommand\cfss@whitefieldmaskcolor{\color{white}} \providecommand\cfss@blackfieldmaskcolor{\color{gray}} \providecommand\cfss@whitefieldcolor{} \providecommand\cfss@blackfieldcolor{} \providecommand\cfss@whiteonwhitepiecemaskcolor{\color{white}} \providecommand\cfss@whiteonblackpiecemaskcolor{\color{white}} \providecommand\cfss@blackonwhitepiecemaskcolor{\color{white}} \providecommand\cfss@blackonblackpiecemaskcolor{\color{white}} \providecommand\cfss@whitepiececolor{} \providecommand\cfss@blackpiececolor{} \providecommand\cfss@composefmfpmpcolorchar[8]{%range layer. fm, f, pm, p \makebox[0pt][l]{% \csname cfss@#1fieldmaskcolor\endcsname#2}% \makebox[0pt][l]{% \csname cfss@#3fieldcolor\endcsname#4}% \makebox[0pt][l]{% \csname cfss@#5piecemaskcolor\endcsname#6}% {\csname cfss@#7piececolor\endcsname#8}}% \@namedef{cfss@showboardencodingLSBC3}{% \begin{tabular}{llllll} \multicolumn{6}{l}{\bfseries Encoding \ttfamily LSBC3}\\[0.5ex] Layer: & fieldmask & field & piecemask & piece & result\\ WhiteSquare &\boardfont\cfss@whitefieldmaskcolor z & & & &\boardfont\cfss@WhiteEmptySquare\\ BlackSquare &\boardfont\cfss@blackfieldmaskcolor z &\boardfont\cfss@blackfieldcolor Z & & &\boardfont\cfss@BlackEmptySquare\\ WhiteOnWhite &\boardfont\cfss@whitefieldmaskcolor 1 & &\boardfont\cfss@whiteonwhitepiecemaskcolor T &\boardfont\cfss@whitepiececolor K &\boardfont\cfss@WhiteKingOnWhite\\ WhiteOnBlack &\boardfont\cfss@blackfieldmaskcolor 1 &\boardfont\cfss@blackfieldcolor\symbol{149} &\boardfont\cfss@whiteonblackpiecemaskcolor T &\boardfont\cfss@whitepiececolor K &\boardfont\cfss@WhiteKingOnBlack\\ BlackOnWhite &\boardfont\cfss@whitefieldmaskcolor 1 & &\boardfont\cfss@blackonwhitepiecemaskcolor T &\boardfont\cfss@blackpiececolor k &\boardfont\cfss@BlackKingOnWhite\\ BlackOnBlack &\boardfont\cfss@blackfieldmaskcolor 1 &\boardfont\cfss@blackfieldcolor\symbol{149} &\boardfont\cfss@blackonblackpiecemaskcolor T &\boardfont\cfss@blackpiececolor k &\boardfont\cfss@BlackKingOnBlack\\ \end{tabular}} \DeclareTextCommand\cfss@WhiteEmptySquare {LSBC3}{{\cfss@whitefieldmaskcolor z}} \DeclareTextCommand\cfss@BlackEmptySquare {LSBC3}% {{\makebox[0pt][l]{\cfss@blackfieldmaskcolor z}}{\cfss@blackfieldcolor Z}} \DeclareTextCommand\cfss@WhiteKingOnWhite {LSBC3}% {\cfss@composefmfpmpcolorchar {white}{1} {}{} {whiteonwhite}{T} {white}{K}} \DeclareTextCommand\cfss@BlackKingOnWhite {LSBC3} {\cfss@composefmfpmpcolorchar {white}{1} {}{} {blackonwhite}{T} {black}{k}} \DeclareTextCommand\cfss@WhiteKingOnBlack {LSBC3} {\cfss@composefmfpmpcolorchar {black}{1} {black}{\symbol{149}} {whiteonblack}{T} {white}{K}} \DeclareTextCommand\cfss@BlackKingOnBlack {LSBC3} {\cfss@composefmfpmpcolorchar {black}{1} {black}{\symbol{149}} {blackonblack}{T} {black}{k}} \DeclareTextCommand\cfss@WhiteQueenOnWhite {LSBC3}% {\cfss@composefmfpmpcolorchar {white}{5} {}{} {whiteonwhite}{X} {white}{Q}} \DeclareTextCommand\cfss@BlackQueenOnWhite {LSBC3} {\cfss@composefmfpmpcolorchar {white}{5} {}{} {blackonwhite}{X} {black}{q}} \DeclareTextCommand\cfss@WhiteQueenOnBlack {LSBC3} {\cfss@composefmfpmpcolorchar {black}{5} {black}{\symbol{153}} {whiteonblack}{X} {white}{Q}} \DeclareTextCommand\cfss@BlackQueenOnBlack {LSBC3} {\cfss@composefmfpmpcolorchar {black}{5} {black}{\symbol{153}} {blackonblack}{X} {black}{q}} \DeclareTextCommand\cfss@WhiteRookOnWhite {LSBC3}% {\cfss@composefmfpmpcolorchar {white}{3} {}{} {whiteonwhite}{V} {white}{R}} \DeclareTextCommand\cfss@BlackRookOnWhite {LSBC3} {\cfss@composefmfpmpcolorchar {white}{3} {}{} {blackonwhite}{V} {black}{r}} \DeclareTextCommand\cfss@WhiteRookOnBlack {LSBC3} {\cfss@composefmfpmpcolorchar {black}{3} {black}{\symbol{151}} {whiteonblack}{V} {white}{R}} \DeclareTextCommand\cfss@BlackRookOnBlack {LSBC3} {\cfss@composefmfpmpcolorchar {black}{3} {black}{\symbol{151}} {blackonblack}{V} {black}{r}} \DeclareTextCommand\cfss@WhiteBishopOnWhite {LSBC3} {\cfss@composefmfpmpcolorchar {white}{4} {}{} {whiteonwhite}{W} {white}{B}} \DeclareTextCommand\cfss@BlackBishopOnWhite {LSBC3} {\cfss@composefmfpmpcolorchar {white}{4} {}{} {blackonwhite}{W} {black}{b}} \DeclareTextCommand\cfss@WhiteBishopOnBlack {LSBC3} {\cfss@composefmfpmpcolorchar {black}{4} {black}{\symbol{152}} {whiteonblack}{W} {white}{B}} \DeclareTextCommand\cfss@BlackBishopOnBlack {LSBC3} {\cfss@composefmfpmpcolorchar {black}{4} {black}{\symbol{152}} {blackonblack}{W} {black}{b}} \DeclareTextCommand\cfss@WhiteKnightOnWhite {LSBC3} {\cfss@composefmfpmpcolorchar {white}{2} {}{} {whiteonwhite}{U} {white}{N}} \DeclareTextCommand\cfss@BlackKnightOnWhite {LSBC3} {\cfss@composefmfpmpcolorchar {white}{2} {}{} {blackonwhite}{U} {black}{n}} \DeclareTextCommand\cfss@WhiteKnightOnBlack {LSBC3} {\cfss@composefmfpmpcolorchar {black}{2} {black}{\symbol{150}} {whiteonblack}{U} {white}{N}} \DeclareTextCommand\cfss@BlackKnightOnBlack {LSBC3} {\cfss@composefmfpmpcolorchar {black}{2} {black}{\symbol{150}} {blackonblack}{U} {black}{n}} \DeclareTextCommand\cfss@WhitePawnOnWhite {LSBC3} {\cfss@composefmfpmpcolorchar {white}{6} {}{} {whiteonwhite}{Y} {white}{P}} \DeclareTextCommand\cfss@BlackPawnOnWhite {LSBC3} {\cfss@composefmfpmpcolorchar {white}{6} {}{} {blackonwhite}{Y} {black}{p}} \DeclareTextCommand\cfss@WhitePawnOnBlack {LSBC3} {\cfss@composefmfpmpcolorchar {black}{6} {black}{\symbol{154}} {whiteonblack}{Y} {white}{P}} \DeclareTextCommand\cfss@BlackPawnOnBlack {LSBC3} {\cfss@composefmfpmpcolorchar {black}{6} {black}{\symbol{154}} {blackonblack}{Y} {black}{p}} % %<*lsbc4enc> %% %% LSBC4: An encoding for chessboard chars. %% that makes it possible to color field and the piece differently. %% In this encoding the pieces/fields are build with a solid fieldmask %% and pieceOnWhite chars. %% If a color package is loaded, the fieldmask will be white or gray. %% The encoding works with fonts that have solid fieldmasks on position 49-54 %% and the pieceOnWhite chars. %% Possible free font are skaknew and lucena. \ProvidesFile{lsbc4enc.def} [2006/05/22 v1.0 Standard LaTeX file] \DeclareFontEncoding{LSBC4}{}{} \DeclareFontSubstitution{LSBC4}{skaknew}{m}{n} \AtBeginDocument{\@ifundefined{color}{% \def\color#1{}% \PackageWarning{chessfss} {You haven't load a color package. I will define the color command to do nothing}{}}{}} \providecommand\cfss@whitefieldmaskcolor{\color{white}} \providecommand\cfss@blackfieldmaskcolor{\color{gray}} \providecommand\cfss@whitepiececolor{} \providecommand\cfss@blackpiececolor{} \providecommand\cfss@composefmpcolorchar[4]{%range layer. fm, p \makebox[0pt][l]{% \csname cfss@#1fieldmaskcolor\endcsname#2}% {\csname cfss@#3piececolor\endcsname#4}}% \@namedef{cfss@showboardencodingLSBC4}{% \begin{tabular}{llllll} \multicolumn{6}{l}{\bfseries Encoding \ttfamily LSBC4}\\[0.5ex] Layer: & fieldmask & field & piecemask & piece & result\\ WhiteSquare &\boardfont\cfss@whitefieldmaskcolor z & & & &\boardfont\cfss@WhiteEmptySquare\\ BlackSquare &\boardfont\cfss@blackfieldmaskcolor z & & & &\boardfont\cfss@BlackEmptySquare\\ WhiteOnWhite &\boardfont\cfss@whitefieldmaskcolor 1 & & &\boardfont\cfss@whitepiececolor K &\boardfont\cfss@WhiteKingOnWhite\\ WhiteOnBlack &\boardfont\cfss@blackfieldmaskcolor 1 & & &\boardfont\cfss@whitepiececolor K &\boardfont\cfss@WhiteKingOnBlack\\ BlackOnWhite &\boardfont\cfss@whitefieldmaskcolor 1 & & &\boardfont\cfss@blackpiececolor k &\boardfont\cfss@BlackKingOnWhite\\ BlackOnBlack &\boardfont\cfss@blackfieldmaskcolor 1 & & &\boardfont\cfss@blackpiececolor k &\boardfont\cfss@BlackKingOnBlack\\ \end{tabular}} \DeclareTextCommand\cfss@WhiteEmptySquare {LSBC4}{{\cfss@whitefieldmaskcolor z}} \DeclareTextCommand\cfss@BlackEmptySquare {LSBC4}% {{\cfss@blackfieldmaskcolor z}} \DeclareTextCommand\cfss@WhiteKingOnWhite {LSBC4}% {\cfss@composefmpcolorchar {white}{1} {white}{K}} \DeclareTextCommand\cfss@BlackKingOnWhite {LSBC4} {\cfss@composefmpcolorchar {white}{1} {black}{k}} \DeclareTextCommand\cfss@WhiteKingOnBlack {LSBC4} {\cfss@composefmpcolorchar {black}{1} {white}{K}} \DeclareTextCommand\cfss@BlackKingOnBlack {LSBC4} {\cfss@composefmpcolorchar {black}{1} {black}{k}} \DeclareTextCommand\cfss@WhiteQueenOnWhite {LSBC4}% {\cfss@composefmpcolorchar {white}{5} {white}{Q}} \DeclareTextCommand\cfss@BlackQueenOnWhite {LSBC4} {\cfss@composefmpcolorchar {white}{5} {black}{q}} \DeclareTextCommand\cfss@WhiteQueenOnBlack {LSBC4} {\cfss@composefmpcolorchar {black}{5} {white}{Q}} \DeclareTextCommand\cfss@BlackQueenOnBlack {LSBC4} {\cfss@composefmpcolorchar {black}{5} {black}{q}} \DeclareTextCommand\cfss@WhiteRookOnWhite {LSBC4}% {\cfss@composefmpcolorchar {white}{3} {white}{R}} \DeclareTextCommand\cfss@BlackRookOnWhite {LSBC4} {\cfss@composefmpcolorchar {white}{3} {black}{r}} \DeclareTextCommand\cfss@WhiteRookOnBlack {LSBC4} {\cfss@composefmpcolorchar {black}{3} {white}{R}} \DeclareTextCommand\cfss@BlackRookOnBlack {LSBC4} {\cfss@composefmpcolorchar {black}{3} {black}{r}} \DeclareTextCommand\cfss@WhiteBishopOnWhite {LSBC4}% {\cfss@composefmpcolorchar {white}{4} {white}{B}} \DeclareTextCommand\cfss@BlackBishopOnWhite {LSBC4} {\cfss@composefmpcolorchar {white}{4} {black}{b}} \DeclareTextCommand\cfss@WhiteBishopOnBlack {LSBC4} {\cfss@composefmpcolorchar {black}{4} {white}{B}} \DeclareTextCommand\cfss@BlackBishopOnBlack {LSBC4} {\cfss@composefmpcolorchar {black}{4} {black}{b}} \DeclareTextCommand\cfss@WhiteKnightOnWhite {LSBC4}% {\cfss@composefmpcolorchar {white}{2} {white}{N}} \DeclareTextCommand\cfss@BlackKnightOnWhite {LSBC4} {\cfss@composefmpcolorchar {white}{2} {black}{n}} \DeclareTextCommand\cfss@WhiteKnightOnBlack {LSBC4} {\cfss@composefmpcolorchar {black}{2} {white}{N}} \DeclareTextCommand\cfss@BlackKnightOnBlack {LSBC4} {\cfss@composefmpcolorchar {black}{2} {black}{n}} \DeclareTextCommand\cfss@WhitePawnOnWhite {LSBC4}% {\cfss@composefmpcolorchar {white}{6} {white}{P}} \DeclareTextCommand\cfss@BlackPawnOnWhite {LSBC4} {\cfss@composefmpcolorchar {white}{6} {black}{p}} \DeclareTextCommand\cfss@WhitePawnOnBlack {LSBC4} {\cfss@composefmpcolorchar {black}{6} {white}{P}} \DeclareTextCommand\cfss@BlackPawnOnBlack {LSBC4} {\cfss@composefmpcolorchar {black}{6} {black}{p}} % %<*lsbc5enc> %% LSBC5: An encoding for chessboard chars. %% that makes it possible to color field and the piece differently. %% In this encoding the pieces/fields are build with %% the piecemask and the pieceOnWhite. The fields must get color through %% the background. %% If a color package is loaded, the piecemask will be white. %% The solid fieldmask and the field layers are not used. %% The encoding works with fonts that have %% piecemask (on position T-Y) and the pieceOnWhite chars. %% A possible free font is skaknew. %% DiaTTFri.ttf (from fritz) also has the necessary characters but must be converted %% and reencoded first. \ProvidesFile{lsbc5enc.def} [2006/05/22 v1.0 Standard LaTeX file] \DeclareFontEncoding{LSBC5}{}{} \DeclareFontSubstitution{LSBC5}{skaknew}{m}{n} \AtBeginDocument{% \@ifundefined{color} {\def\color#1{}% \PackageWarning{chessfss} {You haven't load a color package. I will define the color command to do nothing}{}} {}} \providecommand\cfss@whiteonwhitepiecemaskcolor{\color{white}} \providecommand\cfss@whiteonblackpiecemaskcolor{\color{white}} \providecommand\cfss@blackonwhitepiecemaskcolor{\color{white}} \providecommand\cfss@blackonblackpiecemaskcolor{\color{white}} \providecommand\cfss@whitepiececolor{} \providecommand\cfss@blackpiececolor{} \providecommand\cfss@composepmpcolorchar[4]{%range layer. pm, p \makebox[0pt][l]{% piecemasklayer \csname cfss@#1piecemaskcolor\endcsname#2}% {\csname cfss@#3piececolor\endcsname#4}}% piecelayer \@namedef{cfss@showboardencodingLSBC5}{% \begin{tabular}{llllll} \multicolumn{6}{l}{\bfseries Encoding \ttfamily LSBC5}\\[0.5ex] Layer: &fieldmask &field &piecemask &piece &result\\ WhiteSquare & & & & &\\ BlackSquare & & & & &\\ WhiteOnWhite & & &\boardfont\cfss@whiteonwhitepiecemaskcolor T &\boardfont\cfss@whitepiececolor K &\boardfont\cfss@WhiteKingOnWhite\\ WhiteOnBlack & & &\boardfont\cfss@whiteonblackpiecemaskcolor T &\boardfont\cfss@whitepiececolor K &\boardfont\cfss@WhiteKingOnBlack\\ BlackOnWhite & & &\boardfont\cfss@blackonwhitepiecemaskcolor T &\boardfont\cfss@blackpiececolor k &\boardfont\cfss@BlackKingOnWhite\\ BlackOnBlack & & &\boardfont\cfss@blackonblackpiecemaskcolor T &\boardfont\cfss@blackpiececolor k &\boardfont\cfss@BlackKingOnBlack\\ \end{tabular}} \DeclareTextCommand\cfss@WhiteEmptySquare {LSBC5}{\phantom{Z}} \DeclareTextCommand\cfss@BlackEmptySquare {LSBC5}{\phantom{Z}} \DeclareTextCommand\cfss@WhiteKingOnWhite {LSBC5} {\cfss@composepmpcolorchar {whiteonwhite}{T} {white}{K}} \DeclareTextCommand\cfss@BlackKingOnWhite {LSBC5} {\cfss@composepmpcolorchar {blackonwhite}{T} {black}{k}} \DeclareTextCommand\cfss@WhiteKingOnBlack {LSBC5} {\cfss@composepmpcolorchar {whiteonblack}{T} {white}{K}} \DeclareTextCommand\cfss@BlackKingOnBlack {LSBC5} {\cfss@composepmpcolorchar {blackonblack}{T} {black}{k}} \DeclareTextCommand\cfss@WhiteQueenOnWhite {LSBC5} {\cfss@composepmpcolorchar {whiteonwhite}{X} {white}{Q}} \DeclareTextCommand\cfss@BlackQueenOnWhite {LSBC5} {\cfss@composepmpcolorchar {blackonwhite}{X} {black}{q}} \DeclareTextCommand\cfss@WhiteQueenOnBlack {LSBC5} {\cfss@composepmpcolorchar {whiteonblack}{X} {white}{Q}} \DeclareTextCommand\cfss@BlackQueenOnBlack {LSBC5} {\cfss@composepmpcolorchar {blackonblack}{X} {black}{q}} \DeclareTextCommand\cfss@WhiteRookOnWhite {LSBC5} {\cfss@composepmpcolorchar {whiteonwhite}{V} {white}{R}} \DeclareTextCommand\cfss@BlackRookOnWhite {LSBC5} {\cfss@composepmpcolorchar {blackonwhite}{V} {black}{r}} \DeclareTextCommand\cfss@WhiteRookOnBlack {LSBC5} {\cfss@composepmpcolorchar {whiteonblack}{V} {white}{R}} \DeclareTextCommand\cfss@BlackRookOnBlack {LSBC5} {\cfss@composepmpcolorchar {blackonblack}{V} {black}{r}} \DeclareTextCommand\cfss@WhiteBishopOnWhite {LSBC5} {\cfss@composepmpcolorchar {whiteonwhite}{W} {white}{B}} \DeclareTextCommand\cfss@BlackBishopOnWhite {LSBC5} {\cfss@composepmpcolorchar {blackonwhite}{W} {black}{b}} \DeclareTextCommand\cfss@WhiteBishopOnBlack {LSBC5} {\cfss@composepmpcolorchar {whiteonblack}{W} {white}{B}} \DeclareTextCommand\cfss@BlackBishopOnBlack {LSBC5} {\cfss@composepmpcolorchar {blackonblack}{W} {black}{b}} \DeclareTextCommand\cfss@WhiteKnightOnWhite {LSBC5} {\cfss@composepmpcolorchar {whiteonwhite}{U} {white}{N}} \DeclareTextCommand\cfss@BlackKnightOnWhite {LSBC5} {\cfss@composepmpcolorchar {blackonwhite}{U} {black}{n}} \DeclareTextCommand\cfss@WhiteKnightOnBlack {LSBC5} {\cfss@composepmpcolorchar {whiteonblack}{U} {white}{N}} \DeclareTextCommand\cfss@BlackKnightOnBlack {LSBC5} {\cfss@composepmpcolorchar {blackonblack}{U} {black}{n}} \DeclareTextCommand\cfss@WhitePawnOnWhite {LSBC5} {\cfss@composepmpcolorchar {whiteonwhite}{Y} {white}{P}} \DeclareTextCommand\cfss@BlackPawnOnWhite {LSBC5} {\cfss@composepmpcolorchar {blackonwhite}{Y} {black}{p}} \DeclareTextCommand\cfss@WhitePawnOnBlack {LSBC5} {\cfss@composepmpcolorchar {whiteonblack}{Y} {white}{P}} \DeclareTextCommand\cfss@BlackPawnOnBlack {LSBC5} {\cfss@composepmpcolorchar {blackonblack}{Y} {black}{p}} % % LSF (figurine) fd-files of skak and skaknew %<*lsfskak> \ProvidesFile{lsfskak.fd} [2006/03/31 v1.0 Chess font definitions] \DeclareFontFamily{LSF}{skak}{} \DeclareFontShape{LSF}{skak}{m}{n}{<-> skakf10}{} \DeclareFontShape{LSF}{skak}{bx}{n}{<-> skakf10b}{} \DeclareFontShape{LSF}{skak}{b}{n}{<-> skakf10b}{} % %<*lsfskaknew> \ProvidesFile{lsfskaknew.fd} [2006/03/31 v1.0 Chess font definitions] \DeclareFontFamily{LSF}{skaknew}{} \DeclareFontShape{LSF}{skaknew}{m}{n}{<-> SkakNew-Figurine}{} \DeclareFontShape{LSF}{skaknew}{bx}{n}{<-> SkakNew-FigurineBold}{} \DeclareFontShape{LSF}{skaknew}{b}{n}{<-> SkakNew-FigurineBold}{} % % LSI (informator) fd-files of skak and skaknew %<*lsiskak> \ProvidesFile{lsiskak.fd} [2006/03/31 v1.0 Chess font definitions] \DeclareFontFamily{LSI}{skak}{} \DeclareFontShape{LSI}{skak}{m}{n}{<-> skakf10}{} \DeclareFontShape{LSI}{skak}{bx}{n}{<-> skakf10b}{} \DeclareFontShape{LSI}{skak}{b}{n}{<-> skakf10b}{} % %<*lsiskaknew> \ProvidesFile{lsiskaknew.fd} [2006/03/31 v1.0 Chess font definitions] \DeclareFontFamily{LSI}{skaknew}{} \DeclareFontShape{LSI}{skaknew}{m}{n}{<-> SkakNew-Figurine}{} \DeclareFontShape{LSI}{skaknew}{bx}{n}{<-> SkakNew-FigurineBold}{} \DeclareFontShape{LSI}{skaknew}{b}{n}{<-> SkakNew-FigurineBold}{} % % LSB (board) fd-files of skak and skaknew %<*lsbskak> \ProvidesFile{lsbskak.fd} [2006/03/31 v1.0 Chess font definitions] \DeclareFontFamily{LSB}{skak}{} \DeclareFontShape{LSB}{skak}{m}{n}{<-> skak10}{} % %<*lsbskaknew> \ProvidesFile{lsbskaknew.fd} [2006/03/31 v1.0 Chess font definitions] \DeclareFontFamily{LSB}{skaknew}{} \DeclareFontShape{LSB}{skaknew}{m}{n}{<-16> SkakNew-DiagramT <16-> SkakNew-Diagram}{} % % LSB1 %<*lsb1skak> %% Experimental board font encoding \ProvidesFile{lsb1skak.fd} [2006/03/31 v1.0 Chess font definitions] \DeclareFontFamily{LSB1}{skak}{} \DeclareFontShape{LSB1}{skak}{m}{n}{<-> skak10}{} % %<*lsb1skaknew> %% Experimental board font encoding \ProvidesFile{lsb1skaknew.fd} [2006/03/31 v1.0 Chess font definitions] \DeclareFontFamily{LSB1}{skaknew}{} \DeclareFontShape{LSB1}{skaknew}{m}{n}{<-16> SkakNew-DiagramT <16-> SkakNew-Diagram}{} % % LSB2 %<*lsb2skak> %% Experimental board font encoding \ProvidesFile{lsb2skak.fd} [2006/05/22 v1.0 Chess font definitions] \DeclareFontFamily{LSB2}{skak}{} \DeclareFontShape{LSB2}{skak}{m}{n}{<-> skak10}{} % % %<*lsb2skaknew> %% Experimental board font encoding \ProvidesFile{lsb2skaknew.fd} [2006/05/22 v1.0 Chess font definitions] \DeclareFontFamily{LSB2}{skaknew}{} \DeclareFontShape{LSB2}{skaknew}{m}{n}{<-16> SkakNew-DiagramT <16-> SkakNew-Diagram}{} % % LSB3 %<*lsb3skak> %% Experimental board font encoding \ProvidesFile{lsb3skak.fd} [2006/03/31 v1.0 Chess font definitions] \DeclareFontFamily{LSB3}{skak}{} \DeclareFontShape{LSB3}{skak}{m}{n}{<-> skak10}{} % % %<*lsb3skaknew> %% Experimental board font encoding \ProvidesFile{lsbskaknew.fd} [2006/03/31 v1.0 Chess font definitions] \DeclareFontFamily{LSB3}{skaknew}{} \DeclareFontShape{LSB3}{skaknew}{m}{n}{<-16> SkakNew-DiagramT <16-> SkakNew-Diagram}{} % %<*lsbc1skaknew> %% Color board font encoding \ProvidesFile{lsbc1skaknew.fd} [2006/05/22 v1.0 Chess font definitions] \DeclareFontFamily{LSBC1}{skaknew}{} \DeclareFontShape{LSBC1}{skaknew}{m}{n}{<-16> SkakNew-DiagramT <16-> SkakNew-Diagram}{} % %<*lsbc2skaknew> %% Color board font encoding \ProvidesFile{lsbc2skaknew.fd} [2006/05/22 v1.0 Chess font definitions] \DeclareFontFamily{LSBC2}{skaknew}{} \DeclareFontShape{LSBC2}{skaknew}{m}{n}{<-16> SkakNew-DiagramT <16-> SkakNew-Diagram}{} % %<*lsbc3skaknew> %% Color board font encoding \ProvidesFile{lsbc3skaknew.fd} [2006/05/22 v1.0 Chess font definitions] \DeclareFontFamily{LSBC3}{skaknew}{} \DeclareFontShape{LSBC3}{skaknew}{m}{n}{<-16> SkakNew-DiagramT <16-> SkakNew-Diagram}{} % %<*lsbc4skaknew> %% Color board font encoding \ProvidesFile{lsbc4skaknew.fd} [2006/05/22 v1.0 Chess font definitions] \DeclareFontFamily{LSBC4}{skaknew}{} \DeclareFontShape{LSBC4}{skaknew}{m}{n}{<-16> SkakNew-DiagramT <16-> SkakNew-Diagram}{} % %<*lsbc5skaknew> %% Color board font encoding \ProvidesFile{lsbc5skaknew.fd} [2006/06/14 v1.0 Chess font definitions] \DeclareFontFamily{LSBC5}{skaknew}{} \DeclareFontShape{LSBC5}{skaknew}{m}{n}{<-16> SkakNew-DiagramT <16-> SkakNew-Diagram}{} % %<*genericfig> /Chess***FigEncoding[ %0x /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef %1x /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef %2x /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef %3x /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef %4x /.notdef /.notdef %% Bishop /*** /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef %% King /*** /.notdef /.notdef %% Knight /*** /.notdef %5x /.notdef %% Queen /*** %%Rook /*** /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef %6x /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef %7x Pawn /*** /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef %8x /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef %9x /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef %Ax /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef %Bx /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef %Cx /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef %Dx /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef %Dx /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef %Ex /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef ] def % %<*genericboard> /Chess***BoardEncoding[ %0x /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef %1x /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef %2x /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef %3x %WhiteSquare /*** %solid king fieldmask /*** %solid knight fieldmask /*** %solid rook fieldmask /*** %solid bishop fieldmask /*** %solid queen fieldmask /*** %solid pawn fieldmask /*** /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef %4x /.notdef %WBishopOnBlack /*** %WBishopOnWhite /*** /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef %WKingOnBlack /*** %WKingOnWhite /*** %WQueenOnBlack /*** %WKnightOnBlack /*** %WKnightOnWhite /*** %WPawnOnBlack /*** %5x %WPawnOnWhite /*** %WQueenOnWhite /*** %WRookOnWhite /*** %WRookOnBlack /*** %king piecemask /*** %knight piecemask /*** %rook piecemask /*** %bishop piecemask /*** %queen piecemask /*** %pawn piecemask /*** %BlackSquare /*** /.notdef /.notdef /.notdef /.notdef /.notdef %6x /.notdef %BBishopOnBlack /*** %BBishopOnWhite /*** /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef %BKingOnBlack /*** %BKingOnWhite /*** %BQueenOnBlack /*** %BKnightOnBlack /*** %BKnightOnWhite /*** %BPawnOnBlack /*** %7x %BPawnOnWhite /*** %BQueenOnWhite /*** %BRookOnWhite /*** %BRookOnBlack /*** /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef %solid black fieldmask /*** /.notdef /.notdef /.notdef /.notdef /.notdef %8x /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef %9x /.notdef /.notdef /.notdef /.notdef /.notdef %king fieldmask /*** %knight fieldmask /*** %rook fieldmask /*** %bishop fieldmask /*** %queen fieldmask /*** %pawn fieldmask /*** /.notdef /.notdef /.notdef /.notdef /.notdef %Ax /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef %Bx /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef %Cx /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef %Dx /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef %Dx /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef %Ex /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef ] def % \endinput