jade-js-source 0.27.6 → 0.28.0
Sign up to get free protection for your applications and to get access to all the features.
- data/{lib/jade_js/jade.js → jade.js} +20 -6
- data/{lib/jade_js/runtime.js → runtime.js} +0 -0
- data/support/ruby/jade_js/source.rb +13 -0
- metadata +15 -14
- data/lib/jade_js/source.rb +0 -10
@@ -483,8 +483,9 @@ Compiler.prototype = {
|
|
483
483
|
*/
|
484
484
|
|
485
485
|
visitText: function(text){
|
486
|
-
text = utils.text(text.val.replace(/\\/g, '
|
486
|
+
text = utils.text(text.val.replace(/\\/g, '_SLASH_'));
|
487
487
|
if (this.escape) text = escape(text);
|
488
|
+
text = text.replace(/_SLASH_/g, '\\\\');
|
488
489
|
this.buffer(text);
|
489
490
|
},
|
490
491
|
|
@@ -587,7 +588,9 @@ Compiler.prototype = {
|
|
587
588
|
|
588
589
|
this.buf.push(''
|
589
590
|
+ ' } else {\n'
|
591
|
+
+ ' var $$l = 0;\n'
|
590
592
|
+ ' for (var ' + each.key + ' in ' + each.obj + ') {\n'
|
593
|
+
+ ' $$l++;'
|
591
594
|
+ ' if (' + each.obj + '.hasOwnProperty(' + each.key + ')){'
|
592
595
|
+ ' var ' + each.val + ' = ' + each.obj + '[' + each.key + '];\n');
|
593
596
|
|
@@ -595,7 +598,13 @@ Compiler.prototype = {
|
|
595
598
|
|
596
599
|
this.buf.push(' }\n');
|
597
600
|
|
598
|
-
this.buf.push('
|
601
|
+
this.buf.push(' }\n');
|
602
|
+
if (each.alternative) {
|
603
|
+
this.buf.push(' if ($$l === 0) {');
|
604
|
+
this.visit(each.alternative);
|
605
|
+
this.buf.push(' }');
|
606
|
+
}
|
607
|
+
this.buf.push(' }\n}).call(this);\n');
|
599
608
|
},
|
600
609
|
|
601
610
|
/**
|
@@ -813,7 +822,6 @@ module.exports = {
|
|
813
822
|
*/
|
814
823
|
|
815
824
|
coffeescript: function(str){
|
816
|
-
str = str.replace(/\\n/g, '\n');
|
817
825
|
var js = require('coffee-script').compile(str).replace(/\\/g, '\\\\').replace(/\n/g, '\\n');
|
818
826
|
return '<script type="text/javascript">\\n' + js + '</script>';
|
819
827
|
}
|
@@ -1283,6 +1291,8 @@ Lexer.prototype = {
|
|
1283
1291
|
var captures;
|
1284
1292
|
if (captures = /^\n *\n/.exec(this.input)) {
|
1285
1293
|
this.consume(captures[0].length - 1);
|
1294
|
+
|
1295
|
+
++this.lineno;
|
1286
1296
|
if (this.pipeless) return this.tok('text', '');
|
1287
1297
|
return this.next();
|
1288
1298
|
}
|
@@ -3585,12 +3595,16 @@ require.register("utils.js", function(module, exports, require){
|
|
3585
3595
|
*/
|
3586
3596
|
|
3587
3597
|
var interpolate = exports.interpolate = function(str){
|
3588
|
-
return str.replace(/(
|
3598
|
+
return str.replace(/(_SLASH_)?([#!]){(.*?)}/g, function(str, escape, flag, code){
|
3599
|
+
code = code
|
3600
|
+
.replace(/\\'/g, "'")
|
3601
|
+
.replace(/_SLASH_/g, '\\');
|
3602
|
+
|
3589
3603
|
return escape
|
3590
|
-
? str.slice(
|
3604
|
+
? str.slice(7)
|
3591
3605
|
: "' + "
|
3592
3606
|
+ ('!' == flag ? '' : 'escape')
|
3593
|
-
+ "((interp = " + code
|
3607
|
+
+ "((interp = " + code
|
3594
3608
|
+ ") == null ? '' : interp) + '";
|
3595
3609
|
});
|
3596
3610
|
};
|
File without changes
|
metadata
CHANGED
@@ -1,33 +1,33 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: jade-js-source
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.28.0
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
8
|
-
- TJ Holowaychuk
|
9
|
-
- David Haslem
|
8
|
+
- TJ Holowaychuk <tj@vision-media.ca>
|
10
9
|
autorequire:
|
11
10
|
bindir: bin
|
12
11
|
cert_chain: []
|
13
|
-
date:
|
12
|
+
date: 2013-01-11 00:00:00.000000000 Z
|
14
13
|
dependencies: []
|
15
|
-
description:
|
16
|
-
|
17
|
-
email: therabidbanana@gmail.com
|
14
|
+
description:
|
15
|
+
email:
|
18
16
|
executables: []
|
19
17
|
extensions: []
|
20
18
|
extra_rdoc_files: []
|
21
19
|
files:
|
22
|
-
-
|
23
|
-
-
|
24
|
-
-
|
25
|
-
|
20
|
+
- jade.js
|
21
|
+
- runtime.js
|
22
|
+
- !binary |-
|
23
|
+
c3VwcG9ydC9ydWJ5L2phZGVfanMvc291cmNlLnJi
|
24
|
+
homepage: http://jade-lang.com/
|
26
25
|
licenses: []
|
27
26
|
post_install_message:
|
28
27
|
rdoc_options: []
|
29
28
|
require_paths:
|
30
|
-
-
|
29
|
+
- !binary |-
|
30
|
+
c3VwcG9ydC9ydWJ5
|
31
31
|
required_ruby_version: !ruby/object:Gem::Requirement
|
32
32
|
none: false
|
33
33
|
requirements:
|
@@ -41,9 +41,10 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
41
41
|
- !ruby/object:Gem::Version
|
42
42
|
version: '0'
|
43
43
|
requirements: []
|
44
|
-
rubyforge_project:
|
44
|
+
rubyforge_project:
|
45
45
|
rubygems_version: 1.8.17
|
46
46
|
signing_key:
|
47
47
|
specification_version: 3
|
48
|
-
summary: Jade
|
48
|
+
summary: Jade template engine
|
49
49
|
test_files: []
|
50
|
+
has_rdoc:
|