]> code.delx.au - gnu-emacs/blobdiff - lisp/forms.el
(decipher-mode-map): Use command remapping instead of
[gnu-emacs] / lisp / forms.el
index 226474c5c0cb4c51e223c76d791a75e58ddb4d96..975b030ad56071570d09a4f8f1c7454ecdaf4c20 100644 (file)
@@ -1,6 +1,6 @@
 ;;; forms.el --- Forms mode: edit a file as a form to fill in
 
-;; Copyright (C) 1991, 1994, 1995, 1996, 1997 Free Software Foundation, Inc.
+;; Copyright (C) 1991, 1994, 1995, 1996, 1997, 2003 Free Software Foundation, Inc.
 
 ;; Author: Johan Vromans <jvromans@squirrel.nl>
 
 (provide 'forms)                       ;;; official
 (provide 'forms-mode)                  ;;; for compatibility
 
-(defconst forms-version (substring "$Revision: 2.39 $" 11 -2)
+(defconst forms-version (substring "$Revision: 2.43 $" 11 -2)
   "The version number of forms-mode (as string).  The complete RCS id is:
 
-  $Id: forms.el,v 2.39 1999/05/31 08:34:19 eliz Exp $")
+  $Id: forms.el,v 2.43 2002/05/18 08:04:49 pj Exp $")
 
 (defcustom forms-mode-hooks nil
-  "Hook functions to be run upon entering Forms mode."
+  "Hook run upon entering Forms mode."
   :group 'forms
-  :type 'function)
+  :type 'hook)
 \f
 ;;; Mandatory variables - must be set by evaluating the control file.
 
@@ -1219,7 +1219,7 @@ Commands:                        Equivalent keys in read-only mode:
 
       ;; Need a file to do this.
       (if (not (file-exists-p forms-file))
-         (error "Need existing file or explicit 'forms-number-of-records'.")
+         (error "Need existing file or explicit 'forms-number-of-records'")
 
        ;; Visit the file and extract the first record.
        (setq forms--file-buffer (find-file-noselect forms-file))
@@ -1423,23 +1423,15 @@ Commands:                        Equivalent keys in read-only mode:
   ;; scroll-up -> forms-next-record
   (if forms-forms-scroll
       (progn
-       (substitute-key-definition 'scroll-up 'forms-next-record
-                                  (current-local-map)
-                                  (current-global-map))
-       (substitute-key-definition 'scroll-down 'forms-prev-record
-                                  (current-local-map)
-                                  (current-global-map))))
+       (local-set-key [remap scroll-up] 'forms-next-record)
+       (local-set-key [remap scroll-down] 'forms-prev-record)))
   ;;
   ;; beginning-of-buffer -> forms-first-record
   ;; end-of-buffer -> forms-end-record
   (if forms-forms-jump
       (progn
-       (substitute-key-definition 'beginning-of-buffer 'forms-first-record
-                                  (current-local-map)
-                                  (current-global-map))
-       (substitute-key-definition 'end-of-buffer 'forms-last-record
-                                  (current-local-map)
-                                  (current-global-map))))
+       (local-set-key [remap beginning-of-buffer] 'forms-first-record)
+       (local-set-key [remap end-of-buffer] 'forms-last-record)))
   ;;
   ;; Save buffer
   (local-set-key "\C-x\C-s" 'forms-save-buffer)
@@ -1700,7 +1692,8 @@ As a side effect: sets `forms--the-record-list'."
           (if (zerop disp)
               nil
             (setq cur (+ cur disp (- (forward-line disp)))))
-        (setq cur (+ cur disp (- (goto-line arg)))))
+        (goto-char (point-min))
+        (setq cur (+ cur disp (- (forward-line (1- arg))))))
 
        (forms--get-record)))
 
@@ -1810,7 +1803,8 @@ after the current record."
 
     (save-excursion
       (set-buffer forms--file-buffer)
-      (goto-line ln)
+      (goto-char (point-min))
+      (forward-line (1- ln))
       (open-line 1)
       (insert the-record)
       (beginning-of-line))
@@ -1833,7 +1827,8 @@ after the current record."
       (let ((ln forms--current-record))
        (save-excursion
          (set-buffer forms--file-buffer)
-         (goto-line ln)
+         (goto-char (point-min))
+         (forward-line (1- ln))
          ;; Use delete-region instead of kill-region, to avoid
          ;; adding junk to the kill-ring.
          (delete-region (progn (beginning-of-line) (point))
@@ -2090,4 +2085,4 @@ Usage: (setq forms-number-of-fields
          (goto-char (point-max))
          (insert ret)))))
 
-;;; forms.el ends here.
+;;; forms.el ends here