4 |
;; Free Software Foundation, Inc. |
;; Free Software Foundation, Inc. |
5 |
|
|
6 |
;; Author: Michael D. Prange <prange@erl.mit.edu> |
;; Author: Michael D. Prange <prange@erl.mit.edu> |
7 |
;; Maintainer: Dave Love <fx@gnu.org> |
;; Maintainer: Glenn Morris <gmorris@ast.cam.ac.uk> |
8 |
;; Keywords: languages |
;; Keywords: languages |
9 |
|
|
10 |
;; This file is part of GNU Emacs. |
;; This file is part of GNU Emacs. |
972 |
(setq continue-test |
(setq continue-test |
973 |
(and |
(and |
974 |
(not (looking-at fortran-comment-line-start-skip)) |
(not (looking-at fortran-comment-line-start-skip)) |
975 |
|
(not (looking-at "^[ \t]*#")) |
976 |
(or (looking-at |
(or (looking-at |
977 |
(concat "[ \t]*" |
(concat "[ \t]*" |
978 |
(regexp-quote fortran-continuation-string))) |
(regexp-quote fortran-continuation-string))) |
979 |
(looking-at " \\{5\\}[^ 0\n]\\|\t[1-9]")))) |
(looking-at " \\{5\\}[^ 0\n]\\|\t[1-9]")))) |
980 |
(while (and (setq not-first-statement (= (forward-line -1) 0)) |
(while (and (setq not-first-statement (= (forward-line -1) 0)) |
981 |
(or (looking-at fortran-comment-line-start-skip) |
(or (looking-at fortran-comment-line-start-skip) |
982 |
|
(looking-at "^[ \t]*#") |
983 |
(looking-at "[ \t]*$\\| \\{5\\}[^ 0\n]\\|\t[1-9]") |
(looking-at "[ \t]*$\\| \\{5\\}[^ 0\n]\\|\t[1-9]") |
984 |
(looking-at (concat "[ \t]*" comment-start-skip))))) |
(looking-at (concat "[ \t]*" comment-start-skip))))) |
985 |
(cond ((and continue-test |
(cond ((and continue-test |
1001 |
(and (= (forward-line 1) 0) |
(and (= (forward-line 1) 0) |
1002 |
(not (eobp)))) |
(not (eobp)))) |
1003 |
(or (looking-at fortran-comment-line-start-skip) |
(or (looking-at fortran-comment-line-start-skip) |
1004 |
|
(looking-at "^[ \t]*#") |
1005 |
(looking-at "[ \t]*$\\| [^ 0\n]\\|\t[1-9]") |
(looking-at "[ \t]*$\\| [^ 0\n]\\|\t[1-9]") |
1006 |
(looking-at (concat "[ \t]*" comment-start-skip))))) |
(looking-at (concat "[ \t]*" comment-start-skip))))) |
1007 |
(if (not not-last-statement) |
(if (not not-last-statement) |
1104 |
(fortran-check-end-prog-re)))) |
(fortran-check-end-prog-re)))) |
1105 |
(skip-chars-forward " \t0-9") |
(skip-chars-forward " \t0-9") |
1106 |
(cond ((looking-at |
(cond ((looking-at |
1107 |
"\\(\\(\\sw\\|\\s_\\)+:[ \t]*\\)?do[ \t]+[0-9]") |
"\\(\\(\\sw\\|\\s_\\)+:[ \t]*\\)?do[ \t]+") |
1108 |
(setq count (1- count))) |
(setq count (1- count))) |
1109 |
((looking-at "end[ \t]*do\\b") |
((looking-at "end[ \t]*do\\b") |
1110 |
(setq count (1+ count))))) |
(setq count (1+ count))))) |
1795 |
(fortran-previous-statement))) |
(fortran-previous-statement))) |
1796 |
(fortran-indent-line))) |
(fortran-indent-line))) |
1797 |
|
|
1798 |
(defun fortran-strip-sqeuence-nos (&optional do-space) |
(defun fortran-strip-sequence-nos (&optional do-space) |
1799 |
"Delete all text in column 72 and up (assumed to be sequence numbers). |
"Delete all text in column 72 and up (assumed to be sequence numbers). |
1800 |
Normally also deletes trailing whitespace after stripping such text. |
Normally also deletes trailing whitespace after stripping such text. |
1801 |
Supplying prefix arg DO-SPACE prevents stripping the whitespace." |
Supplying prefix arg DO-SPACE prevents stripping the whitespace." |