Mercurial > emacs
changeset 1485:a6da00e1c5ad
(fortran-tab-mode): Add defvar.
(fortran-analyze-file-format): Bind i.
(fortran-tab-mode-string): Add defvar.
(fortran-tab-mode): Use `arg' as variable, not as function.
(fortran-prepare-abbrev-list-buffer): New function.
(fortran-abbrev-help): Call that.
author | Richard M. Stallman <rms@gnu.org> |
---|---|
date | Tue, 27 Oct 1992 10:21:22 +0000 |
parents | 6c2a714566d3 |
children | 1a12c5f1c04d |
files | lisp/progmodes/fortran.el |
diffstat | 1 files changed, 42 insertions(+), 23 deletions(-) [+] |
line wrap: on
line diff
--- a/lisp/progmodes/fortran.el Tue Oct 27 10:14:08 1992 +0000 +++ b/lisp/progmodes/fortran.el Tue Oct 27 10:21:22 1992 +0000 @@ -1,10 +1,10 @@ ;;; fortran.el --- Fortran mode for GNU Emacs -;;; Copyright (c) 1991 Free Software Foundation, Inc. +;;; Copyright (c) 1992 Free Software Foundation, Inc. ;; Author: Michael D. Prange <prange@erl.mit.edu> ;; Maintainer: bug-fortran-mode@erl.mit.edu -;; Version 1.28.3 +;; Version 1.28.3a ;; Keywords: languages ;; This file is part of GNU Emacs. @@ -102,10 +102,19 @@ ;;;###autoload (defvar fortran-tab-mode-default nil - "*Default tabbing/carriage control style for empty files in fortran mode. -t indicates that tab-digit style of continuation control will be used. -nil indicates that continuation lines are marked with a character in -column 6.") + "*Default tabbing/carriage control style for empty files in Fortran mode. +A value of t specifies tab-digit style of continuation control. +A value of nil specifies that continuation lines are marked +with a character in column 6.") + +(defvar fortran-tab-mode nil + "*tabbing/carriage control style for Fortran mode. +A value of t specifies tab-digit style of continuation control. +A value of nil specifies that continuation lines are marked +with a character in column 6.") + +;; Buffer local, used to display mode line. +(defvar fortran-tab-mode-string) (defvar fortran-do-indent 3 "*Extra indentation applied to `do' blocks.") @@ -476,9 +485,19 @@ (interactive) (message "Listing abbrev table...") (require 'abbrevlist) - (list-one-abbrev-table fortran-mode-abbrev-table "*Help*") + (display-buffer (fortran-prepare-abbrev-list-buffer)) (message "Listing abbrev table...done")) +(defun fortran-prepare-abbrev-list-buffer () + (save-excursion + (set-buffer (get-buffer-create "*Abbrevs*")) + (erase-buffer) + (insert-abbrev-table-description fortran-mode-abbrev-table t) + (goto-char (point-min)) + (set-buffer-modified-p nil) + (edit-abbrevs-mode)) + (get-buffer-create "*Abbrevs*")) + (defun fortran-column-ruler () "Inserts a column ruler momentarily above current line, till next keystroke. The ruler is defined by the value of `fortran-column-ruler'. @@ -939,21 +958,21 @@ "Return 0 if Fixed format is used, 1 if Tab formatting is used. Use `fortran-tab-mode-default' if no non-comment statements are found in the file before the end or the first `fortran-analyze-depth' lines." - (save-excursion - (goto-char (point-min)) - (setq i 0) - (while (not (or - (eobp) - (looking-at "\t") - (looking-at " ") - (> i fortran-analyze-depth))) - (forward-line) - (setq i (1+ i))) - (cond - ((looking-at "\t") 1) - ((looking-at " ") 0) - (fortran-tab-mode-default 1) - (t 0)))) + (let ((i 0)) + (save-excursion + (goto-char (point-min)) + (while (not (or + (eobp) + (looking-at "\t") + (looking-at " ") + (> i fortran-analyze-depth))) + (forward-line) + (setq i (1+ i))) + (cond + ((looking-at "\t") 1) + ((looking-at " ") 0) + (fortran-tab-mode-default 1) + (t 0))))) (defun fortran-tab-mode (arg) "Toggle `fortran-tab-mode' which indicates style of continuation lines. @@ -965,7 +984,7 @@ (if (null arg) (not fortran-tab-mode) (if (numberp arg) (> (prefix-numeric-value arg) 0) - (arg)))) + arg))) (if fortran-tab-mode (fortran-setup-tab-format-style) (fortran-setup-fixed-format-style))