# HG changeset patch # User Stefan Monnier # Date 1209753138 0 # Node ID fe81b2cb42e03b9d787931e822d728b516e1fa5e # Parent e4c0c68d78b49b16d616a564552e120a6f05b1c9 (octave-abbrev-table): Move defvar and initialization into define-abbrev-table. Use :regexp. (octave-mode-syntax-table): Don't set word syntax for `. diff -r e4c0c68d78b4 -r fe81b2cb42e0 lisp/ChangeLog --- a/lisp/ChangeLog Fri May 02 17:53:14 2008 +0000 +++ b/lisp/ChangeLog Fri May 02 18:32:18 2008 +0000 @@ -11,6 +11,10 @@ 2008-05-02 Stefan Monnier + * progmodes/octave-mod.el (octave-abbrev-table): Move defvar and + initialization into define-abbrev-table. Use :regexp. + (octave-mode-syntax-table): Don't set word syntax for `. + * files.el (minibuffer-with-setup-hook): Allow `fun' expressions rather than only value. diff -r e4c0c68d78b4 -r fe81b2cb42e0 lisp/progmodes/octave-mod.el --- a/lisp/progmodes/octave-mod.el Fri May 02 17:53:14 2008 +0000 +++ b/lisp/progmodes/octave-mod.el Fri May 02 18:32:18 2008 +0000 @@ -55,43 +55,41 @@ "Kurt Hornik , bug-gnu-emacs@gnu.org" "Current maintainer of the Emacs Octave package.") -(defvar octave-abbrev-table nil +(define-abbrev-table 'octave-abbrev-table + (mapcar (lambda (e) (append e '(nil 0 t))) + '(("`a" "all_va_args") + ("`b" "break") + ("`cs" "case") + ("`ca" "catch") + ("`c" "continue") + ("`el" "else") + ("`eli" "elseif") + ("`et" "end_try_catch") + ("`eu" "end_unwind_protect") + ("`ef" "endfor") + ("`efu" "endfunction") + ("`ei" "endif") + ("`es" "endswitch") + ("`ew" "endwhile") + ("`f" "for") + ("`fu" "function") + ("`gl" "global") + ("`gp" "gplot") + ("`gs" "gsplot") + ("`if" "if ()") + ("`o" "otherwise") + ("`rp" "replot") + ("`r" "return") + ("`s" "switch") + ("`t" "try") + ("`u" "until ()") + ("`up" "unwind_protect") + ("`upc" "unwind_protect_cleanup") + ("`w" "while ()"))) "Abbrev table for Octave's reserved words. Used in `octave-mode' and inferior-octave-mode buffers. -All Octave abbrevs start with a grave accent (`).") -(unless octave-abbrev-table - (define-abbrev-table 'octave-abbrev-table ())) - -(let ((abbrevs-changed abbrevs-changed)) - (define-abbrev octave-abbrev-table "`a" "all_va_args" nil 0 t) - (define-abbrev octave-abbrev-table "`b" "break" nil 0 t) - (define-abbrev octave-abbrev-table "`cs" "case" nil 0 t) - (define-abbrev octave-abbrev-table "`ca" "catch" nil 0 t) - (define-abbrev octave-abbrev-table "`c" "continue" nil 0 t) - (define-abbrev octave-abbrev-table "`el" "else" nil 0 t) - (define-abbrev octave-abbrev-table "`eli" "elseif" nil 0 t) - (define-abbrev octave-abbrev-table "`et" "end_try_catch" nil 0 t) - (define-abbrev octave-abbrev-table "`eu" "end_unwind_protect" nil 0 t) - (define-abbrev octave-abbrev-table "`ef" "endfor" nil 0 t) - (define-abbrev octave-abbrev-table "`efu" "endfunction" nil 0 t) - (define-abbrev octave-abbrev-table "`ei" "endif" nil 0 t) - (define-abbrev octave-abbrev-table "`es" "endswitch" nil 0 t) - (define-abbrev octave-abbrev-table "`ew" "endwhile" nil 0 t) - (define-abbrev octave-abbrev-table "`f" "for" nil 0 t) - (define-abbrev octave-abbrev-table "`fu" "function" nil 0 t) - (define-abbrev octave-abbrev-table "`gl" "global" nil 0 t) - (define-abbrev octave-abbrev-table "`gp" "gplot" nil 0 t) - (define-abbrev octave-abbrev-table "`gs" "gsplot" nil 0 t) - (define-abbrev octave-abbrev-table "`if" "if ()" nil 0 t) - (define-abbrev octave-abbrev-table "`o" "otherwise" nil 0 t) - (define-abbrev octave-abbrev-table "`rp" "replot" nil 0 t) - (define-abbrev octave-abbrev-table "`r" "return" nil 0 t) - (define-abbrev octave-abbrev-table "`s" "switch" nil 0 t) - (define-abbrev octave-abbrev-table "`t" "try" nil 0 t) - (define-abbrev octave-abbrev-table "`u" "until ()" nil 0 t) - (define-abbrev octave-abbrev-table "`up" "unwind_protect" nil 0 t) - (define-abbrev octave-abbrev-table "`upc" "unwind_protect_cleanup" nil 0 t) - (define-abbrev octave-abbrev-table "`w" "while ()" nil 0 t)) +All Octave abbrevs start with a grave accent (`)." + :regexp "\\(?:[^`]\\|^\\)\\(\\(?:\\<\\|`\\)\\w+\\)\\W*") (defvar octave-comment-char ?# "Character to start an Octave comment.") @@ -298,7 +296,8 @@ (modify-syntax-entry ?! "." table) (modify-syntax-entry ?\\ "\\" table) (modify-syntax-entry ?\' "." table) - (modify-syntax-entry ?\` "w" table) + ;; Was "w" for abbrevs, but now that it's not necessary any more, + (modify-syntax-entry ?\` "." table) (modify-syntax-entry ?\" "\"" table) (modify-syntax-entry ?. "w" table) (modify-syntax-entry ?_ "w" table)