Commit Graph

211 Commits

Author SHA1 Message Date
Jeremy Ashkenas
02c19b3170 patching up the lexer and adding a test with trailing whitespace (it was too string for trailing whitespace before) 2009-12-30 15:10:47 -05:00
Jeremy Ashkenas
96859e749b fixing up narwhal integration (again) 2009-12-30 15:05:05 -05:00
Jeremy Ashkenas
622ddea343 fixin up narwhal factory and adding more implicit blocks to the lexer 2009-12-30 14:32:59 -05:00
Jeremy Ashkenas
8e8efe4288 patched up lexer to add indentation to single-line flavors of statements -- let's expand this idea 2009-12-30 13:58:00 -05:00
Jeremy Ashkenas
df5c5d9fe2 merged in master branch again 2009-12-30 13:38:50 -05:00
Jeremy Ashkenas
cf7ce8a1af fixing the double-printing bug with coffee -r 2009-12-30 13:34:25 -05:00
Jeremy Ashkenas
b3cd5721cf ignoring test.coffee 2009-12-30 12:59:05 -05:00
Jeremy Ashkenas
893908b8fe removing dots from whitespace examples 2009-12-30 00:22:27 -05:00
Jeremy Ashkenas
6821660905 clean up a couple of test errors for whitespace 2009-12-30 00:08:49 -05:00
Jeremy Ashkenas
bc0214730a touch-ups cleanups to the lexer and rebuilding the narwhal libs from whitespace'd versions 2009-12-29 23:01:08 -05:00
Jeremy Ashkenas
57d0f25054 implementing kamatsu's debt-based lexer for closing delimiters 2009-12-29 22:24:52 -05:00
Jeremy Ashkenas
f456d1b78e whitespace parser down to 4 shift/reduce errors -- good enough for me 2009-12-29 21:46:15 -05:00
Jeremy Ashkenas
332f499c31 put the commas on the outside of expression closers 2009-12-29 20:39:51 -05:00
Jeremy Ashkenas
92cdeb093e don't break trailing commas with rewrite_closing_parens 2009-12-29 10:20:18 -05:00
Jeremy Ashkenas
f2bdd555fa killing some newlines in the execution tests, to test the lexer's newline suppression 2009-12-29 10:02:19 -05:00
Jeremy Ashkenas
5c7dee556a changing array comprehension filters from 'where' to 'when' to mirror case/when 2009-12-29 09:55:37 -05:00
Jeremy Ashkenas
8c6e5d0b37 allowing indentation in object and array literals 2009-12-29 09:25:56 -05:00
Jeremy Ashkenas
1128beb49b still some kinks to work out -- mid-expression blocks 2009-12-29 09:18:41 -05:00
Jeremy Ashkenas
0963eea60e using 'where' for array comprehension filtering, after kamatsu's suggestion -- execution tests pass now with significant whitespace 2009-12-29 08:52:26 -05:00
Jeremy Ashkenas
c1cdedd260 moving along with whitespace 2009-12-28 23:08:02 -05:00
Jeremy Ashkenas
3b0b93ec06 first draft of kamatsu's rewrite rules -- finally got whitespace to be flexible enough, I think. 2009-12-28 21:07:47 -05:00
Jeremy Ashkenas
9c2f66ff13 got lexer balancing parens, indent/outdents, brackets, and curlies 2009-12-28 21:02:40 -05:00
Jeremy Ashkenas
1b688d7077 merging in master 2009-12-28 20:06:23 -05:00
Jeremy Ashkenas
df1f9c27eb removed unused example 2009-12-28 20:05:14 -05:00
Jeremy Ashkenas
e227a3bc69 fixing relative path for execution tests 2009-12-28 16:23:48 -05:00
Jeremy Ashkenas
e4c6119550 stop shifting args 2009-12-28 16:20:11 -05:00
Jeremy Ashkenas
6c9e8f28b6 rebuilding narwhal libs 2009-12-28 16:10:56 -05:00
Jeremy Ashkenas
cc7e685428 merging in tlrobinson's fix for package.json 2009-12-28 16:09:14 -05:00
tlrobinson
4abd88f2a9 Add package.json to gemspec files so Narwhal integrations works when installed as a gem. 2009-12-28 12:45:47 -08:00
Jeremy Ashkenas
a44fe402a1 removing broken accidental commit 2009-12-28 09:02:55 -08:00
tlrobinson
350cb623ae Add package on command line in case it's not installed in a Narwhal packages path. 2009-12-28 01:49:07 -08:00
tlrobinson
42c9c53a4c Merge branch 'master' of git://github.com/jashkenas/coffee-script 2009-12-28 01:36:23 -08:00
tlrobinson
5a49c22121 Fixed Narwhal integration. Cleaned up module organization, etc. 2009-12-28 01:16:57 -08:00
Jeremy Ashkenas
2bc4cbbdcc part of the way to supporting multiline array comprehensions -- the grammar and parsing is there -- the code generation is tricky 2009-12-27 21:50:02 -08:00
Jeremy Ashkenas
8fe6fa1cd7 CoffeeScript 0.1.6 -- bugfixes 0.1.6 2009-12-27 12:49:11 -08:00
Jeremy Ashkenas
835db4b279 fixing paths for running
coffee compiles CoffeeScript source files into JavaScript.

Usage:
  coffee path/to/script.coffee
    -i, --interactive                run a CoffeeScript REPL (requires Narwhal)
    -r, --run                        compile and run a script (requires Narwhal)
    -o, --output [DIR]               set the directory for compiled JavaScript
    -w, --watch                      watch scripts for changes, and recompile
    -p, --print                      print the compiled JavaScript to stdout
    -l, --lint                       pipe the compiled JavaScript through JSLint
    -e, --eval                       compile a cli scriptlet or read from stdin
    -t, --tokens                     print the tokens that the lexer produces
    -v, --verbose                    print at every step of code generation
    -n, --no-wrap                    raw output, no safety wrapper or vars
        --install-bundle             install the CoffeeScript TextMate bundle
        --version                    display CoffeeScript version
    -h, --help                       display this help message outside of the coffee-script directory
2009-12-27 12:43:05 -08:00
Jeremy Ashkenas
f89c864911 more underscore examples 2009-12-27 11:01:19 -08:00
Jeremy Ashkenas
542726911a more underscore and bugfix edits to code generation 2009-12-26 22:24:21 -08:00
Jeremy Ashkenas
575dc7d12e more underscore, and removing custom_assign and return from conditional compilation 2009-12-26 21:55:56 -08:00
Jeremy Ashkenas
ff0062b088 coffeescript 0.1.5, just for kicks 0.1.5 2009-12-26 21:25:37 -08:00
Jeremy Ashkenas
78589f5db1 docs for range comprehensiosn 2009-12-26 20:46:31 -08:00
Jeremy Ashkenas
903331f3ff got negative ranges working with (much, much) uglier compiled code 2009-12-26 20:35:43 -08:00
Jeremy Ashkenas
6aa247f73d that's it for now for significant whitespace -- I really just can't make flexible enough 2009-12-26 19:29:59 -08:00
Jeremy Ashkenas
da71735066 smarter but uglier lexer -- now handles most significant whitespace cases. Clean it up though... (newlines after outdents) 2009-12-26 13:22:53 -08:00
Jeremy Ashkenas
47b45c4494 removing no_paren -- it was optimizing away order of operations 2009-12-26 11:55:34 -08:00
Jeremy Ashkenas
d6ac6a3535 removing no_paren -- can cause order of operations errors 2009-12-26 11:10:59 -08:00
Jeremy Ashkenas
c322d77b86 got a lexer working along the lines of what kamatsu proposes 2009-12-26 10:59:47 -08:00
Jeremy Ashkenas
7aa69579ff little more progress on whitespace 2009-12-26 10:49:11 -08:00
Jeremy Ashkenas
5f3e2b7fc7 merging in master 2009-12-26 09:59:06 -08:00
Jeremy Ashkenas
c4844abb28 adding newline escaping, with tests 2009-12-26 09:29:03 -08:00