Permalink
Browse files

Export the CoffeeScript REPL.

This is done by adding a root level wrapper script for
lib/coffee-script/repl, similar to how the register script is wrapped.
This allows user programs to embed a CoffeeScript REPL without digging
into CoffeeScript's internals.
  • Loading branch information...
1 parent e02c8ab commit 576fe44ef8882bca3c0786f718f21b90565fa0b6 @leedm777 leedm777 committed Apr 18, 2014
Showing with 21 additions and 0 deletions.
  1. +20 −0 examples/custom_repl.coffee
  2. +1 −0 repl.js
@@ -0,0 +1,20 @@
+###
+Example of embedding the CoffeeScript REPL, strikingly similar to the Node REPL.
+###
+
+# Require 'coffee-script/repl' to import the repl module
+repl = require '../repl'
+
+console.log 'Custom REPL! Type `sayHi()` to see what it does!'
+
+# Start the REPL with your configuration
+r = repl.start
+ prompt: 'my-repl> '
+
+# Fields added to the context object are exposed as variables in the REPL
+r.context.sayHi = -> console.log 'Hello'
+
+# An exit event is emitted when the user exits the REPL
+r.on 'exit', ->
+ console.log 'Bye!'
+ process.exit()
View
@@ -0,0 +1 @@
+module.exports = require('./lib/coffee-script/repl');

0 comments on commit 576fe44

Please sign in to comment.