XEmacs 21.2.24 "Hecate".
authortomo <tomo>
Thu, 6 Jan 2000 07:14:36 +0000 (07:14 +0000)
committertomo <tomo>
Thu, 6 Jan 2000 07:14:36 +0000 (07:14 +0000)
88 files changed:
CHANGES-beta
ChangeLog
Makefile.in.in
aclocal.m4
configure
configure.in
dynodump/_dynodump.h
dynodump/dynodump.c
dynodump/i386/_relocate.c
dynodump/i386/machdep.h
dynodump/ppc/_relocate.c
dynodump/ppc/machdep.h
dynodump/sparc/_relocate.c
dynodump/sparc/machdep.h
dynodump/syms.c
etc/NEWS
info/emodules.info
info/info.info
info/texinfo.info
info/texinfo.info-1
info/texinfo.info-2
info/xemacs-faq.info
info/xemacs-faq.info-1
info/xemacs-faq.info-2
lib-src/ChangeLog
lib-src/Makefile.in.in
lib-src/mmencode.c
lib-src/rcs2log
lisp/ChangeLog
lisp/about.el
lisp/apropos.el
lisp/finder.el
lisp/font-lock.el
lisp/gutter-items.el
lisp/help.el
lisp/hyper-apropos.el
lisp/itimer.el
lisp/ldap.el
lisp/lisp-mode.el
lisp/minibuf.el
lisp/package-get.el
lisp/symbols.el
lwlib/ChangeLog
lwlib/xlwmenu.c
lwlib/xlwtabs.c
man/ChangeLog
man/info.texi
man/texinfo.texi
man/xemacs-faq.texi
nt/ChangeLog
nt/xemacs.mak
src/ChangeLog
src/callproc.c
src/console-msw.h
src/device-x.c
src/elhash.c
src/event-msw.c
src/event-stream.c
src/events.c
src/floatfns.c
src/glyphs-msw.c
src/glyphs-x.c
src/glyphs.c
src/gui.h
src/lisp.h
src/lrecord.h
src/lstream.c
src/miscplay.c
src/nt.c
src/ntplay.c
src/objects-msw.c
src/process-nt.c
src/redisplay-output.c
src/redisplay.c
src/redisplay.h
src/s/cygwin32.h
src/select-msw.c
src/sound.c
src/sysdep.c
src/sysdep.h
src/sysdll.c
src/systty.h
src/unexcw.c
src/unexhp9k800.c
src/unexsol2.c
src/window.c
tests/ChangeLog
version.sh

index 6666b17..27aac64 100644 (file)
@@ -1,4 +1,21 @@
                                                        -*- indented-text -*-
+to 21.2.24 "Hecate"
+
+to 21.2.23 "Hebe"
+-- MS-Windows selection fixes from Mike Alexander
+-- MS-WIndows process handling fixes from Mike Alexander
+-- Subwindow GC fix from Andy Piper
+-- Various minor fixes from Andy Piper
+-- Rewrite module configure support, Martin Buchholz
+-- Various Windows fixes, Martin Buchholz, Adrian Aichner, Andy Piper
+-- HP native compiler compilation fixes, Martin Buchholz
+-- Workarounds for Cygnus compiler bugs, Martin Buchholz
+-- Workarounds for Cygwin broken header files, Martin Buchholz
+-- itimers work again, Kyle Jones
+-- random code cleanup, Martin Buchholz
+-- various redisplay fixes, Andy Piper, Jan Vroonhof
+-- various fixes from Hrvoje Niksic, Yoshiki Hayashi
+
 to 21.2.22 "Mercedes"
 -- ESD Sound support from Robert Bihlmeyer
 -- 10% faster redisplay from Jan Vroonhof
index bba1269..993d2ea 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,29 @@
+1999-12-07  Martin Buchholz <martin@xemacs.org>
+
+       * XEmacs 21.2.23 is released.
+
+1999-11-30  Martin Buchholz  <martin@xemacs.org>
+
+       * configure.in: Fix module support.
+       --with-modules=yes was completely broken.
+       AC_DEFINE(HAVE_DLFCN_H) was invoked twice.
+       Remove linking test for _dlopen - seems totally bogus.
+       Die if --with-modules=yes but no module support found.
+       Do nothing, not even msg, if --with-modules=no.
+
+1999-11-17  Isaac Hollander  <ysh@mindspring.com>
+
+        * Makefile.in.in: add and use TAR macro.  Sometimes tar only copies
+        symlinks instead of the actual files
+
+1999-11-30  Martin Buchholz  <martin@xemacs.org>
+
+       * aclocal.m4: Shared library support for hpux >= version 11
+
+1999-11-29  Martin Buchholz  <martin@xemacs.org>
+
+       * Makefile.in.in (beta): `make beta' should rebuild info.
+
 1999-11-29  XEmacs Build Bot <builds@cvs.xemacs.org>
 
        * XEmacs 21.2.22 is released
@@ -27,7 +53,7 @@
        * configure.in (native_sound_lib, *-sgi-*): Check for audio.h.
        (LIBS): Check for libCsup.
 
-       * etc/sample.Xdefaults: adds a reference to beNiceToColrmap,
+       * etc/sample.Xdefaults: adds a reference to beNiceToColormap,
          so that the user can guess what to do if xemacs' dialogs are
          butt ugly.
 
index 3a29d39..8a0b9f0 100644 (file)
@@ -65,6 +65,7 @@ LC_ALL = C
 RM = rm -f
 MAKEPATH=./lib-src/make-path
 pwd = /bin/pwd
+TAR = tar
 
 ## ==================== Things `configure' Might Edit ====================
 
@@ -260,7 +261,7 @@ ${PROGNAME}:        ${GENERATED_HEADERS} ${MAKE_SUBDIR} ${GENERATED_LISP}
 .PHONY: ${SUBDIR} all beta all-elc all-elcs dump-elc dump-elcs autoloads finder
 
 ## Convenience target for XEmacs beta testers
-beta: clean all-elc finder
+beta: clean all-elc finder info
 
 ## Convenience target for XEmacs maintainers
 ## This would run `make-xemacsdist' if I were really confident that everything
@@ -460,8 +461,8 @@ install-arch-indep: mkdir info
             -a "`(cd $${dir} && $(pwd))`" != \
                "`(cd $${dest} && $(pwd))`" \
           && (echo "Copying $${dir}..." ; \
-              (cd $${dir} && tar -cf - . ) | \
-               (cd $${dest} && umask 022 && tar -xf - );\
+              (cd $${dir} && $(TAR) -cf - . ) | \
+               (cd $${dest} && umask 022 && $(TAR) -xf - );\
               chmod 0755 $${dest}; \
               for subdir in `find $${dest} -type d ! -name RCS ! -name SCCS ! -name CVS -print` ; do \
                 (cd $${subdir} && $(RM) -r RCS CVS SCCS \#* *~) ; \
index 5635441..e1a8e77 100644 (file)
@@ -108,7 +108,7 @@ if test "$XEGCC" = yes; then
 else
   # PORTME Check for PIC flags for the system compiler.
   case "$xehost_os" in
-  hpux9* | hpux10*)
+  hpux9* | hpux1[[0-9]]*)
     # Is there a better link_static_flag that works with the bundled CC?
     wl='-Wl,'
     dll_cflags='+Z'
index cf53d2e..4090984 100755 (executable)
--- a/configure
+++ b/configure
@@ -7766,7 +7766,7 @@ EOF
 
   lwlib_objs="$lwlib_objs lwlib-Xaw.o" &&  if test "$extra_verbose" = "yes"; then echo "    Appending \"lwlib-Xaw.o\" to \$lwlib_objs"; fi
   if test "$have_xaw3d"; then
-    libs_x="-lXaw3d $libs_x" &&  if test "$extra_verbose" = "yes"; then echo "    Prepending \"-lXaw3d\" to \$libs_x"; fi 
+    libs_x="-lXaw3d $libs_x" &&  if test "$extra_verbose" = "yes"; then echo "    Prepending \"-lXaw3d\" to \$libs_x"; fi
   else
     libs_x="-lXaw $libs_x" &&  if test "$extra_verbose" = "yes"; then echo "    Prepending \"-lXaw\" to \$libs_x"; fi
   fi ;;
@@ -11842,19 +11842,21 @@ EOF
   LIBS="-Bstatic -lut -Bdynamic $LIBS" &&  if test "$extra_verbose" = "yes"; then echo "    Prepending \"-Bstatic -lut -Bdynamic\" to \$LIBS"; fi
 fi
 
-for ac_hdr in dlfcn.h
-do
-ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
-echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:11850: checking for $ac_hdr" >&5
+if test "$with_modules" != "no"; then
+  echo "checking for module support" 1>&6
+echo "configure:11848: checking for module support" >&5
+
+    ac_safe=`echo "dlfcn.h" | sed 'y%./+-%__p_%'`
+echo $ac_n "checking for dlfcn.h""... $ac_c" 1>&6
+echo "configure:11852: checking for dlfcn.h" >&5
 
 cat > conftest.$ac_ext <<EOF
-#line 11853 "configure"
+#line 11855 "configure"
 #include "confdefs.h"
-#include <$ac_hdr>
+#include <dlfcn.h>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:11858: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:11860: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   rm -rf conftest*
 rm -f conftest*
 if eval "test \"`echo '$ac_cv_header_'$ac_safe`\" = yes"; then
   echo "$ac_t""yes" 1>&6
-    ac_tr_hdr=HAVE_`echo $ac_hdr | sed 'y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%'`
-  { test "$extra_verbose" = "yes" && cat << EOF
-    Defining $ac_tr_hdr
-EOF
-cat >> confdefs.h <<EOF
-#define $ac_tr_hdr 1
-EOF
-}
- have_dlfcn=yes
-  { test "$extra_verbose" = "yes" && cat << \EOF
-    Defining HAVE_DLFCN_H
-EOF
-cat >> confdefs.h <<\EOF
-#define HAVE_DLFCN_H 1
-EOF
-}
-
-else
-  echo "$ac_t""no" 1>&6
-fi
-done
-
-test -z "$with_modules" && test ! -z "$have_dlfcn" && { 
+  
+    
 echo $ac_n "checking for dlopen in -ldl""... $ac_c" 1>&6
-echo "configure:11897: checking for dlopen in -ldl" >&5
+echo "configure:11878: checking for dlopen in -ldl" >&5
 ac_lib_var=`echo dl'_'dlopen | sed 'y%./+-%__p_%'`
 
 xe_check_libs=" -ldl "
 cat > conftest.$ac_ext <<EOF
-#line 11902 "configure"
+#line 11883 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -11909,7 +11890,7 @@ int main() {
 dlopen()
 ; return 0; }
 EOF
-if { (eval echo configure:11913: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:11894: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -11923,38 +11904,28 @@ xe_check_libs=""
 
 if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes" ; then
   echo "$ac_t""yes" 1>&6
-  { test "$extra_verbose" = "yes" && cat << \EOF
-    Defining HAVE_DLOPEN
-EOF
-cat >> confdefs.h <<\EOF
-#define HAVE_DLOPEN 1
-EOF
-}
- DLL_LIB=dl;  with_modules=yes
+  have_dl=yes libdl=dl
 else
   echo "$ac_t""no" 1>&6
-fi
 
- }
-test -z "$with_modules" && test ! -z "$have_dlfcn" && { 
-echo $ac_n "checking for _dlopen in -lc""... $ac_c" 1>&6
-echo "configure:11942: checking for _dlopen in -lc" >&5
-ac_lib_var=`echo c'_'_dlopen | sed 'y%./+-%__p_%'`
+echo $ac_n "checking for dlopen in -lc""... $ac_c" 1>&6
+echo "configure:11913: checking for dlopen in -lc" >&5
+ac_lib_var=`echo c'_'dlopen | sed 'y%./+-%__p_%'`
 
 xe_check_libs=" -lc "
 cat > conftest.$ac_ext <<EOF
-#line 11947 "configure"
+#line 11918 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
     builtin and then its argument prototype would still apply.  */
-char _dlopen();
+char dlopen();
 
 int main() {
-_dlopen()
+dlopen()
 ; return 0; }
 EOF
-if { (eval echo configure:11958: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:11929: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -11968,72 +11939,37 @@ xe_check_libs=""
 
 if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes" ; then
   echo "$ac_t""yes" 1>&6
-  { test "$extra_verbose" = "yes" && cat << \EOF
-    Defining HAVE_DLOPEN
-EOF
-cat >> confdefs.h <<\EOF
-#define HAVE_DLOPEN 1
-EOF
-}
- DLL_LIB=;   with_modules=yes
+  have_dl=yes 
 else
   echo "$ac_t""no" 1>&6
 fi
 
- }
-test -z "$with_modules" && test ! -z "$have_dlfcn" && { 
-echo $ac_n "checking for dlopen in -lc""... $ac_c" 1>&6
-echo "configure:11987: checking for dlopen in -lc" >&5
-ac_lib_var=`echo c'_'dlopen | sed 'y%./+-%__p_%'`
 
-xe_check_libs=" -lc "
-cat > conftest.$ac_ext <<EOF
-#line 11992 "configure"
-#include "confdefs.h"
-/* Override any gcc2 internal prototype to avoid an error.  */
-/* We use char because int might match the return type of a gcc2
-    builtin and then its argument prototype would still apply.  */
-char dlopen();
+fi
+
 
-int main() {
-dlopen()
-; return 0; }
-EOF
-if { (eval echo configure:12003: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-  rm -rf conftest*
-  eval "ac_cv_lib_$ac_lib_var=yes"
 else
-  echo "configure: failed program was:" >&5
-  cat conftest.$ac_ext >&5
-  rm -rf conftest*
-  eval "ac_cv_lib_$ac_lib_var=no"
+  echo "$ac_t""no" 1>&6
 fi
-rm -f conftest*
-xe_check_libs=""
 
-if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes" ; then
-  echo "$ac_t""yes" 1>&6
-  { test "$extra_verbose" = "yes" && cat << \EOF
+  if test -n "$have_dl"; then
+    { test "$extra_verbose" = "yes" && cat << \EOF
     Defining HAVE_DLOPEN
 EOF
 cat >> confdefs.h <<\EOF
 #define HAVE_DLOPEN 1
 EOF
 }
- DLL_LIB=;   with_modules=yes
-else
-  echo "$ac_t""no" 1>&6
-fi
 
- }
-test -z "$with_modules" && { 
+  else
+    
 echo $ac_n "checking for shl_load in -ldld""... $ac_c" 1>&6
-echo "configure:12032: checking for shl_load in -ldld" >&5
+echo "configure:11968: checking for shl_load in -ldld" >&5
 ac_lib_var=`echo dld'_'shl_load | sed 'y%./+-%__p_%'`
 
 xe_check_libs=" -ldld "
 cat > conftest.$ac_ext <<EOF
-#line 12037 "configure"
+#line 11973 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -12044,7 +11980,7 @@ int main() {
 shl_load()
 ; return 0; }
 EOF
-if { (eval echo configure:12048: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:11984: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -12058,27 +11994,25 @@ xe_check_libs=""
 
 if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes" ; then
   echo "$ac_t""yes" 1>&6
-  { test "$extra_verbose" = "yes" && cat << \EOF
+  libdl=dld have_dl=yes;
+      { test "$extra_verbose" = "yes" && cat << \EOF
     Defining HAVE_SHL_LOAD
 EOF
 cat >> confdefs.h <<\EOF
 #define HAVE_SHL_LOAD 1
 EOF
 }
- DLL_LIB=dld; with_modules=yes
+
 else
   echo "$ac_t""no" 1>&6
-fi
 
- }
-test -z "$with_modules" && { 
 echo $ac_n "checking for dld_init in -ldld""... $ac_c" 1>&6
-echo "configure:12077: checking for dld_init in -ldld" >&5
+echo "configure:12011: checking for dld_init in -ldld" >&5
 ac_lib_var=`echo dld'_'dld_init | sed 'y%./+-%__p_%'`
 
 xe_check_libs=" -ldld "
 cat > conftest.$ac_ext <<EOF
-#line 12082 "configure"
+#line 12016 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -12089,7 +12023,7 @@ int main() {
 dld_init()
 ; return 0; }
 EOF
-if { (eval echo configure:12093: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:12027: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -12103,21 +12037,27 @@ xe_check_libs=""
 
 if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes" ; then
   echo "$ac_t""yes" 1>&6
-  { test "$extra_verbose" = "yes" && cat << \EOF
+  libdl=dld have_dl=yes;
+      { test "$extra_verbose" = "yes" && cat << \EOF
     Defining HAVE_DLD_INIT
 EOF
 cat >> confdefs.h <<\EOF
 #define HAVE_DLD_INIT 1
 EOF
 }
- DLL_LIB=dld; with_modules=yes
+
 else
   echo "$ac_t""no" 1>&6
 fi
 
- }
-if test "$with_modules" = "yes"; then
-  
+
+fi
+
+
+  fi
+
+  if test -n "$have_dl"; then
+        
 dll_ld=
 dll_ldflags=
 dll_cflags=
@@ -12128,7 +12068,7 @@ xehost=$canonical
 xealias=$internal_configuration
 
 echo "checking how to build dynamic libraries for ${xehost}" 1>&6
-echo "configure:12132: checking how to build dynamic libraries for ${xehost}" >&5
+echo "configure:12072: checking how to build dynamic libraries for ${xehost}" >&5
 # Transform *-*-linux* to *-*-linux-gnu*, to support old configure scripts.
 case "$xehost" in
 *-*-linux-gnu*) ;;
@@ -12156,9 +12096,9 @@ if test "$GCC" = "yes"; then
   XEGCC=yes
 else
   echo $ac_n "checking checking whether we are using GNU C""... $ac_c" 1>&6
-echo "configure:12160: checking checking whether we are using GNU C" >&5
+echo "configure:12100: checking checking whether we are using GNU C" >&5
   cat > conftest.$ac_ext <<EOF
-#line 12162 "configure"
+#line 12102 "configure"
 #include "confdefs.h"
 
 #ifdef __GNUC__
@@ -12180,7 +12120,7 @@ rm -f conftest*
 fi
 
 echo $ac_n "checking how to produce PIC code""... $ac_c" 1>&6
-echo "configure:12184: checking how to produce PIC code" >&5
+echo "configure:12124: checking how to produce PIC code" >&5
 wl=
 
 can_build_shared=yes
@@ -12208,7 +12148,7 @@ if test "$XEGCC" = yes; then
 else
   # PORTME Check for PIC flags for the system compiler.
   case "$xehost_os" in
-  hpux9* | hpux10*)
+  hpux9* | hpux1[0-9]*)
     # Is there a better link_static_flag that works with the bundled CC?
     wl='-Wl,'
     dll_cflags='+Z'
@@ -12273,18 +12213,18 @@ if test -n "$dll_cflags"; then
   
   # Check to make sure the dll_cflags actually works.
   echo $ac_n "checking if PIC flag ${dll_cflags} really works""... $ac_c" 1>&6
-echo "configure:12277: checking if PIC flag ${dll_cflags} really works" >&5
+echo "configure:12217: checking if PIC flag ${dll_cflags} really works" >&5
   save_CFLAGS="$CFLAGS"
   CFLAGS="$CFLAGS $dll_cflags -DPIC"
   cat > conftest.$ac_ext <<EOF
-#line 12281 "configure"
+#line 12221 "configure"
 #include "confdefs.h"
 
 int main() {
 int x=0;
 ; return 0; }
 EOF
-if { (eval echo configure:12288: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:12228: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   
     # On HP-UX, the stripped-down bundled CC doesn't accept +Z, but also
@@ -12315,7 +12255,7 @@ cc_produces_so=no
 xldf=
 xcldf=
 echo $ac_n "checking if C compiler can produce shared libraries""... $ac_c" 1>&6
-echo "configure:12319: checking if C compiler can produce shared libraries" >&5
+echo "configure:12259: checking if C compiler can produce shared libraries" >&5
 if test "$XEGCC" = yes; then
   xcldf="-shared"
   xldf="-shared"
@@ -12366,14 +12306,14 @@ if test -n "$xcldf"; then
   xe_libs=
   ac_link='${CC-cc} -o conftest $CFLAGS '"$xe_cppflags $xe_ldflags"' conftest.$ac_ext '"$xe_libs"' 1>&5'
   cat > conftest.$ac_ext <<EOF
-#line 12370 "configure"
+#line 12310 "configure"
 #include "confdefs.h"
 
 int main() {
 int x=0;
 ; return 0; }
 EOF
-if { (eval echo configure:12377: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:12317: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   cc_produces_so=yes
 else
@@ -12398,7 +12338,7 @@ if test -z "$LTLD"; then
   if test "$XEGCC" = yes; then
     # Check if gcc -print-prog-name=ld gives a path.
     echo $ac_n "checking for ld used by GCC""... $ac_c" 1>&6
-echo "configure:12402: checking for ld used by GCC" >&5
+echo "configure:12342: checking for ld used by GCC" >&5
     ac_prog=`($CC -print-prog-name=ld) 2>&5`
     case "$ac_prog" in
     # Accept absolute paths.
@@ -12423,7 +12363,7 @@ echo "configure:12402: checking for ld used by GCC" >&5
     esac
   else
     echo $ac_n "checking for GNU ld""... $ac_c" 1>&6
-echo "configure:12427: checking for GNU ld" >&5
+echo "configure:12367: checking for GNU ld" >&5
   fi
 
   if test -z "$LTLD"; then
@@ -12461,7 +12401,7 @@ ld_dynamic_link_flags=
 
 # Check to see if it really is or isn't GNU ld.
 echo $ac_n "checking if the linker is GNU ld""... $ac_c" 1>&6
-echo "configure:12465: checking if the linker is GNU ld" >&5
+echo "configure:12405: checking if the linker is GNU ld" >&5
 # I'd rather use --version here, but apparently some GNU ld's only accept -v.
 if $LTLD -v 2>&1 </dev/null | egrep '(GNU|with BFD)' 1>&5; then
   xe_gnu_ld=yes
@@ -12488,7 +12428,7 @@ else
   # OK - only NOW do we futz about with ld.
   # See if the linker supports building shared libraries.
   echo $ac_n "checking whether the linker supports shared libraries""... $ac_c" 1>&6
-echo "configure:12492: checking whether the linker supports shared libraries" >&5
+echo "configure:12432: checking whether the linker supports shared libraries" >&5
   dll_ld=$CC
   dll_ldflags=$LDFLAGS
   ld_shlibs=yes
@@ -12684,6 +12624,8 @@ fi # End of if test "$can_build_shared" = "yes"
 
 
 
+  fi
+
   if test "$can_build_shared" = "yes"; then
     { test "$extra_verbose" = "yes" && cat << \EOF
     Defining HAVE_SHLIB
@@ -12693,21 +12635,18 @@ cat >> confdefs.h <<\EOF
 EOF
 }
 
-    extra_objs="$extra_objs sysdll.o" &&  if test "$extra_verbose" = "yes"; then
-   echo "    xemacs will be linked with \"sysdll.o\""
- fi
-    extra_objs="$extra_objs emodules.o" &&  if test "$extra_verbose" = "yes"; then
-   echo "    xemacs will be linked with \"emodules.o\""
+    extra_objs="$extra_objs sysdll.o emodules.o" &&  if test "$extra_verbose" = "yes"; then
+   echo "    xemacs will be linked with \"sysdll.o emodules.o\""
  fi
     INSTALL_ARCH_DEP_SUBDIR="$INSTALL_ARCH_DEP_SUBDIR src" &&  if test "$extra_verbose" = "yes"; then echo "    Appending \"src\" to \$INSTALL_ARCH_DEP_SUBDIR"; fi
-    test ! -z "$DLL_LIB" && LIBS="-l${DLL_LIB} $LIBS" &&  if test "$extra_verbose" = "yes"; then echo "    Prepending \"-l${DLL_LIB}\" to \$LIBS"; fi
+    test -n "$libdl" && LIBS="-l${libdl} $LIBS" &&  if test "$extra_verbose" = "yes"; then echo "    Prepending \"-l${libdl}\" to \$LIBS"; fi
     for ac_func in dlerror _dlerror
 do
 echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
-echo "configure:12708: checking for $ac_func" >&5
+echo "configure:12647: checking for $ac_func" >&5
 
 cat > conftest.$ac_ext <<EOF
-#line 12711 "configure"
+#line 12650 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char $ac_func(); below.  */
@@ -12730,7 +12669,7 @@ $ac_func();
 
 ; return 0; }
 EOF
-if { (eval echo configure:12734: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:12673: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_func_$ac_func=yes"
 else
@@ -12757,18 +12696,23 @@ else
 fi
 done
 
+    with_modules=yes
   else
-    echo "configure: warning: disabling shared library support" 1>&2
+    if test "$with_modules" = "yes"; then
+      { echo "Error:" "Required module support cannot be provided." >&2; exit 1; }
+    else
+      echo "configure: warning: "Module support cannot be provided."" 1>&2
+    fi
     with_modules=no
   fi
 fi
 
 cat > conftest.$ac_ext <<EOF
-#line 12768 "configure"
+#line 12712 "configure"
 #include "confdefs.h"
 int main(int c,char *v[]){return 0;}
 EOF
-if { (eval echo configure:12772: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit $?) 2>&5
+if { (eval echo configure:12716: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit $?) 2>&5
 then
   :
 else
@@ -13365,7 +13309,7 @@ if test ! -z ${emacs_beta_version} ; then
        xemacs_betaname="-b${emacs_beta_version}"
   fi
 else
-  xemacs_betaname=""   
+  xemacs_betaname=""
 fi
 
 (
@@ -13435,7 +13379,7 @@ test "$with_jpeg"  = yes && echo "  Compiling in support for JPEG image handling
 test "$with_tiff"  = yes && echo "  Compiling in support for TIFF image handling."
 test "$with_xface" = yes && echo "  Compiling in support for X-Face message headers."
 test "$with_native_sound" = yes && echo "  Compiling in native sound support."
-test "$with_nas_sound" = yes && echo "  Compiling in network sound (NAS) support." 
+test "$with_nas_sound" = yes && echo "  Compiling in network sound (NAS) support."
 test "$old_nas" = yes && echo "        nas library lacks error trapping, will play synchronously."
 test "$with_esd" = yes && echo "  Compiling in support for Enlightened Sound Daemon."
 
@@ -13502,7 +13446,7 @@ case "$with_dialogs" in
   athena3d ) echo "  Using Athena-3d dialog boxes." ;;
   msw ) echo "  Using MS-Windows dialog boxes." ;;
 esac
-test "$with_modules" = "yes" && echo "  Compiling in DSO module support."
+test "$with_modules" = "yes" && echo "  Compiling in dynamic shared object module support."
 test "$with_clash_detection" = yes && \
   echo "  Clash detection will use \"$lockdir\" for locking files."
 echo "  movemail will use \"$mail_locking\" for locking mail spool files."
@@ -13536,12 +13480,10 @@ test -n "$exec_prefix" &&
 for file in $internal_makefile_list; do
   test "$file" = src/Makefile.in && \
     file="src/Makefile.in:src/Makefile.in.in:src/depend"
-  ac_output_files="${ac_output_files+$ac_output_files }$file"
+  ac_output_files="$ac_output_files $file" &&  if test "$extra_verbose" = "yes"; then echo "    Appending \"$file\" to \$ac_output_files"; fi
 done
 ac_output_files="$ac_output_files src/paths.h lib-src/config.values"
-if test "$with_modules" = "yes"; then
-  ac_output_files="$ac_output_files lib-src/ellcc.h"
-fi
+test "$with_modules" = "yes" && ac_output_files="$ac_output_files lib-src/ellcc.h" &&  if test "$extra_verbose" = "yes"; then echo "    Appending \"lib-src/ellcc.h\" to \$ac_output_files"; fi
 
 trap '' 1 2 15
 
index 2962071..10a1e3e 100644 (file)
@@ -2942,7 +2942,7 @@ case "$all_widgets" in
   AC_DEFINE(NEED_ATHENA)
   XE_APPEND(lwlib-Xaw.o, lwlib_objs)
   if test "$have_xaw3d"; then
-    XE_PREPEND(-lXaw3d, libs_x) 
+    XE_PREPEND(-lXaw3d, libs_x)
   else
     XE_PREPEND(-lXaw, libs_x)
   fi ;;
@@ -3687,24 +3687,42 @@ if test "$usage_tracking" = "yes"; then
 fi
 
 dnl autodetect dll support
-AC_CHECK_HEADERS(dlfcn.h, [have_dlfcn=yes
-  AC_DEFINE(HAVE_DLFCN_H)])
-test -z "$with_modules" && test ! -z "$have_dlfcn" && { AC_CHECK_LIB(dl,  dlopen,   [ AC_DEFINE(HAVE_DLOPEN) DLL_LIB=dl;  with_modules=yes]) }
-test -z "$with_modules" && test ! -z "$have_dlfcn" && { AC_CHECK_LIB(c,   _dlopen,  [ AC_DEFINE(HAVE_DLOPEN) DLL_LIB=;   with_modules=yes]) }
-test -z "$with_modules" && test ! -z "$have_dlfcn" && { AC_CHECK_LIB(c,   dlopen,   [ AC_DEFINE(HAVE_DLOPEN) DLL_LIB=;   with_modules=yes]) }
-test -z "$with_modules" && { AC_CHECK_LIB(dld, shl_load, [ AC_DEFINE(HAVE_SHL_LOAD) DLL_LIB=dld; with_modules=yes]) }
-test -z "$with_modules" && { AC_CHECK_LIB(dld, dld_init, [ AC_DEFINE(HAVE_DLD_INIT) DLL_LIB=dld; with_modules=yes]) }
-if test "$with_modules" = "yes"; then
-  XE_SHLIB_STUFF
+if test "$with_modules" != "no"; then
+  AC_CHECKING(for module support)
+
+  dnl Find headers and libraries
+  AC_CHECK_HEADER(dlfcn.h, [
+    AC_CHECK_LIB(dl, dlopen, [ have_dl=yes libdl=dl], [
+    AC_CHECK_LIB(c,  dlopen, [ have_dl=yes ])])])
+  if test -n "$have_dl"; then
+    AC_DEFINE(HAVE_DLOPEN)
+  else
+    AC_CHECK_LIB(dld, shl_load, [
+      libdl=dld have_dl=yes;
+      AC_DEFINE(HAVE_SHL_LOAD)], [
+    AC_CHECK_LIB(dld, dld_init, [
+      libdl=dld have_dl=yes;
+      AC_DEFINE(HAVE_DLD_INIT)])])
+  fi
+
+  if test -n "$have_dl"; then
+    dnl XE_SHLIB_STUFF (in aclocal.m4) defines $can_build_shared
+    XE_SHLIB_STUFF
+  fi
+
   if test "$can_build_shared" = "yes"; then
     AC_DEFINE(HAVE_SHLIB)
-    XE_ADD_OBJS(sysdll.o)
-    XE_ADD_OBJS(emodules.o)
+    XE_ADD_OBJS(sysdll.o emodules.o)
     XE_APPEND(src, INSTALL_ARCH_DEP_SUBDIR)
-    test ! -z "$DLL_LIB" && XE_PREPEND(-l${DLL_LIB}, LIBS)
+    test -n "$libdl" && XE_PREPEND(-l${libdl}, LIBS)
     AC_CHECK_FUNCS(dlerror _dlerror)
+    with_modules=yes
   else
-    AC_MSG_WARN(disabling shared library support)
+    if test "$with_modules" = "yes"; then
+      XE_DIE("Required module support cannot be provided.")
+    else
+      AC_MSG_WARN("Module support cannot be provided.")
+    fi
     with_modules=no
   fi
 fi
@@ -4087,7 +4105,7 @@ if test ! -z ${emacs_beta_version} ; then
        xemacs_betaname="-b${emacs_beta_version}"
   fi
 else
-  xemacs_betaname=""   
+  xemacs_betaname=""
 fi
 
 dnl Start stdout redirection to '| tee -a Installation'
@@ -4158,7 +4176,7 @@ test "$with_jpeg"  = yes && echo "  Compiling in support for JPEG image handling
 test "$with_tiff"  = yes && echo "  Compiling in support for TIFF image handling."
 test "$with_xface" = yes && echo "  Compiling in support for X-Face message headers."
 test "$with_native_sound" = yes && echo "  Compiling in native sound support."
-test "$with_nas_sound" = yes && echo "  Compiling in network sound (NAS) support." 
+test "$with_nas_sound" = yes && echo "  Compiling in network sound (NAS) support."
 test "$old_nas" = yes && echo "        nas library lacks error trapping, will play synchronously."
 test "$with_esd" = yes && echo "  Compiling in support for Enlightened Sound Daemon."
 
@@ -4225,7 +4243,7 @@ case "$with_dialogs" in
   athena3d ) echo "  Using Athena-3d dialog boxes." ;;
   msw ) echo "  Using MS-Windows dialog boxes." ;;
 esac
-test "$with_modules" = "yes" && echo "  Compiling in DSO module support."
+test "$with_modules" = "yes" && echo "  Compiling in dynamic shared object module support."
 test "$with_clash_detection" = yes && \
   echo "  Clash detection will use \"$lockdir\" for locking files."
 echo "  movemail will use \"$mail_locking\" for locking mail spool files."
@@ -4266,12 +4284,10 @@ dnl except ./Makefile from $srcdir/Makefile.in
 for file in $internal_makefile_list; do
   test "$file" = src/Makefile.in && \
     file="src/Makefile.in:src/Makefile.in.in:src/depend"
-  ac_output_files="${ac_output_files+$ac_output_files }$file"
+  XE_APPEND($file, ac_output_files)
 done
 ac_output_files="$ac_output_files src/paths.h lib-src/config.values"
-if test "$with_modules" = "yes"; then
-  ac_output_files="$ac_output_files lib-src/ellcc.h"
-fi
+test "$with_modules" = "yes" && XE_APPEND(lib-src/ellcc.h, ac_output_files)
 
 AC_OUTPUT($ac_output_files,
 [for dir in . $MAKE_SUBDIR; do
index c09bd7f..847c4eb 100644 (file)
@@ -32,7 +32,7 @@
  * Mountain View, California 94043
  */
 
-#pragma ident  "@(#) $Id: _dynodump.h,v 1.5 1996/05/23 18:39:07 georgn Exp $ - SMI"
+#pragma ident  "@(#) $Id: _dynodump.h,v 1.3 1997/05/29 04:22:29 steve Exp $ - SMI"
 
 #ifndef        _DYNODUMP_DOT_H
 #define        _DYNODUMP_DOT_H
index b684813..ff4477d 100644 (file)
@@ -73,7 +73,7 @@
  * N.B. The above commentary is not quite correct in the flags have been hardwired
  *      to RTLD_SAVREL.
  */
-#pragma ident  "@(#) $Id: dynodump.c,v 1.8 1996/05/23 18:39:21 georgn Exp $ - SMI"
+#pragma ident  "@(#) $Id: dynodump.c,v 1.6 1998/03/31 20:10:55 steve Exp $ - SMI"
 
 #define __EXTENSIONS__ 1
 
index d3ec59c..f97dd1b 100644 (file)
@@ -32,7 +32,7 @@
  * Mountain View, California 94043
  */
 
-#pragma ident  "@(#) $Id: _relocate.c,v 1.4 1995/06/26 20:12:41 georgn Exp $ - SMI"
+#pragma ident  "@(#) $Id: _relocate.c,v 1.3 1997/05/29 04:23:02 steve Exp $ - SMI"
 
 /* LINTLIBRARY */
 
index c90e29c..4dc66fe 100644 (file)
@@ -32,7 +32,7 @@
  * Mountain View, California 94043
  */
 
-#pragma ident  "@(#) $Id: machdep.h,v 1.2 1995/02/16 22:58:43 georgn Exp $ - SMI"
+#pragma ident  "@(#) $Id: machdep.h,v 1.3 1997/05/29 04:23:02 steve Exp $ - SMI"
 
 /*
  * Global include file for all sgs Intel machine dependent macros, constants
index feb5ca9..754b417 100644 (file)
@@ -32,7 +32,7 @@
  * Mountain View, California 94043
  */
 
-#pragma ident "@(#) $Id: _relocate.c,v 1.3 1995/06/26 20:16:39 georgn Exp $ - SMI"
+#pragma ident "@(#) $Id: _relocate.c,v 1.4 1998/03/31 20:10:55 steve Exp $ - SMI"
 
 /* LINTLIBRARY */
 
index 2a3d1e6..a649a9c 100644 (file)
@@ -32,7 +32,7 @@
  * Mountain View, California 94043
  */
 
-#pragma ident "@(#) $Id: machdep.h,v 1.2 1995/02/16 22:58:49 georgn Exp $ - SMI"
+#pragma ident "@(#) $Id: machdep.h,v 1.3 1997/05/29 04:23:20 steve Exp $ - SMI"
 
 /*
  * Global include file for all sgs PowerPC machine dependent macros, constants
index 10b0fda..14466f0 100644 (file)
@@ -35,7 +35,7 @@
 /*
  * Update the value of the `_edata' and `_end' symbols.
  */
-#pragma ident  "@(#) $Id: _relocate.c,v 1.4 1995/06/26 20:13:26 georgn Exp $ - SMI"
+#pragma ident  "@(#) $Id: _relocate.c,v 1.4 1998/03/31 20:10:55 steve Exp $ - SMI"
 
 #include       <libelf.h>
 #include       <string.h>
index 972081e..b4b76d8 100644 (file)
@@ -32,7 +32,7 @@
  * Mountain View, California 94043
  */
 
-#pragma ident  "@(#) $Id: machdep.h,v 1.2 1995/02/16 22:58:55 georgn Exp $ - SMI"
+#pragma ident  "@(#) $Id: machdep.h,v 1.3 1997/05/29 04:23:26 steve Exp $ - SMI"
 
 /*
  * Global include file for all sgs SPARC machine dependent macros, constants
index c060f33..0ac5cb8 100644 (file)
@@ -35,7 +35,7 @@
 /*
  * Update the value of the `_edata' and `_end' symbols.
  */
-#pragma ident  "@(#) $Id: syms.c,v 1.2 1995/03/06 22:39:22 georgn Exp $ - SMI"
+#pragma ident  "@(#) $Id: syms.c,v 1.3 1997/05/29 04:22:30 steve Exp $ - SMI"
 
 #include       <libelf.h>
 #include       <string.h>
index 7267c67..9289e88 100644 (file)
--- a/etc/NEWS
+++ b/etc/NEWS
@@ -115,15 +115,6 @@ maintained internally.
 The new primitives available for this purpose are functions named
 `user-name-completion' and `user-name-all-completions'.
 
-** Native widgets can be displayed in buffers.
-
-The glyph system has been extended to allow the display of glyphs that
-are implemented as native window-system widgets.  Thus you can embed
-buttons, scrollbars, combo boxes, edit fields and progress gauges in a
-buffer.  As a side effect subwindow support now works once again.
-
-This support is currently only available under MS-Windows.
-
 ** XEmacs can now play sound using Enlightenment Sound Daemon (ESD).
 It will try NAS first, then ESD, then playing native sound directly.
 
@@ -191,6 +182,29 @@ for PSWrap.
 * Lisp and internal changes in XEmacs 21.2
 ==========================================
 
+** A new portable dumper is available.
+
+Olivier Galibert has written a portable dumper for XEmacs, based on
+initial work by Kyle Jones.  Normally, XEmacs C sources link into an
+executable called `temacs', which loads the Lisp code and "unexecs"
+into a proper `xemacs' executable.  The unexec() process is unreliable
+and makes XEmacs hard to port to new operating systems, or even to new
+releases of old systems.
+
+A portable dumper is a different approach to dumping: instead of
+dumping full-fledged executable, it only dumps out the initialized
+data structures (both Lisp and C) into an external file.  A normally
+running XEmacs only needs to mmap() that file and relocate a bit to
+get to the initialized data.  In that scheme, there is no difference
+between `temacs' and `xemacs'.
+
+This is all very experimental, though.  Configure with `--pdump' to
+try testing it.  NOTE: it is expected that `make' will fail after
+dumping `xemacs.dmp'.  This is because Makefiles have not yet been
+modified to not expect `temacs' producing an `xemacs' executable.  You
+can try it out by simply running `src/temacs'.  If it starts without
+failure, the portable dumping worked.
+
 ** Much effort has been invested to make XEmacs Lisp faster:
 
 *** Many basic lisp operations are now faster.
@@ -227,6 +241,23 @@ Many operations do not see any improvement.  Surprisingly, running
 Speeding up your favorite slow operation is an excellent project to
 improve XEmacs.  Don't forget to profile!
 
+** Native widgets can be displayed in buffers.
+
+The glyph system has been extended to allow the display of glyphs that
+are implemented as native window-system widgets.  Thus you can embed
+buttons, scrollbars, combo boxes, edit fields and progress gauges in a
+buffer.  As a side effect subwindow support now works once again.
+
+All of this is still very experimental.  This support is currently
+only available under MS-Windows.  (#### Is this true?)
+
+** user-init-directory is now an absolute, unexpanded path.
+Previously, `user-init-directory' used to be relative to
+(concat "~" init-file-user).  This turned out to be too complicated
+for most packages (and some core Lisp files) to use correctly.
+
+Also, `init-file-user' has been obsoleted in the process.
+
 ** XEmacs finally has an automated test suite!
 Although this is not yet very sophisticated, it is already responsible
 for several important bug fixes in XEmacs.  To try it out, simply use
@@ -258,14 +289,12 @@ now results in something like this:
 An extra bonus is that checking for circularities is not just
 friendlier, but actually faster than checking for C-g.
 
-** The new form `ignore-file-errors', similar to `ignore-errors' may
-be used as a short-hand for condition-case when you wish to ignore
-file-related error.  For example:
-
-    (ignore-file-errors (delete-file "foo"))
+** Functions for decoding base64 encoding are now available; see
+`base64-encode-region', `base64-encode-string', `base64-decode-region'
+and `base64-decode-string'.
 
-** The arguments to `locate-file' are now much more "lispy".  As
-before, the usage is:
+** The arguments to `locate-file' are now more Lisp-like.  As before,
+the usage is:
 
     (locate-file FILENAME PATH-LIST &optional SUFFIXES MODE)
 
@@ -295,18 +324,11 @@ characters.  For instance:
       (put-char-table ?c ?\n table)
       (translate-region (point-min) (point-max) table))
 
-** The `keywordp' function now returns non-nil only on symbols
-interned in the global obarray.  For example:
-
-    (keywordp (intern ":foo" [0]))
-      => nil
-    (keywordp (intern ":foo"))       ; The same as (keywordp :foo)
-      => t
+** The new form `ignore-file-errors', similar to `ignore-errors' may
+be used as a short-hand for condition-case when you wish to ignore
+file-related error.  For example:
 
-This behaviour is compatible with other code which treats symbols
-beginning with colon as keywords only if they are interned in the
-global obarray.  `keywordp' used to wrongly return t in both cases
-above.
+    (ignore-file-errors (delete-file "foo"))
 
 ** The first argument to `intern-soft' may now also be a symbol, like
 with `unintern'.  If given a symbol, `intern-soft' will look for that
@@ -319,16 +341,18 @@ to check whether a specific symbol is interned in an obarray, e.g.:
     (intern-soft (make-symbol "foo"))
       => nil
 
-** Functions for decoding base64 encoding are now available; see
-`base64-encode-region', `base64-encode-string', `base64-decode-region'
-and `base64-decode-string'.
+** The `keywordp' function now returns non-nil only on symbols
+interned in the global obarray.  For example:
 
-** user-init-directory is now an absolute, unexpanded path.
-Previously, `user-init-directory' used to be relative to
-(concat "~" init-file-user).  This turned out to be too complicated
-for most packages (and some core Lisp files) to use correctly.
+    (keywordp (intern ":foo" [0]))
+      => nil
+    (keywordp (intern ":foo"))       ; The same as (keywordp :foo)
+      => t
 
-Also, `init-file-user' has been obsoleted in the process.
+This behaviour is compatible with other code which treats symbols
+beginning with colon as keywords only if they are interned in the
+global obarray.  `keywordp' used to wrongly return t in both cases
+above.
 
 \f
 * Changes in XEmacs 21.0
index b04e884..9b95d11 100644 (file)
@@ -880,9 +880,9 @@ Index
 * documentation <1>:                     Initialization Mode.
 * documentation:                         Introduction.
 * DSO:                                   Introduction.
-* ellcc <1>:                             Introduction.
-* ellcc:                                 Using ellcc.
 * ELLCC:                                 Environment Variables.
+* ellcc <1>:                             Using ellcc.
+* ellcc:                                 Introduction.
 * ELLCFLAGS:                             Environment Variables.
 * ELLDLLFLAGS:                           Environment Variables.
 * ELLLD:                                 Environment Variables.
@@ -901,16 +901,16 @@ Index
 * header files:                          Introduction.
 * help:                                  Introduction.
 * include files:                         Required Header File.
-* initialization <1>:                    Required Variables.
-* initialization <2>:                    Initialization Mode.
+* initialization <1>:                    Initialization Mode.
+* initialization <2>:                    Required Variables.
 * initialization:                        Required Functions.
 * linker:                                Introduction.
 * linking:                               Link Mode.
 * module compiler:                       Using ellcc.
 * module format:                         Annatomy of a Module.
 * module skeleton:                       Annatomy of a Module.
-* modules_of_module <1>:                 Required Functions.
-* modules_of_module:                     Loading other Modules.
+* modules_of_module <1>:                 Loading other Modules.
+* modules_of_module:                     Required Functions.
 * objects, defining:                     Defining Variables.
 * objects, Lisp:                         Defining Variables.
 * paths:                                 Other ellcc options.
index 17280e2..0ef2859 100644 (file)
@@ -31,10 +31,11 @@ File: info.info,  Node: Top,  Next: Getting Started,  Up: (dir)
 Info: An Introduction
 *********************
 
-   Info is a program for reading documentation, which you are using now.
+   Info is a program for reading documentation, which you might be using
+now to read this.
 
-   To learn how to use Info, type the command `h'.  It brings you to a
-programmed instruction sequence.
+   To learn how to use Info, type the command `h' while using the Info
+program.  It brings you to a programmed instruction sequence.
 
 * Menu:
 
@@ -816,24 +817,24 @@ learn how to install an Info file after you have created one.
 \1f
 Tag Table:
 Node: Top\7f1067
-Node: Getting Started\7f1565
-Node: Help-Small-Screen\7f2313
-Node: Help\7f4062
-Node: Help-P\7f5092
-Node: Help-^L\7f5954
-Node: Help-M\7f8832
-Node: Help-FOO\7f14812
-Node: Help-Adv\7f15550
-Node: Help-Cross\7f18225
-Node: Help-Q\7f18871
-Node: Advanced Info\7f19498
-Node: Expert\7f20476
-Node: Add\7f22990
-Node: Menus\7f26350
-Node: Cross-refs\7f29224
-Node: Tags\7f29926
-Node: Checking\7f31228
-Node: Emacs Info Variables\7f32181
-Node: Creating an Info File\7f33170
+Node: Getting Started\7f1612
+Node: Help-Small-Screen\7f2360
+Node: Help\7f4109
+Node: Help-P\7f5139
+Node: Help-^L\7f6001
+Node: Help-M\7f8879
+Node: Help-FOO\7f14859
+Node: Help-Adv\7f15597
+Node: Help-Cross\7f18272
+Node: Help-Q\7f18918
+Node: Advanced Info\7f19545
+Node: Expert\7f20523
+Node: Add\7f23037
+Node: Menus\7f26397
+Node: Cross-refs\7f29271
+Node: Tags\7f29973
+Node: Checking\7f31275
+Node: Emacs Info Variables\7f32228
+Node: Creating an Info File\7f33217
 \1f
 End Tag Table
index 76cc769..9f25e17 100644 (file)
@@ -4,19 +4,19 @@ texinfo.texi.
 INFO-DIR-SECTION Texinfo documentation system
 START-INFO-DIR-ENTRY
 * Texinfo: (texinfo).           The GNU documentation format.
-* install-info: (texinfo)Invoking install-info. Update info/dir entries.
-* texi2dvi: (texinfo)Format with texi2dvi.      Print Texinfo documents.
-* texindex: (texinfo)Format with tex/texindex.  Sort Texinfo index files.
+* install-info: (texinfo)Invoking install-info. Updating info/dir entries.
+* texi2dvi: (texinfo)Format with texi2dvi.      Printing Texinfo documentation.
+* texindex: (texinfo)Format with tex/texindex.  Sorting Texinfo index files.
 * makeinfo: (texinfo)makeinfo Preferred.        Translate Texinfo source.
 END-INFO-DIR-ENTRY
 
   This file documents Texinfo, a documentation system that can produce
-both online information and a printed manual from a single source file.
+both on-line information and a printed manual from a single source file.
 
-  Copyright (C) 1988, 90, 91, 92, 93, 95, 96, 97, 98, 99 Free Software
+  Copyright (C) 1988, 90, 91, 92, 93, 95, 96, 97, 98 Free Software
 Foundation, Inc.
 
-  This edition is for Texinfo version 4.0, 28 September 1999.
+  This edition is for Texinfo version 3.12.
 
   Permission is granted to make and distribute verbatim copies of this
 manual provided the copyright notice and this permission notice are
@@ -34,339 +34,317 @@ translation approved by the Free Software Foundation.
 
 \1f
 Indirect:
-texinfo.info-1: 1493
-texinfo.info-2: 49439
-texinfo.info-3: 98206
-texinfo.info-4: 148178
-texinfo.info-5: 197140
-texinfo.info-6: 246982
-texinfo.info-7: 296539
-texinfo.info-8: 346362
-texinfo.info-9: 395696
-texinfo.info-10: 438701
-texinfo.info-11: 479038
-texinfo.info-12: 525104
-texinfo.info-13: 564169
+texinfo.info-1: 1484
+texinfo.info-2: 48703
+texinfo.info-3: 96677
+texinfo.info-4: 146069
+texinfo.info-5: 196042
+texinfo.info-6: 245134
+texinfo.info-7: 293729
+texinfo.info-8: 343544
+texinfo.info-9: 392857
+texinfo.info-10: 435235
+texinfo.info-11: 481351
+texinfo.info-12: 519511
 \1f
 Tag Table:
 (Indirect)
-Node: Top\7f1493
-Node: Copying\7f24618
-Node: Overview\7f26623
-Node: Overview-Footnotes\7f27894
-Ref: Overview-Footnote-1\7f27958
-Node: Reporting Bugs\7f28415
-Node: Using Texinfo\7f29914
-Node: Info Files\7f33728
-Node: Info Files-Footnotes\7f38125
-Ref: Info Files-Footnote-1\7f38193
-Node: Printed Books\7f38372
-Node: Printed Books-Footnotes\7f41154
-Ref: Printed Books-Footnote-1\7f41228
-Node: Formatting Commands\7f41562
-Node: Formatting Commands-Footnotes\7f44559
-Ref: Formatting Commands-Footnote-1\7f44645
-Node: Conventions\7f45253
-Node: Comments\7f48014
-Node: Minimum\7f49439
-Node: Six Parts\7f51633
-Node: Short Sample\7f53145
-Node: Acknowledgements and History\7f57226
-Node: Texinfo Mode\7f59241
-Node: Texinfo Mode Overview\7f60613
-Node: Emacs Editing\7f61398
-Node: Inserting\7f63536
-Node: Showing the Structure\7f67817
-Node: Updating Nodes and Menus\7f70132
-Node: Updating Commands\7f71205
-Node: Updating Requirements\7f77249
-Node: Other Updating Commands\7f79530
-Node: Info Formatting\7f82786
-Node: Printing\7f84046
-Node: Texinfo Mode Summary\7f86378
-Node: Beginning a File\7f91134
-Node: Four Parts\7f92025
-Node: Sample Beginning\7f93495
-Node: Header\7f95115
-Node: First Line\7f96519
-Node: Start of Header\7f97493
-Node: setfilename\7f98206
-Node: settitle\7f100557
-Node: setchapternewpage\7f102447
-Node: paragraphindent\7f105299
-Node: exampleindent\7f106606
-Node: End of Header\7f107671
-Node: Info Summary and Permissions\7f108508
-Node: Titlepage & Copyright Page\7f109527
-Node: titlepage\7f111380
-Node: titlepage-Footnotes\7f113916
-Ref: titlepage-Footnote-1\7f113982
-Node: titlefont center sp\7f114256
-Node: title subtitle author\7f115559
-Node: Copyright & Permissions\7f118254
-Node: end titlepage\7f120245
-Node: headings on off\7f121951
-Node: The Top Node\7f124011
-Node: Title of Top Node\7f125166
-Node: Master Menu Parts\7f126402
-Node: Software Copying Permissions\7f128639
-Node: Ending a File\7f129807
-Node: Printing Indices & Menus\7f130662
-Node: Contents\7f133010
-Node: File End\7f136308
-Node: Structuring\7f136981
-Node: Tree Structuring\7f138638
-Node: Structuring Command Types\7f140061
-Node: makeinfo top\7f142383
-Node: chapter\7f143163
-Node: unnumbered & appendix\7f144187
-Node: majorheading & chapheading\7f145032
-Node: section\7f145853
-Node: unnumberedsec appendixsec heading\7f146617
-Node: subsection\7f147606
-Node: unnumberedsubsec appendixsubsec subheading\7f148178
-Node: subsubsection\7f149131
-Node: Raise/lower sections\7f150681
-Node: Nodes\7f152816
-Node: Two Paths\7f153824
-Node: Node Menu Illustration\7f155154
-Node: node\7f158966
-Node: Node Names\7f161787
-Node: Writing a Node\7f163154
-Node: Node Line Tips\7f165190
-Node: Node Line Requirements\7f165984
-Node: First Node\7f167765
-Node: makeinfo top command\7f169209
-Node: Top Node Summary\7f170388
-Node: makeinfo Pointer Creation\7f171838
-Node: anchor\7f172947
-Node: Menus\7f174417
-Node: Menus-Footnotes\7f175570
-Ref: Menus-Footnote-1\7f175628
-Node: Menu Location\7f175921
-Node: Writing a Menu\7f177281
-Node: Menu Parts\7f178344
-Node: Less Cluttered Menu Entry\7f179502
-Node: Menu Example\7f180127
-Node: Other Info Files\7f181648
-Node: Cross References\7f183494
-Node: References\7f184463
-Node: Cross Reference Commands\7f186254
-Node: Cross Reference Parts\7f187313
-Node: xref\7f190163
-Node: Reference Syntax\7f190962
-Node: One Argument\7f192616
-Node: Two Arguments\7f193633
-Node: Three Arguments\7f194748
-Node: Four and Five Arguments\7f197140
-Node: Top Node Naming\7f199552
-Node: ref\7f200562
-Node: pxref\7f201978
-Node: inforef\7f204360
-Node: uref\7f205653
-Node: Marking Text\7f207875
-Node: Indicating\7f208526
-Node: Useful Highlighting\7f210622
-Node: code\7f212245
-Node: kbd\7f215477
-Node: key\7f217348
-Node: samp\7f218681
-Node: var\7f220151
-Node: env\7f222115
-Node: file\7f222678
-Node: command\7f223289
-Node: option\7f223983
-Node: dfn\7f224491
-Node: cite\7f225403
-Node: acronym\7f225859
-Node: url\7f226412
-Node: email\7f227058
-Node: Emphasis\7f227872
-Node: emph & strong\7f228703
-Node: Smallcaps\7f229702
-Node: Fonts\7f231326
-Node: Quotations and Examples\7f232382
-Node: Block Enclosing Commands\7f233993
-Node: quotation\7f235893
-Node: example\7f236983
-Node: noindent\7f238982
-Node: lisp\7f240438
-Node: lisp-Footnotes\7f241105
-Ref: lisp-Footnote-1\7f241161
-Node: small\7f241279
-Node: display\7f243204
-Node: format\7f243998
-Node: exdent\7f244636
-Node: flushleft & flushright\7f245716
-Node: cartouche\7f246982
-Node: Lists and Tables\7f247742
-Node: Introducing Lists\7f248418
-Node: itemize\7f250095
-Node: enumerate\7f252370
-Node: Two-column Tables\7f254903
-Node: table\7f255592
-Node: ftable vtable\7f258049
-Node: itemx\7f259134
-Node: Multi-column Tables\7f260145
-Node: Multitable Column Widths\7f260816
-Node: Multitable Rows\7f262283
-Node: Indices\7f264059
-Node: Index Entries\7f265191
-Node: Predefined Indices\7f266324
-Node: Indexing Commands\7f267321
-Node: Combining Indices\7f271116
-Node: syncodeindex\7f272479
-Node: synindex\7f274141
-Node: New Indices\7f274666
-Node: Insertions\7f276491
-Node: Braces Atsigns\7f277733
-Node: Inserting An Atsign\7f278285
-Node: Inserting Braces\7f278559
-Node: Inserting Space\7f278922
-Node: Not Ending a Sentence\7f279426
-Node: Ending a Sentence\7f280742
-Node: Multiple Spaces\7f281762
-Node: dmn\7f282981
-Node: Inserting Accents\7f284194
-Node: Dots Bullets\7f285971
-Node: dots\7f286779
-Node: bullet\7f287330
-Node: TeX and copyright\7f287727
-Node: tex\7f288294
-Node: copyright symbol\7f288684
-Node: pounds\7f288944
-Node: minus\7f289308
-Node: math\7f290230
-Node: Glyphs\7f290956
-Node: Glyphs Summary\7f292072
-Node: result\7f292700
-Node: expansion\7f293185
-Node: Print Glyph\7f294141
-Node: Error Glyph\7f295018
-Node: Equivalence\7f295851
-Node: Point Glyph\7f296539
-Node: Footnotes\7f298104
-Node: Footnotes-Footnotes\7f298480
-Ref: Footnotes-Footnote-1\7f298546
-Node: Footnote Commands\7f298826
-Node: Footnote Commands-Footnotes\7f300441
-Ref: Footnote Commands-Footnote-1\7f300523
-Node: Footnote Styles\7f300559
-Node: Images\7f303129
-Node: Breaks\7f305394
-Node: Break Commands\7f306825
-Node: Line Breaks\7f307658
-Node: - and hyphenation\7f308676
-Node: w\7f309926
-Node: sp\7f310539
-Node: page\7f310948
-Node: group\7f311325
-Node: need\7f313068
-Node: Definition Commands\7f313798
-Node: Def Cmd Template\7f315372
-Node: Optional Arguments\7f318369
-Node: deffnx\7f319957
-Node: Def Cmds in Detail\7f320898
-Node: Functions Commands\7f322008
-Node: Variables Commands\7f325011
-Node: Typed Functions\7f327094
-Node: Typed Variables\7f330636
-Node: Abstract Objects\7f332619
-Node: Data Types\7f338447
-Node: Def Cmd Conventions\7f339702
-Node: Sample Function Definition\7f340265
-Node: Conditionals\7f343134
-Node: Conditional Commands\7f344239
-Node: Conditional Not Commands\7f345584
-Node: Raw Formatter Commands\7f346362
-Node: set clear value\7f348195
-Node: ifset ifclear\7f349002
-Node: set value\7f352223
-Node: value Example\7f353881
-Node: Internationalization\7f355603
-Node: documentlanguage\7f356135
-Node: documentencoding\7f360438
-Node: Defining New Texinfo Commands\7f361051
-Node: Defining Macros\7f362220
-Node: Invoking Macros\7f364355
-Node: Macro Details\7f366056
-Node: alias\7f367101
-Node: definfoenclose\7f368300
-Node: Hardcopy\7f371050
-Node: Use TeX\7f373074
-Node: Format with tex/texindex\7f373662
-Node: Format with texi2dvi\7f378036
-Node: Print with lpr\7f379477
-Node: Within Emacs\7f381694
-Node: Texinfo Mode Printing\7f382587
-Node: Compile-Command\7f386345
-Node: Requirements Summary\7f387219
-Node: Preparing for TeX\7f388544
-Node: Preparing for TeX-Footnotes\7f392166
-Ref: Preparing for TeX-Footnote-1\7f392248
-Node: Overfull hboxes\7f392347
-Node: smallbook\7f394500
-Node: A4 Paper\7f395696
-Node: pagesizes\7f396588
-Node: Cropmarks and Magnification\7f397773
-Node: PDF Output\7f399832
-Node: Creating and Installing Info Files\7f401043
-Node: Creating an Info File\7f401427
-Node: makeinfo advantages\7f402700
-Node: Invoking makeinfo\7f403624
-Node: makeinfo options\7f404298
-Node: Pointer Validation\7f411542
-Node: makeinfo in Emacs\7f414682
-Node: texinfo-format commands\7f417234
-Node: Batch Formatting\7f418507
-Node: Tag and Split Files\7f419724
-Node: makeinfo html\7f423134
-Node: Install an Info File\7f425154
-Node: Directory File\7f425984
-Node: New Info File\7f427768
-Node: New Info File-Footnotes\7f428867
-Ref: New Info File-Footnote-1\7f428941
-Node: Other Info Directories\7f429022
-Node: Other Info Directories-Footnotes\7f433343
-Ref: Other Info Directories-Footnote-1\7f433435
-Ref: Other Info Directories-Footnote-2\7f433562
-Node: Installing Dir Entries\7f433623
-Node: Invoking install-info\7f435842
-Node: Command List\7f438701
-Node: Tips\7f479038
-Node: Sample Texinfo File\7f490447
-Node: Sample Permissions\7f492566
-Node: Inserting Permissions\7f493608
-Node: ifinfo Permissions\7f495904
-Node: Titlepage Permissions\7f497525
-Node: Include Files\7f498787
-Node: Using Include Files\7f499874
-Node: texinfo-multiple-files-update\7f501829
-Node: Include File Requirements\7f504190
-Node: Sample Include File\7f505435
-Node: Include Files Evolution\7f506942
-Node: Headings\7f508916
-Node: Headings Introduced\7f509553
-Node: Heading Format\7f511441
-Node: Heading Choice\7f513893
-Node: Custom Headings\7f515265
-Node: Catching Mistakes\7f519564
-Node: makeinfo Preferred\7f520853
-Node: Debugging with Info\7f521758
-Node: Debugging with TeX\7f525104
-Node: Using texinfo-show-structure\7f529367
-Node: Using occur\7f532463
-Node: Running Info-Validate\7f533998
-Node: Using Info-validate\7f535059
-Node: Unsplit\7f536889
-Node: Tagifying\7f537935
-Node: Splitting\7f538787
-Node: Refilling Paragraphs\7f540405
-Node: Refilling Paragraphs-Footnotes\7f542059
-Ref: Refilling Paragraphs-Footnote-1\7f542147
-Node: Command Syntax\7f542310
-Node: Obtaining TeX\7f545267
-Node: Command and Variable Index\7f546309
-Node: Concept Index\7f564169
+Node: Top\7f1484
+Node: Copying\7f23799
+Node: Overview\7f25804
+Node: Overview-Footnotes\7f27233
+Ref: Overview-Footnote-1\7f27297
+Node: Using Texinfo\7f27769
+Node: Info Files\7f30252
+Node: Info Files-Footnotes\7f34288
+Ref: Info Files-Footnote-1\7f34356
+Node: Printed Books\7f34535
+Node: Printed Books-Footnotes\7f37207
+Ref: Printed Books-Footnote-1\7f37281
+Node: Formatting Commands\7f37491
+Node: Formatting Commands-Footnotes\7f40318
+Ref: Formatting Commands-Footnote-1\7f40404
+Node: Conventions\7f41020
+Node: Comments\7f43582
+Node: Minimum\7f45005
+Node: Six Parts\7f47191
+Node: Short Sample\7f48703
+Node: Acknowledgements\7f52839
+Node: Texinfo Mode\7f53674
+Node: Texinfo Mode Overview\7f55046
+Node: Emacs Editing\7f55822
+Node: Inserting\7f57952
+Node: Showing the Structure\7f62233
+Node: Updating Nodes and Menus\7f64760
+Node: Updating Commands\7f65833
+Node: Updating Requirements\7f71894
+Node: Other Updating Commands\7f74191
+Node: Info Formatting\7f77459
+Node: Printing\7f78717
+Node: Texinfo Mode Summary\7f81062
+Node: Beginning a File\7f85816
+Node: Four Parts\7f86707
+Node: Sample Beginning\7f88177
+Node: Header\7f89797
+Node: First Line\7f91149
+Node: Start of Header\7f92138
+Node: setfilename\7f92851
+Node: settitle\7f94787
+Node: setchapternewpage\7f96677
+Node: paragraphindent\7f99438
+Node: End of Header\7f100920
+Node: Info Summary and Permissions\7f101759
+Node: Titlepage & Copyright Page\7f102778
+Node: titlepage\7f104384
+Node: titlepage-Footnotes\7f106666
+Ref: titlepage-Footnote-1\7f106732
+Node: titlefont center sp\7f107006
+Node: title subtitle author\7f108232
+Node: Copyright & Permissions\7f110504
+Node: end titlepage\7f112505
+Node: headings on off\7f114211
+Node: The Top Node\7f116256
+Node: Title of Top Node\7f117411
+Node: Master Menu Parts\7f118664
+Node: Software Copying Permissions\7f120901
+Node: Ending a File\7f122069
+Node: Printing Indices & Menus\7f122917
+Node: Contents\7f125226
+Node: File End\7f127566
+Node: Structuring\7f128239
+Node: Tree Structuring\7f129896
+Node: Structuring Command Types\7f131339
+Node: makeinfo top\7f133666
+Node: chapter\7f134199
+Node: unnumbered & appendix\7f135223
+Node: majorheading & chapheading\7f136062
+Node: section\7f136883
+Node: unnumberedsec appendixsec heading\7f137647
+Node: subsection\7f138636
+Node: unnumberedsubsec appendixsubsec subheading\7f139208
+Node: subsubsection\7f140161
+Node: Raise/lower sections\7f141711
+Node: Nodes\7f143846
+Node: Two Paths\7f144783
+Node: Node Menu Illustration\7f146069
+Node: node\7f149764
+Node: Node Names\7f152460
+Node: Writing a Node\7f153536
+Node: Node Line Tips\7f155554
+Node: Node Line Requirements\7f156348
+Node: First Node\7f157949
+Node: makeinfo top command\7f159393
+Node: Top Node Summary\7f160572
+Node: makeinfo Pointer Creation\7f162022
+Node: Menus\7f163269
+Node: Menus-Footnotes\7f164208
+Ref: Menus-Footnote-1\7f164266
+Node: Menu Location\7f164559
+Node: Writing a Menu\7f166236
+Node: Menu Parts\7f167202
+Node: Less Cluttered Menu Entry\7f168360
+Node: Menu Example\7f168985
+Node: Other Info Files\7f170506
+Node: Cross References\7f172362
+Node: References\7f173319
+Node: Cross Reference Commands\7f175066
+Node: Cross Reference Parts\7f176125
+Node: xref\7f178961
+Node: Reference Syntax\7f179760
+Node: One Argument\7f181414
+Node: Two Arguments\7f182426
+Node: Three Arguments\7f183541
+Node: Four and Five Arguments\7f185932
+Node: Top Node Naming\7f188344
+Node: ref\7f189354
+Node: pxref\7f190744
+Node: inforef\7f193126
+Node: uref\7f194419
+Node: Marking Text\7f195418
+Node: Indicating\7f196042
+Node: Useful Highlighting\7f197947
+Node: code\7f199336
+Node: kbd\7f202374
+Node: key\7f204244
+Node: samp\7f205577
+Node: var\7f207164
+Node: file\7f208957
+Node: dfn\7f209564
+Node: cite\7f210474
+Node: url\7f210928
+Node: email\7f211492
+Node: Emphasis\7f212304
+Node: emph & strong\7f213204
+Node: Smallcaps\7f214190
+Node: Fonts\7f215517
+Node: Customized Highlighting\7f216605
+Node: Customized Highlighting-Footnotes\7f219420
+Ref: Customized Highlighting-Footnote-1\7f219514
+Node: Quotations and Examples\7f219640
+Node: Block Enclosing Commands\7f221262
+Node: quotation\7f223287
+Node: example\7f224377
+Node: noindent\7f226432
+Node: Lisp Example\7f227896
+Node: Lisp Example-Footnotes\7f228598
+Ref: Lisp Example-Footnote-1\7f228670
+Node: smallexample & smalllisp\7f228788
+Node: display\7f230813
+Node: format\7f231445
+Node: exdent\7f231906
+Node: flushleft & flushright\7f232986
+Node: cartouche\7f234252
+Node: Lists and Tables\7f235019
+Node: Introducing Lists\7f235695
+Node: itemize\7f237360
+Node: enumerate\7f239507
+Node: Two-column Tables\7f242012
+Node: table\7f242701
+Node: ftable vtable\7f245134
+Node: itemx\7f246235
+Node: Multi-column Tables\7f247246
+Node: Multitable Column Widths\7f247917
+Node: Multitable Rows\7f249371
+Node: Indices\7f251148
+Node: Index Entries\7f252298
+Node: Predefined Indices\7f253431
+Node: Indexing Commands\7f254428
+Node: Combining Indices\7f258968
+Node: syncodeindex\7f260331
+Node: synindex\7f261993
+Node: New Indices\7f262518
+Node: Insertions\7f264343
+Node: Braces Atsigns\7f265527
+Node: Inserting An Atsign\7f266079
+Node: Inserting Braces\7f266353
+Node: Inserting Space\7f266716
+Node: Not Ending a Sentence\7f267220
+Node: Ending a Sentence\7f268574
+Node: Multiple Spaces\7f269703
+Node: dmn\7f270922
+Node: Inserting Accents\7f272129
+Node: Dots Bullets\7f273886
+Node: dots\7f274708
+Node: bullet\7f275232
+Node: TeX and copyright\7f275629
+Node: tex\7f276196
+Node: copyright symbol\7f276612
+Node: pounds\7f276872
+Node: minus\7f277236
+Node: math\7f278158
+Node: Glyphs\7f278886
+Node: Glyphs Summary\7f279999
+Node: result\7f280627
+Node: expansion\7f281112
+Node: Print Glyph\7f282068
+Node: Error Glyph\7f282945
+Node: Equivalence\7f283778
+Node: Point Glyph\7f284466
+Node: Images\7f286023
+Node: Breaks\7f287690
+Node: Break Commands\7f289121
+Node: Line Breaks\7f289962
+Node: - and hyphenation\7f290980
+Node: w\7f292230
+Node: sp\7f292943
+Node: page\7f293352
+Node: group\7f293729
+Node: need\7f295472
+Node: Definition Commands\7f296202
+Node: Def Cmd Template\7f297773
+Node: Optional Arguments\7f300770
+Node: deffnx\7f302358
+Node: Def Cmds in Detail\7f303313
+Node: Functions Commands\7f304423
+Node: Variables Commands\7f307428
+Node: Typed Functions\7f309514
+Node: Typed Variables\7f313056
+Node: Abstract Objects\7f315039
+Node: Data Types\7f320264
+Node: Def Cmd Conventions\7f321519
+Node: Sample Function Definition\7f322082
+Node: Footnotes\7f324966
+Node: Footnotes-Footnotes\7f325354
+Ref: Footnotes-Footnote-1\7f325420
+Node: Footnote Commands\7f325700
+Node: Footnote Commands-Footnotes\7f327197
+Ref: Footnote Commands-Footnote-1\7f327279
+Node: Footnote Styles\7f327315
+Node: Conditionals\7f329901
+Node: Conditional Commands\7f330712
+Node: Conditional Not Commands\7f332205
+Node: Raw Formatter Commands\7f332950
+Node: set clear value\7f334780
+Node: ifset ifclear\7f335581
+Node: value\7f338760
+Node: value Example\7f340172
+Node: Macros\7f341750
+Node: Defining Macros\7f342455
+Node: Invoking Macros\7f343544
+Node: Format/Print Hardcopy\7f344650
+Node: Use TeX\7f346487
+Node: Format with tex/texindex\7f347115
+Node: Format with texi2dvi\7f350756
+Node: Print with lpr\7f351347
+Node: Within Emacs\7f352201
+Node: Texinfo Mode Printing\7f353120
+Node: Compile-Command\7f356530
+Node: Requirements Summary\7f357418
+Node: Preparing for TeX\7f358731
+Node: Overfull hboxes\7f361518
+Node: smallbook\7f363077
+Node: A4 Paper\7f364595
+Node: Cropmarks and Magnification\7f365820
+Node: Create an Info File\7f367761
+Node: makeinfo advantages\7f369064
+Node: Invoking makeinfo\7f369980
+Node: makeinfo options\7f370668
+Node: Pointer Validation\7f376152
+Node: makeinfo in Emacs\7f377496
+Node: texinfo-format commands\7f380054
+Node: Batch Formatting\7f381325
+Node: Tag and Split Files\7f382541
+Node: Install an Info File\7f385895
+Node: Directory file\7f386713
+Node: New Info File\7f388581
+Node: Other Info Directories\7f389642
+Node: Installing Dir Entries\7f392857
+Node: Invoking install-info\7f394850
+Node: Command List\7f397265
+Node: Tips\7f435235
+Node: Sample Texinfo File\7f446645
+Node: Sample Permissions\7f448764
+Node: Inserting Permissions\7f449807
+Node: ifinfo Permissions\7f452113
+Node: Titlepage Permissions\7f453734
+Node: Include Files\7f454996
+Node: Using Include Files\7f456083
+Node: texinfo-multiple-files-update\7f458038
+Node: Include File Requirements\7f460399
+Node: Sample Include File\7f461644
+Node: Include Files Evolution\7f463163
+Node: Headings\7f465134
+Node: Headings Introduced\7f465771
+Node: Heading Format\7f467659
+Node: Heading Choice\7f470111
+Node: Custom Headings\7f471483
+Node: Catching Mistakes\7f475811
+Node: makeinfo Preferred\7f477100
+Node: Debugging with Info\7f478005
+Node: Debugging with TeX\7f481351
+Node: Using texinfo-show-structure\7f485631
+Node: Using occur\7f488730
+Node: Running Info-Validate\7f490267
+Node: Using Info-validate\7f491328
+Node: Unsplit\7f493170
+Node: Tagifying\7f494216
+Node: Splitting\7f495068
+Node: Refilling Paragraphs\7f496684
+Node: Refilling Paragraphs-Footnotes\7f498338
+Ref: Refilling Paragraphs-Footnote-1\7f498426
+Node: Command Syntax\7f498589
+Node: Obtaining TeX\7f501546
+Node: Command and Variable Index\7f503659
+Node: Concept Index\7f519511
 \1f
 End Tag Table
index 0d1e560..f31fc03 100644 (file)
@@ -4,19 +4,19 @@ texinfo.texi.
 INFO-DIR-SECTION Texinfo documentation system
 START-INFO-DIR-ENTRY
 * Texinfo: (texinfo).           The GNU documentation format.
-* install-info: (texinfo)Invoking install-info. Update info/dir entries.
-* texi2dvi: (texinfo)Format with texi2dvi.      Print Texinfo documents.
-* texindex: (texinfo)Format with tex/texindex.  Sort Texinfo index files.
+* install-info: (texinfo)Invoking install-info. Updating info/dir entries.
+* texi2dvi: (texinfo)Format with texi2dvi.      Printing Texinfo documentation.
+* texindex: (texinfo)Format with tex/texindex.  Sorting Texinfo index files.
 * makeinfo: (texinfo)makeinfo Preferred.        Translate Texinfo source.
 END-INFO-DIR-ENTRY
 
   This file documents Texinfo, a documentation system that can produce
-both online information and a printed manual from a single source file.
+both on-line information and a printed manual from a single source file.
 
-  Copyright (C) 1988, 90, 91, 92, 93, 95, 96, 97, 98, 99 Free Software
+  Copyright (C) 1988, 90, 91, 92, 93, 95, 96, 97, 98 Free Software
 Foundation, Inc.
 
-  This edition is for Texinfo version 4.0, 28 September 1999.
+  This edition is for Texinfo version 3.12.
 
   Permission is granted to make and distribute verbatim copies of this
 manual provided the copyright notice and this permission notice are
@@ -33,19 +33,19 @@ versions, except that this permission notice may be stated in a
 translation approved by the Free Software Foundation.
 
 \1f
-File: texinfo.info,  Node: Top,  Next: Copying,  Up: (dir)
+File: texinfo.info,  Node: Top,  Next: Copying,  Prev: (dir),  Up: (dir)
 
 Texinfo
 *******
 
   Texinfo is a documentation system that uses a single source file to
-produce both online information and printed output.
+produce both on-line information and printed output.
 
   The first part of this master menu lists the major nodes in this Info
 document, including the @-command and concept indices.  The rest of the
 menu lists all the lower level nodes in the document.
 
-  This is Edition 4.0 of the Texinfo manual, updated 28 September 1999.
+  This is Edition 3.12 of the Texinfo documentation, 27 February 1998.
 
 * Menu:
 
@@ -69,12 +69,13 @@ menu lists all the lower level nodes in the document.
 * Breaks::                      How to force and prevent line and page breaks.
 * Definition Commands::         How to describe functions and the like
                                   in a uniform manner.
+* Footnotes::                   How to write footnotes.
 * Conditionals::                How to specify text for either TeX or Info.
-* Internationalization::
-* Defining New Texinfo Commands::
-* Hardcopy::                    How to convert a Texinfo file to a file
+* Macros::                      Defining new Texinfo commands.
+* Format/Print Hardcopy::       How to convert a Texinfo file to a file
                                   for printing and how to print that file.
-* Creating and Installing Info Files::
+* Create an Info File::         Convert a Texinfo file into an Info file.
+* Install an Info File::        Make an Info file accessible to users.
 * Command List::                All the Texinfo @-commands.
 * Tips::                        Hints on how to write a Texinfo document.
 * Sample Texinfo File::         A sample Texinfo file to look at.
@@ -94,17 +95,18 @@ menu lists all the lower level nodes in the document.
 
 Overview of Texinfo
 
-* Reporting Bugs::              Submitting effective bug reports.
-* Using Texinfo::               Create printed or online output.
+* Using Texinfo::               Create a conventional printed book
+                                  or an Info file.
 * Info Files::                  What is an Info file?
 * Printed Books::               Characteristics of a printed book or manual.
 * Formatting Commands::         @-commands are used for formatting.
 * Conventions::                 General rules for writing a Texinfo file.
-* Comments::                    Writing comments and ignored text in general.
+* Comments::                    How to write comments and mark regions that
+                                  the formatting commands will ignore.
 * Minimum::                     What a Texinfo file must have.
 * Six Parts::                   Usually, a Texinfo file has six parts.
 * Short Sample::                A short sample Texinfo file.
-* Acknowledgements and History::  Contributors and genesis.
+* Acknowledgements::
 
 Using Texinfo Mode
 
@@ -145,8 +147,7 @@ The Texinfo File Header
 * setfilename::                 Tell Info the name of the Info file.
 * settitle::                    Create a title for the printed work.
 * setchapternewpage::           Start chapters on right-hand pages.
-* paragraphindent::             Specify paragraph indentation.
-* exampleindent::               Specify environment indentation.
+* paragraphindent::             An option to specify paragraph indentation.
 * End of Header::               Formatting a region requires this.
 
 The Title and Copyright Pages
@@ -195,9 +196,8 @@ Nodes
 * Two Paths::                   Different commands to structure
                                   Info output and printed output.
 * Node Menu Illustration::      A diagram, and sample nodes and menus.
-* node::                        Creating nodes, in detail.
-* makeinfo Pointer Creation::   Letting makeinfo determine node pointers.
-* anchor::                      Defining arbitrary cross-reference targets.
+* node::                        How to write a node, in detail.
+* makeinfo Pointer Creation::   How to create node pointers with `makeinfo'.
 
 The `@node' Command
 
@@ -246,26 +246,23 @@ Marking Words and Phrases
 Indicating Definitions, Commands, etc.
 
 * Useful Highlighting::         Highlighting provides useful information.
-* code::                        Indicating program code.
-* kbd::                         Showing keyboard input.
-* key::                         Specifying keys.
-* samp::                        Showing a literal sequence of characters.
-* var::                         Indicating metasyntactic variables.
-* env::                         Indicating environment variables.
-* file::                        Indicating file names.
-* command::                     Indicating command names.
-* option::                      Indicating option names.
-* dfn::                         Specifying definitions.
-* cite::                        Referring to books not in the  Info system.
-* acronym::                     Indicating acronyms.
-* url::                         Indicating a World Wide Web reference.
-* email::                       Indicating an electronic mail address.
+* code::                        How to indicate code.
+* kbd::                         How to show keyboard input.
+* key::                         How to specify keys.
+* samp::                        How to show a literal sequence of characters.
+* var::                         How to indicate a metasyntactic variable.
+* file::                        How to indicate the name of a file.
+* dfn::                         How to specify a definition.
+* cite::                        How to refer to a book that is not in Info.
+* url::                         How to indicate a world wide web reference.
+* email::                       How to indicate an electronic mail address.
 
 Emphasizing Text
 
 * emph & strong::               How to emphasize text in Texinfo.
 * Smallcaps::                   How to use the small caps font.
 * Fonts::                       Various font commands for printed output.
+* Customized Highlighting::     How to define highlighting commands.
 
 Quotations and Examples
 
@@ -274,8 +271,8 @@ Quotations and Examples
 * quotation::                   How to write a quotation.
 * example::                     How to write an example in a fixed-width font.
 * noindent::                    How to prevent paragraph indentation.
-* lisp::                        How to illustrate Lisp code.
-* small::                       Forms for `@smallbook'.
+* Lisp Example::                How to illustrate Lisp code.
+* smallexample & smalllisp::    Forms for the `@smallbook' option.
 * display::                     How to write an example in the current font.
 * format::                      How to write an example that does not narrow
                                   the margins.
@@ -302,7 +299,7 @@ Multi-column Tables
 * Multitable Column Widths::    Defining multitable column widths.
 * Multitable Rows::             Defining multitable rows, with examples.
 
-Indices
+Creating Indices
 
 * Index Entries::               Choose different words for index entries.
 * Predefined Indices::          Use different indices for different kinds
@@ -332,7 +329,6 @@ Special Insertions
 * math::                        How to format a mathematical expression.
 * Glyphs::                      How to indicate results of evaluation,
                                   expansion of macros, errors, etc.
-* Footnotes::                   How to include footnotes.
 * Images::                      How to include graphics.
 
 Inserting @ and Braces
@@ -376,11 +372,6 @@ Glyphs Summary
 * Equivalence::
 * Point Glyph::
 
-Footnotes
-
-* Footnote Commands::           How to write a footnote in Texinfo.
-* Footnote Styles::             Controlling how footnotes appear in Info.
-
 Making and Preventing Breaks
 
 * Break Commands::              Cause and prevent splits.
@@ -411,6 +402,11 @@ The Definition Commands
 * Abstract Objects::            Commands for object-oriented programming.
 * Data Types::                  The definition command for data types.
 
+Footnotes
+
+* Footnote Commands::           How to write a footnote in Texinfo.
+* Footnote Styles::             Controlling how footnotes appear in Info.
+
 Conditionally Visible Text
 
 * Conditional Commands::        Specifying text for HTML, Info, or TeX.
@@ -423,45 +419,30 @@ Conditionally Visible Text
 `@set', `@clear', and `@value'
 
 * ifset ifclear::               Format a region if a flag is set.
-* set value::                   Expand a flag variable to a string.
+* value::                       Replace a flag with a string.
 * value Example::               An easy way to update edition information.
 
-Internationalization
+Macros: Defining New Texinfo Commands
 
-* documentlanguage::            Declaring the current language.
-* documentencoding::            Declaring the input encoding.
-
-Defining New Texinfo Commands
-
-* Defining Macros::             Defining and undefining new commands.
+* Defining Macros::             Both defining and undefining new commands.
 * Invoking Macros::             Using a macro, once you've defined it.
-* Macro Details::               Beyond basic macro usage.
-* alias::                       Command aliases.
-* definfoenclose::              Customized highlighting.
 
-Formatting and Printing Hardcopy
+Format and Print Hardcopy
 
 * Use TeX::                     Use TeX to format for hardcopy.
-* Format with tex/texindex::    How to format with explicit shell commands.
-* Format with texi2dvi::        A simpler way to format.
+* Format with tex/texindex::    How to format in a shell.
+* Format with texi2dvi::        A simpler way to use the shell.
 * Print with lpr::              How to print.
 * Within Emacs::                How to format and print from an Emacs shell.
 * Texinfo Mode Printing::       How to format and print in Texinfo mode.
 * Compile-Command::             How to print using Emacs's compile command.
 * Requirements Summary::        TeX formatting requirements summary.
-* Preparing for TeX::           What to do before you use TeX.
+* Preparing for TeX::           What you need to do to use TeX.
 * Overfull hboxes::             What are and what to do with overfull hboxes.
 * smallbook::                   How to print small format books and manuals.
 * A4 Paper::                    How to print on European A4 paper.
-* pagesizes::                   How to print with customized page sizes.
 * Cropmarks and Magnification::  How to print marks to indicate the size
                                 of pages and how to print scaled up output.
-* PDF Output::                  Portable Document Format output.
-
-Creating and Installing Info Files
-
-* Creating an Info File::
-* Install an Info File::
 
 Creating an Info File
 
@@ -476,11 +457,10 @@ Creating an Info File
 * Batch Formatting::            How to format for Info in Emacs Batch mode.
 * Tag and Split Files::         How tagged and split files help Info
                                   to run better.
-* makeinfo html::               Generating HTML output.
 
 Installing an Info File
 
-* Directory File::              The top level menu for all Info files.
+* Directory file::              The top level menu for all Info files.
 * New Info File::               Listing a new info file.
 * Other Info Directories::      How to specify Info files that are
                                   located in other directories.
@@ -528,8 +508,7 @@ Finding Badly Referenced Nodes
 * Tagifying::                   How to tagify a file.
 * Splitting::                   How to split a file manually.
 
-     Documentation is like sex: when it is good, it is very, very good;
-     and when it is bad, it is better than nothing.  --Dick Brandon
+How to Obtain TeX
 
 \1f
 File: texinfo.info,  Node: Copying,  Next: Overview,  Prev: Top,  Up: Top
@@ -577,80 +556,43 @@ File: texinfo.info,  Node: Overview,  Next: Texinfo Mode,  Prev: Copying,  Up: T
 Overview of Texinfo
 *******************
 
-  "Texinfo"(1) (*note Overview-Footnote-1::)  is a documentation system
-that uses a single source file to produce both online information and
+  "Texinfo"(1) (*note Overview-Footnote-1::) is a documentation system
+that uses a single source file to produce both on-line information and
 printed output.  This means that instead of writing two different
-documents, one for the online information and the other for a printed
-work, you need write only one document.  Therefore, when the work is
-revised, you need revise only that one document.
+documents, one for the on-line help or other on-line information and
+the other for a typeset manual or other printed work, you need write
+only one document.  When the work is revised, you need revise only one
+document.  (You can read the on-line information, known as an "Info
+file", with an Info documentation-reading program.)
 
 * Menu:
 
-* Reporting Bugs::              Submitting effective bug reports.
-* Using Texinfo::               Create printed or online output.
+* Using Texinfo::               Create a conventional printed book
+                                  or an Info file.
 * Info Files::                  What is an Info file?
 * Printed Books::               Characteristics of a printed book or manual.
 * Formatting Commands::         @-commands are used for formatting.
 * Conventions::                 General rules for writing a Texinfo file.
-* Comments::                    Writing comments and ignored text in general.
+* Comments::                    How to write comments and mark regions that
+                                  the formatting commands will ignore.
 * Minimum::                     What a Texinfo file must have.
 * Six Parts::                   Usually, a Texinfo file has six parts.
 * Short Sample::                A short sample Texinfo file.
-* Acknowledgements and History::  Contributors and genesis.
+* Acknowledgements::
 
 \1f
 File: texinfo.info,  Node: Overview-Footnotes,  Up: Overview
 
-  (1) The first syllable of "Texinfo" is pronounced like "speck", not
-"hex".  This odd pronunciation is derived from, but is not the same as,
-the pronunciation of TeX.  In the word TeX, the `X' is actually the
-Greek letter "chi" rather than the English letter "ex".  Pronounce TeX
-as if the `X' were the last sound in the name `Bach'; but pronounce
-Texinfo as if the `x' were a `k'.  Spell "Texinfo" with a capital "T"
-and the other letters in lower case.
-
-\1f
-File: texinfo.info,  Node: Reporting Bugs,  Next: Using Texinfo,  Up: Overview
-
-Reporting Bugs
-==============
-
-  We welcome bug reports or suggestions for the Texinfo system, both
-programs and documentation.  Please email them to
-<bug-texinfo@gnu.org>.  You can get the latest version of Texinfo from
-`ftp://ftp.gnu.org/gnu/texinfo/' and its mirrors worldwide.
-
-  For bug reports, please include enough information for the maintainers
-to reproduce the problem.  Generally speaking, that means:
-
-   * the version number of Texinfo and the program(s) or manual(s)
-     involved.
-
-   * hardware, operating system, and compiler versions.
-
-   * any unusual options you gave to `configure'.
-
-   * the contents of any input files necessary to reproduce the bug.
-
-   * a description of the problem and samples of any erroneous output.
-
-   * anything else that you think would be helpful.
-
-  When in doubt whether something is needed or not, include it.  It's
-better to include too much than to leave out something important.
-
-  Patches are most welcome; if possible, please make them with
-`diff -c' (*note Overview: (diffutils)Top.) and include `ChangeLog'
-entries (*note Change Log: (emacs)Change Log.).
-
-  When sending email, please do not encode or split the messages in any
-way if possible; it's much easier to deal with one plain text message,
-however large, than many small ones.  GNU shar
-(ftp://ftp.gnu.org/gnu/sharutils/) is a convenient way of packaging
-multiple and/or binary files for email.
+  (1) Note that the first syllable of "Texinfo" is pronounced like
+"speck", not "hex".  This odd pronunciation is derived from, but is not
+the same as, the pronunciation of TeX.  In the word TeX, the `X' is
+actually the Greek letter "chi" rather than the English letter "ex".
+Pronounce TeX as if the `X' were the last sound in the name `Bach'; but
+pronounce Texinfo as if the `x' were a `k'.  Spell "Texinfo" with a
+capital "T" and write the other letters in lower case.
 
 \1f
-File: texinfo.info,  Node: Using Texinfo,  Next: Info Files,  Prev: Reporting Bugs,  Up: Overview
+File: texinfo.info,  Node: Using Texinfo,  Next: Info Files,  Prev: Overview,  Up: Overview
 
 Using Texinfo
 =============
@@ -658,71 +600,47 @@ Using Texinfo
   Using Texinfo, you can create a printed document with the normal
 features of a book, including chapters, sections, cross references, and
 indices.  From the same Texinfo source file, you can create a
-menu-driven, online Info file with nodes, menus, cross references, and
-indices.  You can also create from that same source file an HTML output
-file suitable for use with a web browser.  `The GNU Emacs Manual' is a
-good example of a Texinfo file, as is this manual.
+menu-driven, on-line Info file with nodes, menus, cross references, and
+indices.  You can, if you wish, make the chapters and sections of the
+printed document correspond to the nodes of the on-line information;
+and you use the same cross references and indices for both the Info
+file and the printed work.  `The GNU Emacs Manual' is a good example of
+a Texinfo file, as is this manual.
 
   To make a printed document, you process a Texinfo source file with the
-TeX typesetting program (but the Texinfo language is very different
-from TeX's usual language, plain TeX).  This creates a DVI file that
-you can typeset and print as a book or report (*note Hardcopy::).
-
-  To output an Info file, process your Texinfo source with the
-`makeinfo' utility or Emacs's `texinfo-format-buffer' command.  You can
-install the result in your Info tree (*note Install an Info File::).
-
-  To output an HTML file, process your Texinfo source with `makeinfo'
-using the `--html' option.  You can (for example) install the result on
-your web site.
-
-  If you are a programmer and would like to contribute to the GNU
-project by implementing additional output formats for Texinfo, that
-would be excellent.  But please do not write a separate translator
-texi2foo for your favorite format foo!  That is the hard way to do the
-job, and makes extra work in subsequent maintenance, since the Texinfo
-language is continually being enhanced and updated.  Instead, the best
-approach is modify `makeinfo' to generate the new format, as it does
-now for Info and HTML.
-
-  TeX works with virtually all printers; Info works with virtually all
-computer terminals; the HTML output works with virtually all web
-browsers.  Thus Texinfo can be used by almost any computer user.
-
-  A Texinfo source file is a plain ASCII file containing text and
-"@-commands" (words preceded by an `@') that tell the typesetting and
-formatting programs what to do.  You may edit a Texinfo file with any
-text editor; but it is especially convenient to use GNU Emacs since
-that editor has a special mode, called Texinfo mode, that provides
-various Texinfo-related features.  (*Note Texinfo Mode::.)
-
-  Before writing a Texinfo source file, you should learn about nodes,
-menus, cross references, and the rest, for example by reading this
-manual.
-
-  You can use Texinfo to create both online help and printed manuals;
+TeX typesetting program.  This creates a DVI file that you can typeset
+and print as a book or report.  (Note that the Texinfo language is
+completely different from TeX's usual language, plain TeX.)  If you do
+not have TeX, but do have `troff' or `nroff', you can use the
+`texi2roff' program instead.
+
+  To make an Info file, you process a Texinfo source file with the
+`makeinfo' utility or Emacs's `texinfo-format-buffer' command; this
+creates an Info file that you can install on-line.
+
+  TeX and `texi2roff' work with many types of printers; similarly, Info
+works with almost every type of computer terminal.  This power makes
+Texinfo a general purpose system, but brings with it a constraint,
+which is that a Texinfo file may contain only the customary
+"typewriter" characters (letters, numbers, spaces, and punctuation
+marks) but no special graphics.
+
+  A Texinfo file is a plain ASCII file containing text and "@-commands"
+(words preceded by an `@') that tell the typesetting and formatting
+programs what to do.  You may edit a Texinfo file with any text editor;
+but it is especially convenient to use GNU Emacs since that editor has
+a special mode, called Texinfo mode, that provides various
+Texinfo-related features.  (*Note Texinfo Mode::.)
+
+  Before writing a Texinfo source file, you should become familiar with
+the Info documentation reading program and learn about nodes, menus,
+cross references, and the rest.  (*note info: (info)Top, for more
+information.)
+
+  You can use Texinfo to create both on-line help and printed manuals;
 moreover, Texinfo is freely redistributable.  For these reasons, Texinfo
-is the official documentation format of the GNU project.  More
-information is available at the GNU documentation web page
-(http://www.gnu.org/doc/).
-
-  From time to time, proposals are made to generate traditional Unix man
-pages from Texinfo source.  This is not likely to ever be supported,
-because man pages have a very strict conventional format.  Merely
-enhancing `makeinfo' to output troff format would be insufficient.
-Generating a good man page therefore requires a completely different
-source than the typical Texinfo applications of generating a good user
-manual or a good reference manual.  This makes generating man pages
-incompatible with the Texinfo design goal of not having to document the
-same information in different ways for different output formats.  You
-might as well just write the man page directly.
-
-  If you wish to support man pages, the program `help2man' may be
-useful; it generates a traditional man page from the `--help' output of
-a program.  In fact, this is currently used to generate man pages for
-the Texinfo programs themselves.  It is free software written by
-Brendan O'Dea, available from
-`http://www.ozemail.com.au/~bod/help2man.tar.gz'.
+is the format in which documentation for GNU utilities and libraries is
+written.
 
 \1f
 File: texinfo.info,  Node: Info Files,  Next: Printed Books,  Prev: Using Texinfo,  Up: Overview
@@ -802,15 +720,6 @@ with the advanced Info command `g *'.  (*note Advanced Info commands:
 for the whole Info system.  From it, you can reach the `Top' nodes of
 each of the documents in a complete Info system.
 
-  If you wish to refer to an Info file in a URI, you can use the
-(unofficial) syntax exemplified in the following.  This works with
-Emacs/W3, for example:
-     info:///usr/info/emacs#Dissociated%20Press
-     info:emacs#Dissociated%20Press
-     info://localhost/usr/info/emacs#Dissociated%20Press
-
-  The `info' program itself does not follow URI's of any kind.
-
 \1f
 File: texinfo.info,  Node: Info Files-Footnotes,  Up: Info Files
 
@@ -834,19 +743,17 @@ as well as chapters, numbered or unnumbered sections and subsections,
 page headers, cross references, footnotes, and indices.
 
   You can use Texinfo to write a book without ever having the intention
-of converting it into online information.  You can use Texinfo for
+of converting it into on-line information.  You can use Texinfo for
 writing a printed novel, and even to write a printed memo, although
 this latter application is not recommended since electronic mail is so
 much easier.
 
   TeX is a general purpose typesetting program.  Texinfo provides a
-file `texinfo.tex' that contains information (definitions or "macros")
-that TeX uses when it typesets a Texinfo file.  (`texinfo.tex' tells
-TeX how to convert the Texinfo @-commands to TeX commands, which TeX
-can then process to create the typeset document.)  `texinfo.tex'
-contains the specifications for printing a document.  You can get the
-latest version of `texinfo.tex' from
-`ftp://ftp.gnu.org/gnu/texinfo.tex'.
+file called `texinfo.tex' that contains information (definitions or
+"macros") that TeX uses when it typesets a Texinfo file.
+(`texinfo.tex' tells TeX how to convert the Texinfo @-commands to TeX
+commands, which TeX can then process to create the typeset document.)
+`texinfo.tex' contains the specifications for printing a document.
 
   Most often, documents are printed on 8.5 inch by 11 inch pages (216mm
 by 280mm; this is the default size), but you can also print for 7 inch
@@ -865,23 +772,22 @@ light-hearted, young and cheery.
   TeX is freely distributable.  It is written in a superset of Pascal
 called WEB and can be compiled either in Pascal or (by using a
 conversion program that comes with the TeX distribution) in C.  (*Note
-TeX Mode: (emacs)TeX Mode, for information about TeX.)
+TeX Mode: (xemacs)TeX Mode, for information about TeX.)
 
   TeX is very powerful and has a great many features.  Because a
 Texinfo file must be able to present information both on a
 character-only terminal in Info form and in a typeset book, the
 formatting commands that Texinfo supports are necessarily limited.
 
-  To get a copy of TeX, see *Note How to Obtain TeX: Obtaining TeX.
+  *Note How to Obtain TeX: Obtaining TeX.
 
 \1f
 File: texinfo.info,  Node: Printed Books-Footnotes,  Up: Printed Books
 
-  (1) You can also use the `texi2roff' (ftp://tug.org/texi2roff.tar.gz)
-program if you do not have TeX; since Texinfo is designed for use with
-TeX, `texi2roff' is not described here.  `texi2roff' is not part of the
-standard GNU distribution and is not maintained or up-to-date with all
-the Texinfo features described in this manual.
+  (1) You can also use the `texi2roff' program if you do not have TeX;
+since Texinfo is designed for use with TeX, `texi2roff' is not
+described here.  `texi2roff' is not part of the standard GNU
+distribution.
 
 \1f
 File: texinfo.info,  Node: Formatting Commands,  Next: Conventions,  Prev: Printed Books,  Up: Overview
@@ -926,14 +832,11 @@ of their own or as part of sentences:
      this example, between the braces.  (`@code' marks text as being
      code.)
 
-   * Write a command such as `@example' on a line of its own; write the
-     body-text on following lines; and write the matching `@end'
-     command, `@end example' in this case, at the on a line of its own
-     after the body-text. (`@example' ... `@end example' indents and
-     typesets body-text as an example.)  It's usually ok to indent
-     environment commands like this, but in complicated and
-     hard-to-define circumstances the extra spaces cause extra space to
-     appear in the output, so beware.
+   * Write a command such as `@example' at the beginning of a line of
+     its own; write the body-text on following lines; and write the
+     matching `@end' command, `@end example' in this case, at the
+     beginning of a line of its own after the body-text. (`@example'
+     ... `@end example' indents and typesets body-text as an example.)
 
 As a general rule, a command requires braces if it mingles among other
 text; but it does not need braces if it starts a line of its own.  The
@@ -950,14 +853,14 @@ exactly the same syntax.  (For details about @-command syntax, see
 File: texinfo.info,  Node: Formatting Commands-Footnotes,  Up: Formatting Commands
 
   (1) The word "argument" comes from the way it is used in mathematics
-and does not refer to a dispute between two people; it refers to the
+and does not refer to a disputation between two people; it refers to the
 information presented to the command.  According to the `Oxford English
 Dictionary', the word derives from the Latin for "to make clear,
 prove"; thus it came to mean `the evidence offered as proof', which is
 to say, `the information offered', which led to its mathematical
 meaning.  In its other thread of derivation, the word came to mean `to
 assert in a manner against which others may make counter assertions',
-which led to the meaning of `argument' as a dispute.
+which led to the meaning of `argument' as a disputation.
 
 \1f
 File: texinfo.info,  Node: Conventions,  Next: Comments,  Prev: Formatting Commands,  Up: Overview
@@ -965,43 +868,37 @@ File: texinfo.info,  Node: Conventions,  Next: Comments,  Prev: Formatting Comma
 General Syntactic Conventions
 =============================
 
-  This section describes the general conventions used in all Texinfo
-documents.
-
-   * All printable ASCII characters except `@', `{' and `}' can appear
-     in a Texinfo file and stand for themselves.  `@' is the escape
-     character which introduces commands.  `{' and `}' should be used
-     only to surround arguments to certain commands.  To put one of
-     these special characters into the document, put an `@' character
-     in front of it, like this: `@@', `@{', and `@}'.
-
-   * It is customary in TeX to use doubled single-quote characters to
-     begin and end quotations: ` ` and ' ' (but without a space between
-     the two single-quote characters).  This convention should be
-     followed in Texinfo files.  TeX converts doubled single-quote
-     characters to left- and right-hand doubled quotation marks and
-     Info converts doubled single-quote characters to ASCII
-     double-quotes: ` ` and ' ' to " .
-
-   * Use three hyphens in a row, `---', for a dash--like this.  In TeX,
-     a single or double hyphen produces a printed dash that is shorter
-     than the usual typeset dash. Info reduces three hyphens to two for
-     display on the screen.
-
-   * To prevent a paragraph from being indented in the printed manual,
-     put the command `@noindent' on a line by itself before the
-     paragraph.
-
-   * If you mark off a region of the Texinfo file with the `@iftex' and
-     `@end iftex' commands, that region will appear only in the printed
-     copy; in that region, you can use certain commands borrowed from
-     plain TeX that you cannot use in Info.  Likewise, if you mark off
-     a region with the `@ifinfo' and `@end ifinfo' commands, that
-     region will appear only in the Info file; in that region, you can
-     use Info commands that you cannot use in TeX.  Similarly for
-     `@ifhtml ... @end ifhtml', `@ifnothtml ... @end ifnothtml',
-     `@ifnotinfo ... @end ifnotinfo', `@ifnottex ... @end ifnottex'.
-     *Note Conditionals::.
+  All printable ASCII characters except `@', `{' and `}' can appear in
+a Texinfo file and stand for themselves.  `@' is the escape character
+which introduces commands.  `{' and `}' should be used only to surround
+arguments to certain commands.  To put one of these special characters
+into the document, put an `@' character in front of it, like this:
+`@@', `@{', and `@}'.
+
+  It is customary in TeX to use doubled single-quote characters to
+begin and end quotations: ` ` and ' ' (but without a space between the
+two single-quote characters).  This convention should be followed in
+Texinfo files.  TeX converts doubled single-quote characters to left-
+and right-hand doubled quotation marks and Info converts doubled
+single-quote characters to ASCII double-quotes: ` ` and ' ' to " .
+
+  Use three hyphens in a row, `---', for a dash--like this.  In TeX, a
+single or double hyphen produces a printed dash that is shorter than
+the usual typeset dash. Info reduces three hyphens to two for display
+on the screen.
+
+  To prevent a paragraph from being indented in the printed manual, put
+the command `@noindent' on a line by itself before the paragraph.
+
+  If you mark off a region of the Texinfo file with the `@iftex' and
+`@end iftex' commands, that region will appear only in the printed
+copy; in that region, you can use certain commands borrowed from plain
+TeX that you cannot use in Info.  Likewise, if you mark off a region
+with the `@ifinfo' and `@end ifinfo' commands, that region will appear
+only in the Info file; in that region, you can use Info commands that
+you cannot use in TeX.  Similarly for `@ifhtml ... @end ifhtml',
+`@ifnothtml ... @end ifnothtml', `@ifnotinfo ... @end ifnotinfo',
+`@ifnottex ... @end ifnottex', *Note Conditionals::.
 
      *Caution:* Do not use tabs in a Texinfo file!  TeX uses
      variable-width fonts, which means that it cannot predefine a tab
@@ -1016,6 +913,8 @@ documents.
      Also, you can run `untabify' in Emacs to convert tabs in a region
      to multiple spaces.
 
+     Don't use tabs.
+
 \1f
 File: texinfo.info,  Node: Comments,  Next: Minimum,  Prev: Conventions,  Up: Overview
 
@@ -1025,14 +924,14 @@ Comments
   You can write comments in a Texinfo file that will not appear in
 either the Info file or the printed manual by using the `@comment'
 command (which may be abbreviated to `@c').  Such comments are for the
-person who revises the Texinfo file.  All the text on a line that
-follows either `@comment' or `@c' is a comment; the rest of the line
-does not appear in either the Info file or the printed manual. (Often,
-you can write the `@comment' or `@c' in the middle of a line, and only
-the text that follows after the `@comment' or `@c' command does not
-appear; but some commands, such as `@settitle' and `@setfilename', work
-on a whole line.  You cannot use `@comment' or `@c' in a line beginning
-with such a command.)
+person who reads the Texinfo file.  All the text on a line that follows
+either `@comment' or `@c' is a comment; the rest of the line does not
+appear in either the Info file or the printed manual. (Often, you can
+write the `@comment' or `@c' in the middle of a line, and only the text
+that follows after the `@comment' or `@c' command does not appear; but
+some commands, such as `@settitle' and `@setfilename', work on a whole
+line.  You cannot use `@comment' or `@c' in a line beginning with such
+a command.)
 
   You can write long stretches of text that will not appear in either
 the Info file or the printed manual by using the `@ignore' and `@end
@@ -1044,3 +943,100 @@ two commands does not appear in the processed output.  You can use
 applies to the Texinfo source file of a document, but not to the Info
 or printed version of the document.
 
+\1f
+File: texinfo.info,  Node: Minimum,  Next: Six Parts,  Prev: Comments,  Up: Overview
+
+What a Texinfo File Must Have
+=============================
+
+  By convention, the names of Texinfo files end with one of the
+extensions `.texinfo', `.texi', or `.tex'.  The longer extension is
+preferred since it describes more clearly to a human reader the nature
+of the file.  The shorter extensions are for operating systems that
+cannot handle long file names.
+
+  In order to be made into a printed manual and an Info file, a Texinfo
+file *must* begin with lines like this:
+
+     \input texinfo
+     @setfilename INFO-FILE-NAME
+     @settitle NAME-OF-MANUAL
+
+The contents of the file follow this beginning, and then you *must* end
+a Texinfo file with a line like this:
+
+     @bye
+
+The `\input texinfo' line tells TeX to use the `texinfo.tex' file,
+which tells TeX how to translate the Texinfo @-commands into TeX
+typesetting commands.  (Note the use of the backslash, `\'; this is
+correct for TeX.)  The `@setfilename' line provides a name for the Info
+file and tells TeX to open auxiliary files.  The `@settitle' line
+specifies a title for the page headers (or footers) of the printed
+manual.
+
+  The `@bye' line at the end of the file on a line of its own tells the
+formatters that the file is ended and to stop formatting.
+
+  Usually, you will not use quite such a spare format, but will include
+mode setting and start-of-header and end-of-header lines at the
+beginning of a Texinfo file, like this:
+
+     \input texinfo   @c -*-texinfo-*-
+     @c %**start of header
+     @setfilename INFO-FILE-NAME
+     @settitle NAME-OF-MANUAL
+     @c %**end of header
+
+In the first line, `-*-texinfo-*-' causes Emacs to switch into Texinfo
+mode when you edit the file.
+
+  The `@c' lines which surround the `@setfilename' and `@settitle'
+lines are optional, but you need them in order to run TeX or Info on
+just part of the file.  (*Note Start of Header::, for more information.)
+
+  Furthermore, you will usually provide a Texinfo file with a title
+page, indices, and the like.  But the minimum, which can be useful for
+short documents, is just the three lines at the beginning and the one
+line at the end.
+
+\1f
+File: texinfo.info,  Node: Six Parts,  Next: Short Sample,  Prev: Minimum,  Up: Overview
+
+Six Parts of a Texinfo File
+===========================
+
+  Generally, a Texinfo file contains more than the minimal beginning
+and end--it usually contains six parts:
+
+1. Header
+     The "Header" names the file, tells TeX which definitions' file to
+     use, and performs other "housekeeping" tasks.
+
+2. Summary Description and Copyright
+     The "Summary Description and Copyright" segment describes the
+     document and contains the copyright notice and copying permissions
+     for the Info file.  The segment must be enclosed between `@ifinfo'
+     and `@end ifinfo' commands so that the formatters place it only in
+     the Info file.
+
+3. Title and Copyright
+     The "Title and Copyright" segment contains the title and copyright
+     pages and copying permissions for the printed manual.  The segment
+     must be enclosed between `@titlepage' and `@end titlepage'
+     commands.  The title and copyright page appear only in the printed
+     manual.
+
+4. `Top' Node and Master Menu
+     The "Master Menu" contains a complete menu of all the nodes in the
+     whole Info file.  It appears only in the Info file, in the `Top'
+     node.
+
+5. Body
+     The "Body" of the document may be structured like a traditional
+     book or encyclopedia or it may be free form.
+
+6. End
+     The "End" contains commands for printing indices and generating
+     the table of contents, and the `@bye' command on a line of its own.
+
index b309e1a..fc54512 100644 (file)
@@ -4,19 +4,19 @@ texinfo.texi.
 INFO-DIR-SECTION Texinfo documentation system
 START-INFO-DIR-ENTRY
 * Texinfo: (texinfo).           The GNU documentation format.
-* install-info: (texinfo)Invoking install-info. Update info/dir entries.
-* texi2dvi: (texinfo)Format with texi2dvi.      Print Texinfo documents.
-* texindex: (texinfo)Format with tex/texindex.  Sort Texinfo index files.
+* install-info: (texinfo)Invoking install-info. Updating info/dir entries.
+* texi2dvi: (texinfo)Format with texi2dvi.      Printing Texinfo documentation.
+* texindex: (texinfo)Format with tex/texindex.  Sorting Texinfo index files.
 * makeinfo: (texinfo)makeinfo Preferred.        Translate Texinfo source.
 END-INFO-DIR-ENTRY
 
   This file documents Texinfo, a documentation system that can produce
-both online information and a printed manual from a single source file.
+both on-line information and a printed manual from a single source file.
 
-  Copyright (C) 1988, 90, 91, 92, 93, 95, 96, 97, 98, 99 Free Software
+  Copyright (C) 1988, 90, 91, 92, 93, 95, 96, 97, 98 Free Software
 Foundation, Inc.
 
-  This edition is for Texinfo version 4.0, 28 September 1999.
+  This edition is for Texinfo version 3.12.
 
   Permission is granted to make and distribute verbatim copies of this
 manual provided the copyright notice and this permission notice are
@@ -33,104 +33,7 @@ versions, except that this permission notice may be stated in a
 translation approved by the Free Software Foundation.
 
 \1f
-File: texinfo.info,  Node: Minimum,  Next: Six Parts,  Prev: Comments,  Up: Overview
-
-What a Texinfo File Must Have
-=============================
-
-  By convention, the names of Texinfo files end with one of the
-extensions `.texinfo', `.texi', `.txi', or `.tex'.  The longer
-extension is preferred since it describes more clearly to a human
-reader the nature of the file.  The shorter extensions are for
-operating systems that cannot handle long file names.
-
-  In order to be made into a printed manual and an Info file, a Texinfo
-file *must* begin with lines like this:
-
-     \input texinfo
-     @setfilename INFO-FILE-NAME
-     @settitle NAME-OF-MANUAL
-
-The contents of the file follow this beginning, and then you *must* end
-a Texinfo file with a line like this:
-
-     @bye
-
-The `\input texinfo' line tells TeX to use the `texinfo.tex' file,
-which tells TeX how to translate the Texinfo @-commands into TeX
-typesetting commands.  (Note the use of the backslash, `\'; this is
-correct for TeX.)  The `@setfilename' line provides a name for the Info
-file and tells TeX to open auxiliary files.  The `@settitle' line
-specifies a title for the page headers (or footers) of the printed
-manual.
-
-  The `@bye' line at the end of the file on a line of its own tells the
-formatters that the file is ended and to stop formatting.
-
-  Usually, you will not use quite such a spare format, but will include
-mode setting and start-of-header and end-of-header lines at the
-beginning of a Texinfo file, like this:
-
-     \input texinfo   @c -*-texinfo-*-
-     @c %**start of header
-     @setfilename INFO-FILE-NAME
-     @settitle NAME-OF-MANUAL
-     @c %**end of header
-
-In the first line, `-*-texinfo-*-' causes Emacs to switch into Texinfo
-mode when you edit the file.
-
-  The `@c' lines which surround the `@setfilename' and `@settitle'
-lines are optional, but you need them in order to run TeX or Info on
-just part of the file.  (*Note Start of Header::, for more information.)
-
-  Furthermore, you will usually provide a Texinfo file with a title
-page, indices, and the like.  But the minimum, which can be useful for
-short documents, is just the three lines at the beginning and the one
-line at the end.
-
-\1f
-File: texinfo.info,  Node: Six Parts,  Next: Short Sample,  Prev: Minimum,  Up: Overview
-
-Six Parts of a Texinfo File
-===========================
-
-  Generally, a Texinfo file contains more than the minimal beginning
-and end--it usually contains six parts:
-
-1. Header
-     The "Header" names the file, tells TeX which definitions' file to
-     use, and performs other "housekeeping" tasks.
-
-2. Summary Description and Copyright
-     The "Summary Description and Copyright" segment describes the
-     document and contains the copyright notice and copying permissions
-     for the Info file.  The segment must be enclosed between `@ifinfo'
-     and `@end ifinfo' commands so that the formatters place it only in
-     the Info file.
-
-3. Title and Copyright
-     The "Title and Copyright" segment contains the title and copyright
-     pages and copying permissions for the printed manual.  The segment
-     must be enclosed between `@titlepage' and `@end titlepage'
-     commands.  The title and copyright page appear only in the printed
-     manual.
-
-4. `Top' Node and Master Menu
-     The "Master Menu" contains a complete menu of all the nodes in the
-     whole Info file.  It appears only in the Info file, in the `Top'
-     node.
-
-5. Body
-     The "Body" of the document may be structured like a traditional
-     book or encyclopedia or it may be free form.
-
-6. End
-     The "End" contains commands for printing indices and generating
-     the table of contents, and the `@bye' command on a line of its own.
-
-\1f
-File: texinfo.info,  Node: Short Sample,  Next: Acknowledgements and History,  Prev: Six Parts,  Up: Overview
+File: texinfo.info,  Node: Short Sample,  Next: Acknowledgements,  Prev: Six Parts,  Up: Overview
 
 A Short Sample Texinfo File
 ===========================
@@ -141,7 +44,7 @@ titlepage', look more intimidating than they are.  Most of the material
 is standard boilerplate; when you write a manual, simply insert the
 names for your own manual in this segment. (*Note Beginning a File::.)
 
-  In the following, the sample text is _indented_; comments on it are
+In the following, the sample text is _indented_; comments on it are
 not.  The complete file, without any comments, is shown in *Note Sample
 Texinfo File::.
 
@@ -156,8 +59,9 @@ file and the title used in the header.
      @c %**start of header
      @setfilename sample.info
      @settitle Sample Document
-     @setchapternewpage odd
      @c %**end of header
+     
+     @setchapternewpage odd
 
 Part 2: Summary Description and Copyright
 -----------------------------------------
@@ -236,11 +140,13 @@ chapter containing an enumerated list.
 Part 6: The End of the Document
 -------------------------------
 
-The end segment contains commands for generating an index in a node and
-unnumbered chapter of its own, (usually) for generating the table of
-contents, and the `@bye' command that marks the end of the document.
+The end segment contains commands both for generating an index in a node
+and unnumbered chapter of its own and for generating the table of
+contents; and it contains the `@bye' command that marks the end of the
+document.
 
      @node    Concept Index,    ,  First Chapter, Top
+     @comment node-name,    next,  previous,      up
      @unnumbered Concept Index
      
      @printindex cp
@@ -268,44 +174,29 @@ like:
      for a printed manual.
 
 \1f
-File: texinfo.info,  Node: Acknowledgements and History,  Prev: Short Sample,  Up: Overview
+File: texinfo.info,  Node: Acknowledgements,  Prev: Short Sample,  Up: Overview
 
-Acknowledgements and History
-============================
+Acknowledgements
+================
 
-  Richard M. Stallman invented the Texinfo format, wrote the initial
-processors, and created Edition 1.0 of this manual.  Robert J. Chassell
-greatly revised and extended the manual, starting with Edition 1.1.
-Brian Fox was responsible for the standalone Texinfo distribution until
-version 3.8, and wrote the standalone `makeinfo' and `info'.  Karl
-Berry has made the updates since Texinfo 3.8 and subsequent releases,
-starting with Edition 2.22 of the manual.
+  Richard M. Stallman wrote Edition 1.0 of this manual.
+Robert J. Chassell revised and extended it, starting with Edition 1.1.
+Karl Berry made updates for the Texinfo 3.8 and subsequent releases,
+starting with Edition 2.22.
 
   Our thanks go out to all who helped improve this work, particularly to
 Franc,ois Pinard and David D. Zuhn, who tirelessly recorded and
 reported mistakes and obscurities; our special thanks go to Melissa
 Weisshaus for her frequent and often tedious reviews of nearly similar
-editions.  The indefatigable Eli Zaretskii and Andreas Schwab have
-provided patches beyond counting.  Zack Weinberg did the impossible by
-implementing the macro syntax in `texinfo.tex'.  Dozens of others have
-contributed patches and suggestions, they are gratefully acknowledged
-in the `ChangeLog' file.  Our mistakes are our own.
-
-  A bit of history: in the 1970's at CMU, Brian Reid developed a program
-and format named Scribe to mark up documents for printing.  It used the
-`@' character to introduce commands as Texinfo does and strived to
-describe document contents rather than formatting.
-
-  Meanwhile, people at MIT developed another, not too dissimilar format
-called Bolio.  This then was converted to using TeX as its typesetting
-language: BoTeX.
-
-  BoTeX could only be used as a markup language for documents to be
-printed, not for online documents.  Richard Stallman (RMS) worked on
-both Bolio and BoTeX.  He also developed a nifty on-line help format
-called Info, and then combined BoTeX and Info to create Texinfo, a mark
-up language for text that is intended to be read both on line and as
-printed hard copy.
+editions.  Our mistakes are our own.
+
+  Please send suggestions and corrections to:
+
+     Internet address:
+         bug-texinfo@gnu.org
+
+Please include the manual's edition number and update date in your
+messages.
 
 \1f
 File: texinfo.info,  Node: Texinfo Mode,  Next: Beginning a File,  Prev: Overview,  Up: Top
@@ -342,8 +233,7 @@ File: texinfo.info,  Node: Texinfo Mode Overview,  Next: Emacs Editing,  Prev: T
 Texinfo Mode Overview
 =====================
 
-  Texinfo mode provides special features for working with Texinfo files.
-You can:
+  Texinfo mode provides special features for working with Texinfo files:
 
    * Insert frequently used @-commands.
 
@@ -388,18 +278,17 @@ such as appendices.  With this value for the page delimiter, you can
 jump from chapter title to chapter title with the `C-x ]'
 (`forward-page') and `C-x [' (`backward-page') commands and narrow to a
 chapter with the `C-x p' (`narrow-to-page') command.  (*Note Pages:
-(emacs)Pages, for details about the page commands.)
+(xemacs)Pages, for details about the page commands.)
 
   You may name a Texinfo file however you wish, but the convention is to
-end a Texinfo file name with one of the extensions `.texinfo', `.texi',
-`.txi', or `.tex'.  A longer extension is preferred, since it is
+end a Texinfo file name with one of the three extensions `.texinfo',
+`.texi', or `.tex'.  A longer extension is preferred, since it is
 explicit, but a shorter extension may be necessary for operating
 systems that limit the length of file names.  GNU Emacs automatically
-enters Texinfo mode when you visit a file with a `.texinfo', `.texi' or
-`.txi' extension.  Also, Emacs switches to Texinfo mode when you visit a
-file that has `-*-texinfo-*-' in its first line.  If ever you are in
-another mode and wish to switch to Texinfo mode, type `M-x
-texinfo-mode'.
+enters Texinfo mode when you visit a file with a `.texinfo' or  `.texi'
+extension.  Also, Emacs switches to Texinfo mode when you visit a file
+that has `-*-texinfo-*-' in its first line.  If ever you are in another
+mode and wish to switch to Texinfo mode, type `M-x texinfo-mode'.
 
   Like all other Emacs features, you can customize or enhance Texinfo
 mode as you wish.  In particular, the keybindings are very easy to
@@ -548,16 +437,19 @@ corresponding spot in the Texinfo file.
   If you call `texinfo-show-structure' with a prefix argument by typing
 `C-u C-c C-s', it will list not only those lines with the @-commands
 for `@chapter', `@section', and the like, but also the `@node' lines.
-You can use `texinfo-show-structure' with a prefix argument to check
-whether the `Next', `Previous', and `Up' pointers of an `@node' line
-are correct.
+(This is how the `texinfo-show-structure' command worked without an
+argument in the first version of Texinfo.  It was changed because
+`@node' lines clutter up the `*Occur*' buffer and are usually not
+needed.)  You can use `texinfo-show-structure' with a prefix argument
+to check whether the `Next', `Previous', and `Up' pointers of an
+`@node' line are correct.
 
   Often, when you are working on a manual, you will be interested only
 in the structure of the current chapter.  In this case, you can mark
 off the region of the buffer that you are interested in by using the
 `C-x n n' (`narrow-to-region') command and `texinfo-show-structure'
 will work on only that region.  To see the whole buffer again, use
-`C-x n w' (`widen').  (*Note Narrowing: (emacs)Narrowing, for more
+`C-x n w' (`widen').  (*Note Narrowing: (xemacs)Narrowing, for more
 information about the narrowing commands.)
 
   In addition to providing the `texinfo-show-structure' command,
@@ -565,7 +457,7 @@ Texinfo mode sets the value of the page delimiter variable to match the
 chapter-level @-commands.  This enables you to use the `C-x ]'
 (`forward-page') and `C-x [' (`backward-page') commands to move forward
 and backward by chapter, and to use the `C-x p' (`narrow-to-page')
-command to narrow to a chapter.  *Note Pages: (emacs)Pages, for more
+command to narrow to a chapter.  *Note Pages: (xemacs)Pages, for more
 information about the page commands.
 
 \1f
@@ -599,14 +491,14 @@ File: texinfo.info,  Node: Updating Commands,  Next: Updating Requirements,  Pre
 The Updating Commands
 ---------------------
 
-  You can use the updating commands to:
+  You can use the updating commands
 
-   * insert or update the `Next', `Previous', and `Up' pointers of a
+   * to insert or update the `Next', `Previous', and `Up' pointers of a
      node,
 
-   * insert or update the menu for a section, and
+   * to insert or update the menu for a section, and
 
-   * create a master menu for a Texinfo source file.
+   * to create a master menu for a Texinfo source file.
 
   You can also use the commands to update all the nodes and menus in a
 region or in a whole Texinfo file.
@@ -625,11 +517,11 @@ structuring command line; and you may interpose only an `@comment' line
 or an `@ifinfo' line.
 
   Commands which work on a whole buffer require that the `Top' node be
-followed by a node with an `@chapter' or equivalent-level command.  The
-menu updating commands will not create a main or master menu for a
-Texinfo file that has only `@chapter'-level nodes!  The menu updating
-commands only create menus _within_ nodes for lower level nodes.  To
-create a menu of chapters, you must provide a `Top' node.
+followed by a node with an `@chapter' or equivalent-level command.
+Note that the menu updating commands will not create a main or master
+menu for a Texinfo file that has only `@chapter'-level nodes!  The menu
+updating commands only create menus _within_ nodes for lower level
+nodes.  To create a menu of chapters, you must provide a `Top' node.
 
   The menu updating commands remove menu entries that refer to other
 Info files since they do not refer to nodes within the current buffer.
@@ -669,7 +561,7 @@ menu in the whole Texinfo file.
      This updates all the nodes and menus completely and all at once.
 
   The other major updating commands do smaller jobs and are designed for
-the person who updates nodes and menus as he or she writes a Texinfo
+the person  who updates nodes and menus as he or she writes a Texinfo
 file.
 
   The commands are:
@@ -727,8 +619,8 @@ file.
 which menu descriptions are indented.  By default, the value is 32
 although it is often useful to reduce it to as low as 24.  You can set
 the variable with the `M-x edit-options' command (*note Editing
-Variable Values: (emacs)Edit Options.) or with the `M-x set-variable'
-command (*note Examining and Setting Variables: (emacs)Examining.).
+Variable Values: (xemacs)Edit Options.) or with the `M-x set-variable'
+command (*note Examining and Setting Variables: (xemacs)Examining.).
 
   Also, the `texinfo-indent-menu-description' command may be used to
 indent existing menu descriptions to a specified column.  Finally, if
@@ -770,7 +662,7 @@ In this example, `Comments' is the name of both the node and the
 section.  The next node is called `Minimum' and the previous node is
 called `Conventions'.  The `Comments' section is within the `Overview'
 node, which is specified by the `Up' pointer.  (Instead of an
-`@comment' line, you may also write an `@ifinfo' line.)
+`@comment' line, you can write an `@ifinfo' line.)
 
   If a file has a `Top' node, it must be called `top' or `Top' and be
 the first node in the file.
@@ -782,10 +674,10 @@ must have a `Top' node if you want a menu of chapters.
   Incidentally, the `makeinfo' command will create an Info file for a
 hierarchically organized Texinfo file that lacks `Next', `Previous' and
 `Up' pointers.  Thus, if you can be sure that your Texinfo file will be
-formatted with `makeinfo', you have no need for the update node
-commands.  (*Note Creating an Info File::, for more information about
-`makeinfo'.)  However, both `makeinfo' and the `texinfo-format-...'
-commands require that you insert menus in the file.
+formatted with `makeinfo', you have no need for the `update node'
+commands.  (*Note Creating an Info File: Create an Info File, for more
+information about `makeinfo'.)  However, both `makeinfo' and the
+`texinfo-format-...' commands require that you insert menus in the file.
 
 \1f
 File: texinfo.info,  Node: Other Updating Commands,  Prev: Updating Requirements,  Up: Updating Nodes and Menus
@@ -814,11 +706,11 @@ possesses several less frequently used updating commands:
 
           C-x h C-u M-x texinfo-insert-node-lines
 
-     This command inserts titles as node names in `@node' lines; the
-     `texinfo-start-menu-description' command (*note Inserting
-     Frequently Used Commands: Inserting.) inserts titles as
-     descriptions in menu entries, a different action.  However, in
-     both cases, you need to edit the inserted text.
+     (Note that this command inserts titles as node names in `@node'
+     lines; the `texinfo-start-menu-description' command (*note
+     Inserting Frequently Used Commands: Inserting.) inserts titles as
+     descriptions in menu entries, a different action.  However, in both
+     cases, you need to edit the inserted text.)
 
 `M-x texinfo-multiple-files-update'
      Update nodes and menus in a document built from several separate
@@ -897,7 +789,7 @@ or
   For TeX or the Info formatting commands to work, the file _must_
 include a line that has `@setfilename' in its header.
 
-  *Note Creating an Info File::, for details about Info formatting.
+  *Note Create an Info File::, for details about Info formatting.
 
 \1f
 File: texinfo.info,  Node: Printing,  Next: Texinfo Mode Summary,  Prev: Info Formatting,  Up: Texinfo Mode
@@ -950,8 +842,8 @@ _must_ start with a `\input texinfo' line and must include an
 (When you use `texinfo-tex-region', you must surround the `@settitle'
 line with start-of-header and end-of-header lines.)
 
-  *Note Hardcopy::, for a description of the other TeX related
-commands, such as `tex-show-print-queue'.
+  *Note Format/Print Hardcopy::, for a description of the other TeX
+related commands, such as `tex-show-print-queue'.
 
 \1f
 File: texinfo.info,  Node: Texinfo Mode Summary,  Prev: Printing,  Up: Texinfo Mode
@@ -1078,8 +970,8 @@ C-t' and then another control command: `C-r' for `texinfo-tex-region',
 Other Updating Commands
 -----------------------
 
-  The remaining updating commands do not have standard keybindings
-because they are rarely used.
+  The `other updating commands' do not have standard keybindings because
+they are rarely used.
 
      M-x texinfo-insert-node-lines
                      Insert missing `@node' lines in region.
@@ -1252,12 +1144,11 @@ or else like this:
 * setfilename::                 Tell Info the name of the Info file.
 * settitle::                    Create a title for the printed work.
 * setchapternewpage::           Start chapters on right-hand pages.
-* paragraphindent::             Specify paragraph indentation.
-* exampleindent::               Specify environment indentation.
+* paragraphindent::             An option to specify paragraph indentation.
 * End of Header::               Formatting a region requires this.
 
 \1f
-File: texinfo.info,  Node: First Line,  Next: Start of Header,  Up: Header
+File: texinfo.info,  Node: First Line,  Next: Start of Header,  Prev: Header,  Up: Header
 
 The First Line of a Texinfo File
 --------------------------------
@@ -1303,3 +1194,91 @@ typeset part for printing.
   The odd string of characters, `%**', is to ensure that no other
 comment is accidentally taken for a start-of-header line.
 
+\1f
+File: texinfo.info,  Node: setfilename,  Next: settitle,  Prev: Start of Header,  Up: Header
+
+`@setfilename'
+--------------
+
+  In order to serve as the primary input file for either `makeinfo' or
+TeX, a Texinfo file must contain a line that looks like this:
+
+     @setfilename INFO-FILE-NAME
+
+  Write the `@setfilename' command at the beginning of a line and
+follow it on the same line by the Info file name.  Do not write anything
+else on the line; anything on the line after the command is considered
+part of the file name, including what would otherwise be a comment.
+
+  The `@setfilename' line specifies the name of the Info file to be
+generated.  This name should be different from the name of the Texinfo
+file.  There are two conventions for choosing the name: you can either
+remove the `.texi' extension from the input file name, or replace it
+with the `.info' extension.
+
+  Some operating systems cannot handle long file names.  You can run
+into a problem even when the file name you specify is itself short
+enough.  This occurs because the Info formatters split a long Info file
+into short indirect subfiles, and name them by appending `-1', `-2',
+..., `-10', `-11', and so on, to the original file name.  (*Note Tag
+Files and Split Files: Tag and Split Files.)  The subfile name
+`texinfo.info-10', for example, is too long for some systems; so the
+Info file name for this document is `texinfo' rather than
+`texinfo.info'.
+
+  The Info formatting commands ignore everything written before the
+`@setfilename' line, which is why the very first line of the file (the
+`\input' line) does not show up in the output.
+
+  The `@setfilename' line produces no output when you typeset a manual
+with TeX, but it nevertheless is essential: it opens the index,
+cross-reference, and other auxiliary files used by Texinfo, and also
+reads `texinfo.cnf' if that file is present on your system (*note
+Preparing to Use TeX: Preparing for TeX.).
+
+\1f
+File: texinfo.info,  Node: settitle,  Next: setchapternewpage,  Prev: setfilename,  Up: Header
+
+`@settitle'
+-----------
+
+  In order to be made into a printed manual, a Texinfo file must contain
+a line that looks like this:
+
+     @settitle TITLE
+
+  Write the `@settitle' command at the beginning of a line and follow
+it on the same line by the title.  This tells TeX the title to use in a
+header or footer.  Do not write anything else on the line; anything on
+the line after the command is considered part of the title, including a
+comment.
+
+  Conventionally, when TeX formats a Texinfo file for double-sided
+output, the title is printed in the left-hand (even-numbered) page
+headings and the current chapter title is printed in the right-hand
+(odd-numbered) page headings.  (TeX learns the title of each chapter
+from each `@chapter' command.)  Page footers are not printed.
+
+  Even if you are printing in a single-sided style, TeX looks for an
+`@settitle' command line, in case you include the manual title in the
+heading.
+
+  The `@settitle' command should precede everything that generates
+actual output in TeX.
+
+  Although the title in the `@settitle' command is usually the same as
+the title on the title page, it does not affect the title as it appears
+on the title page.  Thus, the two do not need not match exactly;  and
+the title in the `@settitle' command can be a shortened or expanded
+version of the title as it appears on the title page. (*Note
+`@titlepage': titlepage.)
+
+  TeX prints page headings only for that text that comes after the
+`@end titlepage' command in the Texinfo file, or that comes after an
+`@headings' command that turns on headings.  (*Note The `@headings'
+Command: headings on off, for more information.)
+
+  You may, if you wish, create your own, customized headings and
+footings.  *Note Page Headings: Headings, for a detailed discussion of
+this process.
+
index 981e994..cd678b0 100644 (file)
@@ -9,241 +9,258 @@ END-INFO-DIR-ENTRY
 \1f
 Indirect:
 xemacs-faq.info-1: 195
-xemacs-faq.info-2: 48836
-xemacs-faq.info-3: 95929
-xemacs-faq.info-4: 145764
-xemacs-faq.info-5: 195594
+xemacs-faq.info-2: 47856
+xemacs-faq.info-3: 94965
+xemacs-faq.info-4: 144800
+xemacs-faq.info-5: 194688
 \1f
 Tag Table:
 (Indirect)
 Node: Top\7f195
-Node: Introduction\7f15648
-Node: Q1.0.1\7f19167
-Node: Q1.0.2\7f19703
-Node: Q1.0.3\7f20139
-Node: Q1.0.4\7f20397
-Node: Q1.0.5\7f21829
-Node: Q1.0.6\7f22518
-Node: Q1.0.7\7f23649
-Node: Q1.0.8\7f24048
-Node: Q1.0.9\7f24244
-Node: Q1.0.10\7f24522
-Node: Q1.0.11\7f25971
-Node: Q1.0.12\7f26428
-Node: Q1.0.13\7f26796
-Node: Q1.0.14\7f27031
-Node: Q1.1.1\7f27575
-Node: Q1.1.2\7f28770
-Node: Q1.1.3\7f29145
-Node: Q1.2.1\7f30096
-Node: Q1.2.2\7f31152
-Node: Q1.2.3\7f31586
-Node: Q1.3.1\7f32537
-Node: Q1.3.2\7f36455
-Node: Q1.3.3\7f37164
-Node: Q1.3.4\7f37405
-Node: Q1.3.5\7f38169
-Node: Q1.3.6\7f40584
-Node: Q1.3.7\7f42079
-Node: Q1.4.1\7f43014
-Node: Q1.4.2\7f43876
-Node: Q1.4.3\7f44217
-Node: Q1.4.4\7f44859
-Node: Q1.4.5\7f46399
-Node: Q1.4.6\7f46703
-Node: Q1.4.7\7f47711
-Node: Installation\7f48836
-Node: Q2.0.1\7f51242
-Node: Q2.0.2\7f52115
-Node: Q2.0.3\7f59318
-Node: Q2.0.4\7f60616
-Node: Q2.0.5\7f61208
-Node: Q2.0.6\7f61576
-Node: Q2.0.7\7f61957
-Node: Q2.0.8\7f62338
-Node: Q2.0.9\7f63916
-Node: Q2.0.10\7f65354
-Node: Q2.0.11\7f66198
-Node: Q2.0.12\7f67139
-Node: Q2.0.13\7f68662
-Node: Q2.0.14\7f69320
-Node: Q2.1.1\7f69888
-Node: Q2.1.2\7f72630
-Node: Q2.1.3\7f73807
-Node: Q2.1.4\7f75100
-Node: Q2.1.5\7f75899
-Node: Q2.1.6\7f76261
-Node: Q2.1.7\7f76738
-Node: Q2.1.8\7f77091
-Node: Q2.1.9\7f78607
-Node: Q2.1.10\7f79029
-Node: Q2.1.11\7f79786
-Node: Q2.1.12\7f80651
-Node: Q2.1.13\7f81606
-Node: Q2.1.14\7f82637
-Node: Q2.1.15\7f83748
-Node: Q2.1.16\7f89706
-Node: Q2.1.17\7f90384
-Node: Q2.1.18\7f90981
-Node: Q2.1.19\7f92778
-Node: Q2.1.20\7f93308
-Node: Q2.1.21\7f93690
-Node: Q2.1.22\7f93980
-Node: Q2.1.23\7f95277
-Node: Customization\7f95929
-Node: Q3.0.1\7f100816
-Node: Q3.0.2\7f101522
-Node: Q3.0.3\7f102086
-Node: Q3.0.4\7f102503
-Node: Q3.0.5\7f103336
-Node: Q3.0.6\7f104117
-Node: Q3.0.7\7f104697
-Node: Q3.0.8\7f105361
-Node: Q3.0.9\7f106207
-Node: Q3.1.1\7f106768
-Node: Q3.1.2\7f107505
-Node: Q3.1.3\7f107936
-Node: Q3.1.4\7f108521
-Node: Q3.1.5\7f109057
-Node: Q3.1.6\7f109441
-Node: Q3.1.7\7f110122
-Node: Q3.1.8\7f112346
-Node: Q3.2.1\7f112888
-Node: Q3.2.2\7f114296
-Node: Q3.2.3\7f115095
-Node: Q3.2.4\7f115697
-Node: Q3.2.5\7f116731
-Node: Q3.2.6\7f117198
-Node: Q3.3.1\7f118160
-Node: Q3.3.2\7f118553
-Node: Q3.3.3\7f119184
-Node: Q3.3.4\7f119565
-Node: Q3.3.5\7f120659
-Node: Q3.4.1\7f122153
-Node: Q3.4.2\7f122796
-Node: Q3.5.1\7f123308
-Node: Q3.5.2\7f124762
-Node: Q3.5.3\7f125180
-Node: Q3.5.4\7f126020
-Node: Q3.5.5\7f126852
-Node: Q3.5.6\7f127992
-Node: Q3.5.7\7f128982
-Node: Q3.5.8\7f130334
-Node: Q3.5.9\7f131081
-Node: Q3.5.10\7f131861
-Node: Q3.5.11\7f132497
-Node: Q3.6.1\7f133050
-Node: Q3.6.2\7f133790
-Node: Q3.6.3\7f134218
-Node: Q3.7.1\7f134718
-Node: Q3.7.2\7f135606
-Node: Q3.7.3\7f136265
-Node: Q3.7.4\7f136687
-Node: Q3.7.5\7f137030
-Node: Q3.7.6\7f137498
-Node: Q3.7.7\7f138213
-Node: Q3.7.8\7f139233
-Node: Q3.8.1\7f139652
-Node: Q3.8.2\7f140112
-Node: Q3.8.3\7f140575
-Node: Q3.8.4\7f141181
-Node: Q3.8.5\7f141900
-Node: Q3.9.1\7f142685
-Node: Q3.9.2\7f143625
-Node: Q3.9.3\7f144223
-Node: Q3.9.4\7f144885
-Node: Q3.10.1\7f145764
-Node: Q3.10.2\7f146582
-Node: Q3.10.3\7f147363
-Node: Q3.10.4\7f148091
-Node: Q3.10.5\7f148474
-Node: Subsystems\7f149484
-Node: Q4.0.1\7f151969
-Node: Q4.0.2\7f152494
-Node: Q4.0.3\7f153052
-Node: Q4.0.4\7f153373
-Node: Q4.0.5\7f153615
-Node: Q4.0.6\7f153846
-Node: Q4.0.7\7f154427
-Node: Q4.0.8\7f154752
-Node: Q4.0.9\7f155979
-Node: Q4.0.10\7f158017
-Node: Q4.0.11\7f158471
-Node: Q4.0.12\7f159321
-Node: Q4.1.1\7f160294
-Node: Q4.1.2\7f160697
-Node: Q4.1.3\7f161024
-Node: Q4.2.1\7f161333
-Node: Q4.2.2\7f161963
-Node: Q4.2.3\7f162203
-Node: Q4.2.4\7f162747
-Node: Q4.3.1\7f163400
-Node: Q4.3.2\7f163984
-Node: Q4.3.3\7f165700
-Node: Q4.3.4\7f165972
-Node: Q4.3.5\7f166649
-Node: Q4.4.1\7f167277
-Node: Q4.4.2\7f168777
-Node: Q4.5.1\7f169981
-Node: Q4.6.1\7f170750
-Node: Q4.7.1\7f176010
-Node: Q4.7.2\7f176965
-Node: Q4.7.3\7f177262
-Node: Q4.7.4\7f177608
-Node: Q4.7.5\7f178492
-Node: Q4.7.6\7f180134
-Node: Miscellaneous\7f180678
-Node: Q5.0.1\7f184102
-Node: Q5.0.2\7f184836
-Node: Q5.0.3\7f185690
-Node: Q5.0.4\7f186392
-Node: Q5.0.5\7f187331
-Node: Q5.0.6\7f189311
-Node: Q5.0.7\7f189968
-Node: Q5.0.8\7f190573
-Node: Q5.0.9\7f191092
-Node: Q5.0.10\7f191606
-Node: Q5.0.11\7f191854
-Node: Q5.0.12\7f192415
-Node: Q5.0.13\7f193332
-Node: Q5.0.14\7f194016
-Node: Q5.0.15\7f194781
-Node: Q5.0.16\7f195082
-Node: Q5.0.17\7f195594
-Node: Q5.0.18\7f195859
-Node: Q5.0.19\7f196385
-Node: Q5.0.20\7f196809
-Node: Q5.1.1\7f197724
-Node: Q5.1.2\7f199793
-Node: Q5.1.3\7f200529
-Node: Q5.1.4\7f203923
-Node: Q5.1.5\7f204458
-Node: Q5.1.6\7f206552
-Node: Q5.1.7\7f207941
-Node: Q5.1.8\7f209542
-Node: Q5.1.9\7f210094
-Node: Q5.1.10\7f210979
-Node: Q5.1.11\7f212110
-Node: Q5.2.1\7f212659
-Node: Q5.2.2\7f213230
-Node: Q5.2.3\7f213647
-Node: Q5.2.4\7f213882
-Node: Q5.3.1\7f214792
-Node: Q5.3.2\7f216013
-Node: Q5.3.3\7f216789
-Node: Q5.3.4\7f217273
-Node: Q5.3.5\7f217940
-Node: Q5.3.6\7f218809
-Node: Q5.3.7\7f219054
-Node: Q5.3.8\7f221244
-Node: Q5.3.9\7f221491
-Node: Q5.3.10\7f222444
-Node: Q5.3.11\7f224639
-Node: Q5.3.12\7f226188
-Node: Current Events\7f227462
-Node: Q6.0.1\7f228119
-Node: Q6.0.2\7f228758
-Node: Q6.0.3\7f229832
-Node: Q6.0.4\7f230060
+Node: Introduction\7f16711
+Node: Q1.0.1\7f20230
+Node: Q1.0.2\7f20766
+Node: Q1.0.3\7f21261
+Node: Q1.0.4\7f21523
+Node: Q1.0.5\7f22973
+Node: Q1.0.6\7f23662
+Node: Q1.0.7\7f24668
+Node: Q1.0.8\7f24917
+Node: Q1.0.9\7f25132
+Node: Q1.0.10\7f25410
+Node: Q1.0.11\7f25653
+Node: Q1.0.12\7f26110
+Node: Q1.0.13\7f26478
+Node: Q1.0.14\7f26713
+Node: Q1.1.1\7f27187
+Node: Q1.1.2\7f28149
+Node: Q1.1.3\7f28542
+Node: Q1.2.1\7f29493
+Node: Q1.2.2\7f30549
+Node: Q1.2.3\7f30983
+Node: Q1.3.1\7f31934
+Node: Q1.3.2\7f35852
+Node: Q1.3.3\7f36407
+Node: Q1.3.4\7f36648
+Node: Q1.3.5\7f37412
+Node: Q1.3.6\7f39827
+Node: Q1.3.7\7f41322
+Node: Q1.4.1\7f42257
+Node: Q1.4.2\7f43119
+Node: Q1.4.3\7f43460
+Node: Q1.4.4\7f43879
+Node: Q1.4.5\7f45419
+Node: Q1.4.6\7f45723
+Node: Q1.4.7\7f46731
+Node: Installation\7f47856
+Node: Q2.0.1\7f50262
+Node: Q2.0.2\7f51135
+Node: Q2.0.3\7f58338
+Node: Q2.0.4\7f59636
+Node: Q2.0.5\7f60228
+Node: Q2.0.6\7f60596
+Node: Q2.0.7\7f60977
+Node: Q2.0.8\7f61358
+Node: Q2.0.9\7f62936
+Node: Q2.0.10\7f64374
+Node: Q2.0.11\7f65218
+Node: Q2.0.12\7f66159
+Node: Q2.0.13\7f67682
+Node: Q2.0.14\7f68340
+Node: Q2.1.1\7f68908
+Node: Q2.1.2\7f71650
+Node: Q2.1.3\7f72827
+Node: Q2.1.4\7f74120
+Node: Q2.1.5\7f74919
+Node: Q2.1.6\7f75281
+Node: Q2.1.7\7f75758
+Node: Q2.1.8\7f76111
+Node: Q2.1.9\7f77627
+Node: Q2.1.10\7f78049
+Node: Q2.1.11\7f78806
+Node: Q2.1.12\7f79671
+Node: Q2.1.13\7f80626
+Node: Q2.1.14\7f81657
+Node: Q2.1.15\7f82768
+Node: Q2.1.16\7f88726
+Node: Q2.1.17\7f89420
+Node: Q2.1.18\7f90017
+Node: Q2.1.19\7f91814
+Node: Q2.1.20\7f92344
+Node: Q2.1.21\7f92726
+Node: Q2.1.22\7f93016
+Node: Q2.1.23\7f94313
+Node: Customization\7f94965
+Node: Q3.0.1\7f99852
+Node: Q3.0.2\7f100558
+Node: Q3.0.3\7f101122
+Node: Q3.0.4\7f101539
+Node: Q3.0.5\7f102372
+Node: Q3.0.6\7f103153
+Node: Q3.0.7\7f103733
+Node: Q3.0.8\7f104397
+Node: Q3.0.9\7f105243
+Node: Q3.1.1\7f105804
+Node: Q3.1.2\7f106541
+Node: Q3.1.3\7f106972
+Node: Q3.1.4\7f107557
+Node: Q3.1.5\7f108093
+Node: Q3.1.6\7f108477
+Node: Q3.1.7\7f109158
+Node: Q3.1.8\7f111382
+Node: Q3.2.1\7f111924
+Node: Q3.2.2\7f113332
+Node: Q3.2.3\7f114131
+Node: Q3.2.4\7f114733
+Node: Q3.2.5\7f115767
+Node: Q3.2.6\7f116234
+Node: Q3.3.1\7f117196
+Node: Q3.3.2\7f117589
+Node: Q3.3.3\7f118220
+Node: Q3.3.4\7f118601
+Node: Q3.3.5\7f119695
+Node: Q3.4.1\7f121189
+Node: Q3.4.2\7f121832
+Node: Q3.5.1\7f122344
+Node: Q3.5.2\7f123798
+Node: Q3.5.3\7f124216
+Node: Q3.5.4\7f125056
+Node: Q3.5.5\7f125888
+Node: Q3.5.6\7f127028
+Node: Q3.5.7\7f128018
+Node: Q3.5.8\7f129370
+Node: Q3.5.9\7f130117
+Node: Q3.5.10\7f130897
+Node: Q3.5.11\7f131533
+Node: Q3.6.1\7f132086
+Node: Q3.6.2\7f132826
+Node: Q3.6.3\7f133254
+Node: Q3.7.1\7f133754
+Node: Q3.7.2\7f134642
+Node: Q3.7.3\7f135301
+Node: Q3.7.4\7f135723
+Node: Q3.7.5\7f136066
+Node: Q3.7.6\7f136534
+Node: Q3.7.7\7f137249
+Node: Q3.7.8\7f138269
+Node: Q3.8.1\7f138688
+Node: Q3.8.2\7f139148
+Node: Q3.8.3\7f139611
+Node: Q3.8.4\7f140217
+Node: Q3.8.5\7f140936
+Node: Q3.9.1\7f141721
+Node: Q3.9.2\7f142661
+Node: Q3.9.3\7f143259
+Node: Q3.9.4\7f143921
+Node: Q3.10.1\7f144800
+Node: Q3.10.2\7f145618
+Node: Q3.10.3\7f146399
+Node: Q3.10.4\7f147127
+Node: Q3.10.5\7f147510
+Node: Subsystems\7f148520
+Node: Q4.0.1\7f151005
+Node: Q4.0.2\7f151530
+Node: Q4.0.3\7f152088
+Node: Q4.0.4\7f152409
+Node: Q4.0.5\7f152651
+Node: Q4.0.6\7f152882
+Node: Q4.0.7\7f153463
+Node: Q4.0.8\7f153788
+Node: Q4.0.9\7f155015
+Node: Q4.0.10\7f157053
+Node: Q4.0.11\7f157507
+Node: Q4.0.12\7f158357
+Node: Q4.1.1\7f159330
+Node: Q4.1.2\7f159733
+Node: Q4.1.3\7f160060
+Node: Q4.2.1\7f160369
+Node: Q4.2.2\7f160999
+Node: Q4.2.3\7f161239
+Node: Q4.2.4\7f161783
+Node: Q4.3.1\7f162436
+Node: Q4.3.2\7f163020
+Node: Q4.3.3\7f164501
+Node: Q4.3.4\7f164773
+Node: Q4.3.5\7f165450
+Node: Q4.4.1\7f166078
+Node: Q4.4.2\7f167564
+Node: Q4.5.1\7f168768
+Node: Q4.6.1\7f169537
+Node: Q4.7.1\7f174797
+Node: Q4.7.2\7f175752
+Node: Q4.7.3\7f176049
+Node: Q4.7.4\7f176395
+Node: Q4.7.5\7f177279
+Node: Q4.7.6\7f178921
+Node: Miscellaneous\7f179515
+Node: Q5.0.1\7f182935
+Node: Q5.0.2\7f183669
+Node: Q5.0.3\7f184523
+Node: Q5.0.4\7f185225
+Node: Q5.0.5\7f186164
+Node: Q5.0.6\7f188144
+Node: Q5.0.7\7f188801
+Node: Q5.0.8\7f189406
+Node: Q5.0.9\7f189925
+Node: Q5.0.10\7f190439
+Node: Q5.0.11\7f190687
+Node: Q5.0.12\7f191248
+Node: Q5.0.13\7f192165
+Node: Q5.0.14\7f192849
+Node: Q5.0.15\7f193614
+Node: Q5.0.16\7f193911
+Node: Q5.0.17\7f194423
+Node: Q5.0.18\7f194688
+Node: Q5.0.19\7f195214
+Node: Q5.0.20\7f195638
+Node: Q5.1.1\7f196553
+Node: Q5.1.2\7f198622
+Node: Q5.1.3\7f199358
+Node: Q5.1.4\7f202752
+Node: Q5.1.5\7f203287
+Node: Q5.1.6\7f205381
+Node: Q5.1.7\7f206770
+Node: Q5.1.8\7f208371
+Node: Q5.1.9\7f208923
+Node: Q5.1.10\7f209808
+Node: Q5.1.11\7f210939
+Node: Q5.2.1\7f211488
+Node: Q5.2.2\7f212059
+Node: Q5.2.3\7f212476
+Node: Q5.2.4\7f212711
+Node: Q5.3.1\7f213621
+Node: Q5.3.2\7f214842
+Node: Q5.3.3\7f215618
+Node: Q5.3.4\7f216102
+Node: Q5.3.5\7f216769
+Node: Q5.3.6\7f217638
+Node: Q5.3.7\7f217883
+Node: Q5.3.8\7f220073
+Node: Q5.3.9\7f220320
+Node: Q5.3.10\7f221273
+Node: Q5.3.11\7f223357
+Node: Q5.3.12\7f224906
+Node: MS Windows\7f226180
+Node: Q6.0.1\7f227511
+Node: Q6.0.2\7f228258
+Node: Q6.0.3\7f228723
+Node: Q6.0.4\7f229003
+Node: Q6.1.1\7f231284
+Node: Q6.1.2\7f232155
+Node: Q6.1.3\7f232436
+Node: Q6.1.4\7f232718
+Node: Q6.1.5\7f233096
+Node: Q6.1.6\7f233928
+Node: Q6.2.1\7f234512
+Node: Q6.2.2\7f235413
+Node: Q6.2.3\7f235814
+Node: Q6.3.1\7f236103
+Node: Q6.3.2\7f237197
+Node: Q6.3.3\7f240378
+Node: Current Events\7f240632
+Node: Q7.0.1\7f241286
+Node: Q7.0.2\7f241925
+Node: Q7.0.3\7f242999
+Node: Q7.0.4\7f243227
 \1f
 End Tag Table
index 4102ba3..6d7aef0 100644 (file)
@@ -39,6 +39,7 @@ archives.
 * Customization::       Customization and Options.
 * Subsystems::          Major Subsystems.
 * Miscellaneous::       The Miscellaneous Stuff.
+* MS Windows::          XEmacs on Microsoft Windows.
 * Current Events::      What the Future Holds.
 
 
@@ -327,12 +328,38 @@ Miscellaneous:
 * Q5.3.11::     How do I add new Info directories?
 * Q5.3.12::     What do I need to change to make printing work?
 
-What the Future Holds
+XEmacs on MS Windows
 
-* Q6.0.1::      What is new in 20.2?
-* Q6.0.2::      What is new in 20.3?
-* Q6.0.3::      What is new in 20.4?
-* Q6.0.4::      Procedural changes in XEmacs development.
+General Info:
+* Q6.0.1::     What is the status of the XEmacs port to Windows?
+* Q6.0.2::     What flavors of MS Windows are supported?
+* Q6.0.3::     Are binary kits available?
+* Q6.0.4::     Does XEmacs on MS Windows require an X server to run?
+
+Building XEmacs on MS Windows:
+* Q6.1.1::     I decided to run with X.  Where do I get an X server?
+* Q6.1.2::     What compiler do I need to compile XEmacs?
+* Q6.1.3::     How do I compile for the native port?
+* Q6.1.4::     How do I compile for the X port?
+* Q6.1.5::     How do I compile for Cygnus' Cygwin?
+* Q6.1.6::     What do I need for Cygwin?
+
+Customization and User Interface:
+* Q6.2.1::     How will the port cope with differences in the Windows user interface?
+* Q6.2.2::     How do I change fonts in XEmacs on MS Windows?
+* Q6.2.3::     Where do I put my `.emacs' file?
+
+Miscellaneous:
+* Q6.3.1::     Will XEmacs rename all the win32-* symbols to w32-*?
+* Q6.3.2::     What are the differences between the various MS Windows emacsen?
+* Q6.3.3::     What is the porting team doing at the moment?
+
+Current Events:
+
+* Q7.0.1::      What is new in 20.2?
+* Q7.0.2::      What is new in 20.3?
+* Q7.0.3::      What is new in 20.4?
+* Q7.0.4::      Procedural changes in XEmacs development.
 
 \1f
 File: xemacs-faq.info,  Node: Introduction,  Next: Installation,  Prev: Top,  Up: Top
@@ -436,6 +463,8 @@ File: xemacs-faq.info,  Node: Q1.0.2,  Next: Q1.0.3,  Prev: Q1.0.1,  Up: Introdu
 Q1.0.2: What is the current version of XEmacs?
 ----------------------------------------------
 
+   XEmacs 21.1.8 is the current stable version of XEmacs.
+
    XEmacs 20.4 is a minor upgrade from 20.3, containing many bugfixes.
 It was released in February 1998.
 
@@ -448,7 +477,7 @@ File: xemacs-faq.info,  Node: Q1.0.3,  Next: Q1.0.4,  Prev: Q1.0.2,  Up: Introdu
 Q1.0.3: Where can I find it?
 ----------------------------
 
-   The canonical source and binaries is found via anonymous FTP at:
+   The canonical source and binaries can be found via anonymous FTP at:
 
      `ftp://ftp.xemacs.org/pub/xemacs/'
 
@@ -460,7 +489,7 @@ Q1.0.4: Why Another Version of Emacs?
 
    For a detailed description of the differences between GNU Emacs and
 XEmacs and a detailed history of XEmacs, check out the
-     NEWS file (http://www.xemacs.org/NEWS.html)
+     NEWS file (http://www.xemacs.org/About/XEmacsVsGNUemacs.html)
 
    However, here is a list of some of the reasons why we think you might
 consider using it:
@@ -528,28 +557,22 @@ Q1.0.6: Where can I get help?
 -----------------------------
 
    Probably the easiest way, if everything is installed, is to use
-info, by pressing `C-h i', or selecting `Manuals->Info' from the Help
-Menu.
-
-   Also, `M-x apropos' will look for commands for you.
+Info, by pressing `C-h i', or selecting `Manuals->Info' from the Help
+Menu.  `M-x apropos' can be used to look for particular commands.
 
-   Try reading this FAQ, examining the regular GNU Emacs FAQ (which can
-be found with the Emacs 19 distribution) as well as at
-`http://www.eecs.nwu.edu/emacs/faq/' and reading the Usenet group
-comp.emacs.xemacs.
+   For items not found in the manual, try reading this FAQ and reading
+the Usenet group comp.emacs.xemacs.
 
-   If that does not help, try posting your question to
-comp.emacs.xemacs.  Please *do not* post XEmacs related questions to
+   If you choose to post to a newsgroup, *please use
+comp.emacs.xemacs*.  Please do not post XEmacs related questions to
 gnu.emacs.help.
 
    If you cannot post or read Usenet news, there is a corresponding
 mailing list which is available.  It can be subscribed to by sending a
-message with a subject of `subscribe' to <xemacs-request@xemacs.org>
-for subscription information and <xemacs@xemacs.org> to send messages
-to the list.
-
-   To cancel a subscription, you *must* use the xemacs-request address.
-Send a message with a subject of `unsubscribe' to be removed.
+message to <xemacs-request@xemacs.org> with `subscribe' in the body of
+the message.  Send to the list at <xemacs@xemacs.org>.  list.  To
+cancel a subscription, you *must* use the xemacs-request address.  Send
+a message with a subject of `unsubscribe' to be removed.
 
 \1f
 File: xemacs-faq.info,  Node: Q1.0.7,  Next: Q1.0.8,  Prev: Q1.0.6,  Up: Introduction
@@ -557,11 +580,7 @@ File: xemacs-faq.info,  Node: Q1.0.7,  Next: Q1.0.8,  Prev: Q1.0.6,  Up: Introdu
 Q1.0.7: Where is the mailing list archived?
 -------------------------------------------
 
-   The mailing list was archived in the directory
-     `ftp://ftp.xemacs.org/pub/mlists/'.
-
-   However, this archive is out of date.  The current mailing list
-server supports an `archive' feature, which may be utilized.
+   The archives can be found at `http://www.xemacs.org/Lists/Archive'
 
 \1f
 File: xemacs-faq.info,  Node: Q1.0.8,  Next: Q1.0.9,  Prev: Q1.0.7,  Up: Introduction
@@ -569,7 +588,7 @@ File: xemacs-faq.info,  Node: Q1.0.8,  Next: Q1.0.9,  Prev: Q1.0.7,  Up: Introdu
 Q1.0.8: How do you pronounce XEmacs?
 ------------------------------------
 
-   I pronounce it `Eks eemax'.
+   The most common pronounciation is `Eks eemax'.
 
 \1f
 File: xemacs-faq.info,  Node: Q1.0.9,  Next: Q1.0.10,  Prev: Q1.0.8,  Up: Introduction
@@ -586,33 +605,7 @@ File: xemacs-faq.info,  Node: Q1.0.10,  Next: Q1.0.11,  Prev: Q1.0.9,  Up: Intro
 Q1.0.10: Is there a port of XEmacs to Microsoft ('95 or NT)?
 ------------------------------------------------------------
 
-   Thanks to efforts of many people, coordinated by David Hobley
-<davidh@wr.com.au> and Marc Paquette <marcpa@cam.org>, beta versions of
-XEmacs now run on 32-bit Windows platforms (NT and 95).  The current
-betas require having an X server to run XEmacs; however, a native NT/95
-port is in alpha, thanks to Jonathan Harris <jhar@tardis.ed.ac.uk>.
-
-   Although some features are still unimplemented, XEmacs 21.0 will
-support MS-Windows.
-
-   The NT development is now coordinated by a mailing list at
-<xemacs-nt@xemacs.org>.
-
-   If you are willing to contribute or want to follow the progress,
-mail to <xemacs-nt-request@xemacs.org> to subscribe.
-
-   Furthermore, Altrasoft is seeking corporate and government sponsors
-to help fund a fully native port of XEmacs to Windows 95 and NT using
-full-time, senior-level staff working under a professionally managed
-project structure.  See the Altrasoft web site
-(http://www.altrasoft.com/) for more details or contact Altrasoft
-directly at 1-888-ALTSOFT.
-
-   The closest existing port is "Win-Emacs", which is based on Lucid
-Emacs 19.6.  Available from `http://www.pearlsoft.com/'.
-
-   There's a port of GNU Emacs (not XEmacs) at
-     `http://www.cs.washington.edu/homes/voelker/ntemacs.html'.
+   Yes, *Note MS Windows::.
 
 \1f
 File: xemacs-faq.info,  Node: Q1.0.11,  Next: Q1.0.12,  Prev: Q1.0.10,  Up: Introduction
@@ -651,13 +644,11 @@ File: xemacs-faq.info,  Node: Q1.0.14,  Next: Q1.1.1,  Prev: Q1.0.13,  Up: Intro
 Q1.0.14: Where can I obtain a printed copy of the XEmacs users manual?
 ----------------------------------------------------------------------
 
-   Altrasoft Associates, a firm specializing in Emacs-related support
-and development, will be maintaining the XEmacs user manual.  The firm
-plans to begin publishing printed copies of the manual soon.
+   Pre-printed manuals are not available.  If you are familiar with
+TeX, you can generate your own manual from the XEmacs sources.
 
-       Web:     `http://www.xemacs.com'
-       E-mail:  <info@xemacs.com>
-       Tel:     +1 408 243 3300
+   HTML and Postscript versions of XEmacs manuals may be available from
+the XEmacs web site in the future.
 
 \1f
 File: xemacs-faq.info,  Node: Q1.1.1,  Next: Q1.1.2,  Prev: Q1.0.14,  Up: Introduction
@@ -669,19 +660,12 @@ Q1.1.1: What is the FAQ editorial policy?
 -----------------------------------------
 
    The FAQ is actively maintained and modified regularly.  All links
-should be up to date.
-
-   Changes are displayed on a monthly basis.  "Months", for this
-purpose are defined as the 5th of the month through the 5th of the
-month.  Preexisting questions that have been changed are marked as such.
-Brand new questions are tagged.
-
-   All submissions are welcome.  E-mail submissions to Christian Nyb/o
-<faq@xemacs.org>.
+should be up to date.  All submissions are welcome.  E-mail submissions
+to XEmacs FAQ maintainers <faq@xemacs.org>.
 
    Please make sure that `XEmacs FAQ' appears on the Subject: line.  If
 you think you have a better way of answering a question, or think a
-question should be included, I'd like to hear about it.  Questions and
+question should be included, we'd like to hear about it.  Questions and
 answers included into the FAQ will be edited for spelling and grammar,
 and will be attributed.  Answers appearing without attribution are
 either from versions of the FAQ dated before May 1996, or are from one
@@ -695,8 +679,8 @@ File: xemacs-faq.info,  Node: Q1.1.2,  Next: Q1.1.3,  Prev: Q1.1.1,  Up: Introdu
 Q1.1.2: How do I become a Beta Tester?
 --------------------------------------
 
-   Send an email message to <xemacs-beta-request@xemacs.org> with a
-subject line of `subscribe'.
+   Send an email message to <xemacs-beta-request@xemacs.org> with the
+line `subscribe' in the body of the message.
 
    Be prepared to get your hands dirty, as beta testers are expected to
 identify problems as best they can.
@@ -910,15 +894,12 @@ File: xemacs-faq.info,  Node: Q1.3.2,  Next: Q1.3.3,  Prev: Q1.3.1,  Up: Introdu
 Q1.3.2: What is the status of Asian-language support, aka MULE?
 ---------------------------------------------------------------
 
-   The MULE support works OK but still needs a fair amount of work
-before it's really solid.  We could definitely use some help here, esp.
-people who speak Japanese and will use XEmacs/MULE to work with
-Japanese and have some experience with E-Lisp.
+   MULE support is now available for UNIX versions of XEmacs.
 
-   As the fundings on Mule have stopped, the Mule part of XEmacs is
-currently looking for a full-time maintainer.  If you can provide help
-here, or are willing to fund the work, please mail to
-<xemacs-beta@xemacs.org>.
+   If you would like to help, you may want to join the
+<xemacs-mule@xemacs.org> mailing list.  Especially needed are people
+who speak/write languages other than English, who are willing to use
+XEmacs/MULE regularly, and have some experience with Elisp.
 
    *Note Q1.1.2::.
 
@@ -1108,13 +1089,6 @@ Q1.4.3: Any good tutorials around?
 available in a non-english language, type `C-u C-h t TAB', type the
 first letters of your preferred language, then type <RET>.
 
-   There's an Emacs Lisp tutorial at
-
-     `ftp://prep.ai.mit.edu/pub/gnu/emacs-lisp-intro-1.04.tar.gz'.
-
-   Erik Sundermann <erik@petaxp.rug.ac.be> has made a tutorial web page
-at `http://petaxp.rug.ac.be/~erik/xemacs/'.
-
 \1f
 File: xemacs-faq.info,  Node: Q1.4.4,  Next: Q1.4.5,  Prev: Q1.4.3,  Up: Introduction
 
index 08629dc..2ea10ef 100644 (file)
@@ -1040,8 +1040,8 @@ File: xemacs-faq.info,  Node: Q2.1.16,  Next: Q2.1.17,  Prev: Q2.1.15,  Up: Inst
 Q2.1.16: XEmacs crashes in `strcat' on HP/UX 10
 -----------------------------------------------
 
-   >From the problems database (through
-`http://support.mayfield.hp.com/'):
+   From the problems database (through the former address
+http://support.mayfield.hp.com/):
 
      Problem Report: 5003302299
      Status:         Open
index 83ebc43..9ddbcbc 100644 (file)
@@ -1,3 +1,12 @@
+1999-12-07  Martin Buchholz <martin@xemacs.org>
+
+       * XEmacs 21.2.23 is released.
+
+1999-11-29  Andreas Jaeger  <aj@suse.de>
+
+       * Makefile.in.in (INSTALLABLE_SCRIPTS): Removed pstogif.
+       pstogif: Moved to package tm.
+
 1999-11-29  XEmacs Build Bot <builds@cvs.xemacs.org>
 
        * XEmacs 21.2.22 is released
index 9c1b864..7730260 100644 (file)
@@ -80,7 +80,7 @@ INSTALLABLES_BASE = etags ctags b2m ootags
 #else
 INSTALLABLES_BASE = etags ctags b2m gnuclient ootags
 #endif
-INSTALLABLE_SCRIPTS = rcs-checkin pstogif gnudoit gnuattach
+INSTALLABLE_SCRIPTS = rcs-checkin gnudoit gnuattach
 #ifdef HAVE_SHLIB
 #ifdef HAVE_MS_WINDOWS
 INSTALLABLES = $(INSTALLABLES_BASE) runxemacs rungnuclient ellcc
index 3609a5e..6287ca2 100644 (file)
@@ -18,6 +18,7 @@ WITHOUT ANY EXPRESS OR IMPLIED WARRANTIES.
 #include <stdio.h>
 #include <ctype.h>
 #include <string.h>
+#include <errno.h>
 
 static void
 output64chunk(int c1, int c2, int c3, int pads, FILE *outfile);
index 2a9e7d1..8fa12d9 100755 (executable)
@@ -28,7 +28,7 @@ Options:
 
 Report bugs to <bug-gnu-emacs@prep.ai.mit.edu>.'
 
-Id='$Id: rcs2log,v 1.37 1997/03/21 22:19:30 eggert Exp $'
+Id='$Id: rcs2log,v 1.2 1997/07/09 04:31:03 steve Exp $'
 
 # Copyright 1992, 1993, 1994, 1995, 1996, 1997 Free Software Foundation, Inc.
 
index d3b49d9..7896576 100644 (file)
@@ -1,3 +1,76 @@
+1999-12-07  Martin Buchholz <martin@xemacs.org>
+
+       * XEmacs 21.2.23 is released.
+
+1999-11-06  Jason R Mastaler  <jason@mastaler.com>
+
+        * package-get.el (package-get-download-sites): Removed several
+        defunct download sites, added many new ones, and corrected a few
+        incorrect directory-on-site entries.  Added physical locations to
+        site-description.
+
+1999-11-30  Gunnar Evermann  <ge204@eng.cam.ac.uk>
+
+       * finder.el (finder-commentary): add DOC string and fix
+       interactive spec
+
+1999-12-04  Hrvoje Niksic  <hniksic@iskon.hr>
+
+       * help.el (describe-function): Don't forget to intern the string
+       completing-read returns.
+       (describe-variable): Ditto.
+
+1999-11-16  Adrian Aichner  <aichner@ecf.teradyne.com>
+
+       * hyper-apropos.el (hyper-apropos-this-symbol): Handle
+       `hyper-apropos-help-mode' here to find symbol to customize
+       irregardless of cursor position and simplify
+       `hyper-apropos-set-variable', `hyper-apropos-find-function', and
+       `hyper-apropos-popup-menu'.
+
+1999-11-21  Yoshiki Hayashi  <t90553@mail.ecc.u-tokyo.ac.jp>
+
+       * apropos.el (apropos-mode-map): Add return to call
+       apropos-follow.
+       (apropos-print): Call apropos-mode to have better
+       command reference. Put keymap text-poperty to
+       symbole name.
+
+1999-11-22  Alastair Burt  <burt@dfki.de>
+
+       * help.el: (describe-bindings-1): Added handling of keymaps for
+       the extents at point.
+
+1999-12-02  Mark Thomas  <mthomas@jprc.com>
+
+       * gutter-items.el (buffers-tab-items): Wrap the function in a
+       save-match-data
+
+1999-12-04  Hrvoje Niksic  <hniksic@iskon.hr>
+
+       * help.el (describe-function): Use the DEFAULT argument to
+       completing-read.
+       (describe-variable): Ditto.
+
+1999-11-26  Yoshiki Hayashi  <t90553@mail.ecc.u-tokyo.ac.jp>
+
+       * minibuf.el (read-from-minibuffer): Add optional argument
+       DEFAULT to have better mini-buffer history support.
+       (completing-read): Pass default to read-from-minibuffer.
+       (read-buffer): Pass default to completing-read.
+
+1999-12-04  Hrvoje Niksic  <hniksic@iskon.hr>
+
+       * font-lock.el (font-lock-doc-string-face): Document the
+       `font-lock-lisp-like' property.
+
+1999-11-29  Hrvoje Niksic  <hniksic@iskon.hr>
+
+       * lisp-mode.el: Specify `font-lock-lisp-like'.
+
+       * font-lock.el (font-lock-lisp-like): New function.
+       (font-lock-fontify-syntactically-region): Use it.
+
 1999-11-29  XEmacs Build Bot <builds@cvs.xemacs.org>
 
        * XEmacs 21.2.22 is released
index d76b533..0adcec7 100644 (file)
@@ -89,7 +89,7 @@
     (stig     "Jonathan Stigelman" "stig@hackvan.com")
     (stigb    "Stig Bjorlykke"   "stigb@tihlde.hist.no")
     (thiessel "Marcus Thiessel"   "marcus@xemacs.org")
-    (vladimir "Vladimir Ivanovic" "vladimir@mri.com")
+    (vladimir "Vladimir Ivanovic" "vladimir@acm.com")
     (wing     "Ben Wing"          "ben@xemacs.org")
     (wmperry  "William Perry"     "wmperry@aventail.com"))
   "Alist of XEmacs hackers.")
@@ -659,8 +659,8 @@ Come visit his glorified .plan file at\n\n")
      (widget-insert "Cars are evil.  Ride a bike.\n"))
     (vladimir
      (widget-insert "\
-Former technical lead for XEmacs at Sun.  He is now with Microtec
-Research Inc., working on embedded systems development tools.\n"))
+Former technical lead for XEmacs at Sun.  He is now with a startup
+marketing embedded Java databases.\n"))
     (stig
      (widget-insert "\
 Stig is sort of a tool fetishist.  He has a hate/love relationship
@@ -1042,8 +1042,8 @@ Like most free software, XEmacs is a collaborative effort.  These are
 some of the contributors.  We have no doubt forgotten someone; we
 apologize!  You can see some of our faces under the links.\n\n")
     (about-show-linked-info 'vladimir "\
-Former technical lead for XEmacs at Sun Microsystems.  He is now with
-Microtec Research Inc., working on embedded systems development tools.\n")
+Former technical lead for XEmacs at Sun.  He is now with a startup
+marketing embedded Java databases.\n")
     (about-show-linked-info 'stig "\
 Peripatetic uninominal Emacs hacker.  Stig sometimes operates out of a
 big white van set up for nomadic living and hacking.  Implemented the
index f324ab0..9dee743 100644 (file)
@@ -107,6 +107,7 @@ This looks good, but slows down the commands several times.")
 (defvar apropos-mode-map
   (let ((map (make-sparse-keymap)))
     (define-key map [(control m)] 'apropos-follow)
+    (define-key map [return] 'apropos-follow)
     (define-key map [(button2up)] 'apropos-mouse-follow)
     (define-key map [(button2)] 'undefined)
     map)
@@ -508,6 +509,9 @@ found."
           (let ((p apropos-accumulator)
                 (old-buffer (current-buffer))
                 symbol item point1 point2)
+            ;; Mostly useless but to provide better keymap
+            ;; explanation. help-mode-map will be used instead.
+            (use-local-map apropos-mode-map)
             ;; XEmacs change from (if window-system
             (if (device-on-window-system-p)
                 (progn
@@ -575,6 +579,8 @@ found."
                                    apropos-item))
               (if apropos-symbol-face
                   (put-text-property point1 point2 'face apropos-symbol-face))
+              ;; Add text-property on symbol, too.
+              (put-text-property point1 point2 'keymap apropos-mode-map)
               (apropos-print-doc 'describe-function 1
                                  (if (commandp symbol)
                                      "Command"
index 8c9594a..b0fa4de 100644 (file)
@@ -285,8 +285,12 @@ arguments compiles from `load-path'."
       found)))
 
 (defun finder-commentary (file)
-  (interactive)
-  (let* ((str (lm-commentary (finder-find-library file))))
+  "Display FILE's commentary section.
+FILE should be in a form suitable for passing to `locate-library'."
+  (interactive "sLibrary name: ")
+  (let* ((str (lm-commentary (or (finder-find-library file)
+                                (finder-find-library (concat file ".el"))
+                                (error "Can't find library %s" file)))))
     (if (null str)
        (error "Can't find any Commentary section"))
     (pop-to-buffer "*Finder*")
index aba0a22..928ab0a 100644 (file)
@@ -1284,6 +1284,16 @@ This can take a while for large buffers."
 ;    ;; Clean up.
 ;    (and prev (remove-text-properties prev end '(face nil)))))
 
+(defun font-lock-lisp-like (mode)
+  ;; Note: (or (get mode 'font-lock-lisp-like) (string-match ...)) is
+  ;; not enough because the property needs to be able to specify a nil
+  ;; value.
+  (if (plist-member (symbol-plist mode) 'font-lock-lisp-like)
+      (get mode 'font-lock-lisp-like)
+    ;; If the property is not specified, guess.  Similar logic exists
+    ;; in add-log, but I think this encompasses more modes.
+    (string-match "lisp\\|scheme" (symbol-name mode))))
+
 (defun font-lock-fontify-syntactically-region (start end &optional loudly)
   "Put proper face on each string and comment between START and END.
 START should be at the beginning of a line."
@@ -1296,21 +1306,24 @@ START should be at the beginning of a line."
     (font-lock-unfontify-region start end loudly)
     (goto-char start)
     (if (> end (point-max)) (setq end (point-max)))
-    (syntactically-sectionize
-      #'(lambda (s e context depth)
-         (let (face)
-           (cond ((eq context 'string)
-                  ;;#### Should only do this is Lisp-like modes!
-                  (setq face
-                        (if (= depth 1)
-                            ;; really we should only use this if
-                            ;;  in position 3 depth 1, but that's
-                            ;;  too expensive to compute.
-                            'font-lock-doc-string-face
-                          'font-lock-string-face)))
-                 ((or (eq context 'comment)
-                      (eq context 'block-comment))
-                  (setq face 'font-lock-comment-face)
+    (let ((lisp-like (font-lock-lisp-like major-mode)))
+      (syntactically-sectionize
+       #'(lambda (s e context depth)
+          (let (face)
+            (cond ((eq context 'string)
+                   (setq face
+                         ;; #### It would be nice if we handled
+                         ;; Python and other non-Lisp languages with
+                         ;; docstrings correctly.
+                         (if (and lisp-like (= depth 1))
+                             ;; really we should only use this if
+                             ;;  in position 3 depth 1, but that's
+                             ;;  too expensive to compute.
+                             'font-lock-doc-string-face
+                           'font-lock-string-face)))
+                  ((or (eq context 'comment)
+                       (eq context 'block-comment))
+                   (setq face 'font-lock-comment-face)
 ;               ;; Don't fontify whitespace at the beginning of lines;
 ;               ;;  otherwise comment blocks may not line up with code.
 ;               ;; (This is sometimes a good idea, sometimes not; in any
@@ -1323,9 +1336,9 @@ START should be at the beginning of a line."
 ;                     (skip-chars-forward " \t\n")
 ;                     (setq s (point)))
                   ))
-           (font-lock-set-face s e face)))
-      start end)
-    ))
+            (font-lock-set-face s e face)))
+       start end)
+      )))
 \f
 ;;; Additional text property functions.
 
index ef6cabe..6b0b8f0 100644 (file)
@@ -205,24 +205,25 @@ Only the most-recently-used few buffers will be listed on the tab, for
 efficiency reasons.  You can control how many buffers will be shown by
 setting `buffers-tab-max-size'.  You can control the text of the tab
 items by redefining the function `format-buffers-menu-line'."
-  (let* ((buffers (delete-if buffers-tab-omit-function (buffer-list frame)))
-        (first-buf (car buffers)))
-    ;; if we're in deletion ignore the current buffer
-    (when in-deletion 
-      (setq buffers (delq (current-buffer) buffers))
-      (setq first-buf (car buffers)))
-    ;; group buffers by mode
-    (when buffers-tab-selection-function
-      (delete-if-not #'(lambda (buf)
-                        (funcall buffers-tab-selection-function
-                                 first-buf buf)) buffers))
-    (and (integerp buffers-tab-max-size)
-        (> buffers-tab-max-size 1)
-        (> (length buffers) buffers-tab-max-size)
-        ;; shorten list of buffers
-        (setcdr (nthcdr buffers-tab-max-size buffers) nil))
-    (setq buffers (build-buffers-tab-internal buffers))
-    buffers))
+  (save-match-data
+    (let* ((buffers (delete-if buffers-tab-omit-function (buffer-list frame)))
+          (first-buf (car buffers)))
+      ;; if we're in deletion ignore the current buffer
+      (when in-deletion 
+       (setq buffers (delq (current-buffer) buffers))
+       (setq first-buf (car buffers)))
+      ;; group buffers by mode
+      (when buffers-tab-selection-function
+       (delete-if-not #'(lambda (buf)
+                          (funcall buffers-tab-selection-function
+                                   first-buf buf)) buffers))
+      (and (integerp buffers-tab-max-size)
+          (> buffers-tab-max-size 1)
+          (> (length buffers) buffers-tab-max-size)
+          ;; shorten list of buffers
+          (setcdr (nthcdr buffers-tab-max-size buffers) nil))
+      (setq buffers (build-buffers-tab-internal buffers))
+      buffers)))
 
 (defun add-tab-to-gutter ()
   "Put a tab control in the gutter area to hold the most recent buffers."
index d482b53..8651aab 100644 (file)
@@ -657,9 +657,20 @@ then only the mouse bindings are displayed."
             (gettext "key             binding\n---             -------\n")))
         (buffer (current-buffer))
         (minor minor-mode-map-alist)
+       (extent-maps (mapcar-extents
+                     'extent-keymap
+                     nil (current-buffer) (point) (point) nil 'keymap))
         (local (current-local-map))
         (shadow '()))
     (set-buffer standard-output)
+    (while extent-maps
+      (insert "Bindings for Text Region:\n"
+             heading)
+      (describe-bindings-internal
+       (car extent-maps) nil shadow prefix mouse-only-p)
+       (insert "\n")
+       (setq shadow (cons (car extent-maps) shadow)
+            extent-maps (cdr extent-maps)))
     (while minor
       (let ((sym (car (car minor)))
             (map (cdr (car minor))))
@@ -937,8 +948,9 @@ When run interactively, it defaults to any function found by
                         (format (gettext "Describe function (default %s): ")
                                fn)
                         (gettext "Describe function: "))
-                    obarray 'fboundp t nil 'function-history))))
-      (list (if (equal val "") fn (intern val)))))
+                    obarray 'fboundp t nil 'function-history
+                   (symbol-name fn)))))
+      (list (intern val))))
   (with-displaying-help-buffer
    (lambda ()
      (describe-function-1 function)
@@ -1226,8 +1238,9 @@ part of the documentation of internal subroutines."
                    (if v
                        (format "Describe variable (default %s): " v)
                        (gettext "Describe variable: "))
-                   obarray 'boundp t nil 'variable-history))))
-     (list (if (equal val "") v (intern val)))))
+                   obarray 'boundp t nil 'variable-history
+                  (symbol-name v)))))
+     (list (intern val))))
   (with-displaying-help-buffer
    (lambda ()
      (let ((origvar variable)
index b735091..af739d8 100644 (file)
@@ -1079,6 +1079,12 @@ Deletes lines which match PATTERN."
               nil
             (forward-char 3)
             (read (point-marker))))
+         ((and
+           (eq major-mode 'hyper-apropos-help-mode)
+           (> (point) (point-min)))
+          (save-excursion
+            (goto-char (point-min))
+            (hyper-apropos-this-symbol)))
          (t
           (let* ((st (progn
                        (skip-syntax-backward "w_")
@@ -1121,11 +1127,6 @@ Deletes lines which match PATTERN."
   (interactive
    (let ((var (hyper-apropos-this-symbol)))
      (or (and var (boundp var))
-        (and (setq var (and (eq major-mode 'hyper-apropos-help-mode)
-                            (save-excursion
-                              (goto-char (point-min))
-                              (hyper-apropos-this-symbol))))
-             (boundp var))
         (setq var nil))
      (list var (hyper-apropos-read-variable-value var))))
   (and var
@@ -1175,7 +1176,10 @@ Deletes lines which match PATTERN."
 (defun hyper-apropos-customize-variable ()
   (interactive)
   (let ((var (hyper-apropos-this-symbol)))
-    (customize-variable var)))
+    (and
+     (or (and var (boundp var))
+        (setq var nil))
+     (customize-variable var))))
 
 ;; ---------------------------------------------------------------------- ;;
 
@@ -1197,11 +1201,6 @@ window.  (See also `find-function'.)"
   (interactive
    (let ((fn (hyper-apropos-this-symbol)))
      (or (fboundp fn)
-        (and (setq fn (and (eq major-mode 'hyper-apropos-help-mode)
-                           (save-excursion
-                             (goto-char (point-min))
-                             (hyper-apropos-this-symbol))))
-             (fboundp fn))
         (setq fn nil))
      (list fn)))
   (if fn
@@ -1257,11 +1256,7 @@ window.  (See also `find-function'.)"
 (defun hyper-apropos-popup-menu (event)
   (interactive "e")
   (mouse-set-point event)
-  (let* ((sym (or (hyper-apropos-this-symbol)
-                 (and (eq major-mode 'hyper-apropos-help-mode)
-                      (save-excursion
-                        (goto-char (point-min))
-                        (hyper-apropos-this-symbol)))))
+  (let* ((sym (hyper-apropos-this-symbol))
         (notjunk (not (null sym)))
         (command-p (if (commandp sym) t))
         (variable-p (and sym (boundp sym)))
index aab95e4..32f93ff 100644 (file)
@@ -20,6 +20,8 @@
 
 (provide 'itimer)
 
+(require 'lisp-float-type)
+
 ;; `itimer' feature means Emacs-Lisp programmers get:
 ;;    itimerp
 ;;    itimer-live-p
@@ -46,7 +48,7 @@
 ;;
 ;; See the doc strings of these functions for more information.
 \f
-(defvar itimer-version "1.07"
+(defvar itimer-version "1.08"
   "Version number of the itimer package.")
 
 (defvar itimer-list nil
@@ -62,7 +64,7 @@ is not being used to drive the system.")
 (defvar itimer-timer-last-wakeup nil
   "The time the timer driver function last ran.")
 
-(defvar itimer-short-interval (if (featurep 'lisp-float-type) 1e-3 1)
+(defvar itimer-short-interval 1e-3
   "Interval used for scheduling an event a very short time in the future.
 Used internally to make the scheduler wake up early.
 Unit is seconds.")
@@ -159,7 +161,7 @@ This is a macro."
 ;; Functions to access and modify itimer attributes.
 
 (defun itimerp (obj)
-  "Return t if OBJ is an itimer."
+  "Return non-nil if OBJ is an itimer."
   (and (consp obj) (eq (length obj) 8)))
 
 (defun itimer-live-p (obj)
@@ -181,7 +183,7 @@ Itimers started with `start-itimer' are automatically active."
 
 (defun itimer-restart (itimer)
   "Return the value to which ITIMER will be set at restart.
-Return nil if this itimer doesn't restart."
+The value nil is returned if this itimer isn't set to restart."
   (check-itimer itimer)
   (nth 2 itimer))
 
@@ -194,8 +196,8 @@ This function is called each time ITIMER expires."
 (defun itimer-is-idle (itimer)
   "Return non-nil if ITIMER is an idle timer.
 Normal timers expire after a set interval.  Idle timers expire
-only after Emacs has been idle for a specific interval.
-``Idle'' means no command events occur within the interval."
+only after Emacs has been idle for a specific interval.  ``Idle''
+means no command events have occurred within the interval."
   (check-itimer itimer)
   (nth 4 itimer))
 
@@ -208,7 +210,7 @@ The arguments themselves are retrievable with `itimer-function-arguments'."
 
 (defun itimer-function-arguments (itimer)
   "Return the function arguments of ITIMER as a list.
-ITIMER's function is called with these argument each time ITIMER expires."
+ITIMER's function is called with these arguments each time ITIMER expires."
   (check-itimer itimer)
   (nth 6 itimer))
 
@@ -302,7 +304,7 @@ minibuffer as initial user input."
   (get-itimer (completing-read prompt itimer-list nil 'confirm initial-input)))
 
 (defun delete-itimer (itimer)
-  "Delete ITIMER.  ITIMER may be an itimer or the name of one."
+  "Deletes ITIMER.  ITIMER may be an itimer or the name of one."
   (check-itimer-coerce-string itimer)
   (setq itimer-list (delq itimer itimer-list)))
 
@@ -327,13 +329,13 @@ VALUE is the number of seconds until this itimer expires.
   must be an integer.
 Optional fourth arg RESTART non-nil means that this itimer should be
   restarted automatically after its function is called.  Normally an itimer
-  is deleted at expiration after its function has returned.
-  If non-nil, RESTART should be a number indicating the value at which
-  the itimer should be set at restart time.
+  is deleted at expiration after its function has returned. 
+  If non-nil RESTART should be a number indicating the value at which the
+  itimer should be set at restart time.
 Optional fifth arg IS-IDLE specifies if this is an idle timer.
   Normal timers expire after a set interval.  Idle timers expire
-  only after Emacs has been idle for specific interval.
-  ``Idle'' means no command events occur within the interval.
+  only after Emacs has been idle for specific interval.  ``Idle''
+  means no command events have occurred within the interval.
 Returns the newly created itimer."
   (interactive
    (list (completing-read "Start itimer: " itimer-list)
@@ -717,7 +719,12 @@ x      start a new itimer
                         (inhibit-quit nil)
                         ;; for FSF Emacs timer.el emulation under XEmacs.
                         ;; eldoc expect this to be done, apparently.
-                        (this-command nil))
+                        (this-command nil)
+                        ;; bind these variables so that the
+                        ;; itimer function can't screw with
+                        ;; them.
+                        last-event-time next-wakeup
+                        itimer itimers time-elapsed)
                    (if (itimer-uses-arguments current-itimer)
                        (apply (itimer-function current-itimer)
                               (itimer-function-arguments current-itimer))
@@ -837,11 +844,9 @@ x      start a new itimer
               secs (+ secs 65536))
       (setq carry 0))
     (setq 65536-secs (- (nth 0 t1) (nth 0 t2) carry))
-    ;; loses for interval larger than the maximum signed Lisp integer.
-    ;; can't really be helped.
-    (+ (* 65536-secs 65536)
+    (+ (* 65536-secs 65536.0)
        secs
-       (/ usecs (if (featurep 'lisp-float-type) 1e6 1000000)))))
+       (/ usecs 1000000.0))))
 
 (defun itimer-timer-driver (&rest ignored)
   ;; inhibit quit because if the user quits at an inopportune
index 31c5be7..a0eaddf 100644 (file)
@@ -5,7 +5,7 @@
 ;; Author: Oscar Figueiredo <Oscar.Figueiredo@di.epfl.ch>
 ;; Maintainer: Oscar Figueiredo <Oscar.Figueiredo@di.epfl.ch>
 ;; Created: Jan 1998
-;; Version: $Revision: 1.7.2.3 $
+;; Version: $Revision: 1.7.2.6 $
 ;; Keywords: help comm
 
 ;; This file is part of XEmacs
index e5e97ec..fee10bd 100644 (file)
@@ -290,6 +290,8 @@ if that value is non-nil."
   (lisp-mode-variables nil)
   (run-hooks 'emacs-lisp-mode-hook))
 
+(put 'emacs-lisp-mode 'font-lock-lisp-like t)
+
 (defvar lisp-mode-map ()
   "Keymap for ordinary Lisp mode.
 All commands in `shared-lisp-mode-map' are inherited by this map.")
index d567f42..7b83a3c 100644 (file)
@@ -344,7 +344,8 @@ minibuffer history if its length is less than that value."
                                     keymap
                                     readp
                                     history
-                                   abbrev-table)
+                                   abbrev-table
+                                   default)
   "Read a string from the minibuffer, prompting with string PROMPT.
 If optional second arg INITIAL-CONTENTS is non-nil, it is a string
   to be inserted into the minibuffer before reading input.
@@ -366,6 +367,8 @@ Fifth arg HISTORY, if non-nil, specifies a history list
   Positions are counted starting from 1 at the beginning of the list.
 Sixth arg ABBREV-TABLE, if non-nil, becomes the value of `local-abbrev-table'
   in the minibuffer.
+Seventh arg DEFAULT, if non-nil, will be returned when user enters
+  an empty string.
 
 See also the variable completion-highlight-first-word-only for control over
   completion display."
@@ -490,8 +493,13 @@ See also the variable completion-highlight-first-word-only for control over
                (let* ((val (progn (set-buffer buffer)
                                   (if minibuffer-exit-hook
                                       (run-hooks 'minibuffer-exit-hook))
-                                  (buffer-string)))
-                    (histval val)
+                                  (if (and (eq (char-after (point-min)) nil)
+                                          default)
+                                     default
+                                   (buffer-string))))
+                     (histval (if (and default (string= val ""))
+                                  default
+                                val))
                       (err nil))
                  (if readp
                      (condition-case e
@@ -784,7 +792,9 @@ Completion ignores case if the ambient value of
                                        minibuffer-local-completion-map
                                      minibuffer-local-must-match-map)
                                    nil
-                                   history))
+                                   history
+                                   nil
+                                   default))
     (if (and (string= ret "")
             default)
        default
@@ -1434,7 +1444,8 @@ only existing buffer names are allowed."
         result)
     (while (progn
              (setq result (completing-read prompt alist nil require-match
-                                          nil 'buffer-history))
+                                          nil 'buffer-history 
+                                          (if default (buffer-name default))))
              (cond ((not (equal result ""))
                     nil)
                    ((not require-match)
index 0b70110..ab3654e 100644 (file)
@@ -185,33 +185,51 @@ order until the package is found.  As a special case, `site-name' can be
   '(
     ;; North America
     ("xemacs.org" "ftp.xemacs.org" "pub/xemacs/packages")
-    ("cso.uiuc.edu" "ftp.cso.uiuc.edu" "pub/packages/xemacs/packages")
+    ("crc.ca (Canada)" "ftp.crc.ca" "pub/packages/editors/xemacs/packages")
+    ("ualberta.ca (Canada)" "sunsite.ualberta.ca" "pub/Mirror/xemacs/packages")
+    ("uiuc.edu (United States)" "uiarchive.uiuc.edu" "pub/packages/xemacs/packages")
+    ("unc.edu (United States)" "metalab.unc.edu" "pub/packages/editors/xemacs/packages")
+    ("utk.edu (United States)" "ftp.sunsite.utk.edu" "pub/xemacs/packages")
 
     ;; South America
-    ("unicamp.br" "ftp.unicamp.br" "pub/xemacs/packages")
+    ("unicamp.br (Brazil)" "ftp.unicamp.br" "pub/xemacs/packages")
 
     ;; Europe
-    ("sunsite.cnlab-switch.ch" "sunsite.cnlab-switch.ch" "mirror/xemacs/packages")
-    ("tu-darmstadt.de" "ftp.tu-darmstadt.de" "pub/editors/xemacs/packages")
-    ("sunsite.auc.dk" "sunsite.auc.dk" "pub/emacs/xemacs/packages")
-    ("pasteur.fr" "ftp.pasteur.fr" "pub/computing/xemacs/packages")
-    ("cenatls.cena.dgac.fr" "ftp.cenatls.cena.dgac.fr" "pub/Emacs/xemacs/packages")
-    ("kfki.hu" "ftp.kfki.hu" "pub/packages/xemacs/packages")
-    ("uniroma2.it" "ftp.uniroma2.it" "unix/misc/dist/XEMACS/packages")
-    ("icm.edu.pl" "ftp.icm.edu.pl" "pub/unix/editors/xemacs/packages")
-    ("sunet.se" "ftp.sunet.se" "pub/gnu/xemacs/packages")
-    ("doc.ic.ac.uk" "sunsite.doc.ic.ac.uk" "packages/xemacs/packages")
-    ("srcc.msu.su" "ftp1.srcc.msu.su" "mirror/ftp.xemacs.org/packages")
+    ("tuwien.ac.at (Austria)" "gd.tuwien.ac.at" "editors/xemacs/packages")
+    ("auc.dk (Denmark)" "sunsite.auc.dk" "pub/emacs/xemacs/packages")
+    ("doc.ic.ac.uk (England)" "sunsite.doc.ic.ac.uk" "packages/xemacs/packages")
+    ("funet.fi (Finland)" "ftp.funet.fi" "pub/mirrors/ftp.xemacs.org/pub/tux/xemacs/packages")
+    ("cenatls.cena.dgac.fr (France)" "ftp.cenatls.cena.dgac.fr" "Emacs/xemacs/packages")
+    ("pasteur.fr (France)" "ftp.pasteur.fr" "pub/computing/xemacs/packages")
+    ("tu-darmstadt.de (Germany)" "ftp.tu-darmstadt.de" "pub/editors/xemacs/packages")
+    ("kfki.hu (Hungary)" "ftp.kfki.hu" "pub/packages/xemacs/packages")
+    ("eunet.ie (Ireland)" "ftp.eunet.ie" "mirrors/ftp.xemacs.org/pub/xemacs/packages")
+    ("uniroma2.it (Italy)" "ftp.uniroma2.it" "unix/misc/dist/XEMACS/packages")
+    ("uio.no (Norway)" "sunsite.uio.no" "pub/xemacs/packages")
+    ("icm.edu.pl (Poland)" "ftp.icm.edu.pl" "pub/unix/editors/xemacs/packages")
+    ("srcc.msu.su (Russia)" "ftp.srcc.msu.su" "mirror/ftp.xemacs.org/packages")
+    ("sunet.se (Sweden)" "ftp.sunet.se" "pub/gnu/xemacs/packages")
+    ("cnlab-switch.ch (Switzerland)" "sunsite.cnlab-switch.ch" "mirror/xemacs/packages")
 
     ;; Asia
-    ("usyd.edu.au" "ftp.usyd.edu.au" "pub/Xemacs/packages")
-    ("netlab.is.tsukuba.ac.jp" "ftp.netlab.is.tsukuba.ac.jp" "pub/GNU/xemacs/packages")
-    ("jaist.ac.jp" "ftp.jaist.ac.jp" "pub/GNU/xemacs/packages")
-    ("ring.aist.go.jp" "ring.aist.go.jp" "pub/text/xemacs/packages")
-    ("ring.asahi-net.or.jp" "ring.asahi-net.or.jp" "pub/text/xemacs/packages")
-    ("SunSITE.sut.ac.jp" "SunSITE.sut.ac.jp" "pub/archives/packages/xemacs/packages")
-    ("dti.ad.jp" "ftp.dti.ad.jp" "pub/unix/editor/xemacs/packages")
-    ("kreonet.re.kr" "ftp.kreonet.re.kr" "pub/tools/emacs/xemacs/packages")
+    ("aist.go.jp (Japan)" "ring.aist.go.jp" "pub/text/xemacs/packages")
+    ("asahi-net.or.jp (Japan)" "ring.asahi-net.or.jp" "pub/text/xemacs/packages")
+    ("dti.ad.jp (Japan)" "ftp.dti.ad.jp" "pub/unix/editor/xemacs/packages")
+    ("jaist.ac.jp (Japan)" "ftp.jaist.ac.jp" "pub/GNU/xemacs/packages")
+    ("nucba.ac.jp (Japan)" "mirror.nucba.ac.jp" "mirror/xemacs/packages")
+    ("sut.ac.jp (Japan)" "sunsite.sut.ac.jp" "pub/archives/packages/xemacs/packages")
+    ("tsukuba.ac.jp (Japan)" "ftp.netlab.is.tsukuba.ac.jp" "pub/GNU/xemacs/packages")
+    ("kreonet.re.kr (Korea)" "ftp.kreonet.re.kr" "pub/tools/emacs/xemacs/packages")
+    ("nctu.edu.tw (Taiwan)" "coda.nctu.edu.tw" "Editors/xemacs/packages")
+
+    ;; Africa
+    ("sun.ac.za (South Africa)" "ftp.sun.ac.za" "xemacs/packages")
+
+    ;; Middle East
+    ("isu.net.sa (Saudi Arabia)" "ftp.isu.net.sa" "pub/mirrors/ftp.xemacs.org/packages")
+
+    ;; Australia
+    ("aarnet.edu.au (Australia)" "mirror.aarnet.edu.au" "pub/xemacs/packages")
     )
   "*List of remote sites available for downloading packages.
 List format is '(site-description site-name directory-on-site).
index c965f6c..d359378 100644 (file)
@@ -124,7 +124,7 @@ each of the handlers."
   (let ((event (apply getfun harg args)))
        (if (event-live-p event)
           nil
-        (setq event (allocate-event))
+        (setq event (make-event))
         (apply setfun harg event args))
        (character-to-event value event)))
 
index fc91207..13b953d 100644 (file)
@@ -1,3 +1,14 @@
+1999-12-07  Martin Buchholz <martin@xemacs.org>
+
+       * XEmacs 21.2.23 is released.
+
+1999-12-05  Andy Piper  <andy@xemacs.org>
+
+       * xlwtabs.c: back up to previous rev to make syncing easier. Fix
+       gcc moans.
+
+       * lwlib-Xaw.c (xaw_update_one_widget): use XtIsSubclass.
+
 1999-11-29  XEmacs Build Bot <builds@cvs.xemacs.org>
 
        * XEmacs 21.2.22 is released
index 4b01283..e6d31ae 100644 (file)
@@ -1529,7 +1529,7 @@ label_button_size (XlwMenuWidget mw,
             2 * mw->menu.vertical_margin +
             2 * mw->menu.shadow_thickness);
   /* no left column decoration */
-  *toggle_width = mw->menu.horizontal_margin + mw->menu.shadow_thickness;;
+  *toggle_width = mw->menu.horizontal_margin + mw->menu.shadow_thickness;
 
   *label_width  = string_width_u (mw, resource_widget_value (mw, val));
   *bindings_width =  mw->menu.horizontal_margin + mw->menu.shadow_thickness;
index 99918c7..559fc91 100644 (file)
@@ -598,75 +598,74 @@ static    Boolean
 TabsSetValues(Widget current, Widget request, Widget new,
        ArgList args, Cardinal *num_args)
 {
-  TabsWidget curtw = (TabsWidget) current ;
-  TabsWidget tw = (TabsWidget) new ;
-  Boolean      needRedraw = False ;
-  Widget       *childP ;
-  int  i ;
+       TabsWidget curtw = (TabsWidget) current ;
+       TabsWidget tw = (TabsWidget) new ;
+       Boolean needRedraw = False ;
+       Widget  *childP ;
+       int     i ;
 
 
-  if( tw->tabs.font != curtw->tabs.font  ||
-      tw->tabs.internalWidth != curtw->tabs.internalWidth ||
-      tw->tabs.internalHeight != curtw->tabs.internalHeight )
-    {
-      tw->tabs.tab_height = 2 * tw->tabs.internalHeight + SHADWID ;
-
-      if( tw->tabs.font != NULL )
-       tw->tabs.tab_height += tw->tabs.font->max_bounds.ascent +
-         tw->tabs.font->max_bounds.descent ;
-
-      /* Tab size has changed.  Resize all tabs and request a new size */
-      for(i=0, childP=tw->composite.children;
-         i < tw->composite.num_children;
-         ++i, ++childP)
-       if( XtIsManaged(*childP) )
-         TabWidth(*childP) ;
-      PreferredSize(tw, &tw->core.width, &tw->core.height, NULL,NULL) ;
-      needRedraw = True ;
-      tw->tabs.needs_layout = True ;
-    }
+       if( tw->tabs.font != curtw->tabs.font  ||
+           tw->tabs.internalWidth != curtw->tabs.internalWidth ||
+           tw->tabs.internalHeight != curtw->tabs.internalHeight )
+       {
+         tw->tabs.tab_height = 2 * tw->tabs.internalHeight + SHADWID ;
 
-  /* TODO: if any color changes, need to recompute GCs and redraw */
+         if( tw->tabs.font != NULL )
+           tw->tabs.tab_height += tw->tabs.font->max_bounds.ascent +
+                                  tw->tabs.font->max_bounds.descent ;
 
-  if( tw->core.background_pixel != curtw->core.background_pixel ||
-      tw->core.background_pixmap != curtw->core.background_pixmap )
-    if( XtIsRealized(new) )
-      {
-       TabsFreeGCs(tw) ;
-       TabsAllocGCs(tw) ;
-       needRedraw = True ;
-      }
+         /* Tab size has changed.  Resize all tabs and request a new size */
+         for(i=0, childP=tw->composite.children;
+               i < tw->composite.num_children;
+               ++i, ++childP)
+           if( XtIsManaged(*childP) )
+             TabWidth(*childP) ;
+         PreferredSize(tw, &tw->core.width, &tw->core.height, NULL,NULL) ;
+         needRedraw = True ;
+         tw->tabs.needs_layout = True ;
+       }
 
-  if( tw->core.sensitive != curtw->core.sensitive )
-    needRedraw = True ;
+       /* TODO: if any color changes, need to recompute GCs and redraw */
 
-  /* If top widget changes, need to change stacking order, redraw tabs.
-   * Window system will handle the redraws.
-   */
+       if( tw->core.background_pixel != curtw->core.background_pixel ||
+           tw->core.background_pixmap != curtw->core.background_pixmap )
+         if( XtIsRealized(new) )
+         {
+           TabsFreeGCs(tw) ;
+           TabsAllocGCs(tw) ;
+           needRedraw = True ;
+         }
 
-  if( tw->tabs.topWidget != curtw->tabs.topWidget )
-    {
-      if( XtIsRealized(tw->tabs.topWidget) )
-       {
-         Widget                w = tw->tabs.topWidget ;
-         TabsConstraints       tab = (TabsConstraints) w->core.constraints ;
+       if( tw->core.sensitive != curtw->core.sensitive )
+         needRedraw = True ;
+
+       /* If top widget changes, need to change stacking order, redraw tabs.
+        * Window system will handle the redraws.
+        */
+
+       if( tw->tabs.topWidget != curtw->tabs.topWidget ) {
+         if( XtIsRealized(tw->tabs.topWidget) )
+         {
+           Widget              w = tw->tabs.topWidget ;
+           TabsConstraints     tab = (TabsConstraints) w->core.constraints ;
 
-         XRaiseWindow(XtDisplay(w), XtWindow(w)) ;
+           XRaiseWindow(XtDisplay(w), XtWindow(w)) ;
 #ifdef NEED_MOTIF
-         XtVaSetValues(curtw->tabs.topWidget, XmNtraversalOn, False, 0) ;
-         XtVaSetValues(w, XmNtraversalOn, True, 0) ;
+           XtVaSetValues(curtw->tabs.topWidget, XmNtraversalOn, False, 0) ;
+           XtVaSetValues(w, XmNtraversalOn, True, 0) ;
 #endif
 
-         if( tab->tabs.row != tw->tabs.numRows-1 )
-           TabsShuffleRows(tw) ;
+           if( tab->tabs.row != tw->tabs.numRows-1 )
+             TabsShuffleRows(tw) ;
 
-         needRedraw = True ;
-       }
-      else
-       tw->tabs.needs_layout = True ;
-    }
+           needRedraw = True ;
+         }
+         }
+         else
+           tw->tabs.needs_layout = True ;
 
-  return needRedraw ;
+       return needRedraw ;
 }
 
 
@@ -820,8 +819,8 @@ TabsGeometryManager(Widget w, XtWidgetGeometry *req, XtWidgetGeometry *reply)
          Dimension     th ;            /* space used by tabs */
          Dimension     wid,hgt ;       /* Tabs widget size */
 
-         rw = tab->tabs.wid ;
-         rh = tab->tabs.hgt ;
+         rw = cw = tab->tabs.wid ;
+         rh = ch = tab->tabs.hgt ;
 
          /* find out what the resulting preferred size would be */
 
@@ -1059,7 +1058,7 @@ static    void
 TabsPage(Widget w, XEvent *event, String *params, Cardinal *num_params)
 {
        TabsWidget      tw = (TabsWidget) w ;
-       Widget          newtop ;
+       Widget          newtop = NULL;
        Widget          *childP ;
        int             idx ;
        int             nc = tw->composite.num_children ;
@@ -1122,7 +1121,7 @@ static    void
 TabsHighlight(Widget w, XEvent *event, String *params, Cardinal *num_params)
 {
        TabsWidget      tw = (TabsWidget) w ;
-       Widget          newhl ;
+       Widget          newhl = NULL;
        Widget          *childP ;
        int             idx ;
        int             nc = tw->composite.num_children ;
index 7f276b8..14d05d4 100644 (file)
@@ -1,3 +1,23 @@
+1999-12-07  Martin Buchholz <martin@xemacs.org>
+
+       * XEmacs 21.2.23 is released.
+
+1999-12-06  Sandra Wambold  <wambold@pobox.com>
+
+       * xemacs-faq.texi: Added MS-Windows questions; some other changes
+
+1999-11-29  Martin Buchholz  <martin@xemacs.org>
+
+       * info.texi (Top): 
+       Remove @ifnottex, which gives old makeinfos indigestion.
+       * texinfo.texi (Top): 
+       Revert to pre-texinfo-4.0 version, plus small changes to make
+       texinfo-3.12, texinfo-3.12f, texinfo-4.0, and TeX happy.
+
+1999-11-30  Sandra Wambold  <wambold@cygnus.com>
+
+       * xemacs-faq.texi: fixed and commented out bad URL links
+
 1999-11-29  XEmacs Build Bot <builds@cvs.xemacs.org>
 
        * XEmacs 21.2.22 is released
index fea0d0d..e9eab51 100644 (file)
@@ -3,7 +3,7 @@
 @setfilename ../info/info.info
 @settitle Info
 @comment %**end of header
-@comment $Id: info.texi,v 1.11 1999/04/19 21:37:23 karl Exp $
+@comment $Id: info.texi,v 1.4.2.3 1999/12/05 19:02:24 martinb Exp $
 
 @dircategory Texinfo documentation system
 @direntry
@@ -66,15 +66,14 @@ except that this permission notice may be stated in a translation approved
 by the Free Software Foundation.
 @end titlepage
 
-@ifnottex
 @node Top
 @top Info: An Introduction
 
-Info is a program for reading documentation, which you are using now.
+Info is a program for reading documentation, which you might be using
+now to read this.
 
-To learn how to use Info, type the command @kbd{h}.  It brings you
-to a programmed instruction sequence.
-@end ifnottex
+To learn how to use Info, type the command @kbd{h} while using the Info
+program.  It brings you to a programmed instruction sequence.
 
 @menu
 * Getting Started::             Getting started using an Info reader.
index 2afcb58..73037d2 100644 (file)
@@ -1,14 +1,15 @@
 \input texinfo.tex    @c -*-texinfo-*-
-@c $Id: texinfo.txi,v 1.162 1999/09/28 19:38:01 karl Exp $
+@c $Id: texinfo.texi,v 1.8.2.4 1999/12/05 19:02:24 martinb Exp $
 @c %**start of header
 
 @c All text is ignored before the setfilename.
 @setfilename ../info/texinfo.info
+@settitle Texinfo @value{edition}
 
-@set UPDATED 28 September 1999
-@set EDITION 4.0
-@set VERSION 4.0
-@settitle Texinfo @value{VERSION}
+@c Edition number is now the same as the Texinfo distribution version number.
+@set edition 3.12
+@set update-month February 1998
+@set update-date 27 @value{update-month}
 
 @c Define a new index for options.
 @defcodeindex op
 @footnotestyle separate
 @paragraphindent 2
 @finalout
-
 @comment %**end of header
 
+@c Before release, run C-u C-c C-u C-a (texinfo-all-menus-update with a
+@c prefix arg).  This updates the node pointers, which texinfmt.el needs.
+
 @dircategory Texinfo documentation system
 @direntry
 * Texinfo: (texinfo).           The GNU documentation format.
-* install-info: (texinfo)Invoking install-info. Update info/dir entries.
-* texi2dvi: (texinfo)Format with texi2dvi.      Print Texinfo documents.
-* texindex: (texinfo)Format with tex/texindex.  Sort Texinfo index files.
+* install-info: (texinfo)Invoking install-info. Updating info/dir entries.
+* texi2dvi: (texinfo)Format with texi2dvi.      Printing Texinfo documentation.
+* texindex: (texinfo)Format with tex/texindex.  Sorting Texinfo index files.
 * makeinfo: (texinfo)makeinfo Preferred.        Translate Texinfo source.
 @end direntry
 
-@c Before release, run C-u C-c C-u C-a (texinfo-all-menus-update with a
-@c prefix arg).  This updates the node pointers, which texinfmt.el needs.
-
 @c Set smallbook if printing in smallbook format so the example of the
 @c smallbook font is actually written using smallbook; in bigbook, a kludge
 @c is used for TeX output.  Do this through the -t option to texi2dvi,
 @c set smallbook
 @c @@clear smallbook
 
-@c If you like blank pages.  Can add through texi2dvi -t.
-@c setchapternewpage odd
-
 @c Currently undocumented command, 5 December 1993:
 @c nwnode          (Same as node, but no warnings; for `makeinfo'.)
 
 @ifinfo
 This file documents Texinfo, a documentation system that can produce
-both online information and a printed manual from a single source file.
+both on-line information and a printed manual from a single source file.
 
-Copyright (C) 1988, 90, 91, 92, 93, 95, 96, 97, 98, 99
+Copyright (C) 1988, 90, 91, 92, 93, 95, 96, 97, 98
 Free Software Foundation, Inc.
 
-This edition is for Texinfo version @value{VERSION}, @value{UPDATED}.
+This edition is for Texinfo version @value{edition}.
 
 Permission is granted to make and distribute verbatim copies of
 this manual provided the copyright notice and this permission notice
@@ -81,6 +78,7 @@ except that this permission notice may be stated in a translation approved
 by the Free Software Foundation.
 @end ifinfo
 
+@setchapternewpage odd
 
 @shorttitlepage Texinfo
 
@@ -88,27 +86,25 @@ by the Free Software Foundation.
 @c use the new format for titles
 @title Texinfo
 @subtitle The GNU Documentation Format
-@subtitle for Texinfo version @value{VERSION}, @value{UPDATED}
+@subtitle for Texinfo version @value{edition}
+@subtitle @value{update-month}
 
-@author Robert J. Chassell
-@author Richard M. Stallman
+@author Robert J.@: Chassell
+@author Richard M.@: Stallman
 
 @c Include the Distribution inside the titlepage so
 @c that headings are turned off.
 
 @page
 @vskip 0pt plus 1filll
-Copyright @copyright{} 1988, 90, 91, 92, 93, 95, 96, 97, 98, 99
+Copyright @copyright{} 1988, 90, 91, 92, 93, 95, 96, 97, 98
 Free Software Foundation, Inc.
 
-This manual is for Texinfo version @value{VERSION}, @value{UPDATED}.
-
 Published by the Free Software Foundation @*
 59 Temple Place Suite 330 @*
 Boston, MA 02111-1307 @*
 USA @*
-ISBN 1-882114-67-1 @c for version 4.0, September 1999.
-@c ISBN 1-882114-65-5 @c for version 3.12, March 1998.
+ISBN 1-882114-65-5
 @c ISBN 1-882114-63-9 is for edition 2.20 of 28 February 1995
 @c ISBN 1-882114-64-7 is for edition 2.24 of November 1996.
 
@@ -129,22 +125,65 @@ by the Free Software Foundation.
 Cover art by Etienne Suvasa.
 @end titlepage
 
-@summarycontents
-@contents
-
-@ifnottex
-@node Top
+@ifinfo
+@node Top, Copying, (dir), (dir)
 @top Texinfo
 
 Texinfo is a documentation system that uses a single source file to
-produce both online information and printed output.
+produce both on-line information and printed output.@refill
 
 The first part of this master menu lists the major nodes in this Info
 document, including the @@-command and concept indices.  The rest of
-the menu lists all the lower level nodes in the document.
+the menu lists all the lower level nodes in the document.@refill
+
+This is Edition @value{edition} of the Texinfo documentation,
+@w{@value{update-date}}.
+@end ifinfo
 
-This is Edition @value{VERSION} of the Texinfo manual, updated @value{UPDATED}.
-@end ifnottex
+@c Here is a spare copy of the chapter menu entry descriptions,
+@c in case they are accidently deleted
+@ignore
+Your rights.
+Texinfo in brief.
+How to use Texinfo mode.
+What is at the beginning of a Texinfo file?
+What is at the end of a Texinfo file?
+How to create chapters, sections, subsections,
+  appendices, and other parts.
+How to provide structure for a document.
+How to write nodes.
+How to write menus.
+How to write cross references.
+How to mark words and phrases as code,
+  keyboard input, meta-syntactic
+  variables, and the like.
+How to write quotations, examples, etc.
+How to write lists and tables.
+How to create indices.
+How to insert @@-signs, braces, etc.
+How to indicate results of evaluation,
+  expansion of macros, errors, etc.
+How to force and prevent line and page breaks.
+How to describe functions and the like in a uniform manner.
+How to write footnotes.
+How to specify text for either @TeX{} or Info.
+How to print hardcopy.
+How to create an Info file.
+How to install an Info file
+A list of all the Texinfo @@-commands.
+Hints on how to write a Texinfo document.
+A sample Texinfo file to look at.
+Tell readers they have the right to copy
+  and distribute.
+How to incorporate other Texinfo files.
+How to write page headings and footings.
+How to find formatting mistakes.
+All about paragraph refilling.
+A description of @@-Command syntax.
+Texinfo second edition features.
+A menu containing commands and variables.
+A menu covering many topics.
+@end ignore
 
 @menu
 * Copying::                     Your rights.
@@ -167,12 +206,13 @@ This is Edition @value{VERSION} of the Texinfo manual, updated @value{UPDATED}.
 * Breaks::                      How to force and prevent line and page breaks.
 * Definition Commands::         How to describe functions and the like
                                   in a uniform manner.
+* Footnotes::                   How to write footnotes.
 * Conditionals::                How to specify text for either @TeX{} or Info.
-* Internationalization::        
-* Defining New Texinfo Commands::  
-* Hardcopy::                    How to convert a Texinfo file to a file
+* Macros::                      Defining new Texinfo commands.
+* Format/Print Hardcopy::       How to convert a Texinfo file to a file
                                   for printing and how to print that file.
-* Creating and Installing Info Files::  
+* Create an Info File::         Convert a Texinfo file into an Info file.
+* Install an Info File::        Make an Info file accessible to users.
 * Command List::                All the Texinfo @@-commands.
 * Tips::                        Hints on how to write a Texinfo document.
 * Sample Texinfo File::         A sample Texinfo file to look at.
@@ -193,17 +233,18 @@ This is Edition @value{VERSION} of the Texinfo manual, updated @value{UPDATED}.
 
 Overview of Texinfo
 
-* Reporting Bugs::              Submitting effective bug reports.
-* Using Texinfo::               Create printed or online output.
+* Using Texinfo::               Create a conventional printed book
+                                  or an Info file.
 * Info Files::                  What is an Info file?
 * Printed Books::               Characteristics of a printed book or manual.
 * Formatting Commands::         @@-commands are used for formatting.
 * Conventions::                 General rules for writing a Texinfo file.
-* Comments::                    Writing comments and ignored text in general.
+* Comments::                    How to write comments and mark regions that
+                                  the formatting commands will ignore.
 * Minimum::                     What a Texinfo file must have.
 * Six Parts::                   Usually, a Texinfo file has six parts.
 * Short Sample::                A short sample Texinfo file.
-* Acknowledgements and History::  Contributors and genesis.
+* Acknowledgements::            
 
 Using Texinfo Mode
 
@@ -244,8 +285,7 @@ The Texinfo File Header
 * setfilename::                 Tell Info the name of the Info file.
 * settitle::                    Create a title for the printed work.
 * setchapternewpage::           Start chapters on right-hand pages.
-* paragraphindent::             Specify paragraph indentation.
-* exampleindent::               Specify environment indentation.
+* paragraphindent::             An option to specify paragraph indentation.
 * End of Header::               Formatting a region requires this.
 
 The Title and Copyright Pages
@@ -294,9 +334,8 @@ Nodes
 * Two Paths::                   Different commands to structure
                                   Info output and printed output.
 * Node Menu Illustration::      A diagram, and sample nodes and menus.
-* node::                        Creating nodes, in detail.
-* makeinfo Pointer Creation::   Letting makeinfo determine node pointers.
-* anchor::                      Defining arbitrary cross-reference targets.
+* node::                        How to write a node, in detail.
+* makeinfo Pointer Creation::   How to create node pointers with @code{makeinfo}.
 
 The @code{@@node} Command
 
@@ -345,26 +384,23 @@ Marking Words and Phrases
 Indicating Definitions, Commands, etc.
 
 * Useful Highlighting::         Highlighting provides useful information.
-* code::                        Indicating program code.
-* kbd::                         Showing keyboard input.
-* key::                         Specifying keys.
-* samp::                        Showing a literal sequence of characters.
-* var::                         Indicating metasyntactic variables.
-* env::                         Indicating environment variables.
-* file::                        Indicating file names.
-* command::                     Indicating command names.
-* option::                      Indicating option names.
-* dfn::                         Specifying definitions.
-* cite::                        Referring to books not in the  Info system.
-* acronym::                     Indicating acronyms.
-* url::                         Indicating a World Wide Web reference.
-* email::                       Indicating an electronic mail address.
+* code::                        How to indicate code.
+* kbd::                         How to show keyboard input.
+* key::                         How to specify keys.
+* samp::                        How to show a literal sequence of characters.
+* var::                         How to indicate a metasyntactic variable.
+* file::                        How to indicate the name of a file.
+* dfn::                         How to specify a definition.
+* cite::                        How to refer to a book that is not in Info.
+* url::                         How to indicate a world wide web reference.
+* email::                       How to indicate an electronic mail address.
 
 Emphasizing Text
 
 * emph & strong::               How to emphasize text in Texinfo.
 * Smallcaps::                   How to use the small caps font.
 * Fonts::                       Various font commands for printed output.
+* Customized Highlighting::     How to define highlighting commands.
 
 Quotations and Examples
 
@@ -373,8 +409,8 @@ Quotations and Examples
 * quotation::                   How to write a quotation.
 * example::                     How to write an example in a fixed-width font.
 * noindent::                    How to prevent paragraph indentation.
-* lisp::                        How to illustrate Lisp code.
-* small::                       Forms for @code{@@smallbook}.
+* Lisp Example::                How to illustrate Lisp code.
+* smallexample & smalllisp::    Forms for the @code{@@smallbook} option.
 * display::                     How to write an example in the current font.
 * format::                      How to write an example that does not narrow
                                   the margins.
@@ -401,7 +437,7 @@ Multi-column Tables
 * Multitable Column Widths::    Defining multitable column widths.
 * Multitable Rows::             Defining multitable rows, with examples.
 
-Indices
+Creating Indices
 
 * Index Entries::               Choose different words for index entries.
 * Predefined Indices::          Use different indices for different kinds
@@ -431,7 +467,6 @@ Special Insertions
 * math::                        How to format a mathematical expression.
 * Glyphs::                      How to indicate results of evaluation,
                                   expansion of macros, errors, etc.
-* Footnotes::                   How to include footnotes.
 * Images::                      How to include graphics.
 
 Inserting @@ and Braces
@@ -468,17 +503,12 @@ Glyphs for Examples
 
 Glyphs Summary
 
-* result::
-* expansion::
-* Print Glyph::
-* Error Glyph::
-* Equivalence::
-* Point Glyph::
-
-Footnotes
-
-* Footnote Commands::           How to write a footnote in Texinfo.
-* Footnote Styles::             Controlling how footnotes appear in Info.
+* result::                      
+* expansion::                   
+* Print Glyph::                 
+* Error Glyph::                 
+* Equivalence::                 
+* Point Glyph::                 
 
 Making and Preventing Breaks
 
@@ -510,6 +540,11 @@ The Definition Commands
 * Abstract Objects::            Commands for object-oriented programming.
 * Data Types::                  The definition command for data types.
 
+Footnotes
+
+* Footnote Commands::           How to write a footnote in Texinfo.
+* Footnote Styles::             Controlling how footnotes appear in Info.
+
 Conditionally Visible Text
 
 * Conditional Commands::        Specifying text for HTML, Info, or @TeX{}.
@@ -522,45 +557,30 @@ Conditionally Visible Text
 @code{@@set}, @code{@@clear}, and @code{@@value}
 
 * ifset ifclear::               Format a region if a flag is set.
-* set value::                   Expand a flag variable to a string.
+* value::                       Replace a flag with a string.
 * value Example::               An easy way to update edition information.
 
-Internationalization
-
-* documentlanguage::            Declaring the current language.
-* documentencoding::            Declaring the input encoding.
+Macros: Defining New Texinfo Commands
 
-Defining New Texinfo Commands
-
-* Defining Macros::             Defining and undefining new commands.
+* Defining Macros::             Both defining and undefining new commands.
 * Invoking Macros::             Using a macro, once you've defined it.
-* Macro Details::               Beyond basic macro usage.
-* alias::                       Command aliases.
-* definfoenclose::              Customized highlighting.
 
-Formatting and Printing Hardcopy
+Format and Print Hardcopy
 
 * Use TeX::                     Use @TeX{} to format for hardcopy.
-* Format with tex/texindex::    How to format with explicit shell commands.
-* Format with texi2dvi::        A simpler way to format.
+* Format with tex/texindex::    How to format in a shell.
+* Format with texi2dvi::        A simpler way to use the shell.
 * Print with lpr::              How to print.
 * Within Emacs::                How to format and print from an Emacs shell.
 * Texinfo Mode Printing::       How to format and print in Texinfo mode.
 * Compile-Command::             How to print using Emacs's compile command.
 * Requirements Summary::        @TeX{} formatting requirements summary.
-* Preparing for TeX::           What to do before you use @TeX{}.
+* Preparing for TeX::           What you need to do to use @TeX{}.
 * Overfull hboxes::             What are and what to do with overfull hboxes.
 * smallbook::                   How to print small format books and manuals.
 * A4 Paper::                    How to print on European A4 paper.
-* pagesizes::                   How to print with customized page sizes.
 * Cropmarks and Magnification::  How to print marks to indicate the size
                                 of pages and how to print scaled up output.
-* PDF Output::                  Portable Document Format output.
-
-Creating and Installing Info Files
-
-* Creating an Info File::       
-* Install an Info File::        
 
 Creating an Info File
 
@@ -575,11 +595,10 @@ Creating an Info File
 * Batch Formatting::            How to format for Info in Emacs Batch mode.
 * Tag and Split Files::         How tagged and split files help Info
                                   to run better.
-* makeinfo html::               Generating HTML output.
 
 Installing an Info File
 
-* Directory File::              The top level menu for all Info files.
+* Directory file::              The top level menu for all Info files.
 * New Info File::               Listing a new info file.
 * Other Info Directories::      How to specify Info files that are
                                   located in other directories.
@@ -626,19 +645,16 @@ Finding Badly Referenced Nodes
 * Unsplit::                     How to create an unsplit file.
 * Tagifying::                   How to tagify a file.
 * Splitting::                   How to split a file manually.
-@end detailmenu
-@end menu
 
-@c Reward readers for getting to the end of the menu :).
-@c Contributed by Arnold Robbins.
-@quotation
-Documentation is like sex: when it is good, it is very, very good; and
-when it is bad, it is better than nothing.
----Dick Brandon
-@end quotation
+How to Obtain @TeX{}
 
+@c * New Texinfo Mode Commands::   The updating commands are especially useful.
+@c * New Commands::                Many newly described @@-commands.
+@end detailmenu
+@end menu
 
-@node Copying
+@node Copying, Overview, Top, Top
+@comment  node-name, next, previous,  up
 @unnumbered Texinfo Copying Conditions
 @cindex Copying conditions
 @cindex Conditions for copying Texinfo
@@ -674,171 +690,100 @@ their recipients to know that what they have is not what we distributed,
 so that any problems introduced by others will not reflect on our
 reputation.@refill
 
-The precise conditions of the licenses for the programs currently
+  The precise conditions of the licenses for the programs currently
 being distributed that relate to Texinfo are found in the General Public
-Licenses that accompany them.
-
+Licenses that accompany them.@refill
 
-@node Overview
+@node Overview, Texinfo Mode, Copying, Top
+@comment  node-name,  next,  previous,  up
 @chapter Overview of Texinfo
 @cindex Overview of Texinfo
 @cindex Texinfo overview
 
-@dfn{Texinfo}@footnote{The first syllable of ``Texinfo'' is pronounced
-like ``speck'', not ``hex''.  This odd pronunciation is derived from,
-but is not the same as, the pronunciation of @TeX{}.  In the word
-@TeX{}, the @samp{X} is actually the Greek letter ``chi'' rather than
-the English letter ``ex''.  Pronounce @TeX{} as if the @samp{X} were the
-last sound in the name `Bach'; but pronounce Texinfo as if the @samp{x}
-were a `k'.  Spell ``Texinfo'' with a capital ``T'' and the other
-letters in lower case.}  is a documentation system that uses a single
-source file to produce both online information and printed output.  This
-means that instead of writing two different documents, one for the
-online information and the other for a printed work, you need write only
-one document.  Therefore, when the work is revised, you need revise only
-that one document.
+@dfn{Texinfo}@footnote{Note that the first syllable of ``Texinfo'' is
+pronounced like ``speck'', not ``hex''.  This odd pronunciation is
+derived from, but is not the same as, the pronunciation of @TeX{}.  In
+the word @TeX{}, the @samp{X} is actually the Greek letter ``chi''
+rather than the English letter ``ex''.  Pronounce @TeX{} as if the
+@samp{X} were the last sound in the name `Bach'; but pronounce Texinfo
+as if the @samp{x} were a `k'.  Spell ``Texinfo'' with a capital ``T''
+and write the other letters in lower case.}
+is a documentation system that uses a single source file to produce both
+on-line information and printed output.  This means that instead of
+writing two different documents, one for the on-line help or other on-line
+information and the other for a typeset manual or other printed work, you
+need write only one document.  When the work is revised, you need revise
+only one document.  (You can read the on-line information, known as an
+@dfn{Info file}, with an Info documentation-reading program.)@refill
 
 @menu
-* Reporting Bugs::              Submitting effective bug reports.
-* Using Texinfo::               Create printed or online output.
+* Using Texinfo::               Create a conventional printed book
+                                  or an Info file.
 * Info Files::                  What is an Info file?
 * Printed Books::               Characteristics of a printed book or manual.
 * Formatting Commands::         @@-commands are used for formatting.
 * Conventions::                 General rules for writing a Texinfo file.
-* Comments::                    Writing comments and ignored text in general.
+* Comments::                    How to write comments and mark regions that
+                                  the formatting commands will ignore.
 * Minimum::                     What a Texinfo file must have.
 * Six Parts::                   Usually, a Texinfo file has six parts.
 * Short Sample::                A short sample Texinfo file.
-* Acknowledgements and History::  Contributors and genesis.
+* Acknowledgements::            
 @end menu
 
-
-@node Reporting Bugs
-@section Reporting Bugs
-
-@cindex Bugs, reporting
-@cindex Suggestions for Texinfo, making
-@cindex Reporting bugs
-We welcome bug reports or suggestions for the Texinfo system, both
-programs and documentation.  Please email them to
-@email{bug-texinfo@@gnu.org}.  You can get the latest version of Texinfo
-from @uref{ftp://ftp.gnu.org/gnu/texinfo/} and its mirrors worldwide.
-
-@cindex Checklist for bug reports
-For bug reports, please include enough information for the maintainers
-to reproduce the problem.  Generally speaking, that means:
-
-@itemize @bullet
-@item the version number of Texinfo and the program(s) or manual(s) involved.
-@item hardware, operating system, and compiler versions.
-@item any unusual options you gave to @command{configure}.
-@item the contents of any input files necessary to reproduce the bug.
-@item a description of the problem and samples of any erroneous output.
-@item anything else that you think would be helpful.
-@end itemize
-
-When in doubt whether something is needed or not, include it.  It's
-better to include too much than to leave out something important.
-
-Patches are most welcome; if possible, please make them with
-@samp{@w{diff -c}} (@pxref{Top,, Overview, diffutils, Comparing and
-Merging Files}) and include @file{ChangeLog} entries (@pxref{Change
-Log,,, emacs, The GNU Emacs Manual}).
-
-When sending email, please do not encode or split the messages in any
-way if possible; it's much easier to deal with one plain text message,
-however large, than many small ones.
-@uref{ftp://ftp.gnu.org/gnu/sharutils/, GNU shar} is a convenient way of
-packaging multiple and/or binary files for email.
-
-
-@node Using Texinfo
-@section Using Texinfo
-
-@cindex Using Texinfo in general
-@cindex Texinfo, introduction to
-@cindex Introduction to Texinfo
+@node Using Texinfo, Info Files, Overview, Overview
+@ifinfo
+@heading Using Texinfo
+@end ifinfo
 
 Using Texinfo, you can create a printed document with the normal
-features of a book, including chapters, sections, cross references, and
-indices.  From the same Texinfo source file, you can create a
-menu-driven, online Info file with nodes, menus, cross references, and
-indices.  You can also create from that same source file an HTML output
-file suitable for use with a web browser.  @cite{The GNU Emacs Manual}
-is a good example of a Texinfo file, as is this manual.
+features of a book, including chapters, sections, cross references,
+and indices.  From the same Texinfo source file, you can create a
+menu-driven, on-line Info file with nodes, menus, cross references,
+and indices.  You can, if you wish, make the chapters and sections of
+the printed document correspond to the nodes of the on-line
+information; and you use the same cross references and indices for
+both the Info file and the printed work.  @cite{The GNU
+Emacs Manual} is a good example of a Texinfo file, as is this manual.@refill
 
 To make a printed document, you process a Texinfo source file with the
-@TeX{} typesetting program (but the Texinfo language is very different
-from @TeX{}'s usual language, plain @TeX{}).  This creates a DVI file
-that you can typeset and print as a book or report (@pxref{Hardcopy}).
-
-@pindex makeinfo
-To output an Info file, process your Texinfo source with the
-@code{makeinfo} utility or Emacs's @code{texinfo-format-buffer} command.
-You can install the result in your Info tree (@pxref{Install an Info
-File}).
-
-To output an HTML file, process your Texinfo source with @code{makeinfo}
-using the @samp{--html} option.  You can (for example) install the
-result on your web site.
-
-@cindex Output formats, supporting more
-@cindex Docbook output format
-@cindex SGML-tools output format
-If you are a programmer and would like to contribute to the GNU project
-by implementing additional output formats for Texinfo, that would be
-excellent.  But please do not write a separate translator texi2foo for
-your favorite format foo!  That is the hard way to do the job, and makes
-extra work in subsequent maintenance, since the Texinfo language is
-continually being enhanced and updated.  Instead, the best approach is
-modify @code{makeinfo} to generate the new format, as it does now for
-Info and HTML.
-
-@TeX{} works with virtually all printers; Info works with virtually all
-computer terminals; the HTML output works with virtually all web
-browsers.  Thus Texinfo can be used by almost any computer user.
-
-@cindex Source file
-A Texinfo source file is a plain @sc{ascii} file containing text and
+@TeX{} typesetting program.  This creates a DVI file that you can
+typeset and print as a book or report.  (Note that the Texinfo language
+is completely different from @TeX{}'s usual language, plain @TeX{}.)  If
+you do not have @TeX{}, but do have @code{troff} or @code{nroff}, you
+can use the @code{texi2roff} program instead.@refill
+
+To make an Info file, you process a Texinfo source file with the
+@code{makeinfo} utility or Emacs's @code{texinfo-format-buffer} command;
+this creates an Info file that you can install on-line.@refill
+
+@TeX{} and @code{texi2roff} work with many types of printers; similarly,
+Info works with almost every type of computer terminal.  This power
+makes Texinfo a general purpose system, but brings with it a constraint,
+which is that a Texinfo file may contain only the customary
+``typewriter'' characters (letters, numbers, spaces, and punctuation
+marks) but no special graphics.@refill
+
+A Texinfo file is a plain @sc{ascii} file containing text and
 @dfn{@@-commands} (words preceded by an @samp{@@}) that tell the
-typesetting and formatting programs what to do.  You may edit a Texinfo
-file with any text editor; but it is especially convenient to use GNU
-Emacs since that editor has a special mode, called Texinfo mode, that
-provides various Texinfo-related features.  (@xref{Texinfo Mode}.)
-
-Before writing a Texinfo source file, you should learn about nodes,
-menus, cross references, and the rest, for example by reading this
-manual.
+typesetting and formatting programs what to do.  You may edit a
+Texinfo file with any text editor; but it is especially convenient to
+use GNU Emacs since that editor has a special mode, called Texinfo
+mode, that provides various Texinfo-related features.  (@xref{Texinfo
+Mode}.)@refill
+
+Before writing a Texinfo source file, you should become familiar with
+the Info documentation reading program and learn about nodes,
+menus, cross references, and the rest.  (@inforef{Top, info, info},
+for more information.)@refill
 
-You can use Texinfo to create both online help and printed manuals;
+You can use Texinfo to create both on-line help and printed manuals;
 moreover, Texinfo is freely redistributable.  For these reasons, Texinfo
-is the official documentation format of the GNU project.  More
-information is available at the @uref{http://www.gnu.org/doc/, GNU
-documentation web page}.
-
-@cindex Man page output, not supported
-From time to time, proposals are made to generate traditional Unix man
-pages from Texinfo source.  This is not likely to ever be supported,
-because man pages have a very strict conventional format.  Merely
-enhancing @command{makeinfo} to output troff format would be
-insufficient.  Generating a good man page therefore requires a
-completely different source than the typical Texinfo applications of
-generating a good user manual or a good reference manual.  This makes
-generating man pages incompatible with the Texinfo design goal of not
-having to document the same information in different ways for different
-output formats.  You might as well just write the man page directly.
-
-@pindex help2man 
-@cindex O'Dea, Brendan
-If you wish to support man pages, the program @command{help2man} may be
-useful; it generates a traditional man page from the @samp{--help}
-output of a program.  In fact, this is currently used to generate man
-pages for the Texinfo programs themselves.  It is free software written
-by Brendan O'Dea, available from
-@uref{http://www.ozemail.com.au/~bod/help2man.tar.gz}.
-
-
-@node Info Files
+is the format in which documentation for GNU utilities and libraries is
+written.@refill
+
+@node Info Files, Printed Books, Using Texinfo, Overview
+@comment  node-name,  next,  previous,  up
 @section Info files
 @cindex Info files
 
@@ -925,20 +870,8 @@ The @file{dir} file in the @file{info} directory serves as the
 departure point for the whole Info system.  From it, you can reach the
 `Top' nodes of each of the documents in a complete Info system.@refill
 
-@cindex URI syntax for Info
-If you wish to refer to an Info file in a URI, you can use the
-(unofficial) syntax exemplified in the following.  This works with
-Emacs/W3, for example:
-@example
-info:///usr/info/emacs#Dissociated%20Press
-info:emacs#Dissociated%20Press
-info://localhost/usr/info/emacs#Dissociated%20Press
-@end example
-
-The @command{info} program itself does not follow URI's of any kind.
-
-
-@node Printed Books
+@node Printed Books, Formatting Commands, Info Files, Overview
+@comment  node-name,  next,  previous,  up
 @section Printed Books
 @cindex Printed book and manual characteristics
 @cindex Manual characteristics, printed
@@ -950,12 +883,9 @@ The @command{info} program itself does not follow URI's of any kind.
 A Texinfo file can be formatted and typeset as a printed book or manual.
 To do this, you need @TeX{}, a powerful, sophisticated typesetting
 program written by Donald Knuth.@footnote{You can also use the
-@pindex texi2roff@r{, unsupported software}
-@uref{ftp://tug.org/texi2roff.tar.gz, @code{texi2roff}} program if you
-do not have @TeX{}; since Texinfo is designed for use with @TeX{},
-@code{texi2roff} is not described here.  @code{texi2roff} is not part of
-the standard GNU distribution and is not maintained or up-to-date with
-all the Texinfo features described in this manual.}
+@code{texi2roff} program if you do not have @TeX{}; since Texinfo is
+designed for use with @TeX{}, @code{texi2roff} is not described here.
+@code{texi2roff} is not part of the standard GNU distribution.}
 
 A Texinfo-based book is similar to any other typeset, printed work: it
 can have a title page, copyright page, table of contents, and preface,
@@ -963,19 +893,18 @@ as well as chapters, numbered or unnumbered sections and subsections,
 page headers, cross references, footnotes, and indices.@refill
 
 You can use Texinfo to write a book without ever having the intention
-of converting it into online information.  You can use Texinfo for
+of converting it into on-line information.  You can use Texinfo for
 writing a printed novel, and even to write a printed memo, although
 this latter application is not recommended since electronic mail is so
 much easier.@refill
 
 @TeX{} is a general purpose typesetting program.  Texinfo provides a
-file @file{texinfo.tex} that contains information (definitions or
+file called @file{texinfo.tex} that contains information (definitions or
 @dfn{macros}) that @TeX{} uses when it typesets a Texinfo file.
 (@file{texinfo.tex} tells @TeX{} how to convert the Texinfo @@-commands
 to @TeX{} commands, which @TeX{} can then process to create the typeset
 document.)  @file{texinfo.tex} contains the specifications for printing
-a document.  You can get the latest version of @file{texinfo.tex} from
-@uref{ftp://ftp.gnu.org/gnu/texinfo.tex}.
+a document.@refill
 
 Most often, documents are printed on 8.5 inch by 11 inch
 pages (216@dmn{mm} by 280@dmn{mm}; this is the default size), but you
@@ -995,7 +924,7 @@ light-hearted, young and cheery.@refill
 @TeX{} is freely distributable.  It is written in a superset of Pascal
 called WEB and can be compiled either in Pascal or (by using a
 conversion program that comes with the @TeX{} distribution) in C.
-(@xref{TeX Mode, ,@TeX{} Mode, emacs, The GNU Emacs Manual}, for information
+(@xref{TeX Mode, ,@TeX{} Mode, xemacs, XEmacs User's Manual}, for information
 about @TeX{}.)@refill
 
 @TeX{} is very powerful and has a great many features.  Because a
@@ -1004,8 +933,7 @@ character-only terminal in Info form and in a typeset book, the
 formatting commands that Texinfo supports are necessarily
 limited.@refill
 
-To get a copy of @TeX{}, see
-@ref{Obtaining TeX, , How to Obtain @TeX{}}.
+@xref{Obtaining TeX, , How to Obtain @TeX{}}.
 
 
 @node Formatting Commands, Conventions, Printed Books, Overview
@@ -1035,17 +963,17 @@ numeric characters.  Similarly, you can print the output generated by
 @TeX{} on a wide variety of printers.@refill
 
 Depending on what they do or what arguments@footnote{The word
-@dfn{argument} comes from the way it is used in mathematics and does not
-refer to a dispute between two people; it refers to the information
-presented to the command.  According to the @cite{Oxford English
-Dictionary}, the word derives from the Latin for @dfn{to make clear,
-prove}; thus it came to mean `the evidence offered as proof', which is
-to say, `the information offered', which led to its mathematical
-meaning.  In its other thread of derivation, the word came to mean `to
-assert in a manner against which others may make counter assertions',
-which led to the meaning of `argument' as a dispute.} they take, you
-need to write @@-commands on lines of their own or as part of
-sentences:
+@dfn{argument} comes from the way it is used in mathematics and does
+not refer to a disputation between two people; it refers to the
+information presented to the command.  According to the @cite{Oxford
+English Dictionary}, the word derives from the Latin for @dfn{to make
+clear, prove}; thus it came to mean `the evidence offered as proof',
+which is to say, `the information offered', which led to its
+mathematical meaning.  In its other thread of derivation, the word
+came to mean `to assert in a manner against which others may make
+counter assertions', which led to the meaning of `argument' as a
+disputation.} they take, you need to write @@-commands on lines of
+their own or as part of sentences:@refill
 
 @itemize @bullet
 @item
@@ -1070,14 +998,12 @@ wish (but usually within a sentence) with its argument,
 marks text as being code.)@refill
 
 @item
-Write a command such as @code{@@example} on a line of its own; write the
-body-text on following lines; and write the matching @code{@@end}
-command, @code{@@end example} in this case, at the on a line of its own
-after the body-text. (@code{@@example} @dots{} @code{@@end example}
-indents and typesets body-text as an example.)  It's usually ok to
-indent environment commands like this, but in complicated and
-hard-to-define circumstances the extra spaces cause extra space to
-appear in the output, so beware.
+Write a command such as @code{@@example} at the beginning of a line of
+its own; write the body-text on following lines; and write the matching
+@code{@@end} command, @code{@@end example} in this case, at the
+beginning of a line of its own after the body-text. (@code{@@example}
+@dots{} @code{@@end example} indents and typesets body-text as an
+example.)@refill
 @end itemize
 
 @noindent
@@ -1100,10 +1026,6 @@ syntax, see @ref{Command Syntax, , @@-Command Syntax}.)@refill
 @cindex Syntactic conventions
 @cindex Conventions, syntactic
 
-This section describes the general conventions used in all Texinfo documents.
-
-@itemize @bullet
-@item
 All printable @sc{ascii} characters except @samp{@@}, @samp{@{} and
 @samp{@}} can appear in a Texinfo file and stand for themselves.
 @samp{@@} is the escape character which introduces commands.
@@ -1112,7 +1034,6 @@ certain commands.  To put one of these special characters into the
 document, put an @samp{@@} character in front of it, like this:
 @samp{@@@@}, @samp{@@@{}, and @samp{@@@}}.@refill
 
-@item
 @ifinfo
 It is customary in @TeX{} to use doubled single-quote characters to
 begin and end quotations: ` ` and ' ' (but without a space between the
@@ -1123,26 +1044,23 @@ single-quote characters to @sc{ascii} double-quotes: ` ` and ' ' to " .@refill
 @end ifinfo
 @iftex
 It is customary in @TeX{} to use doubled single-quote characters to
-begin and end quotations: @w{@t{ `` }} and @w{@t{ '' }}.  This
+begin and end quotations: @w{@tt{ `` }} and @w{@tt{ '' }}.  This
 convention should be followed in Texinfo files.  @TeX{} converts
 doubled single-quote characters to left- and right-hand doubled
 quotation marks, ``like this'', and Info converts doubled single-quote
-characters to @sc{ascii} double-quotes: @w{@t{ `` }} and
-@w{@t{ '' }} to @w{@t{ " }}.@refill
+characters to @sc{ascii} double-quotes: @w{@tt{ `` }} and
+@w{@tt{ '' }} to @w{@tt{ " }}.@refill
 @end iftex
 
-@item
 Use three hyphens in a row, @samp{---}, for a dash---like this.  In
 @TeX{}, a single or double hyphen produces a printed dash that is
 shorter than the usual typeset dash. Info reduces three hyphens to two
 for display on the screen.
 
-@item
 To prevent a paragraph from being indented in the printed manual, put
 the command @code{@@noindent} on a line by itself before the
 paragraph.@refill
 
-@item
 If you mark off a region of the Texinfo file with the @code{@@iftex}
 and @w{@code{@@end iftex}} commands, that region will appear only in
 the printed copy; in that region, you can use certain commands
@@ -1153,9 +1071,8 @@ region, you can use Info commands that you cannot use in @TeX{}.
 Similarly for @code{@@ifhtml @dots{} @@end ifhtml},
 @code{@@ifnothtml @dots{} @@end ifnothtml},
 @code{@@ifnotinfo @dots{} @@end ifnotinfo},
-@code{@@ifnottex @dots{} @@end ifnottex}.
+@code{@@ifnottex @dots{} @@end ifnottex},
 @xref{Conditionals}.
-@end itemize
 
 @cindex Tabs; don't use!
 @quotation
@@ -1173,6 +1090,9 @@ spaces when you press the @key{TAB} key.@refill
 @noindent
 Also, you can run @code{untabify} in Emacs to convert tabs in a region
 to multiple spaces.@refill
+
+@noindent
+Don't use tabs.
 @end quotation
 
 @node Comments, Minimum, Conventions, Overview
@@ -1182,7 +1102,7 @@ to multiple spaces.@refill
 You can write comments in a Texinfo file that will not appear in
 either the Info file or the printed manual by using the
 @code{@@comment} command (which may be abbreviated to @code{@@c}).
-Such comments are for the person who revises the Texinfo file.  All the
+Such comments are for the person who reads the Texinfo file.  All the
 text on a line that follows either @code{@@comment} or @code{@@c} is a
 comment; the rest of the line does not appear in either the Info file
 or the printed manual. (Often, you can write the @code{@@comment} or
@@ -1228,9 +1148,9 @@ within ignored text.
 @cindex Texinfo file minimum
 
 By convention, the names of Texinfo files end with one of the
-extensions @file{.texinfo}, @file{.texi}, @file{.txi}, or @file{.tex}.
-The longer extension is preferred since it describes more clearly to a
-human reader the nature of the file.  The shorter extensions are for
+extensions @file{.texinfo}, @file{.texi}, or @file{.tex}.  The longer
+extension is preferred since it describes more clearly to a human
+reader the nature of the file.  The shorter extensions are for
 operating systems that cannot handle long file names.@refill
 
 In order to be made into a printed manual and an Info file, a Texinfo
@@ -1332,7 +1252,8 @@ the table of contents, and the @code{@@bye} command on a line of its
 own.@refill
 @end table
 
-@node Short Sample
+@node Short Sample, Acknowledgements, Six Parts, Overview
+@comment  node-name,  next,  previous,  up
 @section A Short Sample Texinfo File
 @cindex Sample Texinfo file
 
@@ -1343,6 +1264,7 @@ the material is standard boilerplate; when you write a manual, simply
 insert the names for your own manual in this segment. (@xref{Beginning a
 File}.)@refill
 
+@noindent
 In the following, the sample text is @emph{indented}; comments on it are
 not.  The complete file, without any comments, is shown in
 @ref{Sample Texinfo File}.
@@ -1360,8 +1282,9 @@ name of the Info file and the title used in the header.
 @@c %**start of header
 @@setfilename sample.info
 @@settitle Sample Document
-@@setchapternewpage odd
 @@c %**end of header
+
+@@setchapternewpage odd
 @end group
 @end example
 
@@ -1470,14 +1393,15 @@ manual.
 @subheading Part 6: The End of the Document
 
 @noindent
-The end segment contains commands for generating an index in a node and
-unnumbered chapter of its own, (usually) for generating the table of
-contents, and the @code{@@bye} command that marks the end of the
-document.@refill
+The end segment contains commands both for generating an index in a node
+and unnumbered chapter of its own and for generating the table of
+contents; and it contains the @code{@@bye} command that marks the end of
+the document.@refill
 
 @example
 @group
 @@node    Concept Index,    ,  First Chapter, Top
+@@comment node-name,    next,  previous,      up
 @@unnumbered Concept Index
 @end group
 
@@ -1514,61 +1438,41 @@ an Info file; and @TeX{} typesets it for a printed
 manual.
 @end quotation
 
-
-@node Acknowledgements and History
-@section Acknowledgements and History
+@node Acknowledgements,  , Short Sample, Overview
+@comment  node-name,  next,  previous,  up
+@section Acknowledgements
 
 @cindex Stallman, Richard M.
 @cindex Chassell, Robert J.
 @cindex Berry, Karl
-Richard M.@: Stallman invented the Texinfo format, wrote the initial
-processors, and created Edition 1.0 of this manual.  @w{Robert J.@:
-Chassell} greatly revised and extended the manual, starting with Edition
-1.1.  Brian Fox was responsible for the standalone Texinfo distribution
-until version 3.8, and wrote the standalone @command{makeinfo} and
-@command{info}.  Karl Berry has made the updates since Texinfo 3.8 and
-subsequent releases, starting with Edition 2.22 of the manual.
+Richard M.@: Stallman wrote Edition 1.0 of this manual.  @w{Robert J.@:
+Chassell} revised and extended it, starting with Edition 1.1.  Karl
+Berry made updates for the Texinfo 3.8 and subsequent releases, starting
+with Edition 2.22.
 
 @cindex Pinard, Fran@,{c}ois
 @cindex Zuhn, David D.
 @cindex Weisshaus, Melissa
-@cindex Zaretskii, Eli
-@cindex Schwab, Andreas
-@cindex Weinberg, Zack
 Our thanks go out to all who helped improve this work, particularly to
 Fran@,{c}ois Pinard and @w{David D.@: Zuhn}, who tirelessly recorded and
 reported mistakes and obscurities; our special thanks go to Melissa
 Weisshaus for her frequent and often tedious reviews of nearly similar
-editions.  The indefatigable Eli Zaretskii and Andreas Schwab have
-provided patches beyond counting.  Zack Weinberg did the impossible by
-implementing the macro syntax in @file{texinfo.tex}.  Dozens of others
-have contributed patches and suggestions, they are gratefully
-acknowledged in the @file{ChangeLog} file.  Our mistakes are our own.
-
-@cindex Scribe
-@cindex Reid, Brian
-@cindex History of Texinfo
-A bit of history: in the 1970's at CMU, Brian Reid developed a program
-and format named Scribe to mark up documents for printing.  It used the
-@code{@@} character to introduce commands as Texinfo does and strived to
-describe document contents rather than formatting.
-
-@cindex Bolio
-@cindex Bo@TeX{}
-Meanwhile, people at MIT developed another, not too dissimilar format
-called Bolio.  This then was converted to using @TeX{} as its typesetting
-language: Bo@TeX{}.
-
-Bo@TeX{} could only be used as a markup language for documents to be
-printed, not for online documents.  Richard Stallman (RMS) worked on
-both Bolio and Bo@TeX{}.  He also developed a nifty on-line help format
-called Info, and then combined Bo@TeX{} and Info to create Texinfo, a
-mark up language for text that is intended to be read both on line and
-as printed hard copy.
-
-
-
-@node Texinfo Mode
+editions.  Our mistakes are our own.
+
+Please send suggestions and corrections to:
+
+@example
+@group
+@r{Internet address:}
+    bug-texinfo@@gnu.org
+@end group
+@end example
+
+@noindent
+Please include the manual's edition number and update date in your messages.
+
+@node Texinfo Mode, Beginning a File, Overview, Top
+@comment  node-name,  next,  previous,  up
 @chapter Using Texinfo Mode
 @cindex Texinfo mode
 @cindex Mode, using Texinfo
@@ -1605,8 +1509,7 @@ detail.@refill
 @end ifinfo
 
 Texinfo mode provides special features for working with Texinfo
-files.
-You can:@refill
+files:@refill
 
 @itemize @bullet
 @item
@@ -1658,16 +1561,16 @@ equivalents, such as appendices.  With this value for the page
 delimiter, you can jump from chapter title to chapter title with the
 @kbd{C-x ]} (@code{forward-page}) and @kbd{C-x [}
 (@code{backward-page}) commands and narrow to a chapter with the
-@kbd{C-x p} (@code{narrow-to-page}) command.  (@xref{Pages, , ,emacs,
-The GNU Emacs Manual}, for details about the page commands.)@refill
+@kbd{C-x p} (@code{narrow-to-page}) command.  (@xref{Pages, , , xemacs,
+XEmacs User's Manual}, for details about the page commands.)@refill
 
 You may name a Texinfo file however you wish, but the convention is to
-end a Texinfo file name with one of the extensions
-@file{.texinfo}, @file{.texi}, @file{.txi}, or @file{.tex}.  A longer
-extension is preferred, since it is explicit, but a shorter extension
-may be necessary for operating systems that limit the length of file
-names.  GNU Emacs automatically enters Texinfo mode when you visit a
-file with a @file{.texinfo}, @file{.texi} or @file{.txi}
+end a Texinfo file name with one of the three extensions
+@file{.texinfo}, @file{.texi}, or @file{.tex}.  A longer extension is
+preferred, since it is explicit, but a shorter extension may be
+necessary for operating systems that limit the length of file names.
+GNU Emacs automatically enters Texinfo mode when you visit a file with
+a @file{.texinfo} or  @file{.texi}
 extension.  Also, Emacs switches to Texinfo mode
 when you visit a
 file that has @samp{-*-texinfo-*-} in its first line.  If ever you are
@@ -1859,10 +1762,14 @@ cursor in the @file{*Occur*} buffer.@refill
 
 If you call @code{texinfo-show-structure} with a prefix argument by
 typing @w{@kbd{C-u C-c C-s}}, it will list not only those lines with the
-@@-commands for @code{@@chapter}, @code{@@section}, and the like, but
-also the @code{@@node} lines.  You can use @code{texinfo-show-structure}
-with a prefix argument to check whether the `Next', `Previous', and `Up'
-pointers of an @code{@@node} line are correct.
+@@-commands for @code{@@chapter}, @code{@@section}, and the like,
+but also the @code{@@node} lines.  (This is how the
+@code{texinfo-show-structure} command worked without an argument in
+the first version of Texinfo.  It was changed because @code{@@node}
+lines clutter up the @samp{*Occur*} buffer and are usually not
+needed.)  You can use @code{texinfo-show-structure} with a prefix
+argument to check whether the `Next', `Previous', and `Up' pointers of
+an @code{@@node} line are correct.@refill
 
 Often, when you are working on a manual, you will be interested only
 in the structure of the current chapter.  In this case, you can mark
@@ -1870,7 +1777,7 @@ off the region of the buffer that you are interested in by using the
 @kbd{C-x n n} (@code{narrow-to-region}) command and
 @code{texinfo-show-structure} will work on only that region.  To see
 the whole buffer again, use @w{@kbd{C-x n w}} (@code{widen}).
-(@xref{Narrowing, , , emacs, The GNU Emacs Manual}, for more
+(@xref{Narrowing, , , xemacs, XEmacs User's Manual}, for more
 information about the narrowing commands.)@refill
 
 @vindex page-delimiter
@@ -1881,7 +1788,7 @@ the chapter-level @@-commands.  This enables you to use the @kbd{C-x
 ]} (@code{forward-page}) and @kbd{C-x [} (@code{backward-page})
 commands to move forward and backward by chapter, and to use the
 @kbd{C-x p} (@code{narrow-to-page}) command to narrow to a chapter.
-@xref{Pages, , , emacs, The GNU Emacs Manual}, for more information
+@xref{Pages, , , xemacs, XEmacs User's Manual}, for more information
 about the page commands.@refill
 
 @node Updating Nodes and Menus, Info Formatting, Showing the Structure, Texinfo Mode
@@ -1916,18 +1823,18 @@ node pointers by hand, which is a tedious task.@refill
 @subheading The Updating Commands
 @end ifinfo
 
-You can use the updating commands to:@refill
+You can use the updating commands@refill
 
 @itemize @bullet
 @item
-insert or update the `Next', `Previous', and `Up' pointers of a
+to insert or update the `Next', `Previous', and `Up' pointers of a
 node,@refill
 
 @item
-insert or update the menu for a section, and@refill
+to insert or update the menu for a section, and@refill
 
 @item
-create a master menu for a Texinfo source file.@refill
+to create a master menu for a Texinfo source file.@refill
 @end itemize
 
 You can also use the commands to update all the nodes and menus in a
@@ -1949,11 +1856,11 @@ interpose only an @code{@@comment} line or an @code{@@ifinfo} line.
 
 Commands which work on a whole buffer require that the `Top' node be
 followed by a node with an @code{@@chapter} or equivalent-level command.
-The menu updating commands will not create a main or master menu for a
-Texinfo file that has only @code{@@chapter}-level nodes!  The menu
-updating commands only create menus @emph{within} nodes for lower level
+Note that the menu updating commands will not create a main or master
+menu for a Texinfo file that has only @code{@@chapter}-level nodes!  The
+menu updating commands only create menus @emph{within} nodes for lower level
 nodes.  To create a menu of chapters, you must provide a `Top'
-node.
+node.@refill
 
 The menu updating commands remove menu entries that refer to other Info
 files since they do not refer to nodes within the current buffer.  This
@@ -1999,7 +1906,7 @@ This updates all the nodes and menus completely and all at once.@refill
 @end table
 
 The other major updating commands do smaller jobs and are designed for
-the person who updates nodes and menus as he or she writes a Texinfo
+the person  who updates nodes and menus as he or she writes a Texinfo
 file.@refill
 
 @need 1000
@@ -2068,10 +1975,9 @@ The @code{texinfo-column-for-description} variable specifies the
 column to which menu descriptions are indented.  By default, the value
 is 32 although it is often useful to reduce it to as low as 24.  You
 can set the variable with the @kbd{M-x edit-options} command
-(@pxref{Edit Options, , Editing Variable Values, emacs, The GNU Emacs
-Manual}) or with the @kbd{M-x set-variable} command (@pxref{Examining,
-, Examining and Setting Variables, emacs, The GNU Emacs
-Manual}).@refill
+(@pxref{Edit Options, , Editing Variable Values, xemacs, XEmacs User's
+Manual}) or with the @kbd{M-x set-variable} command (@pxref{Examining, ,
+Examining and Setting Variables, xemacs, XEmacs User's Manual}).@refill
 
 Also, the @code{texinfo-indent-menu-description} command may be used to
 indent existing menu descriptions to a specified column.  Finally, if
@@ -2124,7 +2030,7 @@ In this example, `Comments' is the name of both the node and the
 section.  The next node is called `Minimum' and the previous node is
 called `Conventions'.  The `Comments' section is within the `Overview'
 node, which is specified by the `Up' pointer.  (Instead of an
-@code{@@comment} line, you may also write an @code{@@ifinfo} line.)@refill
+@code{@@comment} line, you can write an @code{@@ifinfo} line.)@refill
 
 If a file has a `Top' node, it must be called @samp{top} or @samp{Top}
 and be the first node in the file.@refill
@@ -2133,14 +2039,14 @@ The menu updating commands create a menu of sections within a chapter,
 a menu of subsections within a section, and so on.  This means that
 you must have a `Top' node if you want a menu of chapters.@refill
 
-Incidentally, the @code{makeinfo} command will create an Info file for a
-hierarchically organized Texinfo file that lacks `Next', `Previous' and
-`Up' pointers.  Thus, if you can be sure that your Texinfo file will be
-formatted with @code{makeinfo}, you have no need for the update node
-commands.  (@xref{Creating an Info File}, for more information about
-@code{makeinfo}.)  However, both @code{makeinfo} and the
-@code{texinfo-format-@dots{}} commands require that you insert menus in
-the file.
+Incidentally, the @code{makeinfo} command will create an Info file for
+a hierarchically organized Texinfo file that lacks `Next', `Previous'
+and `Up' pointers.  Thus, if you can be sure that your Texinfo file
+will be formatted with @code{makeinfo}, you have no need for the
+`update node' commands.  (@xref{Create an Info File, , Creating an
+Info File}, for more information about @code{makeinfo}.)  However,
+both @code{makeinfo} and the @code{texinfo-format-@dots{}} commands
+require that you insert menus in the file.@refill
 
 @node Other Updating Commands,  , Updating Requirements, Updating Nodes and Menus
 @comment  node-name,  next,  previous,  up
@@ -2171,11 +2077,11 @@ For example, the following marks a whole buffer as a region and inserts
 C-x h C-u M-x texinfo-insert-node-lines
 @end example
 
-This command inserts titles as node names in @code{@@node} lines; the
-@code{texinfo-start-menu-description} command (@pxref{Inserting,
-Inserting Frequently Used Commands}) inserts titles as descriptions in
-menu entries, a different action.  However, in both cases, you need to
-edit the inserted text.
+(Note that this command inserts titles as node names in @code{@@node}
+lines; the @code{texinfo-start-menu-description} command
+(@pxref{Inserting, Inserting Frequently Used Commands}) inserts titles
+as descriptions in menu entries, a different action.  However, in both
+cases, you need to edit the inserted text.)@refill
 
 @item M-x texinfo-multiple-files-update
 @findex texinfo-multiple-files-update @r{(in brief)}
@@ -2275,7 +2181,7 @@ M-x makeinfo-buffer
 For @TeX{} or the Info formatting commands to work, the file @emph{must}
 include a line that has @code{@@setfilename} in its header.@refill
 
-@xref{Creating an Info File}, for details about Info formatting.@refill
+@xref{Create an Info File}, for details about Info formatting.@refill
 
 @node Printing, Texinfo Mode Summary, Info Formatting, Texinfo Mode
 @comment node-name,  next,  previous,  up
@@ -2338,7 +2244,7 @@ on a line by itself.  (When you use @code{texinfo-tex-region}, you must
 surround the @code{@@settitle} line with start-of-header and
 end-of-header lines.)@refill
 
-@xref{Hardcopy}, for a description of the other @TeX{} related
+@xref{Format/Print Hardcopy}, for a description of the other @TeX{} related
 commands, such as @code{tex-show-print-queue}.@refill
 
 @node Texinfo Mode Summary,  , Printing, Texinfo Mode
@@ -2390,7 +2296,6 @@ C-c C-s         @r{List all the headings.}
 The @code{texinfo-master-menu} command creates a master menu; and can
 be used to update every node and menu in a file as well.@refill
 
-@c Probably should use @tables in this section.
 @example
 @group
 C-c C-u m
@@ -2492,7 +2397,7 @@ C-c C-t C-l     @r{Recenter the output buffer.}
 
 @subheading Other Updating Commands
 
-The remaining updating commands do not have standard keybindings because
+The `other updating commands' do not have standard keybindings because
 they are rarely used.
 
 @example
@@ -2703,13 +2608,12 @@ or else like this:
 * setfilename::                 Tell Info the name of the Info file.
 * settitle::                    Create a title for the printed work.
 * setchapternewpage::           Start chapters on right-hand pages.
-* paragraphindent::             Specify paragraph indentation.
-* exampleindent::               Specify environment indentation.
+* paragraphindent::             An option to specify paragraph indentation.
 * End of Header::               Formatting a region requires this.
 @end menu
 
-
-@node First Line
+@node First Line, Start of Header, Header, Header
+@comment  node-name,  next,  previous,  up
 @subsection The First Line of a Texinfo File
 @cindex First line of a Texinfo file
 @cindex Beginning line of a Texinfo file
@@ -2764,7 +2668,8 @@ A start-of-header line looks like this:@refill
 The odd string of characters, @samp{%**}, is to ensure that no other
 comment is accidentally taken for a start-of-header line.@refill
 
-@node setfilename
+@node setfilename, settitle, Start of Header, Header
+@comment  node-name,  next,  previous,  up
 @subsection @code{@@setfilename}
 @cindex Info file requires @code{@@setfilename}
 @findex setfilename
@@ -2782,13 +2687,11 @@ else on the line; anything on the line after the command is considered
 part of the file name, including what would otherwise be a
 comment.
 
-The @code{@@setfilename} line specifies the name of the output file to
-be generated.  This name should be different from the name of the
-Texinfo file.  There are two conventions for choosing the name: you can
-either remove the extension (such as @samp{.texi}) from the input file
-name, or replace it with the @samp{.info} extension.  When producing
-HTML output, @code{makeinfo} will replace any extension with
-@samp{html}, or add @samp{.html} if the given name has no extension.
+The @code{@@setfilename} line specifies the name of the Info file to be
+generated.  This name should be different from the name of the Texinfo
+file.  There are two conventions for choosing the name: you can either
+remove the @samp{.texi} extension from the input file name, or replace
+it with the @samp{.info} extension.
 
 Some operating systems cannot handle long file names.  You can run into
 a problem even when the file name you specify is itself short enough.
@@ -2798,24 +2701,19 @@ short indirect subfiles, and name them by appending @samp{-1},
 file name.  (@xref{Tag and Split Files, , Tag Files and Split Files}.)
 The subfile name @file{texinfo.info-10}, for example, is too long for
 some systems; so the Info file name for this document is @file{texinfo}
-rather than @file{texinfo.info}.  When @code{makeinfo} is running on
-operating systems such as MS-DOS which impose grave limits on file
-names, it will sometimes remove some characters from the original file
-name to leave enough space for the subfile suffix, thus producing files
-named @file{texin-10}, @file{gcc.i12}, etc.
+rather than @file{texinfo.info}.
 
 @cindex Ignored before @code{@@setfilename}
-@cindex @samp{\input} source line ignored
 The Info formatting commands ignore everything written before the
 @code{@@setfilename} line, which is why the very first line of
 the file (the @code{\input} line) does not show up in the output.
 
 @pindex texinfo.cnf
 The @code{@@setfilename} line produces no output when you typeset a
-manual with @TeX{}, but it is nevertheless essential: it opens the
+manual with @TeX{}, but it nevertheless is essential: it opens the
 index, cross-reference, and other auxiliary files used by Texinfo, and
 also reads @file{texinfo.cnf} if that file is present on your system
-(@pxref{Preparing for TeX,, Preparing for @TeX{}}).
+(@pxref{Preparing for TeX,, Preparing to Use @TeX{}}).
 
 
 @node settitle, setchapternewpage, setfilename, Header
@@ -2867,15 +2765,15 @@ You may, if you wish, create your own, customized headings and
 footings.  @xref{Headings, , Page Headings}, for a detailed discussion
 of this process.@refill
 
-
-@node setchapternewpage
+@node setchapternewpage, paragraphindent, settitle, Header
+@comment  node-name,  next,  previous,  up
 @subsection @code{@@setchapternewpage}
 @cindex Starting chapters
 @cindex Pages, starting odd
 @findex setchapternewpage
 
-In an officially bound book, text is usually printed on both sides of
-the paper, chapters start on right-hand pages, and right-hand pages have
+In a book or a manual, text is usually printed on both sides of the
+paper, chapters start on right-hand pages, and right-hand pages have
 odd numbers.  But in short reports, text often is printed only on one
 side of the paper.  Also in short reports, chapters sometimes do not
 start on new pages, but are printed on the same page as the end of the
@@ -2883,7 +2781,7 @@ preceding chapter, after a small amount of vertical whitespace.@refill
 
 You can use the @code{@@setchapternewpage} command with various
 arguments to specify how @TeX{} should start chapters and whether it
-should format headers for printing on one or both sides of the paper
+should typeset pages for printing on one or both sides of the paper
 (single-sided or double-sided printing).@refill
 
 Write the @code{@@setchapternewpage} command at the beginning of a
@@ -2900,7 +2798,17 @@ You can specify one of three alternatives with the
 @code{@@setchapternewpage} command:@refill
 
 @table @asis
+@ignore
+@item No @code{@@setchapternewpage} command
+If the Texinfo file does not contain an @code{@@setchapternewpage}
+command before the @code{@@titlepage} command, @TeX{} automatically
+begins chapters on new pages and prints headings in the standard
+format for single-sided printing.  This is the conventional format for
+single-sided printing.@refill
 
+The result is exactly the same as when you write
+@code{@@setchapternewpage on}.@refill
+@end ignore
 @item @code{@@setchapternewpage off}
 Cause @TeX{} to typeset a new chapter on the same page as the last
 chapter, after skipping some vertical whitespace.  Also, cause @TeX{} to
@@ -2909,9 +2817,9 @@ headers format with the @code{@@headings double} command; see
 @ref{headings on off, , The @code{@@headings} Command}.)@refill
 
 @item @code{@@setchapternewpage on}
-Cause @TeX{} to start new chapters on new pages and to format page
+Cause @TeX{} to start new chapters on new pages and to typeset page
 headers for single-sided printing.  This is the form most often
-used for short reports or personal printing.
+used for short reports.@refill
 
 This alternative is the default.@refill
 
@@ -2921,11 +2829,13 @@ Cause @TeX{} to start new chapters on new, odd-numbered pages
 the form most often used for books and manuals.@refill
 @end table
 
+@noindent
 Texinfo does not have an @code{@@setchapternewpage even} command.@refill
 
-You can countermand or modify the effect on headers of an
-@code{@@setchapternewpage} command with an @code{@@headings} command.
-@xref{headings on off, , The @code{@@headings} Command}.@refill
+@noindent
+(You can countermand or modify an @code{@@setchapternewpage} command
+with an @code{@@headings} command.  @xref{headings on off, , The
+@code{@@headings} Command}.)@refill
 
 At the beginning of a manual or book, pages are not numbered---for
 example, the title and copyright pages of a book are not numbered.
@@ -2935,100 +2845,62 @@ numerals and not in sequence with the rest of the document.@refill
 Since an Info file does not have pages, the @code{@@setchapternewpage}
 command has no effect on it.@refill
 
-We recommend not including any @code{@@setchapternewpage} command in
-your manual sources at all, since the desired output is not intrinsic to
-the document.  Instead, if you don't want the default option (no blank
-pages, same headers on all pages) use the @option{--texinfo} option to
-@command{texi2dvi} to specify the output you want.
+Usually, you do not write an @code{@@setchapternewpage} command for
+single-sided printing, but accept the default which is to typeset for
+single-sided printing and to start new chapters on new pages.  Usually,
+you write an @code{@@setchapternewpage odd} command for double-sided
+printing.@refill
 
-
-
-@node paragraphindent
+@node paragraphindent, End of Header, setchapternewpage, Header
+@comment  node-name,  next,  previous,  up
 @subsection Paragraph Indenting
 @cindex Indenting paragraphs
 @cindex Paragraph indentation
 @findex paragraphindent
 
-The Texinfo processors may insert whitespace at the beginning of the
-first line of each paragraph, thereby indenting that paragraph.  You can
-use the @code{@@paragraphindent} command to specify this indentation.
-Write an @code{@@paragraphindent} command at the beginning of a line
-followed by either @samp{asis} or a number:
+The Info formatting commands may insert spaces at the beginning of the
+first line of each paragraph, thereby indenting that paragraph.  You
+can use the @code{@@paragraphindent} command to specify the
+indentation.  Write an @code{@@paragraphindent} command at the
+beginning of a line followed by either @samp{asis} or a number.  The
+template is:@refill
 
 @example
 @@paragraphindent @var{indent}
 @end example
 
-The indentation is according to the value of @var{indent}:
-
-@table @asis
-@item @code{asis}
-Do not change the existing indentation (not implemented in @TeX{}).
+The Info formatting commands indent according to the value of
+@var{indent}:@refill
 
-@item 0
-Omit all indentation.
+@itemize @bullet
+@item
+If the value of @var{indent} is @samp{asis}, the Info formatting
+commands do not change the existing indentation.@refill
 
-@item @var{n}
-Indent by @var{n} space characters in Info output, by @var{n} ems in
-@TeX{}.
+@item
+If the value of @var{indent} is zero, the Info formatting commands delete
+existing indentation.@refill
 
-@end table
+@item
+If the value of @var{indent} is greater than zero, the Info formatting
+commands indent the paragraph by that number of spaces.@refill
+@end itemize
 
-The default value of @var{indent} is @samp{asis}.
-@code{@@paragraphindent} is ignored for HTML output.
+The default value of @var{indent} is @samp{asis}.@refill
 
 Write the @code{@@paragraphindent} command before or shortly after the
 end-of-header line at the beginning of a Texinfo file.  (If you write
 the command between the start-of-header and end-of-header lines, the
-region formatting commands indent paragraphs as specified.)
+region formatting commands indent paragraphs as specified.)@refill
 
 A peculiarity of the @code{texinfo-format-buffer} and
 @code{texinfo-format-region} commands is that they do not indent (nor
 fill) paragraphs that contain @code{@@w} or @code{@@*} commands.
-@xref{Refilling Paragraphs}, for further information.
-
-
-@node exampleindent
-@subsection @code{@@exampleindent}: Environment Indenting
-@cindex Indenting environments
-@cindex Environment indentation
-@cindex Example indentation
-@findex exampleindent
-
-The Texinfo processors indent each line of @code{@@example} and similar
-environments.  You can use the @code{@@exampleindent} command to specify
-this indentation.  Write an @code{@@exampleindent} command at the
-beginning of a line followed by either @samp{asis} or a number:
-
-@example
-@@exampleindent @var{indent}
-@end example
-
-The indentation is according to the value of @var{indent}:
-
-@table @asis
-@item @code{asis}
-Do not change the existing indentation (not implemented in @TeX{}).
-
-@item 0
-Omit all indentation.
-
-@item @var{n}
-Indent environments by @var{n} space characters in Info output, by
-@var{n} ems in @TeX{}.
-
-@end table
-
-The default value of @var{indent} is 5.  @code{@@exampleindent} is
-ignored for HTML output.
-
-Write the @code{@@exampleindent} command before or shortly after the
-end-of-header line at the beginning of a Texinfo file.  (If you write
-the command between the start-of-header and end-of-header lines, the
-region formatting commands indent examples as specified.)
-
+@xref{Refilling Paragraphs}, for a detailed description of what goes
+on.@refill
 
-@node End of Header
+@node End of Header,  , paragraphindent, Header
+@comment  node-name,  next,  previous,  up
 @subsection End of Header
 @cindex End of header line
 
@@ -3058,8 +2930,8 @@ variables that you can change.@refill
 @xref{Start of Header}.
 @end iftex
 
-
-@node Info Summary and Permissions
+@node Info Summary and Permissions, Titlepage & Copyright Page, Header, Beginning a File
+@comment  node-name,  next,  previous,  up
 @section Summary and Copying Permissions for Info
 
 The title page and the copyright page appear only in the printed copy of
@@ -3086,8 +2958,8 @@ node.  This mean that a reader does @emph{not} see this text when
 reading the file using Info, except when using the advanced Info command
 @kbd{g *}.
 
-
-@node Titlepage & Copyright Page
+@node Titlepage & Copyright Page, The Top Node, Info Summary and Permissions, Beginning a File
+@comment  node-name,  next,  previous,  up
 @section The Title and Copyright Pages
 
 A manual's name and author are usually printed on a title page.
@@ -3101,12 +2973,6 @@ obscure @TeX{} typesetting commands that cannot be used in an Info file.
 In addition, this part of the beginning of a Texinfo file contains the text
 of the copying permissions that will appear in the printed manual.@refill
 
-@cindex Titlepage, for plain text
-You may wish to include titlepage-like information for plain text
-output.  Simply place any such leading material between @code{@@ifinfo}
-and @code{@@end ifinfo}; @command{makeinfo} includes this in its plain
-text output.  It will not show up in the Info readers.
-
 @xref{Titlepage Permissions, , Titlepage Copying Permissions}, for the
 standard text for the copyright permissions.@refill
 
@@ -3124,7 +2990,6 @@ standard text for the copyright permissions.@refill
                                   and double or single sided printing.
 @end menu
 
-
 @node titlepage, titlefont center sp, Titlepage & Copyright Page, Titlepage & Copyright Page
 @comment  node-name,  next,  previous,  up
 @subsection @code{@@titlepage}
@@ -3137,57 +3002,53 @@ with @code{@@titlepage} on a line by itself and end it with
 
 The @code{@@end titlepage} command starts a new page and turns on page
 numbering.  (@xref{Headings, , Page Headings}, for details about how to
-generate page headings.)  All the material that you want to appear on
-unnumbered pages should be put between the @code{@@titlepage} and
-@code{@@end titlepage} commands.  You can force the table of contents to
-appear there with the @code{@@setcontentsaftertitlepage} command
-(@pxref{Contents}).
-
-@findex page@r{, within @code{@@titlepage}}
-By using the @code{@@page} command you can force a page break within the
-region delineated by the @code{@@titlepage} and @code{@@end titlepage}
-commands and thereby create more than one unnumbered page.  This is how
-the copyright page is produced.  (The @code{@@titlepage} command might
-perhaps have been better named the @code{@@titleandadditionalpages}
-command, but that would have been rather long!)
-
+generate page headings.)  All the material that you want to
+appear on unnumbered pages should be put between the
+@code{@@titlepage} and @code{@@end titlepage} commands.  By using the
+@code{@@page} command you can force a page break within the region
+delineated by the @code{@@titlepage} and @code{@@end titlepage}
+commands and thereby create more than one unnumbered page.  This is
+how the copyright page is produced.  (The @code{@@titlepage} command
+might perhaps have been better named the
+@code{@@titleandadditionalpages} command, but that would have been
+rather long!)@refill
+
+@c !!! append refill to footnote when makeinfo can handle it.
 When you write a manual about a computer program, you should write the
-version of the program to which the manual applies on the title page.
-If the manual changes more frequently than the program or is independent
-of it, you should also include an edition number@footnote{We have found
-that it is helpful to refer to versions of manuals as `editions' and
-versions of programs as `versions'; otherwise, we find we are liable to
-confuse each other in conversation by referring to both the
-documentation and the software with the same words.} for the manual.
-This helps readers keep track of which manual is for which version of
-the program.  (The `Top' node should also contain this information; see
-@ref{makeinfo top, , @code{@@top}}.)
+version of the program to which the manual applies on the title
+page.  If the manual changes more frequently than the program or is
+independent of it, you should also include an edition
+number@footnote{We have found that it is helpful to refer to versions
+of manuals as `editions' and versions of programs as `versions';
+otherwise, we find we are liable to confuse each other in conversation
+by referring to both the documentation and the software with the same
+words.} for the manual.  This helps readers keep track of which manual
+is for which version of the program.  (The `Top' node
+should also contain this information; see @ref{makeinfo top, ,
+@code{@@top}}.)@refill
 
 Texinfo provides two main methods for creating a title page.  One method
 uses the @code{@@titlefont}, @code{@@sp}, and @code{@@center} commands
 to generate a title page in which the words on the page are
-centered.
+centered.@refill
 
 The second method uses the @code{@@title}, @code{@@subtitle}, and
 @code{@@author} commands to create a title page with black rules under
 the title and author lines and the subtitle text set flush to the
 right hand side of the page.  With this method, you do not specify any
 of the actual formatting of the title page.  You specify the text
-you want, and Texinfo does the formatting.
-
-You may use either method, or you may combine them; see the examples in
-the sections below.
+you want, and Texinfo does the formatting.  You may use either
+method.@refill
 
 @findex shorttitlepage
-@cindex Bastard title page
-@cindex Title page, bastard
-For extremely simple applications, and for the bastard title page in
-traditional book front matter, Texinfo also provides a command
-@code{@@shorttitlepage} which takes a single argument as the title.  The
-argument is typeset on a page by itself and followed by a blank page.
+For extremely simple applications, Texinfo also provides a command
+@code{@@shorttitlepage} which takes a single argument as the title.
+The argument is typeset on a page by itself and followed by a blank
+page.
 
 
-@node titlefont center sp
+@node titlefont center sp, title subtitle author, titlepage, Titlepage & Copyright Page
+@comment  node-name,  next,  previous,  up
 @subsection @code{@@titlefont}, @code{@@center}, and @code{@@sp}
 @findex titlefont
 @findex center
@@ -3198,8 +3059,7 @@ commands to create a title page for a printed document.  (This is the
 first of the two methods for creating a title page in Texinfo.)@refill
 
 Use the @code{@@titlefont} command to select a large font suitable for
-the title itself.  You can use @code{@@titlefont} more than once if you
-have an especially long title.
+the title itself.@refill
 
 @need 700
 For example:
@@ -3246,10 +3106,10 @@ A template for this method looks like this:@refill
 @end group
 @end example
 
-The spacing of the example fits an 8.5 by 11 inch manual.@refill
+The spacing of the example fits an 8 1/2 by 11 inch manual.@refill
 
-
-@node title subtitle author
+@node title subtitle author, Copyright & Permissions, titlefont center sp, Titlepage & Copyright Page
+@comment  node-name,  next,  previous,  up
 @subsection @code{@@title}, @code{@@subtitle}, and @code{@@author}
 @findex title
 @findex subtitle
@@ -3258,8 +3118,9 @@ The spacing of the example fits an 8.5 by 11 inch manual.@refill
 You can use the @code{@@title}, @code{@@subtitle}, and @code{@@author}
 commands to create a title page in which the vertical and horizontal
 spacing is done for you automatically.  This contrasts with the method
-described in the previous section, in which the @code{@@sp} command is
-needed to adjust vertical spacing.
+described in
+the previous section, in which the @code{@@sp} command is needed to
+adjust vertical spacing.@refill
 
 Write the @code{@@title}, @code{@@subtitle}, or @code{@@author}
 commands at the beginning of a line followed by the title, subtitle,
@@ -3267,11 +3128,7 @@ or author.@refill
 
 The @code{@@title} command produces a line in which the title is set
 flush to the left-hand side of the page in a larger than normal font.
-The title is underlined with a black rule.  Only a single line is
-allowed; the @code{@@*} command may not be used to break the title into
-two lines.  To handle very long titles, you may find it profitable to
-use both @code{@@title} and @code{@@titlefont}; see the final example in
-this section.
+The title is underlined with a black rule.@refill
 
 The @code{@@subtitle} command sets subtitles in a normal-sized font
 flush to the right-hand side of the page.@refill
@@ -3321,28 +3178,29 @@ A template for this method looks like this:@refill
 @end group
 @end example
 
-You may also combine the @code{@@titlefont} method described in the
-previous section and @code{@@title} method described in this one.  This
-may be useful if you have a very long title.  Here is a real-life example:
+@ifinfo
+@noindent
+Contrast this form with the form of a title page written using the
+@code{@@sp}, @code{@@center}, and @code{@@titlefont} commands:@refill
 
 @example
-@group
 @@titlepage
-@@titlefont@{GNU Software@}
+@@sp 10
+@@center @@titlefont@{Name of Manual When Printed@}
+@@sp 2
+@@center Subtitle, If Any
 @@sp 1
-@@title for MS-Windows and MS-DOS
-@@subtitle Edition @@value@{edition@} for Release @@value@{cd-edition@}
-@@author by Daniel Hagerty, Melissa Weisshaus
-@@author and Eli Zaretskii
-@end group
+@@center Second subtitle
+@@sp 2
+@@center Author
+@@page
+@dots{}
+@@end titlepage
 @end example
+@end ifinfo
 
-@noindent
-(The use of @code{@@value} here is explained in @ref{value
-Example,,@code{@@value} Example}.)
-
-
-@node Copyright & Permissions
+@node Copyright & Permissions, end titlepage, title subtitle author, Titlepage & Copyright Page
+@comment  node-name,  next,  previous,  up
 @subsection Copyright Page and Permissions
 @cindex Copyright page
 @cindex Printed permissions
@@ -3389,17 +3247,19 @@ Copyright @copyright{} @var{year} @var{copyright-owner}
 @end example
 
 It is customary to put information on how to get a manual after the
-copyright notice, followed by the copying permissions for the manual.
+copyright notice, followed by the copying permissions for the
+manual.@refill
 
-Permissions must be given here as well as in the summary segment within
-@code{@@ifinfo} and @code{@@end ifinfo} that immediately follows the
-header since this text appears only in the printed manual and the
-@samp{ifinfo} text appears only in the Info file.
+Note that permissions must be given here as well as in the summary
+segment within @code{@@ifinfo} and @code{@@end ifinfo} that
+immediately follows the header since this text appears only in the
+printed manual and the @samp{ifinfo} text appears only in the Info
+file.@refill
 
 @xref{Sample Permissions}, for the standard text.@refill
 
-
-@node end titlepage
+@node end titlepage, headings on off, Copyright & Permissions, Titlepage & Copyright Page
+@comment  node-name,  next,  previous,  up
 @subsection Heading Generation
 @findex end titlepage
 @cindex Headings, page, begin to appear
@@ -3466,7 +3326,6 @@ Turn on page headings appropriate for single-sided printing.
 @refill
 
 @item @@headings double
-@itemx @@headings on
 Turn on page headings appropriate for double-sided printing.  The two
 commands, @code{@@headings on} and @code{@@headings double}, are
 synonymous.@refill
@@ -3505,8 +3364,8 @@ headings.@refill
 You can also specify your own style of page heading and footing.
 @xref{Headings, , Page Headings}, for more information.@refill
 
-
-@node The Top Node
+@node The Top Node, Software Copying Permissions, Titlepage & Copyright Page, Beginning a File
+@comment  node-name,  next,  previous,  up
 @section The `Top' Node and Master Menu
 @cindex @samp{@r{Top}} node
 @cindex Master menu
@@ -3533,9 +3392,10 @@ strictly speaking, you are not required to enclose these parts between
 * Master Menu Parts::           A master menu has three or more parts.
 @end menu
 
-
-@node Title of Top Node
-@subsection `Top' Node Title
+@node Title of Top Node, Master Menu Parts, The Top Node, The Top Node
+@ifinfo
+@subheading `Top' Node Title
+@end ifinfo
 
 Sometimes, you will want to place an @code{@@top} sectioning command
 line containing the title of the document immediately after the
@@ -3551,7 +3411,7 @@ version information.  It looks like this:@refill
 @dots{}
 @@end titlepage
 
-@@ifnottex
+@@ifinfo
 @@node Top, Copying, , (dir)
 @@top Texinfo
 
@@ -3561,7 +3421,7 @@ Texinfo is a documentation system@dots{}
 @group
 This is edition@dots{}
 @dots{}
-@@end ifnottex
+@@end ifinfo
 @end group
 
 @group
@@ -3698,10 +3558,10 @@ Usually, an introduction is put in an @code{@@unnumbered} section.
 @cindex File ending
 @findex bye
 
-The end of a Texinfo file should include commands to create indices and
-(usually) to generate detailed and summary tables of contents.  And it
-must include the @code{@@bye} command that marks the last line processed
-by @TeX{}.@refill
+The end of a Texinfo file should include the commands that create
+indices and generate detailed and summary tables of contents.
+And it must include the @code{@@bye} command that marks the last line
+processed by @TeX{}.@refill
 
 @need 700
 For example:
@@ -3741,7 +3601,7 @@ accumulated.  To generate an index, you must include the
 @code{@@printindex} command at the place in the document where you
 want the index to appear.  Also, as part of the process of creating a
 printed manual, you must run a program called @code{texindex}
-(@pxref{Hardcopy}) to sort the raw data to produce a sorted
+(@pxref{Format/Print Hardcopy}) to sort the raw data to produce a sorted
 index file.  The sorted index file is what is actually used to
 print the index.@refill
 
@@ -3801,35 +3661,52 @@ For example:
 
 @@printindex cp
 @end group
+
+@group
+@@summarycontents
+@@contents
+@@bye
+@end group
 @end smallexample
 
 @noindent
-Readers often prefer that the concept index come last in a book,
-since that makes it easiest to find.  Having just one index helps
-readers also, since then they have only one place to look
-(@pxref{synindex}).
+(Readers often prefer that the concept index come last in a book,
+since that makes it easiest to find.)@refill
 
+@ignore
+@c TeX can do sorting, just not conveniently enough to handle sorting
+@c Texinfo indexes. --karl, 5may97.
+In @TeX{}, the @code{@@printindex} command needs a sorted index file
+to work from.  @TeX{} does not know how to do sorting; this is a
+deficiency.  @TeX{} writes output files of raw index data; use the
+@code{texindex} program to convert these files to sorted index files.
+(@xref{Format/Print Hardcopy}, for more information.)@refill
+@end ignore
 
-@node Contents
+
+@node Contents, File End, Printing Indices & Menus, Ending a File
+@comment  node-name,  next,  previous,  up
 @section Generating a Table of Contents
 @cindex Table of contents
 @cindex Contents, Table of
-@cindex Short table of contents
 @findex contents
 @findex summarycontents
 @findex shortcontents
 
 The @code{@@chapter}, @code{@@section}, and other structuring commands
 supply the information to make up a table of contents, but they do not
-cause an actual table to appear in the manual.  To do this, you must use
-the @code{@@contents} and/or @code{@@summarycontents} command(s).
+cause an actual table to appear in the manual.  To do this, you must
+use the @code{@@contents} and @code{@@summarycontents}
+commands:@refill
 
 @table @code
 @item @@contents
 Generate a table of contents in a printed manual, including all
 chapters, sections, subsections, etc., as well as appendices and
 unnumbered chapters.  (Headings generated by the @code{@@heading}
-series of commands do not appear in the table of contents.)
+series of commands do not appear in the table of contents.)  The
+@code{@@contents} command should be written on a line by
+itself.@refill
 
 @item @@shortcontents
 @itemx @@summarycontents
@@ -3841,55 +3718,42 @@ chapters (and appendices and unnumbered chapters).  Omit sections, subsections
 and subsubsections.  Only a long manual needs a short table
 of contents in addition to the full table of contents.@refill
 
+Write the @code{@@shortcontents} command on a line by itself right
+@emph{before} the @code{@@contents} command.@refill
 @end table
 
-Both contents commands should be written on a line by themselves.
-The contents commands automatically generate a chapter-like heading at
-the top of the first table of contents page, so don't include any
-sectioning command such as @code{@@unnumbered} before them.
+The table of contents commands automatically generate a chapter-like
+heading at the top of the first table of contents page.  Write the table
+of contents commands at the very end of a Texinfo file, just before the
+@code{@@bye} command, following any index sections---anything in the
+Texinfo file after the table of contents commands will be omitted from
+the table of contents.@refill
+
+When you print a manual with a table of contents, the table of
+contents are printed last and numbered with roman numerals.  You need
+to place those pages in their proper place, after the title page,
+yourself.  (This is the only collating you need to do for a printed
+manual.  The table of contents is printed last because it is generated
+after the rest of the manual is typeset.)@refill
+
+@need 700
+Here is an example of where to write table of contents commands:@refill
+
+@example
+@group
+@var{indices}@dots{}
+@@shortcontents
+@@contents
+@@bye
+@end group
+@end example
 
 Since an Info file uses menus instead of tables of contents, the Info
-formatting commands ignore the contents commands.  But the contents are
-included in plain text output (generated by @code{makeinfo --no-headers}).
-
-The contents commands can be placed either at the very end of the file,
-after any indices (see the previous section) and just before the
-@code{@@bye} (see the next section), or near the beginning of the file,
-after the @code{@@end titlepage} (@pxref{titlepage}).  The advantage to
-the former is that then the contents output is always up to date,
-because it reflects the processing just done.  The advantage to the
-latter is that the contents are printed in the proper place, thus you do
-not need to rearrange the DVI file with @command{dviselect} or shuffle
-paper.  However, contents commands at the beginning of the document are
-ignored when outputting to standard output.
-
-@findex setcontentsaftertitlepage
-@findex setshortcontentsaftertitlepage
-@cindex Contents, after title page
-@cindex Table of contents, after title page
-As an author, you can put the contents commands wherever you prefer.
-But if you are a user simply printing a manual, you may wish to print
-the contents after the title page even if the author put the contents
-commands at the end of the document (as is the case in most existing
-Texinfo documents).  You can do this by specifying
-@code{@@setcontentsaftertitlepage} and/or
-@code{@@setshortcontentsaftertitlepage}.  The first prints only the main
-contents after the @code{@@end titlepage}; the second prints both the
-short contents and the main contents.  In either case, any subsequent
-@code{@@contents} or @code{@@shortcontents} is ignored (unless no
-@code{@@end titlepage} is ever encountered).
-
-You need to include the @code{@@set@dots{}contentsaftertitlepage}
-commands early in the document (just after @code{@@setfilename}, for
-example).  Or, if you're using @command{texi2dvi} (@pxref{Format with
-texi2dvi}), you can use its @option{--texinfo} option to specify this
-without altering the source file at all.  For example:
-@example
-texi2dvi --texinfo=@@setshortcontentsaftertitlepage foo.texi
-@end example
-
-
-@node File End
+formatting commands ignore the @code{@@contents} and
+@code{@@shortcontents} commands.@refill
+
+@node File End,  , Contents, Ending a File
+@comment  node-name,  next,  previous,  up
 @section @code{@@bye} File Ending
 @findex bye
 
@@ -3904,8 +3768,8 @@ manual; it is as if text after @code{@@bye} were within @code{@@ignore}
 with a local variables list.  @xref{Compile-Command, , Using Local
 Variables and the Compile Command}, for more information.@refill
 
-
-@node Structuring
+@node Structuring, Nodes, Ending a File, Top
+@comment  node-name,  next,  previous,  up
 @chapter Chapter Structuring
 @cindex Chapter structuring
 @cindex Structuring of chapters
@@ -3944,8 +3808,8 @@ heading at the top of each node---but you don't need to.@refill
 * Raise/lower sections::        How to change commands' hierarchical level.
 @end menu
 
-
-@node Tree Structuring
+@node Tree Structuring, Structuring Command Types, Structuring, Structuring
+@comment  node-name,  next,  previous,  up
 @section Tree Structure of Sections
 @cindex Tree structuring
 
@@ -3988,9 +3852,9 @@ The chapter structuring commands are described in the sections that
 follow; the @code{@@node} and @code{@@menu} commands are described in
 following chapters. (@xref{Nodes}, and see @ref{Menus}.)@refill
 
-
-@node Structuring Command Types
-@section Structuring Command Types
+@node Structuring Command Types, makeinfo top, Tree Structuring, Structuring
+@comment  node-name,  next,  previous,  up
+@section Types of Structuring Commands
 
 The chapter structuring commands fall into four groups or series, each
 of which contains structuring commands corresponding to the
@@ -4035,43 +3899,119 @@ start new pages in the printed manual; the @code{@@heading} commands
 do not.@refill
 @end itemize
 
+@need 1000
 Here are the four groups of chapter structuring commands:@refill
 
-@multitable @columnfractions .19 .30 .29 .22
-
-@item              @tab              @tab                @tab No new page
-@item Numbered     @tab Unnumbered   @tab Lettered and numbered
-                                                         @tab Unnumbered
-@item In contents  @tab In contents  @tab In contents    @tab Not in contents
-@item                 @tab @code{@@top}                 @tab
-                                                          @tab @code{@@majorheading}
-@item @code{@@chapter}       @tab @code{@@unnumbered}          @tab @code{@@appendix}
-                                                          @tab @code{@@chapheading}
-@item @code{@@section}       @tab @code{@@unnumberedsec}       @tab @code{@@appendixsec}
-                                                          @tab @code{@@heading}
-@item @code{@@subsection}    @tab @code{@@unnumberedsubsec}    @tab @code{@@appendixsubsec}
-                                                          @tab @code{@@subheading}
-@item @code{@@subsubsection} @tab @code{@@unnumberedsubsubsec} @tab @code{@@appendixsubsubsec}
-                                                          @tab @code{@@subsubheading}
-@end multitable
+@c Slightly different formatting for regular sized books and smallbooks.
+@ifset smallbook
+@sp 1
+@tex
+{\let\rm=\indrm \let\tt=\indtt
+\halign{\hskip\itemindent#\hfil&  \hskip.5em#\hfil&  \hskip.5em#\hfil&
+\hskip.5em#\hfil\cr
+
+& & &                                                \rm No new pages\cr
+\rm Numbered&    \rm Unnumbered&  \rm Lettered and numbered& \rm Unnumbered\cr
+\rm In contents&  \rm In contents&  \rm In contents&  \rm Not in contents\cr
+
+& & & \cr
+ &              \tt  @@top&            &               \tt @@majorheading\cr
+\tt @@chapter& \tt @@unnumbered&    \tt @@appendix&     \tt @@chapheading\cr
+\tt @@section&   \tt @@unnumberedsec&   \tt @@appendixsec&   \tt @@heading\cr
+\tt @@subsection&\tt @@unnumberedsubsec&\tt @@appendixsubsec&
+\tt @@subheading\cr
+\tt @@subsubsection& \tt @@unnumberedsubsubsec& \tt @@appendixsubsubsec&
+\tt @@subsubheading\cr}}
+@end tex
+@end ifset
+@ifclear smallbook
+@sp 1
+@tex
+\vbox{
+\halign{\hskip\itemindent\hskip.5em#\hfil&  \hskip.5em#\hfil&
+\hskip.5em#\hfil& \hskip.5em #\hfil\cr
+
+& & & \cr
+& & &                                                \rm No new pages\cr
+\rm Numbered&    \rm Unnumbered&  \rm Lettered and numbered& \rm Unnumbered\cr
+\rm In contents&  \rm In contents&  \rm In contents&  \rm Not in contents\cr
+
+& & & \cr
+ &              \tt  @@top&            &               \tt @@majorheading\cr
+\tt @@chapter& \tt @@unnumbered&    \tt @@appendix&     \tt @@chapheading\cr
+\tt @@section&   \tt @@unnumberedsec&   \tt @@appendixsec&   \tt @@heading\cr
+\tt @@subsection&\tt @@unnumberedsubsec&\tt @@appendixsubsec&
+\tt @@subheading\cr
+\tt @@subsubsection& \tt @@unnumberedsubsubsec& \tt @@appendixsubsubsec&
+\tt @@subsubheading\cr}}
+@end tex
+@end ifclear
+@ifinfo
+@example
+@group
+                                                       @r{No new pages}
+@r{Numbered}       @r{Unnumbered}       @r{Lettered and numbered}  @r{Unnumbered}
+@r{In contents}    @r{In contents}          @r{In contents}        @r{Not in contents}
+
+               @@top                                    @@majorheading
+@@chapter       @@unnumbered          @@appendix          @@chapheading
+@@section       @@unnumberedsec       @@appendixsec       @@heading
+@@subsection    @@unnumberedsubsec    @@appendixsubsec    @@subheading
+@@subsubsection @@unnumberedsubsubsec @@appendixsubsubsec @@subsubheading
+@end group
+@end example
+@end ifinfo
 
+@c Cannot line up columns properly inside of an example because of roman
+@c proportional fonts.
+@ignore
+@ifset smallbook
+@iftex
+@smallexample
+@group
+                                                       @r{No new pages}
+@r{Numbered}      @r{Unnumbered}       @r{Lettered and numbered}  @r{Unnumbered}
+@r{In contents}      @r{In contents}           @r{In contents}         @r{Not in contents}
+
+               @@top                                    @@majorheading
+@@chapter       @@unnumbered          @@appendix          @@chapheading
+@@section       @@unnumberedsec       @@appendixsec       @@heading
+@@subsection    @@unnumberedsubsec    @@appendixsubsec    @@subheading
+@@subsubsection @@unnumberedsubsubsec @@appendixsubsubsec @@subsubheading
+@end group
+@end smallexample
+@end iftex
+@end ifset
+@ifclear smallbook
+@iftex
+@smallexample
+@group
+                                                      @r{No new pages}
+@r{Numbered}      @r{Unnumbered}       @r{Lettered and numbered}  @r{Unnumbered}
+@r{In contents}      @r{In contents}           @r{In contents}         @r{Not in contents}
+
+               @@top                                    @@majorheading
+@@chapter       @@unnumbered          @@appendix          @@chapheading
+@@section       @@unnumberedsec       @@appendixsec       @@heading
+@@subsection    @@unnumberedsubsec    @@appendixsubsec    @@subheading
+@@subsubsection @@unnumberedsubsubsec @@appendixsubsubsec @@subsubheading
+@end group
+@end smallexample
+@end iftex
+@end ignore
 
-@node makeinfo top
+@node makeinfo top, chapter, Structuring Command Types, Structuring
+@comment  node-name,  next,  previous,  up
 @section @code{@@top}
 
 The @code{@@top} command is a special sectioning command that you use
 only after an @samp{@@node Top} line at the beginning of a Texinfo file.
-The @code{@@top} command tells the @code{makeinfo} formatter which node
-is the `Top' node, so it can use it as the root of the node tree if your
-manual uses implicit pointers.  It has the same typesetting effect as
-@code{@@unnumbered} (@pxref{unnumbered & appendix, , @code{@@unnumbered}
-and @code{@@appendix}}).  For detailed information, see @ref{makeinfo
-top command, , The @code{@@top} Command}.
-
-The @code{@@top} node and its menu (if any) is conventionally wrapped in
-an @code{@@ifnottex} conditional so that it will appear only in Info and
-HTML output, not @TeX{}.
-
+The @code{@@top} command tells the @code{makeinfo} formatter
+which node is the `Top'
+node.  It has the same typesetting effect as @code{@@unnumbered}
+(@pxref{unnumbered & appendix, , @code{@@unnumbered}, @code{@@appendix}}).
+For detailed information, see
+@ref{makeinfo top command, , The @code{@@top} Command}.@refill
 
 @node chapter, unnumbered & appendix, makeinfo top, Structuring
 @comment  node-name,  next,  previous,  up
@@ -4109,8 +4049,9 @@ This kind of stylistic choice is not usually offered by Texinfo.
 @c but the Hacker's Dictionary wanted it ...
 
 
-@node unnumbered & appendix
-@section @code{@@unnumbered} and @code{@@appendix}
+@node unnumbered & appendix, majorheading & chapheading, chapter, Structuring
+@comment  node-name,  next,  previous,  up
+@section @code{@@unnumbered}, @code{@@appendix}
 @findex unnumbered
 @findex appendix
 
@@ -4405,11 +4346,12 @@ An attempt to raise above `chapters' reproduces chapter commands; an
 attempt to lower below `subsubsections' reproduces subsubsection
 commands.
 
-@node Nodes
+@node Nodes, Menus, Structuring, Top
+@comment  node-name,  next,  previous,  up
 @chapter Nodes
 
 @dfn{Nodes} are the primary segments of a Texinfo file.  They do not
-themselves impose a hierarchical or any other kind of structure on a file.
+themselves impose a hierarchic or any other kind of structure on a file.
 Nodes contain @dfn{node pointers} that name other nodes, and can contain
 @dfn{menus} which are lists of nodes.  In Info, the movement commands
 can carry you to a pointed-to node or to a node listed in a menu.  Node
@@ -4421,17 +4363,17 @@ books.@refill
 * Two Paths::                   Different commands to structure
                                   Info output and printed output.
 * Node Menu Illustration::      A diagram, and sample nodes and menus.
-* node::                        Creating nodes, in detail.
-* makeinfo Pointer Creation::   Letting makeinfo determine node pointers.
-* anchor::                      Defining arbitrary cross-reference targets.
+* node::                        How to write a node, in detail.
+* makeinfo Pointer Creation::   How to create node pointers with @code{makeinfo}.
 @end menu
 
-
-@node Two Paths
-@section Two Paths
+@node Two Paths, Node Menu Illustration, Nodes, Nodes
+@ifinfo
+@heading Two Paths
+@end ifinfo
 
 The node and menu commands and the chapter structuring commands are
-technically independent of each other:
+independent of each other:
 
 @itemize @bullet
 @item
@@ -4448,26 +4390,26 @@ information for cross references; they do nothing else.@refill
 
 You can use node pointers and menus to structure an Info file any way
 you want; and you can write a Texinfo file so that its Info output has a
-different structure than its printed output.  However, virtually all
-Texinfo files are written such that the structure for the Info output
-corresponds to the structure for the printed output.  It is neither
-convenient nor understandable to the reader to do otherwise.@refill
+different structure than its printed output.  However, most Texinfo
+files are written such that the structure for the Info output
+corresponds to the structure for the printed output.  It is not
+convenient to do otherwise.@refill
 
 Generally, printed output is structured in a tree-like hierarchy in
 which the chapters are the major limbs from which the sections branch
 out.  Similarly, node pointers and menus are organized to create a
 matching structure in the Info output.@refill
 
-
-@node Node Menu Illustration
+@node Node Menu Illustration, node, Two Paths, Nodes
+@comment  node-name,  next,  previous,  up
 @section Node and Menu Illustration
 
 Here is a copy of the diagram shown earlier that illustrates a Texinfo
 file with three chapters, each of which contains two sections.@refill
 
-The ``root'' is at the top of the diagram and the ``leaves'' are at the
-bottom.  This is how such a diagram is drawn conventionally; it
-illustrates an upside-down tree.  For this reason, the root node is
+Note that the ``root'' is at the top of the diagram and the ``leaves''
+are at the bottom.  This is how such a diagram is drawn conventionally;
+it illustrates an upside-down tree.  For this reason, the root node is
 called the `Top' node, and `Up' node pointers carry you closer to the
 root.@refill
 
@@ -4483,36 +4425,35 @@ root.@refill
     |        |         |        |         |        |
  Section  Section   Section  Section   Section  Section
    1.1      1.2       2.1      2.2       3.1      3.2
+
 @end group
 @end example
 
-The fully-written command to start Chapter 2 would be this:
+Write the beginning of the node for Chapter 2 like this:@refill
 
 @example
 @group
-@@node     Chapter 2,  Chapter 3, Chapter 1, Top
+@@node     Chapter 2,  Chapter 3, Chapter 1, top
 @@comment  node-name,  next,      previous,  up
 @end group
 @end example
 
 @noindent
-This @code{@@node} line says that the name of this node is ``Chapter
-2'', the name of the `Next' node is ``Chapter 3'', the name of the
-`Previous' node is ``Chapter 1'', and the name of the `Up' node is
-``Top''.  You can omit writing out these node names if your document is
-hierarchically organized (@pxref{makeinfo Pointer Creation}), but the
-pointer relationships still obtain.
+This @code{@@node} line says that the name of this node is ``Chapter 2'', the
+name of the `Next' node is ``Chapter 3'', the name of the `Previous'
+node is ``Chapter 1'', and the name of the `Up' node is ``Top''.
 
 @quotation
 @strong{Please Note:} `Next' refers to the next node at the same
 hierarchical level in the manual, not necessarily to the next node
 within the Texinfo file.  In the Texinfo file, the subsequent node may
-be at a lower level---a section-level node most often follows a
-chapter-level node, for example.  `Next' and `Previous' refer to nodes
-at the @emph{same} hierarchical level.  (The `Top' node contains the
-exception to this rule.  Since the `Top' node is the only node at that
-level, `Next' refers to the first following node, which is almost always
-a chapter or chapter-level node.)@refill
+be at a lower level---a section-level node may follow a chapter-level
+node, and a subsection-level node may follow a section-level node.
+`Next' and `Previous' refer to nodes at the @emph{same} hierarchical
+level.  (The `Top' node contains the exception to this rule.  Since the
+`Top' node is the only node at that level, `Next' refers to the first
+following node, which is almost always a chapter or chapter-level
+node.)@refill
 @end quotation
 
 To go to Sections 2.1 and 2.2 using Info, you need a menu inside Chapter
@@ -4565,13 +4506,11 @@ line, an @code{@@chapter} line, and then by indexing lines.@refill
 @end group
 @end example
 
-
-@node node
+@node node, makeinfo Pointer Creation, Node Menu Illustration, Nodes
+@comment  node-name,  next,  previous,  up
 @section The @code{@@node} Command
 
 @cindex Node, defined
-@findex node
-
 A @dfn{node} is a segment of text that begins at an @code{@@node}
 command and continues until the next @code{@@node} command.  The
 definition of node is different from that for chapter or section.  A
@@ -4586,23 +4525,19 @@ several nodes, one for each section, subsection, and
 subsubsection.@refill
 
 To create a node, write an @code{@@node} command at the beginning of a
-line, and follow it with up to four arguments, separated by commas, on
-the rest of the same line.  The first argument is required; it is the
-name of this node.  The subsequent arguments are the names of the
-`Next', `Previous', and `Up' pointers, in that order, and may be omitted
-if your Texinfo document is hierarchically organized (@pxref{makeinfo
-Pointer Creation}).
-
-You may insert spaces before each name if you wish; the spaces are
-ignored.  You must write the name of the node and the names of the
-`Next', `Previous', and `Up' pointers all on the same line.  Otherwise,
+line, and follow it with four arguments, separated by commas, on the
+rest of the same line.  These arguments are the name of the node, and
+the names of the `Next', `Previous', and `Up' pointers, in that order.
+You may insert spaces before each pointer if you wish; the spaces are
+ignored.  You must write the name of the node, and the names of the
+`Next', `Previous', and `Up' pointers, all on the same line.  Otherwise,
 the formatters fail.  (@inforef{Top, info, info}, for more information
-about nodes in Info.)
+about nodes in Info.)@refill
 
 Usually, you write one of the chapter-structuring command lines
 immediately after an @code{@@node} line---for example, an
 @code{@@section} or @code{@@subsection} line.  (@xref{Structuring
-Command Types}.)
+Command Types, , Types of Structuring Commands}.)@refill
 
 @quotation
 @strong{Please note:} The GNU Emacs Texinfo mode updating commands work
@@ -4614,8 +4549,8 @@ structuring lines.  @xref{Updating Requirements}.@refill
 references.  For this reason, you must write @code{@@node} lines in a
 Texinfo file that you intend to format for printing, even if you do not
 intend to format it for Info.  (Cross references, such as the one at the
-end of this sentence, are made with @code{@@xref} and related commands;
-see @ref{Cross References}.)@refill
+end of this sentence, are made with @code{@@xref} and its related
+commands; see @ref{Cross References}.)@refill
 
 @menu
 * Node Names::                  How to choose node and pointer names.
@@ -4627,11 +4562,11 @@ see @ref{Cross References}.)@refill
 * Top Node Summary::            Write a brief description for readers.
 @end menu
 
+@node Node Names, Writing a Node, node, node
+@ifinfo
+@subheading Choosing Node and Pointer Names
+@end ifinfo
 
-@node Node Names
-@subsection Choosing Node and Pointer Names
-
-@cindex Node names, choosing
 The name of a node identifies the node.  The pointers enable
 you to reach other nodes and consist of the names of those nodes.@refill
 
@@ -4651,14 +4586,8 @@ Also, it is helpful to include a brief description of the manual in the
 `Top' node.  @xref{First Node}, for information on how to write the
 first node of a Texinfo file.@refill
 
-Even when you explicitly specify all pointers, that does not mean you
-can write the nodes in the Texinfo source file in an arbitrary order!
-Because @TeX{} processes the file sequentially, irrespective of node
-pointers, you must write the nodes in the order you wish them to appear
-in the printed output.
-
-
-@node Writing a Node
+@node Writing a Node, Node Line Tips, Node Names, node
+@comment  node-name,  next,  previous,  up
 @subsection How to Write an @code{@@node} Line
 @cindex Writing an @code{@@node} line
 @cindex @code{@@node} line writing
@@ -4686,8 +4615,8 @@ their proper order.  The comment line helps you keep track of which
 arguments are for which pointers.  This comment line is especially useful
 if you are not familiar with Texinfo.@refill
 
-The template for a fully-written-out node line with `Next', `Previous',
-and `Up' pointers looks like this:@refill
+The template for a node line with `Next', `Previous', and `Up' pointers
+looks like this:@refill
 
 @example
 @@node @var{node-name}, @var{next}, @var{previous}, @var{up}
@@ -4695,21 +4624,22 @@ and `Up' pointers looks like this:@refill
 
 If you wish, you can ignore @code{@@node} lines altogether in your first
 draft and then use the @code{texinfo-insert-node-lines} command to
-create @code{@@node} lines for you.  However, we do not recommend this
-practice.  It is better to name the node itself at the same time that
-you write a segment so you can easily make cross references.  A large
-number of cross references are an especially important feature of a good
-Info file.
+create @code{@@node} lines for you.  However, we do not
+recommend this practice.  It is better to name the node itself
+at the same time that you
+write a segment so you can easily make cross references.  A large number
+of cross references are an especially important feature of a good Info
+file.@refill
 
 After you have inserted an @code{@@node} line, you should immediately
 write an @@-command for the chapter or section and insert its name.
 Next (and this is important!), put in several index entries.  Usually,
 you will find at least two and often as many as four or five ways of
 referring to the node in the index.  Use them all.  This will make it
-much easier for people to find the node.
+much easier for people to find the node.@refill
 
-
-@node Node Line Tips
+@node Node Line Tips, Node Line Requirements, Writing a Node, node
+@comment  node-name,  next,  previous,  up
 @subsection @code{@@node} Line Tips
 
 Here are three suggestions:
@@ -4733,8 +4663,8 @@ section or chapter titles---initial and significant words are
 capitalized; others are not.@refill
 @end itemize
 
-
 @node Node Line Requirements, First Node, Node Line Tips, node
+@comment  node-name,  next,  previous,  up
 @subsection @code{@@node} Line Requirements
 
 @cindex Node line requirements
@@ -4742,7 +4672,7 @@ Here are several requirements for @code{@@node} lines:
 
 @itemize @bullet
 @cindex Unique nodename requirement
-@cindex Node name must be unique
+@cindex Nodename must be unique
 @item
 All the node names for a single Info file must be unique.@refill
 
@@ -4758,15 +4688,13 @@ different.@refill
 A pointer name must be the name of a node.@refill
 
 The node to which a pointer points may come before or after the
-node containing the pointer.
+node containing the pointer.@refill
 
-@cindex @@-commands in nodename
-@cindex Node name, should not contain @@-commands
+@cindex @@-command in nodename
+@cindex Nodename, cannot contain
 @item
-@w{@@-commands} used in node names generally confuse Info, so you should
-avoid them.  For a few rare cases when this is useful, Texinfo has
-limited support for using @w{@@-commands} in node names; see
-@ref{Pointer Validation}.
+You cannot use any of the Texinfo @@-commands in a node name;
+@w{@@-commands} confuse Info.@refill
 
 @need 750
 Thus, the beginning of the section called @code{@@chapter} looks like
@@ -4781,15 +4709,11 @@ this:@refill
 @end group
 @end smallexample
 
-@item
-@cindex Apostrophe in nodename
-@cindex Colon in nodename
 @cindex Comma in nodename
-@cindex Period in nodename
-@cindex Characters, invalid in node name
-@cindex Invalid characters in node names
-Unfortunately, you cannot use periods, commas, colons or apostrophes
-within a node name; these confuse @TeX{} or the Info formatters.@refill
+@cindex Apostrophe in nodename
+@item
+You cannot use commas or apostrophes within a node name; these
+confuse @TeX{} or the Info formatters.@refill
 
 @need 700
 For example, the following is a section title:
@@ -4908,100 +4832,69 @@ include an edition number for the manual.  (The title page should also
 contain this information: see @ref{titlepage, ,
 @code{@@titlepage}}.)@refill
 
-@node makeinfo Pointer Creation
+@node makeinfo Pointer Creation,  , node, Nodes
 @section Creating Pointers with @code{makeinfo}
 @cindex Creating pointers with @code{makeinfo}
 @cindex Pointer creation with @code{makeinfo}
 @cindex Automatic pointer creation with @code{makeinfo}
 
-The @code{makeinfo} program has a feature for automatically defining
-node pointers for a hierarchically organized file.
+The @code{makeinfo} program has a feature for automatically creating
+node pointers for a hierarchically organized file that lacks
+them.@refill
 
 When you take advantage of this feature, you do not need to write the
 `Next', `Previous', and `Up' pointers after the name of a node.
 However, you must write a sectioning command, such as @code{@@chapter}
 or @code{@@section}, on the line immediately following each truncated
-@code{@@node} line (except that&nbs