improved the backwards compatibility documentation for the drscheme: names
This commit is contained in:
parent
880fa2df0d
commit
ac69f11a58
|
@ -338,6 +338,7 @@
|
|||
(open (prefix language: drracket:language-cm^))
|
||||
(open (prefix help-desk: drracket:help-desk-cm^))
|
||||
(open (prefix eval: drracket:eval-cm^))
|
||||
(open (prefix font: drracket:font-cm^))
|
||||
(open (prefix modes: drracket:modes-cm^))
|
||||
(open (prefix tracing: drracket:tracing-cm^))
|
||||
(open (prefix module-language: drracket:module-language-cm^))
|
||||
|
|
|
@ -47,8 +47,13 @@
|
|||
help-desk@ tracing@ app@
|
||||
main@))
|
||||
|
||||
(define-signature drscheme/drracket:tool^
|
||||
((open drracket:tool^)
|
||||
(open drscheme:tool^)))
|
||||
|
||||
(define-unit/new-import-export drracket@
|
||||
(import) (export drracket:tool^)
|
||||
(import)
|
||||
(export drscheme/drracket:tool^)
|
||||
(((prefix drracket:debug: drracket:debug^)
|
||||
(prefix drracket:unit: drracket:unit^)
|
||||
(prefix drracket:rep: drracket:rep^)
|
||||
|
@ -61,5 +66,19 @@
|
|||
(prefix drracket:modes: drracket:modes^)
|
||||
(prefix drracket:tracing: drracket:tracing^)
|
||||
(prefix drracket:module-language: drracket:module-language^)
|
||||
(prefix drracket:module-language-tools: drracket:module-language-tools^))
|
||||
(prefix drracket:module-language-tools: drracket:module-language-tools^)
|
||||
|
||||
(prefix drscheme:debug: drracket:debug^)
|
||||
(prefix drscheme:unit: drracket:unit^)
|
||||
(prefix drscheme:rep: drracket:rep^)
|
||||
(prefix drscheme:frame: drracket:frame^)
|
||||
(prefix drscheme:get/extend: drracket:get/extend^)
|
||||
(prefix drscheme:language-configuration: drracket:language-configuration^)
|
||||
(prefix drscheme:language: drracket:language^)
|
||||
(prefix drscheme:help-desk: drracket:help-desk^)
|
||||
(prefix drscheme:eval: drracket:eval^)
|
||||
(prefix drscheme:modes: drracket:modes^)
|
||||
(prefix drscheme:tracing: drracket:tracing^)
|
||||
(prefix drscheme:module-language: drracket:module-language^)
|
||||
(prefix drscheme:module-language-tools: drracket:module-language-tools^))
|
||||
drracket-unit@))
|
||||
|
|
|
@ -1,12 +1,11 @@
|
|||
#lang at-exp racket/base
|
||||
|
||||
#|
|
||||
|
||||
This first time this is loaded, it loads all of DrRacket and invokes
|
||||
the main unit, starting up DrRacket. After that, it just provides
|
||||
all of the names in the tools library, for use defining keybindings
|
||||
|
||||
|#
|
||||
|
||||
(require racket/class
|
||||
racket/gui/base
|
||||
(except-in scheme/unit struct)
|
||||
|
@ -36,6 +35,7 @@ all of the names in the tools library, for use defining keybindings
|
|||
|
||||
(define-values/invoke-unit/infer drracket@)
|
||||
(provide-signature-elements drracket:tool-cm^) ;; provide all of the classes & interfaces
|
||||
(provide-signature-elements drscheme:tool-cm^) ;; provide the classes & interfaces w/ drscheme: prefix
|
||||
|
||||
(provide drracket:unit:program-editor-mixin)
|
||||
(define-syntax (drracket:unit:program-editor-mixin stx)
|
||||
|
@ -54,7 +54,6 @@ all of the names in the tools library, for use defining keybindings
|
|||
(string->symbol
|
||||
(regexp-replace #rx"^drracket:" (symbol->string (syntax-e stx)) "drscheme:"))
|
||||
stx))]
|
||||
[definitions '()]
|
||||
[defthings
|
||||
(syntax-case stx ()
|
||||
[(_ case ...)
|
||||
|
@ -71,14 +70,11 @@ all of the names in the tools library, for use defining keybindings
|
|||
[_
|
||||
(raise-syntax-error 'provide/dr/doc "unknown thing" case)])])
|
||||
(with-syntax ([mid (munge-id #'id)])
|
||||
(set! definitions (cons #`(define mid id) definitions))
|
||||
#'(thing-doc mid ctc ("This is provided for backwards compatibility; new code should use " (scheme id) " instead.")))))
|
||||
(syntax->list #'(case ...)))])])
|
||||
(syntax-case stx ()
|
||||
[(_ rst ...)
|
||||
#`(begin
|
||||
#,@definitions
|
||||
(provide/doc #,@defthings rst ...))])))
|
||||
#`(provide/doc #,@defthings rst ...)])))
|
||||
|
||||
(provide/dr/doc
|
||||
|
||||
|
|
|
@ -27,19 +27,25 @@
|
|||
(all-from-out mrlib/switchable-button)
|
||||
(all-from-out framework)))
|
||||
|
||||
(provide tools-title tools-include)
|
||||
(provide tools-title tools-include tools-include/drs)
|
||||
(define (tools-title name)
|
||||
(title (tt (format "drracket:~a" name))))
|
||||
|
||||
(define-syntax (tools-include stx)
|
||||
(syntax-case stx ()
|
||||
[(_ name)
|
||||
(string? (syntax-e #'name))
|
||||
(let ([name (syntax-e #'name)])
|
||||
(with-syntax ([rx-drr (regexp (format "^~a" (regexp-quote (format "drracket:~a:" name))))]
|
||||
[rx-drs (regexp (format "^~a" (regexp-quote (format "drscheme:~a:" name))))])
|
||||
#'(begin
|
||||
(include-previously-extracted scribblings/tools/tool-lib-extracts rx-drr)
|
||||
(include-previously-extracted scribblings/tools/tool-lib-extracts rx-drs))))]))
|
||||
(with-syntax ([rx-drr (regexp (format "^~a" (regexp-quote (format "drracket:~a:" name))))])
|
||||
#'(include-previously-extracted scribblings/tools/tool-lib-extracts rx-drr)))]))
|
||||
|
||||
(define-syntax (tools-include/drs stx)
|
||||
(syntax-case stx ()
|
||||
[(_ name)
|
||||
(string? (syntax-e #'name))
|
||||
(let ([name (syntax-e #'name)])
|
||||
(with-syntax ([rx-drs (regexp (format "^~a" (regexp-quote (format "drscheme:~a:" name))))])
|
||||
#'(include-previously-extracted scribblings/tools/tool-lib-extracts rx-drs)))]))
|
||||
|
||||
(provide docs-get/extend)
|
||||
(define-syntax (docs-get/extend stx)
|
||||
|
|
|
@ -1,6 +1,7 @@
|
|||
#lang scribble/doc
|
||||
@(begin
|
||||
(require scribble/manual
|
||||
"common.rkt"
|
||||
(for-label scheme/gui/base)
|
||||
(for-label drracket/tool-lib)
|
||||
(for-label scheme/unit scheme/contract scheme/class)
|
||||
|
@ -518,4 +519,37 @@ Check Syntax is a part of the DrRacket collection, but is implemented via the to
|
|||
@include-section["module-language-tools.scrbl"]
|
||||
@include-section["module-language.scrbl"]
|
||||
|
||||
@section{Backwards compatibility}
|
||||
|
||||
This section lists the bindings that begin with @tt{drscheme:} provided by the tools
|
||||
library; they are here for backwards compatibility and to provide links to the
|
||||
@tt{drracket:} versions of the names.
|
||||
|
||||
@(require drracket/private/drsig
|
||||
(for-syntax racket/base
|
||||
racket/unit-exptime))
|
||||
@(define-syntax (drs-compat stx)
|
||||
(let-values ([(drs-parent drs-vars drs-var-defs-in-sig drs-stx-defs-in-sig) (signature-members #'drscheme:tool-cm^ #'here)]
|
||||
[(drr-parent drr-vars drr-var-defs-in-sig drr-stx-defs-in-sig) (signature-members #'drracket:tool-cm^ #'here)])
|
||||
(with-syntax ([(drs-id ...) drs-vars]
|
||||
[(drr-id ...) drr-vars])
|
||||
#'(begin
|
||||
(defthing drs-id any/c
|
||||
"This is provided for backwards compatibility; new code should use " (scheme drr-id) " instead.")
|
||||
...))))
|
||||
@drs-compat[]
|
||||
|
||||
@(tools-include/drs "debug")
|
||||
@(tools-include/drs "eval")
|
||||
@(tools-include/drs "frame")
|
||||
@(tools-include/drs "get/extend")
|
||||
@(tools-include/drs "help-desk")
|
||||
@(tools-include/drs "language-configuration")
|
||||
@(tools-include/drs "language")
|
||||
@(tools-include/drs "modes")
|
||||
@(tools-include/drs "module-language-tools")
|
||||
@(tools-include/drs "module-language")
|
||||
@(tools-include/drs "rep")
|
||||
@(tools-include/drs "unit")
|
||||
|
||||
@index-section[]
|
||||
|
|
Loading…
Reference in New Issue
Block a user