diff options
author | Peter Feigl <peter.feigl@nexoid.at> | 2016-05-01 13:43:37 +0200 |
---|---|---|
committer | Jorgen Schaefer <contact@jorgenschaefer.de> | 2016-05-01 13:46:30 +0200 |
commit | 8cfd9ba1a97a02157c6b730cca9d61b0fb7de53b (patch) | |
tree | fa02350cf6c5696e25dabd9a8bb6e56878028343 /lisp/progmodes/scheme.el | |
parent | 7bced5ed111aaff2abcc5cdbefa996695eb30f60 (diff) | |
download | emacs-8cfd9ba1a97a02157c6b730cca9d61b0fb7de53b.tar.gz |
Add R7RS syntax forms to scheme.el
* lisp/progmodes/scheme.el (scheme-font-lock-keywords-2): Add
a number of special forms introduced in R7RS-small.
* lisp/progmodes/scheme.el (scheme-indent-function): Same.
Copyright-paperwork-exempt: yes
Diffstat (limited to 'lisp/progmodes/scheme.el')
-rw-r--r-- | lisp/progmodes/scheme.el | 23 |
1 files changed, 22 insertions, 1 deletions
diff --git a/lisp/progmodes/scheme.el b/lisp/progmodes/scheme.el index c621758a8b6..1cb71fa773a 100644 --- a/lisp/progmodes/scheme.el +++ b/lisp/progmodes/scheme.el @@ -314,7 +314,16 @@ See `run-hooks'." "and" "or" "delay" "force" ;; Stefan Monnier <stefan.monnier@epfl.ch> says don't bother: ;;"quasiquote" "quote" "unquote" "unquote-splicing" - "map" "syntax" "syntax-rules") t) + "map" "syntax" "syntax-rules" + ;; For R7RS + "when" "unless" "letrec*" "include" "include-ci" "cond-expand" + "delay-force" "parameterize" "guard" "case-lambda" + "syntax-error" "only" "except" "prefix" "rename" "define-values" + "define-record-type" "define-library" + "include-library-declarations" + ;; SRFI-8 + "receive" + ) t) "\\>") 1) ;; ;; It wouldn't be Scheme w/o named-let. @@ -547,6 +556,18 @@ indentation." (put 'call-with-values 'scheme-indent-function 1) ; r5rs? (put 'dynamic-wind 'scheme-indent-function 3) ; r5rs? +;; R7RS +(put 'when 'scheme-indent-function 1) +(put 'unless 'scheme-indent-function 1) +(put 'letrec* 'scheme-indent-function 1) +(put 'parameterize 'scheme-indent-function 1) +(put 'define-values 'scheme-indent-function 1) +(put 'define-record-type 'scheme-indent-function 1) ;; is 1 correct? +(put 'define-library 'scheme-indent-function 1) + +;; SRFI-8 +(put 'receive 'scheme-indent-function 2) + ;;;; MIT Scheme specific indentation. (if scheme-mit-dialect |