Commits

Anonymous committed c53a95d

Import from CVS: tag r19-15b101

Comments (0)

Files changed (98)

 							-*- indented-text -*-
+to 19.15 beta101
+-- itimer.el-1.05
+-- hyperbole-4.023
+-- cc-mode.el-4.381
+-- floating-toolbar.el-1.02
+-- balloon-help.el-1.05
+-- W3-3.0.69
+-- VM-6.20
+-- Custom-1.65
+-- Gnus-5.4.30
+-- strip unimplemented subwindows subr code
+-- GIF correction courtesy Darrell Kindred
+
 to 19.15 beta100
 -- GIF crash fix courtesy of David Moore
 -- Fix for problem dumping comint with sparcworks
Add a comment to this file

etc/vm/gear.xpm

Old
Old image
New
New image
 /* XPM */
 static char *gear[] = {
 /* width height num_colors chars_per_pixel */
-"    24    30      241            2",
+"    24    30      242            2",
 /* colors */
 ".. c #aaaaaa s background",
+"zz c #aaaaaa",
 ".# c #8e8e8e",
 ".a c #4d4d4d",
 ".b c #9f9f9f",
 "......#K#X.H.4...p...3.G.J.I.i.i.i.i.6ab.z.r....",
 "......#N.m.4.3.3.G.G.J.J.W.z.i.i.i.n.i.i.i.I....",
 ".....J.6.r.4.3.G.G.J.W.W#K#X.n.6#t.i.i.i.i.n.#..",
-"..#K.0.0.0.3.G.J.J.W.W#K.....#.H.#.n.i.i.i.i#t..",
-"...G.H.3.3.G.J.J.W.W#K.....r.raB#X.6.i.i.i.aaB..",
-"...4.3.G.G.J.J.W#K#K.....r.raB#X#X#i.n.i.n#i....",
+"..#K.0.0.0.3.G.J.J.W.W#Kzzzz.#.H.#.n.i.i.i.i#t..",
+"...G.H.3.3.G.J.J.W.W#Kzzzz.r.raB#X.6.i.i.i.aaB..",
+"...4.3.G.G.J.J.W#K#Kzzzz.r.raB#X#X#i.n.i.n#i....",
 "..#X.r.G.J.J#K.W#K.raB.r.raB#X.#.#.c.a.n.i.6....",
 "..aB.p.r.J.W#K#KaB.p.m#NaB#X.#.#.c.l.z.i.i.m....",
-"....aBaB.W#K#K..#t.n.i.h.#.#.#.c#iab.i.i.i.i#g.I",
-"....#K#K#K.....r.a.z.a.i#X.c.c#i.l.a.i.i.i.i.i.6",
-"...W.H.....r.raB.a.I.m.i.l.##i.l.l.I.i.i.i.n.h#t",
-"...J.G...r.raB#X#tab#t.i.I...l#N#N#N.a.p.n.h.6#t",
+"....aBaB.W#K#Kzz#t.n.i.h.#.#.#.c#iab.i.i.i.i#g.I",
+"....#K#K#Kzzzz.r.a.z.a.i#X.c.c#i.l.a.i.i.i.i.i.6",
+"...W.Hzzzz.r.raB.a.I.m.i.l.##i.l.l.I.i.i.i.n.h#t",
+"...J.Gzz.r.raB#X#tab#t.i.Izz.l#N#N#N.a.p.n.h.6#t",
 ".....3.r.raB#X#X#N.p.p#g.m#K.l#N#N#t.I.I.h.6ab.l",
 ".....3aBaB#X#X.#.c.c.i.i#t.r#N#t#t.I.6.6ababab..",
-".....3.#.c.#.c.c.c...l.p.J.l#t.I.I.I.6.6.pab....",
+".....3.#.c.#.c.c.czz.l.p.J.l#t.I.I.I.6.6.pab....",
 "....#X.a.p#N.c#i#i#i#K.G.c#t.I.I.6.6abab.n.p....",
 "..........#t#i#i.l#N#N#t.I.I.I.6.6ab.m.z.i.naB..",
 "...........J.l#N#N#N#t.I.I.6.6.a.a.h.i.i.i#i....",

lib-src/update-elc.sh

   fi
 fi
 
-EMACS=${XEMACS:-./src/xemacs}
+EMACS="./src/xemacs"
+export EMACS
+
 echo " (using $EMACS)"
 
-export EMACS
-
 # fuckin' sysv, man...
 if [ "`uname -r | sed 's/\(.\).*/\1/'`" -gt 4 ]; then
   echon()
   }
 fi
 
-
 REAL=`cd \`dirname $EMACS\` ; pwd | sed 's|^/tmp_mnt||'`/`basename $EMACS`
 BYTECOMP="$REAL -batch -q -no-site-file "
 echo "Recompiling in `pwd|sed 's|^/tmp_mnt||'`"

lisp/comint/comint-xemacs.el

 
 ;;; Code:
 
+(defgroup 'comint nil
+  "General command interpreter in a window stuff."
+  :group 'processes)
+
 (defface comint-input-face '((((class color)
 			      (background dark))
 			     (:foreground "red"))
 			    (((class color)
 			      (background light))
 			     (:foreground "blue"))
-			    (((class mono))
-			     (:bold t))
-			    (((class grayscale))
-			     (:bold t))
 			    (t 
 			     (:bold t)))
   "How to display user input for comint shells."
-  :group 'comint-input-face)
+  :group 'comint)
 
 
 

lisp/custom/ChangeLog

+Tue Mar 18 14:42:31 1997  Per Abrahamsen  <abraham@dina.kvl.dk>
+
+	* Version 1.65 released.
+
+Tue Mar 18 11:03:02 1997  Per Abrahamsen  <abraham@dina.kvl.dk>
+
+	* cus-face.el (custom-face-attributes): Removed `:invert'.
+	(custom-invert-face): Removed.
+
 Mon Mar 17 11:32:51 1997  Per Abrahamsen  <abraham@dina.kvl.dk>
 
+	* wid-edit.el (widget-file-action): Spelling correction by Greg
+	Stark <gsstark@mit.edu>.
+
 	* Version 1.64 released.
 
 Mon Mar 17 10:43:10 1997  Per Abrahamsen  <abraham@dina.kvl.dk>
 	* cus-edit.el (custom-group-menu-create): Split definition into
 	XEmacs and Emacs.  XEmacs uses :filter.  Emacs limits
 	`custom-menu-nesting'. 
-	(custom-menu-create): Do noy limit `custom-menu-nesting' here. 
+	(custom-menu-create): Do not limit `custom-menu-nesting' here. 
 	(custom-menu-update): Removed XEmacs support.
 
 	* custom.el (custom-help-menu): Use `custom-menu-create' in XEmacs

lisp/custom/cus-edit.el

 ;;
 ;; Author: Per Abrahamsen <abraham@dina.kvl.dk>
 ;; Keywords: help, faces
-;; Version: 1.64
+;; Version: 1.65
 ;; X-URL: http://www.dina.kvl.dk/~abraham/custom/
 
 ;;; Commentary:
     (defun custom-group-menu-create (widget symbol)
       "Ignoring WIDGET, create a menu entry for customization group SYMBOL."
       `( ,(custom-unlispify-menu-entry symbol t)
-	  :filter (lambda (&rest junk)
-		    (cdr (custom-menu-create ',symbol)))))
+	 :filter (lambda (&rest junk)
+		   (cdr (custom-menu-create ',symbol)))))
   ;; But emacs can't.
   (defun custom-group-menu-create (widget symbol)
     "Ignoring WIDGET, create a menu entry for customization group SYMBOL."

lisp/custom/cus-face.el

 ;;
 ;; Author: Per Abrahamsen <abraham@dina.kvl.dk>
 ;; Keywords: help, faces
-;; Version: 1.64
+;; Version: 1.65
 ;; X-URL: http://www.dina.kvl.dk/~abraham/custom/
 
 ;;; Commentary:
        ;; Too hard to do right on XEmacs.
        (defalias 'initialize-face-resources 'ignore)))
 
-(if (string-match "XEmacs" emacs-version)
-    ;; Xemacs.
-    (defun custom-invert-face (face &optional frame)
-      "Swap the foreground and background colors of face FACE.
-If the colors are not specified in the face, use the default colors."
-      (interactive (list (read-face-name "Reverse face: ")))
-      (let ((fg (color-name (face-foreground face frame) frame))
-	    (bg (color-name (face-background face frame) frame)))
-	(set-face-foreground face bg frame)
-	(set-face-background face fg frame)))
-  ;; Emacs.
-  (defun custom-invert-face (face &optional frame)
-    "Swap the foreground and background colors of face FACE.
-If the colors are not specified in the face, use the default colors."
-    (interactive (list (read-face-name "Reverse face: ")))
-    (let ((fg (or (face-foreground face frame)
-		  (face-foreground 'default frame)
-		  (frame-property (or frame (selected-frame))
-				  'foreground-color)
-		  "black"))
-	  (bg (or (face-background face frame)
-		  (face-background 'default frame)
-		  (frame-property (or frame (selected-frame))
-				  'background-color)
-		  "white")))
-      (set-face-foreground face bg frame)
-      (set-face-background face fg frame))))
+;;(if (string-match "XEmacs" emacs-version)
+;;    ;; Xemacs.
+;;    (defun custom-invert-face (face &optional frame)
+;;      "Swap the foreground and background colors of face FACE.
+;;If the colors are not specified in the face, use the default colors."
+;;      (interactive (list (read-face-name "Reverse face: ")))
+;;      (let ((fg (color-name (face-foreground face frame) frame))
+;;	    (bg (color-name (face-background face frame) frame)))
+;;	(set-face-foreground face bg frame)
+;;	(set-face-background face fg frame)))
+;;  ;; Emacs.
+;;  (defun custom-invert-face (face &optional frame)
+;;    "Swap the foreground and background colors of face FACE.
+;;If the colors are not specified in the face, use the default colors."
+;;    (interactive (list (read-face-name "Reverse face: ")))
+;;    (let ((fg (or (face-foreground face frame)
+;;		  (face-foreground 'default frame)
+;;		  (frame-property (or frame (selected-frame))
+;;				  'foreground-color)
+;;		  "black"))
+;;	  (bg (or (face-background face frame)
+;;		  (face-background 'default frame)
+;;		  (frame-property (or frame (selected-frame))
+;;				  'background-color)
+;;		  "white")))
+;;      (set-face-foreground face bg frame)
+;;      (set-face-background face fg frame))))
 
 (defcustom custom-background-mode nil
   "The brightness of the background.
 			:value "white"
 			:help-echo "Set background color.")
 		 set-face-background)
-    (:invert (const :format "Invert Face\n" 
-		    :sibling-args (:help-echo "\
-Reverse the foreground and background color.
-If you haven't specified them for the face, the default colors will be used.")
-		    t)
-	     (lambda (face value &optional frame)
-	       ;; We don't use VALUE.
-	       (custom-invert-face face frame)))
+    ;;    (:invert (const :format "Invert Face\n" 
+    ;;		    :sibling-args (:help-echo "
+    ;;Reverse the foreground and background color.
+    ;;If you haven't specified them for the face, the default colors will be used.")
+    ;;		    t)
+    ;;	     (lambda (face value &optional frame)
+    ;;	       ;; We don't use VALUE.
+    ;;	       (custom-invert-face face frame)))
     (:stipple (editable-field :format "Stipple: %v"
 			      :help-echo "Name of background bitmap file.")
 	      set-face-stipple))

lisp/custom/custom.el

 ;;
 ;; Author: Per Abrahamsen <abraham@dina.kvl.dk>
 ;; Keywords: help, faces
-;; Version: 1.64
+;; Version: 1.65
 ;; X-URL: http://www.dina.kvl.dk/~abraham/custom/
 
 ;;; Commentary:

lisp/custom/wid-browse.el

 ;;
 ;; Author: Per Abrahamsen <abraham@dina.kvl.dk>
 ;; Keywords: extensions
-;; Version: 1.64
+;; Version: 1.65
 ;; X-URL: http://www.dina.kvl.dk/~abraham/custom/
 
 ;;; Commentary:

lisp/custom/wid-edit.el

 ;;
 ;; Author: Per Abrahamsen <abraham@dina.kvl.dk>
 ;; Keywords: extensions
-;; Version: 1.64
+;; Version: 1.65
 ;; X-URL: http://www.dina.kvl.dk/~abraham/custom/
 
 ;;; Commentary:
 	 (file (file-name-nondirectory value))
 	 (menu-tag (widget-apply widget :menu-tag-get))
 	 (must-match (widget-get widget :must-match))
-	 (answer (read-file-name (concat menu-tag ": (defalt `" value "') ")
+	 (answer (read-file-name (concat menu-tag ": (default `" value "') ")
 				 dir nil must-match file)))
     (widget-value-set widget (abbreviate-file-name answer))
     (widget-apply widget :notify widget event)

lisp/custom/widget-example.el

 ;;
 ;; Author: Per Abrahamsen <abraham@dina.kvl.dk>
 ;; Keywords: help, extensions, faces, hypermedia
-;; Version: 1.64
+;; Version: 1.65
 ;; X-URL: http://www.dina.kvl.dk/~abraham/custom/
 
 (require 'widget)

lisp/custom/widget.el

 ;;
 ;; Author: Per Abrahamsen <abraham@dina.kvl.dk>
 ;; Keywords: help, extensions, faces, hypermedia
-;; Version: 1.64
+;; Version: 1.65
 ;; X-URL: http://www.dina.kvl.dk/~abraham/custom/
 
 ;;; Commentary:

lisp/gnus/ChangeLog

+Tue Mar 18 23:54:17 1997  Lars Magne Ingebrigtsen  <larsi@menja.ifi.uio.no>
+
+	* gnus.el: Gnus v5.4.30 is released.
+
+Tue Mar 18 23:43:50 1997  Lars Magne Ingebrigtsen  <larsi@ifi.uio.no>
+
+	* gnus-group.el (gnus-group-subscribe): Doc fix.
+
+Tue Mar 18 23:39:08 1997  Lance A. Brown  <brown9@niehs.nih.gov>
+
+	* gnus-sum.el (gnus-update-marks): Articles->list.
+
+Tue Mar 18 23:07:35 1997  Lars Magne Ingebrigtsen  <larsi@ifi.uio.no>
+
+	* gnus-sum.el (gnus-summary-update-article-line): Don't pass nil
+	on as subject string.
+
+	* gnus-group.el (gnus-group-read-group): Revert to old
+	definition. 
+
+	* gnus-sum.el (gnus-summary-read-group-1): New function.
+	(gnus-summary-read-group): Use it.
+
+Tue Mar 18 17:56:26 1997  Lars Magne Ingebrigtsen  <larsi@menja.ifi.uio.no>
+
+	* gnus.el: Gnus v5.4.29 is released.
+
+Tue Mar 18 14:29:49 1997  Lars Magne Ingebrigtsen  <larsi@ifi.uio.no>
+
+	* gnus-group.el (gnus-group-read-ephemeral-group): Would set virt
+	ser too much. 
+	(gnus-group-read-group): Return right value.
+
+	* nnml.el (nnml-generate-nov-databases-1): Save active.
+
+	* gnus-msg.el (gnus-summary-supersede-article): Place point in the
+	with buffer.
+	(gnus-inews-add-to-address): Prompt before adding.
+
+	* gnus-art.el (article-strip-leading-space): Not a new command
+	and keystroke (HTDW Jaari fix).
+
+	* nnfolder.el (nnfolder-close-group): Don't push bogus entries
+	onto alist.
+
+Tue Mar 18 14:28:27 1997  Jan Vroonhof  <vroonhof@math.ethz.ch>
+
+	* nnfolder.el (nnfolder-request-scan): Check whether buffer really
+	is live.
+
+Tue Mar 18 13:53:00 1997  Lars Magne Ingebrigtsen  <larsi@ifi.uio.no>
+
+	* gnus-group.el (gnus-group-read-group): Iterate instead of
+	recurse. 
+
+	* nnfolder.el (nnfolder-request-accept-article): Don't insert into
+	Message-ID cache.
+	* nnbabyl.el (nnbabyl-request-accept-article): Ditto.
+	* nnmbox.el (nnmbox-request-accept-article): Ditto.
+	* nnml.el (nnml-request-accept-article): Ditto.
+	* nnmh.el (nnmh-request-accept-article): Ditto.
+
 Tue Mar 18 00:35:06 1997  Lars Magne Ingebrigtsen  <larsi@menja.ifi.uio.no>
 
 	* gnus.el: Gnus v5.4.28 is released.

lisp/gnus/gnus-art.el

       (while (re-search-forward "\n\n\n+" nil t)
 	(replace-match "\n\n" t t)))))
 
+(defun article-strip-leading-space ()
+  "Remove all white space from the beginning of the lines in the article."
+  (interactive)
+  (save-excursion
+    (let ((inhibit-point-motion-hooks t)
+	  buffer-read-only)
+      (goto-char (point-min))
+      (search-forward "\n\n" nil t)
+      (while (re-search-forward "^[ \t]+" nil t)
+	(replace-match "" t t)))))
+
 (defun article-strip-blank-lines ()
   "Strip leading, trailing and multiple blank lines."
   (interactive)
      article-remove-trailing-blank-lines
      article-strip-leading-blank-lines
      article-strip-multiple-blank-lines
+     article-strip-leading-space
      article-strip-blank-lines
      article-date-local
      article-date-original

lisp/gnus/gnus-group.el

     (require (car method))
     (when (boundp saddr)
       (unless (assq saddr method)
-	(nconc method `((,saddr ,(cadr method)))))
-      (setf (cadr method) (format "%s-%d" (cadr method)
-				  (incf gnus-ephemeral-group-server)))))
+	(nconc method `((,saddr ,(cadr method))))
+	(setf (cadr method) (format "%s-%d" (cadr method)
+				    (incf gnus-ephemeral-group-server))))))
   (let ((group (if (gnus-group-foreign-p group) group
 		 (gnus-group-prefixed-name group method))))
     (gnus-sethash
   (gnus-group-unsubscribe-current-group n 'unsubscribe))
 
 (defun gnus-group-subscribe (&optional n)
-  "Unsubscribe the current group."
+  "Subscribe the current group."
   (interactive "P")
   (gnus-group-unsubscribe-current-group n 'subscribe))
 

lisp/gnus/gnus-msg.el

       (message-supersede)
       (push
        `((lambda ()
-	   (gnus-cache-possibly-remove-article ,article nil nil nil t)))
-       message-send-actions)
-      (push
-       `((lambda ()
 	   (when (buffer-name (get-buffer ,gnus-summary-buffer))
 	     (save-excursion
 	       (set-buffer (get-buffer ,gnus-summary-buffer))
+	       (gnus-cache-possibly-remove-article ,article nil nil nil t)
 	       (gnus-summary-mark-as-read ,article gnus-canceled-mark)))))
        message-send-actions))))
 
 	       (gnus-alive-p))
       ;; This mail group doesn't have a `to-list', so we add one
       ;; here.  Magic!
-      (gnus-group-add-parameter group (cons 'to-list to-address)))))
+      (when (gnus-y-or-n-p
+	     (format "Do you want to add this as `to-list': %s " to-address))
+	(gnus-group-add-parameter group (cons 'to-list to-address))))))
 
 (defun gnus-put-message ()
   "Put the current message in some group and return to Gnus."

lisp/gnus/gnus-sum.el

     "t" gnus-article-remove-trailing-blank-lines
     "l" gnus-article-strip-leading-blank-lines
     "m" gnus-article-strip-multiple-blank-lines
-    "a" gnus-article-strip-blank-lines)
+    "a" gnus-article-strip-blank-lines
+    "s" gnus-article-strip-leading-space)
 
   (gnus-define-keys (gnus-summary-help-map "H" gnus-summary-mode-map)
     "v" gnus-version
 	 ["Leading" gnus-article-strip-leading-blank-lines t]
 	 ["Multiple" gnus-article-strip-multiple-blank-lines t]
 	 ["Trailing" gnus-article-remove-trailing-blank-lines t]
-	 ["All of the above" gnus-article-strip-blank-lines t])
+	 ["All of the above" gnus-article-strip-blank-lines t]
+	 ["Leading space" gnus-article-strip-leading-space t])
 	["Overstrike" gnus-article-treat-overstrike t]
 	["Emphasis" gnus-article-emphasize t]
 	["Word wrap" gnus-article-fill-cited-article t]
 If SHOW-ALL is non-nil, already read articles are also listed.
 If NO-ARTICLE is non-nil, no article is selected initially.
 If NO-DISPLAY, don't generate a summary buffer."
+  (let (result)
+    (while (and group
+		(null (setq result
+			    (gnus-summary-read-group-1
+			     group show-all no-article
+			     kill-buffer no-display)))
+		(eq gnus-auto-select-next 'quietly))
+      (set-buffer gnus-group-buffer)
+      (if (not (equal group (gnus-group-group-name)))
+	  (setq group (gnus-group-group-name))
+	(setq group nil)))
+    result))
+
+(defun gnus-summary-read-group-1 (group show-all no-article
+					kill-buffer no-display)
   ;; Killed foreign groups can't be entered.
   (when (and (not (gnus-group-native-p group))
 	     (not (gnus-gethash group gnus-newsrc-hashtb)))
 	       (not no-display))
 	  (progn
 	    ;; This newsgroup is empty.
-	    (gnus-summary-catchup-and-exit nil t) ;Without confirmations.
+	    (gnus-summary-catchup-and-exit nil t)
 	    (gnus-message 6 "No unread news")
 	    (when kill-buffer
 	      (gnus-kill-or-deaden-summary kill-buffer))
        (memq article gnus-newsgroup-expirable)
        ;; Only insert the Subject string when it's different
        ;; from the previous Subject string.
-       (unless (gnus-subject-equal
-		(condition-case ()
-		    (mail-header-subject
-		     (gnus-data-header
-		      (cadr
-		       (gnus-data-find-list
-			article
-			(gnus-data-list t)))))
-		  (error ""))
-		(mail-header-subject header))
-	 (mail-header-subject header))
+       (if (gnus-subject-equal
+	    (condition-case ()
+		(mail-header-subject
+		 (gnus-data-header
+		  (cadr
+		   (gnus-data-find-list
+		    article
+		    (gnus-data-list t)))))
+	      (error ""))
+	    (mail-header-subject header))
+	   (mail-header-subject header)
+	 "")
        nil (cdr (assq article gnus-newsgroup-scored))
        (memq article gnus-newsgroup-processable))
       (when length
 		     gnus-save-score
 		     list)
 	    (let* ((arts list)
-		   (prev (cons nil articles))
+		   (prev (cons nil list))
 		   (all prev))
 	      (while arts
 		(if (or (not (consp (car arts)))

lisp/gnus/gnus.el

   :link '(custom-manual "(gnus)Exiting Gnus")
   :group 'gnus)
 
-(defconst gnus-version-number "5.4.28"
+(defconst gnus-version-number "5.4.30"
   "Version number for this version of Gnus.")
 
 (defconst gnus-version (format "Gnus v%s" gnus-version-number)

lisp/gnus/nnbabyl.el

        (save-excursion
 	 (while (re-search-backward "^X-Gnus-Newsgroup: " beg t)
 	   (delete-region (point) (progn (forward-line 1) (point)))))
-       (nnmail-cache-insert (nnmail-fetch-field "message-id"))
        (setq result (car (nnbabyl-save-mail
 			  (if (stringp group)
 			      (list (cons group (nnbabyl-active-number group)))
        (goto-char (match-end 0))
        (insert-buffer-substring buf)
        (when last
-	 (nnmail-cache-insert (nnmail-fetch-field "message-id"))
 	 (save-buffer)
 	 (nnmail-save-active nnbabyl-group-alist nnbabyl-active-file))
        result))))

lisp/gnus/nnfolder.el

        (let ((bufs nnfolder-buffer-alist))
 	 (save-excursion
 	   (while bufs
-	     (if (not (buffer-name (nth 1 (car bufs))))
+	     (if (not (buffer-live-p (nth 1 (car bufs))))
 		 (setq nnfolder-buffer-alist
 		       (delq (car bufs) nnfolder-buffer-alist))
 	       (set-buffer (nth 1 (car bufs)))
 	    (equal group nnfolder-current-group))
     (let ((inf (assoc group nnfolder-buffer-alist)))
       (when inf
-	(when nnfolder-current-group
+	(when (and nnfolder-current-group
+		   nnfolder-current-buffer)
 	  (push (list nnfolder-current-group nnfolder-current-buffer)
 		nnfolder-buffer-alist))
 	(setq nnfolder-buffer-alist
        (forward-line -1)
        (while (re-search-backward (concat "^" nnfolder-article-marker) nil t)
 	 (delete-region (point) (progn (forward-line 1) (point))))
-       (nnmail-cache-insert (nnmail-fetch-field "message-id"))
        (setq result
 	     (car (nnfolder-save-mail
 		   (if (stringp group)
      (when last
        (save-excursion
 	 (nnfolder-possibly-change-folder (or (caar art-group) group))
-	 (nnfolder-save-buffer)
-	 (nnmail-cache-close))))
+	 (nnfolder-save-buffer))))
     (nnmail-save-active nnfolder-group-alist nnfolder-active-file)
     (unless result
       (nnheader-report 'nnfolder "Couldn't store article"))

lisp/gnus/nnmbox.el

        (forward-line -1)
        (while (re-search-backward "^X-Gnus-Newsgroup: " nil t)
 	 (delete-region (point) (progn (forward-line 1) (point))))
-       (nnmail-cache-insert (nnmail-fetch-field "message-id"))
        (setq result (nnmbox-save-mail
 		     (if (stringp group)
 			 (list (cons group (nnmbox-active-number group)))
        (goto-char (point-max))
        (insert-buffer-substring buf)
        (when last
-	 (nnmail-cache-close)
 	 (nnmail-save-active nnmbox-group-alist nnmbox-active-file)
 	 (save-buffer))))
     (car result)))

lisp/gnus/nnmh.el

 (deffoo nnmh-request-accept-article (group &optional server last noinsert)
   (nnmh-possibly-change-directory group server)
   (nnmail-check-syntax)
-  (nnmail-cache-insert (nnmail-fetch-field "message-id"))
-  (prog1
-      (if (stringp group)
-	  (and
-	   (nnmail-activate 'nnmh)
-	   (car (nnmh-save-mail
-		 (list (cons group (nnmh-active-number group)))
-		 noinsert)))
-	(and
-	 (nnmail-activate 'nnmh)
-	 (car (nnmh-save-mail (nnmail-article-group 'nnmh-active-number)
-			      noinsert))))
-    (when last
-      (nnmail-cache-close))))
+  (if (stringp group)
+      (and
+       (nnmail-activate 'nnmh)
+       (car (nnmh-save-mail
+	     (list (cons group (nnmh-active-number group)))
+	     noinsert)))
+    (and
+     (nnmail-activate 'nnmh)
+     (car (nnmh-save-mail (nnmail-article-group 'nnmh-active-number)
+			  noinsert)))))
 
 (deffoo nnmh-request-replace-article (article group buffer)
   (nnmh-possibly-change-directory group)

lisp/gnus/nnml.el

   (nnml-possibly-change-directory group server)
   (nnmail-check-syntax)
   (let (result)
-    (nnmail-cache-insert (nnmail-fetch-field "message-id"))
     (if (stringp group)
 	(and
 	 (nnmail-activate 'nnml)
 			  (nnmail-article-group 'nnml-active-number))))
        (when last
 	 (nnmail-save-active nnml-group-alist nnml-active-file)
-	 (nnmail-cache-close)
 	 (nnml-save-nov))))
     result))
 
   (nnml-open-server (or (nnoo-current-server 'nnml) ""))
   (setq nnml-directory (expand-file-name nnml-directory))
   ;; Recurse down the directories.
-  (nnml-generate-nov-databases-1 nnml-directory)
+  (nnml-generate-nov-databases-1 nnml-directory nil t)
   ;; Save the active file.
   (nnmail-save-active nnml-group-alist nnml-active-file))
 
-(defun nnml-generate-nov-databases-1 (dir &optional seen)
+(defun nnml-generate-nov-databases-1 (dir &optional seen no-active)
   "Regenerate the NOV database in DIR."
   (interactive "DRegenerate NOV in: ")
   (setq dir (file-name-as-directory dir))
       (when files
 	(funcall nnml-generate-active-function dir)
 	;; Generate the nov file.
-	(nnml-generate-nov-file dir files)))))
+	(nnml-generate-nov-file dir files)
+	(unless no-active
+	  (nnmail-save-active nnml-group-alist nnml-active-file))))))
 
 (defvar files)
 (defun nnml-generate-active-info (dir)

lisp/hyperbole/ChangeLog

+Thu Mar 13 22:01:52 1997  Bob Weiner  <weiner@infodock.com>
+
+* wrolo.el (rolo-toggle-datestamps): Added.
+* hui-mini.el (hui:menus): Added Cust/Toggle-Rolodex-Dates entry.
+* hui-menu.el (hui-menu-options): Added Customization/Toggle-Rolodex-Dates
+    item.
+* wrolo.el (rolo-add): Added wrolo-add-hook, executed after the record
+    is added.
+           (rolo-edit): Added wrolo-edit-hook, executed after point is
+    successfully moved to the record to edit.  These can be used, for
+    example, to add and update date entries in address records.
+           (rolo-current-date): Added.
+	   (rolo-set-date): Added and used as default wrolo-add-hook and
+    wrolo-edit-hook settings.
+
+Mon Mar 10 12:17:15 1997  Bob Weiner  <weiner@infodock.com>
+
+* hsys-w3.el (www-url): Eliminated call of external Web browser if not
+    running under a window system.
+
+Sun Mar  9 01:32:03 1997  Bob Weiner  <weiner@infodock.com>
+
+* hpath.el (hpath:url-at-p):
+	   (hpath:www-at-p): Fixed bug that referred to an optional match
+    component without checking if it was matched.
+           (hpath:url-p): Changed doc to reflect that pathname can be optional.
+
+* hsite-ex.el: Added (require 'hyperbole) to ensure that this file
+    is loaded if hsite.el is autoloaded, e.g. under XEmacs.
+
+Thu Mar  6 14:14:05 1997  Bob Weiner  <weiner@infodock.com>
+
+* hui-mini.el (hyperbole): Added autoload special comment.
+
+Wed Mar  5 01:14:47 1997  Bob Weiner  <weiner@infodock.com>
+
+* kotl/kotl-mode.el (kotl-mode:center-line): 
+* kotl/kview.el (kcell-view:line): Changed calls to
+    kotl-mode:beginning-of-line to kotl-mode:start-of-line to avoid an
+    XEmacs byte compiler bug in some versions.  The bug shows up when
+    kotl-mode:center-line is called on the first line of a cell and the
+    cell label is centered along with the line (the label should not
+    move).
+
+Tue Mar  4 20:45:52 1997  Bob Weiner  <weiner@infodock.com>
+
+* hsite-ex.el (hpath:find-alist): Modified to use `xv' to display xpm
+  files; it is more robust than `sxpm' in the face of limited colors.
+
+Mon Mar  3 12:06:49 1997  Bob Weiner  <weiner@infodock.com>
+
+* hui-menu.el (infodock-hyperbole-menu): Added :config 'Hyperbole
+    configurator to the menu so users can hide the Hyperbole
+    menu from the menubar if they don't use it, via menubar-configuration,
+    under XEmacs and InfoDock.
+
+Sun Mar  2 22:35:26 1997  Bob Weiner  <weiner@infodock.com>
+
+* kotl/kotl-mode.el (kotl-mode:set-cell-attribute): Changed
+    read-expression to read-minibuffer since GNU Emacs doesn't
+    have the former.
+
+Fri Feb 28 23:31:57 1997  Bob Weiner  <weiner@infodock.com>
+
+* kotl/kprop-xe.el (kproperty:put): Fixed problem with internal handling
+    of text property protocols within newer versions of XEmacs.  The
+    `text-prop' symbol can no longer be set to `t'.  It must be set to
+    a symbol from the property list of the extent that carries
+    text-properties.
+
+==============================================================================
+V4.023 changes ^^^^:
+==============================================================================
+
 Sat Feb 22 14:30:14 1997  Bob Weiner  <weiner@infodock.com>
 
 * hypb.el (hypb:ida-logo-keymap): Added conditional for Emacs keybinding.

lisp/hyperbole/Makefile

 # AUTHOR:       Bob Weiner
 #
 # ORIG-DATE:    15-Jun-94 at 03:42:38
-# LAST-MOD:     23-Feb-97 at 23:22:48 by Bob Weiner
+# LAST-MOD:     18-Mar-97 at 00:45:58 by Bob Weiner
 #
 # This file is part of Hyperbole.
 # Available for use and distribution under the same terms as GNU Emacs.
 #                     NO CHANGES REQUIRED BELOW HERE.                    #
 ##########################################################################
 
-HYPB_VERSION = 4.022
+HYPB_VERSION = 4.023
 
 # Libraries that must be pre-loaded before trying to byte-compile anything.
 PRELOADS = $(SITE_PRELOADS) -l ./hversion.el -l ./hyperbole.el -l ./hsite.el

lisp/hyperbole/README

 #               Tel: +1 408-243-3300
 #
 # ORIG-DATE:    19-Oct-91 at 03:27:47
-# LAST-MOD:     23-Feb-97 at 23:25:29 by Bob Weiner
+# LAST-MOD:     17-Mar-97 at 21:14:10 by Bob Weiner
 #
 # See the Copyright section below for license information.
 
 
 
 ===========================================================================
-*			 What's New in V4.02-V4.022
+*			 What's New in V4.02-V4.023
 ===========================================================================
 
   (See "ChangeLog" for more complete details of changes.)
 
   ACTION AND ASSIST KEYS
 
+    - Action Key clicks on HTTP URLs use the Emacs internal web browser
+      if not running under a window system.
+
     - Support for new ID-edit mode (a part of InfoDock) that allows rapid,
       cutting, copying and yanking of regions plus fast display management.
       In this mode, the Action and Assist keys yank the previously selected
 
   ROLODEX
 
+    - Date stamps are added to each rolodex entry when created and updated
+      when edited.  This feature can be toggled on and off with:
+      M-x rolo-toggle-datestamps RET, or via the Toggle-Rolodex-Dates menu
+      item on the Customization menu.
+
+    - wrolo-add-hook is called after a new entry is added.
+      wrolo-edit-hook is called after an entry is displayed for editing.
+
     - Rolo-edit, bound to {e} in the rolodex match buffer, now works properly
       if the rolodex is loaded before the rest of the Hyperbole system.
 

lisp/hyperbole/hpath.el

 ;; ORG:          InfoDock Associates
 ;;
 ;; ORIG-DATE:     1-Nov-91 at 00:44:23
-;; LAST-MOD:     16-Feb-97 at 02:34:35 by Bob Weiner
+;; LAST-MOD:      9-Mar-97 at 01:38:33 by Bob Weiner
 
 ;;; ************************************************************************
 ;;; Public variables
   4 = optional username
   4 = host and domain to connect to
   5 = optional port number to use
-  6 = pathname to access."
-  ;; WWW URL format:  [URL:]<protocol>:/[<user>@]<domain>[:<port>]/<path>
-  ;;             or   [URL:]<protocol>://[<user>@]<domain>[:<port>]<path>
+  6 = optional pathname to access."
+  ;; WWW URL format:  [URL:]<protocol>:/[<user>@]<domain>[:<port>][/<path>]
+  ;;             or   [URL:]<protocol>://[<user>@]<domain>[:<port>][<path>]
   ;; Avoid [a-z]:/path patterns since these may be disk paths on OS/2, DOS or
   ;; Windows.
   (if (looking-at "\\(URL:\\)?\\([a-zA-Z][a-zA-Z]+\\)://?\\([^@/: \t\n\^M]+@\\)?\\([^/:@ \t\n\^M\"`']+\\)\\(:[0-9]+\\)?\\([/~][^]@ \t\n\^M\"`'\)\}>]*\\)?")
       (save-excursion
-	(goto-char (match-end 6))
+	(goto-char (match-end 0))
 	(skip-chars-backward ".?#!*()")
 	(buffer-substring (match-beginning 2) (point)))))
 
   3 = optional username
   4 = host and domain to connect to
   5 = optional port number to use
-  6 = pathname to access."
-  ;; WWW URL format:  [URL:]<protocol>:/[<user>@]<domain>[:<port>]/<path>
-  ;;             or   [URL:]<protocol>://[<user>@]<domain>[:<port>]<path>
+  6 = optional pathname to access."
+  ;; WWW URL format:  [URL:]<protocol>:/[<user>@]<domain>[:<port>][/<path>]
+  ;;             or   [URL:]<protocol>://[<user>@]<domain>[:<port>][<path>]
   ;; Avoid [a-z]:/path patterns since these may be disk paths on OS/2, DOS or
   ;; Windows.
   (and (stringp obj)
     (cond ((not include-start-and-end-p)
 	   (hpath:url-at-p))
 	  ((hpath:url-at-p)
-	   (list (buffer-substring (match-beginning 2) (match-end 6))
+	   (list (buffer-substring (match-beginning 2) (match-end 0))
 		 (match-beginning 2)
-		 (match-end 6))))))
+		 (match-end 0))))))
 
 (defun hpath:www-p (path)
   "Returns non-nil iff PATH is a world-wide-web link reference."

lisp/hyperbole/hsite-ex.el

 ;; ORG:          InfoDock Associates
 ;;
 ;; ORIG-DATE:    15-Apr-91 at 00:48:49
-;; LAST-MOD:     17-Feb-97 at 18:34:17 by Bob Weiner
+;; LAST-MOD:      8-Mar-97 at 22:52:36 by Bob Weiner
 ;;
 ;; This file is part of Hyperbole.
 ;; Available for use and distribution under the same terms as GNU Emacs.

lisp/hyperbole/hsys-w3.el

 ;; ORG:          Motorola Inc.
 ;;
 ;; ORIG-DATE:     7-Apr-94 at 17:17:39 by Bob Weiner
-;; LAST-MOD:      3-Nov-95 at 23:14:34 by Bob Weiner
+;; LAST-MOD:     10-Mar-97 at 12:17:08 by Bob Weiner
 ;;
 ;; This file is part of Hyperbole.
 ;; Available for use and distribution under the same terms as GNU Emacs.
 	     '(highlight-headers-follow-url-netscape
 	       highlight-headers-follow-url-mosaic))
        (require 'highlight-headers))
-  (funcall action-key-url-function url))
+  (if window-system
+      (funcall action-key-url-function url)
+    (w3-fetch url)))
 
 (defun www-url:help (&optional but)
   "Displays history list of www nodes previously visited with the W3 browser."

lisp/hyperbole/hui-em19-b.el

 ;; KEYWORDS:     faces, hypermedia
 ;;
 ;; AUTHOR:       Bob Weiner
-;; ORG:          Brown U.
+;; ORG:          InfoDock Associates
 ;;
 ;; ORIG-DATE:    21-Aug-92
-;; LAST-MOD:     24-Oct-95 at 19:54:59 by Bob Weiner
+;; LAST-MOD:     26-Feb-97 at 01:58:45 by Bob Weiner
 ;;
 ;; This file is part of Hyperbole.
 ;; It is for use with GNU Emacs V19.
 
 (defun hproperty:but-add (start end face)
   "Add between START and END a button using FACE in current buffer.
-If 'hproperty:but-emphasize-p' is non-nil when this is called, emphasize that
+If `hproperty:but-emphasize-p' is non-nil when this is called, emphasize that
 button is selectable whenever the mouse cursor moves over it."
   (let ((but (make-overlay start end)))
     (overlay-put but 'face face)
 If REGEXP-MATCH is non-nil, only buttons matching this argument are
 highlighted.
 
-If 'hproperty:but-emphasize-p' is non-nil when this is called, emphasize that
+If `hproperty:but-emphasize-p' is non-nil when this is called, emphasize that
 button is selectable whenever the mouse cursor moves over it."
   (interactive)
   (hproperty:but-clear)

lisp/hyperbole/hui-menu.el

 ;; ORG:          InfoDock Associates
 ;;
 ;; ORIG-DATE:    28-Oct-94 at 10:59:44
-;; LAST-MOD:     19-Feb-97 at 10:50:57 by Bob Weiner
+;; LAST-MOD:     14-Mar-97 at 01:35:02 by Bob Weiner
 ;;
 ;; Copyright (C) 1994, 1995, 1996, 1997  Free Software Foundation, Inc.
 ;;
 	    ["Scrolls-Proportionally"
 	     (setq smart-scroll-proportional t)
 	     :style radio :selected smart-scroll-proportional]
+	    )
+	  '("----"
+	    ["Toggle-Rolodex-Dates" rolo-toggle-datestamps
+	     :style toggle :selected (and (boundp 'wrolo-add-hook)
+					  (listp wrolo-add-hook)
+					  (memq 'rolo-set-date wrolo-add-hook))]
 	    ))
   "Untitled menu of Hyperbole options.")
 
   (delq nil
 	(list
 	 "Hyperbole"
+	 :config 'Hyperbole
 	 '["About" (hypb:display-file-with-logo
 		    (expand-file-name "ABOUT" hyperb:dir)) t]
 	 '["Manual"      (id-info "(hyperbole.info)Top") t]

lisp/hyperbole/hui-mini.el

 ;; ORG:          InfoDock Associates
 ;;
 ;; ORIG-DATE:    15-Oct-91 at 20:13:17
-;; LAST-MOD:      6-Mar-97 at 14:08:46 by Bob Weiner
+;; LAST-MOD:     17-Mar-97 at 21:28:26 by Bob Weiner
 ;;
 ;; This file is part of Hyperbole.
 ;; Available for use and distribution under the same terms as GNU Emacs.
 	   "Sets where referents are displayed.")
 	  ("Smart-Key-at-Eol/" (menu . cust-eol)
 	   "Sets how scrolling via end of line presses works.")
+	  ("Toggle-Rolo-Dates"
+	   (if (and (boundp 'wrolo-add-hook) (listp wrolo-add-hook)
+		    (memq 'rolo-set-date wrolo-add-hook))
+	       (progn (remove-hook 'wrolo-add-hook 'rolo-set-date)
+		      (remove-hook 'wrolo-edit-hook 'rolo-set-date)
+		      (message "Rolodex date stamps are now turned off."))
+	     (add-hook 'wrolo-add-hook 'rolo-set-date)
+	     (add-hook 'wrolo-edit-hook 'rolo-set-date)
+	     (message "Rolodex date stamps are now turned on."))
+	   "Toggle whether date stamps are update when rolodex entries are edited.")
 	  ("URL-Display/" (menu . cust-urls) "Sets where URLs are displayed.")))
        '(cust-eol .
          (("Smart Key press at eol scrolls>")
       (progn (beep) nil)
     (unwind-protect
 	(progn
-	  (require 'hyperbole)
 	  (require 'hsite) ;; Since "hui-mini" may be loaded without loading
 			   ;; all of Hyperbole.
 	  (hyperb:init-menubar)

lisp/hyperbole/hui-xe-but.el

 ;; KEYWORDS:     faces, hypermedia
 ;;
 ;; AUTHOR:       Bob Weiner
-;; ORG:          Brown U.
+;; ORG:          InfoDock Associates
 ;;
 ;; ORIG-DATE:    21-Aug-92
-;; LAST-MOD:     24-Oct-95 at 19:55:08 by Bob Weiner
+;; LAST-MOD:     26-Feb-97 at 01:58:01 by Bob Weiner
 ;;
 ;; This file is part of Hyperbole.
 ;; It is for use with XEmacs, a modified version of GNU Emacs V19.
 
 (defun hproperty:but-add (start end face)
   "Add between START and END a button using FACE in current buffer.
-If 'hproperty:but-emphasize-p' is non-nil when this is called, emphasize that
+If `hproperty:but-emphasize-p' is non-nil when this is called, emphasize that
 button is selectable whenever the mouse cursor moves over it."
   (let ((but (make-extent start end)))
     (set-extent-face but face)
 If REGEXP-MATCH is non-nil, only buttons matching this argument are
 highlighted.
 
-If 'hproperty:but-emphasize-p' is non-nil when this is called, emphasize that
+If `hproperty:but-emphasize-p' is non-nil when this is called, emphasize that
 button is selectable whenever the mouse cursor moves over it."
   (interactive)
   (hproperty:but-clear)

lisp/hyperbole/hversion.el

 ;;!emacs
 ;;
-;; LCD-ENTRY:    hyperbole|Bob Weiner|hyperbole@infodock.com|Everyday Info Manager|23-Feb-97|4.022|ftp://ftp.xemacs.org/pub/infodock
+;; LCD-ENTRY:    hyperbole|Bob Weiner|hyperbole@infodock.com|Everyday Info Manager|17-Mar-97|4.023|ftp://ftp.xemacs.org/pub/infodock
 ;;
 ;; FILE:         hversion.el
 ;; SUMMARY:      Hyperbole version, system and load path information.
 ;; ORG:          InfoDock Associates
 ;;
 ;; ORIG-DATE:     1-Jan-94
-;; LAST-MOD:     23-Feb-97 at 23:22:37 by Bob Weiner
+;; LAST-MOD:     17-Mar-97 at 21:08:15 by Bob Weiner
 ;;
 ;; This file is part of Hyperbole.
 ;; Available for use and distribution under the same terms as GNU Emacs.
 ;;; Public variables
 ;;; ************************************************************************
 
-(defconst hyperb:version "04.022" "Hyperbole revision number.")
+(defconst hyperb:version "04.023" "Hyperbole revision number.")
 
 ;;; Support button highlighting and flashing under XEmacs.
 ;;;

lisp/hyperbole/hyperbole.el

 ;; ORG:          InfoDock Associates
 ;;
 ;; ORIG-DATE:     6-Oct-92 at 11:52:51
-;; LAST-MOD:     19-Feb-97 at 10:57:44 by Bob Weiner
+;; LAST-MOD:     15-Mar-97 at 17:09:40 by Bob Weiner
 ;;
 ;; This file is part of Hyperbole.
 ;; Available for use and distribution under the same terms as GNU Emacs.
 
 ;;; Provides a site standard way to easily switch between the Hyperbole mouse
 ;;; bindings and a set of personal mouse bindings.  You may instead show
-;;; users how to bind this to a key via 'hyperb:init-hook' (see
+;;; users how to bind this to a key via `hyperb:init-hook' (see
 ;;; Hyperbole Manual).
 ;;;
 (or (global-key-binding "\C-ct")
   (interactive "P")
   (if arg (assist-key) (action-key)))
 
-;;; A value of t for 'hkey-init' below will cause the Hyperbole
+;;; A value of t for `hkey-init' below will cause the Hyperbole
 ;;; context-sensitive keys to be bound to keyboard keys, in addition to any
 ;;; mouse key bindings.  Comment it out or set it to nil if you don't want
 ;;; these bindings.  Or change the bindings in the succeeding lines.
   )
 
 ;;; Hyperbole rolodex main entry points.
-(autoload 'rolo-add              "wrolo"      "Add an entry to rolodex"       t)
-(autoload 'rolo-display-matches  "wrolo"      "Redisplay previous rolodex matches" t)
-(autoload 'rolo-edit             "wrolo"      "Edit an existing rolodex entry" t)
-(autoload 'rolo-fgrep            "wrolo"      "Rolodex string search"         t)
-(autoload 'rolo-grep             "wrolo"      "Rolodex regexp search"         t)
-(autoload 'rolo-kill             "wrolo"      "Delete an existing rolodex entry" t)
-(autoload 'rolo-logic            "wrolo-logic" "Logical rolodex search filters." t)
-(autoload 'rolo-sort             "wrolo"      "Sort rolodex entries" t)
-(autoload 'rolo-word             "wrolo"      "Rolodex string search for a word" t)
-(autoload 'rolo-yank             "wrolo"      "Insert a rolodex entry into current buffer" t)
+(autoload 'rolo-add               "wrolo"      "Add an entry to rolodex"       t)
+(autoload 'rolo-display-matches   "wrolo"      "Redisplay previous rolodex matches" t)
+(autoload 'rolo-edit              "wrolo"      "Edit an existing rolodex entry" t)
+(autoload 'rolo-fgrep             "wrolo"      "Rolodex string search"         t)
+(autoload 'rolo-grep              "wrolo"      "Rolodex regexp search"         t)
+(autoload 'rolo-kill              "wrolo"      "Delete an existing rolodex entry" t)
+(autoload 'rolo-logic             "wrolo-logic" "Logical rolodex search filters." t)
+(autoload 'rolo-sort              "wrolo"      "Sort rolodex entries" t)
+(autoload 'rolo-toggle-datestamps "wrolo"      "Toggle datestamp insertion." t)
+(autoload 'rolo-word              "wrolo"      "Rolodex string search for a word" t)
+(autoload 'rolo-yank              "wrolo"      "Insert a rolodex entry into current buffer" t)
 
 ;;; Hyperbole Key autoloads.
 (autoload 'Info-handle-in-note "hmous-info"
 ;;;
 ;;; Hyperbole mail composer support configuration.
 ;;;
-(var:append 'mail-mode-hook      '((lambda () (require 'hsmail))))
-(var:append 'mh-letter-mode-hook '((lambda () (require 'hsmail))))
-(var:append 'vm-mail-mode-hook   '((lambda () (require 'hsmail))))
+(var:append 'mail-mode-hook      (list (function (lambda () (require 'hsmail)))))
+(var:append 'mh-letter-mode-hook (list (function (lambda () (require 'hsmail)))))
+(var:append 'vm-mail-mode-hook   (list (function (lambda () (require 'hsmail)))))
 
 ;;; ************************************************************************
 ;;; Frame function aliases.
 ;;; ************************************************************************
-;; Create all needed 'frame-' aliases for all 'screen-' functions, e.g.
+;; Create all needed `frame-' aliases for all `screen-' functions, e.g.
 ;; screen-width.
 (if (fboundp 'selected-frame)
     nil

lisp/hyperbole/kotl/kfile.el

 ;; AUTHOR:       Bob Weiner & Kellie Clark
 ;;
 ;; ORIG-DATE:    10/31/93
-;; LAST-MOD:      1-Nov-95 at 00:46:41 by Bob Weiner
+;; LAST-MOD:      6-Mar-97 at 01:17:51 by Bob Weiner
+
 ;;; ************************************************************************
 ;;; Other required Elisp libraries
 ;;; ************************************************************************
 Return the new view."
   (let (ver-string)
     (cond ((not (bufferp buffer))
-	   (error "(kfile:read): Argument must be a buffer, '%s'." buffer))
+	   (error "(kfile:read): Argument must be a buffer, `%s'." buffer))
 	  ((not existing-file-p)
 	   (kfile:create buffer))
 	  ((progn
 	     (set-buffer buffer)
 	     (not (setq ver-string (kfile:is-p))))
-	   (error "(kfile:read): '%s' is not a koutline file." buffer))
+	   (error "(kfile:read): `%s' is not a koutline file." buffer))
 	  ((equal ver-string "Kotl-4.0")
 	   (kfile:read-v4-or-v3 buffer nil))
 	  ((equal ver-string "Kotl-3.0")
 	   (kfile:read-v2 buffer))
 	  ((equal ver-string "Kotl-1.0")
 	   (error "(kfile:read): V1 koutlines are no longer supported"))
-	  (t (error "(kfile:read): '%s' has unknown kotl version, %s."
+	  (t (error "(kfile:read): `%s' has unknown kotl version, %s."
 		    buffer ver-string)))))
 
 (defun kfile:read-v2 (buffer)
       (set-marker opoint nil)
       nil)))
 
-;;; Next function is adapted from 'file-write' of GNU Emacs 19, copyright FSF,
+;;; Next function is adapted from `file-write' of GNU Emacs 19, copyright FSF,
 ;;; under the GPL.
 (defun kfile:write (file)
   "Write current outline to FILE."
 ;;; ************************************************************************
 
 (defvar kfile:escape-newlines t 
-  "Value of print-escape-newlines used by 'kfile:print-to-string' function.")
+  "Value of print-escape-newlines used by `kfile:print-to-string' function.")
 
 (provide 'kfile)

lisp/hyperbole/kotl/kfill.el

 ;;
 ;; AUTHOR:       Bob Weiner
 ;; ORIG-DATE:    23-Jan-94
-;; LAST-MOD:     15-Jan-97 at 11:54:12 by Bob Weiner
+;; LAST-MOD:      6-Mar-97 at 01:18:10 by Bob Weiner
+
 ;;; ************************************************************************
 ;;; Public variables
 ;;; ************************************************************************
       (kfill:fill-paragraph arg skip-prefix-remove))))
 
 ;;;
-;;; Redefine this function so that it sets 'fill-prefix-prev' also.
+;;; Redefine this function so that it sets `fill-prefix-prev' also.
 ;;;
 (defun set-fill-prefix (&optional turn-off)
   "Set the fill-prefix to the current line up to point.

lisp/hyperbole/kotl/kimport.el

 ;; AUTHOR:       Bob Weiner & Kellie Clark
 ;;
 ;; ORIG-DATE:    15-Nov-93 at 11:57:05
-;; LAST-MOD:      1-Nov-95 at 23:19:09 by Bob Weiner
+;; LAST-MOD:      6-Mar-97 at 01:18:33 by Bob Weiner
+
 ;;; ************************************************************************
 ;;; Other required Elisp libraries
 ;;; ************************************************************************
     (message "Imported %d of %d Augment statements." count total)))
 
 ;;;
-;;; Emacs outliner style files, leading '*' cell delimiters
+;;; Emacs outliner style files, leading `*' cell delimiters
 ;;;
 
 ;;;###autoload
 Text paragraphs are imported as a sequence of same level cells.  Koutlines
 are imported with their structure intact.
 
-The variable, 'paragraph-start,' is used to determine paragraphs."
+The variable, `paragraph-start,' is used to determine paragraphs."
   (interactive "FImport from text/koutline buffer/file: \nFInsert cells into koutline buffer/file: \nP")
   (let ((klabel "1") (output-level 1) (count 0) initially-empty-output
 	no-renumber orig-point total)
 the total number of paragraphs in IMPORT-FROM, used to show a running tally
 of the imported paragraphs.
 
-The variable, 'paragraph-start' is used to determine paragraphs."
+The variable, `paragraph-start' is used to determine paragraphs."
   (set-buffer import-from)
   (let* ((count 0) start end contents)
     ;; Next line is needed when importing into an existing kview.

lisp/hyperbole/kotl/klabel.el

 ;; AUTHOR:       Bob Weiner & Kellie Clark
 ;;
 ;; ORIG-DATE:    17-Apr-94
-;; LAST-MOD:      1-Nov-95 at 02:33:23 by Bob Weiner
+;; LAST-MOD:      6-Mar-97 at 01:19:02 by Bob Weiner
+
 ;;; ************************************************************************
 ;;; Public variables
 ;;; ************************************************************************
 	  ((eq label-type 'partial-alpha)
 	   (error
 	    "(klabel:level): Can't compute the level of a partial-alpha label"))
-	  (t (error "(klabel:level): Invalid label type setting: '%s'"
+	  (t (error "(klabel:level): Invalid label type setting: `%s'"
 		    label-type)))))
 
 (defun klabel:parent (label)
 	    (error
 	     "(klabel:child-id): Can't compute child of idstamp label"))))
 	(t (error
-	    "(klabel-type:child): Invalid label type setting: '%s'"
+	    "(klabel-type:child): Invalid label type setting: `%s'"
 	    label-type))))
 
 (defun klabel-type:increment (label-type)
 		(error "(klabel:increment-no): 0 cell cannot have a sibling")
 	      (error "(klabel:increment-id): Can't compute sibling of idstamp label")))))
 	(t (error
-	    "(klabel:increment): Invalid label type setting: '%s'"
+	    "(klabel:increment): Invalid label type setting: `%s'"
 	    label-type))))
 
 (defun klabel-type:parent (label-type)
 	    (error
 	     "(klabel:parent-id): Can't compute parent of idstamp label"))))
 	(t (error
-	    "(klabel-type:parent): Invalid label type setting: '%s'"
+	    "(klabel-type:parent): Invalid label type setting: `%s'"
 	    label-type))))
 
 ;;;
 	 (concat (substring label 0 (match-beginning 0))
 		 (int-to-string
 		  (1+ (string-to-int (substring label (match-beginning 0)))))))
-	(t (error "(klabel:increment-legal): Invalid label, '%s'" label))))
+	(t (error "(klabel:increment-legal): Invalid label, `%s'" label))))
 
 (defun klabel:level-legal (label)
   "Return outline level as an integer of legal-style LABEL.
 ;; It must be one of the following symbols:
 ;;   no              for no labels,
 ;;   id              for permanent idstamp labels, e.g. 001, 002, etc.
-;;   alpha           for '1a2' full alphanumeric labels
-;;   legal           for '1.1.2' labels
-;;   partial-alpha   for partial alphanumeric labels, e.g. '2' for node '1a2'
-;;   star            for multi-star labeling, e.g. '***'.
+;;   alpha           for `1a2' full alphanumeric labels
+;;   legal           for `1.1.2' labels
+;;   partial-alpha   for partial alphanumeric labels, e.g. `2' for node `1a2'
+;;   star            for multi-star labeling, e.g. `***'.
 
 ;;
 ;; Functions to compute sibling and child labels for particular label types.
 			(if (re-search-backward
 			     "\\(\\`\\|[\n\r][\n\r]\\)[ \t]*0[0-9]+" nil t)
 			    (goto-char (match-end 0)))))))))
-	(error "(kview:to-label-end): Invalid label type: '%s'" label-type)))
+	(error "(kview:to-label-end): Invalid label type: `%s'" label-type)))
 
 (defun klabel-type:star-label (prev-label &optional child-p)
   "Return full star label, e.g. ***, for cell following PREV-LABEL's cell.
 		  ((eq label-type 'no) "")
 		  ((eq label-type 'star) "*")
 		  (t (error
-		      "(klabel-type:set-labels): Invalid label type: '%s'"
+		      "(klabel-type:set-labels): Invalid label type: `%s'"
 		      label-type))))
       (let ((klabel-type:changing-flag t))
 	(klabel-type:update-labels-from-point label-type first-label)))))
 is signaled."
   (if (not (kotl-label:is-p label))
       (error
-       "(kotl-label:increment): First arg, '%s', must be a kotl-label."
+       "(kotl-label:increment): First arg, `%s', must be a kotl-label."
        label))
   (let ((int-p) (val 0))
     (if (or (setq int-p (kotl-label:integer-p label))
 	    (progn (setq int-p (string-to-int label))
 		   (if (> (setq val (+ int-p n)) 0)
 		       (kotl-label:create val)
-		     (error "(kotl-label:increment): Decrement of '%s' by '%d' is less than 1." label n)))
+		     (error "(kotl-label:increment): Decrement of `%s' by `%d' is less than 1." label n)))
 	  ;; alpha-p
 	  (if (<= 0 (setq val (+ n (kotl-label:alpha-to-int label))))
 	      (kotl-label:create
 	       (kotl-label:int-to-alpha val))
-	    (error "(kotl-label:increment): Decrement of '%s' by '%d' is illegal." label n)))
-      (error "(kotl-label:increment): label, '%s', must be all digits or alpha characters" label))))
+	    (error "(kotl-label:increment): Decrement of `%s' by `%d' is illegal." label n)))
+      (error "(kotl-label:increment): label, `%s', must be all digits or alpha characters" label))))
 
 (defun kotl-label:increment-alpha (label)
   "Return alphabetic LABEL incremented by 1.
 For example, the full label \"1a2\" has kotl-label \"2\", as does \"1.1.2\"."
   (if (string-match "[0-9]+$\\|[a-zA-Z]+$" label)
       (substring label (match-beginning 0))
-    (error "(klabel:to-kotl-label): Invalid label, '%s'" label)))
+    (error "(klabel:to-kotl-label): Invalid label, `%s'" label)))
 
 (defun klabel-type:update-labels-from-point (label-type first-label)
   (let ((label-sep-len (kview:label-separator-length kview)))

lisp/hyperbole/kotl/klink.el

 ;; AUTHOR:       Bob Weiner & Kellie Clark
 ;;
 ;; ORIG-DATE:    15-Nov-93 at 12:15:16
-;; LAST-MOD:      6-Jan-97 at 19:00:58 by Bob Weiner
+;; LAST-MOD:      6-Mar-97 at 01:19:19 by Bob Weiner
 ;;
 ;; DESCRIPTION:  
 ;;
 (defun klink:create (reference)
   "Insert at point an implicit link to REFERENCE.
 REFERENCE should be a cell-ref or a string containing \"filename, cell-ref\".
-See documentation for 'kcell:ref-to-id' for valid cell-ref formats."
+See documentation for `kcell:ref-to-id' for valid cell-ref formats."
   (interactive
    ;; Don't change the name or delete default-dir used here.  It is referenced
    ;; in "hargs.el" for argument getting.
 	   (if cell-ref (insert ", " cell-ref))
 	   (insert ">"))
 	  (cell-ref (insert "<@ " cell-ref ">"))
-	  (t  (error "(klink:create) Invalid reference, '%s'" reference)))))
+	  (t  (error "(klink:create) Invalid reference, `%s'" reference)))))
 
 (defun klink:at-p ()
   "Return non-nil iff point is within a klink.
   < [-!&] pathname >
   < @ cell-ref >
 
-See documentation for 'kcell:ref-to-id' for valid cell-ref formats."
+See documentation for `kcell:ref-to-id' for valid cell-ref formats."
 
   (interactive "sKotl link specifier: ")
   (or (stringp link) (error "(link-to-kotl): Non-string link argument, %s"
   |viewspec
   :augment-viewspec (ignored for now)
 
-See documentation for 'kcell:ref-to-id' for valid cell-ref formats."
+See documentation for `kcell:ref-to-id' for valid cell-ref formats."
 
   (or (stringp reference)
       (error "(klink:parse): Non-string reference argument, %s"

lisp/hyperbole/kotl/kmenu.el

 ;; KEYWORDS:     mouse, outlines, wp
 ;;
 ;; AUTHOR:       Bob Weiner
-;; ORG:          Motorola, Inc., PPG
 ;;
 ;; ORIG-DATE:    28-Mar-94 at 11:22:09
-;; LAST-MOD:     22-Oct-96 at 01:30:50 by Bob Weiner
+;; LAST-MOD:      6-Mar-97 at 01:20:03 by Bob Weiner
 ;;
-;; Copyright (C) 1994-1995 Free Software Foundation, Inc.
+;; Copyright (C) 1994, 1995, 1997  Free Software Foundation, Inc.
 ;;
 ;; This file is part of Hyperbole.
 ;;

lisp/hyperbole/kotl/kotl-mode.el

 ;; AUTHOR:       Bob Weiner & Kellie Clark
 ;;
 ;; ORIG-DATE:    6/30/93
-;; LAST-MOD:      5-Dec-96 at 18:55:22 by Bob Weiner
+;; LAST-MOD:      6-Mar-97 at 01:15:42 by Bob Weiner
 ;;
 ;; This file is part of Hyperbole.
 ;; Available for use and distribution under the same terms as GNU Emacs.
 	(opoint (point-marker))
 	(bocp)
 	start)
-    (setq start (kotl-mode:beginning-of-line))
+    (setq start (kotl-mode:start-of-line))
     (if (setq bocp (kotl-mode:bocp))
 	(progn
 	  ;; Add a temporary fill-prefix since this is the 1st line of the cell
           ((and (markerp val) (marker-position val))
            (princ (marker-position val) (current-buffer)))
           (t
-           (error "Register '%c' does not contain text" register))))
+           (error "Register `%c' does not contain text" register))))
   (if (not arg) (exchange-point-and-mark)))
 
 (defun kotl-mode:just-one-space ()
   (setq zmacs-region-stays t) ;; Maintain region highlight for XEmacs.
   (or arg (setq arg 1))
   (or (integer-or-marker-p arg)
-      (error "(kotl-mode:beginning-of-cell): Wrong type arg, integer-or-marker, '%s'" arg))
+      (error "(kotl-mode:beginning-of-cell): Wrong type arg, integer-or-marker, `%s'" arg))
   (if (= arg 1)
       (goto-char (kcell-view:start))
     (kotl-mode:backward-cell (1- arg)))
   (setq zmacs-region-stays t) ;; Maintain region highlight for XEmacs.
   (or arg (setq arg 1))
   (or (integer-or-marker-p arg)
-      (error "(kotl-mode:start-of-line): Wrong type arg, integer-or-marker, '%s'" arg))
+      (error "(kotl-mode:start-of-line): Wrong type arg, integer-or-marker, `%s'" arg))
   (forward-line (1- arg))
   (if (eolp)
       nil
 		    (beginning-of-line))))
   (point))
 
-(defalias 'kotl-mode:beginning-of-line 'kotl-mode:start-of-line)
+;;; This ensures that the key bound to `beginning-of-line' is replaced in
+;;; kotl-mode.
+(fset 'kotl-mode:beginning-of-line 'kotl-mode:start-of-line)
 
 (defun kotl-mode:beginning-of-tree ()
   "Move point to the level 1 root of the current cell's tree.
   (setq zmacs-region-stays t) ;; Maintain region highlight for XEmacs.
   (or arg (setq arg 1))
   (or (integer-or-marker-p arg)
-      (error "(kotl-mode:end-of-cell): Wrong type arg, integer-or-marker, '%s'" arg))
+      (error "(kotl-mode:end-of-cell): Wrong type arg, integer-or-marker, `%s'" arg))
   (if (= arg 1)
       (goto-char (kcell-view:end-contents))
     (kotl-mode:forward-cell (1- arg)))
   (setq zmacs-region-stays t) ;; Maintain region highlight for XEmacs.
   (or arg (setq arg 1))
   (or (integer-or-marker-p arg)
-      (error "(kotl-mode:finish-of-line): Wrong type arg, integer-or-marker, '%s'" arg))
+      (error "(kotl-mode:finish-of-line): Wrong type arg, integer-or-marker, `%s'" arg))
   (forward-line (1- arg))
   (end-of-line)
   ;; May have to move backwards to before label if support labels
   (point))
 
 (defun kotl-mode:goto-cell (cell-ref &optional error-p)
-  "Move point to start of cell given by CELL-REF.  (See 'kcell:ref-to-id'.)
+  "Move point to start of cell given by CELL-REF.  (See `kcell:ref-to-id'.)
 Return point iff CELL-REF is found within current view.
 With a prefix argument, CELL-REF is assigned the argument value for use
 as an idstamp.
 	   (read-string "Goto cell label or id: "))))
   (setq cell-ref
 	(or (kcell:ref-to-id cell-ref)
-	    (error "(kotl-mode:goto-cell): Invalid cell reference, '%s'" cell-ref)))
+	    (error "(kotl-mode:goto-cell): Invalid cell reference, `%s'" cell-ref)))
   (let* ((opoint (point))
 	 (found)
 	 cell-id kvspec)
 	    (t (goto-char opoint)
 	       nil))
       (if (and (not found) (or error-p (interactive-p)))
-	  (error "(kotl-mode:goto-cell): No '%s' cell in this view" cell-ref)
+	  (error "(kotl-mode:goto-cell): No `%s' cell in this view" cell-ref)
 	;; Activate any viewspec associated with cell-ref.
 	(if kvspec (kvspec:activate kvspec))))
     found))
      (setq attribute (intern attribute)
 	   value (kcell-view:get-attr attribute))
      (if value
-	 (setq value (read-expression
+	 (setq value (read-minibuffer
 		      (format "Change value of \"%s\" to: " attribute)
 		      (prin1-to-string value)))
-       (setq value (read-expression
+       (setq value (read-minibuffer
 		    (format "Set value of \"%s\" to: " attribute))))
      (list attribute value nil)))
   (kcell-view:set-attr attribute value pos)
 	  (prog1
 	      (buffer-substring bol eol)
 	    (delete-region bol eol)))
-      (error "(kotl-mode:delete-line): Invalid position, '%d'" (point)))))
+      (error "(kotl-mode:delete-line): Invalid position, `%d'" (point)))))
 
 (defun kotl-mode:indent-line (arg)
   ;; Disallow the indent-line command.
 
 (defun kotl-mode:print-attributes (kview)
   "Print to the `standard-output' stream the attributes of the current visible kcell. 
-Takes argument KVIEW (so it can be used with 'kview:map-tree' and so that
+Takes argument KVIEW (so it can be used with `kview:map-tree' and so that
 KVIEW is bound correctly) but always operates upon the current view."
   ;; Move to start of visible cell to avoid printing attributes for an
   ;; invisible kcell which point may be over.

lisp/hyperbole/kotl/kview.el

 ;; AUTHOR:       Bob Weiner & Kellie Clark
 ;;
 ;; ORIG-DATE:    6/30/93
-;; LAST-MOD:      2-Nov-95 at 00:52:52 by Bob Weiner
+;; LAST-MOD:      6-Mar-97 at 01:16:42 by Bob Weiner
+
 ;;; ************************************************************************
 ;;; Other required Lisp Libraries
 ;;; ************************************************************************
 It must be one of the following symbols:
   no              for no labels
   id              for permanent idstamp labels, e.g. 001, 002, etc.
-  alpha           for '1a2' full alphanumeric labels
-  legal           for '1.1.2' labels
-  partial-alpha   for partial alphanumeric labels, e.g. '2' for node '1a2'
-  star            for multi-star labeling, e.g. '***'.")
+  alpha           for `1a2' full alphanumeric labels
+  legal           for `1.1.2' labels
+  partial-alpha   for partial alphanumeric labels, e.g. `2' for node `1a2'
+  star            for multi-star labeling, e.g. `***'.")
 
 (defvar kview:default-level-indent 3
   "*Default number of spaces to indent each succeeding level in koutlines.")
     (if pos (goto-char pos))
     (if (kview:valid-position-p)
 	(buffer-substring
-	 (kotl-mode:beginning-of-line)
+	 (kotl-mode:start-of-line)
 	 (kotl-mode:end-of-line))
-      (error "(kcell-view:line): Invalid position, '%d'" (point)))))
+      (error "(kcell-view:line): Invalid position, `%d'" (point)))))
 
 (defun kcell-view:next (&optional visible-p label-sep-len)
   "Move to start of next cell within current view.
 (defun kcell-view:reference (&optional pos relative-dir)
   "Return a reference to the kcell at optional POS or point for use in a link.
 The reference is a string of the form, \"<kcell-file, cell-ref>\" where
-cell-ref is as described in the documentation for 'kcell:ref-to-id'.
+cell-ref is as described in the documentation for `kcell:ref-to-id'.
 Kcell-file is made relative to optional RELATIVE-DIR before it is returned."
   (format "<%s, %s=%s>" (hpath:relative-to buffer-file-name relative-dir)
 	  (kcell-view:label pos) (kcell-view:idstamp pos)))
 BLANK-LINES, LEVELS-TO-SHOW, and LINES-TO-SHOW may also be given, otherwise default values are used.
 
   See documentation of:
- 'kview:default-label-type' for LABEL-TYPE,
- 'kview:default-level-indent' for LEVEL-INDENT,
- 'kview:default-label-separator' for LABEL-SEPARATOR,
- 'kview:default-label-min-width' for LABEL-MIN-WIDTH,
- 'kview:default-blank-lines' for BLANK-LINES,
- 'kview:default-levels-to-show' for LEVELS-TO-SHOW,
- 'kview:default-lines-to-show' for LINES-TO-SHOW."
+ `kview:default-label-type' for LABEL-TYPE,
+ `kview:default-level-indent' for LEVEL-INDENT,
+ `kview:default-label-separator' for LABEL-SEPARATOR,
+ `kview:default-label-min-width' for LABEL-MIN-WIDTH,
+ `kview:default-blank-lines' for BLANK-LINES,
+ `kview:default-levels-to-show' for LEVELS-TO-SHOW,
+ `kview:default-lines-to-show' for LINES-TO-SHOW."
 
   (let ((buf (get-buffer buffer-name)))
     (cond ((null buf)
-	   (error "(kview:create): No such buffer, '%s'." buffer-name))
+	   (error "(kview:create): No such buffer, `%s'." buffer-name))
 	  ((or (null id-counter) (= id-counter 0))
 	   (setq id-counter 0))
 	  ((not (integerp id-counter))
-	   (error "(kview:create): 2nd arg, '%s', must be an integer." id-counter)))
+	   (error "(kview:create): 2nd arg, `%s', must be an integer." id-counter)))
     (set-buffer buf)
     (if (and (boundp 'kview) (eq (kview:buffer kview) buf))
 	;; Don't recreate view if it exists.
 FUNC is called so that it may test against this value.  `Label-sep-len'
 contains the label separator length.
 
-See also 'kview:map-siblings' and 'kview:map-tree'."
+See also `kview:map-siblings' and `kview:map-tree'."
     (save-excursion
       (set-buffer (kview:buffer kview))
       (let ((results)
 FUNC is called so that it may test against this value.  `Label-sep-len'
 contains the label separator length.
 
-See also 'kview:map-branch' and 'kview:map-tree'."
+See also `kview:map-branch' and `kview:map-tree'."
     (save-excursion
       (set-buffer (kview:buffer kview))
       (let ((results)
 FUNC is called so that it may test against this value.  `Label-sep-len'
 contains the label separator length.
 
-See also 'kview:map-branch' and 'kview:map-siblings'."
+See also `kview:map-branch' and `kview:map-siblings'."
   (let ((results)
 	(label-sep-len (kview:label-separator-length kview)))
     (save-excursion
 			   label-type
 			 (intern new-type-str)))))
   (if (not (memq new-type '(alpha legal id no partial-alpha star)))
-      (error "(kview:set-label-type): Invalid label type, '%s'." new-type))
+      (error "(kview:set-label-type): Invalid label type, `%s'." new-type))
   ;; Disable use of partial-alpha for now since it is broken.
   (if (eq new-type 'partial-alpha)
       (error "(kview:set-label-type): Partial-alpha labels don't work, choose another type"))
 	 (>= (current-column) (kcell-view:indent)))
 	((not (integer-or-marker-p pos))
 	 (error "(kview:valid-position-p): Argument POS not an integer
-or marker, '%s'" pos))
+or marker, `%s'" pos))
 	((or (< pos (point-min)) (> pos (point-max)))
-	 (error "(kview:valid-position-p): Invalid POS argument, '%d'"
+	 (error "(kview:valid-position-p): Invalid POS argument, `%d'"
 		pos))
 	(t (save-excursion
 	     (goto-char pos)

lisp/hyperbole/kotl/kvspec.el

 ;; AUTHOR:       Bob Weiner
 ;;
 ;; ORIG-DATE:    21-Oct-95 at 15:17:07
-;; LAST-MOD:      4-Dec-96 at 15:36:12 by Bob Weiner
+;; LAST-MOD:      6-Mar-97 at 01:17:04 by Bob Weiner
 ;;
 ;; This file is part of Hyperbole.
 ;; Available for use and distribution under the same terms as GNU Emacs.
   "Show NUM lines per cell."
   (if (and (integerp num) (>= num 0))
       nil
-    (error "(kvspec:show-lines-per-cell): Invalid lines per cell, '%d'" num))
+    (error "(kvspec:show-lines-per-cell): Invalid lines per cell, `%d'" num))
   (kview:set-attr kview 'lines-to-show num)
   (let (start end count)
     (if (zerop num)
 ;;; ************************************************************************
 
 (defun kvspec:blank-lines ()
-  "Turn blank lines on or off according to 'kvspec:current'."
+  "Turn blank lines on or off according to `kvspec:current'."
   (let ((modified-p (buffer-modified-p))
 	(buffer-read-only))
       (if (string-match "b" kvspec:current)
 				       kvspec:label-type-alist)))))))))
 
 (defun kvspec:elide ()
-  "Turn ellipses display following clipped cells on or off according to 'kvspec:current'."
+  "Turn ellipses display following clipped cells on or off according to `kvspec:current'."
   (setq selective-display-ellipses
 	(if (string-match "e" kvspec:current) t)))
 
 (defun kvspec:hide-levels ()
-  "Show a set number of cell levels according to 'kvspec:current'."
+  "Show a set number of cell levels according to `kvspec:current'."
   ;; "l" means use value of kview:default-levels-to-show.
   ;; "l0" means show all levels.
   (let (levels)
       (kvspec:levels-to-show levels))))
 
 (defun kvspec:lines-to-show ()
-  "Show a set number of lines per cell according to 'kvspec:current'."
+  "Show a set number of lines per cell according to `kvspec:current'."
   ;; "c" means use value of kview:default-lines-to-show.
   ;; "c0" means show all lines.
   (cond ((not (string-match "c\\([0-9]+\\)?" kvspec:current))
 	(t (kvspec:show-lines-per-cell kview:default-lines-to-show))))
 
 (defun kvspec:numbering ()
-  "Set the type of numbering (label) display according to 'kvspec:current'."
+  "Set the type of numbering (label) display according to `kvspec:current'."
   (if (not (string-match "n\\([.*~0-2]\\)?" kvspec:current))
       nil
     ;; "n"  means use value of kview:default-label-type.
 		(setq mf (cdr mf)))))))))
 
 (defun kvspec:update-view ()
-  "Update view according to current setting of local 'kvspec:current' variable."
+  "Update view according to current setting of local `kvspec:current' variable."
   (let ((modified-p (buffer-modified-p))
 	(buffer-read-only))
     (save-excursion
 
 (defvar kvspec:string-format " <|%s>"
   "Format of the kview spec modeline display.
-It must contain a '%s' which is replaced with the current set of view spec
+It must contain a `%s' which is replaced with the current set of view spec
 characters at run-time.")
 
 (provide 'kvspec)

lisp/hyperbole/wrolo.el

 ;;               Tel: +1 408-243-3300
 ;;
 ;; ORIG-DATE:     7-Jun-89 at 22:08:29
-;; LAST-MOD:     17-Feb-97 at 15:32:20 by Bob Weiner
+;; LAST-MOD:     14-Mar-97 at 01:32:23 by Bob Weiner
 ;;
 ;; This file is part of Hyperbole.
 ;; Available for use and distribution under the same terms as GNU Emacs.
 ;;
-;; Copyright (C) 1989, '90, '91, '92, '95  Free Software Foundation, Inc.
-;; Copyright (C) 1996  InfoDock Associates
+;; Copyright (C) 1989, '90, '91, '92, '95, '96, '97  Free Software Foundation, Inc.
 ;;
 ;; DESCRIPTION:  
 ;;
 ;;
 ;;  SETUP:
 ;;
-;;   The variable 'rolo-file-list' is a list of files to search for
+;;   The variable `rolo-file-list' is a list of files to search for
 ;;   matching rolodex entries.  To add personal files to rolo-file-list,
 ;;   when you find these functions are useful for any sort of list lookup,
 ;;   add the following to your ~/.emacs file (substituting where you see
 ;;
 ;;      (setq rolo-file-list (append rolo-file-list '("<file1>" "<file2>")))
 ;;
-;;   We recommend that entries in 'rolo-file-list' have ".otl" suffixes
+;;   We recommend that entries in `rolo-file-list' have ".otl" suffixes
 ;;   so that they do not conflict with file names that other rolodex
-;;   programs might use and so that they are edited in 'outline-mode' by
+;;   programs might use and so that they are edited in `outline-mode' by
 ;;   default.  If you want the latter behavior, uncomment and add something
 ;;   like the following to one of your GNU Emacs initialization files:
 ;;
 ;;   message, the rolodex add function will extract the sender's name
 ;;   and e-mail address and prompt you with the name as a default.  If
 ;;   you accept it, it will enter the name and the email address using
-;;   the format given by the 'rolo-email-format' variable.  See its
+;;   the format given by the `rolo-email-format' variable.  See its
 ;;   documentation if you want to change its value.
 ;;
 ;;
 ;;   parent/child to locate a child entry below a parent entry, e.g.
 ;;   from the example near the top, we could give Company/Manager/Underlings.
 ;;
-;;   Here is a snippet from our group rolodex file.  The ';'s should be
-;;   removed of course and the '*'s should begin at the start of the
+;;   Here is a snippet from our group rolodex file.  The `;'s should be
+;;   removed of course and the `*'s should begin at the start of the
 ;;   line.  If a rolodex file begins with two separator lines whose
 ;;   first three characters are "===", then these lines and any text
 ;;   between them are prepended to the output buffer whenever any
 ;;  FOR PROGRAMMERS:
 ;;
 ;;   Entries in rolodex files are separated by patterns matching
-;;   'rolo-entry-regexp'.  Each entry may have any number of sub-entries
+;;   `rolo-entry-regexp'.  Each entry may have any number of sub-entries
 ;;   which represent the next level down in the entry hierarchy.
 ;;   Sub-entries' separator patterns are always longer than their parents'.
-;;   For example, if an entry began with '*' then its sub-entries would begin
-;;   with '**' and so on.  Blank lines in rolodex files will not end up where
+;;   For example, if an entry began with `*' then its sub-entries would begin
+;;   with `**' and so on.  Blank lines in rolodex files will not end up where
 ;;   you want them if you use the rolo-sort commands; therefore, blank lines
 ;;   are not recommended.  If you change the value of
-;;   'rolo-entry-regexp', you will have to modify 'rolo-sort'.
+;;   `rolo-entry-regexp', you will have to modify `rolo-sort'.
 ;;
 ;;   The following additional functions are provided:
 ;;
-;;     'rolo-sort-level' sorts a specific level of entries in a rolodex file;
-;;     'rolo-map-level' runs a user specified function on a specific level of
+;;     `rolo-sort-level' sorts a specific level of entries in a rolodex file;
+;;     `rolo-map-level' runs a user specified function on a specific level of
 ;;       entries in a rolodex file;
-;;     'rolo-fgrep-file', same as 'rolo-fgrep' but operates on a single file;
-;;     'rolo-grep-file', same as 'rolo-grep' but operates on a single file;
-;;     'rolo-display-matches', display last set of rolodex matches, if any;
-;;     'rolo-toggle-narrow-to-entry' toggles between display of current entry