texinfo-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

texinfo update (Mon Nov 22 18:52:01 EST 2004)


From: Karl Berry
Subject: texinfo update (Mon Nov 22 18:52:01 EST 2004)
Date: Mon, 22 Nov 2004 18:52:14 -0500

Index: ChangeLog
===================================================================
RCS file: /cvsroot/texinfo/texinfo/ChangeLog,v
retrieving revision 1.412
retrieving revision 1.413
diff -c -r1.412 -r1.413
*** ChangeLog   19 Nov 2004 14:14:22 -0000      1.412
--- ChangeLog   22 Nov 2004 23:57:32 -0000      1.413
***************
*** 1,3 ****
--- 1,17 ----
+ 2004-11-22  Karl Berry  <address@hidden>
+ 
+       * doc/texinfo.txi (euro): new node, documenting new command,
+               @euro{}, for the Euro currency symbol.
+       * doc/texinfo.tex (\euro): new command, along with \eurofont to
+       support it.  The following extra font support is also related to
+       supporting @euro{}:
+       (\bfstylename): define this.
+       (\textnominalsize .. \ssecnominalsize): new macros.
+       (\textfonts .. \ssecfonts): define \curfontsize.
+       * makeinfo/cmds.c (command_table): add euro.
+       * makeinfo/lang.c (cm_special_char): handle euro.
+       (iso8859_15_map): new global.   
+ 
  2004-11-18  Stepan Kasal  <address@hidden>
  
        * doc/texinfo.tex (\ptexnewwrite): Save \newwrite.
Index: NEWS
===================================================================
RCS file: /cvsroot/texinfo/texinfo/NEWS,v
retrieving revision 1.95
retrieving revision 1.96
diff -c -r1.95 -r1.96
*** NEWS        18 Nov 2004 01:10:59 -0000      1.95
--- NEWS        22 Nov 2004 23:57:32 -0000      1.96
***************
*** 1,4 ****
! $Id: NEWS,v 1.95 2004/11/18 01:10:59 karl Exp $
  This file records noteworthy changes.
  
    Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
--- 1,4 ----
! $Id: NEWS,v 1.96 2004/11/22 23:57:32 karl Exp $
  This file records noteworthy changes.
  
    Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
***************
*** 22,27 ****
--- 22,29 ----
  
  
-------------------------------------------------------------------------------
  * Language:
+   . new command @euro for the Euro currency symbol, and
+     @documentencoding has some support for ISO-8859-15.
    . new command @abbr for general abbreviations.
    . new command @slanted to typeset text with a slanted font.
  * texi2dvi:
Index: TODO
===================================================================
RCS file: /cvsroot/texinfo/texinfo/TODO,v
retrieving revision 1.25
retrieving revision 1.26
diff -c -r1.25 -r1.26
*** TODO        2 Nov 2004 17:45:37 -0000       1.25
--- TODO        22 Nov 2004 23:57:32 -0000      1.26
***************
*** 1,4 ****
! $Id: TODO,v 1.25 2004/11/02 17:45:37 karl Exp $
  This is the todo list for GNU Texinfo.
  If you are interested in working on any of these, email address@hidden
  
--- 1,4 ----
! $Id: TODO,v 1.26 2004/11/22 23:57:32 karl Exp $
  This is the todo list for GNU Texinfo.
  If you are interested in working on any of these, email address@hidden
  
***************
*** 71,81 ****
      `class::method'.  Likewise index entries.  A quoting mechanism such
      as surrounding node names with SPACE BACKSPACE is probably the best
      solution, although this is an incompatible change to Info format, sigh.
-   - Change bars.  This is difficult or impossible in TeX,
-     unfortunately.  To do it right requires device driver support.
-     wdiff or ediff may be all we can do.
-   - @LaTeX{} command to produce the LaTeX logo.
    - Glossary/general definition support (dumas msg 28 Nov 2003 17:09:57 
+0100).
  
  * Makeinfo:
    - Translation of "Appendix" etc. should depend on @doclang not $LANG.
--- 71,78 ----
      `class::method'.  Likewise index entries.  A quoting mechanism such
      as surrounding node names with SPACE BACKSPACE is probably the best
      solution, although this is an incompatible change to Info format, sigh.
    - Glossary/general definition support (dumas msg 28 Nov 2003 17:09:57 
+0100).
+   - Add support for other Latin 9 (and Latin 2 and Latin 1) characters.
  
  * Makeinfo:
    - Translation of "Appendix" etc. should depend on @doclang not $LANG.
***************
*** 88,99 ****
--- 85,100 ----
      makeinfo --no-headers comes close.
    - If node name contains an @ command, complain explicitly.
    - Use @documentlanguage instead of LANG for many translations.
+   - HTML: split output by chapter to improve context, per Akim.
+     Generate dummy files for all nodes for the sake of cross-references.
    - HTML: support thumbnails.
    - HTML: make images of math, maybe.
    - HTML: allow settable background color, table colors and spacing,
      <head> meta tags, etc.  A la http://texi2html.cvshome.org.  In fact:
    - HTML: have a library of different CSS styles.
      http://mail.gnu.org/archive/html/bug-texinfo/2004-01/msg00025.html
+   - XML: cannot be loaded directly in a browser; why not?
+   - Docbook: &euro; and other entities do not work; does anything work?
    - Rewrite completely to simplify generation of different formats.
  
  * TeX:
***************
*** 170,178 ****
    [This has the disadvantage of needing to be updated when the
    Texinfo language changes, so don't.]
  
- - Split HTML output by chapter.
-   [Then cross-references in HTML cannot be generated consistently.]
- 
  - Call Ghostscript to get ASCII/jpg output for the @image command.
    [makeinfo should not try to be make, or assume it knows how the user
     wants to generate images.  Too many different methods are possible.]
--- 171,181 ----
    [This has the disadvantage of needing to be updated when the
    Texinfo language changes, so don't.]
  
  - Call Ghostscript to get ASCII/jpg output for the @image command.
    [makeinfo should not try to be make, or assume it knows how the user
     wants to generate images.  Too many different methods are possible.]
+ 
+ - Change bars.  This is difficult or impossible in TeX,
+   unfortunately.  To do it right requires device driver support.
+   wdiff or ediff may be all we can do.  Merely specifying what should be
+   changed is not obvious.
Index: doc/texinfo.tex
===================================================================
RCS file: /cvsroot/texinfo/texinfo/doc/texinfo.tex,v
retrieving revision 1.179
retrieving revision 1.180
diff -c -r1.179 -r1.180
*** doc/texinfo.tex     19 Nov 2004 12:50:37 -0000      1.179
--- doc/texinfo.tex     22 Nov 2004 23:57:32 -0000      1.180
***************
*** 3,9 ****
  % Load plain if necessary, i.e., if running under initex.
  \expandafter\ifx\csname fmtname\endcsname\relax\input plain\fi
  %
! \def\texinfoversion{2004-11-08.15}
  %
  % Copyright (C) 1985, 1986, 1988, 1990, 1991, 1992, 1993, 1994, 1995,
  % 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004 Free Software
--- 3,9 ----
  % Load plain if necessary, i.e., if running under initex.
  \expandafter\ifx\csname fmtname\endcsname\relax\input plain\fi
  %
! \def\texinfoversion{2004-11-19.19}
  %
  % Copyright (C) 1985, 1986, 1988, 1990, 1991, 1992, 1993, 1994, 1995,
  % 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004 Free Software
***************
*** 1407,1413 ****
  \def\rm{\fam=0 \setfontstyle{rm}}
  \def\it{\fam=\itfam \setfontstyle{it}}
  \def\sl{\fam=\slfam \setfontstyle{sl}}
! \def\bf{\fam=\bffam \setfontstyle{bf}}
  \def\tt{\fam=\ttfam \setfontstyle{tt}}
  
  % Texinfo sort of supports the sans serif font style, which plain TeX does 
not.
--- 1407,1413 ----
  \def\rm{\fam=0 \setfontstyle{rm}}
  \def\it{\fam=\itfam \setfontstyle{it}}
  \def\sl{\fam=\slfam \setfontstyle{sl}}
! \def\bf{\fam=\bffam \setfontstyle{bf}}\def\bfstylename{bf}
  \def\tt{\fam=\ttfam \setfontstyle{tt}}
  
  % Texinfo sort of supports the sans serif font style, which plain TeX does 
not.
***************
*** 1469,1485 ****
  \def\scbshape{csc}
  
  % Text fonts (11.2pt, magstep1).
! \newcount\mainmagstep
! \ifx\bigger\relax
!   % not really supported.
!   \mainmagstep=\magstep1
!   \setfont\textrm\rmshape{12}{1000}
!   \setfont\texttt\ttshape{12}{1000}
! \else
!   \mainmagstep=\magstephalf
!   \setfont\textrm\rmshape{10}{\mainmagstep}
!   \setfont\texttt\ttshape{10}{\mainmagstep}
! \fi
  \setfont\textbf\bfshape{10}{\mainmagstep}
  \setfont\textit\itshape{10}{\mainmagstep}
  \setfont\textsl\slshape{10}{\mainmagstep}
--- 1469,1478 ----
  \def\scbshape{csc}
  
  % Text fonts (11.2pt, magstep1).
! \def\textnominalsize{11pt}
! \edef\mainmagstep{\magstephalf}
! \setfont\textrm\rmshape{10}{\mainmagstep}
! \setfont\texttt\ttshape{10}{\mainmagstep}
  \setfont\textbf\bfshape{10}{\mainmagstep}
  \setfont\textit\itshape{10}{\mainmagstep}
  \setfont\textsl\slshape{10}{\mainmagstep}
***************
*** 1496,1501 ****
--- 1489,1495 ----
  \def\df{\let\tentt=\deftt \let\tenbf = \defbf \let\tenttsl=\defttsl \bf}
  
  % Fonts for indices, footnotes, small examples (9pt).
+ \def\smallnominalsize{9pt}
  \setfont\smallrm\rmshape{9}{1000}
  \setfont\smalltt\ttshape{9}{1000}
  \setfont\smallbf\bfshape{10}{900}
***************
*** 1508,1513 ****
--- 1502,1508 ----
  \font\smallsy=cmsy9
  
  % Fonts for small examples (8pt).
+ \def\smallernominalsize{8pt}
  \setfont\smallerrm\rmshape{8}{1000}
  \setfont\smallertt\ttshape{8}{1000}
  \setfont\smallerbf\bfshape{10}{800}
***************
*** 1520,1525 ****
--- 1515,1521 ----
  \font\smallersy=cmsy8
  
  % Fonts for title page (20.4pt):
+ \def\titlenominalsize{20pt}
  \setfont\titlerm\rmbshape{12}{\magstep3}
  \setfont\titleit\itbshape{10}{\magstep4}
  \setfont\titlesl\slbshape{10}{\magstep4}
***************
*** 1534,1539 ****
--- 1530,1536 ----
  \def\authortt{\sectt}
  
  % Chapter (and unnumbered) fonts (17.28pt).
+ \def\chapnominalsize{17pt}
  \setfont\chaprm\rmbshape{12}{\magstep2}
  \setfont\chapit\itbshape{10}{\magstep3}
  \setfont\chapsl\slbshape{10}{\magstep3}
***************
*** 1546,1551 ****
--- 1543,1549 ----
  \font\chapsy=cmsy10 scaled \magstep3
  
  % Section fonts (14.4pt).
+ \def\secnominalsize{14pt}
  \setfont\secrm\rmbshape{12}{\magstep1}
  \setfont\secit\itbshape{10}{\magstep2}
  \setfont\secsl\slbshape{10}{\magstep2}
***************
*** 1558,1563 ****
--- 1556,1562 ----
  \font\secsy=cmsy10 scaled \magstep2
  
  % Subsection fonts (13.15pt).
+ \def\ssecnominalsize{13pt}
  \setfont\ssecrm\rmbshape{12}{\magstephalf}
  \setfont\ssecit\itbshape{10}{1315}
  \setfont\ssecsl\slbshape{10}{1315}
***************
*** 1570,1575 ****
--- 1569,1575 ----
  \font\ssecsy=cmsy10 scaled 1315
  
  % Reduced fonts for @acro in text (10pt).
+ \def\reducednominalsize{10pt}
  \setfont\reducedrm\rmshape{10}{1000}
  \setfont\reducedtt\ttshape{10}{1000}
  \setfont\reducedbf\bfshape{10}{1000}
***************
*** 1609,1614 ****
--- 1609,1615 ----
    \let\tenbf=\textbf \let\tentt=\texttt \let\smallcaps=\textsc
    \let\tensf=\textsf \let\teni=\texti \let\tensy=\textsy
    \let\tenttsl=\textttsl
+   \def\curfontsize{text}%
    \def\lsize{reduced}\def\lllsize{smaller}%
    \resetmathfonts \setleading{\textleading}}
  \def\titlefonts{%
***************
*** 1616,1628 ****
    \let\tenbf=\titlebf \let\tentt=\titlett \let\smallcaps=\titlesc
    \let\tensf=\titlesf \let\teni=\titlei \let\tensy=\titlesy
    \let\tenttsl=\titlettsl
    \def\lsize{chap}\def\lllsize{subsec}%
    \resetmathfonts \setleading{25pt}}
  \def\titlefont#1{{\titlefonts\rm #1}}
  \def\chapfonts{%
    \let\tenrm=\chaprm \let\tenit=\chapit \let\tensl=\chapsl
    \let\tenbf=\chapbf \let\tentt=\chaptt \let\smallcaps=\chapsc
!   \let\tensf=\chapsf \let\teni=\chapi \let\tensy=\chapsy 
\let\tenttsl=\chapttsl
    \def\lsize{sec}\def\lllsize{text}%
    \resetmathfonts \setleading{19pt}}
  \def\secfonts{%
--- 1617,1632 ----
    \let\tenbf=\titlebf \let\tentt=\titlett \let\smallcaps=\titlesc
    \let\tensf=\titlesf \let\teni=\titlei \let\tensy=\titlesy
    \let\tenttsl=\titlettsl
+   \def\curfontsize{title}%
    \def\lsize{chap}\def\lllsize{subsec}%
    \resetmathfonts \setleading{25pt}}
  \def\titlefont#1{{\titlefonts\rm #1}}
  \def\chapfonts{%
    \let\tenrm=\chaprm \let\tenit=\chapit \let\tensl=\chapsl
    \let\tenbf=\chapbf \let\tentt=\chaptt \let\smallcaps=\chapsc
!   \let\tensf=\chapsf \let\teni=\chapi \let\tensy=\chapsy
!   \let\tenttsl=\chapttsl
!   \def\curfontsize{chap}%
    \def\lsize{sec}\def\lllsize{text}%
    \resetmathfonts \setleading{19pt}}
  \def\secfonts{%
***************
*** 1630,1635 ****
--- 1634,1640 ----
    \let\tenbf=\secbf \let\tentt=\sectt \let\smallcaps=\secsc
    \let\tensf=\secsf \let\teni=\seci \let\tensy=\secsy
    \let\tenttsl=\secttsl
+   \def\curfontsize{sec}%
    \def\lsize{subsec}\def\lllsize{reduced}%
    \resetmathfonts \setleading{16pt}}
  \def\subsecfonts{%
***************
*** 1637,1642 ****
--- 1642,1648 ----
    \let\tenbf=\ssecbf \let\tentt=\ssectt \let\smallcaps=\ssecsc
    \let\tensf=\ssecsf \let\teni=\sseci \let\tensy=\ssecsy
    \let\tenttsl=\ssecttsl
+   \def\curfontsize{ssec}%
    \def\lsize{text}\def\lllsize{small}%
    \resetmathfonts \setleading{15pt}}
  \let\subsubsecfonts = \subsecfonts
***************
*** 1645,1650 ****
--- 1651,1657 ----
    \let\tenbf=\reducedbf \let\tentt=\reducedtt \let\reducedcaps=\reducedsc
    \let\tensf=\reducedsf \let\teni=\reducedi \let\tensy=\reducedsy
    \let\tenttsl=\reducedttsl
+   \def\curfontsize{reduced}%
    \def\lsize{small}\def\lllsize{smaller}%
    \resetmathfonts \setleading{10.5pt}}
  \def\smallfonts{%
***************
*** 1652,1657 ****
--- 1659,1665 ----
    \let\tenbf=\smallbf \let\tentt=\smalltt \let\smallcaps=\smallsc
    \let\tensf=\smallsf \let\teni=\smalli \let\tensy=\smallsy
    \let\tenttsl=\smallttsl
+   \def\curfontsize{small}%
    \def\lsize{smaller}\def\lllsize{smaller}%
    \resetmathfonts \setleading{10.5pt}}
  \def\smallerfonts{%
***************
*** 1659,1664 ****
--- 1667,1673 ----
    \let\tenbf=\smallerbf \let\tentt=\smallertt \let\smallcaps=\smallersc
    \let\tensf=\smallersf \let\teni=\smalleri \let\tensy=\smallersy
    \let\tenttsl=\smallerttsl
+   \def\curfontsize{smaller}%
    \def\lsize{smaller}\def\lllsize{smaller}%
    \resetmathfonts \setleading{9.5pt}}
  
***************
*** 1960,1965 ****
--- 1969,2022 ----
  %
  \def\pounds{{\it\$}}
  
+ % @euro{} comes from a separate font, depending on the current style.
+ % We use the free feym* fonts from the eurosym package by Henrik
+ % Theiling, which support regular, slanted, bold and bold slanted (and
+ % "outlined" (blackboard board, sort of) versions, which we don't need).
+ % It is available from http://www.ctan.org/tex-archive/fonts/eurosym.
+ % 
+ % Although only regular is the truly official Euro symbol, we ignore
+ % that.  The Euro is designed to be slightly taller than the regular
+ % font height.
+ % 
+ % feymr - regular
+ % feymo - slanted
+ % feybr - bold
+ % feybo - bold slanted
+ % 
+ % There is no good (free) typewriter version, to my knowledge.
+ % A feymr10 euro is ~7.3pt wide, while a normal cmtt10 char is ~5.25pt wide.
+ % Hmm.
+ % 
+ % Also doesn't work in math.  Do we need to do math with euro symbols?
+ % Hope not.
+ % 
+ % 
+ \def\euro{{\eurofont e}}
+ \def\eurofont{%
+   % We set the font at each command, rather than predefining it in
+   % \textfonts and the other font-switching commands, so that
+   % installations which never need the symbold don't have to have the
+   % font installed.
+   % 
+   % There is only one designed size (nominal 10pt), so we always scale
+   % that to the current nominal size.
+   % 
+   % By the way, simply using "at 1em" works for cmr10 and the like, but
+   % does not work for cmbx10 and other extended/shrunken fonts.
+   % 
+   \def\eurosize{\csname\curfontsize nominalsize\endcsname}%
+   %
+   \ifx\curfontstyle\bfstylename 
+     % bold:
+     \font\thiseurofont = \ifusingit{feybo10}{feybr10} at \eurosize
+   \else 
+     % regular:
+     \font\thiseurofont = \ifusingit{feymo10}{feymr10} at \eurosize
+   \fi
+   \thiseurofont
+ }
+ 
  % @registeredsymbol - R in a circle.  The font for the R should really
  % be smaller yet, but lllsize is the best we can do for now.
  % Adapted from the plain.tex definition of \copyright.
***************
*** 3166,3171 ****
--- 3223,3229 ----
    \definedummyword{enddots}%
    \definedummyword{equiv}%
    \definedummyword{error}%
+   \definedummyword{euro}%
    \definedummyword{expansion}%
    \definedummyword{minus}%
    \definedummyword{pounds}%
***************
*** 3304,3309 ****
--- 3362,3368 ----
    \def\enddots{...}%
    \def\equiv{==}%
    \def\error{error}%
+   \def\euro{euro}%
    \def\expansion{==>}%
    \def\minus{-}%
    \def\pounds{pounds}%
Index: doc/texinfo.txi
===================================================================
RCS file: /cvsroot/texinfo/texinfo/doc/texinfo.txi,v
retrieving revision 1.115
retrieving revision 1.116
diff -c -r1.115 -r1.116
*** doc/texinfo.txi     7 Oct 2004 12:13:02 -0000       1.115
--- doc/texinfo.txi     22 Nov 2004 23:57:32 -0000      1.116
***************
*** 1,5 ****
  \input texinfo.tex    @c -*-texinfo-*-
! @c $Id: texinfo.txi,v 1.115 2004/10/07 12:13:02 karl Exp $
  @c Ordinarily, Texinfo files have the extension .texi.  But texinfo.texi
  @c clashes with texinfo.tex on 8.3 filesystems, so we use texinfo.txi.
  
--- 1,5 ----
  \input texinfo.tex    @c -*-texinfo-*-
! @c $Id: texinfo.txi,v 1.116 2004/11/22 23:57:32 karl Exp $
  @c Ordinarily, Texinfo files have the extension .texi.  But texinfo.texi
  @c clashes with texinfo.tex on 8.3 filesystems, so we use texinfo.txi.
  
***************
*** 440,445 ****
--- 440,446 ----
  * Dots Bullets::                How to insert dots and bullets.
  * TeX and copyright::           How to insert the @TeX{} logo
                                   and the copyright symbol.
+ * euro::                        How to insert the Euro currency symbol.
  * pounds::                      How to insert the pounds currency symbol.
  * minus::                       How to insert a minus sign.
  * math::                        How to format a mathematical expression.
***************
*** 9991,9996 ****
--- 9992,9998 ----
  * Dots Bullets::                How to insert dots and bullets.
  * TeX and copyright::           How to insert the @TeX{} logo
                                   and the copyright symbol.
+ * euro::                        How to insert the Euro currency symbol.
  * pounds::                      How to insert the pounds currency symbol.
  * minus::                       How to insert a minus sign.
  * math::                        How to format a mathematical expression.
***************
*** 10525,10538 ****
  @samp{R} inside a circle; in Info, this is @samp{(R)}.
  
  
  @node pounds
  @section @code{@@address@hidden@} (@pounds{}): Pounds Sterling
  @findex pounds
  
! Use the @code{@@address@hidden@}} command to generate address@hidden'.  In a
! printed manual, this is the symbol for the currency pounds sterling.
! In Info, it is a @samp{#}.  Other currency symbols are unfortunately not
! available.
  
  
  @node minus
--- 10527,10564 ----
  @samp{R} inside a circle; in Info, this is @samp{(R)}.
  
  
+ @node euro
+ @section @code{@@address@hidden@} (@euro{}): Euro currency symbol
+ @findex euro
+ 
+ Use the @code{@@address@hidden@}} command to generate address@hidden'.  Where
+ possible, this is the symbol for the Euro currency, invented as part
+ of the European economic unification relatively recently.  In plain
+ Info, it is the word @samp{Euro }.  (The space is included in the text
+ transliteration since typically there would be no space after the
+ symbol, so it would be inappropriate to have a space in the source document.)
+ 
+ Texinfo cannot magically synthesize support for the Euro symbol where
+ the underlying system (fonts, software, whatever) does not support
+ it.  Therefore, in many cases it is preferable to use the word
+ ``Euro''.  (In banking circles, the abbreviation for the Euro is EUR.)
+ 
+ @cindex ISO 8859-15
+ @cindex Latin 9
+ In order to get the Euro symbol in encoded Info output, for example,
+ it is necessary to specify @code{@@documentencoding ISO-8859-15}.
+ (@xref{documentencoding}.)  The Euro symbol is in ISO 8859-15 (aka
+ address@hidden), and is @emph{not} in the more widely-used and supported
+ ISO 8859-1 (address@hidden).
+ 
+ 
  @node pounds
  @section @code{@@address@hidden@} (@pounds{}): Pounds Sterling
  @findex pounds
  
! Use the @code{@@address@hidden@}} command to generate address@hidden'.  Where
! possible, this is the symbol for the currency pounds sterling.  In
! Info, it is a @samp{#}.
  
  
  @node minus
***************
*** 13332,13347 ****
  encoding.  Write it on a line by itself, with a valid encoding
  specification following.
  
! At present, Texinfo supports only three encodings:
  
  @table @code
  @item US-ASCII
  This has no particular effect, but it's included for completeness.
  @itemx ISO-8859-1
  @item ISO-8859-2
! These specify the standard encodings for Western European and
! Eastern European languages, respectively.  A full description of the
! encodings is beyond our scope here;
  @uref{http://czyborra.com/charsets/iso8859.html} is one of many useful
  references.
  @end table
--- 13358,13379 ----
  encoding.  Write it on a line by itself, with a valid encoding
  specification following.
  
! At present, Texinfo supports only these encodings:
  
  @table @code
  @item US-ASCII
  This has no particular effect, but it's included for completeness.
+ 
  @itemx ISO-8859-1
+ @itemx ISO-8859-15
  @item ISO-8859-2
! These specify the standard encodings for Western European (the first
! two) and Eastern European languages (the third), respectively.  ISO
! 8859-15 replaces some little-used characters from 8859-1 (e.g.,
! precomposed fractions) with more commonly needed ones, such as the
! Euro symbol.
! 
! A full description of the encodings is beyond our scope here;
  @uref{http://czyborra.com/charsets/iso8859.html} is one of many useful
  references.
  @end table
***************
*** 13351,13361 ****
  @opindex --enable-encoding
  @cindex Local Variables: section, for encoding
  @cindex Info output, and encoding
! In Info output, if the option @option{--enable-encoding} is also given
  to @command{makeinfo}, a so-called `Local Variables' section
  (@pxref{File Variables,,,emacs,The GNU Emacs Manual}) is output
  including @var{enc}.  This allows Info readers to set the encoding
! appropriately:
  
  @example
  Local Variables:
--- 13383,13393 ----
  @opindex --enable-encoding
  @cindex Local Variables: section, for encoding
  @cindex Info output, and encoding
! In Info output, if the option @option{--enable-encoding} is given
  to @command{makeinfo}, a so-called `Local Variables' section
  (@pxref{File Variables,,,emacs,The GNU Emacs Manual}) is output
  including @var{enc}.  This allows Info readers to set the encoding
! appropriately.
  
  @example
  Local Variables:
***************
*** 13369,13375 ****
  In HTML output, a @samp{<meta>} tag is output, in the @samp{<head>}
  section of the HTML, that specifies @var{enc}.  Web servers and
  browsers cooperate to use this information so the correct encoding is
! used to display the page.
  
  @example
  <meta http-equiv="Content-Type" content="text/html;
--- 13401,13407 ----
  In HTML output, a @samp{<meta>} tag is output, in the @samp{<head>}
  section of the HTML, that specifies @var{enc}.  Web servers and
  browsers cooperate to use this information so the correct encoding is
! used to display the page, if supported by the system.
  
  @example
  <meta http-equiv="Content-Type" content="text/html;
***************
*** 17041,17046 ****
--- 17073,17082 ----
  Indicate to the reader the exact equivalence of two forms with a
  glyph: @address@hidden  @address@hidden
  
+ @item @@address@hidden@}
+ Generate the Euro currency sign.
+ @xref{euro,,@code{@@address@hidden@}}}.
+ 
  @item @@address@hidden@}
  Indicate to the reader with a glyph that the following text is
  an error message: @address@hidden  @xref{Error address@hidden
***************
*** 18356,18362 ****
  Concurrent Versions System}) or RCS (see rcsintro(1)) version control
  systems, which expand it into a string such as:
  @example
! $Id: texinfo.txi,v 1.115 2004/10/07 12:13:02 karl Exp $
  @end example
  (This is useful in all sources that use version control, not just manuals.)
  You may wish to include the @samp{$Id:} comment in the @code{@@copying}
--- 18392,18398 ----
  Concurrent Versions System}) or RCS (see rcsintro(1)) version control
  systems, which expand it into a string such as:
  @example
! $Id: texinfo.txi,v 1.116 2004/11/22 23:57:32 karl Exp $
  @end example
  (This is useful in all sources that use version control, not just manuals.)
  You may wish to include the @samp{$Id:} comment in the @code{@@copying}
***************
*** 18422,18428 ****
  
  @verbatim
  \input texinfo   @c -*-texinfo-*-
! @comment $Id: texinfo.txi,v 1.115 2004/10/07 12:13:02 karl Exp $
  @comment %**start of header
  @setfilename sample.info
  @include version.texi
--- 18458,18464 ----
  
  @verbatim
  \input texinfo   @c -*-texinfo-*-
! @comment $Id: texinfo.txi,v 1.116 2004/11/22 23:57:32 karl Exp $
  @comment %**start of header
  @setfilename sample.info
  @include version.texi
Index: doc/version.texi
===================================================================
RCS file: /cvsroot/texinfo/texinfo/doc/version.texi,v
retrieving revision 1.20
retrieving revision 1.21
diff -c -r1.20 -r1.21
*** doc/version.texi    8 Oct 2004 22:01:14 -0000       1.20
--- doc/version.texi    22 Nov 2004 23:57:33 -0000      1.21
***************
*** 1,4 ****
! @set UPDATED 7 October 2004
! @set UPDATED-MONTH October 2004
  @set EDITION 4.7.90
  @set VERSION 4.7.90
--- 1,4 ----
! @set UPDATED 22 November 2004
! @set UPDATED-MONTH November 2004
  @set EDITION 4.7.90
  @set VERSION 4.7.90
Index: makeinfo/cmds.c
===================================================================
RCS file: /cvsroot/texinfo/texinfo/makeinfo/cmds.c,v
retrieving revision 1.52
retrieving revision 1.53
diff -c -r1.52 -r1.53
*** makeinfo/cmds.c     2 Aug 2004 14:10:41 -0000       1.52
--- makeinfo/cmds.c     22 Nov 2004 23:57:33 -0000      1.53
***************
*** 1,5 ****
  /* cmds.c -- Texinfo commands.
!    $Id: cmds.c,v 1.52 2004/08/02 14:10:41 karl Exp $
  
     Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004 Free Software
     Foundation, Inc.
--- 1,5 ----
  /* cmds.c -- Texinfo commands.
!    $Id: cmds.c,v 1.53 2004/11/22 23:57:33 karl Exp $
  
     Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004 Free Software
     Foundation, Inc.
***************
*** 183,188 ****
--- 183,189 ----
    { "env", cm_code, BRACE_ARGS },
    { "equiv", cm_equiv, BRACE_ARGS },
    { "error", cm_error, BRACE_ARGS },
+   { "euro", cm_special_char, BRACE_ARGS },
    { "evenfooting", cm_ignore_line, NO_BRACE_ARGS },
    { "evenheading", cm_ignore_line, NO_BRACE_ARGS },
    { "everyfooting", cm_ignore_line, NO_BRACE_ARGS },
Index: makeinfo/lang.c
===================================================================
RCS file: /cvsroot/texinfo/texinfo/makeinfo/lang.c,v
retrieving revision 1.13
retrieving revision 1.14
diff -c -r1.13 -r1.14
*** makeinfo/lang.c     11 Apr 2004 17:56:47 -0000      1.13
--- makeinfo/lang.c     22 Nov 2004 23:57:33 -0000      1.14
***************
*** 1,7 ****
  /* lang.c -- language-dependent support.
!    $Id: lang.c,v 1.13 2004/04/11 17:56:47 karl Exp $
  
!    Copyright (C) 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
  
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
--- 1,8 ----
  /* lang.c -- language-dependent support.
!    $Id: lang.c,v 1.14 2004/11/22 23:57:33 karl Exp $
  
!    Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004 Free Software
!    Foundation, Inc.
  
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
***************
*** 141,146 ****
--- 142,267 ----
    { NULL, 0, 0 }
  };
  
+ 
+ /* ISO 8859-15, also known as Latin 9, differs from Latin 1 in only a
+    few positions.  http://www.cs.tut.fi/~jkorpela/latin9.html has a good
+    explanation and listing, summarized here.  The names are abbreviated
+    from the official Unicode names, to fit in a decent line length.
+ 
+   code position
+   dec oct   hex   latin1 latin1 name        latin9 latin9 name
+ 
+   164  0244  0xA4   U+00A4 currency symbol    U+20AC euro sign
+   166  0246  0xA6   U+00A6 broken bar       U+0160 S with caron
+   168  0250  0xA8   U+00A8 diaeresis        U+0161 s with caron
+   180  0264  0xB4   U+00B4 acute accent             U+017D Z with caron
+   184  0270  0xB8   U+00B8 cedilla          U+017E z with caron
+   188  0274  0xBC   U+00BC fraction 1/4             U+0152 ligature OE
+   189  0275  0xBD   U+00BD fraction 1/2             U+0153 ligature oe
+   190  0276  0xBE   U+00BE fraction 3/4             U+0178 Y with diaeresis
+ */
+ 
+ static iso_map_type iso8859_15_map [] = {
+   { "nbsp",   0xA0, 0x00A0 },
+   { "iexcl",  0xA1, 0x00A1 },
+   { "cent",   0xA2, 0x00A2 },
+   { "pound",  0xA3, 0x00A3 },
+   { "euro",   0xA4, 0x20AC },
+   { "yen",    0xA5, 0x00A5 },
+   { "Scaron", 0xA6, 0x0160 },
+   { "sect",   0xA7, 0x00A7 },
+   { "scaron", 0xA8, 0x0161 },
+   { "copy",   0xA9, 0x00A9 },
+   { "ordf",   0xAA, 0x00AA },
+   { "laquo",  0xAB, 0x00AB },
+   { "not",    0xAC, 0x00AC },
+   { "shy",    0xAD, 0x00AD },
+   { "reg",    0xAE, 0x00AE },
+   { "hibar",  0xAF, 0x00AF },
+   { "deg",    0xB0, 0x00B0 },
+   { "plusmn", 0xB1, 0x00B1 },
+   { "sup2",   0xB2, 0x00B2 },
+   { "sup3",   0xB3, 0x00B3 },
+   { "Zcaron", 0xB4, 0x017D },
+   { "micro",  0xB5, 0x00B5 },
+   { "para",   0xB6, 0x00B6 },
+   { "middot", 0xB7, 0x00B7 },
+   { "zcaron", 0xB8, 0x017E },
+   { "sup1",   0xB9, 0x00B9 },
+   { "ordm",   0xBA, 0x00BA },
+   { "raquo",  0xBB, 0x00BB },
+   { "OElig",  0xBC, 0x0152 },
+   { "oelig",  0xBD, 0x0153 },
+   { "Yuml",   0xBE, 0x0178 },
+   { "iquest", 0xBF, 0x00BF },
+   { "Agrave", 0xC0, 0x00C0 },
+   { "Aacute", 0xC1, 0x00C1 },
+   { "Acirc",  0xC2, 0x00C2 },
+   { "Atilde", 0xC3, 0x00C3 },
+   { "Auml",   0xC4, 0x00C4 },
+   { "Aring",  0xC5, 0x00C5 },
+   { "AElig",  0xC6, 0x00C6 },
+   { "Ccedil", 0xC7, 0x00C7 },
+   { "Ccedil", 0xC7, 0x00C7 },
+   { "Egrave", 0xC8, 0x00C8 },
+   { "Eacute", 0xC9, 0x00C9 },
+   { "Ecirc",  0xCA, 0x00CA },
+   { "Euml",   0xCB, 0x00CB },
+   { "Igrave", 0xCC, 0x00CC },
+   { "Iacute", 0xCD, 0x00CD },
+   { "Icirc",  0xCE, 0x00CE },
+   { "Iuml",   0xCF, 0x00CF },
+   { "ETH",    0xD0, 0x00D0 },
+   { "Ntilde", 0xD1, 0x00D1 },
+   { "Ograve", 0xD2, 0x00D2 },
+   { "Oacute", 0xD3, 0x00D3 },
+   { "Ocirc",  0xD4, 0x00D4 },
+   { "Otilde", 0xD5, 0x00D5 },
+   { "Ouml",   0xD6, 0x00D6 },
+   { "times",  0xD7, 0x00D7 },
+   { "Oslash", 0xD8, 0x00D8 },
+   { "Ugrave", 0xD9, 0x00D9 },
+   { "Uacute", 0xDA, 0x00DA },
+   { "Ucirc",  0xDB, 0x00DB },
+   { "Uuml",   0xDC, 0x00DC },
+   { "Yacute", 0xDD, 0x00DD },
+   { "THORN",  0xDE, 0x00DE },
+   { "szlig",  0xDF, 0x00DF },
+   { "agrave", 0xE0, 0x00E0 },
+   { "aacute", 0xE1, 0x00E1 },
+   { "acirc",  0xE2, 0x00E2 },
+   { "atilde", 0xE3, 0x00E3 },
+   { "auml",   0xE4, 0x00E4 },
+   { "aring",  0xE5, 0x00E5 },
+   { "aelig",  0xE6, 0x00E6 },
+   { "ccedil", 0xE7, 0x00E7 },
+   { "egrave", 0xE8, 0x00E8 },
+   { "eacute", 0xE9, 0x00E9 },
+   { "ecirc",  0xEA, 0x00EA },
+   { "euml",   0xEB, 0x00EB },
+   { "igrave", 0xEC, 0x00EC },
+   { "iacute", 0xED, 0x00ED },
+   { "icirc",  0xEE, 0x00EE },
+   { "iuml",   0xEF, 0x00EF },
+   { "eth",    0xF0, 0x00F0 },
+   { "ntilde", 0xF1, 0x00F1 },
+   { "ograve", 0xF2, 0x00F2 },
+   { "oacute", 0xF3, 0x00F3 },
+   { "ocirc",  0xF4, 0x00F4 },
+   { "otilde", 0xF5, 0x00F5 },
+   { "ouml",   0xF6, 0x00F6 },
+   { "divide", 0xF7, 0x00F7 },
+   { "oslash", 0xF8, 0x00F8 },
+   { "ugrave", 0xF9, 0x00F9 },
+   { "uacute", 0xFA, 0x00FA },
+   { "ucirc",  0xFB, 0x00FB },
+   { "uuml",   0xFC, 0x00FC },
+   { "yacute", 0xFD, 0x00FD },
+   { "thorn",  0xFE, 0x00FE },
+   { "yuml",   0xFF, 0x00FF },
+   { NULL, 0, 0 }
+ };
+ 
  
  
  /* Date: Mon, 31 Mar 2003 00:19:28 +0200
***************
*** 280,286 ****
    { ISO_8859_12, "iso-8859-12", NULL },
    { ISO_8859_13, "iso-8859-13", NULL },
    { ISO_8859_14, "iso-8859-14", NULL },
!   { ISO_8859_15, "iso-8859-15", NULL },
    { last_encoding_code, NULL, NULL }
  };
  
--- 401,407 ----
    { ISO_8859_12, "iso-8859-12", NULL },
    { ISO_8859_13, "iso-8859-13", NULL },
    { ISO_8859_14, "iso-8859-14", NULL },
!   { ISO_8859_15, "iso-8859-15", (iso_map_type *) iso8859_15_map },
    { last_encoding_code, NULL, NULL }
  };
  
***************
*** 570,576 ****
  }
  
  
! /* If html or xml output, add HTML_STR to the output.  If not html and
     the user requested encoded output, add the real 8-bit character
     corresponding to HTML_STR from the translation tables.  Otherwise,
     add INFO_STR.  */
--- 691,697 ----
  }
  
  
! /* If html or xml output, add &HTML_STR; to the output.  If not html and
     the user requested encoded output, add the real 8-bit character
     corresponding to HTML_STR from the translation tables.  Otherwise,
     add INFO_STR.  */
***************
*** 845,850 ****
--- 966,975 ----
          add_encoded_char ("iexcl", "!");
        else if (strcmp (command, "questiondown") == 0)
          add_encoded_char ("iquest", "?");
+       else if (strcmp (command, "euro") == 0)
+         /* http://www.cs.tut.fi/~jkorpela/html/euro.html suggests that
+            &euro; degrades best in old browsers.  */
+         add_encoded_char ("euro", "Euro ");
        else if (strcmp (command, "pounds") == 0)
          add_encoded_char ("pound" , "#");
        else if (strcmp (command, "ordf") == 0)
P ChangeLog
P NEWS
P TODO
P doc/texinfo.tex
P doc/texinfo.txi
P doc/version.texi
P makeinfo/cmds.c
P makeinfo/lang.c


reply via email to

[Prev in Thread] Current Thread [Next in Thread]