fix racket runtime-config info; reduce boilerplate for HtDP and Scribble language families
svn: r18761
This commit is contained in:
parent
4410b5adf6
commit
8b31b1b552
|
@ -1,10 +1,4 @@
|
|||
#lang s-exp syntax/module-reader
|
||||
lang/htdp-advanced
|
||||
#:read (wrap-reader read options)
|
||||
#:read-syntax (wrap-reader read-syntax options)
|
||||
#:info (make-info options)
|
||||
#:module-info (make-module-info options)
|
||||
|
||||
(require htdp/bsl/reader)
|
||||
(define options '(abbreviate-cons-as-list
|
||||
read-accept-quasiquote))
|
||||
#lang s-exp htdp/bsl/reader
|
||||
lang/htdp-intermediate-lambda
|
||||
'(abbreviate-cons-as-list
|
||||
read-accept-quasiquote)
|
||||
|
|
|
@ -1,10 +1,4 @@
|
|||
#lang s-exp syntax/module-reader
|
||||
#lang s-exp htdp/bsl/reader
|
||||
lang/htdp-beginner-abbr
|
||||
#:read (wrap-reader read options)
|
||||
#:read-syntax (wrap-reader read-syntax options)
|
||||
#:info (make-info options)
|
||||
#:module-info (make-module-info options)
|
||||
|
||||
(require htdp/bsl/reader)
|
||||
(define options '(abbreviate-cons-as-list
|
||||
read-accept-quasiquote))
|
||||
'(abbreviate-cons-as-list
|
||||
read-accept-quasiquote)
|
||||
|
|
|
@ -1,9 +1,3 @@
|
|||
#lang s-exp syntax/module-reader
|
||||
#lang s-exp htdp/bsl/reader
|
||||
lang/htdp-beginner
|
||||
#:read (wrap-reader read options)
|
||||
#:read-syntax (wrap-reader read-syntax options)
|
||||
#:info (make-info options)
|
||||
#:module-info (make-module-info options)
|
||||
|
||||
(require htdp/bsl/reader)
|
||||
(define options '())
|
||||
'()
|
||||
|
|
|
@ -1,7 +1,20 @@
|
|||
#lang scheme/base
|
||||
(provide wrap-reader
|
||||
make-info
|
||||
make-module-info)
|
||||
(require (rename-in syntax/module-reader
|
||||
[#%module-begin #%reader-module-begin]))
|
||||
(provide (rename-out [module-begin #%module-begin])
|
||||
(except-out (all-from-out scheme/base)
|
||||
#%module-begin))
|
||||
|
||||
(define-syntax-rule (module-begin lang opts)
|
||||
(#%reader-module-begin
|
||||
lang
|
||||
|
||||
#:read (wrap-reader read options)
|
||||
#:read-syntax (wrap-reader read-syntax options)
|
||||
#:info (make-info options)
|
||||
#:module-info (make-module-info options)
|
||||
|
||||
(define options opts)))
|
||||
|
||||
(define (wrap-reader read-proc options)
|
||||
(lambda args
|
||||
|
|
|
@ -1,10 +1,4 @@
|
|||
#lang s-exp syntax/module-reader
|
||||
#lang s-exp htdp/bsl/reader
|
||||
lang/htdp-intermediate-lambda
|
||||
#:read (wrap-reader read options)
|
||||
#:read-syntax (wrap-reader read-syntax options)
|
||||
#:info (make-info options)
|
||||
#:module-info (make-module-info options)
|
||||
|
||||
(require htdp/bsl/reader)
|
||||
(define options '(abbreviate-cons-as-list
|
||||
read-accept-quasiquote))
|
||||
'(abbreviate-cons-as-list
|
||||
read-accept-quasiquote)
|
||||
|
|
|
@ -1,10 +1,4 @@
|
|||
#lang s-exp syntax/module-reader
|
||||
#lang s-exp htdp/bsl/reader
|
||||
lang/htdp-intermediate
|
||||
#:read (wrap-reader read options)
|
||||
#:read-syntax (wrap-reader read-syntax options)
|
||||
#:info (make-info options)
|
||||
#:module-info (make-module-info options)
|
||||
|
||||
(require htdp/bsl/reader)
|
||||
(define options '(abbreviate-cons-as-list
|
||||
read-accept-quasiquote))
|
||||
'(abbreviate-cons-as-list
|
||||
read-accept-quasiquote)
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
#lang s-exp syntax/module-reader
|
||||
racket
|
||||
|
||||
#:info get-info
|
||||
(require racket/private/get-info)
|
||||
#:module-info '#(racket/private/get-info get-info #f)
|
||||
|
||||
|
||||
|
|
|
@ -2,11 +2,9 @@
|
|||
|
||||
(provide get-info)
|
||||
|
||||
(define get-info
|
||||
(lambda (key def get-default)
|
||||
(define (get-info data)
|
||||
(lambda (key default)
|
||||
(case key
|
||||
[(configure-runtime)
|
||||
'#(racket/private/runtime configure #f)]
|
||||
[else
|
||||
(get-default key def)])))
|
||||
|
||||
[else default])))
|
||||
|
|
|
@ -1,13 +1,3 @@
|
|||
#lang s-exp syntax/module-reader
|
||||
|
||||
#lang s-exp scribble/base/reader
|
||||
scribble/base/lang
|
||||
|
||||
#:read scribble:read-inside
|
||||
#:read-syntax scribble:read-syntax-inside
|
||||
#:whole-body-readers? #t
|
||||
#:wrapper1 (lambda (t) (list* 'doc 'values '() (t)))
|
||||
#:module-info (scribble-base-module-info)
|
||||
#:info (scribble-base-info)
|
||||
|
||||
(require (prefix-in scribble: "../../reader.ss")
|
||||
"../reader.ss")
|
||||
|
|
|
@ -1,16 +1,40 @@
|
|||
#lang scheme/base
|
||||
|
||||
(provide scribble-base-info
|
||||
(require (prefix-in scribble: "../reader.ss")
|
||||
(rename-in syntax/module-reader
|
||||
[#%module-begin #%reader-module-begin]))
|
||||
(provide (rename-out [module-begin #%module-begin])
|
||||
(except-out (all-from-out scheme/base)
|
||||
#%module-begin)
|
||||
scribble-base-info
|
||||
scribble-base-reader-info
|
||||
scribble-base-module-info)
|
||||
|
||||
(define (scribble-base-info)
|
||||
(define-syntax-rule (module-begin lang #:wrapper1 wrapper1)
|
||||
(#%reader-module-begin
|
||||
lang
|
||||
|
||||
#:read scribble:read-inside
|
||||
#:read-syntax scribble:read-syntax-inside
|
||||
#:whole-body-readers? #t
|
||||
#:wrapper1 wrapper1
|
||||
#:info (scribble-base-info)
|
||||
#:module-info (scribble-base-module-info)))
|
||||
|
||||
;; Settings that apply just to the surface syntax:
|
||||
(define (scribble-base-reader-info)
|
||||
(lambda (key defval default)
|
||||
(case key
|
||||
[(color-lexer)
|
||||
(dynamic-require 'syntax-color/scribble-lexer 'scribble-inside-lexer)]
|
||||
[else (default key defval)])))
|
||||
|
||||
;; Settings that apply to Scribble-renderable docs:
|
||||
(define (scribble-base-info)
|
||||
(lambda (key defval default)
|
||||
(case key
|
||||
[(drscheme:toolbar-buttons)
|
||||
(dynamic-require 'scribble/tools/drscheme-buttons 'drscheme-buttons)]
|
||||
[else (default key defval)])))
|
||||
[else ((scribble-base-reader-info) key defval default)])))
|
||||
|
||||
(define (scribble-base-module-info)
|
||||
(lambda (modpath data)
|
||||
|
|
|
@ -1,13 +1,3 @@
|
|||
#lang s-exp syntax/module-reader
|
||||
|
||||
#lang s-exp scribble/base/reader
|
||||
scribble/doclang
|
||||
|
||||
#:read scribble:read-inside
|
||||
#:read-syntax scribble:read-syntax-inside
|
||||
#:whole-body-readers? #t
|
||||
#:wrapper1 (lambda (t) (list* 'doc 'values '() (t)))
|
||||
#:module-info (scribble-base-module-info)
|
||||
#:info (scribble-base-info)
|
||||
|
||||
(require (prefix-in scribble: "../../reader.ss")
|
||||
scribble/base/reader)
|
||||
|
|
|
@ -1,13 +1,3 @@
|
|||
#lang s-exp syntax/module-reader
|
||||
|
||||
#lang s-exp scribble/base/reader
|
||||
scribble/jfp/lang
|
||||
|
||||
#:read scribble:read-inside
|
||||
#:read-syntax scribble:read-syntax-inside
|
||||
#:whole-body-readers? #t
|
||||
#:wrapper1 (lambda (t) (cons 'doc (t)))
|
||||
#:module-info (scribble-base-module-info)
|
||||
#:info (scribble-base-info)
|
||||
|
||||
(require (prefix-in scribble: "../../reader.ss")
|
||||
scribble/base/reader)
|
||||
|
|
|
@ -5,8 +5,12 @@ scribble/lp/lang/lang
|
|||
#:read read-inside
|
||||
#:read-syntax read-syntax-inside
|
||||
#:whole-body-readers? #t
|
||||
#:module-info (scribble-base-module-info)
|
||||
#:info (scribble-base-info)
|
||||
#:module-info (scribble-base-module-info)
|
||||
|
||||
(require scribble/reader
|
||||
scribble/base/reader)
|
||||
(only-in scribble/base/reader
|
||||
scribble-base-info
|
||||
scribble-base-module-info))
|
||||
|
||||
|
||||
|
|
|
@ -1,13 +1,3 @@
|
|||
#lang s-exp syntax/module-reader
|
||||
|
||||
#lang s-exp scribble/base/reader
|
||||
scribble/manual/lang
|
||||
|
||||
#:read scribble:read-inside
|
||||
#:read-syntax scribble:read-syntax-inside
|
||||
#:whole-body-readers? #t
|
||||
#:wrapper1 (lambda (t) (cons 'doc (t)))
|
||||
#:module-info (scribble-base-module-info)
|
||||
#:info (scribble-base-info)
|
||||
|
||||
(require (prefix-in scribble: "../../reader.ss")
|
||||
scribble/base/reader)
|
||||
|
|
|
@ -1,13 +1,3 @@
|
|||
#lang s-exp syntax/module-reader
|
||||
|
||||
#lang s-exp scribble/base/reader
|
||||
scribble/sigplan/lang
|
||||
|
||||
#:read scribble:read-inside
|
||||
#:read-syntax scribble:read-syntax-inside
|
||||
#:whole-body-readers? #t
|
||||
#:wrapper1 (lambda (t) (cons 'doc (t)))
|
||||
#:module-info (scribble-base-module-info)
|
||||
#:info (scribble-base-info)
|
||||
|
||||
(require (prefix-in scribble: "../../reader.ss")
|
||||
scribble/base/reader)
|
||||
|
|
|
@ -5,5 +5,8 @@ scribble/text/textlang
|
|||
#:read scribble:read-inside
|
||||
#:read-syntax scribble:read-syntax-inside
|
||||
#:whole-body-readers? #t
|
||||
#:info (scribble-base-reader-info)
|
||||
|
||||
(require (prefix-in scribble: "../../reader.ss"))
|
||||
(require (prefix-in scribble: "../../reader.ss")
|
||||
(only-in scribble/base/reader
|
||||
scribble-base-reader-info))
|
||||
|
|
Loading…
Reference in New Issue
Block a user