diff options
author | Karl Berry <karl@freefriends.org> | 2011-01-18 00:44:01 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2011-01-18 00:44:01 +0000 |
commit | d0258084f13903296356f63b4b09b55e6d0012b6 (patch) | |
tree | d4705a1cfb1946f9044e9cb941688e2d9c0ee4f0 /Master/texmf-dist/source/latex/cmbright/cmbright.dtx | |
parent | 8b9caf2ada7ba9a0b6fbdaf7503c2d61091c988b (diff) |
cmbright (needed for ages)
git-svn-id: svn://tug.org/texlive/trunk@21107 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/source/latex/cmbright/cmbright.dtx')
-rw-r--r-- | Master/texmf-dist/source/latex/cmbright/cmbright.dtx | 680 |
1 files changed, 431 insertions, 249 deletions
diff --git a/Master/texmf-dist/source/latex/cmbright/cmbright.dtx b/Master/texmf-dist/source/latex/cmbright/cmbright.dtx index c5b0e1fad88..cbcae6a7366 100644 --- a/Master/texmf-dist/source/latex/cmbright/cmbright.dtx +++ b/Master/texmf-dist/source/latex/cmbright/cmbright.dtx @@ -1,37 +1,54 @@ -%\CheckSum{329} +%\CheckSum{368} % % \iffalse % % File `cmbright.dtx'. -% Copyright (c) 1994--2002 Walter Schmidt +% Copyright (c) 1994--2005 Walter Schmidt % -% This program may be distributed and/or modified under the -% conditions of the LaTeX Project Public License, either version 1.2 +% This work may be distributed and/or modified under the +% conditions of the LaTeX Project Public License, either version 1.3 % of this license or (at your option) any later version. % The latest version of this license is in % http://www.latex-project.org/lppl.txt -% and version 1.2 or later is part of all distributions of LaTeX -% version 1999/12/01 or later. +% and version 1.3 or later is part of all distributions of LaTeX +% version 2003/12/01 or later. % -% This program consists of the files cmbright.dtx, cmbr.fdd and -% cmbright.ins. +% This work has the LPPL maintenance status "maintained". % +% This Current Maintainer of this work is Walter Schmidt +% +% This work consists of the files cmbright.dtx and cmbright.ins % \fi % % \iffalse % -\NeedsTeXFormat{LaTeX2e} -%<cm&!patch> [1995/06/01] +%<cm>\ProvidesFile{ot1cmbr.fd} +%<ec>\ProvidesFile{t1cmbr.fd} +%<ts1cmbr>\ProvidesFile{ts1cmbr.fd} +%<ot1cmtl>\ProvidesFile{ot1cmtl.fd} +%<t1cmtl>\ProvidesFile{t1cmtl.fd} +%<ts1cmtl>\ProvidesFile{ts1cmtl.fd} +%<omlcmbrm>\ProvidesFile{omlcmbrm.fd} +%<omscmbrs>\ProvidesFile{omscmbrs.fd} +%<omlcmbr>\ProvidesFile{omlcmbr.fd} +%<omscmbr>\ProvidesFile{omscmbr.fd} +%<package>\ProvidesPackage{cmbright} %<*driver> \ProvidesFile{cmbright.drv} %</driver> -%<+cm>\ProvidesPackage{cmbright} - [2002/05/25 v7.1 (WaS)] + [2005/04/13 v8.1 (WaS)] % %<*driver> \documentclass[11pt]{ltxdoc} -\usepackage{mflogo,url} +\OnlyDescription \CodelineNumbered +\usepackage[enlarged-baselineskips]{cmbright} +\usepackage{exscale} +\usepackage{manfnt} +\newcommand{\danger}{\marginpar[\hfill\textdbend]{\textdbend\hfill}} +\usepackage{mflogo} +\newcommand\Lopt[1]{\texttt{#1}} +\let\Lpack\Lopt \parindent1em \leftmargini=2em \leftmarginii=2em @@ -47,192 +64,179 @@ % % \GetFileInfo{cmbright.drv} % \DeleteShortVerb{\|} -% \MakeShortVerb{\+} -% \newcommand{\oitem}[1]{\item[\texttt{#1}]} % -% \title{The Computer Modern Bright fonts \\ -% and \\ -% the \LaTeX{} package \textsf{cmbright}} -% \author{Walter Schmidt\thanks{{\ttfamily was@VR-Web.de}}} +% \title{Using the CM Bright typeface with \LaTeX} +% \author{Walter Schmidt\thanks{{\ttfamily w-a-schmidt@gmx.net}}} % \date{(\fileversion{} -- \filedate)} % \maketitle -% \tableofcontents % % \section{The CM Bright fonts} -% `Computer Modern Bright' is a family of sans serif fonts, -% based on Donald Knuth's CM fonts. -% It includes OT1, T1 and TS1 encoded text fonts of various +% `Computer Modern Bright' is a sans serif typeface family, +% based on Donald Knuth's `Computer Modern'. +% It comprises OT1, T1 and TS1 encoded text fonts of various % shapes as well as all the fonts necessary for mathematical -% typesetting, incl.\ the AMS symbols. +% typesetting, including the AMS symbols. % -% CM Bright has been designed as a well legible standalone -% font. It is `lighter' and less obtrusive than CM Sans Serif, which, +% CM~Bright has been designed as a well legible standalone +% font. It is `lighter' and less obtrusive than CM~Sans~Serif, which, % in contrast, is more appropriate for markup purposes within -% a CM Roman environment. +% a CM~Roman environment. % -% Together with CM Bright there comes a family of typewriter +% Together with CM~Bright there comes a family of typewriter % fonts, named `CM Typwewriter Light', which look better in -% combination with CM Bright than the ordinary \texttt{cmtt} fonts would do. -% -% The CM Bright fonts in \MF{} format are distributed -% free from the CTAN archives, directory \texttt{fonts/cmbright}. +% combination with CM~Bright than the ordinary \texttt{cmtt} fonts would do. % -% The fonts are also available in Type1 format from -% MicroPress~Inc, see -% \path{<http://www.micropress-inc.com/fonts/brmath/brmain.htm>}. +% The present document is typeset using the CM~Bright and CM~Typewriter Light +% typefaces. +% Samples of mathematical formulas are provided in section~\ref{sec:samples}. % -% \section{The \LaTeX{} macro package \textsf{cmbright}} +% \section{The macro package `cmbright'} % -% \subsection{Description} -% The \LaTeX{} macro package \textsf{cmbright} -% supports typesetting with the font family CM Bright. +% \subsection{Basics} +% The macro package \Lpack{cmbright} +% supports the use of the typeface family CM~Bright with \LaTeX: % Loading the package % \begin{verse} -% +\usepackage{cmbright}+ +% \verb+\usepackage{cmbright}+ % \end{verse} % effects the following: % \begin{itemize} % \item The default sans serif font family for typesetting text and math -% is changed to \texttt{cmbr}, i.e.\ CM Bright. +% is changed to \texttt{cmbr} (CM~Bright). % \item -% The sans serif font family is made the default one. -% \item A new mathematical alphabet +\mathbold+ provides bold slanted -% letters, inluding uppercase and lowercase Greek. -% \item The packages \textsf{amsfonts} or \textsf{amssymb}, -% when loaded additionally, -% will use the `CM Bright' versions of the AMS symbol fonts. -% -% Notice that you may still have to specify the option +psamsfonts+ -% for these packages, so as to prevent them from using design sizes -% of the CM Math Extension and Euler Fraktur fonts, which may be -% unavailable within your TeX system; this works flawlessly with -% version 7.1 of the \textsf{cmbright} package now. -% \item The default typewriter font family is changed to \texttt{cmtl}, -% i.e.\ CM Typewriter Light. -% \item The line spacing (+\baselineskip+) for the font sizes 8--12\,pt -% is increased to approx. $1.25 \times \mathrm{size}$. +% The sans serif font family is made the default one for the whole document. +% \item +% The packages \Lpack{amsfonts} or \Lpack{amssymb}, when loaded additionally, +% will use the `CM~Bright' versions of the AMS symbol fonts. +% \item +% The default typewriter font family is changed to \texttt{cmtl} +% (CM Typewriter Light). % \end{itemize} % -% \subsection{Package options} -% \begin{description} -% \oitem{standard-baselineskips} -% This option prevents the package from enlarging the default line spacing. -% See the below section~\ref{sec:bugs}. -% \oitem{slantedGreek} -% When the macro package is loaded using this option, -% uppercase Greek letters will, by default, be slanted. -% Regardless of the option the new commands -% +\upDelta+ and +\upOmega+ will \emph{always} provide an -% upright \( \Delta \) and \( \Omega \). -% \end{description} -% -% \subsection{Font encoding} -% The package does \emph{not} change the default output font -% encoding from OT1. It is, however, recommended to make use of -% CM Bright through the extended T1 and TS1 encodings, -% since doing so does not imply any drawback. +% \subsection{Line spacing} +% Because of the large x-height of the CM~Bright typeface, it is often necessary to enlarge +% the line spacing, as compared with the default setting of the standard \LaTeX\ document +% classes. +% By default, the package \Lpack{cmbright} +% increases the line spacing (\verb+\baselineskip+) for the font sizes 8--12\,pt +% to approx. $1.25 \times \mathrm{size}$. +% However, this behavior may cause obscure problems. +% particularly \danger in conjunction with other macro packages or with `moving arguments'. +% Furhermore, in narrow columns no changes to the default line spacing may be necessary +% at all. +% +% To stop the package from altering the line spacing, it can be loaded with the option +% \Lopt{standard-baselineskips}, +% You may still influence the line spacing yourself, for instance, +% by using the command \verb+\linespread{...}+ in the preamble. +% +% \subsection{Greek letters in math mode} +% When the macro package is loaded using the option \Lopt{slantedGreek}, +% uppercase Greek letters in math mode will, by default, be slanted. +% Regardless of the option, the new commands +% \cmd{\upGamma}, \cmd{\upDelta} \dots \cmd{\upOmega} provide +% upright uppercase Greek letters: $\upGamma, \upDelta\dots \upOmega$ still. +% +% \subsection{Bold type in math mode} +% A new mathematical alphabet \cmd{\mathbold} provides bold slanted +% letters, inluding uppercase and lowercase Greek. +% Emboldening of complete formulas throgh the command \cmd{\mathversion} is, +% however, not possible, \danger because because there is no comprehensive set of bold math fonts. % % \subsection{Scaling of the `large' math symbols} -% In order to achieve proper scaling of the `large' math symbols, -% you may load the packages \textsf{exscale}, -% \textsf{amsfonts} or \textsf{amssymb} -% additionally; they work in conjunction with \textsf{cmbright}, -% too. -% -% \subsection{Known bugs and deficiencies} -% \label{sec:bugs} +% In order to achieve proper scaling of the `large' math symbols, it is recommended +% to load the standard package \Lpack{exscale} in addition to \Lpack{cmbright}. +% This is redundant, if you are using the package \Lpack{amsmath}, which +% includes the required functionality, too. +% +% +% \section{NFSS classification of the fonts} +% Table~\ref{tab:nfss} lists the font series and shapes available in +% the CM~Bright and CM Typewriter Light families. Notice, that % \begin{itemize} -% \item -% The automatic adaption of the line spacing was provided for the sake -% of convenience. Meanwhile it turned out that it causes many obscure -% problem, particularly in conjunction with other macro packages or -% with `moving arguments'. Furthermore, the need to enlarge the default -% line spacing depends on the line width. -% We recommend to disable the feature by loading the package with the -% option \textsf{standard-baselineskips}. -% and take care of the appropriate line spacing by use of the -% +\linespread+ command, if necessary. -% \item -% There is no `bold' +\mathversion+ to bolden complete formulae. -% (See, however, the mathematical alphabet +\mathbold+.) -% \item -% The \textsf{textcomp} package, if required, must be input \emph{after} -% \texttt{cmbright}, otherwise -% the symbol \textregistered{} (+\textregistered+) is not taken from the -% text companion font. -% The same problem might occur, -% if (e.g.\ with future versions of \LaTeX) the TS1 encoding is included -% in the \LaTeX{} format. In both cases the symbol is typeset -% in roman style, instead of sans serif. -% \item -% Within the mathematical mode the symbol \textit{\pounds} -% is treated as a text symbol, so its size and the surrounding space -% might be wrong under some circumstances. +% \item the \texttt{bx} series of the text fonts is available with sizes +% of 9\,pt and above only; +% \item there is no special CM~Bright font for the `extensible math symbols', +% so that OMX/cmex is used instead; % \item -% The package \textsf{oldlfont} -% cannot be used in conjunction with \texttt{cmbright}. (There should be -% no real need for doing so!) -% \item -% The package \textsf{newlfont}, if used in conjunction with the -% CM Bright fonts, must be input before \texttt{cmbright}. +% the font definitions for the AMS fonts are part of the package \Lpack{cmbright}; +% there are no separate\texttt{.fd} files for them. % \end{itemize} % -% -% \begin{table}[hbt] -% \caption{NFSS classification of the Computer Modern Bright fonts} +% \begin{table} +% \caption{NFSS classification of the fonts} % \label{tab:nfss} % \begin{center} % \begin{tabular}{|l|l|l|l|} % \hline % \textbf{encoding} & \textbf{family} & \textbf{series} & \textbf{shape(s)}\\ % \hline\hline -% \multicolumn{4}{|c|}{\textit{CM Bright}}\\ \hline +% \multicolumn{4}{|c|}{\textit{CM~Bright}}\\ \hline % OT1, T1, TS1 & cmbr & m & n, sl \\ \hline % T1, TS1 & cmbr & sb & n, sl\\ \hline % OT1, T1, TS1 & cmbr & bx & n\\ \hline \hline % \multicolumn{4}{|c|}{\textit{CM Typewriter Light}}\\ \hline % OT1, T1, TS1 & cmtl & m & n, sl\\ \hline \hline -% \multicolumn{4}{|c|}{\textit{CM Bright Math}}\\ \hline +% \multicolumn{4}{|c|}{\textit{CM~Bright Math}}\\ \hline % OML & cmbrm & m, b & it \\ \hline % OMS & cmbrs & m & n \\ \hline \hline -% \multicolumn{4}{|c|}{\textit{CM Bright AMS A, B}}\\ \hline +% \multicolumn{4}{|c|}{\textit{CM~Bright AMS A, B}}\\ \hline % U & msa, msb & m &n\\ \hline % \end{tabular} % \end{center} % \end{table} % -% \section{NFSS classification of the fonts} -% Table~\ref{tab:nfss} lists the font series and shapes available in -% the CM Bright and CM Typewriter Light families. Notice, that -% \begin{itemize} -% \item the bx series of the text fonts is supported at sizes -% of 9\,pt and above only; -% \item the usual font substitutions are set up so as to map OML and OMS -% encoded text fonts to the math fonts; -% \item there is no special CM Bright font for the `extensible math symbols'; -% OMX/cmex should be used instead; -% \item -% the font definitions for the AMS fonts are part of the package \texttt{cmbright}; -% there are no separate\texttt{.fd} files. -% \end{itemize} +% ^^A \clearpage +% \section{Sample Formulas} +% \label{sec:samples} +% \subsubsection*{From the \MF\ book, p.\,298} +% [...] If $n > 2$, the identity +% \[ +% t[u_1,\dots,u_n] = t\bigl[t[u_1,\dots,u_{n_1}], t[u_2,\dots,u_n]\bigr] +% \] +% defines $t[u_1,\dots,u_n]$ recursively, and it can be shown that the alternative definition +% \[ +% t[u_1,\dots,u_n] = t\bigl[t[u_1,u_2],\dots,t[u_{n-1},u_n]\bigr] +% \] +% gives the same result. Indeed, we have +% \[ +% t[u_1,\dots,u_n] = \sum_{k=1}^n{{n-1} \choose {k-1}} (1-t)^{n-k}t^{k-1}u_k\,\mbox{,} +% \] +% a Bernstein polynomial of order $n-1$. +% +% \subsubsection*{From the \MF\ book, p.\,59} +% \[ +% \frac{x_1 + 20}{x_2 - 20} + \sqrt{a^2 - \frac{2}{3}\sqrt b} +% \] +% +% \subsubsection*{From the \TeX\ book, exercise 19.13} +% \[ +% \int_{-\infty}^{+\infty} \mathrm{e}^{-x^2}\,\mathrm{d}x = \sqrt{\pi} +% \] % % \StopEventually{} % +% \clearpage % \section{The package code} % +% We require a sufficiently recent \LaTeX. +% \begin{macrocode} +%<*package> +\NeedsTeXFormat{LaTeX2e}[1995/06/01] +% \end{macrocode} +% % \subsection{Text font families} % The sans serif font family is made the default one: % \begin{macrocode} -%<*cm> \renewcommand{\familydefault}{\sfdefault} % \end{macrocode} -% CM Bright is to be used as the default sans serif font family: +% CM~Bright is to be used as the default sans serif font family: % \begin{macrocode} \renewcommand{\sfdefault}{cmbr} % \end{macrocode} % % CM Typewriter Light is to be used as the default typewriter font family, -% because the +cmtt+ fonts look too dark in combination with CM Bright: +% because the CM~Typewriter fonts look too dark in combination with CM~Bright: % \begin{macrocode} \renewcommand{\ttdefault}{cmtl} % \end{macrocode} @@ -242,6 +246,7 @@ % \begin{macrocode} \DeclareSymbolFont {operators} {OT1}{cmbr}{m}{n} \DeclareSymbolFont {letters} {OML}{cmbrm}{m}{it} +\SetSymbolFont {letters}{bold} {OML}{cmbrm}{b}{it} \DeclareSymbolFont {symbols} {OMS}{cmbrs}{m}{n} % \DeclareSymbolFont {largesymbols} {OMX}{cmex}{m}{n} % @@ -253,17 +258,16 @@ \DeclareMathAlphabet{\mathbf} {OT1}{cmbr}{bx}{n} \DeclareMathAlphabet{\mathtt} {OT1}{cmtl}{m}{n} % \end{macrocode} -% Despite its name, +\mathrm+ is not a font with serifs, +% Despite its name, \cmd{\mathrm} is not a font with serifs, % but it is, what the user expects it to be: -% the upright font used e.g.\ for operator names. +% the upright font used, e.g.,\ for operator names. % -% We do not set up a bold +\mathversion+, but we make a bold -% slanted mathematical alphabet available: +% We make a bold slanted mathematical alphabet available: % \begin{macrocode} \DeclareMathAlphabet{\mathbold}{OML}{cmbrm}{b}{it} % \end{macrocode} % -% The command +\mathbold+ should act on lowercase greek letters, too: +% The command \cmd{\mathbold} should act on lowercase Greek, too: % \begin{macrocode} \DeclareMathSymbol{\alpha}{\mathalpha}{letters}{11} \DeclareMathSymbol{\beta}{\mathalpha}{letters}{12} @@ -271,7 +275,6 @@ \DeclareMathSymbol{\delta}{\mathalpha}{letters}{14} \DeclareMathSymbol{\epsilon}{\mathalpha}{letters}{15} \DeclareMathSymbol{\zeta}{\mathalpha}{letters}{16} -\DeclareMathSymbol{\Gamma}{\mathalpha}{letters}{0} \DeclareMathSymbol{\eta}{\mathalpha}{letters}{17} \DeclareMathSymbol{\theta}{\mathalpha}{letters}{18} \DeclareMathSymbol{\iota}{\mathalpha}{letters}{19} @@ -312,27 +315,40 @@ \DeclareMathSymbol{\Psi}{\mathalpha}{letters}{9} \DeclareMathSymbol{\Omega}{\mathalpha}{letters}{10} } -\let\upOmega\Omega +% \end{macrocode} +% Save the default definitions of the upright uc Greek characters +% under new names: +% \begin{macrocode} \let\upDelta\Delta +\let\upOmega\Omega +\let\upGamma\Gamma +\let\upTheta\Theta +\let\upLambda\Lambda +\let\upXi\Xi +\let\upPi\Pi +\let\upSigma\Sigma +\let\upUpsilon\Upsilon +\let\upPhi\Phi +\let\upPsi\Psi % \end{macrocode} % % \subsection{Leading} -% The +\baselineskip+ should be larger than with CM Roman. For text sizes, -% i.e.\ 8--12\,pt, a value of $1.25 \times \mathrm{size}$ is recommended. -% In order to overwrite the +\baselineskip+ defined in the commands -% like +\normalsize+, +\small+, etc., we use a trick from Frank Jensen's -% package \textsf{beton} (v1.3). -% First we set up a table containing our +\baselineskip+ values: +% The \verb+\baselineskip+ should be larger than with CM Roman. For text sizes, +% i.e., 8--12\,pt, a value of $1.25 \times \mathrm{size}$ is recommended. +% In order to overwrite the \verb+\baselineskip+ defined in the commands +% like \cmd{\normalsize}, \cmd{\small}, etc., we use a trick from Frank Jensen's +% package \Lpack{beton} (v1.3). +% First we set up a table containing our \verb+\baselineskip+ values: % \begin{macrocode} \def\bright@baselineskip@table {<\@viiipt>10<\@ixpt>11.25<\@xpt>12.5<\@xipt>13.7<\@xiipt>15} % \end{macrocode} -% All the standard \LaTeX\ size-changing commands (+\small+, +\large+, -% etc.)\ are defined in terms of the +\@setfontsize+ macro. This -% macro is called with the following three arguments: +#1+~is the -% size-changing command; +#2+~is the font size; +#3+~is the -% +\baselineskip+ value. We modify this macro to check -% the above +\bright@baselineskip@table+ for an alternative +\baselineskip+ +% All the standard \LaTeX\ size-changing commands +% are defined in terms of the \cmd{\@setfontsize} macro. This +% macro is called with the following three arguments: \verb+#1+~is the +% size-changing command; \verb+#2+~is the font size; \verb+#3+~is the +% \verb+\baselineskip+ value. We modify this macro to check +% the above \verb+\bright@baselineskip@table+ for an alternative \verb+\baselineskip+ % value: % \begin{macrocode} \def\bright@setfontsize#1#2#3% @@ -345,149 +361,316 @@ \fi \old@setfontsize{#1}{#2}\bright@baselineskip@value} % \end{macrocode} -% Now we redefine +\@setfontsize+: +% Finally, we save the default meaning of \cmd{\@setfontsize}\dots % \begin{macrocode} \let\old@setfontsize=\@setfontsize -\let\@setfontsize=\bright@setfontsize % \end{macrocode} -% The +\baselineskip+ values specified in the above table should be +% \dots and declare an option to set up tbe enlarged line space: +% \begin{macrocode} +\DeclareOption{enlarged-baselineskips}{% + \let\@setfontsize=\bright@setfontsize} +% \end{macrocode} +% The \verb+\baselineskip+ values specified in the above table should be % appropriate for most purposes, i.e., for one-column material in the % normal article/report/book formats. However, it is sometimes -% desirable to use a smaller value for +\baselineskip+, e.g.\ in two-column -% material. We therefore provide an option -% to turn off the above automatic mechanism for +\baselineskip+ settings: +% desirable to turn off the above automatic mechanism: % \begin{macrocode} \DeclareOption{standard-baselineskips}{% \let\@setfontsize=\old@setfontsize} % \end{macrocode} -% Note that the +\let+-assignment has to be executed after -% +\old@setfontsize+ has been defined; this is ensured by -% the fact that options are processed at the end of the package. % -% \subsection{Old-style numerals} -% Old-style numerals are to be taken from CM Bright, too: -% \begin{macrocode} -\def\oldstylenums#1{% - \begingroup - \spaceskip\fontdimen\tw@\font - \usefont{OML}{cmbrm}{\f@series}{it}% - \mathgroup\symletters #1% - \endgroup -} -% \end{macrocode} -% In the future this may change; old-style numerals could be -% taken from the text companion font, thus even providing `oldstyle -% bold extended'~etc. % % \subsection{Missing symbols} -% The OT1 encoded CM Bright fonts do not contain the symbol \pounds. +% The OT1 encoded CM~Bright fonts do not contain the symbol \pounds. % We must therefore redefine the -% commands +\textsterling+ and +\mathsterling+. -% They will now use the roman text font family: +% commands \cmd{\textsterling} and \cmd{\mathsterling}, so that they use +% the roman text font family: % \begin{macrocode} \DeclareTextCommand{\textsterling}{OT1}{{% - \rmfamily \ifdim \fontdimen\@ne\font >\z@ - \itshape + \fontfamily{\rmdefault}\fontshape{it}\selectfont \else - \fontshape{ui}\selectfont + \fontfamily{\rmdefault}\fontshape{ui}\selectfont \fi \char`\$}} -\def\mathsterling{\textsl{\textsterling}} % \end{macrocode} -% Since there is no `caps and small caps' font shape, the definition of -% \textregistered\ must be changed: +% The following is not entirely correct, because the size will be wrong +% in super- or subscripts: % \begin{macrocode} -\DeclareTextCommandDefault{\textregistered}{% - \textcircled{{\rmfamily\scshape r}}} +\def\mathsterling{\textsl{\textsterling}} % \end{macrocode} % -% \subsection{Defining the AMS symbol fonts} -% In case the package \textsf{amsfonts} is loaded additionally, -% the CM Bright versions of the AMS symbol fonts are to be used. -% The \textsf{amsfonts} package, when loaded with the \texttt[psamsfonts] option, +% \subsection{Declaring the AMS symbol fonts} +% In case the package \Lpack{amsfonts} is loaded additionally, +% the CM~Bright versions of the AMS symbol fonts are to be used. +% The \Lpack{amsfonts} package, when loaded with the \texttt[psamsfonts] option, % will issue its own font definition commands, so we have to defer ours % after loading of the packages, so as not to let them be overwritten. % \begin{macrocode} \AtBeginDocument{% \DeclareFontFamily{U}{msa}{} \DeclareFontShape{U}{msa}{m}{n}{% - <5><6><7><8>cmbras8% - <9>cmbras9% - <10><10.95><12><14.4><17.28><20.74><24.88>cmbras10% + <-9>cmbras8% + <9-10>cmbras9% + <10->cmbras10% }{} \DeclareFontFamily{U}{msb}{} \DeclareFontShape{U}{msb}{m}{n}{% - <5><6><7><8>cmbrbs8% - <9>cmbrbs9% - <10><10.95><12><14.4><17.28><20.74><24.88>cmbrbs10% + <-9>cmbrbs8% + <9-10>cmbrbs9% + <10->cmbrbs10% }{} } % \end{macrocode} % - -% \subsection{Patches for obsolete \LaTeX{} releases} -% With a \LaTeX{} release previous to 1995/06/01 -% some macros from the \LaTeX{} kernel and the standard classes -% must be redefined, because they explicitely select a font with serifs: +% \subsection{Logos} +% The definitions of the \TeX\ and \LaTeX\ logos must be adapted to work +% with the CM Bright fonts: % \begin{macrocode} -%<*patch> -\typeout{* This package `cmbright' contains patches} -\typeout{* to be used with obsolete versions of LaTeX.} -\typeout{* However, if your LaTeX is from 1995/06/01 or newer,} -\typeout{* you MUST redo the installation of the package,} -\typeout{* in order to generate it again, without the patches!} -\def\@dottedtocline#1#2#3#4#5{\ifnum #1>\c@tocdepth \else - \vskip \z@ \@plus.2\p@ - {\leftskip #2\relax \rightskip \@tocrmarg \parfillskip -\rightskip - \parindent #2\relax\@afterindenttrue - \interlinepenalty\@M - \leavevmode - \@tempdima #3\relax - \advance\leftskip \@tempdima \hbox{}\hskip -\leftskip - {#4}\nobreak\leaders\hbox{$\m@th \mkern \@dotsep mu.\mkern \@dotsep - mu$}\hfill \nobreak - \hbox to\@pnumwidth{\hfil\reset@font #5}\par}\fi} -\def\@eqnnum{{\reset@font(\theequation)}} -\DeclareOption{leqno}{ -\renewcommand\@eqnnum{\hbox to .01\p@{}% - \rlap{\reset@font% - \hskip -\displaywidth(\theequation)}}} -\def\ps@plain{\let\@mkboth\@gobbletwo - \let\@oddhead\@empty\def\@oddfoot{\reset@font\hfil\thepage - \hfil}\let\@evenhead\@empty\let\@evenfoot\@oddfoot} -\pagestyle{plain} -%</patch> +\def\TeX{T\kern-.19em\lower.5ex\hbox{E}\kern-.05emX\@} +\DeclareRobustCommand{\LaTeX}{L\kern-.3em% + {\sbox\z@ T% + \vbox to\ht\z@{\hbox{\check@mathfonts + \fontsize\sf@size\z@ + \math@fontsfalse\selectfont + A}% + \vss}% + }% + \kern-.15em% + \TeX} +\DeclareRobustCommand{\LaTeXe}{\mbox{\m@th + \if b\expandafter\@car\f@series\@nil\boldmath\fi + \LaTeX\kern.15em2$_{\textstyle\varepsilon}$}} % \end{macrocode} % % \subsection{Processing the options} % \begin{macrocode} +\ExecuteOptions{enlarged-baselineskips} \ProcessOptions\relax % \end{macrocode} % % \subsection{Initialization} % We ensure that any package loaded after \texttt{cmbright} -% will find the new value of +\baselineskip+ -% and the new +\normalfont+, which has a larger `em' than CM Roman. +% will find the (possibly) changed value of the line space, as well as +% the changed default font. % \begin{macrocode} \normalfont\normalsize +%</package> +% \end{macrocode} +% +% \section{The font definition files} +% +% \subsection{CM~Bright, OT1 encoding} +% +% \begin{macrocode} +%<*cm> +\DeclareFontFamily{OT1}{cmbr}{\hyphenchar\font45} +\DeclareFontShape{OT1}{cmbr}{m}{n}{% +<-9>cmbr8% +<9-10>cmbr9% +<10-17>cmbr10% +<17->cmbr17% +}{} +\DeclareFontShape{OT1}{cmbr}{m}{sl}{% +<-9>cmbrsl8% +<9-10>cmbrsl9% +<10-17>cmbrsl10% +<17->cmbrsl17% +}{} +\DeclareFontShape{OT1}{cmbr}{m}{it}{% +<->ssub*cmbr/m/sl% +}{} +\DeclareFontShape{OT1}{cmbr}{b}{n}{% +<->ssub*cmbr/bx/n% +}{} +\DeclareFontShape{OT1}{cmbr}{bx}{n}{% +<-9>sub*cmbr/m/n% +<9->cmbrbx10% +}{} %</cm> % \end{macrocode} % -% \section*{This file \ldots} -% \ldots{} +cmbright.dtx+ contains the following -% DocStrip modules: -% \begin{quote} -% \begin{tabular}{ll} -% module: & contents:\\[0.5ex] -% +cm+ & package +cmbright+\\ -% +driver+ & driver for documentaion \\ -% +patch+ & patches for \LaTeX{} release $<$ June 1995 -% \end{tabular} -% \end{quote} -% The module +patch+ should only be selected together with +cm+. -% \vspace{1ex} +% \subsection{CM~Bright, T1 encoding} +% +% \begin{macrocode} +%<*ec> +\DeclareFontFamily{T1}{cmbr}{} +\DeclareFontShape{T1}{cmbr}{m}{n}{% +<-9>ebmr8% +<9-10>ebmr9% +<10-17>ebmr10% +<17->ebmr17% +}{} +\DeclareFontShape{T1}{cmbr}{m}{sl}{% +<-9>ebmo8% +<9-10>ebmo9% +<10-17>ebmo10% +<17->ebmo17% +}{} +\DeclareFontShape{T1}{cmbr}{m}{it}{% +<->ssub*cmbr/m/sl% +}{} +\DeclareFontShape{T1}{cmbr}{sb}{n}{% +<-9>ebsr8% +<9-10>ebsr9% +<10-17>ebsr10% +<17->ebsr17% +}{} +\DeclareFontShape{T1}{cmbr}{sb}{sl}{% +<-9>ebso8% +<9-10>ebso9% +<10-17>ebso10% +<17->ebso17% +}{} +\DeclareFontShape{T1}{cmbr}{sb}{it}{% +<->ssub*cmbr/sb/sl% +}{} +\DeclareFontShape{T1}{cmbr}{b}{n}{% +<->ssub*cmbr/bx/n% +}{} +\DeclareFontShape{T1}{cmbr}{bx}{n}{% +<-9>sub*cmbr/sb/n% +<9->ebbx10% +}{} +%</ec> +% \end{macrocode} +% +% \subsection{CM Typewriter Light, OT1 encoding} % +% \begin{macrocode} +%<*ot1cmtl> +\DeclareFontFamily{OT1}{cmtl}{\hyphenchar\font\m@ne} +\DeclareFontShape{OT1}{cmtl}{m}{n}{% +<->cmtl10% +}{} +\DeclareFontShape{OT1}{cmtl}{m}{sl}{% +<->cmsltl10% +}{} +\DeclareFontShape{OT1}{cmtl}{m}{it}{<->ssub*cmtl/m/sl}{} +%</ot1cmtl> +% \end{macrocode} +% +% \subsection{CM Typewriter Light, T1 encoding} +% +% \begin{macrocode} +%<*t1cmtl> +\DeclareFontFamily{T1}{cmtl}{\hyphenchar\font\m@ne} +\DeclareFontShape{T1}{cmtl}{m}{n}{% +<->ebtl10% +}{} +\DeclareFontShape{T1}{cmtl}{m}{sl}{% +<->ebto10% +}{} +\DeclareFontShape{T1}{cmtl}{m}{it}{<->ssub*cmtl/m/sl}{} +%</t1cmtl> +% \end{macrocode} +% +% \subsection{CM~Bright Math Inclined, OML encoding} +% +% \begin{macrocode} +%<*omlcmbrm> +\DeclareFontFamily{OML}{cmbrm}{\skewchar\font 127} +\DeclareFontShape{OML}{cmbrm}{m}{it}{% +<-9>cmbrmi8% +<9-10>cmbrmi9% +<10->cmbrmi10% +}{} +\DeclareFontShape{OML}{cmbrm}{b}{it}{% +<->cmbrmb10% +}{} +%</omlcmbrm> +% \end{macrocode} +% +% \subsection{CM~Bright Symbols, OMS encoding} +% +% \begin{macrocode} +%<*omscmbrs> +\DeclareFontFamily{OMS}{cmbrs}{\skewchar\font 48} +\DeclareFontShape{OMS}{cmbrs}{m}{n}{% +<-9>cmbrsy8% +<9-10>cmbrsy9% +<10->cmbrsy10% +}{} +%</omscmbrs> +% \end{macrocode} +% +% \subsection{CM~Bright, OML encoding} +% We need this for some special tex symbols which may be taken from +% the `math italic' font. +% \begin{macrocode} +%<*omlcmbr> +\DeclareFontFamily{OML}{cmbr}{\skewchar\font 127} +\DeclareFontShape{OML}{cmbr}{m}{it}{<->ssub*cmbrm/m/it}{} +\DeclareFontShape{OML}{cmbr}{sb}{it}{<->ssub*cmbrm/b/it}{} +\DeclareFontShape{OML}{cmbr}{bx}{it}{<->ssub*cmbrm/b/it}{} +%</omlcmbr> +% \end{macrocode} +% +% \subsection{CM~Bright, OMS encoding} +% We need this for some special text symbols which may be taken from +% the mathematical symbol font. +% \begin{macrocode} +%<*omscmbr> +\DeclareFontFamily{OMS}{cmbr}{\skewchar\font 48} +\DeclareFontShape{OMS}{cmbr}{m}{n}{<->ssub*cmbrs/m/n}{} +%</omscmbr> +% \end{macrocode} +% +% \subsection{CM~Bright, TS1 encoding} +% +% \begin{macrocode} +%<*ts1cmbr> +\DeclareFontFamily{TS1}{cmbr}{\hyphenchar\font\m@ne} +\DeclareFontShape{TS1}{cmbr}{m}{n}{% +<-9>tbmr8% +<9-10>tbmr9% +<10-17>tbmr10% +<17->tbmr17% +}{} +\DeclareFontShape{TS1}{cmbr}{m}{sl}{% +<-9>tbmo8% +<9-10>tbmo9% +<10-17>tbmo10% +<17>tbmo17% +}{} +\DeclareFontShape{TS1}{cmbr}{m}{it}{% +<->ssub*cmbr/m/sl}{} +\DeclareFontShape{TS1}{cmbr}{sb}{n}{% +<-9>tbsr8% +<9-10>tbsr9% +<10-17>tbsr10% +<17->tbsr17% +}{} +\DeclareFontShape{TS1}{cmbr}{sb}{sl}{% +<-9>tbso8% +<9-10>tbso9% +<10-17>tbso10% +<17->tbso17% +}{} +\DeclareFontShape{TS1}{cmbr}{sb}{it}{<->ssub*cmbr/sb/sl}{} +\DeclareFontShape{TS1}{cmbr}{b}{n}{<->ssub*cmbr/bx/n}{} +\DeclareFontShape{TS1}{cmbr}{bx}{n}{% +<-9>sub*cmbr/sb/n% +<9->tbbx10% +}{} +%</ts1cmbr> +% \end{macrocode} +% +% \subsection{CM Typewriter Light, TS1 encoding} +% +% \begin{macrocode} +%<*ts1cmtl> +\DeclareFontFamily{TS1}{cmtl}{\hyphenchar\font\m@ne} +\DeclareFontShape{TS1}{cmtl}{m}{n}{% +<->tbtl10% +}{} +\DeclareFontShape{TS1}{cmtl}{m}{sl}{% +<->tbto10% +}{} +\DeclareFontShape{TS1}{cmtl}{m}{it}{<->ssub*cmtl/m/sl}{} +%</ts1cmtl> +% \end{macrocode} +% % The next line of code prevents DocStrip from adding the % character table to all modules: % \begin{macrocode} @@ -510,4 +693,3 @@ %% Grave accent \` Left brace \{ Vertical bar \| %% Right brace \} Tilde \~} %% - |