From 36685c4f8a38abdcc974ce70dd3b261ea39efd37 Mon Sep 17 00:00:00 2001 From: Fabian Jakobs Date: Fri, 28 Sep 2012 12:17:19 +0300 Subject: [PATCH 01/32] don't build on install --- package.json | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/package.json b/package.json index 86b2fd8e..bef17187 100644 --- a/package.json +++ b/package.json @@ -28,8 +28,7 @@ "lib": "lib/ace" }, "scripts": { - "test": "node lib/ace/test/all.js", - "postinstall": "node ./install.js" + "test": "node lib/ace/test/all.js" }, "config": { "github.com/sourcemint/bundler-js/0/-meta/config/0": { From ae0ab0c7aa42f2a12f6476782483d2dbb760ccc4 Mon Sep 17 00:00:00 2001 From: Garen Torikian Date: Fri, 28 Sep 2012 07:20:34 -0700 Subject: [PATCH 02/32] Show URL as protocol independent; fix #981 --- index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/index.html b/index.html index ad87d77a..e99eb1d2 100644 --- a/index.html +++ b/index.html @@ -161,7 +161,7 @@ console.log(addResult); return x; }</div> -<script src="http://d1n0x3qji82z53.cloudfront.net/src-min-noconflict/ace.js" type="text/javascript" charset="utf-8"></script> +<script src="//d1n0x3qji82z53.cloudfront.net/src-min-noconflict/ace.js" type="text/javascript" charset="utf-8"></script> <script> var editor = ace.edit("editor"); editor.setTheme("ace/theme/monokai"); From 682bb31c54497104b34784a3e787640b45d38325 Mon Sep 17 00:00:00 2001 From: nightwing Date: Fri, 28 Sep 2012 18:41:43 +0400 Subject: [PATCH 03/32] vim mode: fix df --- lib/ace/keyboard/vim/maps/motions.js | 181 ++++++++++----------------- 1 file changed, 63 insertions(+), 118 deletions(-) diff --git a/lib/ace/keyboard/vim/maps/motions.js b/lib/ace/keyboard/vim/maps/motions.js index b8fb12aa..227862b9 100644 --- a/lib/ace/keyboard/vim/maps/motions.js +++ b/lib/ace/keyboard/vim/maps/motions.js @@ -28,9 +28,9 @@ * * ***** END LICENSE BLOCK ***** */ -"use strict" define(function(require, exports, module) { +"use strict"; var util = require("./util"); @@ -42,42 +42,27 @@ var keepScrollPosition = function(editor, fn) { editor.renderer.scrollToRow(editor.getCursorPosition().row - diff); }; -function Motion(getRange, type){ - if (type == 'extend') - var extend = true; - else - var reverse = type; - - this.nav = function(editor) { - var r = getRange(editor); - if (!r) +function Motion(m) { + if (typeof m == "function") { + var getPos = m; + m = this; + } else { + var getPos = m.getPos; + } + m.nav = function(editor, range, count, param) { + var a = getPos(editor, range, count, param, false); + if (!a) return; - if (!r.end) - var a = r; - else if (reverse) - var a = r.start; - else - var a = r.end; - editor.clearSelection(); editor.moveCursorTo(a.row, a.column); - } - this.sel = function(editor){ - var r = getRange(editor); - if (!r) + }; + m.sel = function(editor, range, count, param) { + var a = getPos(editor, range, count, param, true); + if (!a) return; - if (extend) - return editor.selection.setSelectionRange(r); - - if (!r.end) - var a = r; - else if (reverse) - var a = r.start; - else - var a = r.end; - editor.selection.selectTo(a.row, a.column); - } + }; + return m; } var nonWordRe = /[\s.\/\\()\"'-:,.;<>~!@#$%^&*|+=\[\]{}`~?]/; @@ -90,20 +75,20 @@ var StringStream = function(editor, cursor) { this.row = cursor.row; this.col = cursor.column; var line = editor.session.getLine(this.row); - var maxRow = editor.session.getLength() - this.ch = line[this.col] || '\n' + var maxRow = editor.session.getLength(); + this.ch = line[this.col] || '\n'; this.skippedLines = 0; this.next = function() { this.ch = line[++this.col] || this.handleNewLine(1); //this.debug() return this.ch; - } + }; this.prev = function() { this.ch = line[--this.col] || this.handleNewLine(-1); //this.debug() return this.ch; - } + }; this.peek = function(dir) { var ch = line[this.col + dir]; if (ch) @@ -113,7 +98,7 @@ var StringStream = function(editor, cursor) { if (this.col == line.length - 1) return '\n'; return editor.session.getLine(this.row + 1)[0] || '\n'; - } + }; this.handleNewLine = function(dir) { if (dir == 1){ @@ -128,7 +113,7 @@ var StringStream = function(editor, cursor) { return line[0] || '\n'; } if (dir == -1) { - if (this.row == 0) + if (this.row === 0) return ''; this.row --; line = editor.session.getLine(this.row); @@ -136,11 +121,11 @@ var StringStream = function(editor, cursor) { this.skippedLines--; return '\n'; } - } + }; this.debug = function() { console.log(line.substring(0, this.col)+'|'+this.ch+'\''+this.col+'\''+line.substr(this.col+1)); - } -} + }; +}; var Search = require("ace/search").Search; var search = new Search(); @@ -179,7 +164,7 @@ module.exports = { else str.next(); - return {column: str.col, row: str.row} + return {column: str.col, row: str.row}; }), "b": new Motion(function(editor) { var str = new StringStream(editor); @@ -199,7 +184,7 @@ module.exports = { return {column: str.col, row: str.row}; }), "B": new Motion(function(editor) { - var str = new StringStream(editor) + var str = new StringStream(editor); str.prev(); while(str.ch && !(!whiteRe.test(str.ch) && whiteRe.test(str.peek(-1))) && str.skippedLines > -2) str.prev(); @@ -208,7 +193,7 @@ module.exports = { str.next(); return {column: str.col, row: str.row}; - }, true), + }), "e": new Motion(function(editor) { var str = new StringStream(editor); @@ -389,98 +374,58 @@ module.exports = { } }, - "f": { + "f": new Motion({ param: true, handlesCount: true, - nav: function(editor, range, count, param) { - var ed = editor; - var cursor = ed.getCursorPosition(); + getPos: function(editor, range, count, param, isSel) { + var cursor = editor.getCursorPosition(); var column = util.getRightNthChar(editor, cursor, param, count || 1); if (typeof column === "number") { - ed.selection.clearSelection(); // Why does it select in the first place? - ed.moveCursorTo(cursor.row, column + cursor.column + 1); + cursor.column += column + (isSel ? 2 : 1); + return cursor; } - }, - sel: function(editor, range, count, param) { - var ed = editor; - var cursor = ed.getCursorPosition(); + } + }), + "F": new Motion({ + param: true, + handlesCount: true, + getPos: function(editor, range, count, param, isSel) { + var cursor = editor.getCursorPosition(); + var column = util.getLeftNthChar(editor, cursor, param, count || 1); + + if (typeof column === "number") { + cursor.column -= column + 1; + return cursor; + } + } + }), + "t": new Motion({ + param: true, + handlesCount: true, + getPos: function(editor, range, count, param, isSel) { + var cursor = editor.getCursorPosition(); var column = util.getRightNthChar(editor, cursor, param, count || 1); if (typeof column === "number") { - ed.moveCursorTo(cursor.row, column + cursor.column + 1); + cursor.column += column + (isSel ? 1 : 0); + return cursor; } } - }, - "F": { + }), + "T": new Motion({ param: true, handlesCount: true, - nav: function(editor, range, count, param) { - var ed = editor; - var cursor = ed.getCursorPosition(); + getPos: function(editor, range, count, param, isSel) { + var cursor = editor.getCursorPosition(); var column = util.getLeftNthChar(editor, cursor, param, count || 1); if (typeof column === "number") { - ed.selection.clearSelection(); // Why does it select in the first place? - ed.moveCursorTo(cursor.row, cursor.column - column - 1); - } - }, - sel: function(editor, range, count, param) { - var ed = editor; - var cursor = ed.getCursorPosition(); - var column = util.getLeftNthChar(editor, cursor, param, count || 1); - - if (typeof column === "number") { - ed.moveCursorTo(cursor.row, cursor.column - column - 1); + cursor.column -= column; + return cursor; } } - }, - "t": { - param: true, - handlesCount: true, - nav: function(editor, range, count, param) { - var ed = editor; - var cursor = ed.getCursorPosition(); - var column = util.getRightNthChar(editor, cursor, param, count || 1); - - if (typeof column === "number") { - ed.selection.clearSelection(); // Why does it select in the first place? - ed.moveCursorTo(cursor.row, column + cursor.column); - } - }, - sel: function(editor, range, count, param) { - var ed = editor; - var cursor = ed.getCursorPosition(); - var column = util.getRightNthChar(editor, cursor, param, count || 1); - - if (typeof column === "number") { - ed.moveCursorTo(cursor.row, column + cursor.column); - } - } - }, - "T": { - param: true, - handlesCount: true, - nav: function(editor, range, count, param) { - var ed = editor; - var cursor = ed.getCursorPosition(); - var column = util.getLeftNthChar(editor, cursor, param, count || 1); - - if (typeof column === "number") { - ed.selection.clearSelection(); // Why does it select in the first place? - ed.moveCursorTo(cursor.row, -column + cursor.column); - } - }, - sel: function(editor, range, count, param) { - var ed = editor; - var cursor = ed.getCursorPosition(); - var column = util.getLeftNthChar(editor, cursor, param, count || 1); - - if (typeof column === "number") { - ed.moveCursorTo(cursor.row, -column + cursor.column); - } - } - }, + }), "^": { nav: function(editor) { From 1a856fd0dd93c131a8354f2a98710e8b23cee7c2 Mon Sep 17 00:00:00 2001 From: Garen Torikian Date: Fri, 28 Sep 2012 15:41:04 -0700 Subject: [PATCH 04/32] Add right logo --- doc/site/images/zorba-logo.png | Bin 3102 -> 8197 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/doc/site/images/zorba-logo.png b/doc/site/images/zorba-logo.png index bf85fbb2cb1f77e9a8e595ae3594536edcd4c273..ad2c22f6a8abd84a8ce3032c751ca604a3452038 100644 GIT binary patch literal 8197 zcmZ{J1ymf{(k|}q&M>&U1RLBfgA-tI4Q_)wL4s=_xCVD8zyv2~2<|Q+3<;VLc${<3 zfB*aLdau{&-ql}!Ro||vy?V98>1ZkAVo_lsARyqXswjY;N2lkV4+HJ_crSGEJfJW+ z%FFAh%F6?EJl*UZU)v%eh!IBXZ@I1Mkx0k6fy>B103+o$@xu-Jy05yZsp>}1RMX4P z)yT?EmN}UA#YN*jP@}J%v{!2fhKr&-Aj+&D6WkDTz zq2@%3J9To3h-Z-WcKU3GHXdX0JoWpd)(vBSK*IW598i0}m6SG^@($b&`Jc z-*=83XzM>|;9o>gkZO>!gWnTD=SEqjv=~5`NwXYhq;(j*Xp+6lcDx;y5M+w6^c{Uy z>TaN2YD-<3rRU5JZ?Z=R{}Vn>p3l`cvq+=g@5{TaJMrT-IdAkn#(|dFu4v%ujgW>e zRm)J+yX0Tw2qDr{={)1xv_&s2e)F)_;&)t6Htr zUsK7CF}aQEoL7w6v;0D@&WQo ~9^U{^h&Y*92k`rh>chlz|ot?cOJbor_B)E)< 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 literal 3102 zcmaJ@XH-+^77dmeAA&gQ_`rf82#7)&J&IHr5Fmwf8>zobP;V-3a2XsVVCfoyS!r{W2bLdv7xHFKD7)fvngSl*lZi&Ze1)_-zJTyK!icH7EJHtNfVzl$QZ3GPZ z8N!HkhW%|S80!!9pwNg=J2=vsfV4+K?NM-)jje-&gB28wL?IDKGy;XTMmbZ>>sY@ce!(|5KYxa_9W6svBWSh8YLR~ zIb{s#`(E6>tM`Q)_I)qz-{m5-W)O1+`(FqBbxYelbJK5at6h9+d?H!f?KEv$gFkxF zwYLT0zawy4)}Yv{k-M=1*jNq(KH!y)OUH#u*9Pw8*W%QE;id|XLk(E>L3V9e!jr3Q zt2yCM1dnFquegewH{ypg^3wyN&<;LFrZz5NPm5K9TxIqfN%e%xy@A^~E3ci9`L%G# zU4nwQ5~~VedlUB=Tk-6ZJmRU~U^{<9Ip_L_WK5v?{iQhlh3I6z=yg^4|)*yloew=k+xaI{kp(#{KN<9j!8T^c}*MuV#2n3nq^d~NM%+ASd;;#r9jwY{s>=bR|9S+2N0DU=X!8+9cWexyx}Uh z)Pa`efJ~+SC{ZCRIWQ(LDo|OJ1Gon~6DIIMq!KCA!#t%@tr08LTkFADi3(N z+2*rBtc@BvskfaJVvc5lbpnsnr^dV=d@Z%Q0cH*;2Jz1GjioimK!=$7C5V z#IHbQx!R_h(>5&^DKsjL)`lqfA#YZqZkUucOv)$4s=^VeRV8Oe zteTOiE)0ruh9pmC<(N9~y-<0RCHd=}G@zBom#f#80f1DEYvnoDfu&}$xioy}ex)Q*$f=e`pt-w9MDV^XM7$ajZe4mK6KfH>(DsjdQ=&I{J*qC)CfARhqK&i8uaX}Rj*!5!a%~h&d7foB2xz3Vj?Zx=QRvSPbD>7T;h44)nli} z!XwT_x7Mr}@;kra&rUzU{V_Mq$5FqNH5AgO6rPC5{7uZEpMJk|7TsXP#~Pmi7mu&9 z8R>!4Pm=e)dz8G;itRwT6zja%Y3h;wo*QL?j{c*F1#O*nD+0@h)#)`WC!1$6ElqxM zc5Cjuz4Ek7Z8%yt8Ty z$J$*Uxt~y|qU_SMVq1GmVe564;jTuUi*Z|7v9DG}bN7Uv-vynzX}B)^%4~6B%Qn|u zFOdKK;`|cdggkvhn!y#53|OiOcxKA==3B$mZY++q)-ZH+i7OjXrnhBJ;<)kBUwli> zK#7B%iN%Jc-SeyGc@%Vfq!zSg>aFt4 zV>Y1c@Vygz%(7-n>`&#tE)b-7j(Oj$xL=&Kz~fEsC%4cd2L9fGsAc`MWNd;7r^I`E z+Nm*w{g^+U3O$m!vB|(|NF)hI^MRbWMoNTDQK%_0R*ivg09+ZdCjUMugqNJVc9Us(m6gunakKLC z;j!Hds7Z=pgMq!X@%-V9q?Ri;xWRi zc4b|Dc(mUk#HDS zxJ>rEmRz?FP!{ap0Ojg0-7UnJRYt$vGTcs;1ifVctNI0d`Npt9pX1M*(Y=px11^>m zqax=Is)fyCkS9^l)7&D;3wFSPN&cFYPe!o9kx8Zhp1u*>Oa@$Tj; z=I|XF6z_gUcr^3E>f+z?8p3qIKYv}a%!BRp9C_^y^zEpw{k<~;F}%qRRraVbcP5*; zp%3oZa*$^nmFdjPGBb^}6F1sCsn6Nm`nn-z!Fk6 Date: Fri, 28 Sep 2012 15:43:36 -0700 Subject: [PATCH 05/32] Also, remove 'fork me' banner --- doc/site/images/zorba-logo.png | Bin 8197 -> 6591 bytes index.html | 6 +----- 2 files changed, 1 insertion(+), 5 deletions(-) diff --git a/doc/site/images/zorba-logo.png b/doc/site/images/zorba-logo.png index ad2c22f6a8abd84a8ce3032c751ca604a3452038..c5ff8326c0c003a104a6d4100e90edb937fddb52 100644 GIT binary patch literal 6591 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 literal 8197 zcmZ{J1ymf{(k|}q&M>&U1RLBfgA-tI4Q_)wL4s=_xCVD8zyv2~2<|Q+3<;VLc${<3 zfB*aLdau{&-ql}!Ro||vy?V98>1ZkAVo_lsARyqXswjY;N2lkV4+HJ_crSGEJfJW+ z%FFAh%F6?EJl*UZU)v%eh!IBXZ@I1Mkx0k6fy>B103+o$@xu-Jy05yZsp>}1RMX4P z)yT?EmN}UA#YN*jP@}J%v{!2fhKr&-Aj+&D6WkDTz zq2@%3J9To3h-Z-WcKU3GHXdX0JoWpd)(vBSK*IW598i0}m6SG^@($b&`Jc z-*=83XzM>|;9o>gkZO>!gWnTD=SEqjv=~5`NwXYhq;(j*Xp+6lcDx;y5M+w6^c{Uy z>TaN2YD-<3rRU5JZ?Z=R{}Vn>p3l`cvq+=g@5{TaJMrT-IdAkn#(|dFu4v%ujgW>e zRm)J+yX0Tw2qDr{={)1xv_&s2e)F)_;&)t6Htr zUsK7CF}aQEoL7w6v;0D@&WQo ~9^U{^h&Y*92k`rh>chlz|ot?cOJbor_B)E)< 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 diff --git a/index.html b/index.html index 1a5ce4b4..598597fd 100644 --- a/index.html +++ b/index.html @@ -17,10 +17,6 @@ - - Fork me on GitHub -
@@ -487,7 +483,7 @@ tests for the highlighting.

  • Zorba XQuery
  • From 6dbfcaa3a9e4154015e5547899ba6f889e724eed Mon Sep 17 00:00:00 2001 From: ukyo Date: Sun, 30 Sep 2012 02:56:42 +0900 Subject: [PATCH 06/32] fix typo --- lib/ace/mode/javascript_highlight_rules.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/ace/mode/javascript_highlight_rules.js b/lib/ace/mode/javascript_highlight_rules.js index bad7e526..33844e55 100644 --- a/lib/ace/mode/javascript_highlight_rules.js +++ b/lib/ace/mode/javascript_highlight_rules.js @@ -70,7 +70,7 @@ var JavaScriptHighlightRules = function() { var kwBeforeRe = "case|do|else|finally|in|instanceof|return|throw|try|typeof|yield"; // TODO: Unicode escape sequences - var identifierRe = "[a-zA-Z\\$_\u00a1-\uffff][a-zA-Z\d\\$_\u00a1-\uffff]*\\b"; + var identifierRe = "[a-zA-Z\\$_\u00a1-\uffff][a-zA-Z\\d\\$_\u00a1-\uffff]*\\b"; var escapedRe = "\\\\(?:x[0-9a-fA-F]{2}|" + // hex "u[0-9a-fA-F]{4}|" + // unicode From 7f302bfc2f329642f207e08cf6d06bd793ba07db Mon Sep 17 00:00:00 2001 From: ukyo Date: Sun, 30 Sep 2012 17:04:01 +0900 Subject: [PATCH 07/32] update coffeescript highlight rules --- lib/ace/mode/coffee_highlight_rules.js | 70 ++++++++++++++++++++------ 1 file changed, 55 insertions(+), 15 deletions(-) diff --git a/lib/ace/mode/coffee_highlight_rules.js b/lib/ace/mode/coffee_highlight_rules.js index 98ba0659..62200d97 100644 --- a/lib/ace/mode/coffee_highlight_rules.js +++ b/lib/ace/mode/coffee_highlight_rules.js @@ -45,25 +45,28 @@ define(function(require, exports, module) { }; var keywords = ( - "this|throw|then|try|typeof|super|switch|return|break|by)|continue|" + + "this|throw|then|try|typeof|super|switch|return|break|by|continue|" + "catch|class|in|instanceof|is|isnt|if|else|extends|for|forown|" + "finally|function|while|when|new|no|not|delete|debugger|do|loop|of|off|" + "or|on|unless|until|and|yes" ); var langConstant = ( - "true|false|null|undefined" + "true|false|null|undefined|NaN|Infinity" ); var illegal = ( "case|const|default|function|var|void|with|enum|export|implements|" + "interface|let|package|private|protected|public|static|yield|" + - "__hasProp|extends|slice|bind|indexOf" + "__hasProp|slice|bind|indexOf" ); var supportClass = ( - "Array|Boolean|Date|Function|Number|Object|RegExp|ReferenceError|" + - "String|RangeError|SyntaxError|Error|EvalError|TypeError|URIError" + "Array|Boolean|Date|Function|Number|Object|RegExp|ReferenceError|String|" + + "Error|EvalError|InternalError|RangeError|ReferenceError|StopIteration|" + + "SyntaxError|TypeError|URIError|" + + "ArrayBuffer|Float32Array|Float64Array|Int16Array|Int32Array|Int8Array|" + + "Uint16Array|Uint32Array|Uint8Array|Uint8ClampedArray" ); var supportFunction = ( @@ -71,26 +74,22 @@ define(function(require, exports, module) { "encodeURIComponent|decodeURI|decodeURIComponent|String|" ); + var variableLanguage = ( + "window|arguments|prototype|document" + ); + var keywordMapper = this.createKeywordMapper({ "keyword": keywords, "constant.language": langConstant, "invalid.illegal": illegal, "language.support.class": supportClass, "language.support.function": supportFunction, + "variable.language": variableLanguage }, "identifier"); this.$rules = { start : [ { - token : "identifier", - regex : "(?:(?:\\.|::)\\s*)" + identifier - }, { - token : "variable", - regex : "@(?:" + identifier + ")?" - }, { - token: keywordMapper, - regex : identifier - }, { token : "constant.numeric", regex : "(?:0x[\\da-fA-F]+|(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:[eE][+-]?\\d+)?)" }, { @@ -134,12 +133,53 @@ define(function(require, exports, module) { }, { token : "comment", regex : "#.*" + }, { + token : "punctuation.operator", + regex : "\\." + }, { + //class A extends B + token : [ + "keyword", "text", "language.support.class", "text", "keyword", "text", "language.support.class" + ], + regex : "(class)(\\s+)(" + identifier + ")(\\s+)(extends)(\\s+)(" + identifier + ")" + }, { + //class A + token : [ + "keyword", "text", "language.support.class" + ], + regex : "(class)(\\s+)(" + identifier + ")" + }, { + //play = (args) -> + //play : (args) -> + token : [ + "entity.name.function", "text", "keyword.operator", "text", + "paren.lparen", "variable.parameter", "paren.rparen", "text", "storage.type" + ], + regex : "(" + identifier + ")(\\s*)(=|:)(\\s*)(\\(?)([^)]*)(\\)?)(\\s*)([-=]>)" + }, { + //(args) -> + token : [ + "paren.lparen", "variable.parameter", "paren.rparen", "text", "storage.type" + ], + regex : "(\\()([^)]*)(\\))(\\s*)([\\-=]>)" + }, { + token : "identifier", + regex : "(?:(?:\\.|::)\\s*)" + identifier + }, { + token : "variable", + regex : "@(?:" + identifier + ")?" + }, { + token: keywordMapper, + regex : identifier }, { token : "punctuation.operator", regex : "\\?|\\:|\\,|\\." + }, { + token : "storage.type", + regex : "[\\-=]>" }, { token : "keyword.operator", - regex : "(?:[\\-=]>|[-+*/%<>&|^!?=]=|>>>=?|\\-\\-|\\+\\+|::|&&=|\\|\\|=|<<=|>>=|\\?\\.|\\.{2,3}|[!*+-=><])" + regex : "(?:[-+*/%<>&|^!?=]=|>>>=?|\\-\\-|\\+\\+|::|&&=|\\|\\|=|<<=|>>=|\\?\\.|\\.{2,3}|[!*+-=><])" }, { token : "paren.lparen", regex : "[({[]" From 663fae408eacaadc24112f379faff8ce32a6c021 Mon Sep 17 00:00:00 2001 From: ukyo Date: Sun, 30 Sep 2012 17:39:35 +0900 Subject: [PATCH 08/32] small fix about illegal keywords --- lib/ace/mode/coffee_highlight_rules.js | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/lib/ace/mode/coffee_highlight_rules.js b/lib/ace/mode/coffee_highlight_rules.js index 62200d97..c0aab565 100644 --- a/lib/ace/mode/coffee_highlight_rules.js +++ b/lib/ace/mode/coffee_highlight_rules.js @@ -133,6 +133,11 @@ define(function(require, exports, module) { }, { token : "comment", regex : "#.*" + }, { + token : [ + "punctuation.operator", "identifier" + ], + regex : "(\\.)(" + illegal + ")" }, { token : "punctuation.operator", regex : "\\." From 706652048f6f64a8eea292fb4e73cc6eed9922f9 Mon Sep 17 00:00:00 2001 From: ukyo Date: Sun, 30 Sep 2012 18:58:45 +0900 Subject: [PATCH 09/32] small fix and add tests --- lib/ace/mode/coffee_highlight_rules.js | 9 +- lib/ace/mode/coffee_highlight_rules_test.js | 106 ++++++++++++++++++++ 2 files changed, 114 insertions(+), 1 deletion(-) diff --git a/lib/ace/mode/coffee_highlight_rules.js b/lib/ace/mode/coffee_highlight_rules.js index c0aab565..7921c486 100644 --- a/lib/ace/mode/coffee_highlight_rules.js +++ b/lib/ace/mode/coffee_highlight_rules.js @@ -160,7 +160,14 @@ define(function(require, exports, module) { "entity.name.function", "text", "keyword.operator", "text", "paren.lparen", "variable.parameter", "paren.rparen", "text", "storage.type" ], - regex : "(" + identifier + ")(\\s*)(=|:)(\\s*)(\\(?)([^)]*)(\\)?)(\\s*)([-=]>)" + regex : "(" + identifier + ")(\\s*)(=|:)(\\s*)(\\()([^)]*)(\\))(\\s*)([\\-=]>)" + }, { + //play = -> + //play : -> + token : [ + "entity.name.function", "text", "keyword.operator", "text", "storage.type" + ], + regex : "(" + identifier + ")(\\s*)(=|:)(\\s*)([\\-=]>)" }, { //(args) -> token : [ diff --git a/lib/ace/mode/coffee_highlight_rules_test.js b/lib/ace/mode/coffee_highlight_rules_test.js index eaf85531..b8ac39c5 100644 --- a/lib/ace/mode/coffee_highlight_rules_test.js +++ b/lib/ace/mode/coffee_highlight_rules_test.js @@ -48,7 +48,113 @@ module.exports = { assert.equal(tokens.length, 1); assert.equal(tokens[0].type, "keyword"); }, + + "test: tokenize function: 'foo = (args) ->'": function() { + var tokens = this.tokenizer.getLineTokens("foo = (args) ->", "start").tokens; + console.log(tokens); + assert.equal(tokens.length, 9); + [ + "entity.name.function", "text", "keyword.operator", "text", + "paren.lparen", "variable.parameter", "paren.rparen", "text", "storage.type" + ].forEach(function(type, i) { + assert.equal(tokens[i].type, type); + }); + }, + "test: tokenize function: 'window.foo = (args) ->'": function() { + var tokens = this.tokenizer.getLineTokens("window.foo = (args) ->", "start").tokens; + console.log(tokens); + assert.equal(tokens.length, 11); + [ + "variable.language", "punctuation.operator", "entity.name.function", "text", "keyword.operator", "text", + "paren.lparen", "variable.parameter", "paren.rparen", "text", "storage.type" + ].forEach(function(type, i) { + assert.equal(tokens[i].type, type); + }); + }, + + "test: tokenize function: 'foo : (args) ->'": function() { + var tokens = this.tokenizer.getLineTokens("foo : (args) ->", "start").tokens; + assert.equal(tokens.length, 9); + [ + "entity.name.function", "text", "keyword.operator", "text", + "paren.lparen", "variable.parameter", "paren.rparen", "text", "storage.type" + ].forEach(function(type, i) { + assert.equal(tokens[i].type, type); + }); + }, + + "test: tokenize function: 'foo = ->'": function() { + var tokens = this.tokenizer.getLineTokens("foo = ->", "start").tokens; + assert.equal(tokens.length, 5); + [ + "entity.name.function", "text", "keyword.operator", "text", "storage.type" + ].forEach(function(type, i) { + assert.equal(tokens[i].type, type); + }); + }, + + "test: tokenize function: 'foo : ->'": function() { + var tokens = this.tokenizer.getLineTokens("foo : ->", "start").tokens; + assert.equal(tokens.length, 5); + [ + "entity.name.function", "text", "keyword.operator", "text", "storage.type" + ].forEach(function(type, i) { + assert.equal(tokens[i].type, type); + }); + }, + + "test: tokenize function: '(args) ->'": function() { + var tokens = this.tokenizer.getLineTokens("(args) ->", "start").tokens; + assert.equal(tokens.length, 5); + [ + "paren.lparen", "variable.parameter", "paren.rparen", "text", "storage.type" + ].forEach(function(type, i) { + assert.equal(tokens[i].type, type); + }); + }, + + "test: tokenize function(callback): 'foo bar: 1, (args) ->'": function() { + var tokens = this.tokenizer.getLineTokens("foo bar: 1, (args) ->", "start").tokens; + assert.equal(tokens.length, 13); + [ + "identifier", "text", "identifier", "punctuation.operator", "text", "constant.numeric", "punctuation.operator", "text", + "paren.lparen", "variable.parameter", "paren.rparen", "text", "storage.type" + ].forEach(function(type, i) { + assert.equal(tokens[i].type, type); + }); + }, + + "test: tokenize class: 'class Foo'": function() { + var tokens = this.tokenizer.getLineTokens("class Foo", "start").tokens; + assert.equal(tokens.length, 3); + [ + "keyword", "text", "language.support.class" + ].forEach(function(type, i) { + assert.equal(tokens[i].type, type); + }); + }, + + "test: tokenize class 'class Foo extends Bar'": function() { + var tokens = this.tokenizer.getLineTokens("class Foo extends Bar", "start").tokens; + assert.equal(tokens.length, 7); + [ + "keyword", "text", "language.support.class", "text", "keyword", "text", "language.support.class" + ].forEach(function(type, i) { + assert.equal(tokens[i].type, type); + }); + }, + + "test: tokenize illegal name property: 'foo.static.function'": function() { + var tokens = this.tokenizer.getLineTokens("foo.static.function", "start").tokens; + assert.equal(tokens.length, 5); + [ + "identifier", "punctuation.operator", "identifier", "punctuation.operator", "identifier" + ].forEach(function(type, i) { + assert.equal(tokens[i].type, type); + }); + }, + // TODO: disable. not yet implemented "!test tokenize string with interpolation": function() { var tokens = this.tokenizer.getLineTokens('"#{ 22 / 7 } is a decent approximation of π"', "start").tokens; From ffa03315424a8cd3cc0d8912182f545e943b8130 Mon Sep 17 00:00:00 2001 From: ukyo Date: Sun, 30 Sep 2012 20:20:36 +0900 Subject: [PATCH 10/32] fix function regexp --- lib/ace/mode/coffee_highlight_rules.js | 6 ++++-- lib/ace/mode/coffee_highlight_rules_test.js | 11 +++++++++++ 2 files changed, 15 insertions(+), 2 deletions(-) diff --git a/lib/ace/mode/coffee_highlight_rules.js b/lib/ace/mode/coffee_highlight_rules.js index 7921c486..a6732a9e 100644 --- a/lib/ace/mode/coffee_highlight_rules.js +++ b/lib/ace/mode/coffee_highlight_rules.js @@ -87,6 +87,8 @@ define(function(require, exports, module) { "variable.language": variableLanguage }, "identifier"); + var functionRe = "(\\()([^)#]*)(\\))(\\s*)([\\-=]>)" + this.$rules = { start : [ { @@ -160,7 +162,7 @@ define(function(require, exports, module) { "entity.name.function", "text", "keyword.operator", "text", "paren.lparen", "variable.parameter", "paren.rparen", "text", "storage.type" ], - regex : "(" + identifier + ")(\\s*)(=|:)(\\s*)(\\()([^)]*)(\\))(\\s*)([\\-=]>)" + regex : "(" + identifier + ")(\\s*)(=|:)(\\s*)" + functionRe }, { //play = -> //play : -> @@ -173,7 +175,7 @@ define(function(require, exports, module) { token : [ "paren.lparen", "variable.parameter", "paren.rparen", "text", "storage.type" ], - regex : "(\\()([^)]*)(\\))(\\s*)([\\-=]>)" + regex : functionRe }, { token : "identifier", regex : "(?:(?:\\.|::)\\s*)" + identifier diff --git a/lib/ace/mode/coffee_highlight_rules_test.js b/lib/ace/mode/coffee_highlight_rules_test.js index b8ac39c5..e1afa251 100644 --- a/lib/ace/mode/coffee_highlight_rules_test.js +++ b/lib/ace/mode/coffee_highlight_rules_test.js @@ -104,6 +104,17 @@ module.exports = { }); }, + + "test: tokenize function(invalid code): 'foo:(args#) ->'": function() { + var tokens = this.tokenizer.getLineTokens("foo:(args#) ->", "start").tokens; + assert.equal(tokens.length, 5); + [ + "identifier", "punctuation.operator", "paren.lparen", "identifier", "comment" + ].forEach(function(type, i) { + assert.equal(tokens[i].type, type); + }); + }, + "test: tokenize function: '(args) ->'": function() { var tokens = this.tokenizer.getLineTokens("(args) ->", "start").tokens; assert.equal(tokens.length, 5); From 1510119e7f4c658d05d66f2d1829d89aebc91d2a Mon Sep 17 00:00:00 2001 From: ukyo Date: Mon, 1 Oct 2012 00:18:47 +0900 Subject: [PATCH 11/32] add function regexps and tests --- lib/ace/mode/coffee_highlight_rules.js | 63 ++++- lib/ace/mode/coffee_highlight_rules_test.js | 249 +++++++++++++------- 2 files changed, 220 insertions(+), 92 deletions(-) diff --git a/lib/ace/mode/coffee_highlight_rules.js b/lib/ace/mode/coffee_highlight_rules.js index a6732a9e..2da2c1d9 100644 --- a/lib/ace/mode/coffee_highlight_rules.js +++ b/lib/ace/mode/coffee_highlight_rules.js @@ -87,7 +87,27 @@ define(function(require, exports, module) { "variable.language": variableLanguage }, "identifier"); - var functionRe = "(\\()([^)#]*)(\\))(\\s*)([\\-=]>)" + var headRe = "[$A-Za-z_\\x7f-\\uffff]"; + + var functionRe = { + "({args})->": { + token: ["paren.lparen", "text", "paren.lparen", "text", "variable.parameter", "text", "paren.rparen", "text", "paren.rparen", "text", "storage.type"], + regex: "(\\()(\\s*)(\\{)(\\s*)(" + [headRe, headRe + "[$\\w\\s,\\x7f-\\uffff]*"].join("|") + ")(\\s*)(\\})(\\s*)(\\))(\\s*)([\\-=]>)" + }, + "({})->": { + token: ["paren.lparen", "text", "paren.lparen", "text", "paren.rparen", "text", "paren.rparen", "text", "storage.type"], + regex: "(\\()(\\s*)(\\{)(\\s*)(\\})(\\s*)(\\))(\\s*)([\\-=]>)" + }, + "(args)->": { + token: ["paren.lparen", "text", "variable.parameter", "text", "paren.rparen", "text", "storage.type"], + regex: "(\\()(\\s*)(" + [headRe, headRe + "[$\\w\\x7f-\\uffff]", headRe + "[^#)]*[^#(){}=,\\/\\\\]"].join("|") + ")(\\s*)(\\))(\\s*)([\\-=]>)" + }, + "()->": { + token: ["paren.lparen", "text", "paren.rparen", "text", "storage.type"], + regex: "(\\()(\\s*)(\\))(\\s*)([\\-=]>)" + } + }; + this.$rules = { start : [ @@ -155,14 +175,34 @@ define(function(require, exports, module) { "keyword", "text", "language.support.class" ], regex : "(class)(\\s+)(" + identifier + ")" + }, { + //play = ({args}) -> + //play : ({args}) -> + token : [ + "entity.name.function", "text", "keyword.operator", "text" + ].concat(functionRe["({args})->"].token), + regex : "(" + identifier + ")(\\s*)(=|:)(\\s*)" + functionRe["({args})->"].regex + }, { + //play = ({}) -> + //play : ({}) -> + token : [ + "entity.name.function", "text", "keyword.operator", "text" + ].concat(functionRe["({})->"].token), + regex : "(" + identifier + ")(\\s*)(=|:)(\\s*)" + functionRe["({})->"].regex }, { //play = (args) -> //play : (args) -> token : [ - "entity.name.function", "text", "keyword.operator", "text", - "paren.lparen", "variable.parameter", "paren.rparen", "text", "storage.type" - ], - regex : "(" + identifier + ")(\\s*)(=|:)(\\s*)" + functionRe + "entity.name.function", "text", "keyword.operator", "text" + ].concat(functionRe["(args)->"].token), + regex : "(" + identifier + ")(\\s*)(=|:)(\\s*)" + functionRe["(args)->"].regex + }, { + //play = () -> + //play : () -> + token : [ + "entity.name.function", "text", "keyword.operator", "text" + ].concat(functionRe["()->"].token), + regex : "(" + identifier + ")(\\s*)(=|:)(\\s*)" + functionRe["()->"].regex }, { //play = -> //play : -> @@ -170,13 +210,12 @@ define(function(require, exports, module) { "entity.name.function", "text", "keyword.operator", "text", "storage.type" ], regex : "(" + identifier + ")(\\s*)(=|:)(\\s*)([\\-=]>)" - }, { - //(args) -> - token : [ - "paren.lparen", "variable.parameter", "paren.rparen", "text", "storage.type" - ], - regex : functionRe - }, { + }, + functionRe["({args})->"], + functionRe["({})->"], + functionRe["(args)->"], + functionRe["()->"] + , { token : "identifier", regex : "(?:(?:\\.|::)\\s*)" + identifier }, { diff --git a/lib/ace/mode/coffee_highlight_rules_test.js b/lib/ace/mode/coffee_highlight_rules_test.js index e1afa251..d3914f02 100644 --- a/lib/ace/mode/coffee_highlight_rules_test.js +++ b/lib/ace/mode/coffee_highlight_rules_test.js @@ -41,6 +41,11 @@ var assert = require("../test/assertions"); module.exports = { setUp : function() { this.tokenizer = new Mode().getTokenizer(); + this.testTokens = function(tokens, correct) { + correct.forEach(function(type, i) { + assert.equal(tokens[i].type, type); + }); + }; }, "test: tokenize keyword": function() { @@ -49,121 +54,205 @@ module.exports = { assert.equal(tokens[0].type, "keyword"); }, - "test: tokenize function: 'foo = (args) ->'": function() { - var tokens = this.tokenizer.getLineTokens("foo = (args) ->", "start").tokens; - console.log(tokens); - assert.equal(tokens.length, 9); - [ + "test: tokenize function: 'foo = ({args}) ->'": function() { + var tokens = this.tokenizer.getLineTokens("foo = ({args}) ->", "start").tokens; + var correct = [ "entity.name.function", "text", "keyword.operator", "text", - "paren.lparen", "variable.parameter", "paren.rparen", "text", "storage.type" - ].forEach(function(type, i) { - assert.equal(tokens[i].type, type); - }); - }, - - "test: tokenize function: 'window.foo = (args) ->'": function() { - var tokens = this.tokenizer.getLineTokens("window.foo = (args) ->", "start").tokens; - console.log(tokens); + "paren.lparen", "paren.lparen", "variable.parameter", "paren.rparen", "paren.rparen", "text", "storage.type" + ]; + assert.equal(tokens.length, 11); - [ - "variable.language", "punctuation.operator", "entity.name.function", "text", "keyword.operator", "text", - "paren.lparen", "variable.parameter", "paren.rparen", "text", "storage.type" - ].forEach(function(type, i) { - assert.equal(tokens[i].type, type); - }); + this.testTokens(tokens, correct); + + tokens = this.tokenizer.getLineTokens("foo = ({arg1, arg2}) ->", "start").tokens; + assert.equal(tokens.length, 11); + this.testTokens(tokens, correct); + + tokens = this.tokenizer.getLineTokens("foo : ({arg1, arg2}) ->", "start").tokens; + assert.equal(tokens.length, 11); + this.testTokens(tokens, correct); }, - "test: tokenize function: 'foo : (args) ->'": function() { - var tokens = this.tokenizer.getLineTokens("foo : (args) ->", "start").tokens; - assert.equal(tokens.length, 9); - [ + "test: tokenize function: invalid case: 'foo = ({args}) ->'": function() { + var tokens = this.tokenizer.getLineTokens("foo = ({0abc}) ->", "start").tokens; + assert.notEqual(tokens[0].type, "entity.name.function"); + + tokens = this.tokenizer.getLineTokens("foo = ({/abc}) ->", "start").tokens; + assert.notEqual(tokens[0].type, "entity.name.function"); + + tokens = this.tokenizer.getLineTokens("foo = ({abc/}) ->", "start").tokens; + assert.notEqual(tokens[0].type, "entity.name.function"); + + tokens = this.tokenizer.getLineTokens("foo = ({#abc}) ->", "start").tokens; + assert.notEqual(tokens[0].type, "entity.name.function"); + + tokens = this.tokenizer.getLineTokens("foo = ({abc#}) ->", "start").tokens; + assert.notEqual(tokens[0].type, "entity.name.function"); + + tokens = this.tokenizer.getLineTokens("foo = ({)abc}) ->", "start").tokens; + assert.notEqual(tokens[0].type, "entity.name.function"); + + tokens = this.tokenizer.getLineTokens("foo = ({abc)}) ->", "start").tokens; + assert.notEqual(tokens[0].type, "entity.name.function"); + + tokens = this.tokenizer.getLineTokens("foo = ({a{bc}) ->", "start").tokens; + assert.notEqual(tokens[0].type, "entity.name.function"); + }, + + "test: tokenize function: 'foo = ({}) ->'": function() { + var tokens = this.tokenizer.getLineTokens("foo = ({}) ->", "start").tokens; + var correct = [ + "entity.name.function", "text", "keyword.operator", "text", + "paren.lparen", "paren.lparen", "paren.rparen", "paren.rparen", "text", "storage.type" + ]; + + assert.equal(tokens.length, 10); + this.testTokens(tokens, correct); + + tokens = this.tokenizer.getLineTokens("foo : ({}) ->", "start").tokens; + assert.equal(tokens.length, 10); + this.testTokens(tokens, correct); + + tokens = this.tokenizer.getLineTokens("foo = ({ }) ->", "start").tokens; + correct = [ + "entity.name.function", "text", "keyword.operator", "text", + "paren.lparen", "paren.lparen", "text", "paren.rparen", "paren.rparen", "text", "storage.type" + ]; + assert.equal(tokens.length, 11); + this.testTokens(tokens, correct); + }, + + "test: tokenize function: 'foo = (args) ->'": function() { + var tokens = this.tokenizer.getLineTokens("foo = (args) ->", "start").tokens; + var correct = [ "entity.name.function", "text", "keyword.operator", "text", "paren.lparen", "variable.parameter", "paren.rparen", "text", "storage.type" - ].forEach(function(type, i) { - assert.equal(tokens[i].type, type); - }); + ]; + assert.equal(tokens.length, 9); + this.testTokens(tokens, correct); + + tokens = this.tokenizer.getLineTokens("foo = (arg1, arg2) ->", "start").tokens; + assert.equal(tokens.length, 9); + this.testTokens(tokens, correct); + + tokens = this.tokenizer.getLineTokens("foo = (arg1 = 1, arg2 = 'name') ->", "start").tokens; + assert.equal(tokens.length, 9); + this.testTokens(tokens, correct); + }, + + "test: tokenize function: invalid case: 'foo=(args) ->'": function() { + var tokens = this.tokenizer.getLineTokens("foo=(args#) ->", "start").tokens; + assert.notEqual(tokens[0].type, "entity.name.function"); + + tokens = this.tokenizer.getLineTokens("foo=(args=) ->", "start").tokens; + assert.notEqual(tokens[0].type, "entity.name.function"); + + tokens = this.tokenizer.getLineTokens("foo=(args{) ->", "start").tokens; + assert.notEqual(tokens[0].type, "entity.name.function"); + + tokens = this.tokenizer.getLineTokens("foo=(args}) ->", "start").tokens; + assert.notEqual(tokens[0].type, "entity.name.function"); + + tokens = this.tokenizer.getLineTokens("foo=(}args) ->", "start").tokens; + assert.notEqual(tokens[0].type, "entity.name.function"); + + tokens = this.tokenizer.getLineTokens("foo=(a)rgs) ->", "start").tokens; + assert.notEqual(tokens[0].type, "entity.name.function"); + + tokens = this.tokenizer.getLineTokens("foo=(args/) ->", "start").tokens; + assert.notEqual(tokens[0].type, "entity.name.function"); + + tokens = this.tokenizer.getLineTokens("foo=(args\\) ->", "start").tokens; + assert.notEqual(tokens[0].type, "entity.name.function"); + }, + + "test: tokenize function: 'foo = () ->'": function() { + var tokens = this.tokenizer.getLineTokens("foo = () ->", "start").tokens; + var correct = [ + "entity.name.function", "text", "keyword.operator", "text", + "paren.lparen", "paren.rparen", "text", "storage.type" + ]; + + assert.equal(tokens.length, 8); + this.testTokens(tokens, correct); + + tokens = this.tokenizer.getLineTokens("foo : ( ) ->", "start").tokens; + correct = [ + "entity.name.function", "text", "keyword.operator", "text", + "paren.lparen", "text", "paren.rparen", "text", "storage.type" + ]; + assert.equal(tokens.length, 9); + this.testTokens(tokens, correct); + }, + + "test: tokenize function: 'window.foo = (args) ->'": function() { + var tokens = this.tokenizer.getLineTokens("window.foo = (args) ->", "start").tokens; + var correct = [ + "variable.language", "punctuation.operator", "entity.name.function", "text", "keyword.operator", "text", + "paren.lparen", "variable.parameter", "paren.rparen", "text", "storage.type" + ]; + + assert.equal(tokens.length, 11); + this.testTokens(tokens, correct); + + this.tokenizer.getLineTokens("window.foo = (args) ->", "start").tokens; + assert.equal(tokens.length, 11); + this.testTokens(tokens, correct); }, "test: tokenize function: 'foo = ->'": function() { var tokens = this.tokenizer.getLineTokens("foo = ->", "start").tokens; - assert.equal(tokens.length, 5); - [ + var correct = [ "entity.name.function", "text", "keyword.operator", "text", "storage.type" - ].forEach(function(type, i) { - assert.equal(tokens[i].type, type); - }); - }, + ]; - "test: tokenize function: 'foo : ->'": function() { - var tokens = this.tokenizer.getLineTokens("foo : ->", "start").tokens; assert.equal(tokens.length, 5); - [ - "entity.name.function", "text", "keyword.operator", "text", "storage.type" - ].forEach(function(type, i) { - assert.equal(tokens[i].type, type); - }); - }, + this.testTokens(tokens, correct); - - "test: tokenize function(invalid code): 'foo:(args#) ->'": function() { - var tokens = this.tokenizer.getLineTokens("foo:(args#) ->", "start").tokens; + this.tokenizer.getLineTokens("foo : ->", "start").tokens; assert.equal(tokens.length, 5); - [ - "identifier", "punctuation.operator", "paren.lparen", "identifier", "comment" - ].forEach(function(type, i) { - assert.equal(tokens[i].type, type); - }); + this.testTokens(tokens, correct); }, - "test: tokenize function: '(args) ->'": function() { - var tokens = this.tokenizer.getLineTokens("(args) ->", "start").tokens; - assert.equal(tokens.length, 5); - [ - "paren.lparen", "variable.parameter", "paren.rparen", "text", "storage.type" - ].forEach(function(type, i) { - assert.equal(tokens[i].type, type); - }); - }, - - "test: tokenize function(callback): 'foo bar: 1, (args) ->'": function() { + "test: tokenize callback function: 'foo bar: 1, (args) ->'": function() { var tokens = this.tokenizer.getLineTokens("foo bar: 1, (args) ->", "start").tokens; - assert.equal(tokens.length, 13); - [ + var correct = [ "identifier", "text", "identifier", "punctuation.operator", "text", "constant.numeric", "punctuation.operator", "text", "paren.lparen", "variable.parameter", "paren.rparen", "text", "storage.type" - ].forEach(function(type, i) { - assert.equal(tokens[i].type, type); - }); + ]; + + assert.equal(tokens.length, 13); + this.testTokens(tokens, correct); }, "test: tokenize class: 'class Foo'": function() { var tokens = this.tokenizer.getLineTokens("class Foo", "start").tokens; - assert.equal(tokens.length, 3); - [ + var correct = [ "keyword", "text", "language.support.class" - ].forEach(function(type, i) { - assert.equal(tokens[i].type, type); - }); + ]; + + assert.equal(tokens.length, 3); + this.testTokens(tokens, correct); }, "test: tokenize class 'class Foo extends Bar'": function() { var tokens = this.tokenizer.getLineTokens("class Foo extends Bar", "start").tokens; - assert.equal(tokens.length, 7); - [ + var correct = [ "keyword", "text", "language.support.class", "text", "keyword", "text", "language.support.class" - ].forEach(function(type, i) { - assert.equal(tokens[i].type, type); - }); + ]; + + assert.equal(tokens.length, 7); + this.testTokens(tokens, correct); }, "test: tokenize illegal name property: 'foo.static.function'": function() { var tokens = this.tokenizer.getLineTokens("foo.static.function", "start").tokens; - assert.equal(tokens.length, 5); - [ + var correct = [ "identifier", "punctuation.operator", "identifier", "punctuation.operator", "identifier" - ].forEach(function(type, i) { - assert.equal(tokens[i].type, type); - }); + ]; + + assert.equal(tokens.length, 5); + this.testTokens(tokens, correct); }, // TODO: disable. not yet implemented From ddb40420cdfef819628105ad8afbd4edeeeca548 Mon Sep 17 00:00:00 2001 From: DanyaPostfactum Date: Mon, 1 Oct 2012 16:35:23 +1000 Subject: [PATCH 12/32] add css-class to textarea --- lib/ace/css/editor.css | 4 ++-- lib/ace/keyboard/textinput.js | 1 + 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/lib/ace/css/editor.css b/lib/ace/css/editor.css index 015cff6c..7e0c3a76 100644 --- a/lib/ace/css/editor.css +++ b/lib/ace/css/editor.css @@ -90,7 +90,7 @@ height: 100%; } -.ace_editor > textarea { +.ace_text-input { position: absolute; z-index: 0; width: 0.5em; @@ -105,7 +105,7 @@ overflow: hidden; } -.ace_editor > textarea.ace_composition { +.ace_text-input.ace_composition { background: #fff; color: #000; z-index: 1000; diff --git a/lib/ace/keyboard/textinput.js b/lib/ace/keyboard/textinput.js index e41f3152..b8889fb1 100644 --- a/lib/ace/keyboard/textinput.js +++ b/lib/ace/keyboard/textinput.js @@ -37,6 +37,7 @@ var dom = require("../lib/dom"); var TextInput = function(parentNode, host) { var text = dom.createElement("textarea"); + text.className = "ace_text-input"; /*/ debug text.style.opacity = 1 text.style.background = "rgba(0, 250, 0, 0.3)" From 15c5290aec6b277b08800b33ec83f2b5fc28739b Mon Sep 17 00:00:00 2001 From: DanyaPostfactum Date: Mon, 1 Oct 2012 16:50:23 +1000 Subject: [PATCH 13/32] Replace _ by - in css-classes --- demo/kitchen-sink/docs/diff.diff | 2 +- lib/ace/css/editor.css | 12 ++++++------ lib/ace/edit_session.js | 2 +- lib/ace/editor.js | 2 +- lib/ace/mode/_test/tokens_diff.json | 2 +- lib/ace/mode/_test/tokens_xml.json | 2 +- lib/ace/mode/coldfusion_highlight_rules.js | 2 +- lib/ace/mode/html_highlight_rules.js | 4 ++-- lib/ace/mode/liquid_highlight_rules.js | 2 +- lib/ace/mode/xml_highlight_rules.js | 4 ++-- lib/ace/mode/xquery/XQueryParser.js | 4 ++-- lib/ace/mode/xquery_highlight_rules.js | 2 +- lib/ace/mouse/default_gutter_handler.js | 2 +- lib/ace/theme/ambiance.css | 8 ++++---- lib/ace/theme/chrome.css | 10 +++++----- lib/ace/theme/clouds.css | 8 ++++---- lib/ace/theme/clouds_midnight.css | 8 ++++---- lib/ace/theme/cobalt.css | 8 ++++---- lib/ace/theme/crimson_editor.css | 10 +++++----- lib/ace/theme/dawn.css | 8 ++++---- lib/ace/theme/dreamweaver.css | 8 ++++---- lib/ace/theme/eclipse.css | 8 ++++---- lib/ace/theme/github.css | 8 ++++---- lib/ace/theme/idle_fingers.css | 8 ++++---- lib/ace/theme/kr_theme.css | 8 ++++---- lib/ace/theme/merbivore.css | 8 ++++---- lib/ace/theme/merbivore_soft.css | 8 ++++---- lib/ace/theme/mono_industrial.css | 8 ++++---- lib/ace/theme/monokai.css | 8 ++++---- lib/ace/theme/pastel_on_dark.css | 10 +++++----- lib/ace/theme/solarized_dark.css | 8 ++++---- lib/ace/theme/solarized_light.css | 8 ++++---- lib/ace/theme/textmate.css | 10 +++++----- lib/ace/theme/tomorrow.css | 8 ++++---- lib/ace/theme/tomorrow_night.css | 8 ++++---- lib/ace/theme/tomorrow_night_blue.css | 8 ++++---- lib/ace/theme/tomorrow_night_bright.css | 8 ++++---- lib/ace/theme/tomorrow_night_eighties.css | 8 ++++---- lib/ace/theme/twilight.css | 10 +++++----- lib/ace/theme/vibrant_ink.css | 8 ++++---- lib/ace/theme/xcode.css | 8 ++++---- lib/ace/virtual_renderer.js | 6 +++--- tool/Theme.tmpl.css | 8 ++++---- tool/tmtheme.js | 2 +- 44 files changed, 146 insertions(+), 146 deletions(-) diff --git a/demo/kitchen-sink/docs/diff.diff b/demo/kitchen-sink/docs/diff.diff index 3f58128a..16c89890 100644 --- a/demo/kitchen-sink/docs/diff.diff +++ b/demo/kitchen-sink/docs/diff.diff @@ -16,7 +16,7 @@ index 23fc3fc..ed3b273 100644 + this.highlight = function(re) { + if (!this.$searchHighlight) { -+ var highlight = new SearchHighlight(null, "ace_selected_word", "text"); ++ var highlight = new SearchHighlight(null, "ace_selected-word", "text"); + this.$searchHighlight = this.addDynamicMarker(highlight); + } + this.$searchHighlight.setRegexp(re); diff --git a/lib/ace/css/editor.css b/lib/ace/css/editor.css index 7e0c3a76..bd880d10 100644 --- a/lib/ace/css/editor.css +++ b/lib/ace/css/editor.css @@ -27,7 +27,7 @@ z-index: 4; } -.ace_gutter_active_line { +.ace_gutter-active-line { position: absolute; left: 0; right: 0; @@ -75,7 +75,7 @@ left: 0; } -.ace_editor .ace_print_margin_layer { +.ace_editor .ace_print-margin-layer { z-index: 0; position: absolute; overflow: hidden; @@ -85,7 +85,7 @@ width: 100%; } -.ace_editor .ace_print_margin { +.ace_editor .ace_print-margin { position: absolute; height: 100%; } @@ -182,12 +182,12 @@ z-index: 6; } -.ace_marker-layer .ace_active_line { +.ace_marker-layer .ace_active-line { position: absolute; z-index: 2; } -.ace_marker-layer .ace_selected_word { +.ace_marker-layer .ace_selected-word { position: absolute; z-index: 4; box-sizing: border-box; @@ -236,7 +236,7 @@ cursor: move; } -.ace_gutter_tooltip { +.ace_gutter-tooltip { background-color: #FFFFD5; border: 1px solid gray; box-shadow: 0 1px 1px rgba(0, 0, 0, 0.4); diff --git a/lib/ace/edit_session.js b/lib/ace/edit_session.js index 496c2d7e..fc916302 100644 --- a/lib/ace/edit_session.js +++ b/lib/ace/edit_session.js @@ -378,7 +378,7 @@ var EditSession = function(text, mode) { this.highlight = function(re) { if (!this.$searchHighlight) { - var highlight = new SearchHighlight(null, "ace_selected_word", "text"); + var highlight = new SearchHighlight(null, "ace_selected-word", "text"); this.$searchHighlight = this.addDynamicMarker(highlight); } this.$searchHighlight.setRegexp(re); diff --git a/lib/ace/editor.js b/lib/ace/editor.js index d2e1725f..1010a49d 100644 --- a/lib/ace/editor.js +++ b/lib/ace/editor.js @@ -497,7 +497,7 @@ var Editor = function(renderer, session) { } else { range = new Range(cursor.row, 0, cursor.row+1, 0); } - session.$highlightLineMarker = session.addMarker(range, "ace_active_line", "background"); + session.$highlightLineMarker = session.addMarker(range, "ace_active-line", "background"); } } }; diff --git a/lib/ace/mode/_test/tokens_diff.json b/lib/ace/mode/_test/tokens_diff.json index 6e7f99c3..fa28d05d 100644 --- a/lib/ace/mode/_test/tokens_diff.json +++ b/lib/ace/mode/_test/tokens_diff.json @@ -193,7 +193,7 @@ "state": "start", "data": [ [ "support.constant", "+" ], - [ "text", " var highlight = new SearchHighlight(null, \"ace_selected_word\", \"text\");" ] + [ "text", " var highlight = new SearchHighlight(null, \"ace_selected-word\", \"text\");" ] ] }, { diff --git a/lib/ace/mode/_test/tokens_xml.json b/lib/ace/mode/_test/tokens_xml.json index 06b50b48..b7c9dcfd 100644 --- a/lib/ace/mode/_test/tokens_xml.json +++ b/lib/ace/mode/_test/tokens_xml.json @@ -2,7 +2,7 @@ { "state": "start", "data": [ - [ "xml_pe", "" ] + [ "xml-pe", "" ] ] }, { diff --git a/lib/ace/mode/coldfusion_highlight_rules.js b/lib/ace/mode/coldfusion_highlight_rules.js index ed2a7448..3108081f 100644 --- a/lib/ace/mode/coldfusion_highlight_rules.js +++ b/lib/ace/mode/coldfusion_highlight_rules.js @@ -49,7 +49,7 @@ var ColdfusionHighlightRules = function() { regex : "<\\!\\[CDATA\\[", next : "cdata" }, { - token : "xml_pe", + token : "xml-pe", regex : "<\\?.*?\\?>" }, { token : "comment", diff --git a/lib/ace/mode/html_highlight_rules.js b/lib/ace/mode/html_highlight_rules.js index 2c4e5b76..cf80bdd7 100644 --- a/lib/ace/mode/html_highlight_rules.js +++ b/lib/ace/mode/html_highlight_rules.js @@ -68,7 +68,7 @@ var HtmlHighlightRules = function() { regex : "<\\!\\[CDATA\\[", next : "cdata" }, { - token : "xml_pe", + token : "xml-pe", regex : "<\\?.*?\\?>" }, { token : "comment", @@ -76,7 +76,7 @@ var HtmlHighlightRules = function() { regex : "<\\!--", next : "comment" }, { - token : "xml_pe", + token : "xml-pe", regex : "<\\!.*?>" }, { token : "meta.tag", diff --git a/lib/ace/mode/liquid_highlight_rules.js b/lib/ace/mode/liquid_highlight_rules.js index 2666c4a2..5b4f9c0b 100644 --- a/lib/ace/mode/liquid_highlight_rules.js +++ b/lib/ace/mode/liquid_highlight_rules.js @@ -87,7 +87,7 @@ var LiquidHighlightRules = function() { regex : "<\\!\\[CDATA\\[", next : "cdata" }, { - token : "xml_pe", + token : "xml-pe", regex : "<\\?.*?\\?>" }, { token : "comment", diff --git a/lib/ace/mode/xml_highlight_rules.js b/lib/ace/mode/xml_highlight_rules.js index 4a57864e..3244d572 100644 --- a/lib/ace/mode/xml_highlight_rules.js +++ b/lib/ace/mode/xml_highlight_rules.js @@ -45,7 +45,7 @@ var XmlHighlightRules = function() { regex : "<\\!\\[CDATA\\[", next : "cdata" }, { - token : "xml_pe", + token : "xml-pe", regex : "<\\?.*?\\?>" }, { token : "comment", @@ -53,7 +53,7 @@ var XmlHighlightRules = function() { regex : "<\\!--", next : "comment" }, { - token : "xml_pe", + token : "xml-pe", regex : "<\\!.*?>" }, { token : "meta.tag", // opening tag diff --git a/lib/ace/mode/xquery/XQueryParser.js b/lib/ace/mode/xquery/XQueryParser.js index 99d0544b..bebdb0e7 100644 --- a/lib/ace/mode/xquery/XQueryParser.js +++ b/lib/ace/mode/xquery/XQueryParser.js @@ -121,12 +121,12 @@ var XQueryParser = function(input, state) { this.ap = function(token) { - this.addToken(token, "xml_pe"); + this.addToken(token, "xml-pe"); }; this.ax = function(start, stop) { - this.highlighter.addToken(start.getStartIndex(), stop.getStopIndex(), "xml_pe"); + this.highlighter.addToken(start.getStartIndex(), stop.getStopIndex(), "xml-pe"); }; this.at = function(start, stop) diff --git a/lib/ace/mode/xquery_highlight_rules.js b/lib/ace/mode/xquery_highlight_rules.js index 4d4bd6ce..7149beb8 100644 --- a/lib/ace/mode/xquery_highlight_rules.js +++ b/lib/ace/mode/xquery_highlight_rules.js @@ -48,7 +48,7 @@ var XQueryHighlightRules = function() { regex : "<\\!\\[CDATA\\[", next : "cdata" }, { - token : "xml_pe", + token : "xml-pe", regex : "<\\?.*?\\?>" }, { token : "comment", diff --git a/lib/ace/mouse/default_gutter_handler.js b/lib/ace/mouse/default_gutter_handler.js index 281fe8d0..9e409b75 100644 --- a/lib/ace/mouse/default_gutter_handler.js +++ b/lib/ace/mouse/default_gutter_handler.js @@ -61,7 +61,7 @@ function GutterHandler(mouseHandler) { var tooltipTimeout, mouseEvent, tooltip, tooltipAnnotation; function createTooltip() { tooltip = dom.createElement("div"); - tooltip.className = "ace_gutter_tooltip"; + tooltip.className = "ace_gutter-tooltip"; tooltip.style.maxWidth = "500px"; tooltip.style.display = "none"; editor.container.appendChild(tooltip); diff --git a/lib/ace/theme/ambiance.css b/lib/ace/theme/ambiance.css index 6468d9b4..c7dfa72c 100644 --- a/lib/ace/theme/ambiance.css +++ b/lib/ace/theme/ambiance.css @@ -60,7 +60,7 @@ content: '‣' } -.ace-ambiance .ace_print_margin { +.ace-ambiance .ace_print-margin { border-left: 1px dotted #2D2D2D; width: 100%; background: #262626; @@ -97,7 +97,7 @@ background: rgba(221, 240, 255, 0.20); } -.ace-ambiance .ace_marker-layer .ace_selected_word { +.ace-ambiance .ace_marker-layer .ace_selected-word { border-radius: 4px; border: 8px solid #3f475d; box-shadow: 0 0 4px black; @@ -112,7 +112,7 @@ border: 1px solid rgba(255, 255, 255, 0.25); } -.ace-ambiance .ace_marker-layer .ace_active_line { +.ace-ambiance .ace_marker-layer .ace_active-line { background: rgba(255, 255, 255, 0.031); } @@ -223,7 +223,7 @@ color: #9b859d; } -.ace-ambiance .ace_xml_pe { +.ace-ambiance .ace_xml-pe { color: #494949; } diff --git a/lib/ace/theme/chrome.css b/lib/ace/theme/chrome.css index 2b8d60f9..40aab517 100644 --- a/lib/ace/theme/chrome.css +++ b/lib/ace/theme/chrome.css @@ -12,7 +12,7 @@ overflow : hidden; } -.ace-chrome .ace_print_margin { +.ace-chrome .ace_print-margin { width: 1px; background: #e8e8e8; } @@ -96,7 +96,7 @@ color: rgb(49, 132, 149); } -.ace-chrome .ace_line .ace_xml_pe { +.ace-chrome .ace_line .ace_xml-pe { color: rgb(104, 104, 91); } @@ -130,15 +130,15 @@ border: 1px solid rgb(192, 192, 192); } -.ace-chrome .ace_marker-layer .ace_active_line { +.ace-chrome .ace_marker-layer .ace_active-line { background: rgba(0, 0, 0, 0.07); } -.ace-chrome .ace_gutter_active_line { +.ace-chrome .ace_gutter-active-line { background-color : #dcdcdc; } -.ace-chrome .ace_marker-layer .ace_selected_word { +.ace-chrome .ace_marker-layer .ace_selected-word { background: rgb(250, 250, 255); border: 1px solid rgb(200, 200, 250); } diff --git a/lib/ace/theme/clouds.css b/lib/ace/theme/clouds.css index e0e35f22..4167e3ef 100644 --- a/lib/ace/theme/clouds.css +++ b/lib/ace/theme/clouds.css @@ -11,7 +11,7 @@ color: #333 } -.ace-clouds .ace_print_margin { +.ace-clouds .ace_print-margin { width: 1px; background: #e8e8e8 } @@ -51,15 +51,15 @@ border: 1px solid #BFBFBF } -.ace-clouds .ace_marker-layer .ace_active_line { +.ace-clouds .ace_marker-layer .ace_active-line { background: #FFFBD1 } -.ace-clouds .ace_gutter_active_line { +.ace-clouds .ace_gutter-active-line { background-color : #dcdcdc } -.ace-clouds .ace_marker-layer .ace_selected_word { +.ace-clouds .ace_marker-layer .ace_selected-word { border: 1px solid #BDD5FC } diff --git a/lib/ace/theme/clouds_midnight.css b/lib/ace/theme/clouds_midnight.css index 70c5dd34..c4415713 100644 --- a/lib/ace/theme/clouds_midnight.css +++ b/lib/ace/theme/clouds_midnight.css @@ -11,7 +11,7 @@ color: #929292 } -.ace-clouds-midnight .ace_print_margin { +.ace-clouds-midnight .ace_print-margin { width: 1px; background: #232323 } @@ -51,15 +51,15 @@ border: 1px solid #BFBFBF } -.ace-clouds-midnight .ace_marker-layer .ace_active_line { +.ace-clouds-midnight .ace_marker-layer .ace_active-line { background: rgba(215, 215, 215, 0.031) } -.ace-clouds-midnight .ace_gutter_active_line { +.ace-clouds-midnight .ace_gutter-active-line { background-color: rgba(215, 215, 215, 0.031) } -.ace-clouds-midnight .ace_marker-layer .ace_selected_word { +.ace-clouds-midnight .ace_marker-layer .ace_selected-word { border: 1px solid #000000 } diff --git a/lib/ace/theme/cobalt.css b/lib/ace/theme/cobalt.css index 0ebfa6fc..67c49845 100644 --- a/lib/ace/theme/cobalt.css +++ b/lib/ace/theme/cobalt.css @@ -11,7 +11,7 @@ color: #fff } -.ace-cobalt .ace_print_margin { +.ace-cobalt .ace_print-margin { width: 1px; background: #011e3a } @@ -51,15 +51,15 @@ border: 1px solid rgba(255, 255, 255, 0.15) } -.ace-cobalt .ace_marker-layer .ace_active_line { +.ace-cobalt .ace_marker-layer .ace_active-line { background: rgba(0, 0, 0, 0.35) } -.ace-cobalt .ace_gutter_active_line { +.ace-cobalt .ace_gutter-active-line { background-color: rgba(0, 0, 0, 0.35) } -.ace-cobalt .ace_marker-layer .ace_selected_word { +.ace-cobalt .ace_marker-layer .ace_selected-word { border: 1px solid rgba(179, 101, 57, 0.75) } diff --git a/lib/ace/theme/crimson_editor.css b/lib/ace/theme/crimson_editor.css index ab8300de..5c79cb0d 100644 --- a/lib/ace/theme/crimson_editor.css +++ b/lib/ace/theme/crimson_editor.css @@ -17,7 +17,7 @@ text-align: right; } -.ace-crimson-editor .ace_print_margin { +.ace-crimson-editor .ace_print-margin { width: 1px; background: #e8e8e8; } @@ -112,7 +112,7 @@ color: rgb(0, 64, 128); } -.ace-crimson-editor .ace_line .ace_xml_pe { +.ace-crimson-editor .ace_line .ace_xml-pe { color: rgb(104, 104, 91); } @@ -133,11 +133,11 @@ border: 1px solid rgb(192, 192, 192); } -.ace-crimson-editor .ace_marker-layer .ace_active_line { +.ace-crimson-editor .ace_marker-layer .ace_active-line { background: rgb(232, 242, 254); } -.ace-crimson-editor .ace_gutter_active_line { +.ace-crimson-editor .ace_gutter-active-line { background-color : #dcdcdc; } @@ -145,7 +145,7 @@ color:rgb(28, 2, 255); } -.ace-crimson-editor .ace_marker-layer .ace_selected_word { +.ace-crimson-editor .ace_marker-layer .ace_selected-word { background: rgb(250, 250, 255); border: 1px solid rgb(200, 200, 250); } diff --git a/lib/ace/theme/dawn.css b/lib/ace/theme/dawn.css index 6c84998b..e5692b45 100644 --- a/lib/ace/theme/dawn.css +++ b/lib/ace/theme/dawn.css @@ -11,7 +11,7 @@ color: #333 } -.ace-dawn .ace_print_margin { +.ace-dawn .ace_print-margin { width: 1px; background: #e8e8e8 } @@ -51,15 +51,15 @@ border: 1px solid rgba(75, 75, 126, 0.50) } -.ace-dawn .ace_marker-layer .ace_active_line { +.ace-dawn .ace_marker-layer .ace_active-line { background: rgba(36, 99, 180, 0.12) } -.ace-dawn .ace_gutter_active_line { +.ace-dawn .ace_gutter-active-line { background-color : #dcdcdc } -.ace-dawn .ace_marker-layer .ace_selected_word { +.ace-dawn .ace_marker-layer .ace_selected-word { border: 1px solid rgba(39, 95, 255, 0.30) } diff --git a/lib/ace/theme/dreamweaver.css b/lib/ace/theme/dreamweaver.css index de6056fc..09f9d1a9 100644 --- a/lib/ace/theme/dreamweaver.css +++ b/lib/ace/theme/dreamweaver.css @@ -11,7 +11,7 @@ color: #333; } -.ace-dreamweaver .ace_print_margin { +.ace-dreamweaver .ace_print-margin { width: 1px; background: #e8e8e8; } @@ -107,7 +107,7 @@ color: #06F } -.ace-dreamweaver .ace_line .ace_xml_pe { +.ace-dreamweaver .ace_line .ace_xml-pe { color: rgb(104, 104, 91); } @@ -141,11 +141,11 @@ border: 1px solid rgb(192, 192, 192); } -.ace-dreamweaver .ace_marker-layer .ace_active_line { +.ace-dreamweaver .ace_marker-layer .ace_active-line { background: rgba(0, 0, 0, 0.07); } -.ace-dreamweaver .ace_marker-layer .ace_selected_word { +.ace-dreamweaver .ace_marker-layer .ace_selected-word { background: rgb(250, 250, 255); border: 1px solid rgb(200, 200, 250); } diff --git a/lib/ace/theme/eclipse.css b/lib/ace/theme/eclipse.css index 27b9a001..cf222181 100644 --- a/lib/ace/theme/eclipse.css +++ b/lib/ace/theme/eclipse.css @@ -12,7 +12,7 @@ color: rgb(136, 136, 136); } -.ace-eclipse .ace_print_margin { +.ace-eclipse .ace_print-margin { width: 1px; background: #ebebeb; } @@ -77,7 +77,7 @@ color: rgb(127, 0, 127); } -.ace-eclipse .ace_line .ace_xml_pe { +.ace-eclipse .ace_line .ace_xml-pe { color: rgb(104, 104, 91); } @@ -101,11 +101,11 @@ background: rgb(255, 255, 0); } -.ace-eclipse .ace_marker-layer .ace_active_line { +.ace-eclipse .ace_marker-layer .ace_active-line { background: rgb(232, 242, 254); } -.ace-eclipse .ace_marker-layer .ace_selected_word { +.ace-eclipse .ace_marker-layer .ace_selected-word { border: 1px solid rgb(181, 213, 255); } diff --git a/lib/ace/theme/github.css b/lib/ace/theme/github.css index 6233b427..e9755423 100644 --- a/lib/ace/theme/github.css +++ b/lib/ace/theme/github.css @@ -88,7 +88,7 @@ border-bottom: 1px solid black; } -.ace-github .ace_marker-layer .ace_active_line { +.ace-github .ace_marker-layer .ace_active-line { background: rgb(255, 255, 204); } .ace-github .ace_marker-layer .ace_selection { @@ -117,17 +117,17 @@ border: 1px solid rgb(192, 192, 192); } -.ace-github .ace_gutter_active_line { +.ace-github .ace_gutter-active-line { background-color : rgba(0, 0, 0, 0.07); } -.ace-github .ace_marker-layer .ace_selected_word { +.ace-github .ace_marker-layer .ace_selected-word { background: rgb(250, 250, 255); border: 1px solid rgb(200, 200, 250); } -.ace-github .ace_print_margin { +.ace-github .ace_print-margin { width: 1px; background: #e8e8e8; } diff --git a/lib/ace/theme/idle_fingers.css b/lib/ace/theme/idle_fingers.css index b83a700b..0cd4849f 100644 --- a/lib/ace/theme/idle_fingers.css +++ b/lib/ace/theme/idle_fingers.css @@ -11,7 +11,7 @@ color: #fff } -.ace-idle-fingers .ace_print_margin { +.ace-idle-fingers .ace_print-margin { width: 1px; background: #3b3b3b } @@ -51,15 +51,15 @@ border: 1px solid #404040 } -.ace-idle-fingers .ace_marker-layer .ace_active_line { +.ace-idle-fingers .ace_marker-layer .ace_active-line { background: #353637 } -.ace-idle-fingers .ace_gutter_active_line { +.ace-idle-fingers .ace_gutter-active-line { background-color: #353637 } -.ace-idle-fingers .ace_marker-layer .ace_selected_word { +.ace-idle-fingers .ace_marker-layer .ace_selected-word { border: 1px solid rgba(90, 100, 126, 0.88) } diff --git a/lib/ace/theme/kr_theme.css b/lib/ace/theme/kr_theme.css index c4883af1..b4d5a4b4 100644 --- a/lib/ace/theme/kr_theme.css +++ b/lib/ace/theme/kr_theme.css @@ -11,7 +11,7 @@ color: #FCFFE0 } -.ace-kr-theme .ace_print_margin { +.ace-kr-theme .ace_print-margin { width: 1px; background: #1c1917 } @@ -51,15 +51,15 @@ border: 1px solid rgba(255, 177, 111, 0.32) } -.ace-kr-theme .ace_marker-layer .ace_active_line { +.ace-kr-theme .ace_marker-layer .ace_active-line { background: #38403D } -.ace-kr-theme .ace_gutter_active_line { +.ace-kr-theme .ace_gutter-active-line { background-color : #38403D } -.ace-kr-theme .ace_marker-layer .ace_selected_word { +.ace-kr-theme .ace_marker-layer .ace_selected-word { border: 1px solid rgba(170, 0, 255, 0.45) } diff --git a/lib/ace/theme/merbivore.css b/lib/ace/theme/merbivore.css index 75105771..2c0504a9 100644 --- a/lib/ace/theme/merbivore.css +++ b/lib/ace/theme/merbivore.css @@ -11,7 +11,7 @@ color: #E6E1DC } -.ace-merbivore .ace_print_margin { +.ace-merbivore .ace_print-margin { width: 1px; background: #555651 } @@ -51,15 +51,15 @@ border: 1px solid #404040 } -.ace-merbivore .ace_marker-layer .ace_active_line { +.ace-merbivore .ace_marker-layer .ace_active-line { background: #333435 } -.ace-merbivore .ace_gutter_active_line { +.ace-merbivore .ace_gutter-active-line { background-color: #333435 } -.ace-merbivore .ace_marker-layer .ace_selected_word { +.ace-merbivore .ace_marker-layer .ace_selected-word { border: 1px solid #454545 } diff --git a/lib/ace/theme/merbivore_soft.css b/lib/ace/theme/merbivore_soft.css index aa5d02b7..c7e0cc1f 100644 --- a/lib/ace/theme/merbivore_soft.css +++ b/lib/ace/theme/merbivore_soft.css @@ -11,7 +11,7 @@ color: #E6E1DC } -.ace-merbivore-soft .ace_print_margin { +.ace-merbivore-soft .ace_print-margin { width: 1px; background: #262424 } @@ -51,15 +51,15 @@ border: 1px solid #404040 } -.ace-merbivore-soft .ace_marker-layer .ace_active_line { +.ace-merbivore-soft .ace_marker-layer .ace_active-line { background: #333435 } -.ace-merbivore-soft .ace_gutter_active_line { +.ace-merbivore-soft .ace_gutter-active-line { background-color: #333435 } -.ace-merbivore-soft .ace_marker-layer .ace_selected_word { +.ace-merbivore-soft .ace_marker-layer .ace_selected-word { border: 1px solid #494949 } diff --git a/lib/ace/theme/mono_industrial.css b/lib/ace/theme/mono_industrial.css index 3af8d934..43a11ae7 100644 --- a/lib/ace/theme/mono_industrial.css +++ b/lib/ace/theme/mono_industrial.css @@ -11,7 +11,7 @@ color: #C5C9C9 } -.ace-mono-industrial .ace_print_margin { +.ace-mono-industrial .ace_print-margin { width: 1px; background: #555651 } @@ -51,15 +51,15 @@ border: 1px solid rgba(102, 108, 104, 0.50) } -.ace-mono-industrial .ace_marker-layer .ace_active_line { +.ace-mono-industrial .ace_marker-layer .ace_active-line { background: rgba(12, 13, 12, 0.25) } -.ace-mono-industrial .ace_gutter_active_line { +.ace-mono-industrial .ace_gutter-active-line { background-color: rgba(12, 13, 12, 0.25) } -.ace-mono-industrial .ace_marker-layer .ace_selected_word { +.ace-mono-industrial .ace_marker-layer .ace_selected-word { border: 1px solid rgba(145, 153, 148, 0.40) } diff --git a/lib/ace/theme/monokai.css b/lib/ace/theme/monokai.css index 77afbd61..9ffd189b 100644 --- a/lib/ace/theme/monokai.css +++ b/lib/ace/theme/monokai.css @@ -11,7 +11,7 @@ color: #f1f1f1 } -.ace-monokai .ace_print_margin { +.ace-monokai .ace_print-margin { width: 1px; background: #555651 } @@ -51,15 +51,15 @@ border: 1px solid #49483E } -.ace-monokai .ace_marker-layer .ace_active_line { +.ace-monokai .ace_marker-layer .ace_active-line { background: #202020 } -.ace-monokai .ace_gutter_active_line { +.ace-monokai .ace_gutter-active-line { background-color: #272727 } -.ace-monokai .ace_marker-layer .ace_selected_word { +.ace-monokai .ace_marker-layer .ace_selected-word { border: 1px solid #49483E } diff --git a/lib/ace/theme/pastel_on_dark.css b/lib/ace/theme/pastel_on_dark.css index 2d59a28e..57e83356 100644 --- a/lib/ace/theme/pastel_on_dark.css +++ b/lib/ace/theme/pastel_on_dark.css @@ -11,7 +11,7 @@ color: #8F938F } -.ace-pastel-on-dark .ace_print_margin { +.ace-pastel-on-dark .ace_print-margin { width: 1px; background: #353030 } @@ -51,15 +51,15 @@ border: 1px solid rgba(255, 255, 255, 0.25) } -.ace-pastel-on-dark .ace_marker-layer .ace_active_line { +.ace-pastel-on-dark .ace_marker-layer .ace_active-line { background: rgba(255, 255, 255, 0.031) } -.ace-pastel-on-dark .ace_gutter_active_line { +.ace-pastel-on-dark .ace_gutter-active-line { background-color: rgba(255, 255, 255, 0.031) } -.ace-pastel-on-dark .ace_marker-layer .ace_selected_word { +.ace-pastel-on-dark .ace_marker-layer .ace_selected-word { border: 1px solid rgba(221, 240, 255, 0.20) } @@ -136,7 +136,7 @@ color: #C1C144 } -.ace-pastel-on-dark .ace_xml_pe { +.ace-pastel-on-dark .ace_xml-pe { color: #494949 } diff --git a/lib/ace/theme/solarized_dark.css b/lib/ace/theme/solarized_dark.css index 49c386ef..8f802a9f 100644 --- a/lib/ace/theme/solarized_dark.css +++ b/lib/ace/theme/solarized_dark.css @@ -11,7 +11,7 @@ color: #d0edf7 } -.ace-solarized-dark .ace_print_margin { +.ace-solarized-dark .ace_print-margin { width: 1px; background: #33555E } @@ -35,7 +35,7 @@ border-bottom: 1px solid #D30102 } -.ace-solarized-dark .ace_marker-layer .ace_active_line, +.ace-solarized-dark .ace_marker-layer .ace_active-line, .ace-solarized-dark .ace_marker-layer .ace_selection { background: rgba(255, 255, 255, 0.1) } @@ -54,11 +54,11 @@ border: 1px solid rgba(147, 161, 161, 0.50) } -.ace-solarized-dark .ace_gutter_active_line { +.ace-solarized-dark .ace_gutter-active-line { background-color: #0d3440 } -.ace-solarized-dark .ace_marker-layer .ace_selected_word { +.ace-solarized-dark .ace_marker-layer .ace_selected-word { border: 1px solid #073642 } diff --git a/lib/ace/theme/solarized_light.css b/lib/ace/theme/solarized_light.css index e56c0430..062c5e63 100644 --- a/lib/ace/theme/solarized_light.css +++ b/lib/ace/theme/solarized_light.css @@ -11,7 +11,7 @@ color: #333 } -.ace-solarized-light .ace_print_margin { +.ace-solarized-light .ace_print-margin { width: 1px; background: #e8e8e8 } @@ -51,15 +51,15 @@ border: 1px solid rgba(147, 161, 161, 0.50) } -.ace-solarized-light .ace_marker-layer .ace_active_line { +.ace-solarized-light .ace_marker-layer .ace_active-line { background: #EEE8D5 } -.ace-solarized-light .ace_gutter_active_line { +.ace-solarized-light .ace_gutter-active-line { background-color : #dcdcdc } -.ace-solarized-light .ace_marker-layer .ace_selected_word { +.ace-solarized-light .ace_marker-layer .ace_selected-word { border: 1px solid #073642 } diff --git a/lib/ace/theme/textmate.css b/lib/ace/theme/textmate.css index c328b3aa..e46c4cfc 100644 --- a/lib/ace/theme/textmate.css +++ b/lib/ace/theme/textmate.css @@ -11,7 +11,7 @@ color: #333; } -.ace-tm .ace_print_margin { +.ace-tm .ace_print-margin { width: 1px; background: #e8e8e8; } @@ -104,7 +104,7 @@ color: rgb(49, 132, 149); } -.ace-tm .ace_line .ace_xml_pe { +.ace-tm .ace_line .ace_xml-pe { color: rgb(104, 104, 91); } @@ -149,15 +149,15 @@ border: 1px solid rgb(192, 192, 192); } -.ace-tm .ace_marker-layer .ace_active_line { +.ace-tm .ace_marker-layer .ace_active-line { background: rgba(0, 0, 0, 0.07); } -.ace-tm .ace_gutter_active_line { +.ace-tm .ace_gutter-active-line { background-color : #dcdcdc; } -.ace-tm .ace_marker-layer .ace_selected_word { +.ace-tm .ace_marker-layer .ace_selected-word { background: rgb(250, 250, 255); border: 1px solid rgb(200, 200, 250); } diff --git a/lib/ace/theme/tomorrow.css b/lib/ace/theme/tomorrow.css index c4511eeb..0d4b5c1e 100644 --- a/lib/ace/theme/tomorrow.css +++ b/lib/ace/theme/tomorrow.css @@ -11,7 +11,7 @@ color: #4D4D4C } -.ace-tomorrow .ace_print_margin { +.ace-tomorrow .ace_print-margin { width: 1px; background: #f6f6f6 } @@ -51,15 +51,15 @@ border: 1px solid #D1D1D1 } -.ace-tomorrow .ace_marker-layer .ace_active_line { +.ace-tomorrow .ace_marker-layer .ace_active-line { background: #EFEFEF } -.ace-tomorrow .ace_gutter_active_line { +.ace-tomorrow .ace_gutter-active-line { background-color : #dcdcdc } -.ace-tomorrow .ace_marker-layer .ace_selected_word { +.ace-tomorrow .ace_marker-layer .ace_selected-word { border: 1px solid #D6D6D6 } diff --git a/lib/ace/theme/tomorrow_night.css b/lib/ace/theme/tomorrow_night.css index ec96fdcc..a0f907cd 100644 --- a/lib/ace/theme/tomorrow_night.css +++ b/lib/ace/theme/tomorrow_night.css @@ -11,7 +11,7 @@ color: #C5C8C6 } -.ace-tomorrow-night .ace_print_margin { +.ace-tomorrow-night .ace_print-margin { width: 1px; background: #25282c } @@ -51,15 +51,15 @@ border: 1px solid #4B4E55 } -.ace-tomorrow-night .ace_marker-layer .ace_active_line { +.ace-tomorrow-night .ace_marker-layer .ace_active-line { background: #282A2E } -.ace-tomorrow-night .ace_gutter_active_line { +.ace-tomorrow-night .ace_gutter-active-line { background-color: #282A2E } -.ace-tomorrow-night .ace_marker-layer .ace_selected_word { +.ace-tomorrow-night .ace_marker-layer .ace_selected-word { border: 1px solid #373B41 } diff --git a/lib/ace/theme/tomorrow_night_blue.css b/lib/ace/theme/tomorrow_night_blue.css index bd77e5af..4272045a 100644 --- a/lib/ace/theme/tomorrow_night_blue.css +++ b/lib/ace/theme/tomorrow_night_blue.css @@ -11,7 +11,7 @@ color: #7388b5 } -.ace-tomorrow-night-blue .ace_print_margin { +.ace-tomorrow-night-blue .ace_print-margin { width: 1px; background: #00204b } @@ -52,15 +52,15 @@ border: 1px solid #404F7D } -.ace-tomorrow-night-blue .ace_marker-layer .ace_active_line { +.ace-tomorrow-night-blue .ace_marker-layer .ace_active-line { background: #00346E } -.ace-tomorrow-night-blue .ace_gutter_active_line { +.ace-tomorrow-night-blue .ace_gutter-active-line { background-color: #022040 } -.ace-tomorrow-night-blue .ace_marker-layer .ace_selected_word { +.ace-tomorrow-night-blue .ace_marker-layer .ace_selected-word { border: 1px solid #003F8E } diff --git a/lib/ace/theme/tomorrow_night_bright.css b/lib/ace/theme/tomorrow_night_bright.css index 18860611..0b8c88db 100644 --- a/lib/ace/theme/tomorrow_night_bright.css +++ b/lib/ace/theme/tomorrow_night_bright.css @@ -11,7 +11,7 @@ color: #DEDEDE } -.ace-tomorrow-night-bright .ace_print_margin { +.ace-tomorrow-night-bright .ace_print-margin { width: 1px; background: #1a1a1a } @@ -51,15 +51,15 @@ border: 1px solid #343434 } -.ace-tomorrow-night-bright .ace_marker-layer .ace_active_line { +.ace-tomorrow-night-bright .ace_marker-layer .ace_active-line { background: #2A2A2A } -.ace-tomorrow-night-bright .ace_gutter_active_line { +.ace-tomorrow-night-bright .ace_gutter-active-line { background-color: #2A2A2A } -.ace-tomorrow-night-bright .ace_marker-layer .ace_selected_word { +.ace-tomorrow-night-bright .ace_marker-layer .ace_selected-word { border: 1px solid #424242 } diff --git a/lib/ace/theme/tomorrow_night_eighties.css b/lib/ace/theme/tomorrow_night_eighties.css index dfc38b64..ef9ba4fc 100644 --- a/lib/ace/theme/tomorrow_night_eighties.css +++ b/lib/ace/theme/tomorrow_night_eighties.css @@ -11,7 +11,7 @@ color: #CCC } -.ace-tomorrow-night-eighties .ace_print_margin { +.ace-tomorrow-night-eighties .ace_print-margin { width: 1px; background: #272727 } @@ -52,15 +52,15 @@ border: 1px solid #6A6A6A } -.ace-tomorrow-night-eighties .ace_marker-layer .ace_active_line { +.ace-tomorrow-night-eighties .ace_marker-layer .ace_active-line { background: #393939 } -.ace-tomorrow-night-eighties .ace_gutter_active_line { +.ace-tomorrow-night-eighties .ace_gutter-active-line { background-color: #393939 } -.ace-tomorrow-night-eighties .ace_marker-layer .ace_selected_word { +.ace-tomorrow-night-eighties .ace_marker-layer .ace_selected-word { border: 1px solid #515151 } diff --git a/lib/ace/theme/twilight.css b/lib/ace/theme/twilight.css index 0d943563..6f452147 100644 --- a/lib/ace/theme/twilight.css +++ b/lib/ace/theme/twilight.css @@ -11,7 +11,7 @@ color: #E2E2E2 } -.ace-twilight .ace_print_margin { +.ace-twilight .ace_print-margin { width: 1px; background: #232323 } @@ -51,15 +51,15 @@ border: 1px solid rgba(255, 255, 255, 0.25) } -.ace-twilight .ace_marker-layer .ace_active_line { +.ace-twilight .ace_marker-layer .ace_active-line { background: rgba(255, 255, 255, 0.031) } -.ace-twilight .ace_gutter_active_line { +.ace-twilight .ace_gutter-active-line { background-color: rgba(255, 255, 255, 0.031) } -.ace-twilight .ace_marker-layer .ace_selected_word { +.ace-twilight .ace_marker-layer .ace_selected-word { border: 1px solid rgba(221, 240, 255, 0.20) } @@ -133,7 +133,7 @@ color: #7587A6 } -.ace-twilight .ace_xml_pe { +.ace-twilight .ace_xml-pe { color: #494949 } diff --git a/lib/ace/theme/vibrant_ink.css b/lib/ace/theme/vibrant_ink.css index 10481153..14d5b4f0 100644 --- a/lib/ace/theme/vibrant_ink.css +++ b/lib/ace/theme/vibrant_ink.css @@ -11,7 +11,7 @@ color: #BEBEBE } -.ace-vibrant-ink .ace_print_margin { +.ace-vibrant-ink .ace_print-margin { width: 1px; background: #1a1a1a } @@ -51,15 +51,15 @@ border: 1px solid #404040 } -.ace-vibrant-ink .ace_marker-layer .ace_active_line { +.ace-vibrant-ink .ace_marker-layer .ace_active-line { background: #333333 } -.ace-vibrant-ink .ace_gutter_active_line { +.ace-vibrant-ink .ace_gutter-active-line { background-color: #333333 } -.ace-vibrant-ink .ace_marker-layer .ace_selected_word { +.ace-vibrant-ink .ace_marker-layer .ace_selected-word { border: 1px solid #6699CC } diff --git a/lib/ace/theme/xcode.css b/lib/ace/theme/xcode.css index 4ff0646a..00916e18 100644 --- a/lib/ace/theme/xcode.css +++ b/lib/ace/theme/xcode.css @@ -12,7 +12,7 @@ color: #333 } -.ace-xcode .ace_print_margin { +.ace-xcode .ace_print-margin { width: 1px; background: #e8e8e8 } @@ -52,15 +52,15 @@ border: 1px solid #BFBFBF } -.ace-xcode .ace_marker-layer .ace_active_line { +.ace-xcode .ace_marker-layer .ace_active-line { background: rgba(0, 0, 0, 0.071) } -.ace-xcode .ace_gutter_active_line { +.ace-xcode .ace_gutter-active-line { background-color: rgba(0, 0, 0, 0.071) } -.ace-xcode .ace_marker-layer .ace_selected_word { +.ace-xcode .ace_marker-layer .ace_selected-word { border: 1px solid #B5D5FF } diff --git a/lib/ace/virtual_renderer.js b/lib/ace/virtual_renderer.js index 5ec1ffc5..2385a568 100644 --- a/lib/ace/virtual_renderer.js +++ b/lib/ace/virtual_renderer.js @@ -484,7 +484,7 @@ var VirtualRenderer = function(container, theme) { if (!this.$gutterLineHighlight) { this.$gutterLineHighlight = dom.createElement("div"); - this.$gutterLineHighlight.className = "ace_gutter_active_line"; + this.$gutterLineHighlight.className = "ace_gutter-active-line"; this.$gutter.appendChild(this.$gutterLineHighlight); return; } @@ -512,9 +512,9 @@ var VirtualRenderer = function(container, theme) { if (!this.$printMarginEl) { containerEl = dom.createElement("div"); - containerEl.className = "ace_print_margin_layer"; + containerEl.className = "ace_print-margin-layer"; this.$printMarginEl = dom.createElement("div"); - this.$printMarginEl.className = "ace_print_margin"; + this.$printMarginEl.className = "ace_print-margin"; containerEl.appendChild(this.$printMarginEl); this.content.insertBefore(containerEl, this.$textLayer.element); } diff --git a/tool/Theme.tmpl.css b/tool/Theme.tmpl.css index 0610485f..757819ab 100644 --- a/tool/Theme.tmpl.css +++ b/tool/Theme.tmpl.css @@ -13,7 +13,7 @@ color: #333; } -.%cssClass% .ace_print_margin { +.%cssClass% .ace_print-margin { width: 1px; background: %printMargin%; } @@ -53,15 +53,15 @@ border: 1px solid %bracket%; } -.%cssClass% .ace_marker-layer .ace_active_line { +.%cssClass% .ace_marker-layer .ace_active-line { background: %active_line%; } -.%cssClass% .ace_gutter_active_line { +.%cssClass% .ace_gutter-active-line { background-color: %active_line%; } -.%cssClass% .ace_marker-layer .ace_selected_word { +.%cssClass% .ace_marker-layer .ace_selected-word { %selected_word_highlight% } diff --git a/tool/tmtheme.js b/tool/tmtheme.js index 9480c0a2..39570e05 100755 --- a/tool/tmtheme.js +++ b/tool/tmtheme.js @@ -60,7 +60,7 @@ var supportedScopes = { "variable.parameter": "variable.parameter", "meta": "meta", - "meta.tag.sgml.doctype": "xml_pe", + "meta.tag.sgml.doctype": "xml-pe", "meta.tag": "meta.tag", "meta.selector": "meta.selector", From 4d91fac145637c9e92c14d7fb9273a698a47e4dc Mon Sep 17 00:00:00 2001 From: ukyo Date: Mon, 1 Oct 2012 15:58:18 +0900 Subject: [PATCH 14/32] fix regexp --- lib/ace/mode/coffee_highlight_rules.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/ace/mode/coffee_highlight_rules.js b/lib/ace/mode/coffee_highlight_rules.js index 2da2c1d9..98253f49 100644 --- a/lib/ace/mode/coffee_highlight_rules.js +++ b/lib/ace/mode/coffee_highlight_rules.js @@ -92,7 +92,7 @@ define(function(require, exports, module) { var functionRe = { "({args})->": { token: ["paren.lparen", "text", "paren.lparen", "text", "variable.parameter", "text", "paren.rparen", "text", "paren.rparen", "text", "storage.type"], - regex: "(\\()(\\s*)(\\{)(\\s*)(" + [headRe, headRe + "[$\\w\\s,\\x7f-\\uffff]*"].join("|") + ")(\\s*)(\\})(\\s*)(\\))(\\s*)([\\-=]>)" + regex: "(\\()(\\s*)(\\{)(\\s*)(" + headRe + "[$\\w\\s,\\x7f-\\uffff]*" + ")(\\s*)(\\})(\\s*)(\\))(\\s*)([\\-=]>)" }, "({})->": { token: ["paren.lparen", "text", "paren.lparen", "text", "paren.rparen", "text", "paren.rparen", "text", "storage.type"], From 936d0773896774dbea7ae9e0c27873f459214a5b Mon Sep 17 00:00:00 2001 From: DanyaPostfactum Date: Mon, 1 Oct 2012 17:02:03 +1000 Subject: [PATCH 15/32] Rename ace_sb to ace_scrollbar --- lib/ace/css/editor.css | 4 ++-- lib/ace/scrollbar.js | 3 ++- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/lib/ace/css/editor.css b/lib/ace/css/editor.css index bd880d10..e03fe191 100644 --- a/lib/ace/css/editor.css +++ b/lib/ace/css/editor.css @@ -62,14 +62,14 @@ background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyRpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoTWFjaW50b3NoKSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDpGRTk5MTVGREIxNDkxMUUxOTc5Q0FFREQyMTNGMjBFQyIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDpGRTk5MTVGRUIxNDkxMUUxOTc5Q0FFREQyMTNGMjBFQyI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOkZFOTkxNUZCQjE0OTExRTE5NzlDQUVERDIxM0YyMEVDIiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOkZFOTkxNUZDQjE0OTExRTE5NzlDQUVERDIxM0YyMEVDIi8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+SIDkjAAAAJ1JREFUeNpi/P//PwMlgImBQkB7A6qrq/+DMC55FkIGKCoq4pVnpFkgTp069f/+/fv/r1u37r+tre1/kg0A+ptn9uzZYLaRkRHpLvjw4cNXWVlZhufPnzOcO3eOdAO0tbVPAjHDmzdvGA4fPsxIsgGSkpJmv379Ynj37h2DjIyMCMkG3LhxQ/T27dsMampqDHZ2dq/pH41DxwCAAAMAFdc68dUsFZgAAAAASUVORK5CYII="); } -.ace_editor .ace_sb { +.ace_editor .ace_scrollbar { position: absolute; overflow-x: hidden; overflow-y: scroll; right: 0; } -.ace_editor .ace_sb div { +.ace_editor .ace_scrollbar-inner { position: absolute; width: 1px; left: 0; diff --git a/lib/ace/scrollbar.js b/lib/ace/scrollbar.js index edb37ea9..ada4d023 100644 --- a/lib/ace/scrollbar.js +++ b/lib/ace/scrollbar.js @@ -52,9 +52,10 @@ var EventEmitter = require("./lib/event_emitter").EventEmitter; **/ var ScrollBar = function(parent) { this.element = dom.createElement("div"); - this.element.className = "ace_sb"; + this.element.className = "ace_scrollbar"; this.inner = dom.createElement("div"); + this.inner.className = "ace_scrollbar-inner"; this.element.appendChild(this.inner); parent.appendChild(this.element); From d8e60f9f4bb528d9af6f43ea8f07c765f5e9538e Mon Sep 17 00:00:00 2001 From: DanyaPostfactum Date: Mon, 1 Oct 2012 17:06:40 +1000 Subject: [PATCH 16/32] Vendor-prefixed css-properties should go before standart. --- lib/ace/css/editor.css | 14 +++++++------- lib/ace/keyboard/emacs.js | 1 + 2 files changed, 8 insertions(+), 7 deletions(-) diff --git a/lib/ace/css/editor.css b/lib/ace/css/editor.css index e03fe191..341c3c87 100644 --- a/lib/ace/css/editor.css +++ b/lib/ace/css/editor.css @@ -12,9 +12,9 @@ .ace_content { position: absolute; - box-sizing: border-box; -moz-box-sizing: border-box; -webkit-box-sizing: border-box; + box-sizing: border-box; cursor: text; } @@ -97,8 +97,8 @@ height: 1em; opacity: 0; background: transparent; - appearance: none; -moz-appearance: none; + appearance: none; border: none; resize: none; outline: none; @@ -121,9 +121,9 @@ white-space: nowrap; height: 100%; width: 100%; - box-sizing: border-box; -moz-box-sizing: border-box; -webkit-box-sizing: border-box; + box-sizing: border-box; /* setting pointer-events: auto; on node under the mouse, which changes during scroll, will break mouse wheel scrolling in Safari */ pointer-events: none; @@ -190,15 +190,15 @@ .ace_marker-layer .ace_selected-word { position: absolute; z-index: 4; - box-sizing: border-box; -moz-box-sizing: border-box; -webkit-box-sizing: border-box; + box-sizing: border-box; } .ace_line .ace_fold { - box-sizing: border-box; -moz-box-sizing: border-box; -webkit-box-sizing: border-box; + box-sizing: border-box; display: inline-block; height: 11px; @@ -245,9 +245,9 @@ padding: 4px; position: absolute; z-index: 300; - box-sizing: border-box; -moz-box-sizing: border-box; -webkit-box-sizing: border-box; + box-sizing: border-box; cursor: default; } @@ -256,9 +256,9 @@ } .ace_fold-widget { - box-sizing: border-box; -moz-box-sizing: border-box; -webkit-box-sizing: border-box; + box-sizing: border-box; margin: 0 -12px 0 1px; display: inline-block; diff --git a/lib/ace/keyboard/emacs.js b/lib/ace/keyboard/emacs.js index 4c6173e9..a1248759 100644 --- a/lib/ace/keyboard/emacs.js +++ b/lib/ace/keyboard/emacs.js @@ -57,6 +57,7 @@ exports.handler.attach = function(editor) { .emacs-mode .ace_cursor{\ border: 2px rgba(50,250,50,0.8) solid!important;\ -moz-box-sizing: border-box!important;\ + -webkit-box-sizing: border-box!important;\ box-sizing: border-box!important;\ background-color: rgba(0,250,0,0.9);\ opacity: 0.5;\ From 911e0a8eac37d2fedd6afea2e5c3b7c30d3aba0a Mon Sep 17 00:00:00 2001 From: DanyaPostfactum Date: Mon, 1 Oct 2012 17:13:55 +1000 Subject: [PATCH 17/32] Simplify some of selectors in editor.css --- lib/ace/css/editor.css | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/lib/ace/css/editor.css b/lib/ace/css/editor.css index 341c3c87..87f68158 100644 --- a/lib/ace/css/editor.css +++ b/lib/ace/css/editor.css @@ -62,20 +62,20 @@ background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyRpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoTWFjaW50b3NoKSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDpGRTk5MTVGREIxNDkxMUUxOTc5Q0FFREQyMTNGMjBFQyIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDpGRTk5MTVGRUIxNDkxMUUxOTc5Q0FFREQyMTNGMjBFQyI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOkZFOTkxNUZCQjE0OTExRTE5NzlDQUVERDIxM0YyMEVDIiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOkZFOTkxNUZDQjE0OTExRTE5NzlDQUVERDIxM0YyMEVDIi8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+SIDkjAAAAJ1JREFUeNpi/P//PwMlgImBQkB7A6qrq/+DMC55FkIGKCoq4pVnpFkgTp069f/+/fv/r1u37r+tre1/kg0A+ptn9uzZYLaRkRHpLvjw4cNXWVlZhufPnzOcO3eOdAO0tbVPAjHDmzdvGA4fPsxIsgGSkpJmv379Ynj37h2DjIyMCMkG3LhxQ/T27dsMampqDHZ2dq/pH41DxwCAAAMAFdc68dUsFZgAAAAASUVORK5CYII="); } -.ace_editor .ace_scrollbar { +.ace_scrollbar { position: absolute; overflow-x: hidden; overflow-y: scroll; right: 0; } -.ace_editor .ace_scrollbar-inner { +.ace_scrollbar-inner { position: absolute; width: 1px; left: 0; } -.ace_editor .ace_print-margin-layer { +.ace_print-margin-layer { z-index: 0; position: absolute; overflow: hidden; @@ -85,7 +85,7 @@ width: 100%; } -.ace_editor .ace_print-margin { +.ace_print-margin { position: absolute; height: 100%; } @@ -129,7 +129,7 @@ pointer-events: none; } -.ace_gutter .ace_layer { +.ace_gutter-layer { position: relative; width: auto; text-align: right; @@ -232,7 +232,7 @@ background-position: center center, top left; } -.ace_dragging .ace_content { +.ace_editor.ace_dragging .ace_content { cursor: move; } From 6576190b535aee3dfa7e0cfeaef935e70c44b550 Mon Sep 17 00:00:00 2001 From: DanyaPostfactum Date: Mon, 1 Oct 2012 17:15:28 +1000 Subject: [PATCH 18/32] Add forgotten ace_layer class to ace_print-margin-layer --- lib/ace/css/editor.css | 10 ---------- lib/ace/virtual_renderer.js | 2 +- 2 files changed, 1 insertion(+), 11 deletions(-) diff --git a/lib/ace/css/editor.css b/lib/ace/css/editor.css index 87f68158..b9eb5946 100644 --- a/lib/ace/css/editor.css +++ b/lib/ace/css/editor.css @@ -75,16 +75,6 @@ left: 0; } -.ace_print-margin-layer { - z-index: 0; - position: absolute; - overflow: hidden; - margin: 0; - left: 0; - height: 100%; - width: 100%; -} - .ace_print-margin { position: absolute; height: 100%; diff --git a/lib/ace/virtual_renderer.js b/lib/ace/virtual_renderer.js index 2385a568..7fc408ae 100644 --- a/lib/ace/virtual_renderer.js +++ b/lib/ace/virtual_renderer.js @@ -512,7 +512,7 @@ var VirtualRenderer = function(container, theme) { if (!this.$printMarginEl) { containerEl = dom.createElement("div"); - containerEl.className = "ace_print-margin-layer"; + containerEl.className = "ace_layer ace_print-margin-layer"; this.$printMarginEl = dom.createElement("div"); this.$printMarginEl.className = "ace_print-margin"; containerEl.appendChild(this.$printMarginEl); From 489afda3ba324ce6de6b7e5961e1da172646f337 Mon Sep 17 00:00:00 2001 From: DanyaPostfactum Date: Mon, 1 Oct 2012 17:21:35 +1000 Subject: [PATCH 19/32] Fix box-model of the cursor --- lib/ace/css/editor.css | 3 +++ 1 file changed, 3 insertions(+) diff --git a/lib/ace/css/editor.css b/lib/ace/css/editor.css index b9eb5946..749c4f6b 100644 --- a/lib/ace/css/editor.css +++ b/lib/ace/css/editor.css @@ -143,6 +143,9 @@ .ace_cursor { z-index: 4; position: absolute; + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; + box-sizing: border-box; } .ace_cursor.ace_hidden { From 7e81913058ccd5f62e35db09b082521c764a9b74 Mon Sep 17 00:00:00 2001 From: DanyaPostfactum Date: Mon, 1 Oct 2012 17:47:15 +1000 Subject: [PATCH 20/32] rename .horscroll to .ace_scroll-left --- lib/ace/css/editor.css | 2 +- lib/ace/virtual_renderer.js | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/ace/css/editor.css b/lib/ace/css/editor.css index 749c4f6b..5057618f 100644 --- a/lib/ace/css/editor.css +++ b/lib/ace/css/editor.css @@ -33,7 +33,7 @@ right: 0; } -.ace_scroller.horscroll { +.ace_scroller.ace_scroll-left { box-shadow: 17px 0 16px -16px rgba(0, 0, 0, 0.4) inset; } diff --git a/lib/ace/virtual_renderer.js b/lib/ace/virtual_renderer.js index 7fc408ae..026107c1 100644 --- a/lib/ace/virtual_renderer.js +++ b/lib/ace/virtual_renderer.js @@ -686,7 +686,7 @@ var VirtualRenderer = function(container, theme) { this.scrollLeft = scrollLeft; this.session.setScrollLeft(scrollLeft); - this.scroller.className = this.scrollLeft == 0 ? "ace_scroller" : "ace_scroller horscroll"; + this.scroller.className = this.scrollLeft == 0 ? "ace_scroller" : "ace_scroller ace_scroll-left"; } // full From e61d4c21f20c2bd8f0e4aba7fc5e00946ae20b90 Mon Sep 17 00:00:00 2001 From: DanyaPostfactum Date: Mon, 1 Oct 2012 18:09:12 +1000 Subject: [PATCH 21/32] Prefix foldWidget state css-classes --- lib/ace/css/editor.css | 10 +++++----- lib/ace/layer/gutter.js | 4 ++-- lib/ace/theme/ambiance.css | 4 ++-- 3 files changed, 9 insertions(+), 9 deletions(-) diff --git a/lib/ace/css/editor.css b/lib/ace/css/editor.css index 5057618f..5a748eba 100644 --- a/lib/ace/css/editor.css +++ b/lib/ace/css/editor.css @@ -267,11 +267,11 @@ border: 1px solid transparent; } -.ace_fold-widget.end { +.ace_fold-widget.ace_end { background-image: url("data:image/png,%89PNG%0D%0A%1A%0A%00%00%00%0DIHDR%00%00%00%05%00%00%00%05%08%06%00%00%00%8Do%26%E5%00%00%004IDATx%DAm%C7%C1%09%000%08C%D1%8C%ECE%C8E(%8E%EC%02)%1EZJ%F1%C1'%04%07I%E1%E5%EE%CAL%F5%A2%99%99%22%E2%D6%1FU%B5%FE0%D9x%A7%26Wz5%0E%D5%00%00%00%00IEND%AEB%60%82"); } -.ace_fold-widget.closed { +.ace_fold-widget.ace_closed { background-image: url("data:image/png,%89PNG%0D%0A%1A%0A%00%00%00%0DIHDR%00%00%00%03%00%00%00%06%08%06%00%00%00%06%E5%24%0C%00%00%009IDATx%DA5%CA%C1%09%000%08%03%C0%AC*(%3E%04%C1%0D%BA%B1%23%A4Uh%E0%20%81%C0%CC%F8%82%81%AA%A2%AArGfr%88%08%11%11%1C%DD%7D%E0%EE%5B%F6%F6%CB%B8%05Q%2F%E9tai%D9%00%00%00%00IEND%AEB%60%82"); } @@ -296,10 +296,10 @@ .ace_dark .ace_fold-widget { background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHklEQVQIW2P4//8/AzoGEQ7oGCaLLAhWiSwB146BAQCSTPYocqT0AAAAAElFTkSuQmCC"); } -.ace_dark .ace_fold-widget.end { +.ace_dark .ace_fold-widget.ace_end { background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAH0lEQVQIW2P4//8/AxQ7wNjIAjDMgC4AxjCVKBirIAAF0kz2rlhxpAAAAABJRU5ErkJggg=="); } -.ace_dark .ace_fold-widget.closed { +.ace_dark .ace_fold-widget.ace_closed { background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAMAAAAFCAYAAACAcVaiAAAAHElEQVQIW2P4//+/AxAzgDADlOOAznHAKgPWAwARji8UIDTfQQAAAABJRU5ErkJggg=="); } .ace_dark .ace_fold-widget:hover { @@ -314,7 +314,7 @@ -.ace_fold-widget.invalid { +.ace_fold-widget.ace_invalid { background-color: #FFB4B4; border-color: #DE5555; } diff --git a/lib/ace/layer/gutter.js b/lib/ace/layer/gutter.js index be34f3c9..f04c317f 100644 --- a/lib/ace/layer/gutter.js +++ b/lib/ace/layer/gutter.js @@ -129,8 +129,8 @@ var Gutter = function(parentEl) { c = foldWidgets[i] = this.session.getFoldWidget(i); if (c) html.push( - "" ); diff --git a/lib/ace/theme/ambiance.css b/lib/ace/theme/ambiance.css index c7dfa72c..6db015ec 100644 --- a/lib/ace/theme/ambiance.css +++ b/lib/ace/theme/ambiance.css @@ -52,11 +52,11 @@ color: #777; } -.ace-ambiance .ace_gutter-layer .ace_gutter-cell .ace_fold-widget.open:after { +.ace-ambiance .ace_gutter-layer .ace_gutter-cell .ace_fold-widget.ace_open:after { content: '▾' } -.ace-ambiance .ace_gutter-layer .ace_gutter-cell .ace_fold-widget.closed:after { +.ace-ambiance .ace_gutter-layer .ace_gutter-cell .ace_fold-widget.ace_closed:after { content: '‣' } From 0490b34fe268deb443087f4d9a3b9b845bfe6bd7 Mon Sep 17 00:00:00 2001 From: DanyaPostfactum Date: Mon, 1 Oct 2012 18:13:59 +1000 Subject: [PATCH 22/32] Rename multiselect to ace_multiselect --- lib/ace/css/editor.css | 2 +- lib/ace/multi_select.js | 4 ++-- lib/ace/theme/clouds.css | 2 +- lib/ace/theme/clouds_midnight.css | 2 +- lib/ace/theme/cobalt.css | 2 +- lib/ace/theme/dawn.css | 2 +- lib/ace/theme/github.css | 2 +- lib/ace/theme/idle_fingers.css | 2 +- lib/ace/theme/kr_theme.css | 2 +- lib/ace/theme/merbivore.css | 2 +- lib/ace/theme/merbivore_soft.css | 2 +- lib/ace/theme/mono_industrial.css | 2 +- lib/ace/theme/monokai.css | 2 +- lib/ace/theme/pastel_on_dark.css | 2 +- lib/ace/theme/solarized_dark.css | 2 +- lib/ace/theme/solarized_light.css | 2 +- lib/ace/theme/textmate.css | 2 +- lib/ace/theme/tomorrow.css | 2 +- lib/ace/theme/tomorrow_night.css | 2 +- lib/ace/theme/tomorrow_night_blue.css | 2 +- lib/ace/theme/tomorrow_night_bright.css | 2 +- lib/ace/theme/tomorrow_night_eighties.css | 2 +- lib/ace/theme/twilight.css | 2 +- lib/ace/theme/vibrant_ink.css | 2 +- lib/ace/theme/xcode.css | 2 +- tool/Theme.tmpl.css | 2 +- 26 files changed, 27 insertions(+), 27 deletions(-) diff --git a/lib/ace/css/editor.css b/lib/ace/css/editor.css index 5a748eba..081a1b0f 100644 --- a/lib/ace/css/editor.css +++ b/lib/ace/css/editor.css @@ -152,7 +152,7 @@ opacity: 0.2; } -.ace_editor.multiselect .ace_cursor { +.ace_editor.ace_multiselect .ace_cursor { border-left-width: 1px; } diff --git a/lib/ace/multi_select.js b/lib/ace/multi_select.js index 857ffba0..547463ad 100644 --- a/lib/ace/multi_select.js +++ b/lib/ace/multi_select.js @@ -399,7 +399,7 @@ var Editor = require("./editor").Editor; return; this.inMultiSelectMode = true; - this.setStyle("multiselect"); + this.setStyle("ace_multiselect"); this.keyBinding.addKeyboardHandler(commands.keyboardHandler); this.commands.on("exec", this.$onMultiSelectExec); @@ -412,7 +412,7 @@ var Editor = require("./editor").Editor; return; this.inMultiSelectMode = false; - this.unsetStyle("multiselect"); + this.unsetStyle("ace_multiselect"); this.keyBinding.removeKeyboardHandler(commands.keyboardHandler); this.commands.removeEventListener("exec", this.$onMultiSelectExec); diff --git a/lib/ace/theme/clouds.css b/lib/ace/theme/clouds.css index 4167e3ef..6877cfd1 100644 --- a/lib/ace/theme/clouds.css +++ b/lib/ace/theme/clouds.css @@ -37,7 +37,7 @@ background: #BDD5FC } -.ace-clouds.multiselect .ace_selection.start { +.ace-clouds.ace_multiselect .ace_selection.start { box-shadow: 0 0 3px 0px #FFFFFF; border-radius: 2px } diff --git a/lib/ace/theme/clouds_midnight.css b/lib/ace/theme/clouds_midnight.css index c4415713..4e9fa38b 100644 --- a/lib/ace/theme/clouds_midnight.css +++ b/lib/ace/theme/clouds_midnight.css @@ -37,7 +37,7 @@ background: #000000 } -.ace-clouds-midnight.multiselect .ace_selection.start { +.ace-clouds-midnight.ace_multiselect .ace_selection.start { box-shadow: 0 0 3px 0px #191919; border-radius: 2px } diff --git a/lib/ace/theme/cobalt.css b/lib/ace/theme/cobalt.css index 67c49845..8c15197c 100644 --- a/lib/ace/theme/cobalt.css +++ b/lib/ace/theme/cobalt.css @@ -37,7 +37,7 @@ background: rgba(179, 101, 57, 0.75) } -.ace-cobalt.multiselect .ace_selection.start { +.ace-cobalt.ace_multiselect .ace_selection.start { box-shadow: 0 0 3px 0px #002240; border-radius: 2px } diff --git a/lib/ace/theme/dawn.css b/lib/ace/theme/dawn.css index e5692b45..9adf5960 100644 --- a/lib/ace/theme/dawn.css +++ b/lib/ace/theme/dawn.css @@ -37,7 +37,7 @@ background: rgba(39, 95, 255, 0.30) } -.ace-dawn.multiselect .ace_selection.start { +.ace-dawn.ace_multiselect .ace_selection.start { box-shadow: 0 0 3px 0px #F9F9F9; border-radius: 2px } diff --git a/lib/ace/theme/github.css b/lib/ace/theme/github.css index e9755423..3ff665d6 100644 --- a/lib/ace/theme/github.css +++ b/lib/ace/theme/github.css @@ -94,7 +94,7 @@ .ace-github .ace_marker-layer .ace_selection { background: rgb(181, 213, 255); } -.ace-github.multiselect .ace_selection.start { +.ace-github.ace_multiselect .ace_selection.start { box-shadow: 0 0 3px 0px white; border-radius: 2px; } diff --git a/lib/ace/theme/idle_fingers.css b/lib/ace/theme/idle_fingers.css index 0cd4849f..e07d20ad 100644 --- a/lib/ace/theme/idle_fingers.css +++ b/lib/ace/theme/idle_fingers.css @@ -37,7 +37,7 @@ background: rgba(90, 100, 126, 0.88) } -.ace-idle-fingers.multiselect .ace_selection.start { +.ace-idle-fingers.ace_multiselect .ace_selection.start { box-shadow: 0 0 3px 0px #323232; border-radius: 2px } diff --git a/lib/ace/theme/kr_theme.css b/lib/ace/theme/kr_theme.css index b4d5a4b4..37dec825 100644 --- a/lib/ace/theme/kr_theme.css +++ b/lib/ace/theme/kr_theme.css @@ -37,7 +37,7 @@ background: rgba(170, 0, 255, 0.45) } -.ace-kr-theme.multiselect .ace_selection.start { +.ace-kr-theme.ace_multiselect .ace_selection.start { box-shadow: 0 0 3px 0px #0B0A09; border-radius: 2px } diff --git a/lib/ace/theme/merbivore.css b/lib/ace/theme/merbivore.css index 2c0504a9..e5732f78 100644 --- a/lib/ace/theme/merbivore.css +++ b/lib/ace/theme/merbivore.css @@ -37,7 +37,7 @@ background: #454545 } -.ace-merbivore.multiselect .ace_selection.start { +.ace-merbivore.ace_multiselect .ace_selection.start { box-shadow: 0 0 3px 0px #161616; border-radius: 2px } diff --git a/lib/ace/theme/merbivore_soft.css b/lib/ace/theme/merbivore_soft.css index c7e0cc1f..333348fc 100644 --- a/lib/ace/theme/merbivore_soft.css +++ b/lib/ace/theme/merbivore_soft.css @@ -37,7 +37,7 @@ background: #494949 } -.ace-merbivore-soft.multiselect .ace_selection.start { +.ace-merbivore-soft.ace_multiselect .ace_selection.start { box-shadow: 0 0 3px 0px #1C1C1C; border-radius: 2px } diff --git a/lib/ace/theme/mono_industrial.css b/lib/ace/theme/mono_industrial.css index 43a11ae7..9f56cdf8 100644 --- a/lib/ace/theme/mono_industrial.css +++ b/lib/ace/theme/mono_industrial.css @@ -37,7 +37,7 @@ background: rgba(145, 153, 148, 0.40) } -.ace-mono-industrial.multiselect .ace_selection.start { +.ace-mono-industrial.ace_multiselect .ace_selection.start { box-shadow: 0 0 3px 0px #222C28; border-radius: 2px } diff --git a/lib/ace/theme/monokai.css b/lib/ace/theme/monokai.css index 9ffd189b..7f0de488 100644 --- a/lib/ace/theme/monokai.css +++ b/lib/ace/theme/monokai.css @@ -37,7 +37,7 @@ background: #49483E } -.ace-monokai.multiselect .ace_selection.start { +.ace-monokai.ace_multiselect .ace_selection.start { box-shadow: 0 0 3px 0px #272822; border-radius: 2px } diff --git a/lib/ace/theme/pastel_on_dark.css b/lib/ace/theme/pastel_on_dark.css index 57e83356..cbf3f43f 100644 --- a/lib/ace/theme/pastel_on_dark.css +++ b/lib/ace/theme/pastel_on_dark.css @@ -37,7 +37,7 @@ background: rgba(221, 240, 255, 0.20) } -.ace-pastel-on-dark.multiselect .ace_selection.start { +.ace-pastel-on-dark.ace_multiselect .ace_selection.start { box-shadow: 0 0 3px 0px #2C2828; border-radius: 2px } diff --git a/lib/ace/theme/solarized_dark.css b/lib/ace/theme/solarized_dark.css index 8f802a9f..f870db7d 100644 --- a/lib/ace/theme/solarized_dark.css +++ b/lib/ace/theme/solarized_dark.css @@ -40,7 +40,7 @@ background: rgba(255, 255, 255, 0.1) } -.ace-solarized-dark.multiselect .ace_selection.start { +.ace-solarized-dark.ace_multiselect .ace_selection.start { box-shadow: 0 0 3px 0px #002B36; border-radius: 2px } diff --git a/lib/ace/theme/solarized_light.css b/lib/ace/theme/solarized_light.css index 062c5e63..3dd8098d 100644 --- a/lib/ace/theme/solarized_light.css +++ b/lib/ace/theme/solarized_light.css @@ -37,7 +37,7 @@ background: #073642 } -.ace-solarized-light.multiselect .ace_selection.start { +.ace-solarized-light.ace_multiselect .ace_selection.start { box-shadow: 0 0 3px 0px #FDF6E3; border-radius: 2px } diff --git a/lib/ace/theme/textmate.css b/lib/ace/theme/textmate.css index e46c4cfc..eca40750 100644 --- a/lib/ace/theme/textmate.css +++ b/lib/ace/theme/textmate.css @@ -132,7 +132,7 @@ .ace-tm .ace_marker-layer .ace_selection { background: rgb(181, 213, 255); } -.ace-tm.multiselect .ace_selection.start { +.ace-tm.ace_multiselect .ace_selection.start { box-shadow: 0 0 3px 0px white; border-radius: 2px; } diff --git a/lib/ace/theme/tomorrow.css b/lib/ace/theme/tomorrow.css index 0d4b5c1e..fb95693b 100644 --- a/lib/ace/theme/tomorrow.css +++ b/lib/ace/theme/tomorrow.css @@ -37,7 +37,7 @@ background: #D6D6D6 } -.ace-tomorrow.multiselect .ace_selection.start { +.ace-tomorrow.ace_multiselect .ace_selection.start { box-shadow: 0 0 3px 0px #FFFFFF; border-radius: 2px } diff --git a/lib/ace/theme/tomorrow_night.css b/lib/ace/theme/tomorrow_night.css index a0f907cd..f044a623 100644 --- a/lib/ace/theme/tomorrow_night.css +++ b/lib/ace/theme/tomorrow_night.css @@ -37,7 +37,7 @@ background: #373B41 } -.ace-tomorrow-night.multiselect .ace_selection.start { +.ace-tomorrow-night.ace_multiselect .ace_selection.start { box-shadow: 0 0 3px 0px #1D1F21; border-radius: 2px } diff --git a/lib/ace/theme/tomorrow_night_blue.css b/lib/ace/theme/tomorrow_night_blue.css index 4272045a..975646ec 100644 --- a/lib/ace/theme/tomorrow_night_blue.css +++ b/lib/ace/theme/tomorrow_night_blue.css @@ -38,7 +38,7 @@ background: #003F8E } -.ace-tomorrow-night-blue.multiselect .ace_selection.start { +.ace-tomorrow-night-blue.ace_multiselect .ace_selection.start { box-shadow: 0 0 3px 0px #002451; border-radius: 2px } diff --git a/lib/ace/theme/tomorrow_night_bright.css b/lib/ace/theme/tomorrow_night_bright.css index 0b8c88db..56e915f1 100644 --- a/lib/ace/theme/tomorrow_night_bright.css +++ b/lib/ace/theme/tomorrow_night_bright.css @@ -37,7 +37,7 @@ background: #424242 } -.ace-tomorrow-night-bright.multiselect .ace_selection.start { +.ace-tomorrow-night-bright.ace_multiselect .ace_selection.start { box-shadow: 0 0 3px 0px #000000; border-radius: 2px } diff --git a/lib/ace/theme/tomorrow_night_eighties.css b/lib/ace/theme/tomorrow_night_eighties.css index ef9ba4fc..6e040685 100644 --- a/lib/ace/theme/tomorrow_night_eighties.css +++ b/lib/ace/theme/tomorrow_night_eighties.css @@ -38,7 +38,7 @@ background: #515151 } -.ace-tomorrow-night-eighties.multiselect .ace_selection.start { +.ace-tomorrow-night-eighties.ace_multiselect .ace_selection.start { box-shadow: 0 0 3px 0px #2D2D2D; border-radius: 2px } diff --git a/lib/ace/theme/twilight.css b/lib/ace/theme/twilight.css index 6f452147..86a0f95b 100644 --- a/lib/ace/theme/twilight.css +++ b/lib/ace/theme/twilight.css @@ -37,7 +37,7 @@ background: rgba(221, 240, 255, 0.20) } -.ace-twilight.multiselect .ace_selection.start { +.ace-twilight.ace_multiselect .ace_selection.start { box-shadow: 0 0 3px 0px #141414; border-radius: 2px } diff --git a/lib/ace/theme/vibrant_ink.css b/lib/ace/theme/vibrant_ink.css index 14d5b4f0..f4eafc0b 100644 --- a/lib/ace/theme/vibrant_ink.css +++ b/lib/ace/theme/vibrant_ink.css @@ -37,7 +37,7 @@ background: #6699CC } -.ace-vibrant-ink.multiselect .ace_selection.start { +.ace-vibrant-ink.ace_multiselect .ace_selection.start { box-shadow: 0 0 3px 0px #0F0F0F; border-radius: 2px } diff --git a/lib/ace/theme/xcode.css b/lib/ace/theme/xcode.css index 00916e18..86d141e3 100644 --- a/lib/ace/theme/xcode.css +++ b/lib/ace/theme/xcode.css @@ -38,7 +38,7 @@ background: #B5D5FF } -.ace-xcode.multiselect .ace_selection.start { +.ace-xcode.ace_multiselect .ace_selection.start { box-shadow: 0 0 3px 0px #FFFFFF; border-radius: 2px } diff --git a/tool/Theme.tmpl.css b/tool/Theme.tmpl.css index 757819ab..447c88e1 100644 --- a/tool/Theme.tmpl.css +++ b/tool/Theme.tmpl.css @@ -39,7 +39,7 @@ background: %selection%; } -.%cssClass%.multiselect .ace_selection.start { +.%cssClass%.ace_multiselect .ace_selection.start { box-shadow: 0 0 3px 0px %background%; border-radius: 2px; } From fe5aa98fc55d525ae811c362b45c022d97fee2cb Mon Sep 17 00:00:00 2001 From: DanyaPostfactum Date: Mon, 1 Oct 2012 18:43:59 +1000 Subject: [PATCH 23/32] rename .start to .ace_start for selection markers --- lib/ace/layer/marker.js | 6 +++--- lib/ace/theme/clouds.css | 2 +- lib/ace/theme/clouds_midnight.css | 2 +- lib/ace/theme/cobalt.css | 2 +- lib/ace/theme/dawn.css | 2 +- lib/ace/theme/github.css | 2 +- lib/ace/theme/idle_fingers.css | 2 +- lib/ace/theme/kr_theme.css | 2 +- lib/ace/theme/merbivore.css | 2 +- lib/ace/theme/merbivore_soft.css | 2 +- lib/ace/theme/mono_industrial.css | 2 +- lib/ace/theme/monokai.css | 2 +- lib/ace/theme/pastel_on_dark.css | 2 +- lib/ace/theme/solarized_dark.css | 2 +- lib/ace/theme/solarized_light.css | 2 +- lib/ace/theme/textmate.css | 2 +- lib/ace/theme/tomorrow.css | 2 +- lib/ace/theme/tomorrow_night.css | 2 +- lib/ace/theme/tomorrow_night_blue.css | 2 +- lib/ace/theme/tomorrow_night_bright.css | 2 +- lib/ace/theme/tomorrow_night_eighties.css | 2 +- lib/ace/theme/twilight.css | 2 +- lib/ace/theme/vibrant_ink.css | 2 +- lib/ace/theme/xcode.css | 2 +- tool/Theme.tmpl.css | 2 +- 25 files changed, 27 insertions(+), 27 deletions(-) diff --git a/lib/ace/layer/marker.js b/lib/ace/layer/marker.js index ee83cf5d..7470bfd7 100644 --- a/lib/ace/layer/marker.js +++ b/lib/ace/layer/marker.js @@ -95,7 +95,7 @@ var Marker = function(parentEl) { } else { this.drawSingleLineMarker( - html, range, marker.clazz + " start", config, + html, range, marker.clazz + " ace_start", config, null, marker.type ); } @@ -116,7 +116,7 @@ var Marker = function(parentEl) { row, range.start.column, row, this.session.getScreenLastRowColumn(row) ); - this.drawSingleLineMarker(stringBuilder, lineRange, clazz + " start", layerConfig, 1, "text"); + this.drawSingleLineMarker(stringBuilder, lineRange, clazz + " ace_start", layerConfig, 1, "text"); // selection end row = range.end.row; @@ -140,7 +140,7 @@ var Marker = function(parentEl) { var left = Math.round(padding + range.start.column * config.characterWidth); stringBuilder.push( - "
    Date: Mon, 1 Oct 2012 18:56:10 +1000 Subject: [PATCH 25/32] Place print_margin_layer before other layers --- lib/ace/virtual_renderer.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/ace/virtual_renderer.js b/lib/ace/virtual_renderer.js index 026107c1..edeca89e 100644 --- a/lib/ace/virtual_renderer.js +++ b/lib/ace/virtual_renderer.js @@ -516,7 +516,7 @@ var VirtualRenderer = function(container, theme) { this.$printMarginEl = dom.createElement("div"); this.$printMarginEl.className = "ace_print-margin"; containerEl.appendChild(this.$printMarginEl); - this.content.insertBefore(containerEl, this.$textLayer.element); + this.content.insertBefore(containerEl, this.content.firstChild); } var style = this.$printMarginEl.style; From b30c087fac0d46b23e8a39e678d50c11dd33566e Mon Sep 17 00:00:00 2001 From: DanyaPostfactum Date: Mon, 1 Oct 2012 19:13:05 +1000 Subject: [PATCH 26/32] Fix css-selector in vim/maps/util --- lib/ace/keyboard/vim/maps/util.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/ace/keyboard/vim/maps/util.js b/lib/ace/keyboard/vim/maps/util.js index 1e8b3e2f..1d5a7639 100644 --- a/lib/ace/keyboard/vim/maps/util.js +++ b/lib/ace/keyboard/vim/maps/util.js @@ -2,7 +2,7 @@ define(function(require, exports, module) { var registers = require("../registers"); var dom = require("../../../lib/dom"); -dom.importCssString('.insert-mode. ace_cursor{\ +dom.importCssString('.insert-mode .ace_cursor{\ border-left: 2px solid #333333;\ }\ .ace_dark.insert-mode .ace_cursor{\ From 42b6ac75d6185985a5f9a83bd35e93c4b2110dba Mon Sep 17 00:00:00 2001 From: DanyaPostfactum Date: Mon, 1 Oct 2012 19:13:37 +1000 Subject: [PATCH 27/32] Fix css-selector in chrome theme (trailing comma) --- lib/ace/theme/chrome.css | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/ace/theme/chrome.css b/lib/ace/theme/chrome.css index 8b0c8c8f..069a4b37 100644 --- a/lib/ace/theme/chrome.css +++ b/lib/ace/theme/chrome.css @@ -56,7 +56,7 @@ .ace-chrome .ace_line .ace_support.ace_type, .ace-chrome .ace_line .ace_support.ace_class -.ace-chrome .ace_line .ace_support.ace_other, { +.ace-chrome .ace_line .ace_support.ace_other { color: rgb(109, 121, 222); } From 2b7b07f02d3eacee0c1c7e4b7b2b1f4e3781be24 Mon Sep 17 00:00:00 2001 From: DanyaPostfactum Date: Mon, 1 Oct 2012 19:15:00 +1000 Subject: [PATCH 28/32] Fix github theme mistype and remove strange font-weight hard reset --- lib/ace/theme/github.css | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/lib/ace/theme/github.css b/lib/ace/theme/github.css index cdbcc52c..3dc69b27 100644 --- a/lib/ace/theme/github.css +++ b/lib/ace/theme/github.css @@ -55,7 +55,7 @@ font-weight: normal; } -.ace-github .ace_variable.ace_instancce { +.ace-github .ace_variable.ace_instance { color: teal; } @@ -78,18 +78,15 @@ .ace-github .ace_marker-layer .ace_active-line { background: rgb(255, 255, 204); } + .ace-github .ace_marker-layer .ace_selection { background: rgb(181, 213, 255); } + .ace-github.ace_multiselect .ace_selection.ace_start { box-shadow: 0 0 3px 0px white; border-radius: 2px; } -/* bold keywords cause cursor issues for some fonts */ -/* this disables bold style for editor and keeps for static highlighter */ -.ace-github.ace_editor .ace_line > span { - font-weight: normal !important; -} .ace-github .ace_marker-layer .ace_step { background: rgb(252, 255, 0); From e4d7fc17a6f86db2583adc837c05d2735eb8cbf6 Mon Sep 17 00:00:00 2001 From: DanyaPostfactum Date: Tue, 2 Oct 2012 00:12:28 +1000 Subject: [PATCH 29/32] Ambiance theme fixes --- lib/ace/theme/ambiance.css | 48 ++++++++++++++++---------------------- 1 file changed, 20 insertions(+), 28 deletions(-) diff --git a/lib/ace/theme/ambiance.css b/lib/ace/theme/ambiance.css index a9cd0fd6..65a25bbd 100644 --- a/lib/ace/theme/ambiance.css +++ b/lib/ace/theme/ambiance.css @@ -1,4 +1,5 @@ .ace-ambiance .ace_gutter { + background-color: #3d3d3d; background-image: -moz-linear-gradient(left, #3D3D3D, #333); background-image: -ms-linear-gradient(left, #3D3D3D, #333); background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#3D3D3D), to(#333)); @@ -6,51 +7,46 @@ background-image: -o-linear-gradient(left, #3D3D3D, #333); background-image: linear-gradient(left, #3D3D3D, #333); background-repeat: repeat-x; - + border-right: 1px solid #4d4d4d; text-shadow: 0px 1px 1px #4d4d4d; color: #222; - border-right: 1px solid #4d4d4d; - overflow : hidden; } .ace-ambiance .ace_gutter-layer { background: repeat left top; - width: 100%; - text-align: right; } -.ace-ambiance .ace_gutter-layer .ace_gutter-cell .ace_fold-widget { - position: absolute; - right: 2px; - margin: 0; - vertical-align: middle; - height: inherit; - width: auto; +.ace-ambiance .ace_fold-widget { + text-align: center; +} + +.ace-ambiance .ace_fold-widget:hover { + color: #777; +} + +.ace-ambiance .ace_fold-widget.ace_start, +.ace-ambiance .ace_fold-widget.ace_end, +.ace-ambiance .ace_fold-widget.ace_closed{ background: none; border: none; box-shadow: none; - outline: none; } -.ace-ambiance .ace_gutter-layer .ace_gutter-cell .ace_fold-widget:hover { - color: #777; -} - -.ace-ambiance .ace_gutter-layer .ace_gutter-cell .ace_fold-widget:hover { - color: #777; -} - -.ace-ambiance .ace_gutter-layer .ace_gutter-cell .ace_fold-widget.ace_open:after { +.ace-ambiance .ace_fold-widget.ace_start:after { content: '▾' } -.ace-ambiance .ace_gutter-layer .ace_gutter-cell .ace_fold-widget.ace_closed:after { +.ace-ambiance .ace_fold-widget.ace_end:after { + content: '▴' +} + +.ace-ambiance .ace_fold-widget.ace_closed:after { content: '‣' } .ace-ambiance .ace_print-margin { border-left: 1px dotted #2D2D2D; - width: 100%; + right: 0; background: #262626; } @@ -63,9 +59,7 @@ } .ace-ambiance .ace_text-layer { - cursor: text; color: #E6E1DC; - background: url("noise.png") repeat left top; } .ace-ambiance .ace_cursor { @@ -104,8 +98,6 @@ background: rgba(255, 255, 255, 0.031); } - - .ace-ambiance .ace_invisible { color: #333; } From e30ebc06b5a26c4fcedacec3531c9003b022b608 Mon Sep 17 00:00:00 2001 From: DanyaPostfactum Date: Tue, 2 Oct 2012 00:16:05 +1000 Subject: [PATCH 30/32] Fix mistype in svg demo --- demo/kitchen-sink/docs/svg.svg | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/demo/kitchen-sink/docs/svg.svg b/demo/kitchen-sink/docs/svg.svg index a3f1c757..4bb28e22 100644 --- a/demo/kitchen-sink/docs/svg.svg +++ b/demo/kitchen-sink/docs/svg.svg @@ -47,7 +47,7 @@ setTimeout("ShowAndGrowElement()", timer_increment) } window.ShowAndGrowElement = ShowAndGrowElement - ]] + ]]> Date: Tue, 2 Oct 2012 00:17:01 +1000 Subject: [PATCH 31/32] Fix mistype in setOverwrite of cursor layer. --- lib/ace/layer/cursor.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/ace/layer/cursor.js b/lib/ace/layer/cursor.js index eb36e745..9d688b57 100644 --- a/lib/ace/layer/cursor.js +++ b/lib/ace/layer/cursor.js @@ -177,7 +177,7 @@ var Cursor = function(parentEl) { var overwrite = this.session.getOverwrite(); if (overwrite != this.overwrite) - this.$setOverite(overwrite); + this.$setOverwrite(overwrite); // cache for textarea and gutter highlight this.$pixelPos = pixelPos; @@ -185,7 +185,7 @@ var Cursor = function(parentEl) { this.restartTimer(); }; - this.$setOverite = function(overwrite) { + this.$setOverwrite = function(overwrite) { this.overwrite = overwrite; for (var i = this.cursors.length; i--; ) { if (overwrite) From 5e5d122332b76ac4fd023bd3a8196da705c7c34b Mon Sep 17 00:00:00 2001 From: DanyaPostfactum Date: Tue, 2 Oct 2012 00:37:56 +1000 Subject: [PATCH 32/32] Disable spellcheck in textarea, set wrap property instead of attribute --- lib/ace/keyboard/textinput.js | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/lib/ace/keyboard/textinput.js b/lib/ace/keyboard/textinput.js index e41f3152..4f5ef1e4 100644 --- a/lib/ace/keyboard/textinput.js +++ b/lib/ace/keyboard/textinput.js @@ -46,7 +46,8 @@ var TextInput = function(parentNode, host) { if (useragent.isTouchPad) text.setAttribute("x-palm-disable-auto-cap", true); - text.setAttribute("wrap", "off"); + text.wrap = "off"; + text.spellcheck = false; text.style.top = "-2em"; parentNode.insertBefore(text, parentNode.firstChild);