▼ |  | Dr Racket Plugins

1 | Dr Racket support for #lang-based Languages
2 | Implementing Dr Racket Plugins
3 | Adding Languages to Dr Racket
4 | Creating New Kinds of Dr Racket Frames
5 | Extending the Existing Dr Racket Classes
6 | Expanding the User’s Program Text and Breaking
7 | Editor Modes
8 | Plugin Capabilities
9 | Check Syntax
10 | Cooperating with Background Check Syntax
11 | Teaching Languages
12 | Signatures
13 | drracket: get/ extend
14 | drracket: unit
15 | drracket: language
16 | drracket: language-configuration
17 | drracket: debug
18 | drracket: rep
19 | drracket: frame
20 | drracket: help-desk
21 | drracket: eval
22 | drracket: modes
23 | drracket: module-language-tools
24 | drracket: module-language
25 | drracket: tracing
26 | Backwards Compatibility
| Index

On this page:

Dr Racket Plugins

7.2
top ← prev up next →

## DrRacket Plugins

Robert Bruce Findler

(require drracket/tool-lib) | package: drracket
(require drracket/tool)
(require drscheme/tool-lib)
(require drscheme/tool)

This manual describes DrRacket’s plugins interface. It assumes familiarity with Racket, as described in the The Racket Guide, and the The Racket Reference, DrRacket, as described in DrRacket: The Racket Programming Environment and the GUI library, as described in The Racket Graphical Interface Toolkit. The Framework, as described in Framework: Racket GUI Application Framework, may also come in handy.

The drscheme/tool-lib and drscheme/tool libraries are for backward compatibility; they export all of the bindings of their drracket counterpart.

1 DrRacket support for #lang-based Languages
1.1 Syntax Coloring
1.2 Indentation
1.3 Keystrokes
1.4 Filename Extensions
1.5 REPL Submit Predicate
1.6 Show big “Definitions” and “Interactions” labels
1.7 Opting out of Standard Toolbar Buttons
1.8 Opting in to Language-Specific Toolbar Buttons
1.9 Adding New Toolbar Buttons
1.10 Definitions Text Surrogate
2 Implementing DrRacket Plugins
3 Adding Languages to DrRacket
3.1 Adding Module-based Languages to DrRacket
3.2 Adding Arbitrary Languages to DrRacket
3.3 Language Extensions
4 Creating New Kinds of DrRacket Frames
5 Extending the Existing DrRacket Classes
6 Expanding the User’s Program Text and Breaking
7 Editor Modes
7.1 Color Schemes
7.2 General-purpose Modes
8 Plugin Capabilities
9 Check Syntax
9.1 Check Syntax Button
9.2 Syntax Properties that Check Syntax Looks For
10 Cooperating with Background Check Syntax
11 Teaching Languages
12 Signatures
13 drracket:get/extend
14 drracket:unit
15 drracket:language
16 drracket:language-configuration
17 drracket:debug
18 drracket:rep
19 drracket:frame
20 drracket:help-desk
21 drracket:eval
22 drracket:modes
23 drracket:module-language-tools
24 drracket:module-language
25 drracket:tracing
26 Backwards Compatibility
Index

Thanks

Thanks to PLT and the early adopters of the tools interface for their feedback and help.

A special thanks to Eli Barzilay, John Clements, Matthias Felleisen, Cormac Flanagan, Matthew Flatt, Max Hailperin, Philippe Meunier, and Christian Queinnec for their help being early clients for DrRacket plugins.

top ← prev up next →