Merge branch 'master' of github.com:c9/newclient into fix/testpanel

pull/223/head
Ruben Daniels 2015-09-29 11:22:45 -07:00
commit bca8b3196b
78 zmienionych plików z 1418 dodań i 313 usunięć

Wyświetl plik

@ -1,6 +1,7 @@
var join = require("path").join;
module.exports = function(options) {
options.collab = false;
var config = require("./client-default")(options);
return module.exports.makeLocal(config, options);
};
@ -132,20 +133,6 @@ module.exports.makeLocal = function(config, options) {
"plugins/c9.ide.newresource/open": true,
"plugins/c9.ide.info/info": true,
// "plugins/c9.ide.login/login": true,
"plugins/c9.ide.collab/connect": true,
"plugins/c9.ide.collab/collab": true,
"plugins/c9.ide.collab/collabpanel": true,
"plugins/c9.ide.collab/workspace": true,
"plugins/c9.ide.collab/util": true,
"plugins/c9.ide.collab/ot/document": true,
"plugins/c9.ide.collab/cursor_layer": true,
"plugins/c9.ide.collab/author_layer": true,
"plugins/c9.ide.collab/timeslider/timeslider": true,
"plugins/c9.ide.notifications/notifications": true,
"plugins/c9.ide.collab/members/members_panel": true,
"plugins/c9.ide.collab/share/share": true,
"plugins/c9.ide.collab/members/members": true,
"plugins/c9.ide.collab/chat/chat": true,
"plugins/c9.ide.feedback/nps": true,
"plugins/c9.ide.download/download": true
};

Wyświetl plik

@ -218,7 +218,6 @@ module.exports = function(options) {
nak: options.nakBin || "~/.c9/node_modules/nak/bin/nak",
node: options.nodeBin,
local: options.local,
installPath: options.installPath
},
{
packagePath: "plugins/c9.ide.find.infiles/findinfiles",
@ -277,7 +276,7 @@ module.exports = function(options) {
// VFS
"plugins/c9.fs/proc",
"plugins/c9.fs/proc.apigen",
"plugins/c9.fs/proc.apigen", // used only by disabled deploy plugins
"plugins/c9.fs/net",
{
packagePath: "plugins/c9.fs/fs",

15
node_modules/ace/ChangeLog.txt wygenerowano vendored
Wyświetl plik

@ -1,5 +1,20 @@
2015.07.11 Version 1.2.0
* New Features
- Indented soft wrap (danyaPostfactum)
- Rounded borders on selections
* API Changes
- unified delta types `{start, end, action, lines}` (Alden Daniels https://github.com/ajaxorg/ace/pull/1745)
- "change" event listeners on session and editor get delta objects directly
* new language modes
- SQLServer (Morgan Yarbrough)
2015.04.03 Version 1.1.9
- Small Enhancements and Bugfixes
2014.11.08 Version 1.1.8
* API Changes

14
node_modules/ace/Makefile.dryice.js wygenerowano vendored
Wyświetl plik

@ -284,7 +284,9 @@ function buildAceModuleInternal(opts, callback) {
filters.push(exportAce(ns, opts.require[0],
opts.noconflict ? ns : "", projectType == "ext"));
}
filters.push(normalizeLineEndings);
filters.forEach(function(f) { code = f(code); });
build.writeToFile({code: code}, {
@ -409,7 +411,9 @@ function getLoadedFileList(options, callback, result) {
}
function normalizeLineEndings(module) {
module.source = module.source.replace(/\r\n/g, "\n");
if (typeof module == "string")
module = {source: module};
return module.source = module.source.replace(/\r\n/g, "\n");
}
function optimizeTextModules(sources) {
@ -471,8 +475,10 @@ function namespace(ns) {
text = text
.toString()
.replace(/ACE_NAMESPACE\s*=\s*""/, 'ACE_NAMESPACE = "' + ns +'"')
.replace(/(\.define)|\bdefine\(/g, function(_, a) {
return a || ns + ".define(";
.replace(/\bdefine\(/g, function(def, index, source) {
if (/(^|[;})])\s*$/.test(source.slice(0, index)))
return ns + "." + def;
return def;
});
return text;

12
node_modules/ace/demo/autoresize.html wygenerowano vendored
Wyświetl plik

@ -7,14 +7,13 @@
<style type="text/css" media="screen">
.ace_editor {
position: relative !important;
border: 1px solid lightgray;
margin: auto;
height: 200px;
width: 80%;
}
.scrollmargin {
height: 100px;
height: 80px;
text-align: center;
}
</style>
@ -24,6 +23,8 @@
<div class="scrollmargin"></div>
<pre id="editor2">minHeight = 2 lines</pre>
<div class="scrollmargin"></div>
<pre id="editor3" style="width: 40%;"></pre>
<div class="scrollmargin"></div>
<pre id="editor"></pre>
<script src="kitchen-sink/require.js"></script>
@ -46,6 +47,13 @@ require(["ace/ace"], function(ace) {
editor2.setOption("maxLines", 30);
editor2.setOption("minLines", 2);
var editor = ace.edit("editor3");
editor.setOptions({
autoScrollEditorIntoView: true,
maxLines: 8
});
editor.renderer.setScrollMargin(10, 10, 10, 10);
var editor = ace.edit("editor");
editor.setTheme("ace/theme/tomorrow");
editor.session.setMode("ace/mode/html");

Wyświetl plik

@ -39,7 +39,7 @@ function warn() {
s.shift(); // remove the getter
s = s.join("\n");
// allow easy access to ace in console, but not in ace code
if (!/at Object.InjectedScript.|@debugger eval|snippets:\/{3}/.test(s)) {
if (!/at Object.InjectedScript.|@debugger eval|snippets:\/{3}|<anonymous>:\d+:\d+/.test(s)) {
console.error("trying to access to global variable");
}
}

Wyświetl plik

@ -24,10 +24,12 @@
using namespace std;
//
int main ()
{
int a, b=3; /* foobar */
a = b;
a = b; // single line comment\
continued
a+=2; // equivalent to a=a+2
cout << a;
#if VERBOSE >= 2

Wyświetl plik

@ -1,4 +1,4 @@
@these @are @tags
@these @_are_ @tags
Feature: Serve coffee
Coffee should not be served until paid for
Coffee should not be served until the button has been pressed
@ -12,7 +12,7 @@ Feature: Serve coffee
Examples:
| start | eat | left |
| 12 | 5 | 7 |
| 20 | 5 | 15 |
| @20 | 5 | 15 |
Scenario: Buy last coffee
Given there are 1 coffees left in the machine

23
node_modules/ace/demo/kitchen-sink/docs/maze.mz wygenerowano vendored 100644
Wyświetl plik

@ -0,0 +1,23 @@
## ## () ## ^^ ## ## ## ##
## H1 C2 S1 <> S2 H2 DN ##
## %U <> %D *2 %L IZ .. ##
## ## ## .. ## DN *3 ## ##
## ## ## %R C1 IZ () ## ##
## ## ## ## >/ *1
## () *3 *1 %L ()
// Set divisor and dividend
S1-> = 9
S2-> = 24
// Holding cells
H1-> IF *1 THEN %R ELSE %N
H2-> IF *2 THEN %R ELSE %N
// Arithmetic
DN-> -= 1
IZ-> IF <= 0 THEN %D ELSE %U
C1-> IF *3 THEN %D ELSE %R
C2-> IF *3 THEN %U ELSE %D

Wyświetl plik

@ -1,9 +1,9 @@
-- =============================================
-- Author: Morgan Yarbrough
-- Create date: 4/27/2015
-- Description: Test Procedure that shows off language features.
-- Includes non-standard folding using region comments using either
-- line comments or block comments (both are demonstrated below)
-- Description: Test procedure that shows off language features.
-- Includes non-standard folding with region comments using either
-- line comments or block comments (both are demonstrated below).
-- This mode imitates SSMS and it designed to be used with SQL Server theme.
-- =============================================
CREATE PROCEDURE dbo.TestProcedure
@ -11,7 +11,7 @@ CREATE PROCEDURE dbo.TestProcedure
--#region parameters
@vint INT = 1
,@vdate DATE = NULL
,@vdatetime DATETIME = DATEADD (dd, 1, GETDATE())
,@vdatetime DATETIME = DATEADD(dd, 1, GETDATE())
,@vvarchar VARCHAR(MAX) = ''
--#endregion
@ -38,8 +38,8 @@ BEGIN
-- another folding demonstration
IF @vint = 1
BEGIN
SET @vvarchar='one'
SET @vint = DATEDIFFT(dd, @vdate, @vdatetime)
SET @vvarchar = 'one'
SET @vint = DATEDIFF(dd, @vdate, @vdatetime)
END
-- this mode handles strings properly
@ -47,7 +47,7 @@ BEGIN
FROM Orders
WHERE @OrderDate > GETDATE()'
-- this mode is aware of build in stored procedures
-- this mode is aware of built in stored procedures
EXECUTE sp_executesql @sql
-- demonstrating some syntax highlighting
@ -60,4 +60,13 @@ BEGIN
WHERE CompanyName NOT LIKE '%something'
OR CompanyName IS NULL
OR CompanyName IN ('bla', 'nothing')
-- this mode includes snippets
-- place your cusor at the end of the line below and trigger auto complete (Ctrl+Space)
createpr
-- SQL Server allows using keywords as object names (not recommended) as long as they are wrapped in brackets
DATABASE -- keyword
[DATABASE] -- not a keyword
END

16
node_modules/ace/demo/kitchen-sink/docs/swift.swift wygenerowano vendored 100644
Wyświetl plik

@ -0,0 +1,16 @@
import UIKit
class DetailsViewController: UIViewController {
var album: Album?
@IBOutlet weak var albumCover: UIImageView!
required init(coder aDecoder: NSCoder) {
super.init(coder: aDecoder)
}
override func viewDidLoad() {
super.viewDidLoad()
mLabel.text = self.album?.title && "Juhu \( "kinners" )! "
albumCover.image = UIImage(data: NSData(contentsOfURL: NSURL(string: self.album!.largeImageURL)!)!)
}
}

Wyświetl plik

@ -52,4 +52,6 @@ body {
z-index: 10!important;
opacity: 1!important;
background: rgb(84, 0, 255)!important;
color: rgb(255, 255, 255)!important;
width: 10em!important;
}*/

Wyświetl plik

@ -2,15 +2,13 @@
* Simple node.js server, which generates the synax highlighted version of itself
* using the Ace modes and themes on the server and serving a static web page.
*/
// $'
// include ace search path and modules
require("amd-loader");
// load jsdom, which is required by Ace
require("../../lib/ace/test/mockdom");
var http = require("http");
var fs = require("fs");
var resolve = require("path").resolve;
// load the highlighter and the desired mode and theme
var highlighter = require("../../lib/ace/ext/static_highlight");
@ -20,15 +18,22 @@ var theme = require("../../lib/ace/theme/twilight");
var port = process.env.PORT || 2222;
http.createServer(function(req, res) {
var url = req.url;
var path = /[^#?\x00]*/.exec(url)[0];
var root = resolve(__dirname + "/../../").replace(/\\/g, "/");
path = resolve(root + "/" + path).replace(/\\/g, "/");
if (path.indexOf(root + "/") != 0)
path = __filename;
res.writeHead(200, {"Content-Type": "text/html; charset=utf-8"});
fs.readFile(__dirname + "/../../build/src/ace.js", "utf8", function(err, data) {
fs.readFile(path, "utf8", function(err, data) {
if (err) data = err.message;
var highlighted = highlighter.render(data, new JavaScriptMode(), theme);
res.end(
'<html><body>\n' +
'<style type="text/css" media="screen">\n' +
highlighted.css +
'</style>\n' +
highlighted.html +
highlighted.html +
'</body></html>'
);
});

11
node_modules/ace/demo/svg.svg wygenerowano vendored 100644
Wyświetl plik

@ -0,0 +1,11 @@
<svg xmlns="http://www.w3.org/2000/svg">
<style type="text/css"> #ed { width: 500px; height: 200px }</style>
<script xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="../build/src/ace.js"></script>
<script type="text/javascript">
window.onload = function() {
ace.edit("ed");
};</script>
<foreignObject id="fo" width="500px" height="200px">
<div xmlns="http://www.w3.org/1999/xhtml" id="ed">Hi!</div>
</foreignObject>
</svg>

Po

Szerokość:  |  Wysokość:  |  Rozmiar: 485 B

33
node_modules/ace/demo/xml.xml wygenerowano vendored 100644
Wyświetl plik

@ -0,0 +1,33 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
<head>
<meta charset="UTF-8"></meta>
<title>ACE Autocompletion demo</title>
<style type="text/css" media="screen">
body { overflow: hidden; }
#editor {
margin: 0; position: absolute;
top: 0; bottom: 0; left: 0; right: 0;
}
</style>
</head>
<body>
<pre id="editor"></pre>
<script src="kitchen-sink/require.js"></script>
<script><![CDATA[
// setup paths
require.config({paths: { "ace" : "../lib/ace"}});
// load ace and extensions
require(["ace/ace", "ace/ext/language_tools"], function(ace) {
var langagueTools = require("ace/ext/language_tools");
var editor = ace.edit("editor");
editor.session.setMode("ace/mode/xml");
editor.setTheme("ace/theme/tomorrow");
});
]]></script>
<script src="./show_own_source.js"></script>
</body>
</html>

59
node_modules/ace/experiments/debug_mem_leak.html wygenerowano vendored 100644
Wyświetl plik

@ -0,0 +1,59 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<script src="../demo/kitchen-sink/require.js"></script>
<script type="text/javascript">
require.config({
paths: { ace: "../lib/ace" },
waitSeconds: 0
});
</script>
</head>
<body>
<p><button onclick="toggleEditor()">Toggle editor</button></p>
<div id="container"></div>
<script>
var editor;
var counter = 0
function toggleEditor() {
if (!editor) {
var root = document.createElement("div");
root.style.height = "100px";
root.setAttribute("id", "editor");
root.textContent = "function foo(items) {\nvar x = 'All this is syntax highlighted';\nreturn x;\n}";
document.getElementById("container").appendChild(root);
editor = ace.edit(root);
if (counter++ % 2)
editor.setTheme("ace/theme/monokai");
else
editor.setTheme("ace/theme/clouds");
editor.session.setMode("ace/mode/javascript");
} else {
editor.destroy();
var el = editor.container;
el.parentNode.removeChild(el);
editor.container = null
editor.renderer = null
editor = null;
var root = document.getElementById("editor")
if (root)
root.parentNode.removeChild(root);
}
}
require(["ace/ace"], function(ace) {
window.ace = ace;
toggleEditor();
})
</script>
</body>
</html>

Wyświetl plik

@ -174,7 +174,7 @@ var Autocomplete = function() {
this.popup.setRow(row);
};
this.insertMatch = function(data) {
this.insertMatch = function(data, options) {
if (!data)
data = this.popup.getData(this.popup.getRow());
if (!data)
@ -183,6 +183,7 @@ var Autocomplete = function() {
if (data.completer && data.completer.insertMatch) {
data.completer.insertMatch(this.editor, data);
} else {
// TODO add support for options.deleteSuffix
if (this.completions.filterText) {
var ranges = this.editor.selection.getAllRanges();
for (var i = 0, range; range = ranges[i]; i++) {
@ -207,7 +208,7 @@ var Autocomplete = function() {
"Esc": function(editor) { editor.completer.detach(); },
"Return": function(editor) { return editor.completer.insertMatch(); },
"Shift-Return": function(editor) { editor.completer.insertMatch(true); },
"Shift-Return": function(editor) { editor.completer.insertMatch(null, {deleteSuffix: true}); },
"Tab": function(editor) {
var result = editor.completer.insertMatch();
if (!result && !editor.tabstopManager)

Wyświetl plik

@ -92,7 +92,7 @@ var supportedModes = {
Jack: ["jack"],
Jade: ["jade"],
Java: ["java"],
JavaScript: ["js|jsm"],
JavaScript: ["js|jsm|jsx"],
JSON: ["json"],
JSONiq: ["jq"],
JSP: ["jsp"],
@ -150,6 +150,7 @@ var supportedModes = {
SQLServer: ["sqlserver"],
Stylus: ["styl|stylus"],
SVG: ["svg"],
Swift: ["swift"],
Tcl: ["tcl"],
Tex: ["tex"],
Text: ["txt"],

5
node_modules/ace/lib/ace/lib/dom.js wygenerowano vendored
Wyświetl plik

@ -136,10 +136,7 @@ exports.importCssString = function importCssString(cssText, id, doc) {
if (id)
style.owningElement.id = id;
} else {
style = doc.createElementNS
? doc.createElementNS(XHTML_NS, "style")
: doc.createElement("style");
style = exports.createElement("style");
style.appendChild(doc.createTextNode(cssText));
if (id)
style.id = id;

42
node_modules/ace/lib/ace/lib/event.js wygenerowano vendored
Wyświetl plik

@ -34,6 +34,9 @@ define(function(require, exports, module) {
var keys = require("./keys");
var useragent = require("./useragent");
var pressedKeys = null;
var ts = 0;
exports.addListener = function(elem, type, callback) {
if (elem.addEventListener) {
return elem.addEventListener(type, callback, false);
@ -253,7 +256,7 @@ function normalizeCommandKeys(callback, e, keyCode) {
var hashId = getModifierHash(e);
if (!useragent.isMac && pressedKeys) {
if (pressedKeys[91] || pressedKeys[92])
if (pressedKeys.OSKey)
hashId |= 8;
if (pressedKeys.altGr) {
if ((3 & hashId) != 3)
@ -278,7 +281,7 @@ function normalizeCommandKeys(callback, e, keyCode) {
keyCode = -1;
}
if (hashId & 8 && (keyCode === 91 || keyCode === 93)) {
if (hashId & 8 && (keyCode === 91 || keyCode === 92)) {
keyCode = -1;
}
@ -309,8 +312,7 @@ function normalizeCommandKeys(callback, e, keyCode) {
return callback(e, hashId, keyCode);
}
var pressedKeys = null;
var ts = 0;
exports.addCommandKeyListener = function(el, callback) {
var addListener = exports.addListener;
if (useragent.isOldGecko || (useragent.isOpera && !("KeyboardEvent" in window))) {
@ -331,8 +333,19 @@ exports.addCommandKeyListener = function(el, callback) {
var lastDefaultPrevented = null;
addListener(el, "keydown", function(e) {
pressedKeys[e.keyCode] = (pressedKeys[e.keyCode] || 0) + 1;
var result = normalizeCommandKeys(callback, e, e.keyCode);
var keyCode = e.keyCode;
pressedKeys[keyCode] = (pressedKeys[keyCode] || 0) + 1;
if (keyCode == 91 || keyCode == 92) {
pressedKeys.OSKey = true;
} else if (pressedKeys.OSKey) {
if (e.timeStamp - pressedKeys.lastT > 200 && pressedKeys.count == 1)
resetPressedKeys();
}
if (pressedKeys[keyCode] == 1)
pressedKeys.count++;
// console.log(e.timeStamp - pressedKeys.lastT)
pressedKeys.lastT = e.timeStamp;
var result = normalizeCommandKeys(callback, e, keyCode);
lastDefaultPrevented = e.defaultPrevented;
return result;
});
@ -345,7 +358,17 @@ exports.addCommandKeyListener = function(el, callback) {
});
addListener(el, "keyup", function(e) {
pressedKeys[e.keyCode] = null;
var keyCode = e.keyCode;
if (!pressedKeys[keyCode]) {
// console.log("resetting", 1)
resetPressedKeys();
} else {
pressedKeys.count = Math.max(pressedKeys.count - 1, 0);
}
if (keyCode == 91 || keyCode == 92) {
pressedKeys.OSKey = false;
}
pressedKeys[keyCode] = null;
});
if (!pressedKeys) {
@ -354,8 +377,11 @@ exports.addCommandKeyListener = function(el, callback) {
}
}
};
function resetPressedKeys(e) {
function resetPressedKeys() {
// console.log("resetting")
pressedKeys = Object.create(null);
pressedKeys.count = 0;
pressedKeys.lastT = 0;
}
if (typeof window == "object" && window.postMessage && !useragent.isOldIE) {

2
node_modules/ace/lib/ace/lib/keys.js wygenerowano vendored
Wyświetl plik

@ -105,7 +105,7 @@ var Keys = (function() {
80: 'p', 81: 'q', 82: 'r', 83: 's', 84: 't', 85: 'u', 86: 'v',
87: 'w', 88: 'x', 89: 'y', 90: 'z', 107: '+', 109: '-', 110: '.',
186: ';', 187: '=', 188: ',', 189: '-', 190: '.', 191: '/', 192: '`',
219: '[', 220: '\\',221: ']', 222: '\''
219: '[', 220: '\\',221: ']', 222: "'", 111: '/', 106: '*'
}
};

2
node_modules/ace/lib/ace/lib/lang.js wygenerowano vendored
Wyświetl plik

@ -136,7 +136,7 @@ exports.escapeRegExp = function(str) {
};
exports.escapeHTML = function(str) {
return str.replace(/&/g, "&#38;").replace(/"/g, "&#34;").replace(/'/g, "&#39;").replace(/</g, "&#60;");
return ("" + str).replace(/&/g, "&#38;").replace(/"/g, "&#34;").replace(/'/g, "&#39;").replace(/</g, "&#60;");
};
exports.getMatchOffsets = function(string, regExp) {

Wyświetl plik

@ -29,26 +29,42 @@ function checkModes() {
return;
}
var m = new Mode();
if (!m.lineCommentStart && !m.blockComment)
if (!("lineCommentStart" in m) && !("blockComment" in m))
console.warn("missing comment in " + modeName);
if (!m.$id)
console.warn("missing id in " + modeName);
var tokenizer = (new Mode).getTokenizer();
if (m.lineCommentStart) {
if (Array.isArray(m.lineCommentStart)) {
m.lineCommentStart.forEach(function(x) {
testLineComment(tokenizer, x, modeName)
testComments(m.lineCommentStart, testLineComment, tokenizer, modeName);
testComments(m.blockComment, testBlockComment, tokenizer, modeName);
});
function testComments(desc, fn, tokenizer, modeName) {
if (desc) {
if (Array.isArray(desc)) {
desc.forEach(function(x) {
fn(tokenizer, x, modeName)
});
} else {
testLineComment(tokenizer, m.lineCommentStart, modeName)
fn(tokenizer, desc, modeName)
}
}
// if (m.blockComment) {
// var tokens = tok.getLineTokens(m.lineCommentStart, "start");
// if (!/comment/.test(tokens[0]))
// console.warn("broken lineCommentStart in " + modeName);
// }
});
}
function testBlockComment(tokenizer, blockComment, modeName) {
if (blockComment.lineStartOnly)
return; // TODO test
var str = blockComment.start + " " + blockComment.end;
str = blockComment.start + str;
if (blockComment.nestable)
str += blockComment.end;
var data = tokenizer.getLineTokens(str, "start");
var isBroken = data.tokens.some(function(t) { return !/comment/.test(t.type) });
if (isBroken)
console.warn("broken blockComment in " + modeName, data);
if (!/start/.test(data.state))
console.warn("broken state after blockComment in " + modeName, data);
}
function testLineComment(tokenizer, commentStart, modeName) {
var tokens = tokenizer.getLineTokens(commentStart + " ", "start").tokens;
@ -198,9 +214,10 @@ function padNumber(num, digits) {
// cli
var arg = process.argv[2];
if (!arg)
if (!arg) {
test();
else if (/--?g(en)?/.test(arg))
checkModes();
} else if (/--?g(en)?/.test(arg))
generateTestData(process.argv.splice(3));
else if (/--?c(heck)?/.test(arg))
checkModes(process.argv.splice(3));

Wyświetl plik

@ -0,0 +1,8 @@
<!--- hello world --->
<cfset <!--- x <!--- y ---> z ---> welcome="Hello World!">
<!-- x <!--- y ---> z -->
<cfoutput>#welcome#</cfoutput>
<cfscript>
Dateformat(now())
</cfscript>

Wyświetl plik

@ -84,3 +84,11 @@ foo.protoype.d = function(a, b,
c, d)
foo.d =function(a, b)
foo.d =function(a, /*****/ d"string"
<div
z=<div {...this.props} x={1 + 2} y="z{
1
}e">
1 <a> { ++x } </a>
</div>

Wyświetl plik

@ -83,7 +83,7 @@
"start"
],[
"start",
["comment","//"]
["comment","//"]
],[
"start",
["storage.type","int"],
@ -110,7 +110,7 @@
["text"," "],
["comment","/* foobar */"]
],[
"start",
"singleLineComment",
["text"," "],
["identifier","a"],
["text"," "],
@ -119,7 +119,10 @@
["identifier","b"],
["punctuation.operator",";"],
["text"," "],
["comment","// single line comment\\ continued"]
["comment","// single line comment\\"]
],[
"start",
["comment"," continued"]
],[
"start",
["text"," "],

Wyświetl plik

@ -10,8 +10,8 @@
["identifier","i"],
["text"," "],
["constant.numeric","1"],
["punctuation.operator","."],
["constant.numeric",".2"],
["punctuation.operator",".."],
["constant.numeric","2"],
["paren.rparen",")"]
],[
"start",

Wyświetl plik

@ -1,26 +1,59 @@
[[
"start",
["comment.xml","<!--- hello world --->"]
["comment.start","<!---"],
["comment"," hello world "],
["comment.end","--->"]
],[
"start"
],[
"start",
["meta.tag.punctuation.tag-open.xml","<"],
["meta.tag.tag-name.xml","cfset"],
["keyword.tag-name.xml","cfset"],
["text.tag-whitespace.xml"," "],
["comment.start","<!---"],
["comment"," x "],
["comment.start","<!---"],
["comment"," y "],
["comment.end","--->"],
["comment"," z "],
["comment.end","--->"],
["text.tag-whitespace.xml"," "],
["entity.other.attribute-name.xml","welcome"],
["keyword.operator.attribute-equals.xml","="],
["string.attribute-value.xml","\"Hello World!\""],
["meta.tag.punctuation.tag-close.xml",">"]
],[
"start"
"start",
["comment.xml","<!-- x "],
["comment.start","<!---"],
["comment"," y "],
["comment.end","--->"],
["comment.xml"," z -->"]
],[
"start",
["meta.tag.punctuation.tag-open.xml","<"],
["meta.tag.tag-name.xml","cfoutput"],
["keyword.tag-name.xml","cfoutput"],
["meta.tag.punctuation.tag-close.xml",">"],
["text.xml","#welcome#"],
["meta.tag.punctuation.end-tag-open.xml","</"],
["meta.tag.tag-name.xml","cfoutput"],
["keyword.tag-name.xml","cfoutput"],
["meta.tag.punctuation.tag-close.xml",">"]
],[
"cfjs-start",
["meta.tag.punctuation.tag-open.xml","<"],
["meta.tag.cfscript.tag-name.xml","cfscript"],
["meta.tag.punctuation.tag-close.xml",">"]
],[
"cfjs-no_regex",
["text"," "],
["identifier","Dateformat"],
["paren.lparen","("],
["identifier","now"],
["paren.lparen","("],
["paren.rparen","))"]
],[
"start",
["meta.tag.punctuation.end-tag-open.xml","</"],
["meta.tag.cfscript.tag-name.xml","cfscript"],
["meta.tag.punctuation.tag-close.xml",">"]
]]

Wyświetl plik

@ -590,4 +590,70 @@
["text"," "]
],[
"no_regex"
],[
"no_regex",
["keyword.operator","<"],
["identifier","div"]
],[
["start","jsx_attr_qq","jsx_attr_qq","jsxAttributes","jsxAttributes","jsx",1],
["identifier","z"],
["keyword.operator","="],
["meta.tag.punctuation.tag-open.xml","<"],
["meta.tag.tag-name.xml","div"],
["text.tag-whitespace.xml"," "],
["paren.quasi.start","{"],
["keyword.operator","..."],
["variable.language","this"],
["punctuation.operator","."],
["identifier","props"],
["paren.quasi.end","}"],
["text.tag-whitespace.xml"," "],
["entity.other.attribute-name.xml","x"],
["keyword.operator.attribute-equals.xml","="],
["paren.quasi.start","{"],
["constant.numeric","1"],
["text"," "],
["keyword.operator","+"],
["text"," "],
["constant.numeric","2"],
["paren.quasi.end","}"],
["text.tag-whitespace.xml"," "],
["entity.other.attribute-name.xml","y"],
["keyword.operator.attribute-equals.xml","="],
["string.attribute-value.xml","\"z"],
["paren.quasi.start","{"]
],[
["#tmp","no_regex","start","jsx_attr_qq","jsx_attr_qq","jsxAttributes","jsxAttributes","jsx",1],
["text"," "],
["constant.numeric","1"]
],[
["jsx",1],
["text"," "],
["paren.quasi.end","}"],
["string.attribute-value.xml","e\""],
["meta.tag.punctuation.tag-close.xml",">"]
],[
["jsx",1],
["string","1 "],
["meta.tag.punctuation.tag-open.xml","<"],
["meta.tag.tag-name.xml","a"],
["meta.tag.punctuation.tag-close.xml",">"],
["string"," "],
["paren.quasi.start","{"],
["text"," "],
["keyword.operator","++"],
["identifier","x"],
["text"," "],
["paren.quasi.end","}"],
["string"," "],
["meta.tag.punctuation.end-tag-open.xml","</"],
["meta.tag.tag-name.xml","a"],
["meta.tag.punctuation.tag-close.xml",">"]
],[
"start",
["meta.tag.punctuation.end-tag-open.xml","</"],
["meta.tag.tag-name.xml","div"],
["meta.tag.punctuation.tag-close.xml",">"]
],[
"start"
]]

Wyświetl plik

@ -110,5 +110,5 @@
],[
"allowBlock"
],[
"start"
]]
"allowBlock"
]]

Wyświetl plik

@ -210,4 +210,4 @@
["paren.rparen","}"]
],[
"start"
]]
]]

Wyświetl plik

@ -115,7 +115,7 @@
["text"," "],
["keyword","extends"],
["text"," "],
["identifier","Application"],
["support.function","Application"],
["text"," "],
["paren.lparen","{"]
],[
@ -205,7 +205,7 @@
],[
"start",
["text"," "],
["identifier","println"],
["keyword","println"],
["paren.lparen","("],
["string","\"Ping: Initializing with count \""],
["keyword.operator","+"],
@ -248,7 +248,7 @@
],[
"start",
["text"," "],
["identifier","println"],
["keyword","println"],
["paren.lparen","("],
["string","\"Ping: starting.\""],
["paren.rparen",")"]
@ -327,7 +327,7 @@
],[
"start",
["text"," "],
["identifier","println"],
["keyword","println"],
["paren.lparen","("],
["string","\"Ping: pong from: \""],
["keyword.operator","+"],
@ -362,7 +362,7 @@
],[
"start",
["text"," "],
["identifier","println"],
["keyword","println"],
["paren.lparen","("],
["string","\"Ping: Stop.\""],
["paren.rparen",")"]
@ -472,7 +472,7 @@
],[
"start",
["text"," "],
["identifier","println"],
["keyword","println"],
["paren.lparen","("],
["string","\"Pong: ping \""],
["keyword.operator","+"],
@ -513,7 +513,7 @@
],[
"start",
["text"," "],
["identifier","println"],
["keyword","println"],
["paren.lparen","("],
["string","\"Pong: Stop.\""],
["paren.rparen",")"]

Wyświetl plik

@ -110,8 +110,8 @@
["punctuation.definition.tag.end.soy","}"]
],[
"start",
["comment.line.double-slash.soy"," "],
["punctuation.definition.comment.soy","//"],
["text.xml"," "],
["comment.line.double-slash.soy","//"],
["comment.line.double-slash.soy"," Greet the person."]
],[
"start",
@ -130,8 +130,8 @@
["meta.tag.punctuation.tag-close.xml",">"]
],[
"start",
["comment.line.double-slash.soy"," "],
["punctuation.definition.comment.soy","//"],
["text.xml"," "],
["comment.line.double-slash.soy","//"],
["comment.line.double-slash.soy"," Greet the additional people."]
],[
"start",
@ -189,8 +189,8 @@
["meta.tag.punctuation.tag-open.xml","<"],
["meta.tag.tag-name.xml","br"],
["meta.tag.punctuation.tag-close.xml",">"],
["comment.line.double-slash.soy"," "],
["punctuation.definition.comment.soy","//"],
["text.xml"," "],
["comment.line.double-slash.soy","//"],
["comment.line.double-slash.soy"," break after every line except the last"]
],[
"start",

Wyświetl plik

@ -167,7 +167,7 @@ define(function(require, exports, module) {
regex : "(\\.)(\\s*)(" + illegal + ")"
}, {
token : "punctuation.operator",
regex : "\\."
regex : "\\.{1,3}"
}, {
//class A extends B
token : ["keyword", "text", "language.support.class",

Wyświetl plik

@ -37,8 +37,45 @@ var HtmlHighlightRules = require("./html_highlight_rules").HtmlHighlightRules;
var ColdfusionHighlightRules = function() {
HtmlHighlightRules.call(this);
this.$rules.tag[2].token = function (start, tag) {
var group = tag.slice(0,2) == "cf" ? "keyword" : "meta.tag";
return ["meta.tag.punctuation." + (start == "<" ? "" : "end-") + "tag-open.xml",
group + ".tag-name.xml"];
}
this.embedTagRules(JavaScriptHighlightRules, "cfjs-", "cfscript");
var jsAndCss = Object.keys(this.$rules).filter(function(x) {
return /^(js|css)-/.test(x);
});
this.embedRules({
cfmlComment: [
{ regex: "<!---", token: "comment.start", push: "cfmlComment"},
{ regex: "--->", token: "comment.end", next: "pop"},
{ defaultToken: "comment"}
]
}, "", [
{ regex: "<!---", token: "comment.start", push: "cfmlComment"}
], [
"comment", "start", "tag_whitespace", "cdata"
].concat(jsAndCss));
this.$rules.cfTag = [
{include : "attributes"},
{token : "meta.tag.punctuation.tag-close.xml", regex : "/?>", next : "pop"}
];
var cfTag = {
token : function(start, tag) {
return ["meta.tag.punctuation." + (start == "<" ? "" : "end-") + "tag-open.xml",
"keyword.tag-name.xml"];
},
regex : "(</?)(cf[-_a-zA-Z0-9:.]+)",
push: "cfTag"
};
jsAndCss.forEach(function(s) {
this.$rules[s].unshift(cfTag);
}, this);
this.embedTagRules(new JavaScriptHighlightRules({noJSX: true}).getRules(), "cfjs-", "cfscript");
this.normalizeRules();
};

2
node_modules/ace/lib/ace/mode/elm.js wygenerowano vendored
Wyświetl plik

@ -49,7 +49,7 @@ oop.inherits(Mode, TextMode);
(function() {
this.lineCommentStart = "--";
this.blockComment = {start: "{-", end: "-}"};
this.blockComment = {start: "{-", end: "-}", nestable: true};
// Extra logic goes here.
this.$id = "ace/mode/elm";
}).call(Mode.prototype);

Wyświetl plik

@ -60,6 +60,9 @@ var ElmHighlightRules = function() {
}, {
regex: /0(?:[xX][0-9A-Fa-f]+|[oO][0-7]+)|\d+(\.\d+)?([eE][-+]?\d*)?/,
token: "constant.numeric"
}, {
token: "comment",
regex: "--.*"
}, {
token : "keyword",
regex : /\.\.|\||:|=|\\|\"|->|<-|\u2192/

2
node_modules/ace/lib/ace/mode/erlang.js wygenerowano vendored
Wyświetl plik

@ -49,7 +49,7 @@ oop.inherits(Mode, TextMode);
(function() {
this.lineCommentStart = "%";
this.blockComment = {start: "/*", end: "*/"};
this.blockComment = null;
this.$id = "ace/mode/erlang";
}).call(Mode.prototype);

2
node_modules/ace/lib/ace/mode/forth.js wygenerowano vendored
Wyświetl plik

@ -50,7 +50,7 @@ oop.inherits(Mode, TextMode);
(function() {
this.lineCommentStart = "--";
this.blockComment = {start: "/*", end: "*/"};
this.blockComment = null;
this.$id = "ace/mode/forth";
}).call(Mode.prototype);

Wyświetl plik

@ -1,4 +1,4 @@
/* ***** BEGIN LICENSE BLOCK *****
/* ***** BEGIN LICENSE BLOCK *****
* Distributed under the BSD license:
*
* Copyright (c) 2014, Ajax.org B.V.
@ -35,7 +35,26 @@ var TextHighlightRules = require("./text_highlight_rules").TextHighlightRules;
var stringEscape = "\\\\(x[0-9A-Fa-f]{2}|[0-7]{3}|[\\\\abfnrtv'\"]|U[0-9A-Fa-f]{8}|u[0-9A-Fa-f]{4})";
var GherkinHighlightRules = function() {
var languages = [{
name: "en",
labels: "Feature|Background|Scenario(?: Outline)?|Examples",
keywords: "Given|When|Then|And|But"
}
/* TODO find a way to enable this when first line in the file is # language: pl
, {
name: "pl",
labels: "Właściwość|Funkcja|Aspekt|Potrzeba biznesowa|Założenia|Scenariusz|Szablon scenariusza|Przykłady",
keywords: "Mając|Zakładając(?:, że)?|Jeżeli|Jeśli|Gdy|Kiedy|Wtedy|Oraz|I|Ale"
}
*/];
var labels = languages.map(function(l) {
return l.labels;
}).join("|");
var keywords = languages.map(function(l) {
return l.keywords;
}).join("|");
// need to include constant ints
this.$rules = {
start : [{
@ -46,7 +65,10 @@ var GherkinHighlightRules = function() {
regex : "#.*$"
}, {
token : "keyword",
regex : "Feature:|Background:|Scenario:|Scenario\ Outline:|Examples:|Given|When|Then|And|But|\\*",
regex : "(?:" + labels + "):|(?:" + keywords + ")\\b",
}, {
token : "keyword",
regex : "\\*",
}, {
token : "string", // multi line """ string start
regex : '"{3}',
@ -71,7 +93,7 @@ var GherkinHighlightRules = function() {
}]
}, {
token : "comment",
regex : "<.+>"
regex : "<[^>]+>"
}, {
token : "comment",
regex : "\\|(?=.)",

1
node_modules/ace/lib/ace/mode/golang.js wygenerowano vendored
Wyświetl plik

@ -11,6 +11,7 @@ var Mode = function() {
this.HighlightRules = GolangHighlightRules;
this.$outdent = new MatchingBraceOutdent();
this.foldingRules = new CStyleFoldMode();
this.$behaviour = new CstyleBehaviour();
};
oop.inherits(Mode, TextMode);

Wyświetl plik

@ -54,7 +54,7 @@ oop.inherits(Mode, TextMode);
(function() {
this.lineCommentStart = "--";
this.blockComment = {start: "/*", end: "*/"};
this.blockComment = null;
this.$id = "ace/mode/haskell";
}).call(Mode.prototype);

Wyświetl plik

@ -99,7 +99,7 @@ var HtmlHighlightRules = function() {
});
this.embedTagRules(CssHighlightRules, "css-", "style");
this.embedTagRules(JavaScriptHighlightRules, "js-", "script");
this.embedTagRules(new JavaScriptHighlightRules({noJSX: true}).getRules(), "js-", "script");
if (this.constructor === HtmlHighlightRules)
this.normalizeRules();

2
node_modules/ace/lib/ace/mode/ini.js wygenerowano vendored
Wyświetl plik

@ -45,7 +45,7 @@ oop.inherits(Mode, TextMode);
(function() {
this.lineCommentStart = ";";
this.blockComment = {start: "/*", end: "*/"};
this.blockComment = null;
this.$id = "ace/mode/ini";
}).call(Mode.prototype);

Wyświetl plik

@ -138,7 +138,7 @@ var JadeHighlightRules = function() {
// Match any tag, id or class. skip AST filters
{
token: "meta.tag.any.jade",
regex: /^\s*(?!\w+\:)(?:[\w]+|(?=\.|#)])/,
regex: /^\s*(?!\w+\:)(?:[\w-]+|(?=\.|#)])/,
next: "tag_single"
},
{

Wyświetl plik

@ -35,6 +35,9 @@ var oop = require("../lib/oop");
var DocCommentHighlightRules = require("./doc_comment_highlight_rules").DocCommentHighlightRules;
var TextHighlightRules = require("./text_highlight_rules").TextHighlightRules;
// TODO: Unicode escape sequences
var identifierRe = "[a-zA-Z\\$_\u00a1-\uffff][a-zA-Z\\d\\$_\u00a1-\uffff]*\\b";
var JavaScriptHighlightRules = function(options) {
// see: https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects
var keywordMapper = this.createKeywordMapper({
@ -68,9 +71,6 @@ var JavaScriptHighlightRules = function(options) {
// keywords which can be followed by regular expressions
var kwBeforeRe = "case|do|else|finally|in|instanceof|return|throw|try|typeof|yield|void";
// TODO: Unicode escape sequences
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
"[0-2][0-7]{0,2}|" + // oct
@ -167,15 +167,6 @@ var JavaScriptHighlightRules = function(options) {
token : "keyword",
regex : "(?:" + kwBeforeRe + ")\\b",
next : "start"
}, {
token : ["punctuation.operator", "support.function"],
regex : /(\.)(s(?:h(?:ift|ow(?:Mod(?:elessDialog|alDialog)|Help))|croll(?:X|By(?:Pages|Lines)?|Y|To)?|t(?:op|rike)|i(?:n|zeToContent|debar|gnText)|ort|u(?:p|b(?:str(?:ing)?)?)|pli(?:ce|t)|e(?:nd|t(?:Re(?:sizable|questHeader)|M(?:i(?:nutes|lliseconds)|onth)|Seconds|Ho(?:tKeys|urs)|Year|Cursor|Time(?:out)?|Interval|ZOptions|Date|UTC(?:M(?:i(?:nutes|lliseconds)|onth)|Seconds|Hours|Date|FullYear)|FullYear|Active)|arch)|qrt|lice|avePreferences|mall)|h(?:ome|andleEvent)|navigate|c(?:har(?:CodeAt|At)|o(?:s|n(?:cat|textual|firm)|mpile)|eil|lear(?:Timeout|Interval)?|a(?:ptureEvents|ll)|reate(?:StyleSheet|Popup|EventObject))|t(?:o(?:GMTString|S(?:tring|ource)|U(?:TCString|pperCase)|Lo(?:caleString|werCase))|est|a(?:n|int(?:Enabled)?))|i(?:s(?:NaN|Finite)|ndexOf|talics)|d(?:isableExternalCapture|ump|etachEvent)|u(?:n(?:shift|taint|escape|watch)|pdateCommands)|j(?:oin|avaEnabled)|p(?:o(?:p|w)|ush|lugins.refresh|a(?:ddings|rse(?:Int|Float)?)|r(?:int|ompt|eference))|e(?:scape|nableExternalCapture|val|lementFromPoint|x(?:p|ec(?:Script|Command)?))|valueOf|UTC|queryCommand(?:State|Indeterm|Enabled|Value)|f(?:i(?:nd|le(?:ModifiedDate|Size|CreatedDate|UpdatedDate)|xed)|o(?:nt(?:size|color)|rward)|loor|romCharCode)|watch|l(?:ink|o(?:ad|g)|astIndexOf)|a(?:sin|nchor|cos|t(?:tachEvent|ob|an(?:2)?)|pply|lert|b(?:s|ort))|r(?:ou(?:nd|teEvents)|e(?:size(?:By|To)|calc|turnValue|place|verse|l(?:oad|ease(?:Capture|Events)))|andom)|g(?:o|et(?:ResponseHeader|M(?:i(?:nutes|lliseconds)|onth)|Se(?:conds|lection)|Hours|Year|Time(?:zoneOffset)?|Da(?:y|te)|UTC(?:M(?:i(?:nutes|lliseconds)|onth)|Seconds|Hours|Da(?:y|te)|FullYear)|FullYear|A(?:ttention|llResponseHeaders)))|m(?:in|ove(?:B(?:y|elow)|To(?:Absolute)?|Above)|ergeAttributes|a(?:tch|rgins|x))|b(?:toa|ig|o(?:ld|rderWidths)|link|ack))\b(?=\()/
}, {
token : ["punctuation.operator", "support.function.dom"],
regex : /(\.)(s(?:ub(?:stringData|mit)|plitText|e(?:t(?:NamedItem|Attribute(?:Node)?)|lect))|has(?:ChildNodes|Feature)|namedItem|c(?:l(?:ick|o(?:se|neNode))|reate(?:C(?:omment|DATASection|aption)|T(?:Head|extNode|Foot)|DocumentFragment|ProcessingInstruction|E(?:ntityReference|lement)|Attribute))|tabIndex|i(?:nsert(?:Row|Before|Cell|Data)|tem)|open|delete(?:Row|C(?:ell|aption)|T(?:Head|Foot)|Data)|focus|write(?:ln)?|a(?:dd|ppend(?:Child|Data))|re(?:set|place(?:Child|Data)|move(?:NamedItem|Child|Attribute(?:Node)?)?)|get(?:NamedItem|Element(?:sBy(?:Name|TagName|ClassName)|ById)|Attribute(?:Node)?)|blur)\b(?=\()/
}, {
token : ["punctuation.operator", "support.constant"],
regex : /(\.)(s(?:ystemLanguage|cr(?:ipts|ollbars|een(?:X|Y|Top|Left))|t(?:yle(?:Sheets)?|atus(?:Text|bar)?)|ibling(?:Below|Above)|ource|uffixes|e(?:curity(?:Policy)?|l(?:ection|f)))|h(?:istory|ost(?:name)?|as(?:h|Focus))|y|X(?:MLDocument|SLDocument)|n(?:ext|ame(?:space(?:s|URI)|Prop))|M(?:IN_VALUE|AX_VALUE)|c(?:haracterSet|o(?:n(?:structor|trollers)|okieEnabled|lorDepth|mp(?:onents|lete))|urrent|puClass|l(?:i(?:p(?:boardData)?|entInformation)|osed|asses)|alle(?:e|r)|rypto)|t(?:o(?:olbar|p)|ext(?:Transform|Indent|Decoration|Align)|ags)|SQRT(?:1_2|2)|i(?:n(?:ner(?:Height|Width)|put)|ds|gnoreCase)|zIndex|o(?:scpu|n(?:readystatechange|Line)|uter(?:Height|Width)|p(?:sProfile|ener)|ffscreenBuffering)|NEGATIVE_INFINITY|d(?:i(?:splay|alog(?:Height|Top|Width|Left|Arguments)|rectories)|e(?:scription|fault(?:Status|Ch(?:ecked|arset)|View)))|u(?:ser(?:Profile|Language|Agent)|n(?:iqueID|defined)|pdateInterval)|_content|p(?:ixelDepth|ort|ersonalbar|kcs11|l(?:ugins|atform)|a(?:thname|dding(?:Right|Bottom|Top|Left)|rent(?:Window|Layer)?|ge(?:X(?:Offset)?|Y(?:Offset)?))|r(?:o(?:to(?:col|type)|duct(?:Sub)?|mpter)|e(?:vious|fix)))|e(?:n(?:coding|abledPlugin)|x(?:ternal|pando)|mbeds)|v(?:isibility|endor(?:Sub)?|Linkcolor)|URLUnencoded|P(?:I|OSITIVE_INFINITY)|f(?:ilename|o(?:nt(?:Size|Family|Weight)|rmName)|rame(?:s|Element)|gColor)|E|whiteSpace|l(?:i(?:stStyleType|n(?:eHeight|kColor))|o(?:ca(?:tion(?:bar)?|lName)|wsrc)|e(?:ngth|ft(?:Context)?)|a(?:st(?:M(?:odified|atch)|Index|Paren)|yer(?:s|X)|nguage))|a(?:pp(?:MinorVersion|Name|Co(?:deName|re)|Version)|vail(?:Height|Top|Width|Left)|ll|r(?:ity|guments)|Linkcolor|bove)|r(?:ight(?:Context)?|e(?:sponse(?:XML|Text)|adyState))|global|x|m(?:imeTypes|ultiline|enubar|argin(?:Right|Bottom|Top|Left))|L(?:N(?:10|2)|OG(?:10E|2E))|b(?:o(?:ttom|rder(?:Width|RightWidth|BottomWidth|Style|Color|TopWidth|LeftWidth))|ufferDepth|elow|ackground(?:Color|Image)))\b/
}, {
token : ["support.constant"],
regex : /that\b/
@ -185,9 +176,13 @@ var JavaScriptHighlightRules = function(options) {
}, {
token : keywordMapper,
regex : identifierRe
}, {
token : "punctuation.operator",
regex : /[.](?![.])/,
next : "property"
}, {
token : "keyword.operator",
regex : /--|\+\+|===|==|=|!=|!==|<=|>=|<<=|>>=|>>>=|<>|<|>|!|&&|\|\||\?\:|[!$%&*+\-~\/^]=?/,
regex : /--|\+\+|\.{3}|===|==|=|!=|!==|<=|>=|<<=|>>=|>>>=|<>|<|>|!|&&|\|\||\?\:|[!$%&*+\-~\/^]=?/,
next : "start"
}, {
token : "punctuation.operator",
@ -205,6 +200,39 @@ var JavaScriptHighlightRules = function(options) {
regex: /^#!.*$/
}
],
property: [{
token : "text",
regex : "\\s+"
}, {
// Sound.play = function play() { }
token : [
"storage.type", "punctuation.operator", "entity.name.function", "text",
"keyword.operator", "text",
"storage.type", "text", "entity.name.function", "text", "paren.lparen"
],
regex : "(" + identifierRe + ")(\\.)(" + identifierRe +")(\\s*)(=)(\\s*)(function)(?:(\\s+)(\\w+))?(\\s*)(\\()",
next: "function_arguments"
}, {
token : "punctuation.operator",
regex : /[.](?![.])/
}, {
token : "support.function",
regex : /(s(?:h(?:ift|ow(?:Mod(?:elessDialog|alDialog)|Help))|croll(?:X|By(?:Pages|Lines)?|Y|To)?|t(?:op|rike)|i(?:n|zeToContent|debar|gnText)|ort|u(?:p|b(?:str(?:ing)?)?)|pli(?:ce|t)|e(?:nd|t(?:Re(?:sizable|questHeader)|M(?:i(?:nutes|lliseconds)|onth)|Seconds|Ho(?:tKeys|urs)|Year|Cursor|Time(?:out)?|Interval|ZOptions|Date|UTC(?:M(?:i(?:nutes|lliseconds)|onth)|Seconds|Hours|Date|FullYear)|FullYear|Active)|arch)|qrt|lice|avePreferences|mall)|h(?:ome|andleEvent)|navigate|c(?:har(?:CodeAt|At)|o(?:s|n(?:cat|textual|firm)|mpile)|eil|lear(?:Timeout|Interval)?|a(?:ptureEvents|ll)|reate(?:StyleSheet|Popup|EventObject))|t(?:o(?:GMTString|S(?:tring|ource)|U(?:TCString|pperCase)|Lo(?:caleString|werCase))|est|a(?:n|int(?:Enabled)?))|i(?:s(?:NaN|Finite)|ndexOf|talics)|d(?:isableExternalCapture|ump|etachEvent)|u(?:n(?:shift|taint|escape|watch)|pdateCommands)|j(?:oin|avaEnabled)|p(?:o(?:p|w)|ush|lugins.refresh|a(?:ddings|rse(?:Int|Float)?)|r(?:int|ompt|eference))|e(?:scape|nableExternalCapture|val|lementFromPoint|x(?:p|ec(?:Script|Command)?))|valueOf|UTC|queryCommand(?:State|Indeterm|Enabled|Value)|f(?:i(?:nd|le(?:ModifiedDate|Size|CreatedDate|UpdatedDate)|xed)|o(?:nt(?:size|color)|rward)|loor|romCharCode)|watch|l(?:ink|o(?:ad|g)|astIndexOf)|a(?:sin|nchor|cos|t(?:tachEvent|ob|an(?:2)?)|pply|lert|b(?:s|ort))|r(?:ou(?:nd|teEvents)|e(?:size(?:By|To)|calc|turnValue|place|verse|l(?:oad|ease(?:Capture|Events)))|andom)|g(?:o|et(?:ResponseHeader|M(?:i(?:nutes|lliseconds)|onth)|Se(?:conds|lection)|Hours|Year|Time(?:zoneOffset)?|Da(?:y|te)|UTC(?:M(?:i(?:nutes|lliseconds)|onth)|Seconds|Hours|Da(?:y|te)|FullYear)|FullYear|A(?:ttention|llResponseHeaders)))|m(?:in|ove(?:B(?:y|elow)|To(?:Absolute)?|Above)|ergeAttributes|a(?:tch|rgins|x))|b(?:toa|ig|o(?:ld|rderWidths)|link|ack))\b(?=\()/
}, {
token : "support.function.dom",
regex : /(s(?:ub(?:stringData|mit)|plitText|e(?:t(?:NamedItem|Attribute(?:Node)?)|lect))|has(?:ChildNodes|Feature)|namedItem|c(?:l(?:ick|o(?:se|neNode))|reate(?:C(?:omment|DATASection|aption)|T(?:Head|extNode|Foot)|DocumentFragment|ProcessingInstruction|E(?:ntityReference|lement)|Attribute))|tabIndex|i(?:nsert(?:Row|Before|Cell|Data)|tem)|open|delete(?:Row|C(?:ell|aption)|T(?:Head|Foot)|Data)|focus|write(?:ln)?|a(?:dd|ppend(?:Child|Data))|re(?:set|place(?:Child|Data)|move(?:NamedItem|Child|Attribute(?:Node)?)?)|get(?:NamedItem|Element(?:sBy(?:Name|TagName|ClassName)|ById)|Attribute(?:Node)?)|blur)\b(?=\()/
}, {
token : "support.constant",
regex : /(s(?:ystemLanguage|cr(?:ipts|ollbars|een(?:X|Y|Top|Left))|t(?:yle(?:Sheets)?|atus(?:Text|bar)?)|ibling(?:Below|Above)|ource|uffixes|e(?:curity(?:Policy)?|l(?:ection|f)))|h(?:istory|ost(?:name)?|as(?:h|Focus))|y|X(?:MLDocument|SLDocument)|n(?:ext|ame(?:space(?:s|URI)|Prop))|M(?:IN_VALUE|AX_VALUE)|c(?:haracterSet|o(?:n(?:structor|trollers)|okieEnabled|lorDepth|mp(?:onents|lete))|urrent|puClass|l(?:i(?:p(?:boardData)?|entInformation)|osed|asses)|alle(?:e|r)|rypto)|t(?:o(?:olbar|p)|ext(?:Transform|Indent|Decoration|Align)|ags)|SQRT(?:1_2|2)|i(?:n(?:ner(?:Height|Width)|put)|ds|gnoreCase)|zIndex|o(?:scpu|n(?:readystatechange|Line)|uter(?:Height|Width)|p(?:sProfile|ener)|ffscreenBuffering)|NEGATIVE_INFINITY|d(?:i(?:splay|alog(?:Height|Top|Width|Left|Arguments)|rectories)|e(?:scription|fault(?:Status|Ch(?:ecked|arset)|View)))|u(?:ser(?:Profile|Language|Agent)|n(?:iqueID|defined)|pdateInterval)|_content|p(?:ixelDepth|ort|ersonalbar|kcs11|l(?:ugins|atform)|a(?:thname|dding(?:Right|Bottom|Top|Left)|rent(?:Window|Layer)?|ge(?:X(?:Offset)?|Y(?:Offset)?))|r(?:o(?:to(?:col|type)|duct(?:Sub)?|mpter)|e(?:vious|fix)))|e(?:n(?:coding|abledPlugin)|x(?:ternal|pando)|mbeds)|v(?:isibility|endor(?:Sub)?|Linkcolor)|URLUnencoded|P(?:I|OSITIVE_INFINITY)|f(?:ilename|o(?:nt(?:Size|Family|Weight)|rmName)|rame(?:s|Element)|gColor)|E|whiteSpace|l(?:i(?:stStyleType|n(?:eHeight|kColor))|o(?:ca(?:tion(?:bar)?|lName)|wsrc)|e(?:ngth|ft(?:Context)?)|a(?:st(?:M(?:odified|atch)|Index|Paren)|yer(?:s|X)|nguage))|a(?:pp(?:MinorVersion|Name|Co(?:deName|re)|Version)|vail(?:Height|Top|Width|Left)|ll|r(?:ity|guments)|Linkcolor|bove)|r(?:ight(?:Context)?|e(?:sponse(?:XML|Text)|adyState))|global|x|m(?:imeTypes|ultiline|enubar|argin(?:Right|Bottom|Top|Left))|L(?:N(?:10|2)|OG(?:10E|2E))|b(?:o(?:ttom|rder(?:Width|RightWidth|BottomWidth|Style|Color|TopWidth|LeftWidth))|ufferDepth|elow|ackground(?:Color|Image)))\b/
}, {
token : "identifier",
regex : identifierRe
}, {
regex: "",
token: "empty",
next: "no_regex"
}
],
// regular expressions are only allowed after certain tokens. This
// makes sure we don't mix up regexps with the divison operator
"start": [
@ -367,7 +395,7 @@ var JavaScriptHighlightRules = function(options) {
if (val == "}" && stack.length) {
stack.shift();
this.next = stack.shift();
if (this.next.indexOf("string") != -1)
if (this.next.indexOf("string") != -1 || this.next.indexOf("jsx") != -1)
return "paren.quasi.end";
}
return val == "{" ? "paren.lparen" : "paren.rparen";
@ -391,6 +419,9 @@ var JavaScriptHighlightRules = function(options) {
defaultToken: "string.quasi"
}]
});
if (!options || !options.noJSX)
JSX.call(this);
}
this.embedRules(DocCommentHighlightRules, "doc-",
@ -401,5 +432,104 @@ var JavaScriptHighlightRules = function(options) {
oop.inherits(JavaScriptHighlightRules, TextHighlightRules);
function JSX() {
var tagRegex = identifierRe.replace("\\d", "\\d\\-");
var jsxTag = {
onMatch : function(val, state, stack) {
var offset = val.charAt(1) == "/" ? 2 : 1;
if (offset == 1) {
if (state != this.nextState)
stack.unshift(this.next, this.nextState, 0);
else
stack.unshift(this.next);
stack[2]++;
} else if (offset == 2) {
if (state == this.nextState) {
stack[1]--;
if (!stack[1] || stack[1] < 0) {
stack.shift();
stack.shift();
}
}
}
return [{
type: "meta.tag.punctuation." + (offset == 1 ? "" : "end-") + "tag-open.xml",
value: val.slice(0, offset)
}, {
type: "meta.tag.tag-name.xml",
value: val.substr(offset)
}];
},
regex : "</?" + tagRegex + "",
next: "jsxAttributes",
nextState: "jsx"
};
this.$rules.start.unshift(jsxTag);
var jsxJsRule = {
regex: "{",
token: "paren.quasi.start",
push: "start"
};
this.$rules.jsx = [
jsxJsRule,
jsxTag,
{include : "reference"},
{defaultToken: "string"}
];
this.$rules.jsxAttributes = [{
token : "meta.tag.punctuation.tag-close.xml",
regex : "/?>",
onMatch : function(value, currentState, stack) {
if (currentState == stack[0])
stack.shift();
if (value.length == 2) {
if (stack[0] == this.nextState)
stack[1]--;
if (!stack[1] || stack[1] < 0) {
stack.splice(0, 2);
}
}
this.next = stack[0] || "start";
return [{type: this.token, value: value}];
},
nextState: "jsx"
},
jsxJsRule,
{
token : "entity.other.attribute-name.xml",
regex : tagRegex
}, {
token : "keyword.operator.attribute-equals.xml",
regex : "="
}, {
token : "text.tag-whitespace.xml",
regex : "\\s+"
}, {
token : "string.attribute-value.xml",
regex : "'",
stateName : "jsx_attr_q",
push : [
{token : "string.attribute-value.xml", regex: "'", next: "pop"},
jsxJsRule,
{include : "reference"},
{defaultToken : "string.attribute-value.xml"}
]
}, {
token : "string.attribute-value.xml",
regex : '"',
stateName : "jsx_attr_qq",
push : [
jsxJsRule,
{token : "string.attribute-value.xml", regex: '"', next: "pop"},
{include : "reference"},
{defaultToken : "string.attribute-value.xml"}
]
}];
this.$rules.reference = [{
token : "constant.language.escape.reference.xml",
regex : "(?:&#[0-9]+;)|(?:&#x[0-9a-fA-F]+;)|(?:&[a-zA-Z0-9_:\\.-]+;)"
}];
}
exports.JavaScriptHighlightRules = JavaScriptHighlightRules;
});

Wyświetl plik

@ -50,7 +50,7 @@ var JspHighlightRules = function() {
push : "jsp-dcomment"
}, {
token : "meta.tag", // jsp open tag
regex : "<%@?|<%=?|<jsp:[^>]+>",
regex : "<%@?|<%=?|<%!?|<jsp:[^>]+>",
push : "jsp-start"
}
];

File diff suppressed because one or more lines are too long

Wyświetl plik

@ -136,6 +136,7 @@ var MarkdownHighlightRules = function() {
// code block
"allowBlock": [
{token : "support.function", regex : "^ {4}.+", next : "allowBlock"},
{token : "empty_line", regex : '^$', next: "allowBlock"},
{token : "empty", regex : "", next : "start"}
],

52
node_modules/ace/lib/ace/mode/maze.js wygenerowano vendored 100644
Wyświetl plik

@ -0,0 +1,52 @@
/* ***** BEGIN LICENSE BLOCK *****
* Distributed under the BSD license:
*
* Copyright (c) 2012, Ajax.org B.V.
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
* * Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* * Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* * Neither the name of Ajax.org B.V. nor the
* names of its contributors may be used to endorse or promote products
* derived from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
* DISCLAIMED. IN NO EVENT SHALL AJAX.ORG B.V. BE LIABLE FOR ANY
* DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*
* ***** END LICENSE BLOCK ***** */
define(function(require, exports, module) {
"use strict";
var oop = require("../lib/oop");
var TextMode = require("./text").Mode;
var MazeHighlightRules = require("./maze_highlight_rules").MazeHighlightRules;
var FoldMode = require("./folding/cstyle").FoldMode;
var Mode = function() {
this.HighlightRules = MazeHighlightRules;
this.foldingRules = new FoldMode();
};
oop.inherits(Mode, TextMode);
(function() {
this.lineCommentStart = "//";
this.$id = "ace/mode/maze";
}).call(Mode.prototype);
exports.Mode = Mode;
});

Wyświetl plik

@ -0,0 +1,154 @@
/* ***** BEGIN LICENSE BLOCK *****
* Distributed under the BSD license:
*
* Copyright (c) 2012, Ajax.org B.V.
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
* * Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* * Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* * Neither the name of Ajax.org B.V. nor the
* names of its contributors may be used to endorse or promote products
* derived from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
* DISCLAIMED. IN NO EVENT SHALL AJAX.ORG B.V. BE LIABLE FOR ANY
* DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*
* ***** END LICENSE BLOCK ***** */
define(function(require, exports, module) {
"use strict";
var oop = require("../lib/oop");
var TextHighlightRules = require("./text_highlight_rules").TextHighlightRules;
var MazeHighlightRules = function() {
// regexp must not have capturing parentheses. Use (?:) instead.
// regexps are ordered -> the first match is used
this.$rules = {
start: [{
token: "keyword.control",
regex: /##|``/,
comment: "Wall"
}, {
token: "entity.name.tag",
regex: /\.\./,
comment: "Path"
}, {
token: "keyword.control",
regex: /<>/,
comment: "Splitter"
}, {
token: "entity.name.tag",
regex: /\*[\*A-Za-z0-9]/,
comment: "Signal"
}, {
token: "constant.numeric",
regex: /[0-9]{2}/,
comment: "Pause"
}, {
token: "keyword.control",
regex: /\^\^/,
comment: "Start"
}, {
token: "keyword.control",
regex: /\(\)/,
comment: "Hole"
}, {
token: "support.function",
regex: />>/,
comment: "Out"
}, {
token: "support.function",
regex: />\//,
comment: "Ln Out"
}, {
token: "support.function",
regex: /<</,
comment: "In"
}, {
token: "keyword.control",
regex: /--/,
comment: "One use"
}, {
token: "constant.language",
regex: /%[LRUDNlrudn]/,
comment: "Direction"
}, {
token: [
"entity.name.function",
"keyword.other",
"keyword.operator",
"keyword.other",
"keyword.operator",
"constant.numeric",
"keyword.operator",
"keyword.other",
"keyword.operator",
"constant.numeric",
"string.quoted.double",
"string.quoted.single"
],
regex: /([A-Za-z][A-Za-z0-9])( *-> *)(?:([-+*\/]=)( *)((?:-)?)([0-9]+)|(=)( *)(?:((?:-)?)([0-9]+)|("[^"]*")|('[^']*')))/,
comment: "Assignment function"
}, {
token: [
"entity.name.function",
"keyword.other",
"keyword.control",
"keyword.other",
"keyword.operator",
"keyword.other",
"keyword.operator",
"constant.numeric",
"entity.name.tag",
"keyword.other",
"keyword.control",
"keyword.other",
"constant.language",
"keyword.other",
"keyword.control",
"keyword.other",
"constant.language"
],
regex: /([A-Za-z][A-Za-z0-9])( *-> *)(IF|if)( *)(?:([<>]=?|==)( *)((?:-)?)([0-9]+)|(\*[\*A-Za-z0-9]))( *)(THEN|then)( *)(%[LRUDNlrudn])(?:( *)(ELSE|else)( *)(%[LRUDNlrudn]))?/,
comment: "Equality Function"
}, {
token: "entity.name.function",
regex: /[A-Za-z][A-Za-z0-9]/,
comment: "Function cell"
}, {
token: "comment.line.double-slash",
regex: / *\/\/.*/,
comment: "Comment"
}]
};
this.normalizeRules();
};
MazeHighlightRules.metaData = {
fileTypes: ["mz"],
name: "Maze",
scopeName: "source.maze"
};
oop.inherits(MazeHighlightRules, TextHighlightRules);
exports.MazeHighlightRules = MazeHighlightRules;
});

Wyświetl plik

@ -45,7 +45,6 @@ oop.inherits(Mode, TextMode);
(function() {
this.lineCommentStart = "#";
this.getNextLineIndent = function(state, line, tab) {
var indent = this.$getIndent(line);

Wyświetl plik

@ -39,7 +39,7 @@ var MysqlHighlightRules = function() {
var mySqlKeywords = /*sql*/ "alter|and|as|asc|between|count|create|delete|desc|distinct|drop|from|having|in|insert|into|is|join|like|not|on|or|order|select|set|table|union|update|values|where"
/*mysql*/ + "|accessible|action|add|after|algorithm|all|analyze|asensitive|at|authors|auto_increment|autocommit|avg|avg_row_length|before|binary|binlog|both|btree|cache|call|cascade|cascaded|case|catalog_name|chain|change|changed|character|check|checkpoint|checksum|class_origin|client_statistics|close|coalesce|code|collate|collation|collations|column|columns|comment|commit|committed|completion|concurrent|condition|connection|consistent|constraint|contains|continue|contributors|convert|cross|current_date|current_time|current_timestamp|current_user|cursor|data|database|databases|day_hour|day_microsecond|day_minute|day_second|deallocate|dec|declare|default|delay_key_write|delayed|delimiter|des_key_file|describe|deterministic|dev_pop|dev_samp|deviance|directory|disable|discard|distinctrow|div|dual|dumpfile|each|elseif|enable|enclosed|end|ends|engine|engines|enum|errors|escape|escaped|even|event|events|every|execute|exists|exit|explain|extended|fast|fetch|field|fields|first|flush|for|force|foreign|found_rows|full|fulltext|function|general|global|grant|grants|group|groupby_concat|handler|hash|help|high_priority|hosts|hour_microsecond|hour_minute|hour_second|if|ignore|ignore_server_ids|import|index|index_statistics|infile|inner|innodb|inout|insensitive|insert_method|install|interval|invoker|isolation|iterate|key|keys|kill|language|last|leading|leave|left|level|limit|linear|lines|list|load|local|localtime|localtimestamp|lock|logs|low_priority|master|master_heartbeat_period|master_ssl_verify_server_cert|masters|match|max|max_rows|maxvalue|message_text|middleint|migrate|min|min_rows|minute_microsecond|minute_second|mod|mode|modifies|modify|mutex|mysql_errno|natural|next|no|no_write_to_binlog|offline|offset|one|online|open|optimize|option|optionally|out|outer|outfile|pack_keys|parser|partition|partitions|password|phase|plugin|plugins|prepare|preserve|prev|primary|privileges|procedure|processlist|profile|profiles|purge|query|quick|range|read|read_write|reads|real|rebuild|recover|references|regexp|relaylog|release|remove|rename|reorganize|repair|repeatable|replace|require|resignal|restrict|resume|return|returns|revoke|right|rlike|rollback|rollup|row|row_format|rtree|savepoint|schedule|schema|schema_name|schemas|second_microsecond|security|sensitive|separator|serializable|server|session|share|show|signal|slave|slow|smallint|snapshot|soname|spatial|specific|sql|sql_big_result|sql_buffer_result|sql_cache|sql_calc_found_rows|sql_no_cache|sql_small_result|sqlexception|sqlstate|sqlwarning|ssl|start|starting|starts|status|std|stddev|stddev_pop|stddev_samp|storage|straight_join|subclass_origin|sum|suspend|table_name|table_statistics|tables|tablespace|temporary|terminated|to|trailing|transaction|trigger|triggers|truncate|uncommitted|undo|uninstall|unique|unlock|upgrade|usage|use|use_frm|user|user_resources|user_statistics|using|utc_date|utc_time|utc_timestamp|value|variables|varying|view|views|warnings|when|while|with|work|write|xa|xor|year_month|zerofill|begin|do|then|else|loop|repeat";
var builtins = "by|bool|boolean|bit|blob|decimal|double|enum|float|long|longblob|longtext|medium|mediumblob|mediumint|mediumtext|time|timestamp|tinyblob|tinyint|tinytext|text|bigint|int|int1|int2|int3|int4|int8|integer|float|float4|float8|double|char|varbinary|varchar|varcharacter|precision|date|datetime|year|unsigned|signed|numeric"
var builtins = "by|bool|boolean|bit|blob|decimal|double|enum|float|long|longblob|longtext|medium|mediumblob|mediumint|mediumtext|time|timestamp|tinyblob|tinyint|tinytext|text|bigint|int|int1|int2|int3|int4|int8|integer|float|float4|float8|double|char|varbinary|varchar|varcharacter|precision|date|datetime|year|unsigned|signed|numeric|ucase|lcase|mid|len|round|rank|now|format|coalesce|ifnull|isnull|nvl"
var variable = "charset|clear|connect|edit|ego|exit|go|help|nopager|notee|nowarning|pager|print|prompt|quit|rehash|source|status|system|tee"
//operatorChars: /^[*+\-%<>!=&|^]/,

4
node_modules/ace/lib/ace/mode/perl.js wygenerowano vendored
Wyświetl plik

@ -50,8 +50,8 @@ oop.inherits(Mode, TextMode);
this.lineCommentStart = "#";
this.blockComment = [
{start: "=begin", end: "=cut"},
{start: "=item", end: "=cut"}
{start: "=begin", end: "=cut", lineStartOnly: true},
{start: "=item", end: "=cut", lineStartOnly: true}
];

Wyświetl plik

@ -90,7 +90,7 @@ var PhpLangHighlightRules = function() {
'cairosurface|cairosurfacepattern|cairosurfacetype|cairosvgsurface|cairosvgversion|cairotoyfontface|cal_days_in_month|cal_from_jd|cal_info|' +
'cal_to_jd|calcul_hmac|calculhmac|call_user_func|call_user_func_array|call_user_method|call_user_method_array|callbackfilteriterator|ceil|' +
'chdb|chdb_create|chdir|checkdate|checkdnsrr|chgrp|chmod|chop|chown|chr|chroot|chunk_split|class_alias|class_exists|class_implements|' +
'class_parents|classkit_import|classkit_method_add|classkit_method_copy|classkit_method_redefine|classkit_method_remove|' +
'class_parents|class_uses|classkit_import|classkit_method_add|classkit_method_copy|classkit_method_redefine|classkit_method_remove|' +
'classkit_method_rename|clearstatcache|clone|closedir|closelog|collator|com|com_addref|com_create_guid|com_event_sink|com_get|' +
'com_get_active_object|com_invoke|com_isenum|com_load|com_load_typelib|com_message_pump|com_print_typeinfo|com_propget|com_propput|' +
'com_propset|com_release|com_set|compact|connection_aborted|connection_status|connection_timeout|constant|construct|construct|construct|' +
@ -187,7 +187,7 @@ var PhpLangHighlightRules = function() {
'geoip_database_info|geoip_db_avail|geoip_db_filename|geoip_db_get_all_info|geoip_id_by_name|geoip_isp_by_name|geoip_org_by_name|' +
'geoip_record_by_name|geoip_region_by_name|geoip_region_name_by_code|geoip_time_zone_by_country_and_region|getMeta|getNamed|getValue|' +
'get_browser|get_called_class|get_cfg_var|get_class|get_class_methods|get_class_vars|get_current_user|get_declared_classes|' +
'get_declared_interfaces|get_defined_constants|get_defined_functions|get_defined_vars|get_extension_funcs|get_headers|' +
'get_declared_interfaces|get_declared_traits|get_defined_constants|get_defined_functions|get_defined_vars|get_extension_funcs|get_headers|' +
'get_html_translation_table|get_include_path|get_included_files|get_loaded_extensions|get_magic_quotes_gpc|get_magic_quotes_runtime|' +
'get_meta_tags|get_object_vars|get_parent_class|get_required_files|get_resource_type|getallheaders|getconstant|getconstants|getconstructor|' +
'getcwd|getdate|getdefaultproperties|getdoccomment|getendline|getenv|getextension|getextensionname|getfilename|gethostbyaddr|gethostbyname|' +
@ -778,7 +778,7 @@ var PhpLangHighlightRules = function() {
'tidy_get_output|tidy_load_config|tidy_reset_config|tidy_save_config|tidy_set_encoding|tidy_setopt|tidy_warning_count|tidynode|time|' +
'time_nanosleep|time_sleep_until|timezone_abbreviations_list|timezone_identifiers_list|timezone_location_get|timezone_name_from_abbr|' +
'timezone_name_get|timezone_offset_get|timezone_open|timezone_transitions_get|timezone_version_get|tmpfile|token_get_all|token_name|' +
'tokyotyrant|tokyotyrantquery|tokyotyranttable|tostring|tostring|touch|transliterator|traversable|trigger_error|trim|uasort|ucfirst|' +
'tokyotyrant|tokyotyrantquery|tokyotyranttable|tostring|tostring|touch|trait_exists|transliterator|traversable|trigger_error|trim|uasort|ucfirst|' +
'ucwords|udm_add_search_limit|udm_alloc_agent|udm_alloc_agent_array|udm_api_version|udm_cat_list|udm_cat_path|udm_check_charset|' +
'udm_check_stored|udm_clear_search_limits|udm_close_stored|udm_crc32|udm_errno|udm_error|udm_find|udm_free_agent|udm_free_ispell_data|' +
'udm_free_res|udm_get_doc_count|udm_get_res_field|udm_get_res_param|udm_hash32|udm_load_ispell_data|udm_open_stored|udm_set_agent_param|' +
@ -837,7 +837,7 @@ var PhpLangHighlightRules = function() {
var keywords = lang.arrayToMap(
('abstract|and|array|as|break|case|catch|class|clone|const|continue|declare|default|do|else|elseif|enddeclare|endfor|endforeach|endif|' +
'endswitch|endwhile|extends|final|for|foreach|function|global|goto|if|implements|interface|instanceof|namespace|new|or|private|protected|' +
'public|static|switch|throw|try|use|var|while|xor').split('|')
'public|static|switch|throw|trait|try|use|var|while|xor').split('|')
);
// http://php.net/manual/en/reserved.keywords.php

2
node_modules/ace/lib/ace/mode/rust.js wygenerowano vendored
Wyświetl plik

@ -50,7 +50,7 @@ oop.inherits(Mode, TextMode);
(function() {
this.lineCommentStart = "//";
this.blockComment = {start: "/*", end: "*/"};
this.blockComment = {start: "/*", end: "*/", nestable: true};
this.$id = "ace/mode/rust";
}).call(Mode.prototype);

Wyświetl plik

@ -41,9 +41,12 @@ var RustHighlightRules = function() {
// regexp must not have capturing parentheses. Use (?:) instead.
// regexps are ordered -> the first match is used
this.$rules = { start:
this.$rules = { start:
[ { token: 'variable.other.source.rust',
regex: '\'[a-zA-Z_][a-zA-Z0-9_]*[^\\\']' },
// `(?![\\\'])` to keep a lifetime name highlighting from continuing one character
// past the name. The end `\'` will block this from matching for a character like
// `'a'` (it should have character highlighting, not variable highlighting).
regex: '\'[a-zA-Z_][a-zA-Z0-9_]*(?![\\\'])' },
{ token: 'string.quoted.single.source.rust',
regex: "'(?:[^'\\\\]|" + stringEscape + ")'" },
{
@ -92,11 +95,31 @@ var RustHighlightRules = function() {
{ token: 'storage.type.source.rust',
regex: '\\b(?:Self|isize|usize|char|bool|u8|u16|u32|u64|f16|f32|f64|i8|i16|i32|i64|str|option|either|c_float|c_double|c_void|FILE|fpos_t|DIR|dirent|c_char|c_schar|c_uchar|c_short|c_ushort|c_int|c_uint|c_long|c_ulong|size_t|ptrdiff_t|clock_t|time_t|c_longlong|c_ulonglong|intptr_t|uintptr_t|off_t|dev_t|ino_t|pid_t|mode_t|ssize_t)\\b' },
{ token: 'variable.language.source.rust', regex: '\\bself\\b' },
{ token: 'comment.line.doc.source.rust',
regex: '//!.*$' },
{ token: 'comment.line.double-dash.source.rust',
regex: '//.*$' },
{ token: 'comment.start.block.source.rust',
regex: '/\\*',
stateName: 'comment',
push:
[ { token: 'comment.start.block.source.rust',
regex: '/\\*',
push: 'comment' },
{ token: 'comment.end.block.source.rust',
regex: '\\*/',
next: 'pop' },
{ defaultToken: 'comment.block.source.rust' } ] },
{ token: 'keyword.operator',
regex: /[$]|->|--?|\+\+?|==?|<<=|>>=|[<>]=?|[&]{2}|[|]{2}|[$]|[|!&^*\-+%/]=?/ },
// `[*/](?![*/])=?` is separated because `//` and `/* */` become comments and must be
// guarded against. This states either `*` or `/` may be matched as long as the match
// it isn't followed by either of the two. An `=` may be on the end.
regex: /\$|[-=]>|[-+%^=!&|<>]=?|[*/](?![*/])=?/ },
{ token : "punctuation.operator", regex : /[?:,;.]/ },
{ token : "paren.lparen", regex : /[\[({]/ },
{ token : "paren.rparen", regex : /[\])}]/ },
{ token : "paren.rparen", regex : /[\])}]/ },
{ token: 'constant.language.source.rust',
regex: '\\b(?:true|false|Some|None|Ok|Err)\\b' },
{ token: 'support.constant.source.rust',
@ -110,32 +133,7 @@ var RustHighlightRules = function() {
{ token: 'constant.numeric.binary.source.rust',
regex: '\\b(?:0b[01_]+|0b[01_]+(?:u|us|u8|u16|u32|u64)|0b[01_]+(?:i|is|i8|i16|i32|i64))\\b' },
{ token: 'constant.numeric.float.source.rust',
regex: '[0-9][0-9_]*(?:f32|f64|f)|[0-9][0-9_]*[eE][+-]=[0-9_]+|[0-9][0-9_]*[eE][+-]=[0-9_]+(?:f32|f64|f)|[0-9][0-9_]*\\.[0-9_]+|[0-9][0-9_]*\\.[0-9_]+(?:f32|f64|f)|[0-9][0-9_]*\\.[0-9_]+%[eE][+-]=[0-9_]+|[0-9][0-9_]*\\.[0-9_]+%[eE][+-]=[0-9_]+(?:f32|f64|f)' },
{ token: 'comment.line.documentation.source.rust',
regex: '//!.*$',
push_:
[ { token: 'comment.line.documentation.source.rust',
regex: '$',
next: 'pop' },
{ defaultToken: 'comment.line.documentation.source.rust' } ] },
{ token: 'comment.line.double-dash.source.rust',
regex: '//.*$',
push_:
[ { token: 'comment.line.double-dash.source.rust',
regex: '$',
next: 'pop' },
{ defaultToken: 'comment.line.double-dash.source.rust' } ] },
{ token: 'comment.start.block.source.rust',
regex: '/\\*',
stateName: 'comment',
push:
[ { token: 'comment.start.block.source.rust',
regex: '/\\*',
push: 'comment' },
{ token: 'comment.end.block.source.rust',
regex: '\\*/',
next: 'pop' },
{ defaultToken: 'comment.block.source.rust' } ] } ] }
regex: '[0-9][0-9_]*(?:f32|f64|f)|[0-9][0-9_]*[eE][+-]=[0-9_]+|[0-9][0-9_]*[eE][+-]=[0-9_]+(?:f32|f64|f)|[0-9][0-9_]*\\.[0-9_]+|[0-9][0-9_]*\\.[0-9_]+(?:f32|f64|f)|[0-9][0-9_]*\\.[0-9_]+%[eE][+-]=[0-9_]+|[0-9][0-9_]*\\.[0-9_]+%[eE][+-]=[0-9_]+(?:f32|f64|f)' } ] }
this.normalizeRules();
};

Wyświetl plik

@ -7,11 +7,12 @@ var TextHighlightRules = require("./text_highlight_rules").TextHighlightRules;
var ScalaHighlightRules = function() {
// taken from http://download.oracle.com/javase/tutorial/java/nutsandbolts/_keywords.html
var keywords = (
"case|default|do|else|for|if|match|while|throw|return|try|catch|finally|yield|" +
"abstract|class|def|extends|final|forSome|implicit|implicits|import|lazy|new|object|" +
"override|package|private|protected|sealed|super|this|trait|type|val|var|with"
"case|default|do|else|for|if|match|while|throw|return|try|trye|catch|finally|yield|" +
"abstract|class|def|extends|final|forSome|implicit|implicits|import|lazy|new|object|null|" +
"override|package|private|protected|sealed|super|this|trait|type|val|var|with|" +
"assert|assume|require|print|println|printf|readLine|readBoolean|readByte|readShort|" + // package scala
"readChar|readInt|readLong|readFloat|readDouble" // package scala
);
var buildinConstants = ("true|false");
@ -43,7 +44,13 @@ var ScalaHighlightRules = function() {
"Exception|ThreadDeath|Error|Throwable|System|ClassLoader|"+
"Cloneable|Class|CharSequence|Comparable|String|Object|" +
"Unit|Any|AnyVal|AnyRef|Null|ScalaObject|Singleton|Seq|Iterable|List|" +
"Option|Array|Char|Byte|Short|Int|Long|Nothing"
"Option|Array|Char|Byte|Int|Long|Nothing|" +
"App|Application|BufferedIterator|BigDecimal|BigInt|Console|Either|" +
"Enumeration|Equiv|Fractional|Function|IndexedSeq|Integral|Iterator|" +
"Map|Numeric|Nil|NotNull|Ordered|Ordering|PartialFunction|PartialOrdering|" +
"Product|Proxy|Range|Responder|Seq|Serializable|Set|Specializable|Stream|" +
"StringContext|Symbol|Traversable|TraversableOnce|Tuple|Vector|Pair|Triple"
);

Wyświetl plik

@ -26,16 +26,8 @@
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*
*
* Contributor(s):
*
*
*
* ***** END LICENSE BLOCK ***** */
/*
THIS FILE WAS AUTOGENERATED BY mode.tmpl.js
*/
define(function(require, exports, module) {
"use strict";

Wyświetl plik

@ -84,9 +84,8 @@ var SoyTemplateHighlightRules = function() {
'#comment-line':
[ { token:
[ 'comment.line.double-slash.soy',
'punctuation.definition.comment.soy',
'comment.line.double-slash.soy' ],
regex: '(\\s+)(//)(.*$)' } ],
regex: '(//)(.*$)' } ],
'#comment-block':
[ { token: 'punctuation.definition.comment.begin.soy',
regex: '/\\*(?!\\*)',

Wyświetl plik

@ -48,7 +48,7 @@ var SqlHighlightRules = function() {
var builtinFunctions = (
"avg|count|first|last|max|min|sum|ucase|lcase|mid|len|round|rank|now|format|" +
"coalesce|ifnull|isnull|nv|"
"coalesce|ifnull|isnull|nvl"
);
var dataTypes = (

60
node_modules/ace/lib/ace/mode/swift.js wygenerowano vendored 100644
Wyświetl plik

@ -0,0 +1,60 @@
/* ***** BEGIN LICENSE BLOCK *****
* Distributed under the BSD license:
*
* Copyright (c) 2012, Ajax.org B.V.
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
* * Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* * Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* * Neither the name of Ajax.org B.V. nor the
* names of its contributors may be used to endorse or promote products
* derived from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
* DISCLAIMED. IN NO EVENT SHALL AJAX.ORG B.V. BE LIABLE FOR ANY
* DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*
* ***** END LICENSE BLOCK ***** */
/*
THIS FILE WAS AUTOGENERATED BY mode.tmpl.js
*/
define(function(require, exports, module) {
"use strict";
var oop = require("../lib/oop");
var TextMode = require("./text").Mode;
var HighlightRules = require("./swift_highlight_rules").HighlightRules;
var CstyleBehaviour = require("./behaviour/cstyle").CstyleBehaviour;
// TODO: pick appropriate fold mode
var FoldMode = require("./folding/cstyle").FoldMode;
var Mode = function() {
this.HighlightRules = HighlightRules;
this.foldingRules = new FoldMode();
this.$behaviour = new CstyleBehaviour();
};
oop.inherits(Mode, TextMode);
(function() {
this.lineCommentStart = "//";
this.blockComment = {start: "/*", end: "*/", nestable: true};
this.$id = "ace/mode/swift"
}).call(Mode.prototype);
exports.Mode = Mode;
});

Wyświetl plik

@ -0,0 +1,196 @@
/* ***** BEGIN LICENSE BLOCK *****
* Distributed under the BSD license:
*
* Copyright (c) 2012, Ajax.org B.V.
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
* * Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* * Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* * Neither the name of Ajax.org B.V. nor the
* names of its contributors may be used to endorse or promote products
* derived from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
* DISCLAIMED. IN NO EVENT SHALL AJAX.ORG B.V. BE LIABLE FOR ANY
* DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*
* ***** END LICENSE BLOCK ***** */
define(function(require, exports, module) {
"use strict";
var oop = require("../lib/oop");
var lang = require("../lib/lang");
var DocCommentHighlightRules = require("./doc_comment_highlight_rules").DocCommentHighlightRules;
var TextHighlightRules = require("./text_highlight_rules").TextHighlightRules;
var SwiftHighlightRules = function() {
var keywordMapper = this.createKeywordMapper({
"variable.language": "",
"keyword": "__COLUMN__|__FILE__|__FUNCTION__|__LINE__"
+ "|as|associativity|break|case|class|continue|default|deinit|didSet"
+ "|do|dynamicType|else|enum|extension|fallthrough|for|func|get|if|import"
+ "|in|infix|init|inout|is|left|let|let|mutating|new|none|nonmutating"
+ "|operator|override|postfix|precedence|prefix|protocol|return|right"
+ "|safe|Self|self|set|struct|subscript|switch|Type|typealias"
+ "|unowned|unsafe|var|weak|where|while|willSet"
+ "|convenience|dynamic|final|infix|lazy|mutating|nonmutating|optional|override|postfix"
+ "|prefix|required|static",
"storage.type": "bool|double|Double"
+ "|extension|float|Float|int|Int|private|public|string|String",
"constant.language":
"false|Infinity|NaN|nil|no|null|null|off|on|super|this|true|undefined|yes",
"support.function":
""
}, "identifier");
function string(start, options) {
var nestable = options.nestable || options.interpolation;
var interpStart = options.interpolation && options.interpolation.nextState || "start";
var mainRule = {
regex: start + (options.multiline ? "" : "(?=.)"),
token: "string.start"
};
var nextState = [
options.escape && {
regex: options.escape,
token: "character.escape"
},
options.interpolation && {
token : "paren.quasi.start",
regex : lang.escapeRegExp(options.interpolation.lead + options.interpolation.open),
push : interpStart
},
options.error && {
regex: options.error,
token: "error.invalid"
},
{
regex: start + (options.multiline ? "" : "|$"),
token: "string.end",
next: nestable ? "pop" : "start"
}, {
defaultToken: "string"
}
].filter(Boolean);
if (nestable)
mainRule.push = nextState;
else
mainRule.next = nextState;
if (!options.interpolation)
return mainRule;
var open = options.interpolation.open;
var close = options.interpolation.close;
var counter = {
regex: "[" + lang.escapeRegExp(open + close) + "]",
onMatch: function(val, state, stack) {
this.next = val == open ? this.nextState : "";
if (val == open && stack.length) {
stack.unshift("start", state);
return "paren";
}
if (val == close && stack.length) {
stack.shift();
this.next = stack.shift();
if (this.next.indexOf("string") != -1)
return "paren.quasi.end";
}
return val == open ? "paren.lparen" : "paren.rparen";
},
nextState: interpStart
}
return [counter, mainRule];
}
function comments() {
return [{
token : "comment",
regex : "\\/\\/(?=.)",
next : [
DocCommentHighlightRules.getTagRule(),
{token : "comment", regex : "$|^", nextState : "start"},
{defaultToken : "comment", caseInsensitive: true}
]
},
DocCommentHighlightRules.getStartRule("doc-start"),
{
token : "comment.start",
regex : /\/\*/,
stateName: "nested_comment",
push : [
DocCommentHighlightRules.getTagRule(),
{token : "comment.start", regex : /\/\*/, push: "nested_comment"},
{token : "comment.end", regex : "\\*\\/", next : "pop"},
{defaultToken : "comment", caseInsensitive: true}
],
},
];
}
this.$rules = {
start: [
string('"', {
escape: /\\(?:[0\\tnr"']|u{[a-fA-F1-9]{0,8}})/,
interpolation: {lead: "\\", open: "(", close: ")"},
error: /\\./,
multiline: false
}),
comments({type: "c", nestable: true}),
{
regex: /@[a-zA-Z_$][a-zA-Z_$\d\u0080-\ufffe]*/,
token: "variable.parameter"
},
{
regex: /[a-zA-Z_$][a-zA-Z_$\d\u0080-\ufffe]*/,
token: keywordMapper
},
{
token : "constant.numeric",
regex : /[+-]?(?:0(?:b[01]+|o[0-7]+|x[\da-fA-F])|\d+(?:(?:\.\d*)?(?:[PpEe][+-]?\d+)?)\b)/
}, {
token : "keyword.operator",
regex : /--|\+\+|===|==|=|!=|!==|<=|>=|<<=|>>=|>>>=|<>|<|>|!|&&|\|\||\?\:|[!$%&*+\-~\/^]=?/,
next : "start"
}, {
token : "punctuation.operator",
regex : /[?:,;.]/,
next : "start"
}, {
token : "paren.lparen",
regex : /[\[({]/,
next : "start"
}, {
token : "paren.rparen",
regex : /[\])}]/
},
]
};
this.embedRules(DocCommentHighlightRules, "doc-",
[ DocCommentHighlightRules.getEndRule("start") ]);
this.normalizeRules();
};
oop.inherits(SwiftHighlightRules, TextHighlightRules);
exports.HighlightRules = SwiftHighlightRules;
});

Wyświetl plik

@ -61,13 +61,12 @@ var TextHighlightRules = function() {
for (var i = 0; i < state.length; i++) {
var rule = state[i];
if (rule.next || rule.onMatch) {
if (typeof rule.next != "string") {
if (rule.nextState && rule.nextState.indexOf(prefix) !== 0)
rule.nextState = prefix + rule.nextState;
} else {
if (typeof rule.next == "string") {
if (rule.next.indexOf(prefix) !== 0)
rule.next = prefix + rule.next;
}
if (rule.nextState && rule.nextState.indexOf(prefix) !== 0)
rule.nextState = prefix + rule.nextState;
}
}
this.$rules[prefix + key] = state;

Wyświetl plik

@ -67,6 +67,13 @@ var keywords = "always|and|assign|automatic|begin|buf|bufif0|bufif1|case|casex|c
"start" : [ {
token : "comment",
regex : "//.*$"
}, {
token : "comment.start",
regex : "/\\*",
next : [
{ token : "comment.end", regex : "\\*/" },
{ defaultToken : "comment" }
]
}, {
token : "string", // " string
regex : '".*?"'
@ -93,6 +100,7 @@ var keywords = "always|and|assign|automatic|begin|buf|bufif0|bufif1|case|casex|c
regex : "\\s+"
} ]
};
this.normalizeRules();
};
oop.inherits(VerilogHighlightRules, TextHighlightRules);

Wyświetl plik

@ -21,6 +21,7 @@ var testNames = [
"ace/editor_navigation_test",
"ace/editor_text_edit_test",
"ace/ext/static_highlight_test",
"ace/ext/whitespace_test",
"ace/incremental_search_test",
"ace/keyboard/emacs_test",
"ace/keyboard/keybinding_test",

4
node_modules/ace/package.json wygenerowano vendored
Wyświetl plik

@ -15,10 +15,10 @@
},
"devDependencies": {
"asyncjs": "0.0.x",
"jsdom": "0.2.x",
"node-jsdom": "3.1.5",
"amd-loader": "~0.0.4",
"dryice": "0.4.11",
"architect-build": "https://github.com/c9/architect-build/tarball/a3bad51808"
"architect-build": "https://github.com/c9/architect-build/tarball/17268dce65"
},
"mappings": {
"ace": "."

18
node_modules/ace/static.js wygenerowano vendored
Wyświetl plik

@ -15,18 +15,18 @@ if (!fs.exists)
var allowSave = process.argv.indexOf("--allow-save") != -1;
http.createServer(function(req, res) {
var uri = url.parse(req.url).pathname
var uri = unescape(url.parse(req.url).pathname)
, filename = path.join(process.cwd(), uri);
if (req.method == "PUT") {
if (!allowSave)
return error(res, 404, "Saving not allowed pass --allow-save to enable");
save(req, res, filename);
return save(req, res, filename);
}
fs.exists(filename, function(exists) {
if (!exists)
return error(res, 404, "404 Not Found\n");
return error(res, 404, "404 Not Found\n" + filename);
if (fs.statSync(filename).isDirectory()) {
var files = fs.readdirSync(filename);
@ -36,10 +36,13 @@ http.createServer(function(req, res) {
var html = files.map(function(name) {
var href = uri + "/" + name;
href = href.replace(/[\/\\]+/g, "/").replace(/\/$/g, "");
if (fs.statSync(filename + "/" + name + "/").isDirectory())
href += "/";
return "<a href='" + href + "'>" + name + "</a><br>";
});
try {
var stat = fs.statSync(filename + "/" + name);
if (stat.isDirectory())
href += "/";
return "<a href='" + href + "'>" + name + "</a><br>";
} catch(e) {}
}).filter(Boolean);
res._hasBody && res.write(html.join(""));
res.end();
@ -86,6 +89,7 @@ function save(req, res, filePath) {
}
res.statusCode = 200;
res.end("OK");
console.log("saved ", filePath);
});
}

13
node_modules/ace/tool/add_mode.js wygenerowano vendored
Wyświetl plik

@ -65,6 +65,14 @@ function main(displayName, extRe) {
var modelist = fs.readFileSync(modelistPath, "utf8").replace(/\r\n?/g, "\n");
modelist = modelist.replace(/(supportedModes = {\n)([\s\S]*?)(\n^};)/m, function(_, m1, m2, m3) {
var langs = m2.split(/,\n/);
var unsorted = [];
for (var i = langs.length; i--;) {
if (/\s*\/\//.test(langs[i])) {
unsorted = langs.splice(i, langs.length);
break;
}
}
console.log(unsorted)
var offset = langs[0].trim().indexOf("[");
var padding = Array(Math.max(offset - displayName.length - 1, 0) + 1).join(" ");
var newLang = " " + displayName + ":" + padding + "[\"" + extRe + "\"]";
@ -86,7 +94,7 @@ function main(displayName, extRe) {
return x.value;
});
return m1 + langs.join(",\n") + m3;
return m1 + langs.concat(unsorted).join(",\n") + m3;
});
fs.writeFileSync(modelistPath, modelist, "utf8");
console.log("Updated modelist at: " + path.normalize(modelistPath));
@ -99,7 +107,8 @@ if (!module.parent) {
if (!displayName || ! extRe) {
console.log("Usage: ModeName ext1|ext2");
process.exit(1);
}
}
main(displayName, extRe);
} else {
module.exports = main;
}

110
node_modules/ace/tool/lib.js wygenerowano vendored
Wyświetl plik

@ -1,6 +1,7 @@
var plist = require("plist");
var util = require("util");
var url = require("url");
var cson = require("cson");
var https = require("https");
var http = require("http");
@ -12,17 +13,120 @@ exports.parsePlist = function(xmlOrJSON, callback) {
json = result[0];
});
} else {
xmlOrJSON = xmlOrJSON.replace(/^\s*\/\/.*/gm, "");
json = JSON.parse(xmlOrJSON)
try {
xmlOrJSON = xmlOrJSON.replace(
/("(?:\\.|[^"])*")|(?:,\s*)+([\]\}])|(\w+)\s*:|([\]\}]\s*[\[\{])|(\/\/.*|\/\*(?:[^\*]|\*(?=[^\/]))*?\*\/)/g,
function(_, str, extraComma, noQuote, missingComma, comment) {
if (comment)
return "";
if (missingComma)
return missingComma[0] + "," + missingComma.slice(1);
return str || extraComma || '"' + noQuote + '":';
});
json = JSON.parse(xmlOrJSON);
} catch(e) {
json = cson.parse(xmlOrJSON);
}
}
callback && callback(json);
return json;
};
exports.formatJSON = function(object, initialIndent) {
return util.inspect(object, false, 40).replace(/^/gm, initialIndent||"");
return JSON.stringify(object, null, 4).replace(/^/gm, initialIndent||"");
};
exports.formatJS = function(object, initialIndent) {
return formatJS(object, 4, initialIndent);
};
function formatJS(object, indent, initialIndent) {
if (typeof indent == "number")
indent = Array(indent + 1).join(" ");
function $format(buffer, totalIndent, state, o) {
if (typeof o != "object" || !o) {
if (typeof o == "string")
buffer.push(JSON.stringify(o));
else
buffer.push("" + o);
}
else if (Array.isArray(o)) {
buffer.push("[")
var len = totalIndent.length
var oneLine = true;
for (var i = 0; i < o.length; i++) {
if (typeof o[i] == "string") {
len += o[i].length + 2
} else if (!o[i]) {
len += (o[i] + "").length
} else {
oneLine = false;
break;
}
len += 2;
if (len > 60) {
oneLine = false;
break;
}
}
for (var i = 0; i < o.length; i++) {
if (o[i] && typeof o[i] == "object") {
$format(buffer, totalIndent, state, o[i]);
if (i < o.length - 1)
buffer.push(", ");
} else {
if (oneLine)
i && buffer.push(" ");
else
buffer.push("\n", totalIndent + indent)
$format(buffer, totalIndent + indent, state, o[i]);
if (i < o.length - 1)
buffer.push(",");
}
}
if (!oneLine && buffer[buffer.length - 1] != "}")
buffer.push("\n" + totalIndent)
buffer.push("]")
}
else {
var keys = Object.keys(o);
buffer.push("{", "\n");
for (var i = 0; i < keys.length; i++) {
buffer.push(totalIndent + indent);
if (/^\w+$/.test(keys[i]))
buffer.push(keys[i]);
else
buffer.push(JSON.stringify(keys[i]));
buffer.push(": ")
if (keys[i] == "regex" && typeof o[keys[i]] == "string") {
try {
var re = new RegExp(o[keys[i]]);
buffer.push("/" + re.source.replace(/\\.|\//g, function(f) {
return f.length == 1 ? "\\" + f : f;
}) + "/");
} catch(e) {
$format(buffer, totalIndent + indent, state, o[keys[i]]);
}
} else {
$format(buffer, totalIndent + indent, state, o[keys[i]]);
}
if (i < keys.length - 1)
buffer.push(",", "\n");
}
buffer.push("\n", totalIndent, "}");
}
}
var buffer = [];
$format(buffer, initialIndent || "", {}, object);
return buffer.join("");
}
exports.fillTemplate = function(template, replacements) {
return template.replace(/%(.+?)%/g, function(str, m) {

4
node_modules/ace/tool/mode_creator.js wygenerowano vendored
Wyświetl plik

@ -126,8 +126,8 @@ function handleSaveResult(err, editor) {
return log(
"Write access to this file is disabled.\n"+
"To enable saving your changes to disk, clone the Ace repository\n"+
"and run the included web server with the --allow-write option\n"+
"`node static.js --allow-write` or `static.py --puttable=*`"
"and run the included web server with the --allow-save option\n"+
"`node static.js --allow-save` or `static.py --puttable=*`"
);
}
editor.session.getUndoManager().markClean();

19
node_modules/ace/tool/package.json wygenerowano vendored
Wyświetl plik

@ -1,9 +1,14 @@
{
"name": "ace-tools",
"version": "0.1.0",
"dependencies": {
"plist": "",
"css-parse": "1.0.3",
"css-stringify": "1.0.3"
}
"name": "ace-tools",
"version": "0.1.0",
"dependencies": {
"browser-pack": "^5.0.1",
"browserify": "^10.2.4",
"cson": "^3.0.1",
"css-parse": "1.0.3",
"css-stringify": "1.0.3",
"deps-sort": "^1.3.9",
"derequire": "^2.0.0",
"plist": ""
}
}

2
node_modules/ace/tool/release.sh wygenerowano vendored
Wyświetl plik

@ -1,3 +1,5 @@
#!/bin/bash
pause() {
while true; do
read -p "$1 " yn

4
node_modules/ace/tool/tmlanguage.js wygenerowano vendored
Wyświetl plik

@ -662,10 +662,10 @@ function convertTmLanguage(name, langStr) {
var languageHighlightRules = lib.fillTemplate(modeHighlightTemplate, {
language: languageNameSanitized,
languageTokens: lib.formatJSON(patterns, " ").trim(),
languageTokens: lib.formatJS(patterns, " ").trim(),
uuid: language.uuid,
name: name,
metaData: lib.formatJSON(language, " ").trim()
metaData: lib.formatJS(language, "").trim()
});
if (devMode) {

149
node_modules/ace/tool/update_deps.js wygenerowano vendored
Wyświetl plik

@ -8,21 +8,29 @@ var spawn = require("child_process").spawn;
var async = require("asyncjs");
var rootDir = __dirname + "/../lib/ace/";
var SKIP_NPM = false;
var deps = {
csslint: {
path: "mode/css/csslint.js",
url: "https://raw.github.com/stubbornella/csslint/master/release/csslint.js",
needsFixup: true
// url: "https://raw.github.com/stubbornella/csslint/master/release/csslint.js",
browserify: {
npmModule: "git+https://github.com/CSSLint/csslint.git#master",
path: "jshint/src/jshint.js",
exports: "jshint"
},
fetch: browserify,
wrapAmd: true
},
requirejs: {
path: "../../demo/kitchen-sink/require.js",
url: "https://raw.github.com/jrburke/requirejs/master/require.js",
needsFixup: false
wrapAmd: false
},
luaparse: {
path: "mode/lua/luaparse.js",
url: "https://raw.github.com/oxyc/luaparse/master/luaparse.js",
needsFixup: true,
wrapAmd: true,
postProcess: function(src) {
return src.replace(
/\(function\s*\(root,\s*name,\s*factory\)\s*{[\s\S]*?}\(this,\s*'luaparse',/,
@ -38,7 +46,7 @@ var deps = {
exports: "SAXParser"
},
fetch: browserify,
needsFixup: true,
wrapAmd: true,
postProcess: function(src) {
return src;
}
@ -51,7 +59,7 @@ var deps = {
exports: "XQueryLexer"
},
fetch: browserify,
needsFixup: true,
wrapAmd: true,
postProcess: function(src){
return src;
}
@ -64,7 +72,7 @@ var deps = {
exports: "JSONiqLexer"
},
fetch: browserify,
needsFixup: true,
wrapAmd: true,
postProcess: function(src){
return src;
}
@ -77,7 +85,7 @@ var deps = {
exports: "XQLint"
},
fetch: browserify,
needsFixup: true,
wrapAmd: true,
postProcess: function(src){
return src;
}
@ -90,7 +98,7 @@ var deps = {
exports: "jshint"
},
fetch: browserify,
needsFixup: true,
wrapAmd: true,
postProcess: function(src) {
src = src.replace(
/"Expected a conditional expression and instead saw an assignment."/g,
@ -140,69 +148,12 @@ var deps = {
url: "https://raw.githubusercontent.com/gkz/LiveScript/master/lib/mode-ls.js"
},
coffee: {
fetch: function(){
var rootHref = "https://raw.github.com/jashkenas/coffee-script/master/";
var path = "mode/coffee/";
var subDir = "lib/coffee-script/";
var deps = [
"helpers.js",
"lexer.js",
"nodes.js",
"parser.js",
"rewriter.js",
"scope.js"
].map(function(x) {
return {
name: x,
href: rootHref + subDir + x,
path: rootDir + path + x
};
});
deps.push({name:"LICENSE", href: rootHref + "LICENSE"});
var downloads = {}, counter = 0;
deps.forEach(function(x) {
download(x.href, function(err, data) {
counter++;
downloads[x.name] = data;
if (counter == deps.length)
allDone();
});
});
function allDone() {
deps.pop();
var license = downloads.LICENSE.split('\n');
license = "/**\n * " + license.join("\n * ") + "\n */";
deps.forEach(function(x) {
var data = downloads[x.name];
console.log(x.name);
console.log(!data);
if (!data)
return;
if (x.name == "parser.js") {
data = data.replace("var parser = (function(){", "")
.replace(/\nreturn (new Parser)[\s\S]*$/, "\n\nmodule.exports = $1;\n\n");
} else {
data = data.replace("(function() {", "")
.replace(/\}\).call\(this\);\s*$/, "");
}
data = license
+ "\n\n"
+ "define(function(require, exports, module) {\n"
+ data
+ "\n});";
fs.writeFile(x.path, data, "utf-8", function(err){
if (err) throw err;
console.log("File " + x.name + " saved.");
console.warn("mode/coffee/coffee-script file needs to updated manually");
console.warn("mode/coffee/parser.js: parseError function needs to be modified");
});
});
}
path: "mode/coffee/coffee.js",
url: "https://raw.githubusercontent.com/jashkenas/coffeescript/master/extras/coffee-script.js",
wrapAmd: true,
postProcess: function(src){
return "function define(f) { module.exports = f() }; define.amd = {};\n"
+ dereqire(src);
}
},
xmldom: {
@ -251,7 +202,7 @@ var getDep = function(dep) {
dep.fetch(dep.url, function(err, data) {
if (dep.postProcess)
data = dep.postProcess(data);
if (dep.needsFixup)
if (dep.wrapAmd)
data = "define(function(require, exports, module) {\n"
+ data
+ "\n});";
@ -279,7 +230,6 @@ function run(cmd, cb) {
result += data;
});
proc.on('exit', done);
proc.on('close', done);
function done(code) {
if (code !== 0) {
@ -299,21 +249,54 @@ function unquote(str) {
});
}
function dereqire(src) {
return require("derequire")(src, [
{from: 'require', to: '_dereq_'},
{from: 'define', to: '_defi_'}
]);
}
function browserify(_, cb) {
var br = this.browserify;
var path = Path.join("node_modules", br.path)
run("npm install " + this.browserify.npmModule, function() {
run("browserify " + path + " -s " + br.exports, function(err, src) {
src = src.replace(/^.*return\s*\(function/, "module.exports = (function")
.replace(/\}\);\s*$/, "");
src = src.replace(/(\],|\{)((?:\d+|"\w+"):\[)/g, "$1\n$2")
.replace(/^(\},)(\{[^{}\[\]]*?\}\])/gm, "$1\n$2")
cb(err, src);
})
})
process.chdir(__dirname);
if (Path.sep == "\\" && !Path._relative) {
Path._relative = Path.relative;
Path.relative = function() {
var v = Path._relative.apply(this, arguments);
return v.replace(/\\/g, "/");
}
}
function done() {
var browserify = require('browserify');
var absPath = require.resolve(__dirname + "/" + path);
var defaultPreludePath = Path.join(require.resolve("browser-pack"), "../prelude.js");
var defaultPrelude = "module.exports = " + fs.readFileSync(defaultPreludePath, 'utf8')
.replace(/^[ \t]*\/\/.*/gm, "")
.replace(/^\s*\n\r?/gm, "")
.replace(/return newRequire;/, "return newRequire(entry[0]);")
var opts = {
expose: br.exports,
prelude: defaultPrelude,
exposeAll: true
}
var b = browserify(opts);
b.plugin(require("deps-sort"), opts);
b.add(absPath);
var p = b.bundle();
var buffer = "";
p.on("data", function(e) { buffer += e; });
p.on("end", function() {
var src = dereqire(buffer);
cb(null, src);
});
}
if (SKIP_NPM) return done();
run("npm install " + br.npmModule, done);
}
var args = process.argv.slice(2);
SKIP_NPM = args.indexOf("--skip-npm") != -1;
args = args.filter(function(x) {return x[0] != "-" });
if (!args.length)
args = Object.keys(deps);

Wyświetl plik

@ -1,7 +1,7 @@
{
"name": "c9",
"description": "New Cloud9 Client",
"version": "3.0.2774",
"version": "3.0.2813",
"author": "Ajax.org B.V. <info@ajax.org>",
"private": true,
"main": "bin/c9",
@ -90,7 +90,7 @@
"c9.ide.imgeditor": "#66a9733dc1",
"c9.ide.immediate": "#18c23aa730",
"c9.ide.installer": "#0fde9f0067",
"c9.ide.mount": "#da6ad73c5b",
"c9.ide.mount": "#dccfb51a2b",
"c9.ide.navigate": "#c191d9b92f",
"c9.ide.newresource": "#981a408a7b",
"c9.ide.openfiles": "#7fa4a97fed",
@ -106,7 +106,7 @@
"c9.ide.run.build": "#0598fff697",
"c9.ide.run.debug.xdebug": "#61dcbd0180",
"c9.ide.save": "#e00549cb0f",
"c9.ide.scm": "#b07648109a",
"c9.ide.scm": "#2398826541",
"c9.ide.terminal.monitor": "#b76f1c9f24",
"c9.ide.test": "#20e2db457f",
"c9.ide.test.mocha": "#5af621185e",

Wyświetl plik

@ -84,6 +84,22 @@ define(function(require, exports, module) {
return b1.left + b1.width + ((b2.left - b1.left - b1.width)/2);
}
function getMessageString(message) {
var messageString;
if (typeof message == "string") {
messageString = apf.escapeXML(message);
}
else {
if (message.message)
messageString = apf.escapeXML(message.message);
else if (message.html)
messageString = message.html;
else
messageString = "Error: " + message.toString();
}
return messageString
}
function show(message, timeout) {
// Error message container
@ -105,23 +121,11 @@ define(function(require, exports, module) {
return console.error("empty error message", message);
}
console.error("Error:",
message.stack || message.html || message.message || message);
console.error("Error dialog shown: ", getMessageString(message));
}
hide(function() {
var messageString;
if (typeof message == "string") {
messageString = apf.escapeXML(message);
}
else {
if (message.message)
messageString = apf.escapeXML(message.message);
else if (message.html)
messageString = message.html;
else
messageString = "Error: " + message.toString();
}
var messageString = getMessageString(message);
error.innerHTML = "<div><u class='close'></u>"
+ messageString + "</div>";

Wyświetl plik

@ -299,7 +299,8 @@ require(["lib/architect/architect", "lib/chai/chai", "/vfs-root", "ace/test/asse
sendAll(["e", "h"]);
});
it("supports delete with repeated characters; stress test", function loop(done, attempt) {
// Fails on CI server (https://github.com/c9/newclient/issues/9550)
it.skip("supports delete with repeated characters; stress test", function loop(done, attempt) {
this.timeout && this.timeout(60000);
session.$predictor.state = 0;
if (attempt === 5)