Derive Fortran modes from prog-mode.

* progmodes/fortran.el (fortran-mode):
* progmodes/f90.el (f90-mode): Derive from prog-mode.
This commit is contained in:
Glenn Morris 2010-05-20 18:13:57 -07:00
parent 3e17a1a7d7
commit e75c1e7dc4
3 changed files with 13 additions and 20 deletions

View file

@ -7,6 +7,9 @@
2010-05-21 Glenn Morris <rgm@gnu.org>
* progmodes/fortran.el (fortran-mode):
* progmodes/f90.el (f90-mode): Derive from prog-mode.
* loadup.el [CANNOT_DUMP]: Update for bootstrap-emacs no longer
having a relative path in src/Makefile.in.

View file

@ -1008,7 +1008,7 @@ Set subexpression 1 in the match-data to the name of the type."
:regexp "\\(?:[^[:word:]_`]\\|^\\)\\(`?[[:word:]_]+\\)[^[:word:]_]*")
;;;###autoload
(defun f90-mode ()
(define-derived-mode f90-mode prog-mode "F90"
"Major mode for editing Fortran 90,95 code in free format.
For fixed format code, use `fortran-mode'.
@ -1065,13 +1065,9 @@ Variables controlling indentation style and extra features:
Turning on F90 mode calls the value of the variable `f90-mode-hook'
with no args, if that value is non-nil."
(interactive)
(kill-all-local-variables)
(setq major-mode 'f90-mode
mode-name "F90"
local-abbrev-table f90-mode-abbrev-table)
(set-syntax-table f90-mode-syntax-table)
(use-local-map f90-mode-map)
:group 'f90
:syntax-table f90-mode-syntax-table
:abbrev-table f90-mode-abbrev-table
(set (make-local-variable 'indent-line-function) 'f90-indent-line)
(set (make-local-variable 'indent-region-function) 'f90-indent-region)
(set (make-local-variable 'require-final-newline) mode-require-final-newline)
@ -1094,8 +1090,7 @@ with no args, if that value is non-nil."
'f90-beginning-of-subprogram)
(set (make-local-variable 'end-of-defun-function) 'f90-end-of-subprogram)
(set (make-local-variable 'add-log-current-defun-function)
#'f90-current-defun)
(run-mode-hooks 'f90-mode-hook))
#'f90-current-defun))
;; Inline-functions.

View file

@ -778,7 +778,7 @@ Used in the Fortran entry in `hs-special-modes-alist'.")
;;;###autoload
(defun fortran-mode ()
(define-derived-mode fortran-mode prog-mode "Fortran"
"Major mode for editing Fortran code in fixed format.
For free format code, use `f90-mode'.
@ -848,13 +848,9 @@ Variables controlling indentation style and extra features:
Turning on Fortran mode calls the value of the variable `fortran-mode-hook'
with no args, if that value is non-nil."
(interactive)
(kill-all-local-variables)
(setq major-mode 'fortran-mode
mode-name "Fortran"
local-abbrev-table fortran-mode-abbrev-table)
(set-syntax-table fortran-mode-syntax-table)
(use-local-map fortran-mode-map)
:group 'fortran
:syntax-table fortran-mode-syntax-table
:abbrev-table fortran-mode-abbrev-table
(set (make-local-variable 'indent-line-function) 'fortran-indent-line)
(set (make-local-variable 'indent-region-function)
(lambda (start end)
@ -906,8 +902,7 @@ with no args, if that value is non-nil."
#'fortran-current-defun)
(set (make-local-variable 'dabbrev-case-fold-search) 'case-fold-search)
(set (make-local-variable 'gud-find-expr-function) 'fortran-gud-find-expr)
(add-hook 'hack-local-variables-hook 'fortran-hack-local-variables nil t)
(run-mode-hooks 'fortran-mode-hook))
(add-hook 'hack-local-variables-hook 'fortran-hack-local-variables nil t))
(defun fortran-line-length (nchars &optional global)