#lang scribble/manual @(require (only-in xrepl/doc-utils [cmd xreplcmd]) "guide-utils.rkt") @(define xrepl-doc '(lib "xrepl/xrepl.scrbl")) @title[#:tag "cmdline-tools"]{Command-Line Tools} Racket provides, as part of its standard distribution, a number of command-line tools that can make racketeering more pleasant. @; - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @include-section["compile.scrbl"] @; raco @; - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @section{Interactive evaluation: XREPL} The Racket distribution includes @seclink[#:doc xrepl-doc "top"]{XREPL} (eXtended REPL), which provides everything you expect from a modern interactive environment. For example, XREPL provides an @xreplcmd{enter} command to have a REPL that runs in the context of a given module, and an @xreplcmd{edit} command to invoke your editor (as specified by the @envvar{EDITOR} environment variable) on the file you entered. A @xreplcmd{drracket} command makes it easy to use your favorite editor to write code, and still have DrRacket at hand to try things out. For more information about XREPL, see @other-doc[xrepl-doc]. @; - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @section{Shell completion} Shell auto-completion for @exec{bash} and @exec{zsh} is available in @filepath{collects/meta/contrib/completion/racket-completion.bash} and @filepath{collects/meta/contrib/completion/racket-completion.zsh}, respectively. To enable it, just run the appropriate file from your @tt{.bashrc} or your @tt{.zshrc}. The @filepath{meta} collection is only available in the Racket Full distribution. The completion scripts are also available @hyperlink["https://github.com/plt/racket/tree/master/collects/meta/contrib/completion"]{online}.