emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] master 8cfd9ba 2/2: Add R7RS syntax forms to scheme.el


From: Jorgen Schäfer
Subject: [Emacs-diffs] master 8cfd9ba 2/2: Add R7RS syntax forms to scheme.el
Date: Sun, 01 May 2016 11:48:08 +0000

branch: master
commit 8cfd9ba1a97a02157c6b730cca9d61b0fb7de53b
Author: Peter Feigl <address@hidden>
Commit: Jorgen Schaefer <address@hidden>

    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
---
 lisp/progmodes/scheme.el |   23 ++++++++++++++++++++++-
 1 file changed, 22 insertions(+), 1 deletion(-)

diff --git a/lisp/progmodes/scheme.el b/lisp/progmodes/scheme.el
index c621758..1cb71fa 100644
--- a/lisp/progmodes/scheme.el
+++ b/lisp/progmodes/scheme.el
@@ -314,7 +314,16 @@ See `run-hooks'."
                "and" "or" "delay" "force"
                ;; Stefan Monnier <address@hidden> 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



reply via email to

[Prev in Thread] Current Thread [Next in Thread]