at-exp: extend reader for repl too
This commit is contained in:
parent
0c5479a1a6
commit
015986fb4f
10
pkgs/racket-pkgs/at-exp-lib/at-exp/lang/language-info.rkt
Normal file
10
pkgs/racket-pkgs/at-exp-lib/at-exp/lang/language-info.rkt
Normal file
|
@ -0,0 +1,10 @@
|
|||
#lang racket/base
|
||||
|
||||
(provide get-language-info)
|
||||
|
||||
(define (get-language-info data)
|
||||
(lambda (key default)
|
||||
(case key
|
||||
[(configure-runtime)
|
||||
'(#[at-exp/lang/runtime-config configure #f])]
|
||||
[else default])))
|
|
@ -26,7 +26,12 @@
|
|||
;; fall back to /lang/reader:
|
||||
(string->symbol (string-append str "/lang/reader"))))))
|
||||
wrap-reader
|
||||
wrap-reader
|
||||
(lambda (orig-read-syntax)
|
||||
(define read-syntax (wrap-reader orig-read-syntax))
|
||||
(lambda args
|
||||
(syntax-property (apply read-syntax args)
|
||||
'module-language
|
||||
'#(at-exp/lang/language-info get-language-info #f))))
|
||||
(lambda (proc)
|
||||
(lambda (key defval)
|
||||
(define (fallback) (if proc (proc key defval) defval))
|
||||
|
|
12
pkgs/racket-pkgs/at-exp-lib/at-exp/lang/runtime-config.rkt
Normal file
12
pkgs/racket-pkgs/at-exp-lib/at-exp/lang/runtime-config.rkt
Normal file
|
@ -0,0 +1,12 @@
|
|||
#lang racket/base
|
||||
|
||||
(provide configure)
|
||||
|
||||
(require (only-in scribble/reader make-at-readtable))
|
||||
|
||||
(define (configure data)
|
||||
(define old-read (current-read-interaction))
|
||||
(define (new-read src in)
|
||||
(parameterize ([current-readtable (make-at-readtable #:readtable (current-readtable))])
|
||||
(old-read src in)))
|
||||
(current-read-interaction new-read))
|
Loading…
Reference in New Issue
Block a user