diff --git a/collects/drracket/private/tools-drs.rkt b/collects/drracket/private/tools-drs.rkt index c8cd193d95..752e55e8d9 100644 --- a/collects/drracket/private/tools-drs.rkt +++ b/collects/drracket/private/tools-drs.rkt @@ -55,7 +55,7 @@ This file sets up the right lexical environment to invoke the tools that want to (match sexp [`((#%module-begin ,body ...)) (loop body)] - [`((provide/doc (,x ,name ,ctc ,other ...) ...) ,rest ...) + [`((provide/dr/doc (,x ,name ,ctc ,other ...) ...) ,rest ...) #`(let #,(map (λ (orig-name ctc) (define (rewrite obj) (cond @@ -80,7 +80,7 @@ This file sets up the right lexical environment to invoke the tools that want to [`(,a . ,b) (loop b)] [`() - (error 'tools-drs.rkt "did not find provide/doc: ~a" full-sexp)])))])) + (error 'tools-drs.rkt "did not find provide/dr/doc: ~a" full-sexp)])))])) ;; these two definitions are a hack. They give bindings for the drracket: based names that ;; appear in the source of language-object-contract.rkt. diff --git a/collects/drracket/private/tools.rkt b/collects/drracket/private/tools.rkt index 7c725c66e5..2870a23683 100644 --- a/collects/drracket/private/tools.rkt +++ b/collects/drracket/private/tools.rkt @@ -337,7 +337,7 @@ string-constants) (match sexp [`((#%module-begin ,body ...)) (loop body)] - [`((provide/doc (,x ,name ,ctc ,other ...) ...) ,rest ...) + [`((provide/dr/doc (,x ,name ,ctc ,other ...) ...) ,rest ...) #`(let #,(map (λ (name ctc) (with-syntax ([name (datum->syntax #'tool-name name)] [ctc (datum->syntax #'tool-name ctc)]) @@ -353,7 +353,7 @@ string-constants) [`(,a . ,b) (loop b)] [`() - (error 'tools.rkt "did not find provide/doc: ~a" full-sexp)])))])) + (error 'tools.rkt "did not find provide/dr/doc: ~a" full-sexp)])))])) ;; invoke-tool : unit/sig string -> (values (-> void) (-> void)) ;; invokes the tools and returns the two phase thunks. diff --git a/collects/drracket/tool-lib.rkt b/collects/drracket/tool-lib.rkt index 52cc69a7b1..de8fa24dac 100644 --- a/collects/drracket/tool-lib.rkt +++ b/collects/drracket/tool-lib.rkt @@ -13,7 +13,8 @@ all of the names in the tools library, for use defining keybindings racket/contract racket/class - ;; these have to be absolute requires for `include-extracted' to work with this file. + ;; these have to be absolute requires for `include-extracted' + ;; to work with this file. drracket/private/link drracket/private/drsig drracket/private/language-object-contract @@ -45,7 +46,41 @@ all of the names in the tools library, for use defining keybindings (language-object-abstraction drracket:language:object/c #t) -(provide/doc +(define-syntax (provide/dr/doc stx) + (let* ([munge-id + (λ (stx) + (datum->syntax + stx + (string->symbol + (regexp-replace #rx"^drracket:" (symbol->string (syntax-e stx)) "drscheme:")) + stx))] + [definitions '()] + [defthings + (syntax-case stx () + [(_ case ...) + (map + (λ (case) + (with-syntax ([(id ctc) + (syntax-case case (proc-doc/names proc-doc) + [(proc-doc/names id ctc . stuff) + (identifier? #'id) + #'(id ctc)] + [(proc-doc id ctc . stuff) + (identifier? #'id) + #'(id ctc)] + [_ + (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/dr/doc (proc-doc/names drracket:module-language-tools:add-opt-out-toolbar-button diff --git a/collects/scribblings/tools/common.rkt b/collects/scribblings/tools/common.rkt index 9a09a16152..5bffcc6e28 100644 --- a/collects/scribblings/tools/common.rkt +++ b/collects/scribblings/tools/common.rkt @@ -35,8 +35,11 @@ [(_ name) (string? (syntax-e #'name)) (let ([name (syntax-e #'name)]) - (with-syntax ([rx (regexp (format "^~a" (regexp-quote (format "drracket:~a:" name))))]) - #'(include-previously-extracted scribblings/tools/tool-lib-extracts rx)))])) + (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))))])) (provide docs-get/extend) (define-syntax (docs-get/extend stx) diff --git a/collects/scribblings/tools/debug.scrbl b/collects/scribblings/tools/debug.scrbl index a350c51df1..8295135936 100644 --- a/collects/scribblings/tools/debug.scrbl +++ b/collects/scribblings/tools/debug.scrbl @@ -1,5 +1,5 @@ #lang scribble/doc -@(require "common.ss") +@(require "common.rkt") @(tools-title "debug") @defmixin[drracket:debug:profile-unit-frame-mixin diff --git a/collects/scribblings/tools/eval.scrbl b/collects/scribblings/tools/eval.scrbl index 11c8ad7f21..e1e0ea1c6d 100644 --- a/collects/scribblings/tools/eval.scrbl +++ b/collects/scribblings/tools/eval.scrbl @@ -1,4 +1,4 @@ #lang scribble/doc -@(require "common.ss") +@(require "common.rkt") @(tools-title "eval") @(tools-include "eval") diff --git a/collects/scribblings/tools/frame.scrbl b/collects/scribblings/tools/frame.scrbl index 3ee7e11550..ec682bc9fe 100644 --- a/collects/scribblings/tools/frame.scrbl +++ b/collects/scribblings/tools/frame.scrbl @@ -1,5 +1,5 @@ #lang scribble/doc -@(require "common.ss") +@(require "common.rkt") @(tools-title "frame") @defclass[drracket:frame:name-message% canvas% ()]{ diff --git a/collects/scribblings/tools/get-slash-extend.scrbl b/collects/scribblings/tools/get-slash-extend.scrbl index a1db560193..c6aec33081 100644 --- a/collects/scribblings/tools/get-slash-extend.scrbl +++ b/collects/scribblings/tools/get-slash-extend.scrbl @@ -1,4 +1,4 @@ #lang scribble/doc -@(require "common.ss") +@(require "common.rkt") @(tools-title "get/extend") @(tools-include "get/extend") diff --git a/collects/scribblings/tools/help-desk.scrbl b/collects/scribblings/tools/help-desk.scrbl index 9b9843945b..ac91cef6b6 100644 --- a/collects/scribblings/tools/help-desk.scrbl +++ b/collects/scribblings/tools/help-desk.scrbl @@ -1,4 +1,4 @@ #lang scribble/doc -@(require "common.ss" (for-label help/search)) +@(require "common.rkt" (for-label help/search)) @(tools-title "help-desk") @(tools-include "help-desk") diff --git a/collects/scribblings/tools/language-configuration.scrbl b/collects/scribblings/tools/language-configuration.scrbl index 66b9b8a76c..b2cb3d393d 100644 --- a/collects/scribblings/tools/language-configuration.scrbl +++ b/collects/scribblings/tools/language-configuration.scrbl @@ -1,4 +1,4 @@ #lang scribble/doc -@(require "common.ss") +@(require "common.rkt") @(tools-title "language-configuration") @(tools-include "language-configuration") diff --git a/collects/scribblings/tools/language.scrbl b/collects/scribblings/tools/language.scrbl index 75f2c40bbd..16e7739001 100644 --- a/collects/scribblings/tools/language.scrbl +++ b/collects/scribblings/tools/language.scrbl @@ -1,5 +1,5 @@ #lang scribble/doc -@(require "common.ss") +@(require "common.rkt") @(tools-title "language") @definterface[drracket:language:simple-module-based-language<%> ()]{ diff --git a/collects/scribblings/tools/modes.scrbl b/collects/scribblings/tools/modes.scrbl index 94b02a25df..bdd443987d 100644 --- a/collects/scribblings/tools/modes.scrbl +++ b/collects/scribblings/tools/modes.scrbl @@ -1,4 +1,4 @@ #lang scribble/doc -@(require "common.ss") +@(require "common.rkt") @(tools-title "modes") @(tools-include "modes") diff --git a/collects/scribblings/tools/module-language-tools.scrbl b/collects/scribblings/tools/module-language-tools.scrbl index 54526e0ca8..4c6540436e 100644 --- a/collects/scribblings/tools/module-language-tools.scrbl +++ b/collects/scribblings/tools/module-language-tools.scrbl @@ -1,5 +1,5 @@ #lang scribble/doc -@(require "common.ss") +@(require "common.rkt") @(tools-title "module-language-tools") diff --git a/collects/scribblings/tools/module-language.scrbl b/collects/scribblings/tools/module-language.scrbl index b5a5ffdefc..d9b59b3719 100644 --- a/collects/scribblings/tools/module-language.scrbl +++ b/collects/scribblings/tools/module-language.scrbl @@ -1,5 +1,5 @@ #lang scribble/doc -@(require "common.ss") +@(require "common.rkt") @(tools-title "module-language") @definterface[drracket:language:module-language<%> ()]{ diff --git a/collects/scribblings/tools/rep.scrbl b/collects/scribblings/tools/rep.scrbl index f2a5bab734..7675443f96 100644 --- a/collects/scribblings/tools/rep.scrbl +++ b/collects/scribblings/tools/rep.scrbl @@ -1,5 +1,5 @@ #lang scribble/doc -@(require "common.ss") +@(require "common.rkt") @(tools-title "rep") diff --git a/collects/scribblings/tools/unit.scrbl b/collects/scribblings/tools/unit.scrbl index a9583c8495..50aded5152 100644 --- a/collects/scribblings/tools/unit.scrbl +++ b/collects/scribblings/tools/unit.scrbl @@ -1,5 +1,5 @@ #lang scribble/doc -@(require "common.ss") +@(require "common.rkt") @(tools-title "unit") @definterface[drracket:unit:tab<%> (drracket:rep:context<%>)]{