Überarbeitungsverlauf[Zurück]
Klicke auf Einblenden/Ausblenden von Überarbeitungen 9

23 Dez '16, 16:11

cgnieder's gravatar image

cgnieder
22.1k253463

Um Henris Antwort etwas zu ergänzen: `\bf`, `\it`, `\tt` und Konsorten gelten für LaTeX2e (also seit 1994!) als obsolet. Sowohl in plain TeX als auch in ConTeXt sind diese Befehle aber keineswegs obsolet! In LaTeX2e wurde das NFSS, das **N**ew **F**ont **S**election **S**cheme einführt, das die folgenden Makros definiert: ### Schriftfamilien ### - `\rmfamily` und `\textrm{}` (Antiqua, roman) - `\sffamily` und `\textsf{}` (Groteske, sans serif) - `\ttfamily` und `\texttt{}` (Dicktengleich, teletype) ### Schriftserien ### - `\bfseries` und `\textbf{}` (fett, bold face) - `\mdseries` und `\textmd{}` (medium) ### Schriftformen ### - `\upshape` und `\textup{}` (aufrecht, upright) - `\itshape` und `\textit{}` (kursiv, italic) - `\slshape` und `\textsl{}` (geneigt, slanted) - `\scshape` und `\textsc{}` (Kapitälchen, small caps) Wie schon von Henri erwähnt, funktionieren sie (solange sie sich nicht widersprechen) additiv, d.h. `\textbf{\textit{text}}` gibt ***fetten kursiven*** Text (so die Schrift diese Glyphen denn besitzt). **Das gilt _nicht_ für die plainTeX-Befehle!** Die `\text...`-befehle fügen außerdem eine eventuelle Kursivkorrektur am Ende des gesetzten Texts hinzu, **die man mit den plainTeX-Befehlen von Hand mit `\\/` einfügen müsste**. ---------- Die Befehle `\bf`, `\it`, `\sl`, `\sc`,... werden übrigens vom LaTeX2e-Kernel überhaupt nicht definiert, sondern von der verwendeten Klasse. Das heißt, es _kann sein_, dass sie *je nach verwendeter Klasse gar nicht zur Verfügung stehen*. Allerdings ist mir in der Praxis noch kein Fall untergekommen, wo das der Fall war. Wenn sie definiert sind, dann in der Regel so, dass sie auf die NFSS-Befehle zurückfallen, in `article` etwa mit `\DeclareOldFontCommand{\it}{\normalfont\itshape}{\mathit}`. Verwendet man übrigens einen dieser Befehle mit `memoir`, dann erhält man eine Warnung. Im Falle von KOMA-Script einer KOMA-Script-Klasse erhält man gar eine Fehlermeldung: ./test.tex:3: Class scrartcl Error: undefined old font command `\bf'. See the scrartcl class documentation for explanation. Type H <return> for immediate help. ... l.3 \bf You should note that since 1994 LaTeX2e provides a new font selection scheme called NFSS2 with several new, combinable font commands. KOMA-Script classes had defined the old font commands like `\bf' only for compatibility with old LaTeX 2.09 document styles of Script 2.0. Nevertheless, these commands are deprecated and undocumented at least since 2003. Since 2013 KOMA-Script classes warned about soon removement of these deprecated commands. Now, after two decades of LaTeX2e and NFSS2, these commands will not work any more. If loading a package results in this error message, you should contact the author of that package and ask him to replace the deprecated font command `\bf', e.g., by `\normalfont \bfseries `. Otherwise you should reconfigure or replace the package. If you have used the old font command `\bf' yourself, you should replace it, e.g., by `\normalfont \bfseries '. To make it work for now, you can use the already also deprecated class option `enabledeprecatedfontcommands'.
Klicke auf Einblenden/Ausblenden von Überarbeitungen 8
Update zu neuem Verhalten von KOMA-Script

23 Dez '16, 16:09

cgnieder's gravatar image

cgnieder
22.1k253463

Um Henris Antwort etwas zu ergänzen: `\bf`, `\it`, `\tt` und Konsorten gelten für LaTeX2e (also seit 1994!) als obsolet. Sowohl in plain TeX als auch in ConTeXt sind diese Befehle aber keineswegs obsolet! In LaTeX2e wurde das NFSS, das **N**ew **F**ont **S**election **S**cheme einführt, das die folgenden Makros definiert: ### Schriftfamilien ### - `\rmfamily` und `\textrm{}` (Antiqua, roman) - `\sffamily` und `\textsf{}` (Groteske, sans serif) - `\ttfamily` und `\texttt{}` (Dicktengleich, teletype) ### Schriftserien ### - `\bfseries` und `\textbf{}` (fett, bold face) - `\mdseries` und `\textmd{}` (medium) ### Schriftformen ### - `\upshape` und `\textup{}` (aufrecht, upright) - `\itshape` und `\textit{}` (kursiv, italic) - `\slshape` und `\textsl{}` (geneigt, slanted) - `\scshape` und `\textsc{}` (Kapitälchen, small caps) Wie schon von Henri erwähnt, funktionieren sie (solange sie sich nicht widersprechen) additiv, d.h. `\textbf{\textit{text}}` gibt ***fetten kursiven*** Text (so die Schrift diese Glyphen denn besitzt). **Das gilt _nicht_ für die plainTeX-Befehle!** Die `\text...`-befehle fügen außerdem eine eventuelle Kursivkorrektur am Ende des gesetzten Texts hinzu, **die man mit den plainTeX-Befehlen von Hand mit `\\/` einfügen müsste**. ---------- Die Befehle `\bf`, `\it`, `\sl`, `\sc`,... werden übrigens vom LaTeX2e-Kernel überhaupt nicht definiert, sondern von der verwendeten Klasse. Das heißt, es _kann sein_, dass sie *je nach verwendeter Klasse gar nicht zur Verfügung stehen*. Allerdings ist mir in der Praxis noch kein Fall untergekommen, wo das der Fall war. Wenn sie definiert sind, dann in der Regel so, dass sie auf die NFSS-Befehle zurückfallen, in `article` etwa mit `\DeclareOldFontCommand{\it}{\normalfont\itshape}{\mathit}`. Verwendet man übrigens einen dieser Befehle mit einer KOMA-Script-Klasse (>= v3.12 2013/12/19) oder mit `memoir`, dann erhält man eine Warnung. Im Falle von KOMA-Script ist das beispielsweise erhält man gar eine Fehlermeldung: ./test.tex:3: Class scrartcl Warning: Usage of deprecated Error: undefined old font command `\tt'! (scrartcl) `\bf'. See the scrartcl class documentation for explanation. Type H <return> for immediate help. ... l.3 \bf You should note, note that in since 1994 LaTeX2e provides a new font command `\tt' has (scrartcl) been selection scheme called NFSS2 with several new, combinable font commands. KOMA-Script classes had defined the old font commands like `\bf' only for compatiblitiy to compatibility with old LaTeX 2.09 document styles of Script 2.0 only. (scrartcl) 2.0. Nevertheless, these commands are deprecated and undocumented at least since 2003. Since 2013 KOMA-Script classes warned about soon removement of these deprecated commands. Now, after two decades of LaTeX2e and NFSS2, you (scrartcl) shouldn't use such these commands any longer will not work any more. If loading a package results in this error message, you should contact the author of that package and within (scrartcl) KOMA-Script usage of `\tt' is definitely deprecated. (scrartcl) See `fntguide.pdf' for more information about (scrartcl) recommended ask him to replace the deprecated font commands. (scrartcl) Note also, that KOMA-Script will remove command `\bf', e.g., by `\normalfont \bfseries `. Otherwise you should reconfigure or replace the definition (scrartcl) of `\tt' anytime until release of about version 3.20. (scrartcl) But package. If you have used the old font command `\bf' yourself, you should replace it, e.g., by `\normalfont \bfseries '. To make it work for now, KOMA-Script will replace you can use the already also deprecated `\tt' (scrartcl) by `\normalfont \ttfamily ' on input line 5.class option `enabledeprecatedfontcommands'.
Klicke auf Einblenden/Ausblenden von Überarbeitungen 7

30 Aug '15, 12:54

cgnieder's gravatar image

cgnieder
22.1k253463

Klicke auf Einblenden/Ausblenden von Überarbeitungen 6

27 Dez '13, 17:02

cgnieder's gravatar image

cgnieder
22.1k253463

Klicke auf Einblenden/Ausblenden von Überarbeitungen 5

27 Dez '13, 17:01

cgnieder's gravatar image

cgnieder
22.1k253463

Klicke auf Einblenden/Ausblenden von Überarbeitungen 4

27 Dez '13, 17:01

cgnieder's gravatar image

cgnieder
22.1k253463

Klicke auf Einblenden/Ausblenden von Überarbeitungen 3

25 Aug '13, 21:04

cgnieder's gravatar image

cgnieder
22.1k253463

Klicke auf Einblenden/Ausblenden von Überarbeitungen 2

11 Jun '13, 22:23

cgnieder's gravatar image

cgnieder
22.1k253463

Klicke auf Einblenden/Ausblenden von Überarbeitungen 1

11 Jun '13, 22:12

cgnieder's gravatar image

cgnieder
22.1k253463