🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: gnu.emacs.bug
Article #100074

info patches

#100074
From: Hallvard B Furuseth
Date: Fri, 26 Jan 1990 11:26
483 lines
18902 bytes
Here are the patches to other emacs-18.55 files, to make them
compatible with my Info mode (pervious articles).  Most of the patches
are to info/info. But I believe my language could be improved.  I
suppose there are a number of Norwegian sentences with English words
here.

The modified files patch are
	lisp/ loaddefs.el, texinfmt.el, vi.el
	info/ dir, info


Hallvard Furuseth
hallvard@ifi.uio.no

*** lisp/loaddefs.el~	Tue Aug 16 01:50:07 1988
--- lisp/loaddefs.el	Fri Jan 26 11:22:40 1990
***************
*** 186,189 ****
--- 186,190 ----
  				("\\.letter$" . text-mode)
  				("\\.texinfo$" . texinfo-mode)
+ 				("\\.info$" . info-mode)
  				("\\.lsp$" . lisp-mode)
  				("\\.prolog$" . prolog-mode)
***************
*** 611,614 ****
--- 612,620 ----
    "\
  Enter Info, the documentation browser."
+   t)
+ 
+ (autoload 'info-mode "info"
+   "\
+ Major mode for browsing Info documentation."
    t)
  

*** lisp/texinfmt.el~	Thu Dec 29 05:11:05 1988
--- lisp/texinfmt.el	Fri Jan 26 11:26:58 1990
***************
*** 392,396 ****
  	  (file-name-nondirectory (expand-file-name arg)))
      (insert "Info file: "
! 	    texinfo-format-filename ",    -*-Text-*-\n"
  	    "produced by texinfo-format-buffer\nfrom "
  	    (if (buffer-file-name input-buffer)
--- 392,396 ----
  	  (file-name-nondirectory (expand-file-name arg)))
      (insert "Info file: "
! 	    texinfo-format-filename ",    -*-Info-*-\n"
  	    "produced by texinfo-format-buffer\nfrom "
  	    (if (buffer-file-name input-buffer)
***************
*** 417,421 ****
      (or (bolp)
  	(insert ?\n))
!     (insert "\^_\nFile: " texinfo-format-filename
  	    "  Node: " name)
      (if prev
--- 417,421 ----
      (or (bolp)
  	(insert ?\n))
!     (insert "\^_\nFile: " (Info-file-basename texinfo-format-filename)
  	    "  Node: " name)
      (if prev


*** lisp/vi.el~	Wed Jan  7 20:02:47 1987
--- lisp/vi.el	Fri Jan 26 11:29:58 1990
***************
*** 14,18 ****
  ;    (setq find-file-hooks (list
  ;                            (function (lambda ()
! ;                                (if (not (or (eq major-mode 'Info-mode)
  ;	                                      (eq major-mode 'vi-mode)))
  ;                                    (vi-mode))))))
--- 14,18 ----
  ;    (setq find-file-hooks (list
  ;                            (function (lambda ()
! ;                                (if (not (or (eq major-mode 'info-mode)
  ;	                                      (eq major-mode 'vi-mode)))
  ;                                    (vi-mode))))))


*** info/dir	Fri Apr 29 22:24:21 1988
--- info/dir.info	Fri Jan 26 11:33:20 1990
***************
*** 1,2 ****
! -*- Text -*-
  This is the file .../info/dir, which contains the topmost node of the
--- 1,2 ----
! -*- Info -*-
  This is the file .../info/dir, which contains the topmost node of the



*** info/info	Wed Aug 23 15:09:58 1989
--- info/info.info	Fri Jan 26 10:38:38 1990
***************
*** 1,3 ****
! This file documents the Info program.  -*-Text-*-
  The H command of Info goes to the node Help in this file.
  
--- 1,3 ----
! This file documents the Info program.  -*-Info-*-
  The H command of Info goes to the node Help in this file.
  
***************
*** 11,17 ****
  * Menu:
  
! * Expert::	Advanced Info commands: g, s, e, and 1 - 5.
! * Add::		Describes how to add new nodes to the hierarchy.
! 		Also tells what nodes look like.
  * Menus::	How to add to or create menus in Info nodes.
  * Cross-refs::	How to add cross-references to Info nodes.
--- 11,17 ----
  * Menu:
  
! * Expert::	Advanced Info commands: g, s, 1 - 5, S and K.
! * Add::		How to edit nodes and add new nodes to the hierarchy.
! * Node format::	What nodes look like.
  * Menus::	How to add to or create menus in Info nodes.
  * Cross-refs::	How to add cross-references to Info nodes.
***************
*** 18,21 ****
--- 18,22 ----
  * Tags::	How to make tag tables for Info files.
  * Checking::	How to check the consistency of an Info file.
+ * Variables::	Variables modifying the behavior of Info.
  * Texinfo: (texinfo).
  		How to generate an Info file and a printed manual
***************
*** 244,248 ****
    The command to go to a subnode via a menu is "m".  After you type
  the "m", the line at the bottom of the screen says "Menu item: ".
! You must then type the name of tye subtopic you want, and end it with
  a Return.
  
--- 245,249 ----
    The command to go to a subnode via a menu is "m".  After you type
  the "m", the line at the bottom of the screen says "Menu item: ".
! You must then type the name of the subtopic you want, and end it with
  a Return.
  
***************
*** 260,264 ****
  * Menu:	   The menu starts here.
  
! This menu givs you three ways of going to one place, Help-FOO.
  
  * Foo:	Help-FOO	A node you can visit for fun
--- 261,265 ----
  * Menu:	   The menu starts here.
  
! This menu gives you three ways of going to one place, Help-FOO.
  
  * Foo:	Help-FOO	A node you can visit for fun
***************
*** 375,378 ****
--- 376,382 ----
  for "Quit".
  
+ (If you are running Info in several buffers, you should type "K" to
+ kill the Info buffer.  The "q" command just selects another buffer.)
+ 
    This is the end of the course on using Info.  There are some other
  commands that are not essential or meant for experienced users;  they
***************
*** 387,391 ****
  File: info,  Node: Expert,  Up: Top,  Previous: Top,  Next: Add
  
! Some Advanced Info Commands ("g", "s", "1" - "5", and "e").
  
  If you know a node's name, you can go there by typing
--- 391,395 ----
  File: info,  Node: Expert,  Up: Top,  Previous: Top,  Next: Add
  
! Some Advanced Info Commands ("g", "s", "1" - "5", "S" and "K").
  
  If you know a node's name, you can go there by typing
***************
*** 414,418 ****
  orders will not be far different.  In any case, you can always do a
  "b" to find out what node you have reached, if the header isn't
! visible (this can happen, because "S" puts your cursor at the
  occurrence of the string, not at the beginning of the node).
  
--- 418,422 ----
  orders will not be far different.  In any case, you can always do a
  "b" to find out what node you have reached, if the header isn't
! visible (this can happen, because "s" puts your cursor at the
  occurrence of the string, not at the beginning of the node).
  
***************
*** 426,435 ****
  name than counting.
  
! The Info command "e" changes from Info mode to an ordinary
! Emacs editing mode, so that you can edit the text of the current node.
! Type C-c C-c to switch back to Info.  The "e" command is allowed
! only if the variable Info-enable-edit is non-nil.
  
! File: info,  Node: Add,  Up: Top,  Previous: Expert,  Next: Menus
  
  To add a new topic to the list in the directory, you must
--- 430,440 ----
  name than counting.
  
! The "S" command saves the buffer and its tag table, if you have
! modified the file.
! 
! The "K" command kills the Info buffer and its tag table.  If necessary,
! it offers to save first.
  
! File: info,  Node: Add,  Up: Top,  Previous: Expert,  Next: Node format
  
  To add a new topic to the list in the directory, you must
***************
*** 436,456 ****
   1) create a node, in some file, to document that topic.
   2) put that topic in the menu in the directory.  *Note Menu: Menus.
  
!   The new node can live in an existing documentation file, or in a new
! one.  It must have a ^_ character before it (invisible to the user;
! this node has one but you can't see it), and it ends with either a ^_,
! a ^L, or the end of file.  Note:  If you put in a ^L to end a new
! node, be sure that there is a ^_ after it to start the next one, since
! ^L can't START a node.  Also, a nicer way to make a node boundary be a
! page boundary as well is to put a ^L RIGHT AFTER the ^_.
  
!   The ^_ starting a node must be followed by a newline or a ^L newline,
! after which comes the node's header line.  The header line must give
! the node's name (by which Info will find it), and state the names of
! the Next, Previous, and Up nodes (if there are any).  As you can see,
! this node's Up node is the node Top, which points at all the
! documentation for Info.  The Next node is "Menus".
  
!   The keywords "Node", "Previous", "Up" and "Next",  may appear in
  any order, anywhere in the header line, but the recommended order is
  the one in this sentence.  Each keyword must be followed by a colon,
--- 441,491 ----
   1) create a node, in some file, to document that topic.
   2) put that topic in the menu in the directory.  *Note Menu: Menus.
+  3) ensure that the Prev and Next pointers of the Next and Previous
+     nodes, if any, point back to the new node.
+ The new node can live in an existing documentation file, or in a new
+ one.
  
!   The Info command "e" changes from info-mode to info-edit-mode.  This
! mode behaves as the ordinary Emacs editing mode, so that you can
! edit the text of the current node.  You can also type C-c followed by
! the usual Info commands, or C-c C-c to switch back to Info.  The "e"
! command is allowed only if the variable Info-enable-edit is non-nil.
  
!   If you enter info-edit-mode and try to go to a nonexistent node,
! Info will offer to create that node.  The file must exist; a file
! header will be inserted if the file is empty.
  
!   Info-edit-mode will try to insert sensible Prev/Up/Next pointers,
! either computed from last node's Prev/Up/Next pointers, or, if you
! left a menu, from the menu items surrounding the new node.
! 
!   So, to create a new node, just enter info-edit-mode, insert the node
! in a menu, and select it.  To create its Next node, fill in the Next
! pointer and go to that node (using C-c n), and so on.  To create a new
! Info file, use find-file, enter info-edit-mode, and go to node Top.
! 
!   Don't put the control characters ^_ or ^L in nodes, as these are
! node delimiters.
! 
! Note: You should use the "S" and "K" keys to save and kill Info buffers,
! not the usual save-buffer and kill-buffer commands.  This is because the
! tag table may be in a separate buffer, but save-buffer and kill-buffer
! do not know it.
! 
! File: info,  Node: Node format,  Previous: Add,  Up: Top,  Next: Menus
! 
!   A node's first line, the header line, must give the node's name (by
! which Info will find it), and state the names of the Next, Previous,
! and Up nodes (if there are any).  As you can see, this node's Up node
! is the node Top, which points at all the documentation for Info.  The
! Next node is "Menus".
! 
!   Conventionally, the Prev and Next pointers form a list of nodes in
! which the Prev of the Next of a node is that node itself.  All nodes in
! such a list should be in the same Info file, and have the same Up node.
! The list's last node has no Next, and the first has Prev=Up.
! The Up node will often contain a menu of the list of nodes.  
! 
!   The keywords  "Node", "Previous", "Up" and "Next"  may appear in
  any order, anywhere in the header line, but the recommended order is
  the one in this sentence.  Each keyword must be followed by a colon,
***************
*** 462,469 ****
    A node name has two forms.  A node in the current file is named by
  what appears after the "Node: " in that node's first line.  For
! example, this node's name is "Add".  A node in another file is named
! by "(FILENAME)NODE-WITHIN-FILE", as in "(info)Add" for this node.  If
! the file name is relative, it is taken starting from the standard
! Info file directory of your site.  The name "(FILENAME)Top" can be
  abbreviated to just "(FILENAME)".  By convention, the name "Top" is
  used for the "highest" node in any single file - the node whose "Up"
--- 497,504 ----
    A node name has two forms.  A node in the current file is named by
  what appears after the "Node: " in that node's first line.  For
! example, this node's name is "Node format".  A node in another file
! is named by "(FILENAME)NODE-WITHIN-FILE", as in "(info)Node format"
! for this node.  If the file name is relative, it is searched for in
! the directories in Info-path.  The name "(FILENAME)Top" can be
  abbreviated to just "(FILENAME)".  By convention, the name "Top" is
  used for the "highest" node in any single file - the node whose "Up"
***************
*** 486,491 ****
  line.  The File names are ignored by Info, but they serve as
  comments to help identify the node for the user.
  
! File: info, Node: Menus, Previous: Add, Up: Top, Next: Cross-refs
  
  How to Create Menus:
--- 521,546 ----
  line.  The File names are ignored by Info, but they serve as
  comments to help identify the node for the user.
+ 
+ 
+   A node starts with a line containing only a ^_ character, optionally
+ followed by a ^L.  (This line is invisible to the user; this node
+ starts like that but you can't see it).  Immediately after this line
+ comes the node's header line.  The node ends with either the end of
+ the file or an (invisible) line starting with ^_ or ^L.  Note: If you
+ put in a ^L to end a new node, be sure that there is a ^_ after it to
+ start the next one, since ^L can't START a node.  A nicer way to make
+ a node boundary be a page boundary as well is to use the optional ^L
+ in the start-of-node line.
+ 
+   After the ^_ or ^L ending a node, you may put an (invisible) Lisp
+ expression.  If the variable Info-enable-active-nodes is non-nil, the
+ expression is executed when the node is selected.  This node is
+ terminated by this expression:
+ ^_
+ execute: (message "Hi, I am written by some Lisp code!")
+ 
+ execute: (message "Hi, I am written by some Lisp code!")
  
! File: info, Node: Menus, Previous: Node format, Up: Top, Next: Cross-refs
  
  How to Create Menus:
***************
*** 516,520 ****
  abbreviation for it (a long menu is more than 5 or so entries).
  
!   The node's listed in a node's menu are called its "subnodes", and
  it is their "superior".  They should each have an "Up:" pointing at
  the superior.  It is often useful to arrange all or most of the
--- 571,575 ----
  abbreviation for it (a long menu is more than 5 or so entries).
  
!   The nodes listed in a node's menu are called its "subnodes", and
  it is their "superior".  They should each have an "Up:" pointing at
  the superior.  It is often useful to arrange all or most of the
***************
*** 567,571 ****
  
    To make a tag table, go to a node in the file using Info and type
! M-x Info-tagify.  Then you must use C-x C-s to save the file.
  
    Once the Info file has a tag table, you must make certain it is up
--- 622,628 ----
  
    To make a tag table, go to a node in the file using Info and type
! M-x Info-tagify.  Then you must use the "S" command to save the file.
! (M-X save-buffer may not work, because the tag table may reside in
! another buffer.)
  
    Once the Info file has a tag table, you must make certain it is up
***************
*** 578,582 ****
  this:
  
! ^_
  Tag Table:
  File: info, Node: Cross-refs21419
--- 635,639 ----
  this:
  
! ^_^L
  Tag Table:
  File: info, Node: Cross-refs21419
***************
*** 590,594 ****
  beginning of the node.
  
! File: info,  Node: Checking,  Previous: Tags,  Up: Top
  
  Checking an Info File:
--- 647,651 ----
  beginning of the node.
  
! File: info,  Node: Checking,  Previous: Tags,  Up: Top,  Next: Variables
  
  Checking an Info File:
***************
*** 604,628 ****
  Only pointers within the file are checked, because checking pointers
  to other files would be terribly slow.  But those are usually few.
  
    To check an Info file, do M-x Info-validate while looking at any
  node of the file with Info.
  
  Tag table:
! File: info,  Node: Checking25796
! File: info,  Node: Tags24579
! File: info, Node: Cross-refs23926
! File: info, Node: Menus21121
! File: info,  Node: Add18186
! File: info,  Node: Expert15972
! File: info	Node: Help-Q15421
! File: info	Node: Help-Cross14907
! File: info	Node: Help-Adv12631
! File: info	Node: Help-FOO11930
! File: info	Node: Help-M6648
! File: info	Node: Help-^L4141
! File: info	Node: Help-P3393
! File: info	Node: Help2444
! File: info	Node: Help-Small-Screen816
! File: info	Node: Top111
  
  End tag table
--- 661,714 ----
  Only pointers within the file are checked, because checking pointers
  to other files would be terribly slow.  But those are usually few.
+ Nodes are also checked for ambiguous footnotes or menu items, except the
+ menus in nodes matching the variable Info-validate-ambiguous-menus.
  
    To check an Info file, do M-x Info-validate while looking at any
  node of the file with Info.
+ 
+ File: info  Node: Variables,  Prev: Checking,  Up: Top
+ 
+ These variables modify the behavior of Info:
+ 
+ `Info-enable-edit'
+      nil disables the "e" (Info-edit) command, non-nil enables it.
+      (*Note Edit: Add.)
+ 
+ `Info-enable-active-nodes'
+      Non-nil allows Info to execute Lisp code associated with nodes.
+      The Lisp code is executed when the node is selected.
+      (*Note Active nodes: Node format.)
+ 
+ `Info-path'
+      List of directories to search for info files.  Each element is a
+      string (directory name) or nil (try default directory).
+ 
+ `Info-directory'
+      Standard directory for Info documentation files.  Only used as
+      part of Info-path.
+ 
+ `Info-validate-ambiguous-menus'
+      Regexp matching node names which may contain ambiguous menu
+      items. (*Note Checking::).
  
  Tag table:
! Node: Top111
! Node: Help-Small-Screen882
! Node: Help2510
! Node: Help-P3455
! Node: Help-^L4203
! Node: Help-M6710
! Node: Help-FOO11993
! Node: Help-Adv12694
! Node: Help-Cross14970
! Node: Help-Q15484
! Node: Expert16209
! Node: Add18368
! Node: Node format20136
! Node: Menus23591
! Node: Cross-refs26403
! Node: Tags27056
! Node: Checking28366
! Node: Variables29395
  
  End tag table
Technical Details
Message-ID: <9001261126.AA00697@nikud.uio.no>
Path: arc1-ca.pugleaf.net!gmdzi!unido!mcsun!uunet!aplcen!haven!purdue!tut.cis.ohio-state.edu!IFI.UIO.NO!hallvard

Show Full Headers
Complete Article Headers
X-Google-Language: ENGLISH,ASCII-7-bit
X-Google-Thread: fb2f1,3a94d8faf8172ff0,start
X-Google-Attributes: gidfb2f1,public
X-Google-ArrivalTime: 1990-01-26 03:26:47 PST
Path: arc1-ca.pugleaf.net!gmdzi!unido!mcsun!uunet!aplcen!haven!purdue!tut.cis.ohio-state.edu!IFI.UIO.NO!hallvard
From: hallvard@IFI.UIO.NO (Hallvard B Furuseth)
Newsgroups: gnu.emacs.bug
Subject: info patches
Message-ID: <9001261126.AA00697@nikud.uio.no>
Date: 26 Jan 90 11:26:47 GMT
Sender: daemon@tut.cis.ohio-state.edu
Distribution: gnu
Organization: GNUs Not Usenet
Lines: 483
Posted: Fri Jan 26 12:26:47 1990