From e0c6872cf40896c7be36b11dcc744620f10adf1d Mon Sep 17 00:00:00 2001 From: Norbert Preining Date: Mon, 2 Sep 2019 13:46:59 +0900 Subject: Initial commit --- macros/latex/contrib/chessfss/README | 66 + .../latex/contrib/chessfss/chessfonts_gallery.pdf | Bin 0 -> 1088139 bytes macros/latex/contrib/chessfss/chessfss-src.dtx | 2563 ++++++++++++++++++++ macros/latex/contrib/chessfss/chessfss.ins | 115 + macros/latex/contrib/chessfss/chessfss.pdf | Bin 0 -> 817624 bytes 5 files changed, 2744 insertions(+) create mode 100644 macros/latex/contrib/chessfss/README create mode 100644 macros/latex/contrib/chessfss/chessfonts_gallery.pdf create mode 100644 macros/latex/contrib/chessfss/chessfss-src.dtx create mode 100644 macros/latex/contrib/chessfss/chessfss.ins create mode 100644 macros/latex/contrib/chessfss/chessfss.pdf (limited to 'macros/latex/contrib/chessfss') diff --git a/macros/latex/contrib/chessfss/README b/macros/latex/contrib/chessfss/README new file mode 100644 index 0000000000..6c7c3cfea3 --- /dev/null +++ b/macros/latex/contrib/chessfss/README @@ -0,0 +1,66 @@ +chessfss --- chess fontselection scheme Version 1.2a +Ulrike Fischer 2006 + +CONTENTS AND INSTALLATION + +- Readme (this file) +- chessfss-scr.dtx +- chessfss.ins +- chessfss.pdf +- chessfss.pdf +- chessfonts_gallery.pdf + +Run TeX/LaTeX on chessfss.ins to unpack the dtx. +Put the files the .sty, the .def and all the .fd-files in +tex/latex/chessfss/. + +You will also get two generic .enc-files. +Put them together with the two .pdf's +in doc/latex/chessfss/. + +The ins-file suggest the following directories: + +for the encoding-.def-files: +tex/latex/chessfss/enc + +for the .fd-files of the skak-fonts: +tex/latex/chessfss/skak + +for the .fd-files of the skaknew-fonts: +tex/latex/chessfss/skaknew + +for the two generic .enc-files: +doc/latex/chessfss + +If you have a docstrip.cfg which points to one of your texmf-tree e.g. with the content + +\BaseDirectory{D:/texmf} +\UseTDS + +AND IF ALL FOLDERS EXIST then the ins.file will unpack to this +folders. If you want the files to go to other locations you can +change the pathes in the .ins-file. + +The dtx-file doesn't contain any documentation. +So running LaTeX on it makes no sense! + + + +DOCUMENTATION + +chessfss.pdf. There isn't a source for the documentation as it use some +local fonts and styles. + +DESCRIPTION + +This package offers commands to use and switch between chess +fonts. It use the LaTeX font selection scheme (nfss). + +The package doesn't parse, format and print "Portable Game +Notation" (PGN) input like e.g. the packages skak or texmate. + +The aim of the package is to offer writers of chess packages a +bundle of commands for fonts, so that they don't have to +implement all this commands for themselves. chessfss.sty is now +used in the version of skak.sty which you can find at +CTAN. diff --git a/macros/latex/contrib/chessfss/chessfonts_gallery.pdf b/macros/latex/contrib/chessfss/chessfonts_gallery.pdf new file mode 100644 index 0000000000..9e6f15febc Binary files /dev/null and b/macros/latex/contrib/chessfss/chessfonts_gallery.pdf differ diff --git a/macros/latex/contrib/chessfss/chessfss-src.dtx b/macros/latex/contrib/chessfss/chessfss-src.dtx new file mode 100644 index 0000000000..0d1ae58203 --- /dev/null +++ b/macros/latex/contrib/chessfss/chessfss-src.dtx @@ -0,0 +1,2563 @@ +%<*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 diff --git a/macros/latex/contrib/chessfss/chessfss.ins b/macros/latex/contrib/chessfss/chessfss.ins new file mode 100644 index 0000000000..253df03e04 --- /dev/null +++ b/macros/latex/contrib/chessfss/chessfss.ins @@ -0,0 +1,115 @@ +%% +%% This file will generate fast loadable files from chessfss-ex.dtx +%% when run through LaTeX or TeX. +%% +%% This file is part of the LaTeX2e chessfss bundle +%% --------------------------------------------------- +%% +%% This system is distributed in the hope that it will be useful, +%% but WITHOUT ANY WARRANTY; without even the implied warranty of +%% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. +%% +%% Copyright 2005 Ulrike Fischer (skak@nililand.de) +%% ------------------------------------------- +% +% +%% This program can be redistributed and/or modified under the terms +%% of the LaTeX Project Public License distributed from CTAN archives +%% in the directory macros/latex/base/lppl.txt; either version 1 of +%% the License, or (at your option) any later version. + +%% +%% --------------- start of docstrip commands ------------------ +%% +\input docstrip.tex + +\keepsilent +\askforoverwritetrue + +\preamble +\endpreamble + +\ifToplevel{\ifx\generate\undefined + \Msg{**********************************************} + \Msg{*} + \Msg{* This installation requires docstrip} + \Msg{* version 2.3c or later.} + \Msg{*} + \Msg{* An older version of docstrip has been input} + \Msg{*} + \Msg{**********************************************} + \errhelp{Move or rename old docstrip.tex.} + \errmessage{Old docstrip in input path} + \batchmode + \csname @@end\endcsname + \fi + \ifx\askonceonly\undefined\else\askonceonly\fi +} + +\declarepreamble\UFpreamble + +chessfss: chess font selection commands +Copyright 2005 Ulrike Fischer (skak@nililand.de) +------------------------------------------- + +This file can be redistributed and/or modified under the terms of +the LaTeX Project Public License distributed from CTAN archives in +the directory macros/latex/base/lppl.txt; either version 1 of the +License, or (at your option) any later version. + +For error reports see documentation. +\endpreamble + + +%% File generation: + +\generate{% + \usepreamble\UFpreamble + %% style + \usedir{tex/latex/chessfss} + \file{chessfss.sty}{\from{chessfss-src.dtx}{sty}} + %% + %% enc-definitionen + \usedir{tex/latex/chessfss/enc} + \file{lsfenc.def} {\from{chessfss-src.dtx}{lsfenc}} + \file{lsienc.def} {\from{chessfss-src.dtx}{lsienc}} + \file{lsbenc.def} {\from{chessfss-src.dtx}{lsbenc}} + \file{lsb1enc.def} {\from{chessfss-src.dtx}{lsb1enc}} + \file{lsb2enc.def} {\from{chessfss-src.dtx}{lsb2enc}} + \file{lsb3enc.def} {\from{chessfss-src.dtx}{lsb3enc}} + \file{lsbc1enc.def}{\from{chessfss-src.dtx}{lsbc1enc}} + \file{lsbc2enc.def}{\from{chessfss-src.dtx}{lsbc2enc}} + \file{lsbc3enc.def}{\from{chessfss-src.dtx}{lsbc3enc}} + \file{lsbc4enc.def}{\from{chessfss-src.dtx}{lsbc4enc}} + \file{lsbc5enc.def}{\from{chessfss-src.dtx}{lsbc5enc}} + %% fd-files skak + \usedir{tex/latex/chessfss/skak} + \file{lsfskak.fd} {\from{chessfss-src.dtx}{lsfskak}} + \file{lsiskak.fd} {\from{chessfss-src.dtx}{lsiskak}} + \file{lsbskak.fd} {\from{chessfss-src.dtx}{lsbskak}} + \file{lsb1skak.fd} {\from{chessfss-src.dtx}{lsb1skak}} + \file{lsb2skak.fd} {\from{chessfss-src.dtx}{lsb2skak}} + \file{lsb3skak.fd} {\from{chessfss-src.dtx}{lsb3skak}} + %% fd-files skaknew + \usedir{tex/latex/chessfss/skaknew} + \file{lsfskaknew.fd} {\from{chessfss-src.dtx}{lsfskaknew}} + \file{lsiskaknew.fd} {\from{chessfss-src.dtx}{lsiskaknew}} + \file{lsbskaknew.fd} {\from{chessfss-src.dtx}{lsbskaknew}} + \file{lsb1skaknew.fd} {\from{chessfss-src.dtx}{lsb1skaknew}} + \file{lsb2skaknew.fd} {\from{chessfss-src.dtx}{lsb2skaknew}} + \file{lsb3skaknew.fd} {\from{chessfss-src.dtx}{lsb3skaknew}} + \file{lsbc1skaknew.fd}{\from{chessfss-src.dtx}{lsbc1skaknew}} + \file{lsbc2skaknew.fd}{\from{chessfss-src.dtx}{lsbc2skaknew}} + \file{lsbc3skaknew.fd}{\from{chessfss-src.dtx}{lsbc3skaknew}} + \file{lsbc4skaknew.fd}{\from{chessfss-src.dtx}{lsbc4skaknew}} + \file{lsbc5skaknew.fd}{\from{chessfss-src.dtx}{lsbc5skaknew}} + %% generic enc-examples + \usedir{doc/latex/chessfss} + \nopostamble + \file{chess-board-example-enc.enc}{\from{chessfss-src.dtx}{genericboard}} + \file{chess-fig-example-enc.enc}{\from{chessfss-src.dtx}{genericfig}}} + + +\endbatchfile +%% +%% end of file `scrclass.ins' diff --git a/macros/latex/contrib/chessfss/chessfss.pdf b/macros/latex/contrib/chessfss/chessfss.pdf new file mode 100644 index 0000000000..9aa5982cf9 Binary files /dev/null and b/macros/latex/contrib/chessfss/chessfss.pdf differ -- cgit v1.2.3