js2 0.3.7 → 0.3.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
data/CHANGELOG CHANGED
@@ -1,3 +1,8 @@
1
+ 0.3.8
2
+ * fied "render"
3
+ * fixed comment block bug
4
+ * using target-dir instead of out-dir
5
+
1
6
  0.3.7
2
7
  * fixed foreach counter
3
8
 
data/lib/js2/browser.js CHANGED
@@ -19,7 +19,7 @@ function mainFunction (arg) {
19
19
 
20
20
  var JS2 = root.JS2 = mainFunction;
21
21
  var js2 = root.js2 = JS2;
22
- js2.VERSION = "0.3.7";
22
+ js2.VERSION = "0.3.8";
23
23
 
24
24
  JS2.ROOT = JS2;
25
25
 
data/lib/js2/js2.js CHANGED
@@ -14,7 +14,7 @@ function mainFunction (arg) {
14
14
 
15
15
  var JS2 = root.JS2 = mainFunction;
16
16
  var js2 = root.js2 = JS2;
17
- js2.VERSION = "0.3.7";
17
+ js2.VERSION = "0.3.8";
18
18
 
19
19
  JS2.ROOT = JS2;
20
20
 
@@ -433,9 +433,9 @@ function mainFunction (arg) {
433
433
  var mode = 0;
434
434
  for (var i=0; i<str.length; i++) {
435
435
  if (str.charAt(i) == '*') {
436
- mode++;
436
+ mode = 1;
437
437
  } else if (str.charAt(i) == '/' && mode == 1) {
438
- mode++;
438
+ mode = 2;
439
439
  } else {
440
440
  mode = 0;
441
441
  }
@@ -1262,7 +1262,7 @@ JS2.Class.extend('Config', function(KLASS, OO){
1262
1262
  this.recursive = true;
1263
1263
  this.interval = 2;
1264
1264
  this.sourceDir = './app/js2';
1265
- this.outDir = './public/javascripts';
1265
+ this.targetDir = './public/javascripts';
1266
1266
  this.args = [];
1267
1267
 
1268
1268
  this.fs = fs;
@@ -1294,10 +1294,15 @@ JS2.Class.extend('Config', function(KLASS, OO){
1294
1294
  try {
1295
1295
  var config = JSON.parse(this.fs.read(file).replace(/\n\r?/g, ''));
1296
1296
 
1297
+ if (config['out-dir']) {
1298
+ config['target-dir'] = config['target-dir'] || config['out-dir'];
1299
+ console.log("Please use target-dir instead of out-dir");
1300
+ }
1301
+
1297
1302
  this.format = config.format || this.format;
1298
1303
  this.interval = config['interval'] ? config['interval'] : this.interval;
1299
1304
  this.sourceDir = config['source-dir'] || this.sourceDir;
1300
- this.outDir = config['out-dir'] || this.outDir;
1305
+ this.targetDir = config['target-dir'] || this.targetDir;
1301
1306
  this.verbose = ('verbose' in config) ? config['verbose'] : false;
1302
1307
 
1303
1308
  this['non-recursive'] = config['non-recursive'];
@@ -1318,20 +1323,20 @@ JS2.Class.extend('Commander', function(KLASS, OO){
1318
1323
  OO.addMember("BANNER","js2 <command> [options] <arguments>\n" +
1319
1324
  "VERSION: " + JS2.VERSION + "\n" +
1320
1325
  "Commands:\n" +
1321
- " * run <file> -- Executes file\n" +
1322
- " * render <file> -- Shows JS2 compiled output\n" +
1323
- " * compile <inDir> [outDir] -- Compiles a directory and puts js files into outDir. If outDir is not specified, inDir will be used\n" +
1324
- " Options:\n" +
1325
- " -n -- Do NOT traverse directories recursively\n" +
1326
- " -v -- Verbose \n" +
1327
- " -f=<format> -- Compile for different formats: node, ringo, or browser\n" +
1328
- " * compile <file> -- Compiles a single js2 file into js\n" +
1329
- " * watch <inDir> <outDir> -- Similar to compile, but update will keep looping while watching for modifications\n" +
1326
+ " * run <file> -- Executes file\n" +
1327
+ " * render <file> -- Shows JS2 compiled output\n" +
1328
+ " * compile <source dir> [target dir] -- Compiles a directory and puts js files into target dir. If target dir is not specified, source dir will be used\n" +
1330
1329
  " Options:\n" +
1331
- " -n -- Do NOT traverse directories recursively\n" +
1332
- " -f=<format> -- Compile for different formats: node, ringo, or browser\n" +
1333
- " -v -- Verbose \n" +
1334
- " -i=<seconds> -- Interval time in seconds between loops\n");
1330
+ " -n -- Do NOT traverse directories recursively\n" +
1331
+ " -v -- Verbose \n" +
1332
+ " -f=<format> -- Compile for different formats: node, ringo, or browser\n" +
1333
+ " * compile <file> -- Compiles a single js2 file into js\n" +
1334
+ " * watch <source dir> <target dir> -- Similar to compile, but update will keep looping while watching for modifications\n" +
1335
+ " Options:\n" +
1336
+ " -n -- Do NOT traverse directories recursively\n" +
1337
+ " -f=<format> -- Compile for different formats: node, ringo, or browser\n" +
1338
+ " -v -- Verbose \n" +
1339
+ " -i=<seconds> -- Interval time in seconds between loops\n");
1335
1340
 
1336
1341
  OO.addMember("initialize",function (argv) {
1337
1342
  this.fs = JS2.fs;
@@ -1358,7 +1363,7 @@ JS2.Class.extend('Commander', function(KLASS, OO){
1358
1363
  });
1359
1364
 
1360
1365
  OO.addMember("render",function () {
1361
- JS2.LOGGER.info(js2.render(this.fs.read(this.config.args[0])));
1366
+ console.log(js2.render(this.fs.read(this.config.args[0])));
1362
1367
  });
1363
1368
 
1364
1369
  OO.addMember("run",function () {
@@ -1376,16 +1381,16 @@ JS2.Class.extend('Commander', function(KLASS, OO){
1376
1381
  });
1377
1382
 
1378
1383
  OO.addMember("getUpdater",function () {
1379
- var inDir = this.config.args[0] || this.config.sourceDir || '.';
1380
- var outDir = this.config.args[1] || this.config.outDir || inDir;
1381
- return new JS2.Updater(this.fs, inDir, outDir, this.config.recursive);
1384
+ var inDir = this.config.args[0] || this.config.sourceDir || '.';
1385
+ var targetDir = this.config.args[1] || this.config.outDir || inDir;
1386
+ return new JS2.Updater(this.fs, inDir, targetDir, this.config.recursive);
1382
1387
  });
1383
1388
 
1384
1389
  OO.addMember("watch",function () {
1385
1390
  var updater = this.getUpdater();
1386
1391
  var self = this;
1387
1392
  var interval = this.config.interval || 2;
1388
- JS2.LOGGER.info('Input Directory:' + updater.inDir + ' -> Output Directory:' + updater.outDir);
1393
+ JS2.LOGGER.info('Source Directory:' + updater.inDir + ' -> Target Directory:' + updater.targetDir);
1389
1394
  if (updater.recursive) JS2.LOGGER.info('RECURSIVE');
1390
1395
 
1391
1396
  // HACK to get this integrated with ruby
data/lib/js2/rack.rb CHANGED
@@ -7,7 +7,7 @@ module JS2
7
7
 
8
8
  DEFAULT_CONFIG = {
9
9
  'source_dir' => "#{ROOT}/app/js2",
10
- 'out_dir' => "#{ROOT}/public/javascripts",
10
+ 'target_dir' => "#{ROOT}/public/javascripts",
11
11
  'bin' => (`which js2`.chomp rescue nil),
12
12
  'copy_js2' => true
13
13
  }
@@ -18,11 +18,11 @@ module JS2
18
18
  config = YAML.load_file(ROOT + '/config/js2.yml') rescue DEFAULT_CONFIG
19
19
 
20
20
  @source_dir = config['source_dir'] || './app/js2'
21
- @out_dir = config['out_dir'] || './public/javascripts'
21
+ @target_dir = config['target_dir'] || './public/javascripts'
22
22
  @bin = config['bin'] || 'js2'
23
23
  @copy_js2 = config.has_key?('copy_js2') ? config['copy_js2'] : true
24
24
 
25
- @valid = @source_dir && @out_dir && !@bin.blank?
25
+ @valid = @source_dir && @target_dir && !@bin.blank?
26
26
 
27
27
  unless @valid
28
28
  puts "JS2 is not configured properly"
@@ -38,7 +38,7 @@ module JS2
38
38
  end
39
39
  end
40
40
 
41
- `#{@bin} compile -f=browser -m #{@source_dir} #{@out_dir}` if @valid
41
+ `#{@bin} compile -f=browser -m #{@source_dir} #{@target_dir}` if @valid
42
42
  @app.call(env)
43
43
  end
44
44
  end
metadata CHANGED
@@ -1,8 +1,12 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: js2
3
3
  version: !ruby/object:Gem::Version
4
- prerelease:
5
- version: 0.3.7
4
+ prerelease: false
5
+ segments:
6
+ - 0
7
+ - 3
8
+ - 8
9
+ version: 0.3.8
6
10
  platform: ruby
7
11
  authors:
8
12
  - Jeff Su
@@ -10,7 +14,7 @@ autorequire:
10
14
  bindir: bin
11
15
  cert_chain: []
12
16
 
13
- date: 2011-03-23 00:00:00 +08:00
17
+ date: 2011-03-27 00:00:00 -07:00
14
18
  default_executable:
15
19
  dependencies:
16
20
  - !ruby/object:Gem::Dependency
@@ -21,6 +25,8 @@ dependencies:
21
25
  requirements:
22
26
  - - ">="
23
27
  - !ruby/object:Gem::Version
28
+ segments:
29
+ - 0
24
30
  version: "0"
25
31
  type: :runtime
26
32
  version_requirements: *id001
@@ -36,11 +42,11 @@ extra_rdoc_files: []
36
42
  files:
37
43
  - bin/js2
38
44
  - bin/js2-ruby
39
- - lib/js2.rb
40
- - lib/js2/context.rb
41
- - lib/js2/rack.rb
42
45
  - lib/js2/command.rb
46
+ - lib/js2/context.rb
43
47
  - lib/js2/fs.rb
48
+ - lib/js2/rack.rb
49
+ - lib/js2.rb
44
50
  - lib/js2/browser.js
45
51
  - lib/js2/js2.js
46
52
  - CHANGELOG
@@ -58,17 +64,21 @@ required_ruby_version: !ruby/object:Gem::Requirement
58
64
  requirements:
59
65
  - - ">="
60
66
  - !ruby/object:Gem::Version
67
+ segments:
68
+ - 0
61
69
  version: "0"
62
70
  required_rubygems_version: !ruby/object:Gem::Requirement
63
71
  none: false
64
72
  requirements:
65
73
  - - ">="
66
74
  - !ruby/object:Gem::Version
75
+ segments:
76
+ - 0
67
77
  version: "0"
68
78
  requirements: []
69
79
 
70
80
  rubyforge_project:
71
- rubygems_version: 1.5.2
81
+ rubygems_version: 1.3.7
72
82
  signing_key:
73
83
  specification_version: 3
74
84
  summary: Javascript Syntactic Sugar