Skip to content

Racket language templated content generator integrated into raco

License

Notifications You must be signed in to change notification settings

johnstonskj/racket-scaffold

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

39 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Racket Scaffold templated content generator

GitHub release Travis Status Coverage Status raco pkg install racket-scaffold Documentation GitHub stars MIT License

This package primarily adds a new command to raco to generate source content. The tool, scaffold, has a set of pre-defined complex templates known as planks. Planks can be as simple as a snippet of useful reusable code, or as complex as a complete package structure (akin to the existing raco pkg new command).

Examples

$ raco scaffold
Usage: raco scaffold <subcommand> [option ...] <arg ...>
  where any unambiguous prefix can be used for a subcommand

The Racket templated content generator.

For help on a particular subcommand, use 'raco scaffold <subcommand> --help'
  raco scaffold package       create a new, complete, package.
  raco scaffold collection    create a new collection.
  raco scaffold module        create a new module.
  raco scaffold testmodule    create a new rackunit test module.
  raco scaffold plank         expand a short code snippet.
  raco scaffold config        show default configuration values.

Running the following command line will create a complete package.

$ raco scaffold package -d "Some new package" -V "1.0" -l MIT -r markdown \
         -L "racket/base" -u "me" -e "me@example.com" my-name

The generated package has the following structure:

my-name/
|-- README.md 
|-- LICENSE
|-- .travis.yml
|-- Makefile
|-- info.rkt
'-- my-name/
    |-- info.rkt
    |-- main.rkt
    |-- private/
    |   '-- my-name.rkt
    |-- test/
    |   '-- my-name.rkt
    '-- scribblings/
        '-- scribblings.scrbl
        '-- my-name.scrbl

History

  • 1.0 - Initial Version

Racket Language