The EverySel package^{∗}

Martin Schröder

Crüsemannallee 3 D-28213 Bremen Martin.Schroeder@ACM.org

                           PGP-Key:  2048 bit / KeyID 292814E5
                        7E86 6EC8 97FA 2995  82C3 FEA5 2719 090E

1999/06/08

Abstract

This packages provides hooks into the NFSS-command

     \selectfont called \EverySelectfont and \AtNextSelectfont
     analogous to \AtBeginDocument.

Contents

1 Introduction 1

2 Usage 1

3 Options 2 4 Required packages 2

5 Acknowledgements 2

1 Introduction

This package provides the hooks \EverySelectfont and \AtNextSelectfont whose arguments are executed just after L^{A}TEX has loaded a new font using \selectfont (which means that it will be executed after every font loaded via NFSS). An example application would be a package for setting ragged text which needs to distiguinsh between monospaced and proportional fonts. Such a package exists: ragged2e[2].

2 Usage

\EverySelectfont \EverySelectfont{⟨code⟩} declares ⟨code⟩ that is saved internally and executed just after each \selectfont. Warning: The ⟨code⟩ is saved globally; there is currently no way to remove it.

\AtNextSelectfont \AtNextSelectfont{⟨code⟩} declares ⟨code⟩ that is saved internally and executed just after and only the next \selectfont. Repeated use of the commands is permitted: the code in their argument is stored (and executed) in the order of their declarations. The argument of \AtNextSelectfont is executed after the argument of

∗The version number of this file is v1.03, last revised 1999/06/08.

The name EverySel is a tribute to the 8 + 3 file-naming convention of certain “operating systems” and their “file systems”; strictly speaking it should be EverySelectfont.

\EverySelectfont.

3 Options

The package has no options.

4 Required packages

The package requires no further packages.

5 Acknowledgements

David Carlisle provided the solution for my problems with

\CheckCommand.

References

[1] Frank Mittelbach and Rainer Schöpf. The tracefnt package for use with the new font selection scheme.

   CTAN:tex-archive/macros/latex/base/ltfsstrc.dtx. L^{A}TEX 2ε

package.

[2] Martin Schröder. The ragged2e package. CTAN:

   tex-archive/macros/latex/contrib/supported/ms/ragged2e.dtx.

L^{A}TEX 2ε package.