Merge pull request #2175 from ajaxorg/misc

Fix several small issues
This commit is contained in:
Ruben Daniels 2014-10-06 16:57:39 -07:00
commit 0609c8e1a8
28 changed files with 1519 additions and 120 deletions

View file

@ -96,9 +96,6 @@ require("ace/commands/default_commands").commands.push({
editor.keyBinding.addKeyboardHandler(kb);
inlineEditor.keyBinding.addKeyboardHandler(kb);
editor.on("changeSession", function(e) {
w.el.parentNode && w.el.parentNode.removeChild(w.el);
});
inlineEditor.setTheme("ace/theme/solarized_light");
}
});

View file

@ -116,7 +116,6 @@ exports.singleLineEditor = function(el) {
renderer.setStyle("ace_one-line");
var editor = new Editor(renderer);
new MultiSelect(editor);
editor.session.setUndoManager(new UndoManager());
editor.setShowPrintMargin(false);

View file

@ -289,13 +289,12 @@ function Folding() {
if (startFold && endFold == startFold)
return startFold.addSubFold(fold);
if (
(startFold && !startFold.range.isStart(startRow, startColumn))
|| (endFold && !endFold.range.isEnd(endRow, endColumn))
) {
throw new Error("A fold can't intersect already existing fold" + fold.range + startFold.range);
}
if (startFold && !startFold.range.isStart(startRow, startColumn))
this.removeFold(startFold);
if (endFold && !endFold.range.isEnd(endRow, endColumn))
this.removeFold(endFold);
// Check if there are folds in the range we create the new fold for.
var folds = this.getFoldsInRange(fold.range);
if (folds.length > 0) {

View file

@ -45,9 +45,10 @@ function LineWidgets(session) {
this.renderWidgets = this.renderWidgets.bind(this);
this.measureWidgets = this.measureWidgets.bind(this);
this.session._changedWidgets = [];
this.detach = this.detach.bind(this);
this.$onChangeEditor = this.$onChangeEditor.bind(this);
this.session.on("change", this.updateOnChange);
this.session.on("changeEditor", this.$onChangeEditor);
}
(function() {
@ -73,8 +74,12 @@ function LineWidgets(session) {
return screenRows;
};
this.$onChangeEditor = function(e) {
this.attach(e.editor);
};
this.attach = function(editor) {
if (editor.widgetManager && editor.widgetManager != this)
if (editor && editor.widgetManager && editor.widgetManager != this)
editor.widgetManager.detach();
if (this.editor == editor)
@ -83,21 +88,16 @@ function LineWidgets(session) {
this.detach();
this.editor = editor;
this.editor.on("changeSession", this.detach);
editor.widgetManager = this;
editor.renderer.on("beforeRender", this.measureWidgets);
editor.renderer.on("afterRender", this.renderWidgets);
if (editor) {
editor.widgetManager = this;
editor.renderer.on("beforeRender", this.measureWidgets);
editor.renderer.on("afterRender", this.renderWidgets);
}
};
this.detach = function(e) {
if (e && e.session == this.session)
return; // sometimes attach can be called before setSession
var editor = this.editor;
if (!editor)
return;
editor.off("changeSession", this.detach);
this.editor = null;
editor.widgetManager = null;

View file

@ -1,20 +1,66 @@
var fs = require("fs");
var path = require("path");
if (!fs.existsSync)
fs.existsSync = require("path").existsSync;
fs.existsSync = path.existsSync;
require("amd-loader");
var cwd = __dirname + "/";
var root = path.normalize(cwd + Array(5).join("../"));
function jsFileList(path, filter) {
if (!filter) filter = /_test/;
return fs.readdirSync(path).map(function(x) {
if (x.slice(-3) == ".js" && !filter.test(x) && !/\s/.test(x))
return x.slice(0, -3);
}).filter(Boolean);
}
function modeList() {
return jsFileList(cwd + "../", /_highlight_rules|_test|_worker|xml_util|_outdent|behaviour|completions/);
}
function checkModes() {
modeList().forEach(function(modeName) {
try {
var Mode = require("../" + modeName).Mode;
} catch(e) {
console.warn("Can't load mode :" + modeName, e);
return;
}
var m = new Mode();
if (!m.lineCommentStart && !m.blockComment)
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)
});
} else {
testLineComment(tokenizer, m.lineCommentStart, modeName)
}
}
// if (m.blockComment) {
// var tokens = tok.getLineTokens(m.lineCommentStart, "start");
// if (!/comment/.test(tokens[0]))
// console.warn("broken lineCommentStart in " + modeName);
// }
});
function testLineComment(tokenizer, commentStart, modeName) {
var tokens = tokenizer.getLineTokens(commentStart + " ", "start").tokens;
if (!/comment/.test(tokens[0].type))
console.warn("broken lineCommentStart in " + modeName);
}
}
function generateTestData() {
var root = Array(5).join("../") + "/demo/kitchen-sink/docs";
var docs = fs.readdirSync(cwd + root);
var docs = jsFileList(cwd + root);
var specialDocs = fs.readdirSync(cwd);
var modes = fs.readdirSync(cwd + "../").filter(function(x){
return !/(_highlight_rules|behaviour|worker)\.js$/.test(x) && /\.js$/.test(x);
}).map(function(x) {
return x.replace(/\.js$/, "");
});
var modes = modeList();
console.log("Docs:", docs);
console.log("Modes:", modes);
@ -61,7 +107,7 @@ function generateTestData() {
return tmp.join(",\n ");
});
jsonStr = "[[\n " + data.join("\n],[\n ") + "\n]]";
var jsonStr = "[[\n " + data.join("\n],[\n ") + "\n]]";
fs.writeFileSync(cwd + "tokens_" + modeName + ".json", jsonStr, "utf8");
});
}
@ -91,7 +137,7 @@ function testMode(modeName, i) {
lineData.state = lineData.shift();
var line = null;
if (typeof lineData[lineData.length - 1] == "string")
line = lineData.pop()
line = lineData.pop();
lineData.forEach(function(x) {
lineData.types.push(x[0]);
lineData.values.push(x[1]);
@ -103,14 +149,13 @@ function testMode(modeName, i) {
var values = tokens.tokens.map(function(x) {return x.value;});
var types = tokens.tokens.map(function(x) {return x.type;});
var success = true;
var err = testEqual([
JSON.stringify(lineData.state), JSON.stringify(tokens.state),
lineData.types, types,
lineData.values, values]);
if (err) {
console.log(line)
console.log(line);
throw "error";
}
@ -150,10 +195,12 @@ function padNumber(num, digits) {
// cli
var arg = process.argv[2];
if (!arg)
test()
test();
else if (/--?g(en)?/.test(arg))
generateTestData(process.argv.splice(3));
else if (/--?c(heck)?/.test(arg))
checkModes(process.argv.splice(3));
else if (/\d+/.test(arg))
test(parseInt(process.argv[2],10) || 0);
else
testMode(arg, -1)
testMode(arg, -1);

View file

@ -27,10 +27,6 @@
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*
*
* Contributor(s):
*
*
*
* ***** END LICENSE BLOCK ***** */
/*

View file

@ -26,11 +26,6 @@
* (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 ***** */
/*
@ -53,7 +48,7 @@ var Mode = function() {
oop.inherits(Mode, TextMode);
(function() {
this.lineCommentStart = "/\\*";
this.lineCommentStart = ";";
this.blockComment = {start: "/*", end: "*/"};
this.$id = "ace/mode/autohotkey";
}).call(Mode.prototype);

View file

@ -50,11 +50,12 @@ var c_cppHighlightRules = function() {
// regexp must not have capturing parentheses. Use (?:) instead.
// regexps are ordered -> the first match is used
this.$rules = {
this.$rules = {
"start" : [
{
token : "comment",
regex : "\\/\\/.*$"
regex : "//",
next : "singleLineComment"
},
DocCommentHighlightRules.getStartRule("doc-start"),
{
@ -121,14 +122,26 @@ var c_cppHighlightRules = function() {
regex : ".+"
}
],
"singleLineComment" : [
{
token : "comment",
regex : /\\$/,
next : "singleLineComment"
}, {
token : "comment",
regex : /$/,
next : "start"
}, {
defaultToken: "comment"
}
],
"qqstring" : [
{
token : "string",
regex : '(?:(?:\\\\.)|(?:[^"\\\\]))*?"',
next : "start"
}, {
token : "string",
regex : '.+'
defaultToken : "string"
}
],
"qstring" : [
@ -137,8 +150,7 @@ var c_cppHighlightRules = function() {
regex : "(?:(?:\\\\.)|(?:[^'\\\\]))*?'",
next : "start"
}, {
token : "string",
regex : '.+'
defaultToken : "string"
}
],
"directive" : [

View file

@ -142,7 +142,7 @@ define(function(require, exports, module) {
}
if (val == "}" && stack.length) {
stack.shift();
this.next = stack.shift();
this.next = stack.shift() || "";
if (this.next.indexOf("string") != -1)
return "paren.string";
}

View file

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

View file

@ -27,10 +27,6 @@
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*
*
* Contributor(s):
*
*
*
* ***** END LICENSE BLOCK ***** */
/*
@ -53,7 +49,7 @@ var Mode = function() {
oop.inherits(Mode, TextMode);
(function() {
this.lineCommentStart = "(?<=^|\\s)\\.?\\( [^)]*\\)";
this.lineCommentStart = "--";
this.blockComment = {start: "/*", end: "*/"};
this.$id = "ace/mode/forth";
}).call(Mode.prototype);

View file

@ -12,6 +12,7 @@ var Mode = function() {
oop.inherits(Mode, TextMode);
(function() {
this.lineCommentStart = "#";
this.$id = "ace/mode/gitignore";
}).call(Mode.prototype);

View file

@ -26,11 +26,6 @@
* (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 ***** */
/*

View file

@ -27,10 +27,6 @@
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*
*
* Contributor(s):
*
*
*
* ***** END LICENSE BLOCK ***** */
/*

View file

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

View file

@ -43,6 +43,7 @@ var Mode = function() {
oop.inherits(Mode, TextMode);
(function() {
this.type = "text";
this.getNextLineIndent = function(state, line, tab) {
if (state == "intag")
return tab;

View file

@ -305,7 +305,7 @@ var Search = function() {
if (options.wholeWord)
needle = "\\b" + needle + "\\b";
var modifier = options.caseSensitive ? "g" : "gi";
var modifier = options.caseSensitive ? "gm" : "gmi";
options.$isMultiLine = !$disableFakeMultiline && /[\n\r]/.test(needle);
if (options.$isMultiLine)

View file

@ -1,6 +1,6 @@
.ace-cobalt .ace_gutter {
background: #011e3a;
color: #fff
color: rgb(128,145,160)
}
.ace-cobalt .ace_print-margin {

View file

@ -1,6 +1,6 @@
.ace-idle-fingers .ace_gutter {
background: #3b3b3b;
color: #fff
color: rgb(153,153,153)
}
.ace-idle-fingers .ace_print-margin {

View file

@ -34,12 +34,13 @@
margin: -1px 0 0 -1px;
border: 1px solid #888888
}
.ace-tomorrow-night-bright .ace_marker-layer .ace_highlight {
border: 1px solid rgb(110, 119, 0);
border-bottom: 0;
box-shadow: inset 0 -1px rgb(110, 119, 0);
margin: -1px 0 0 -1px;
background: rgba(255, 235, 0, 0.1);
border: 1px solid rgb(110, 119, 0);
border-bottom: 0;
box-shadow: inset 0 -1px rgb(110, 119, 0);
margin: -1px 0 0 -1px;
background: rgba(255, 235, 0, 0.1)
}
.ace-tomorrow-night-bright .ace_marker-layer .ace_active-line {
@ -132,7 +133,7 @@
}
.ace-tomorrow-night-bright .ace_c9searchresults.ace_keyword {
color: #C2C280;
color: #C2C280
}
.ace-tomorrow-night-bright .ace_indent-guide {

View file

@ -17,7 +17,13 @@ window.window = window;
window.ace = window;
window.onerror = function(message, file, line, col, err) {
console.error("Worker " + (err ? err.stack : message));
postMessage({type: "error", data: {
message: message,
file: file,
line: line,
col: col,
stack: err.stack
}});
};
window.normalizeModule = function(parentId, moduleName) {
@ -84,15 +90,20 @@ window.define = function(id, deps, factory) {
deps = [];
id = window.require.id;
}
if (typeof factory != "function") {
window.require.modules[id] = {
exports: factory,
initialized: true
};
return;
}
if (!deps.length)
// If there is no dependencies, we inject 'require', 'exports' and
// 'module' as dependencies, to provide CommonJS compatibility.
deps = ['require', 'exports', 'module'];
if (id.indexOf("text!") === 0)
return;
var req = function(childId) {
return window.require(id, childId);
};

View file

@ -92,14 +92,9 @@ var WorkerClient = function(topLevelNamespaces, mod, classname, workerUrl) {
this.onMessage = function(e) {
var msg = e.data;
switch(msg.type) {
case "log":
window.console && console.log && console.log.apply(console, msg.data);
break;
case "event":
this._signal(msg.name, {data: msg.data});
break;
case "call":
var callback = this.callbacks[msg.id];
if (callback) {
@ -107,8 +102,18 @@ var WorkerClient = function(topLevelNamespaces, mod, classname, workerUrl) {
delete this.callbacks[msg.id];
}
break;
case "error":
this.reportError(msg.data);
break;
case "log":
window.console && console.log && console.log.apply(console, msg.data);
break;
}
};
this.reportError = function(err) {
window.console && console.error && console.error(err);
};
this.$normalizePath = function(path) {
return net.qualifyURL(path);
@ -119,7 +124,8 @@ var WorkerClient = function(topLevelNamespaces, mod, classname, workerUrl) {
this.deltaQueue = null;
this.$worker.terminate();
this.$worker = null;
this.$doc.removeEventListener("change", this.changeListener);
if (this.$doc)
this.$doc.off("change", this.changeListener);
this.$doc = null;
};

View file

@ -2,6 +2,11 @@ define(function(require, exports, module) {
/** creates globals intentionally to make things easily accessible from console **/
require("ace/ext/language_tools");
require("ace/config").setDefaultValues("editor", {
enableBasicAutocompletion: true,
enableSnippets: true
});
var net = require("ace/lib/net");
var Range = require("ace/range").Range;
var util = require("demo/kitchen-sink/util");
@ -79,28 +84,28 @@ document.getElementById("syncToMode").onclick = function() {
docEl.value = modelist.modesByName[modeEl.value].desc;
docEl.onchange();
run();
}
};
document.getElementById("perfTest").onclick = function() {
var lines = editor2.session.doc.getAllLines()
var lines = editor2.session.doc.getAllLines();
if (!lines.length)
return
return;
while (lines.length < 1000) {
lines = lines.concat(lines)
lines = lines.concat(lines);
}
var tk = new Tokenizer(currentRules);
var testPerf = function(lines, tk){
var state = "start"
var state = "start";
for (var i=0, l = lines.length; i <l; i++) {
state = tk.getLineTokens(lines[i], state).state
state = tk.getLineTokens(lines[i], state).state;
}
}
};
var t = performance.now();
testPerf(lines, tk);
t = t - performance.now(t);
log("tokenized " + lines.length + " lines in " + t + " ms");
}
};
util.fillDropdown("themeEl", {
bright: [
@ -145,29 +150,34 @@ function run() {
var src = editor1.getValue();
var path = "ace/mode/new";
var deps = getDeps(src, path);
window.require.undef(path)
window.require.undef(path);
src = src.replace("define(", 'define("' + path +'", ["require","exports","module",' + deps +'],');
try {
eval(src);
require(["ace/mode/new"], function(e) {
try{
continueRun(e)
}catch(e){
log(e)
try {
continueRun(e);
} catch(e) {
log(e);
}
}, function(e) {
log(e);
window.require.undef(path)
window.require.undef(path);
});
hideLog()
hideLog();
} catch(e) {
log(e);
}
}
var currentRules
var currentRules;
var continueRun = function(rules) {
rules = rules[Object.keys(rules)[0]];
currentRules = new rules().getRules()
for (var i in rules) {
if (typeof rules[i] == "function" && /rules/i.test(i)) {
rules = rules[i];
break;
}
}
currentRules = new rules().getRules();
var Tokenizer = DebugTokenizer;
var tk = new Tokenizer(currentRules);
@ -178,16 +188,16 @@ var continueRun = function(rules) {
editor1.commands.bindKey("ctrl-Return", run);
var logEditor
var logEditor;
function log(e) {
console.log(e)
console.log(e);
if (!logEditor) {
logEditor = util.createEditor(document.getElementById("consoleEditor"));
logEditor.session.setMode("ace/mode/javascript")
logEditor.session.setUseWorker(false)
logEditor.session.setMode("ace/mode/javascript");
logEditor.session.setUseWorker(false);
}
logEditor.container.parentNode.style.display = '';
logEditor.resize()
logEditor.resize();
logEditor.navigateFileEnd(e);
logEditor.insert(e + "\n");
}

View file

@ -1,8 +1,8 @@
/* THIS THEME WAS AUTOGENERATED BY Theme.tmpl.css (UUID: %uuid%) */
.%cssClass% .ace_gutter {
background: #e8e8e8;
color: #333;
background: %gutterBg%;
color: %gutterFg%;
}
.%cssClass% .ace_print-margin {

View file

@ -115,7 +115,7 @@ function extractStyles(theme) {
var aceScope = supportedScopes[scope];
if (aceScope) {
colors[aceScope] = style;
colors[aceScope] = style;
}
else if (style) {
unsupportedScopes[scope] = (unsupportedScopes[scope] || 0) + 1;
@ -134,25 +134,44 @@ function extractStyles(theme) {
colors.fold = foldSource.match(/\:([^;]+)/)[1];
}
}
colors.gutterBg = colors.background
colors.gutterFg = mix(colors.foreground, colors.background, 0.5)
if (!colors.selected_word_highlight)
colors.selected_word_highlight = "border: 1px solid " + colors.selection + ";";
colors.isDark = (luma(colors.background) < 0.5) + "";
return colors;
};
function luma(color) {
function mix(c1, c2, a1, a2) {
c1 = rgbColor(c1);
c2 = rgbColor(c2);
if (a2 === undefined)
a2 = 1 - a1
return "rgb(" + [
Math.round(a1*c1[0] + a2*c2[0]),
Math.round(a1*c1[1] + a2*c2[1]),
Math.round(a1*c1[2] + a2*c2[2])
].join(",") + ")";
}
function rgbColor(color) {
if (typeof color == "object")
return color;
if (color[0]=="#")
var rgb = color.match(/^#(..)(..)(..)/).slice(1).map(function(c) {
return color.match(/^#(..)(..)(..)/).slice(1).map(function(c) {
return parseInt(c, 16);
});
else
var rgb = color.match(/\(([^,]+),([^,]+),([^,]+)/).slice(1).map(function(c) {
return color.match(/\(([^,]+),([^,]+),([^,]+)/).slice(1).map(function(c) {
return parseInt(c, 10);
});
}
function luma(color) {
var rgb = rgbColor(color);
return (0.21 * rgb[0] + 0.72 * rgb[1] + 0.07 * rgb[2]) / 255;
}

View file

@ -0,0 +1,399 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist
PUBLIC '-//Apple//DTD PLIST 1.0//EN'
'http://www.apple.com/DTDs/PropertyList-1.0.dtd'>
<plist version="1.0">
<dict>
<key>name</key>
<string>Katzen-Milch</string>
<key>comment</key>
<string>Those silly germans and their cat milk! Ghee wizz!</string>
<key>settings</key>
<array>
<dict>
<key>settings</key>
<dict>
<key>background</key>
<string>#f3f2f3</string>
<key>caret</key>
<string>#100011</string>
<key>foreground</key>
<string>#0f0009ff</string>
<key>invisibles</key>
<string>#000000</string>
<key>lineHighlight</key>
<string>#ffffff</string>
<key>selection</key>
<string>#6405D044</string>
<key>selectionBorder</key>
<string>#8425f0</string>
<key>bracketContentsOptions</key>
<string>underline</string>
<key>tagsForeground</key>
<string>#0f0009ff</string>
<key>tagsOptions</key>
<string>underline</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Parenthesis</string>
<key>scope</key>
<string>punctuation.definition.list</string>
<key>settings</key>
<dict>
<key>fontStyle</key>
<string/>
<key>foreground</key>
<string>#940494</string>
<key>background</key>
<string>#4444940a</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Comment</string>
<key>scope</key>
<string>comment</string>
<key>settings</key>
<dict>
<key>fontStyle</key>
<string>italic</string>
<key>foreground</key>
<string>#404f50aa</string>
<key>background</key>
<string>#5f0fff02</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>String</string>
<key>scope</key>
<string>string</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#5a5f9b</string>
<key>background</key>
<string>#aaafdb09</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Number</string>
<key>scope</key>
<string>constant.numeric</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#4f827bee</string>
<key>background</key>
<string>#77c2bb0f</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>User-defined Constant</string>
<key>scope</key>
<string>constant.character, constant.other</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#025f69ff</string>
<key>background</key>
<string>#7f229910</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Built-in Constant</string>
<key>scope</key>
<string>constant.language</string>
<key>settings</key>
<dict>
<key>fontStyle</key>
<string/>
<key>foreground</key>
<string>#7D7e52</string>
<key>background</key>
<string>#bDbe820f</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Storage Modifier</string>
<key>scope</key>
<string>storage.modifier</string>
<key>settings</key>
<dict>
<key>fontStyle</key>
<string>bold</string>
<key>foreground</key>
<string>#7B5D8f</string>
<key>background</key>
<string>#9B9FfD0a</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Storage</string>
<key>scope</key>
<string>storage</string>
<key>settings</key>
<dict>
<key>fontStyle</key>
<string>bold</string>
<key>foreground</key>
<string>#7B5cbfff</string>
<key>background</key>
<string>#8B5Ddf0d</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Function Name</string>
<key>scope</key>
<string>entity.name.function</string>
<key>settings</key>
<dict>
<key>fontStyle</key>
<string></string>
<key>foreground</key>
<string>#025f49f7</string>
<key>background</key>
<string>#22ff491f</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Support Function</string>
<key>scope</key>
<string>support.function</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#9D7e62</string>
<key>background</key>
<string>#bDbe820a</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Misc Function</string>
<key>scope</key>
<string>entity.name.function.misc</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#939469</string>
<key>background</key>
<string>#E3E4A90a</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Predicate Function</string>
<key>scope</key>
<string>entity.name.function.predicate</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#856F63</string>
<key>background</key>
<string>#A5DF930a</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Input/Output Function</string>
<key>scope</key>
<string>entity.name.function.io</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#aF938C</string>
<key>background</key>
<string>#DFB3AC0a</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>External Symbol</string>
<key>scope</key>
<string>variable.other.external-symbol</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#7BaFaD</string>
<key>background</key>
<string>#BBDFDD0a</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Variable</string>
<key>scope</key>
<string>variable.language, variable.other</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#316fcf</string>
<key>background</key>
<string>#3aafff0a</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Parameter Variable</string>
<key>scope</key>
<string>variable.parameter</string>
<key>settings</key>
<dict>
<key>fontStyle</key>
<string>italic</string>
<key>foreground</key>
<string>#33969fdd</string>
<key>background</key>
<string>#05d6f90b</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Keyword</string>
<key>scope</key>
<string>keyword</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#674Aa8</string>
<key>background</key>
<string>#A3AAD80e</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Class Name</string>
<key>scope</key>
<string>entity.name.class</string>
<key>settings</key>
<dict>
<key>fontStyle</key>
<string>bold</string>
<key>foreground</key>
<string>#B9986F</string>
<key>background</key>
<string>#B998DF22</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Structure Name</string>
<key>scope</key>
<string>entity.name.structure</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#22af9d</string>
<key>background</key>
<string>#B998DF0a</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Type Name</string>
<key>scope</key>
<string>entity.name.type</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#af47a9</string>
<key>background</key>
<string>#af77a90d</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Class name</string>
<key>scope</key>
<string>entity.name.class, entity.name.type.class</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#cc4357</string>
<key>background</key>
<string>#ffddff92</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Support Class</string>
<key>scope</key>
<string>support.class</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#ef6aa7ff</string>
<key>background</key>
<string>#ef6aa710</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Invalid</string>
<key>scope</key>
<string>invalid</string>
<key>settings</key>
<dict>
<key>background</key>
<string>#CC1B27</string>
<key>foreground</key>
<string>#DFDFD5</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>♦ String embedded-source</string>
<key>scope</key>
<string>string source</string>
<key>settings</key>
<dict>
<key>fontStyle</key>
<string>italic</string>
<key>foreground</key>
<string>#13499fdd</string>
<key>background</key>
<string>#0099ff0a</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Tag name</string>
<key>scope</key>
<string>entity.name.tag</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#3976a2</string>
<key>background</key>
<string>#49a6d20a</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Tag attribute</string>
<key>scope</key>
<string>entity.other.attribute-name</string>
<key>settings</key>
<dict>
<key>fontStyle</key>
<string/>
<key>foreground</key>
<string>#4946c2ee</string>
<key>background</key>
<string>#4986c209</string>
</dict>
</dict>
</array>
</dict>
</plist>

View file

@ -0,0 +1,916 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>author</key>
<string>Stanley Rost</string>
<key>comment</key>
<string>Kuroir</string>
<key>name</key>
<string>Kuroir Theme</string>
<key>settings</key>
<array>
<dict>
<key>settings</key>
<dict>
<key>background</key>
<string>#E8E9E8</string>
<key>caret</key>
<string>#202020</string>
<key>foreground</key>
<string>#363636</string>
<key>invisibles</key>
<string>#0000004A</string>
<key>lineHighlight</key>
<string>#CBDC2F38</string>
<key>selection</key>
<string>#F5AA0091</string>
<key>bracketsForeground</key>
<string>#C41717</string>
<key>bracketsOptions</key>
<string>foreground underline</string>
<key>bracketContentsForeground</key>
<string>#C41717</string>
<key>bracketContentsOptions</key>
<string>foreground underline background</string>
<key>guide</key>
<string>#8F8F8F</string>
<key>activeGuide</key>
<string>#FA2828</string>
<key>tagsOptions</key>
<string>stippled_underline</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Comment</string>
<key>scope</key>
<string>comment</string>
<key>settings</key>
<dict>
<key>background</key>
<string>#DCDCDC8F</string>
<key>fontStyle</key>
<string></string>
<key>foreground</key>
<string>#949494E8</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Regions</string>
<key>scope</key>
<string>comment.line.region</string>
<key>settings</key>
<dict>
<key>background</key>
<string>#E9D6DC85</string>
<key>fontStyle</key>
<string></string>
<key>foreground</key>
<string>#A54776</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Line Marker</string>
<key>scope</key>
<string>comment.line.marker.php</string>
<key>settings</key>
<dict>
<key>background</key>
<string>#E9E4BE</string>
<key>foreground</key>
<string>#668D68</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Todo</string>
<key>scope</key>
<string>comment.line.todo.php</string>
<key>settings</key>
<dict>
<key>background</key>
<string>#D9EAB8</string>
<key>fontStyle</key>
<string></string>
<key>foreground</key>
<string>#456E48</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>FIXME</string>
<key>scope</key>
<string>comment.line.fixme.php</string>
<key>settings</key>
<dict>
<key>background</key>
<string>#E1D0CA</string>
<key>fontStyle</key>
<string></string>
<key>foreground</key>
<string>#880006</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Constant</string>
<key>scope</key>
<string>constant</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#CD6839</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Entity</string>
<key>scope</key>
<string>entity</string>
<key>settings</key>
<dict>
<key>background</key>
<string>#E8E9E8</string>
<key>fontStyle</key>
<string></string>
<key>foreground</key>
<string>#8B4726</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Storage</string>
<key>scope</key>
<string>storage</string>
<key>settings</key>
<dict>
<key>fontStyle</key>
<string></string>
<key>foreground</key>
<string>#A52A2A</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Keyword Control</string>
<key>scope</key>
<string>keyword.control</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#CD3700</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Library Function</string>
<key>scope</key>
<string>support.function - variable, keyword.other.special-method.ruby</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#B03060</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Comparison</string>
<key>scope</key>
<string>keyword.operator.comparison,keyword.operator.logical</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#B83126</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>String</string>
<key>scope</key>
<string>string</string>
<key>settings</key>
<dict>
<key>fontStyle</key>
<string></string>
<key>foreground</key>
<string>#639300</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>R Interpolation</string>
<key>scope</key>
<string>string.quoted.double.ruby source.ruby.embedded.source</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#007E69</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Support</string>
<key>scope</key>
<string>support</string>
<key>settings</key>
<dict>
<key>fontStyle</key>
<string></string>
<key>foreground</key>
<string>#104E8B</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Variable</string>
<key>scope</key>
<string>variable</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#009ACD</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Invalid Deprecated</string>
<key>scope</key>
<string>invalid.deprecated</string>
<key>settings</key>
<dict>
<key>background</key>
<string>#E8E9E8</string>
<key>fontStyle</key>
<string>italic underline</string>
<key>foreground</key>
<string>#FD1732</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Invalid Illegal</string>
<key>scope</key>
<string>invalid.illegal</string>
<key>settings</key>
<dict>
<key>background</key>
<string>#FF060026</string>
<key>foreground</key>
<string>#FD1224</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Embedded Source (Bright)</string>
<key>scope</key>
<string>text source</string>
<key>settings</key>
<dict>
<key>background</key>
<string>#77ADE900</string>
<key>foreground</key>
<string>#7B211A</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Entity inherited-class</string>
<key>scope</key>
<string>entity.other.inherited-class</string>
<key>settings</key>
<dict>
<key>fontStyle</key>
<string>italic</string>
<key>foreground</key>
<string>#005273</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>String.regexp</string>
<key>scope</key>
<string>string.regexp</string>
<key>settings</key>
<dict>
<key>background</key>
<string>#C9D4BE</string>
<key>foreground</key>
<string>#417E00</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Support.function</string>
<key>scope</key>
<string>support.function</string>
<key>settings</key>
<dict>
<key>fontStyle</key>
<string></string>
<key>foreground</key>
<string>#005273</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Support.constant</string>
<key>scope</key>
<string>support.constant</string>
<key>settings</key>
<dict>
<key>fontStyle</key>
<string></string>
<key>foreground</key>
<string>#CF6A4C</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>j Entity Name Type</string>
<key>scope</key>
<string>entity.name.type</string>
<key>settings</key>
<dict>
<key>fontStyle</key>
<string>underline</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>j Cast</string>
<key>scope</key>
<string>meta.cast</string>
<key>settings</key>
<dict>
<key>fontStyle</key>
<string>italic</string>
<key>foreground</key>
<string>#676767</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Doctype/XML Processing</string>
<key>scope</key>
<string>meta.sgml.html meta.doctype, meta.sgml.html meta.doctype entity, meta.sgml.html meta.doctype string, meta.xml-processing, meta.xml-processing entity, meta.xml-processing string</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#494949</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Meta.tag.all</string>
<key>scope</key>
<string>meta.tag, meta.tag entity</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#005273</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Meta.tag.inline</string>
<key>scope</key>
<string>source entity.name.tag, source entity.other.attribute-name, meta.tag.inline, meta.tag.inline entity</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#005273</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Namespaces</string>
<key>scope</key>
<string>entity.name.tag.namespace, entity.other.attribute-name.namespace</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#B85423</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>css tag-name</string>
<key>scope</key>
<string>entity.name.tag.css</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#B83126</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>css:pseudo-class</string>
<key>scope</key>
<string>meta.selector.css entity.other.attribute-name.tag.pseudo-class</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#B12E25</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>css#id</string>
<key>scope</key>
<string>meta.selector.css entity.other.attribute-name.id,entity.other.attribute-name.id.css</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#B8002D</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>css.class</string>
<key>scope</key>
<string>meta.selector.css entity.other.attribute-name.class, entity.other.attribute-name.class.css</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#B8012D</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>css property-name:</string>
<key>scope</key>
<string>support.type.property-name.css, meta.property-name</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#005273</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>css @at-rule</string>
<key>scope</key>
<string>meta.preprocessor.at-rule keyword.control.at-rule</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#8693A5</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>css property-value;</string>
<key>scope</key>
<string>meta.property-value</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#417E00</string>
</dict>
</dict>
<dict>
<key>name</key>
<string> css property-value color</string>
<key>scope</key>
<string>constant.other.color</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#B8860B</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>css !important / !default</string>
<key>scope</key>
<string>keyword.other.important,keyword.other.default </string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#EE3A8C</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>css additional-constants</string>
<key>scope</key>
<string>meta.property-value support.constant.named-color.css, meta.property-value constant</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#417E00</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>css constructor.argument</string>
<key>scope</key>
<string>meta.constructor.argument.css</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#417E00</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>css constant.numeric</string>
<key>scope</key>
<string>constant.numeric</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#9A5925</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>css keyword.unit</string>
<key>scope</key>
<string>keyword.other</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#9F5E3D</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>css keyword.unit</string>
<key>scope</key>
<string>source.scss support.function.misc</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#1B76B0</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>diff.header</string>
<key>scope</key>
<string>meta.diff, meta.diff.header</string>
<key>settings</key>
<dict>
<key>background</key>
<string>#82000E</string>
<key>fontStyle</key>
<string>italic</string>
<key>foreground</key>
<string>#F8BEBE</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>diff.deleted</string>
<key>scope</key>
<string>markup.deleted</string>
<key>settings</key>
<dict>
<key>background</key>
<string>#420E09</string>
<key>foreground</key>
<string>#F8F8F8</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>diff.changed</string>
<key>scope</key>
<string>markup.changed</string>
<key>settings</key>
<dict>
<key>background</key>
<string>#4A410D</string>
<key>foreground</key>
<string>#F8F8F8</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>diff.inserted</string>
<key>scope</key>
<string>markup.inserted</string>
<key>settings</key>
<dict>
<key>background</key>
<string>#253B22</string>
<key>foreground</key>
<string>#F8F8F8</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Markup: Italic</string>
<key>scope</key>
<string>markup.italic</string>
<key>settings</key>
<dict>
<key>fontStyle</key>
<string>italic</string>
<key>foreground</key>
<string>#CD2626</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Markup: Bold</string>
<key>scope</key>
<string>markup.bold</string>
<key>settings</key>
<dict>
<key>fontStyle</key>
<string>bold</string>
<key>foreground</key>
<string>#8B1A1A</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Markup: Underline</string>
<key>scope</key>
<string>markup.underline</string>
<key>settings</key>
<dict>
<key>fontStyle</key>
<string>underline</string>
<key>foreground</key>
<string>#E18964</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Markup: Quote</string>
<key>scope</key>
<string>markup.quote</string>
<key>settings</key>
<dict>
<key>background</key>
<string>#FEE09C12</string>
<key>fontStyle</key>
<string>italic</string>
<key>foreground</key>
<string>#8B7765</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Markup: Heading</string>
<key>scope</key>
<string>markup.heading, markup.heading entity</string>
<key>settings</key>
<dict>
<key>background</key>
<string>#BF61330D</string>
<key>fontStyle</key>
<string></string>
<key>foreground</key>
<string>#B8012D</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Markup: List</string>
<key>scope</key>
<string>markup.list</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#8F5B26</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Markup: Raw</string>
<key>scope</key>
<string>markup.raw</string>
<key>settings</key>
<dict>
<key>background</key>
<string>#B1B3BA08</string>
<key>fontStyle</key>
<string></string>
<key>foreground</key>
<string>#578BB3</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Markup: Comment</string>
<key>scope</key>
<string>markup comment</string>
<key>settings</key>
<dict>
<key>fontStyle</key>
<string>italic</string>
<key>foreground</key>
<string>#F67B37</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Markup: Separator</string>
<key>scope</key>
<string>meta.separator</string>
<key>settings</key>
<dict>
<key>background</key>
<string>#242424</string>
<key>foreground</key>
<string>#60A633</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Markup: Other</string>
<key>scope</key>
<string>markup.other</string>
<key>settings</key>
<dict>
<key>background</key>
<string>#B1B3BA08</string>
<key>fontStyle</key>
<string></string>
<key>foreground</key>
<string>#578BB3</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Log Entry</string>
<key>scope</key>
<string>meta.line.entry.logfile, meta.line.exit.logfile</string>
<key>settings</key>
<dict>
<key>background</key>
<string>#EEEEEE29</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Log Entry Error</string>
<key>scope</key>
<string>meta.line.error.logfile</string>
<key>settings</key>
<dict>
<key>background</key>
<string>#751012</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>SCSS Punctuation End Comments</string>
<key>scope</key>
<string>punctuation.definition.end</string>
<key>settings</key>
<dict>
<key>background</key>
<string>#DCDCDC8F</string>
<key>fontStyle</key>
<string></string>
</dict>
</dict>
<dict>
<key>name</key>
<string>--------------------------------</string>
<key>settings</key>
<dict/>
</dict>
<dict>
<key>name</key>
<string>HTML Attribute name</string>
<key>scope</key>
<string>entity.other.attribute-name.html</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#629F9E</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>JS String</string>
<key>scope</key>
<string>string.quoted.double.js, string.quoted.single.js</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#79A316</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>JS Function</string>
<key>scope</key>
<string>entity.name.function.js</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#488C45</string>
<key>fontStyle</key>
<string>italic</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>JS Embedded code general</string>
<key>scope</key>
<string>source.js.embedded.html</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#666</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>JS Storage Type</string>
<key>scope</key>
<string>storage.type.js</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#BB3182</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>JS Support Class</string>
<key>scope</key>
<string>support.class.js</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#338FD5</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>JS Control Keyword</string>
<key>scope</key>
<string>keyword.control.js, keyword.operator.js</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#A99904</string>
<key>fontStyle</key>
<string>italic</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Matching Pairs</string>
<key>scope</key>
<string>entity.name.class</string>
<key>settings</key>
<dict>
<key>background</key>
<string>#D7D7A7</string>
<key>foreground</key>
<string>#616838</string>
<key>fontStyle</key>
<string></string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Active Guide</string>
<key>scope</key>
<string>active_guide</string>
<key>settings</key>
<dict>
<key>background</key>
<string>#968F96</string>
<key>fontStyle</key>
<string></string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Highlight Matching Word</string>
<key>scope</key>
<string>highlight_matching_word</string>
<key>settings</key>
<dict>
<key>background</key>
<string>#CBDC2F38</string>
<key>fontStyle</key>
<string></string>
</dict>
</dict>
</array>
<key>uuid</key>
<string>467560D0-6ACE-4409-82FD-4791420837AC</string>
</dict>
</plist>