changeset 85907:2c822d98b133

(fortran-mode-map): Don't bind M-;. (fortran-mode): Set values for comment-region-function, uncomment-region-function and comment-insert-comment-function. (fortran-uncomment-region): New function.
author Glenn Morris <rgm@gnu.org>
date Sat, 03 Nov 2007 03:03:24 +0000
parents e8570ba362b2
children 0d95cd25c1e1
files lisp/progmodes/fortran.el
diffstat 1 files changed, 12 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/lisp/progmodes/fortran.el	Sat Nov 03 03:02:00 2007 +0000
+++ b/lisp/progmodes/fortran.el	Sat Nov 03 03:03:24 2007 +0000
@@ -593,7 +593,8 @@
   (let ((map (make-sparse-keymap)))
     (define-key map ";"        'fortran-abbrev-start)
     (define-key map "\C-c;"    'fortran-comment-region)
-    (define-key map "\M-;"     'fortran-indent-comment)
+    ;; The default comment-dwim does at least as much as this.
+;;;    (define-key map "\M-;"     'fortran-indent-comment)
     (define-key map "\M-\n"    'fortran-split-line)
     (define-key map "\M-\C-n"  'fortran-end-of-block)
     (define-key map "\M-\C-p"  'fortran-beginning-of-block)
@@ -841,6 +842,11 @@
        ;; (concat "\\(\\)\\(![ \t]*\\|" fortran-comment-line-start-skip "\\)")
        "\\(\\)\\(?:^[CcDd*]\\|!\\)\\(?:\\([^ \t\n]\\)\\2+\\)?[ \t]*")
   (set (make-local-variable 'comment-indent-function) 'fortran-comment-indent)
+  (set (make-local-variable 'comment-region-function) 'fortran-comment-region)
+  (set (make-local-variable 'uncomment-region-function)
+       'fortran-uncomment-region)
+  (set (make-local-variable 'comment-insert-comment-function)
+       'fortran-indent-comment)
   (set (make-local-variable 'abbrev-all-caps) t)
   (set (make-local-variable 'normal-auto-fill-function) 'fortran-auto-fill)
   (set (make-local-variable 'indent-tabs-mode) (fortran-analyze-file-format))
@@ -981,6 +987,11 @@
     (set-marker end-region-mark nil)
     (set-marker save-point nil)))
 
+;; uncomment-region calls this with 3 args.
+(defun fortran-uncomment-region (start end &optional ignored)
+  "Uncomment every line in the region."
+  (fortran-comment-region start end t))
+
 
 (defun fortran-abbrev-start ()
   "Typing ;\\[help-command] or ;? lists all the Fortran abbrevs.