m4-commit@gnu.org
[Top] [All Lists]

Changes to m4/doc/m4.texinfo,v [branch-1_4]

Subject: Changes to m4/doc/m4.texinfo,v [branch-1_4]
From: Eric Blake
Date: Tue, 01 Aug 2006 02:53:37 +0000
CVSROOT:        /sources/m4
Module name:    m4
Branch:         branch-1_4
Changes by:     Eric Blake <ericb>      06/08/01 02:53:36

Index: doc/m4.texinfo
===================================================================
RCS file: /sources/m4/m4/doc/m4.texinfo,v
retrieving revision 1.1.1.1.2.57
retrieving revision 1.1.1.1.2.58
diff -u -b -r1.1.1.1.2.57 -r1.1.1.1.2.58
--- doc/m4.texinfo      31 Jul 2006 20:28:12 -0000      1.1.1.1.2.57
+++ doc/m4.texinfo      1 Aug 2006 02:53:35 -0000       1.1.1.1.2.58
@@ -698,8 +698,12 @@
 As @code{m4} reads its input, it separates it into @dfn{tokens}.  A
 token is either a name, a quoted string, or any single character, that
 is not a part of either a name or a string.  Input to @code{m4} can also
-contain comments.  @acronym{GNU} @code{m4} does not yet understand locales; all
-operations are byte-oriented rather than character-oriented.
+contain comments.  @acronym{GNU} @code{m4} does not yet understand
+locales; all operations are byte-oriented rather than
+character-oriented.  However, @code{m4} is eight-bit clean, so you can
+use non-ASCII characters in quoted strings (@pxref{Changequote}),
+comments (@pxref{Changecom}), and macro names (@pxref{Indir}), with the
+exception of the NUL character (the zero byte).
 
 @menu
 * Names::                       Macro names
@@ -2344,6 +2348,23 @@
 @result{}Macro foo.
 @end example
 
+The quotation strings can safely contain eight-bit characters.
+@ignore
+Yuck.  I know of no clean way to render an 8-bit character in both info
+and dvi.  This example uses the `open-guillemot' and `close-guillemot'
+characters of the Latin-1 character set.
+
+@example
+define(`a', `b')
+@result{}
+«a»
+@result{}«b»
+changequote(`«', `»')
+@result{}
+«a»
+@result{}a
+@end example
+@end ignore
 If no single character is appropriate, @var{start} and @var{end} can be
 of any length.
 
@@ -2380,10 +2401,10 @@
 and one for the new quotes.
 
 Macros are recognized in preference to the begin-quote string, so if a
-prefix of @var{start} can be recognized as a macro name, the quoting
-mechanism is effectively disabled.  Unless you use @code{changeword}
-(@pxref{Changeword}), this means that @var{start} should not begin with
-a letter or @samp{_} (underscore).
+prefix of @var{start} can be recognized as a potential macro name, the
+quoting mechanism is effectively disabled.  Unless you use
+@code{changeword} (@pxref{Changeword}), this means that @var{start}
+should not begin with a letter or @samp{_} (underscore).
 
 @example
 define(`hi', `HI')
@@ -2490,11 +2511,29 @@
 @result{}# comment again
 @end example
 
+The comment strings can safely contain eight-bit characters.
+@ignore
+Yuck.  I know of no clean way to render an 8-bit character in both info
+and dvi.  This example uses the `open-guillemot' and `close-guillemot'
+characters of the Latin-1 character set.
+
+@example
+define(`a', `b')
+@result{}
+«a»
+@result{}«b»
+changecom(`«', `»')
+@result{}
+«a»
+@result{}«a»
+@end example
+@end ignore
+
 Comments are recognized in preference to macros.  However, this is not
 compatible with other implementations, where macros take precedence over
 comments, so it may change in a future release.  For portability, this
-means that @var{start} should not have a prefix that begins with a
-letter or @samp{_} (underscore).
+means that @var{start} should not begin with a letter or @samp{_}
+(underscore).
 
 @example
 define(`hi', `HI')
@@ -4646,6 +4685,7 @@
 @bye
 
 @c Local Variables:
+@c coding: ISO-8859-1
 @c fill-column: 72
 @c ispell-local-dictionary: "american"
 @c indent-tabs-mode: nil


<Prev in Thread] Current Thread [Next in Thread>