Mercurial > emacs
changeset 92812:ce9eec736ca9
(fortran-mode-abbrev-table): Use newer form of define-abbrev, where
supported. No need to bind abbrevs-changed for system abbrevs.
author | Glenn Morris <rgm@gnu.org> |
---|---|
date | Thu, 13 Mar 2008 03:26:47 +0000 |
parents | 2dc33caeb08c |
children | 9c73b1f69e7e |
files | lisp/progmodes/fortran.el |
diffstat | 1 files changed, 66 insertions(+), 69 deletions(-) [+] |
line wrap: on
line diff
--- a/lisp/progmodes/fortran.el Thu Mar 13 03:25:20 2008 +0000 +++ b/lisp/progmodes/fortran.el Thu Mar 13 03:26:47 2008 +0000 @@ -676,75 +676,72 @@ fortran-mode-abbrev-table) "Abbrev table for Fortran mode.") -(let (abbrevs-changed) - ;; Use the 6th arg (SYSTEM-FLAG) of define-abbrev if possible. - ;; Only use `apply' to quieten the byte-compiler. - (mapc - (function (lambda (element) - (condition-case nil - (apply 'define-abbrev fortran-mode-abbrev-table - (append element '(nil 0 t))) - (wrong-number-of-arguments - (apply 'define-abbrev fortran-mode-abbrev-table - (append element '(nil 0))))))) - '((";au" "automatic" ) - (";b" "byte" ) - (";bd" "block data" ) - (";ch" "character" ) - (";cl" "close" ) - (";c" "continue" ) - (";cm" "common" ) - (";cx" "complex" ) - (";df" "define" ) - (";di" "dimension" ) - (";do" "double" ) - (";dc" "double complex" ) - (";dp" "double precision" ) - (";dw" "do while" ) - (";e" "else" ) - (";ed" "enddo" ) - (";el" "elseif" ) - (";en" "endif" ) - (";eq" "equivalence" ) - (";ew" "endwhere" ) - (";ex" "external" ) - (";ey" "entry" ) - (";f" "format" ) - (";fa" ".false." ) - (";fu" "function" ) - (";g" "goto" ) - (";im" "implicit" ) - (";ib" "implicit byte" ) - (";ic" "implicit complex" ) - (";ich" "implicit character") - (";ii" "implicit integer" ) - (";il" "implicit logical" ) - (";ir" "implicit real" ) - (";inc" "include" ) - (";in" "integer" ) - (";intr" "intrinsic" ) - (";l" "logical" ) - (";n" "namelist" ) - (";o" "open" ) ; was ;op - (";pa" "parameter" ) - (";pr" "program" ) - (";ps" "pause" ) - (";p" "print" ) - (";rc" "record" ) - (";re" "real" ) - (";r" "read" ) - (";rt" "return" ) - (";rw" "rewind" ) - (";s" "stop" ) - (";sa" "save" ) - (";st" "structure" ) - (";sc" "static" ) - (";su" "subroutine" ) - (";tr" ".true." ) - (";ty" "type" ) - (";vo" "volatile" ) - (";w" "write" ) - (";wh" "where" )))) +;; Not in defvar because user abbrevs may be restored before this file loads. +(mapc + (lambda (e) + (condition-case nil + (define-abbrev fortran-mode-abbrev-table (car e) (cdr e) nil :count 0 + :system t) + (wrong-number-of-arguments ; Emacs 22 + (define-abbrev fortran-mode-abbrev-table (car e) (cdr e) nil 0 t)))) + '((";au" . "automatic" ) + (";b" . "byte" ) + (";bd" . "block data" ) + (";ch" . "character" ) + (";cl" . "close" ) + (";c" . "continue" ) + (";cm" . "common" ) + (";cx" . "complex" ) + (";df" . "define" ) + (";di" . "dimension" ) + (";do" . "double" ) + (";dc" . "double complex" ) + (";dp" . "double precision" ) + (";dw" . "do while" ) + (";e" . "else" ) + (";ed" . "enddo" ) + (";el" . "elseif" ) + (";en" . "endif" ) + (";eq" . "equivalence" ) + (";ew" . "endwhere" ) + (";ex" . "external" ) + (";ey" . "entry" ) + (";f" . "format" ) + (";fa" . ".false." ) + (";fu" . "function" ) + (";g" . "goto" ) + (";im" . "implicit" ) + (";ib" . "implicit byte" ) + (";ic" . "implicit complex" ) + (";ich" . "implicit character") + (";ii" . "implicit integer" ) + (";il" . "implicit logical" ) + (";ir" . "implicit real" ) + (";inc" . "include" ) + (";in" . "integer" ) + (";intr" . "intrinsic" ) + (";l" . "logical" ) + (";n" . "namelist" ) + (";o" . "open" ) ; was ;op + (";pa" . "parameter" ) + (";pr" . "program" ) + (";ps" . "pause" ) + (";p" . "print" ) + (";rc" . "record" ) + (";re" . "real" ) + (";r" . "read" ) + (";rt" . "return" ) + (";rw" . "rewind" ) + (";s" . "stop" ) + (";sa" . "save" ) + (";st" . "structure" ) + (";sc" . "static" ) + (";su" . "subroutine" ) + (";tr" . ".true." ) + (";ty" . "type" ) + (";vo" . "volatile" ) + (";w" . "write" ) + (";wh" . "where" ))) ;;;###autoload