Merge remote-tracking branch 'origin/master' into smoketest2

This commit is contained in:
Joao Moreno
2017-10-26 11:58:29 +02:00
828 changed files with 11188 additions and 6496 deletions
+1 -1
View File
@@ -6,7 +6,7 @@
accessibility: [],
api: [],
css-less-sass: [],
debug: [ isidorn ],
debug: [ weinand ],
editor: [],
editor-brackets: [],
editor-clipboard: [],
+1 -1
View File
@@ -1,5 +1,5 @@
{
newReleaseLabel: 'new release',
newReleases: ['1.17.2'],
perform: true
perform: false
}
+1 -1
View File
@@ -14,7 +14,7 @@
"**/node_modules": true,
"**/bower_components": true,
".build/**": true,
"out*/**": true,
"out/**": true,
"i18n/**": true,
"extensions/**/out/**": true,
"test/smoke/out/**": true
+1
View File
@@ -30,6 +30,7 @@ please see the document [How to Contribute](https://github.com/Microsoft/vscode/
* [The development workflow, including debugging and running tests](https://github.com/Microsoft/vscode/wiki/How-to-Contribute#development-workflow)
* [Coding Guidelines](https://github.com/Microsoft/vscode/wiki/Coding-Guidelines)
* [Submitting pull requests](https://github.com/Microsoft/vscode/wiki/How-to-Contribute#pull-requests)
* [Contributing to translations](https://aka.ms/vscodeloc)
Please see also our [Code of Conduct](CODE_OF_CONDUCT.md).
+1 -1
View File
@@ -236,7 +236,7 @@ const hygiene = exports.hygiene = (some, options) => {
this.emit('data', file);
});
const result = vfs.src(some || all, { base: '.', follow: true })
const result = vfs.src(some || all, { base: '.', follow: true, allowEmpty: true })
.pipe(filter(f => !f.stat.isDirectory()))
.pipe(filter(eolFilter))
.pipe(options.skipEOL ? es.through() : eol)
+70 -4
View File
@@ -45,7 +45,7 @@ const nodeModules = ['electron', 'original-fs']
// Build
const builtInExtensions = [
{ name: 'ms-vscode.node-debug', version: '1.18.1' },
{ name: 'ms-vscode.node-debug', version: '1.18.2' },
{ name: 'ms-vscode.node-debug2', version: '1.18.3' }
];
@@ -209,6 +209,7 @@ function computeChecksum(filename) {
return hash;
}
const buildNumber = getBuildNumber();
function packageTask(platform, arch, opts) {
opts = opts || {};
@@ -275,7 +276,7 @@ function packageTask(platform, arch, opts) {
const date = new Date().toISOString();
const productJsonStream = gulp.src(['product.json'], { base: '.' })
.pipe(json({ commit, date, checksums }));
.pipe(json({ commit, date, checksums, buildNumber }));
const license = gulp.src(['LICENSES.chromium.html', 'LICENSE.txt', 'ThirdPartyNotices.txt', 'licenses/**'], { base: '.' });
@@ -460,15 +461,80 @@ gulp.task('upload-vscode-configuration', ['generate-vscode-configuration'], () =
return;
}
if (!buildNumber) {
console.error('Failed to compute build number');
return;
}
return gulp.src(allConfigDetailsPath)
.pipe(azure.upload({
account: process.env.AZURE_STORAGE_ACCOUNT,
key: process.env.AZURE_STORAGE_ACCESS_KEY,
container: 'configuration',
prefix: `${versionStringToNumber(packageJson.version)}/${commit}/`
prefix: `${buildNumber}/${commit}/`
}));
});
function getBuildNumber() {
const previous = getPreviousVersion(packageJson.version);
if (!previous) {
return 0;
}
try {
const out = cp.execSync(`git rev-list ${previous}..HEAD --count`);
const count = parseInt(out.toString());
return versionStringToNumber(packageJson.version) * 1e4 + count;
} catch (e) {
console.error('Could not determine build number: ' + e.toString());
return 0;
}
}
/**
* Given 1.17.2, return 1.17.1
* 1.18.0 => 1.17.2.
* 2.0.0 => 1.18.0 (or the highest 1.x)
*/
function getPreviousVersion(versionStr) {
function tagExists(tagName) {
try {
cp.execSync(`git rev-parse ${tagName}`);
return true;
} catch (e) {
return false;
}
}
function getLastTagFromBase(semverArr, componentToTest) {
const baseVersion = semverArr.join('.');
if (!tagExists(baseVersion)) {
console.error('Failed to find tag for base version, ' + baseVersion);
return null;
}
let goodTag;
do {
goodTag = semverArr.join('.');
semverArr[componentToTest]++;
} while (tagExists(semverArr.join('.')));
return goodTag;
}
const semverArr = versionStr.split('.');
if (semverArr[2] > 0) {
semverArr[2]--;
return semverArr.join('.');
} else if (semverArr[1] > 0) {
semverArr[1]--;
return getLastTagFromBase(semverArr, 2);
} else {
semverArr[0]--;
return getLastTagFromBase(semverArr, 1);
}
}
function versionStringToNumber(versionStr) {
const semverRegex = /(\d+)\.(\d+)\.(\d+)/;
const match = versionStr.match(semverRegex);
@@ -476,7 +542,7 @@ function versionStringToNumber(versionStr) {
return 0;
}
return parseInt(match[1], 10) * 10000 + parseInt(match[2], 10) * 100 + parseInt(match[3], 10);
return parseInt(match[1], 10) * 1e4 + parseInt(match[2], 10) * 1e2 + parseInt(match[3], 10);
}
gulp.task('generate-vscode-configuration', () => {
+4
View File
@@ -186,6 +186,10 @@
"name": "vs/workbench/services/textMate",
"project": "vscode-workbench"
},
{
"name": "vs/workbench/services/workspace",
"project": "vscode-workbench"
},
{
"name": "setup_messages",
"project": "vscode-workbench"
+1 -1
View File
@@ -54,7 +54,7 @@ const extensions = [
'scss',
'shaderlab',
'shellscript',
// 'sql', customized, PRs pending
'sql',
'swift',
'typescript',
'vb',
+8 -2
View File
@@ -18,5 +18,11 @@
["[", "]"],
["(", ")"],
["\"", "\""]
]
}
],
"folding": {
"markers": {
"start": "^\\s*(::\\s*|REM\\s+)#region",
"end": "^\\s*(::\\s*|REM\\s+)#endregion"
}
}
}
@@ -4,7 +4,7 @@
"If you want to provide a fix or improvement, please create a pull request against the original repository.",
"Once accepted there, we are happy to receive an update request."
],
"version": "https://github.com/atom/language-coffee-script/commit/8873cbc4e2f3b790603cbe7102d60f41fc82f726",
"version": "https://github.com/atom/language-coffee-script/commit/3f0b6b0e28d64cd6d5a720bf7a25c969be636e7b",
"scopeName": "source.coffee",
"name": "CoffeeScript",
"fileTypes": [
@@ -47,7 +47,7 @@
"name": "punctuation.definition.string.end.coffee"
}
},
"name": "string.quoted.heredoc.coffee",
"name": "string.quoted.single.heredoc.coffee",
"patterns": [
{
"captures": {
@@ -143,7 +143,7 @@
{
"begin": "///",
"end": "(///)[gimuy]*",
"name": "string.regexp.coffee",
"name": "string.regexp.multiline.coffee",
"beginCaptures": {
"0": {
"name": "punctuation.definition.string.begin.coffee"
@@ -430,7 +430,7 @@
},
{
"c": "///",
"t": "source.coffee string.regexp.coffee punctuation.definition.string.begin.coffee",
"t": "source.coffee string.regexp.multiline.coffee punctuation.definition.string.begin.coffee",
"r": {
"dark_plus": "string.regexp: #D16969",
"light_plus": "string.regexp: #811F3F",
@@ -441,7 +441,7 @@
},
{
"c": " ",
"t": "source.coffee string.regexp.coffee",
"t": "source.coffee string.regexp.multiline.coffee",
"r": {
"dark_plus": "string.regexp: #D16969",
"light_plus": "string.regexp: #811F3F",
@@ -452,7 +452,7 @@
},
{
"c": "#{",
"t": "source.coffee string.regexp.coffee source.coffee.embedded.source punctuation.section.embedded.coffee",
"t": "source.coffee string.regexp.multiline.coffee source.coffee.embedded.source punctuation.section.embedded.coffee",
"r": {
"dark_plus": "punctuation.section.embedded: #569CD6",
"light_plus": "punctuation.section.embedded: #0000FF",
@@ -463,7 +463,7 @@
},
{
"c": "name",
"t": "source.coffee string.regexp.coffee source.coffee.embedded.source",
"t": "source.coffee string.regexp.multiline.coffee source.coffee.embedded.source",
"r": {
"dark_plus": "source.coffee.embedded: #9CDCFE",
"light_plus": "source.coffee.embedded: #FF0000",
@@ -474,7 +474,7 @@
},
{
"c": "}",
"t": "source.coffee string.regexp.coffee source.coffee.embedded.source punctuation.section.embedded.coffee",
"t": "source.coffee string.regexp.multiline.coffee source.coffee.embedded.source punctuation.section.embedded.coffee",
"r": {
"dark_plus": "punctuation.section.embedded: #569CD6",
"light_plus": "punctuation.section.embedded: #0000FF",
@@ -485,7 +485,7 @@
},
{
"c": "fancyRegExp = ",
"t": "source.coffee string.regexp.coffee",
"t": "source.coffee string.regexp.multiline.coffee",
"r": {
"dark_plus": "string.regexp: #D16969",
"light_plus": "string.regexp: #811F3F",
@@ -496,7 +496,7 @@
},
{
"c": "///",
"t": "source.coffee string.regexp.coffee punctuation.definition.string.end.coffee",
"t": "source.coffee string.regexp.multiline.coffee punctuation.definition.string.end.coffee",
"r": {
"dark_plus": "string.regexp: #D16969",
"light_plus": "string.regexp: #811F3F",
@@ -716,7 +716,7 @@
},
{
"c": "///",
"t": "source.coffee string.regexp.coffee punctuation.definition.string.begin.coffee",
"t": "source.coffee string.regexp.multiline.coffee punctuation.definition.string.begin.coffee",
"r": {
"dark_plus": "string.regexp: #D16969",
"light_plus": "string.regexp: #811F3F",
@@ -1354,7 +1354,7 @@
},
{
"c": "///",
"t": "source.coffee string.regexp.coffee punctuation.definition.string.begin.coffee",
"t": "source.coffee string.regexp.multiline.coffee punctuation.definition.string.begin.coffee",
"r": {
"dark_plus": "string.regexp: #D16969",
"light_plus": "string.regexp: #811F3F",
@@ -1365,7 +1365,7 @@
},
{
"c": "\t",
"t": "source.coffee string.regexp.coffee",
"t": "source.coffee string.regexp.multiline.coffee",
"r": {
"dark_plus": "string.regexp: #D16969",
"light_plus": "string.regexp: #811F3F",
@@ -1376,7 +1376,7 @@
},
{
"c": "(",
"t": "source.coffee string.regexp.coffee meta.group.regexp punctuation.definition.group.regexp",
"t": "source.coffee string.regexp.multiline.coffee meta.group.regexp punctuation.definition.group.regexp",
"r": {
"dark_plus": "punctuation.definition.group.regexp: #CE9178",
"light_plus": "punctuation.definition.group.regexp: #D16969",
@@ -1387,7 +1387,7 @@
},
{
"c": "\\d",
"t": "source.coffee string.regexp.coffee meta.group.regexp constant.character.character-class.regexp",
"t": "source.coffee string.regexp.multiline.coffee meta.group.regexp constant.character.character-class.regexp",
"r": {
"dark_plus": "constant.character.character-class.regexp: #D16969",
"light_plus": "constant.character.character-class.regexp: #811F3F",
@@ -1398,7 +1398,7 @@
},
{
"c": "+",
"t": "source.coffee string.regexp.coffee meta.group.regexp keyword.operator.quantifier.regexp",
"t": "source.coffee string.regexp.multiline.coffee meta.group.regexp keyword.operator.quantifier.regexp",
"r": {
"dark_plus": "keyword.operator.quantifier.regexp: #D7BA7D",
"light_plus": "keyword.operator.quantifier.regexp: #000000",
@@ -1409,7 +1409,7 @@
},
{
"c": ")",
"t": "source.coffee string.regexp.coffee meta.group.regexp punctuation.definition.group.regexp",
"t": "source.coffee string.regexp.multiline.coffee meta.group.regexp punctuation.definition.group.regexp",
"r": {
"dark_plus": "punctuation.definition.group.regexp: #CE9178",
"light_plus": "punctuation.definition.group.regexp: #D16969",
@@ -1420,7 +1420,7 @@
},
{
"c": "\t",
"t": "source.coffee string.regexp.coffee",
"t": "source.coffee string.regexp.multiline.coffee",
"r": {
"dark_plus": "string.regexp: #D16969",
"light_plus": "string.regexp: #811F3F",
@@ -1431,7 +1431,7 @@
},
{
"c": "#",
"t": "source.coffee string.regexp.coffee comment.line.number-sign.coffee punctuation.definition.comment.coffee",
"t": "source.coffee string.regexp.multiline.coffee comment.line.number-sign.coffee punctuation.definition.comment.coffee",
"r": {
"dark_plus": "comment: #608B4E",
"light_plus": "comment: #008000",
@@ -1442,7 +1442,7 @@
},
{
"c": " numbers",
"t": "source.coffee string.regexp.coffee comment.line.number-sign.coffee",
"t": "source.coffee string.regexp.multiline.coffee comment.line.number-sign.coffee",
"r": {
"dark_plus": "comment: #608B4E",
"light_plus": "comment: #008000",
@@ -1453,7 +1453,7 @@
},
{
"c": "\t",
"t": "source.coffee string.regexp.coffee",
"t": "source.coffee string.regexp.multiline.coffee",
"r": {
"dark_plus": "string.regexp: #D16969",
"light_plus": "string.regexp: #811F3F",
@@ -1464,7 +1464,7 @@
},
{
"c": "(",
"t": "source.coffee string.regexp.coffee meta.group.regexp punctuation.definition.group.regexp",
"t": "source.coffee string.regexp.multiline.coffee meta.group.regexp punctuation.definition.group.regexp",
"r": {
"dark_plus": "punctuation.definition.group.regexp: #CE9178",
"light_plus": "punctuation.definition.group.regexp: #D16969",
@@ -1475,7 +1475,7 @@
},
{
"c": "\\w",
"t": "source.coffee string.regexp.coffee meta.group.regexp constant.character.character-class.regexp",
"t": "source.coffee string.regexp.multiline.coffee meta.group.regexp constant.character.character-class.regexp",
"r": {
"dark_plus": "constant.character.character-class.regexp: #D16969",
"light_plus": "constant.character.character-class.regexp: #811F3F",
@@ -1486,7 +1486,7 @@
},
{
"c": "*",
"t": "source.coffee string.regexp.coffee meta.group.regexp keyword.operator.quantifier.regexp",
"t": "source.coffee string.regexp.multiline.coffee meta.group.regexp keyword.operator.quantifier.regexp",
"r": {
"dark_plus": "keyword.operator.quantifier.regexp: #D7BA7D",
"light_plus": "keyword.operator.quantifier.regexp: #000000",
@@ -1497,7 +1497,7 @@
},
{
"c": ")",
"t": "source.coffee string.regexp.coffee meta.group.regexp punctuation.definition.group.regexp",
"t": "source.coffee string.regexp.multiline.coffee meta.group.regexp punctuation.definition.group.regexp",
"r": {
"dark_plus": "punctuation.definition.group.regexp: #CE9178",
"light_plus": "punctuation.definition.group.regexp: #D16969",
@@ -1508,7 +1508,7 @@
},
{
"c": "\t",
"t": "source.coffee string.regexp.coffee",
"t": "source.coffee string.regexp.multiline.coffee",
"r": {
"dark_plus": "string.regexp: #D16969",
"light_plus": "string.regexp: #811F3F",
@@ -1519,7 +1519,7 @@
},
{
"c": "#",
"t": "source.coffee string.regexp.coffee comment.line.number-sign.coffee punctuation.definition.comment.coffee",
"t": "source.coffee string.regexp.multiline.coffee comment.line.number-sign.coffee punctuation.definition.comment.coffee",
"r": {
"dark_plus": "comment: #608B4E",
"light_plus": "comment: #008000",
@@ -1530,7 +1530,7 @@
},
{
"c": " letters",
"t": "source.coffee string.regexp.coffee comment.line.number-sign.coffee",
"t": "source.coffee string.regexp.multiline.coffee comment.line.number-sign.coffee",
"r": {
"dark_plus": "comment: #608B4E",
"light_plus": "comment: #008000",
@@ -1541,7 +1541,7 @@
},
{
"c": "\t",
"t": "source.coffee string.regexp.coffee",
"t": "source.coffee string.regexp.multiline.coffee",
"r": {
"dark_plus": "string.regexp: #D16969",
"light_plus": "string.regexp: #811F3F",
@@ -1552,7 +1552,7 @@
},
{
"c": "$",
"t": "source.coffee string.regexp.coffee keyword.control.anchor.regexp",
"t": "source.coffee string.regexp.multiline.coffee keyword.control.anchor.regexp",
"r": {
"dark_plus": "keyword.control.anchor.regexp: #DCDCAA",
"light_plus": "keyword.control.anchor.regexp: #FF0000",
@@ -1563,7 +1563,7 @@
},
{
"c": "\t\t",
"t": "source.coffee string.regexp.coffee",
"t": "source.coffee string.regexp.multiline.coffee",
"r": {
"dark_plus": "string.regexp: #D16969",
"light_plus": "string.regexp: #811F3F",
@@ -1574,7 +1574,7 @@
},
{
"c": "#",
"t": "source.coffee string.regexp.coffee comment.line.number-sign.coffee punctuation.definition.comment.coffee",
"t": "source.coffee string.regexp.multiline.coffee comment.line.number-sign.coffee punctuation.definition.comment.coffee",
"r": {
"dark_plus": "comment: #608B4E",
"light_plus": "comment: #008000",
@@ -1585,7 +1585,7 @@
},
{
"c": " the end",
"t": "source.coffee string.regexp.coffee comment.line.number-sign.coffee",
"t": "source.coffee string.regexp.multiline.coffee comment.line.number-sign.coffee",
"r": {
"dark_plus": "comment: #608B4E",
"light_plus": "comment: #008000",
@@ -1596,7 +1596,7 @@
},
{
"c": "///",
"t": "source.coffee string.regexp.coffee punctuation.definition.string.end.coffee",
"t": "source.coffee string.regexp.multiline.coffee punctuation.definition.string.end.coffee",
"r": {
"dark_plus": "string.regexp: #D16969",
"light_plus": "string.regexp: #811F3F",
+1 -1
View File
@@ -4,7 +4,7 @@
"If you want to provide a fix or improvement, please create a pull request against the original repository.",
"Once accepted there, we are happy to receive an update request."
],
"version": "https://github.com/atom/language-c/commit/0a57fd7ee32bd14e3ee8291434263d744a8ecf1e",
"version": "https://github.com/atom/language-c/commit/9c0c5f202741a5647025db8d5df5fefba47b036c",
"scopeName": "source.c",
"fileTypes": [
"c",
@@ -0,0 +1,3 @@
#ifndef _UCRT
#define _UCRT
#endif
@@ -0,0 +1,112 @@
[
{
"c": "#",
"t": "source.cpp meta.preprocessor.c keyword.control.directive.conditional.c punctuation.definition.directive.c",
"r": {
"dark_plus": "keyword.control: #C586C0",
"light_plus": "keyword.control: #AF00DB",
"dark_vs": "keyword.control: #569CD6",
"light_vs": "keyword.control: #0000FF",
"hc_black": "keyword.control: #C586C0"
}
},
{
"c": "ifndef",
"t": "source.cpp meta.preprocessor.c keyword.control.directive.conditional.c",
"r": {
"dark_plus": "keyword.control: #C586C0",
"light_plus": "keyword.control: #AF00DB",
"dark_vs": "keyword.control: #569CD6",
"light_vs": "keyword.control: #0000FF",
"hc_black": "keyword.control: #C586C0"
}
},
{
"c": " ",
"t": "source.cpp meta.preprocessor.c",
"r": {
"dark_plus": "meta.preprocessor: #569CD6",
"light_plus": "meta.preprocessor: #0000FF",
"dark_vs": "meta.preprocessor: #569CD6",
"light_vs": "meta.preprocessor: #0000FF",
"hc_black": "meta.preprocessor: #569CD6"
}
},
{
"c": "_UCRT",
"t": "source.cpp meta.preprocessor.c entity.name.function.preprocessor.c",
"r": {
"dark_plus": "entity.name.function: #DCDCAA",
"light_plus": "entity.name.function: #795E26",
"dark_vs": "meta.preprocessor: #569CD6",
"light_vs": "meta.preprocessor: #0000FF",
"hc_black": "entity.name.function: #DCDCAA"
}
},
{
"c": "#",
"t": "source.cpp meta.preprocessor.macro.c keyword.control.directive.define.c punctuation.definition.directive.c",
"r": {
"dark_plus": "keyword.control: #C586C0",
"light_plus": "keyword.control: #AF00DB",
"dark_vs": "keyword.control: #569CD6",
"light_vs": "keyword.control: #0000FF",
"hc_black": "keyword.control: #C586C0"
}
},
{
"c": "define",
"t": "source.cpp meta.preprocessor.macro.c keyword.control.directive.define.c",
"r": {
"dark_plus": "keyword.control: #C586C0",
"light_plus": "keyword.control: #AF00DB",
"dark_vs": "keyword.control: #569CD6",
"light_vs": "keyword.control: #0000FF",
"hc_black": "keyword.control: #C586C0"
}
},
{
"c": " ",
"t": "source.cpp meta.preprocessor.macro.c",
"r": {
"dark_plus": "meta.preprocessor: #569CD6",
"light_plus": "meta.preprocessor: #0000FF",
"dark_vs": "meta.preprocessor: #569CD6",
"light_vs": "meta.preprocessor: #0000FF",
"hc_black": "meta.preprocessor: #569CD6"
}
},
{
"c": "_UCRT",
"t": "source.cpp meta.preprocessor.macro.c entity.name.function.preprocessor.c",
"r": {
"dark_plus": "entity.name.function: #DCDCAA",
"light_plus": "entity.name.function: #795E26",
"dark_vs": "meta.preprocessor: #569CD6",
"light_vs": "meta.preprocessor: #0000FF",
"hc_black": "entity.name.function: #DCDCAA"
}
},
{
"c": "#",
"t": "source.cpp meta.preprocessor.c keyword.control.directive.conditional.c punctuation.definition.directive.c",
"r": {
"dark_plus": "keyword.control: #C586C0",
"light_plus": "keyword.control: #AF00DB",
"dark_vs": "keyword.control: #569CD6",
"light_vs": "keyword.control: #0000FF",
"hc_black": "keyword.control: #C586C0"
}
},
{
"c": "endif",
"t": "source.cpp meta.preprocessor.c keyword.control.directive.conditional.c",
"r": {
"dark_plus": "keyword.control: #C586C0",
"light_plus": "keyword.control: #AF00DB",
"dark_vs": "keyword.control: #569CD6",
"light_vs": "keyword.control: #0000FF",
"hc_black": "keyword.control: #C586C0"
}
}
]
File diff suppressed because one or more lines are too long
+1 -1
View File
@@ -15,7 +15,7 @@
"url": "https://github.com/Microsoft/vscode-emmet"
},
"activationEvents": [
"onCommand:type",
"*",
"onCommand:emmet.expandAbbreviation",
"onLanguage:html",
"onLanguage:css",
+23 -2
View File
@@ -4,7 +4,7 @@
"If you want to provide a fix or improvement, please create a pull request against the original repository.",
"Once accepted there, we are happy to receive an update request."
],
"version": "https://github.com/ionide/ionide-fsgrammar/commit/826aa0690b4a1fb536485cc2806fa73b451fcee7",
"version": "https://github.com/ionide/ionide-fsgrammar/commit/7a24912ecdc886e4d973d6d3ab8df20a0feeda76",
"name": "fsharp",
"scopeName": "source.fsharp",
"fileTypes": [
@@ -330,7 +330,12 @@
"1": {
"name": "punctuation.definition.string.end.fsharp"
}
}
},
"patterns": [
{
"include": "#string_formatter"
}
]
},
{
"name": "string.quoted.double.fsharp",
@@ -358,11 +363,27 @@
{
"name": "invalid.illeagal.character.string.fsharp",
"match": "\\\\(?![\\\\''ntbr]|u[a-fA-F0-9]{4}|u[a-fA-F0-9]{8})."
},
{
"include": "#string_formatter"
}
]
}
]
},
"string_formatter": {
"patterns": [
{
"name": "entity.name.type.format.specifier.fsharp",
"match": "(%0?-?(\\d+)?((a|t)|(\\.\\d+)?(f|F|e|E|g|G|M)|(b|c|s|d|i|x|X|o)|(s|b|O)|(\\+?A)))",
"captures": {
"1": {
"name": "keyword.other.format.specifier.fsharp"
}
}
}
]
},
"variables": {
"patterns": [
{
+20 -2
View File
@@ -837,16 +837,25 @@
"id": "git.color.modified",
"description": "Color for modified resources",
"defaults": {
"light": "#D58809",
"light": "#a76e12",
"dark": "#E2C08D",
"highContrast": "#E2C08D"
}
},
{
"id": "git.color.deleted",
"description": "Color for deleted resources",
"defaults": {
"light": "#ad0707",
"dark": "#c74e39",
"highContrast": "#c74e39"
}
},
{
"id": "git.color.untracked",
"description": "Color for untracked resources",
"defaults": {
"light": "#00B333",
"light": "#019001",
"dark": "#73C991",
"highContrast": "#73C991"
}
@@ -859,6 +868,15 @@
"dark": "#A7A8A9",
"highContrast": "#A7A8A9"
}
},
{
"id": "git.color.conflict",
"description": "Color for resources with conflicts",
"defaults": {
"light": "#6c6cc4",
"dark": "#6c6cc4",
"highContrast": "#6c6cc4"
}
}
]
},
+82 -7
View File
@@ -171,8 +171,9 @@ export class Resource implements SourceControlResourceState {
}
get decorations(): SourceControlResourceDecorations {
const light = { iconPath: this.getIconPath('light') };
const dark = { iconPath: this.getIconPath('dark') };
// TODO@joh
const light = { iconPath: this.getIconPath('light') } && undefined;
const dark = { iconPath: this.getIconPath('dark') } && undefined;
const tooltip = this.tooltip;
const strikeThrough = this.strikeThrough;
const faded = this.faded;
@@ -180,19 +181,93 @@ export class Resource implements SourceControlResourceState {
return { strikeThrough, faded, tooltip, light, dark };
}
get resourceDecoration(): DecorationData | undefined {
const title = this.tooltip;
get letter(): string | undefined {
switch (this.type) {
case Status.UNTRACKED:
return { priority: 1, title, abbreviation: localize('untracked, short', "U"), bubble: true, color: new ThemeColor('git.color.untracked') };
case Status.INDEX_MODIFIED:
case Status.MODIFIED:
return { priority: 2, title, abbreviation: localize('modified, short', "M"), bubble: true, color: new ThemeColor('git.color.modified') };
return 'M';
case Status.INDEX_ADDED:
return 'A';
case Status.INDEX_DELETED:
case Status.DELETED:
return 'D';
case Status.INDEX_RENAMED:
return 'R';
case Status.UNTRACKED:
return 'U';
case Status.IGNORED:
return 'I';
case Status.INDEX_COPIED:
case Status.BOTH_DELETED:
case Status.ADDED_BY_US:
case Status.DELETED_BY_THEM:
case Status.ADDED_BY_THEM:
case Status.DELETED_BY_US:
case Status.BOTH_ADDED:
case Status.BOTH_MODIFIED:
return 'C';
default:
return undefined;
}
}
get color(): ThemeColor | undefined {
switch (this.type) {
case Status.INDEX_MODIFIED:
case Status.MODIFIED:
return new ThemeColor('git.color.modified');
case Status.INDEX_DELETED:
case Status.DELETED:
return new ThemeColor('git.color.deleted');
case Status.INDEX_ADDED: // todo@joh - special color?
case Status.INDEX_RENAMED: // todo@joh - special color?
case Status.UNTRACKED:
return new ThemeColor('git.color.untracked');
case Status.IGNORED:
return new ThemeColor('git.color.ignored');
case Status.INDEX_COPIED:
case Status.BOTH_DELETED:
case Status.ADDED_BY_US:
case Status.DELETED_BY_THEM:
case Status.ADDED_BY_THEM:
case Status.DELETED_BY_US:
case Status.BOTH_ADDED:
case Status.BOTH_MODIFIED:
return new ThemeColor('git.color.conflict');
default:
return undefined;
}
}
get priority(): number {
switch (this.type) {
case Status.INDEX_MODIFIED:
case Status.MODIFIED:
return 2;
case Status.IGNORED:
return 3;
case Status.INDEX_COPIED:
case Status.BOTH_DELETED:
case Status.ADDED_BY_US:
case Status.DELETED_BY_THEM:
case Status.ADDED_BY_THEM:
case Status.DELETED_BY_US:
case Status.BOTH_ADDED:
case Status.BOTH_MODIFIED:
return 4;
default:
return 1;
}
}
get resourceDecoration(): DecorationData | undefined {
const title = this.tooltip;
const abbreviation = this.letter;
const color = this.color;
const priority = this.priority;
return { bubble: true, title, abbreviation, color, priority };
}
constructor(
private _resourceGroupType: ResourceGroupType,
private _resourceUri: Uri,
+4 -4
View File
@@ -4,7 +4,7 @@
"If you want to provide a fix or improvement, please create a pull request against the original repository.",
"Once accepted there, we are happy to receive an update request."
],
"version": "https://github.com/atom/language-go/commit/c413bc93966c03031cd114c53c54bc7927eea25b",
"version": "https://github.com/atom/language-go/commit/f7c6ca60bfd9d11252560b21e9378e5f82438ce3",
"scopeName": "source.go",
"name": "Go",
"comment": "Go language",
@@ -233,7 +233,7 @@
]
},
{
"match": "(?<!var)\\s*(\\w+(?:\\.\\w+)?(?:,\\s*\\w+(?:\\.\\w+)?)*)(?=\\s*=(?!=))",
"match": "(?<!var)\\s*(\\w+(?:\\.\\w+)*(?>,\\s*\\w+(?:\\.\\w+)*)*)(?=\\s*=(?!=))",
"captures": {
"1": {
"patterns": [
@@ -242,7 +242,7 @@
"name": "invalid.illegal.identifier.go"
},
{
"match": "\\w+(?:\\.\\w+)?",
"match": "\\w+(?:\\.\\w+)*",
"name": "variable.other.assignment.go",
"captures": {
"0": {
@@ -627,7 +627,7 @@
}
},
{
"match": "(\\w+(?:,\\s*\\w+)*)(\\s+(\\[(\\d*|\\.\\.\\.)\\])*\\*?\\w+(?:\\.\\w+)?\\s*[^=].*)",
"match": "(\\w+(?:,\\s*\\w+)*)(\\s+(\\[(\\d*|\\.\\.\\.)\\])*\\*?(<-)?\\w+(?:\\.\\w+)?\\s*[^=].*)",
"captures": {
"1": {
"patterns": [
+29 -9
View File
@@ -4,7 +4,7 @@
"If you want to provide a fix or improvement, please create a pull request against the original repository.",
"Once accepted there, we are happy to receive an update request."
],
"version": "https://github.com/atom/language-java/commit/4eb3d906f572ef1999b7ebf0708c841d36b32f0b",
"version": "https://github.com/atom/language-java/commit/26b83893bf071f291481c924051462e17d2f77cd",
"scopeName": "source.java",
"name": "Java",
"fileTypes": [
@@ -121,18 +121,21 @@
"annotations": {
"patterns": [
{
"begin": "(@[^ (]+)(\\()",
"begin": "((@)[^\\s(]+)(\\()",
"beginCaptures": {
"1": {
"name": "storage.type.annotation.java"
},
"2": {
"name": "punctuation.definition.annotation.java"
},
"3": {
"name": "punctuation.definition.annotation-arguments.begin.bracket.round.java"
}
},
"end": "(\\))",
"end": "\\)",
"endCaptures": {
"1": {
"0": {
"name": "punctuation.definition.annotation-arguments.end.bracket.round.java"
}
},
@@ -155,8 +158,25 @@
]
},
{
"match": "@\\w*",
"name": "storage.type.annotation.java"
"match": "(@)(interface)\\s+(\\w*)|((@)\\w*)",
"name": "meta.declaration.annotation.java",
"captures": {
"1": {
"name": "punctuation.definition.annotation.java"
},
"2": {
"name": "storage.modifier.java"
},
"3": {
"name": "storage.type.annotation.java"
},
"4": {
"name": "storage.type.annotation.java"
},
"5": {
"name": "punctuation.definition.annotation.java"
}
}
}
]
},
@@ -224,7 +244,7 @@
]
},
"class": {
"begin": "(?=\\w?[\\w\\s]*(?:class|(?:@)?interface|enum)\\s+\\w+)",
"begin": "(?=\\w?[\\w\\s]*(?:class|(?<!@)interface|enum)\\s+\\w+)",
"end": "}",
"endCaptures": {
"0": {
@@ -251,7 +271,7 @@
"name": "entity.name.type.class.java"
}
},
"match": "(class|(?:@)?interface|enum)\\s+(\\w+)",
"match": "(class|(?<!@)interface|enum)\\s+(\\w+)",
"name": "meta.class.identifier.java"
},
{
@@ -1323,7 +1343,7 @@
]
},
"variables": {
"begin": "(?x)\n(?=\n (\n (void|boolean|byte|char|short|int|float|long|double)\n |\n (?>(\\w+\\.)*[A-Z]+\\w*) # e.g. `javax.ws.rs.Response`, or `String`\n )\n (\n <[\\w<>,?\\s]*> # HashMap<Integer, String>\n |\n (\\[\\])* # int[][]\n )?\n \\s+\n [A-Za-z_$][\\w$]* # At least one identifier after space\n ([\\w\\[\\],$][\\w\\[\\],\\s]*)? # possibly primitive array or additional identifiers\n \\s*(=|;)\n)",
"begin": "(?x)\n(?=\n (\n (void|boolean|byte|char|short|int|float|long|double)\n |\n (?>(\\w+\\.)*[A-Z]+\\w*) # e.g. `javax.ws.rs.Response`, or `String`\n )\n (\n <[\\w<>,?\\s]*> # HashMap<Integer, String>\n )?\n (\n (\\[\\])* # int[][]\n )?\n \\s+\n [A-Za-z_$][\\w$]* # At least one identifier after space\n ([\\w\\[\\],$][\\w\\[\\],\\s]*)? # possibly primitive array or additional identifiers\n \\s*(=|;)\n)",
"end": "(?=;)",
"name": "meta.definition.variable.java",
"patterns": [
@@ -1056,7 +1056,18 @@
}
},
{
"c": "@SuppressWarnings",
"c": "@",
"t": "source.java meta.class.java meta.class.body.java meta.declaration.annotation.java storage.type.annotation.java punctuation.definition.annotation.java",
"r": {
"dark_plus": "storage.type.annotation.java: #4EC9B0",
"light_plus": "storage.type.annotation.java: #267F99",
"dark_vs": "storage.type: #569CD6",
"light_vs": "storage.type: #0000FF",
"hc_black": "storage.type.annotation.java: #4EC9B0"
}
},
{
"c": "SuppressWarnings",
"t": "source.java meta.class.java meta.class.body.java meta.declaration.annotation.java storage.type.annotation.java",
"r": {
"dark_plus": "storage.type.annotation.java: #4EC9B0",
@@ -1848,8 +1859,19 @@
}
},
{
"c": "@Test",
"t": "source.java meta.class.java meta.class.body.java storage.type.annotation.java",
"c": "@",
"t": "source.java meta.class.java meta.class.body.java meta.declaration.annotation.java storage.type.annotation.java punctuation.definition.annotation.java",
"r": {
"dark_plus": "storage.type.annotation.java: #4EC9B0",
"light_plus": "storage.type.annotation.java: #267F99",
"dark_vs": "storage.type: #569CD6",
"light_vs": "storage.type: #0000FF",
"hc_black": "storage.type.annotation.java: #4EC9B0"
}
},
{
"c": "Test",
"t": "source.java meta.class.java meta.class.body.java meta.declaration.annotation.java storage.type.annotation.java",
"r": {
"dark_plus": "storage.type.annotation.java: #4EC9B0",
"light_plus": "storage.type.annotation.java: #267F99",
+4
View File
@@ -177,6 +177,10 @@
{
"command": "markdown.showPreviewSecuritySelector",
"when": "editorLangId == markdown"
},
{
"command": "markdown.showPreviewSecuritySelector",
"when": "resourceScheme == markdown"
}
]
},
+1 -1
View File
@@ -3,7 +3,7 @@
"version": "0.0.1",
"description": "Dependencies shared by all extensions",
"dependencies": {
"typescript": "^2.6.1-insiders.20171019"
"typescript": "2.6.1-insiders.20171019"
},
"scripts": {
"postinstall": "node ./postinstall"
@@ -26,5 +26,11 @@
"indentationRules": {
"increaseIndentPattern": "({(?!.+}).*|\\(|\\[|((else(\\s)?)?if|else|for(each)?|while|switch).*:)\\s*(/[/*].*)?$",
"decreaseIndentPattern": "^(.*\\*\\/)?\\s*((\\})|(\\)+[;,])|(\\][;,])|\\b(else:)|\\b((end(if|for(each)?|while|switch));))"
},
"folding": {
"markers": {
"start": "^\\s*(#|\/\/)region\\b",
"end": "^\\s*(#|\/\/)endregion\\b"
}
}
}
+4 -43
View File
@@ -4,7 +4,7 @@
"If you want to provide a fix or improvement, please create a pull request against the original repository.",
"Once accepted there, we are happy to receive an update request."
],
"version": "https://github.com/atom/language-php/commit/8f56c3d5a59fb26e028a8b02c697920c73214fca",
"version": "https://github.com/atom/language-php/commit/71231bfb975ac56d9c13c5b4cda21c081ebbc6ee",
"scopeName": "text.html.php",
"name": "PHP",
"fileTypes": [
@@ -20,7 +20,8 @@
"php5",
"phpt",
"phtml",
"profile"
"profile",
"theme"
],
"firstLineMatch": "(?x)\n# Hashbang\n^\\#!.*(?:\\s|\\/)\n php\\d?\n(?:$|\\s)\n|\n# Modeline\n(?i:\n # Emacs\n -\\*-(?:\\s*(?=[^:;\\s]+\\s*-\\*-)|(?:.*?[;\\s]|(?<=-\\*-))mode\\s*:\\s*)\n php\n (?=[\\s;]|(?<![-*])-\\*-).*?-\\*-\n |\n # Vim\n (?:(?:\\s|^)vi(?:m[<=>]?\\d+|m)?|\\sex)(?=:(?=\\s*set?\\s[^\\n:]+:)|:(?!\\s*set?\\s))(?:(?:\\s|\\s*:\\s*)\\w*(?:\\s*=(?:[^\\n\\\\\\s]|\\\\.)*)?)*[\\s:](?:filetype|ft|syntax)\\s*=\n (?:php|phtml)\n (?=\\s|:|$)\n)",
"foldingStartMarker": "(/\\*|\\{\\s*$|<<<HTML)",
@@ -28,46 +29,6 @@
"injections": {
"text.html.php - (meta.embedded | meta.tag), L:text.html.php meta.tag, L:text.html.php source.js": {
"patterns": [
{
"begin": "(^\\s*)(?=<\\?(?![^?]*\\?>))",
"beginCaptures": {
"0": {
"name": "punctuation.whitespace.embedded.leading.php"
}
},
"end": "(?!\\G)(\\s*$\\n)?",
"endCaptures": {
"0": {
"name": "punctuation.whitespace.embedded.trailing.php"
}
},
"patterns": [
{
"begin": "<\\?(?i:php|=)?",
"beginCaptures": {
"0": {
"name": "punctuation.section.embedded.begin.php"
}
},
"contentName": "source.php",
"end": "(\\?)>",
"endCaptures": {
"0": {
"name": "punctuation.section.embedded.end.php"
},
"1": {
"name": "source.php"
}
},
"name": "meta.embedded.block.php",
"patterns": [
{
"include": "#language"
}
]
}
]
},
{
"begin": "<\\?(?i:php|=)?(?![^?]*\\?>)",
"beginCaptures": {
@@ -2556,7 +2517,7 @@
"scope-resolution": {
"patterns": [
{
"match": "(?i)\\b([a-z_\\x{7f}-\\x{ff}][a-z0-9_\\x{7f}-\\x{ff}]*)(?=\\s*::)",
"match": "(?i)([a-z_\\x{7f}-\\x{ff}\\\\][a-z0-9_\\x{7f}-\\x{ff}\\\\]*)(?=\\s*::)",
"captures": {
"1": {
"patterns": [
@@ -56,7 +56,7 @@
},
{
"c": " ",
"t": "text.html.php meta.embedded.block.html source.js punctuation.whitespace.embedded.leading.php",
"t": "text.html.php meta.embedded.block.html source.js",
"r": {
"dark_plus": "meta.embedded: #D4D4D4",
"light_plus": "meta.embedded: #000000",
@@ -45,7 +45,7 @@
</dict>
<dict>
<key>begin</key>
<string>(?&lt;![\\-])#</string>
<string>(?&lt;![`\\-])#</string>
<key>end</key>
<string>$</string>
<key>name</key>
+14 -10
View File
@@ -4,7 +4,7 @@
"If you want to provide a fix or improvement, please create a pull request against the original repository.",
"Once accepted there, we are happy to receive an update request."
],
"version": "https://github.com/Ikuyadeu/vscode-R/commit/0ad8c770ea3836b15bc121fff4161a794d3deeaa",
"version": "https://github.com/Ikuyadeu/vscode-R/commit/b3ef459a3999160d97ea28f4754fda810417f99f",
"fileTypes": [
"R",
"r",
@@ -178,11 +178,15 @@
"name": "keyword.operator.arithmetic.r"
},
{
"match": "(=|<-|<<-|->|->>)",
"match": "==",
"name": "keyword.operator.comarison.r"
},
{
"match": "(:=|<-|<<-|->|->>)",
"name": "keyword.operator.assignment.r"
},
{
"match": "(==|!=|<>|<|>|<=|>=)",
"match": "(!=|<>|<|>|<=|>=|%in%)",
"name": "keyword.operator.comparison.r"
},
{
@@ -190,7 +194,7 @@
"name": "keyword.operator.logical.r"
},
{
"match": "(%in%|:=|%between%|%chin%|%like%|%\\+%|%\\+replace%|%:%|%do%|%dopar%|%>%|%<>%|%T>%|%\\$%)",
"match": "(%between%|%chin%|%like%|%\\+%|%\\+replace%|%:%|%do%|%dopar%|%>%|%<>%|%T>%|%\\$%)",
"name": "keyword.operator.other.r"
},
{
@@ -337,7 +341,7 @@
"function-declarations": {
"patterns": [
{
"begin": "^\\s*([a-zA-Z0-9._:]*)\\s*(<<?-|=)\\s*(?=function\\s*\\()",
"begin": "^\\s*([a-zA-Z._][\\w.:]*)\\s*(<<?-|=)\\s*(?=function\\s*\\()",
"beginCaptures": {
"1": {
"name": "entity.name.function.r"
@@ -349,7 +353,7 @@
"name": "keyword.control.r"
}
},
"end": "",
"end": "(?<=\\))",
"name": "meta.function.r",
"patterns": [
{
@@ -384,7 +388,7 @@
"include": "#comments"
},
{
"match": "(?:[a-zA-Z._][a-zA-Z0-9._]*|`[^`]+`)",
"match": "(?:[a-zA-Z._][\\w.]*|`[^`]+`)",
"name": "variable.parameter.r"
},
{
@@ -405,7 +409,7 @@
]
},
"function-calls": {
"begin": "(?:\\b|(?=\\.))((?:[a-zA-Z._][a-zA-Z0-9._]*|`[^`]+`))\\s*(\\()",
"begin": "(?:\\b|(?=\\.))((?:[a-zA-Z._][\\w.]*|`[^`]+`))\\s*(\\()",
"beginCaptures": {
"1": {
"name": "variable.function.r"
@@ -435,7 +439,7 @@
"contentName": "meta.function-call.parameters.r"
},
{
"match": "(?:[a-zA-Z._][a-zA-Z0-9._]*|`[^`]+`)(?=\\s[^=])",
"match": "(?:[a-zA-Z._][\\w.]*|`[^`]+`)(?=\\s[^=])",
"name": "variable.parameter.r"
},
{
@@ -483,7 +487,7 @@
"name": "variable.parameter.r"
}
},
"match": "(@param)\\s*((?:[a-zA-Z._][a-zA-Z0-9._]*|`[^`]+`))"
"match": "(@param)\\s*((?:[a-zA-Z._][\\w.]*|`[^`]+`))"
},
{
"match": "@[a-zA-Z0-9]+",
@@ -353,7 +353,7 @@
},
{
"c": "function",
"t": "source.r meta.function.r keyword.control.r",
"t": "source.r meta.function.r meta.function.r keyword.control.r",
"r": {
"dark_plus": "keyword.control: #C586C0",
"light_plus": "keyword.control: #AF00DB",
@@ -364,7 +364,7 @@
},
{
"c": "(",
"t": "source.r meta.function.r punctuation.section.parens.begin.r",
"t": "source.r meta.function.r meta.function.r punctuation.section.parens.begin.r",
"r": {
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",
@@ -375,7 +375,7 @@
},
{
"c": "x",
"t": "source.r meta.function.r meta.function.parameters.r variable.parameter.r",
"t": "source.r meta.function.r meta.function.r meta.function.parameters.r variable.parameter.r",
"r": {
"dark_plus": "variable: #9CDCFE",
"light_plus": "variable: #001080",
@@ -386,7 +386,7 @@
},
{
"c": ",",
"t": "source.r meta.function.r meta.function.parameters.r punctuation.separator.parameters.r",
"t": "source.r meta.function.r meta.function.r meta.function.parameters.r punctuation.separator.parameters.r",
"r": {
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",
@@ -397,7 +397,7 @@
},
{
"c": " ",
"t": "source.r meta.function.r meta.function.parameters.r",
"t": "source.r meta.function.r meta.function.r meta.function.parameters.r",
"r": {
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",
@@ -408,7 +408,7 @@
},
{
"c": "y",
"t": "source.r meta.function.r meta.function.parameters.r variable.parameter.r",
"t": "source.r meta.function.r meta.function.r meta.function.parameters.r variable.parameter.r",
"r": {
"dark_plus": "variable: #9CDCFE",
"light_plus": "variable: #001080",
@@ -419,7 +419,7 @@
},
{
"c": ")",
"t": "source.r meta.function.r punctuation.section.parens.end.r",
"t": "source.r meta.function.r meta.function.r punctuation.section.parens.end.r",
"r": {
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",
@@ -4,7 +4,7 @@
"If you want to provide a fix or improvement, please create a pull request against the original repository.",
"Once accepted there, we are happy to receive an update request."
],
"version": "https://github.com/zargony/atom-language-rust/commit/452fc72b48d293dc1440a10054babc77a16c24bc",
"version": "https://github.com/zargony/atom-language-rust/commit/59893b659a6d674d0d1f6c4158d0f60cea20d190",
"name": "Rust",
"scopeName": "source.rust",
"fileTypes": [
@@ -173,7 +173,7 @@
"comment": "Type parameters",
"name": "meta.type_params.rust",
"begin": "<(?![=<])",
"end": ">",
"end": "(?<![-])>",
"patterns": [
{
"include": "#block_comment"
+14 -5
View File
@@ -4,7 +4,7 @@
"If you want to provide a fix or improvement, please create a pull request against the original repository.",
"Once accepted there, we are happy to receive an update request."
],
"version": "https://github.com/atom/language-sass/commit/229a9c9c2c025dc0514f2550819876fc1bb5df57",
"version": "https://github.com/atom/language-sass/commit/d47701c2d389c5e657b8c51a34d90691e4bac3ea",
"scopeName": "source.css.scss",
"name": "SCSS",
"fileTypes": [
@@ -33,6 +33,9 @@
{
"include": "#rules"
},
{
"include": "#selectors"
},
{
"include": "#property_list"
},
@@ -492,6 +495,9 @@
},
{
"include": "#rules"
},
{
"include": "#selectors"
}
]
}
@@ -1155,7 +1161,7 @@
"properties": {
"patterns": [
{
"begin": "(?<![-a-z])(?=[-a-z])",
"begin": "(?<![-a-z])(?!--)(?=[-a-z])",
"end": "$|(?![-a-z])",
"name": "meta.property-name.scss",
"patterns": [
@@ -1213,9 +1219,15 @@
{
"include": "#rules"
},
{
"include": "#selector_custom"
},
{
"include": "#properties"
},
{
"include": "selectors"
},
{
"include": "$self"
}
@@ -1302,9 +1314,6 @@
},
{
"include": "#at_rule_media"
},
{
"include": "#selectors"
}
]
},
@@ -331,13 +331,13 @@
},
{
"c": "p",
"t": "source.css.scss meta.property-list.scss entity.name.tag.css",
"t": "source.css.scss meta.property-list.scss meta.property-name.scss",
"r": {
"dark_plus": "entity.name.tag.css: #D7BA7D",
"light_plus": "entity.name.tag: #800000",
"dark_vs": "entity.name.tag.css: #D7BA7D",
"light_vs": "entity.name.tag: #800000",
"hc_black": "entity.name.tag.css: #D7BA7D"
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",
"dark_vs": "default: #D4D4D4",
"light_vs": "default: #000000",
"hc_black": "default: #FFFFFF"
}
},
{
@@ -353,13 +353,13 @@
},
{
"c": "div",
"t": "source.css.scss meta.property-list.scss entity.name.tag.css",
"t": "source.css.scss meta.property-list.scss meta.property-name.scss",
"r": {
"dark_plus": "entity.name.tag.css: #D7BA7D",
"light_plus": "entity.name.tag: #800000",
"dark_vs": "entity.name.tag.css: #D7BA7D",
"light_vs": "entity.name.tag: #800000",
"hc_black": "entity.name.tag.css: #D7BA7D"
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",
"dark_vs": "default: #D4D4D4",
"light_vs": "default: #000000",
"hc_black": "default: #FFFFFF"
}
},
{
@@ -474,13 +474,13 @@
},
{
"c": "a",
"t": "source.css.scss meta.property-list.scss meta.property-list.scss entity.name.tag.css",
"t": "source.css.scss meta.property-list.scss meta.property-list.scss meta.property-name.scss",
"r": {
"dark_plus": "entity.name.tag.css: #D7BA7D",
"light_plus": "entity.name.tag: #800000",
"dark_vs": "entity.name.tag.css: #D7BA7D",
"light_vs": "entity.name.tag: #800000",
"hc_black": "entity.name.tag.css: #D7BA7D"
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",
"dark_vs": "default: #D4D4D4",
"light_vs": "default: #000000",
"hc_black": "default: #FFFFFF"
}
},
{
@@ -628,13 +628,13 @@
},
{
"c": "pre",
"t": "source.css.scss meta.property-list.scss entity.name.tag.css",
"t": "source.css.scss meta.property-list.scss meta.property-name.scss",
"r": {
"dark_plus": "entity.name.tag.css: #D7BA7D",
"light_plus": "entity.name.tag: #800000",
"dark_vs": "entity.name.tag.css: #D7BA7D",
"light_vs": "entity.name.tag: #800000",
"hc_black": "entity.name.tag.css: #D7BA7D"
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",
"dark_vs": "default: #D4D4D4",
"light_vs": "default: #000000",
"hc_black": "default: #FFFFFF"
}
},
{
@@ -925,13 +925,13 @@
},
{
"c": "a",
"t": "source.css.scss meta.property-list.scss entity.name.tag.css",
"t": "source.css.scss meta.property-list.scss meta.property-name.scss",
"r": {
"dark_plus": "entity.name.tag.css: #D7BA7D",
"light_plus": "entity.name.tag: #800000",
"dark_vs": "entity.name.tag.css: #D7BA7D",
"light_vs": "entity.name.tag: #800000",
"hc_black": "entity.name.tag.css: #D7BA7D"
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",
"dark_vs": "default: #D4D4D4",
"light_vs": "default: #000000",
"hc_black": "default: #FFFFFF"
}
},
{
@@ -1046,29 +1046,7 @@
},
{
"c": ":",
"t": "source.css.scss meta.property-list.scss meta.property-list.scss entity.other.attribute-name.pseudo-class.css punctuation.definition.entity.css",
"r": {
"dark_plus": "entity.other.attribute-name.pseudo-class.css: #D7BA7D",
"light_plus": "entity.other.attribute-name.pseudo-class.css: #800000",
"dark_vs": "entity.other.attribute-name.pseudo-class.css: #D7BA7D",
"light_vs": "entity.other.attribute-name.pseudo-class.css: #800000",
"hc_black": "entity.other.attribute-name.pseudo-class.css: #D7BA7D"
}
},
{
"c": "hover",
"t": "source.css.scss meta.property-list.scss meta.property-list.scss entity.other.attribute-name.pseudo-class.css",
"r": {
"dark_plus": "entity.other.attribute-name.pseudo-class.css: #D7BA7D",
"light_plus": "entity.other.attribute-name.pseudo-class.css: #800000",
"dark_vs": "entity.other.attribute-name.pseudo-class.css: #D7BA7D",
"light_vs": "entity.other.attribute-name.pseudo-class.css: #800000",
"hc_black": "entity.other.attribute-name.pseudo-class.css: #D7BA7D"
}
},
{
"c": " ",
"t": "source.css.scss meta.property-list.scss meta.property-list.scss",
"t": "source.css.scss meta.property-list.scss meta.property-list.scss punctuation.separator.key-value.scss",
"r": {
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",
@@ -1078,19 +1056,8 @@
}
},
{
"c": "{",
"t": "source.css.scss meta.property-list.scss meta.property-list.scss meta.property-list.scss punctuation.section.property-list.begin.bracket.curly.scss",
"r": {
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",
"dark_vs": "default: #D4D4D4",
"light_vs": "default: #000000",
"hc_black": "default: #FFFFFF"
}
},
{
"c": " ",
"t": "source.css.scss meta.property-list.scss meta.property-list.scss meta.property-list.scss",
"c": "hover { ",
"t": "source.css.scss meta.property-list.scss meta.property-list.scss meta.property-value.scss",
"r": {
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",
@@ -1101,29 +1068,18 @@
},
{
"c": "color",
"t": "source.css.scss meta.property-list.scss meta.property-list.scss meta.property-list.scss meta.property-name.scss support.type.property-name.css",
"t": "source.css.scss meta.property-list.scss meta.property-list.scss meta.property-value.scss support.constant.property-value.css",
"r": {
"dark_plus": "support.type.property-name: #9CDCFE",
"light_plus": "support.type.property-name: #FF0000",
"dark_vs": "support.type.property-name: #9CDCFE",
"light_vs": "support.type.property-name: #FF0000",
"hc_black": "support.type.property-name: #D4D4D4"
}
},
{
"c": ":",
"t": "source.css.scss meta.property-list.scss meta.property-list.scss meta.property-list.scss punctuation.separator.key-value.scss",
"r": {
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",
"dark_plus": "support.constant.property-value: #CE9178",
"light_plus": "support.constant.property-value: #0451A5",
"dark_vs": "default: #D4D4D4",
"light_vs": "default: #000000",
"hc_black": "default: #FFFFFF"
"light_vs": "support.constant.property-value: #0451A5",
"hc_black": "support.constant.property-value: #CE9178"
}
},
{
"c": " ",
"t": "source.css.scss meta.property-list.scss meta.property-list.scss meta.property-list.scss",
"c": ": ",
"t": "source.css.scss meta.property-list.scss meta.property-list.scss meta.property-value.scss",
"r": {
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",
@@ -1134,7 +1090,7 @@
},
{
"c": "red",
"t": "source.css.scss meta.property-list.scss meta.property-list.scss meta.property-list.scss meta.property-value.scss support.constant.color.w3c-standard-color-name.css",
"t": "source.css.scss meta.property-list.scss meta.property-list.scss meta.property-value.scss support.constant.color.w3c-standard-color-name.css",
"r": {
"dark_plus": "support.constant.color: #CE9178",
"light_plus": "support.constant.color: #0451A5",
@@ -1145,7 +1101,7 @@
},
{
"c": ";",
"t": "source.css.scss meta.property-list.scss meta.property-list.scss meta.property-list.scss punctuation.terminator.rule.scss",
"t": "source.css.scss meta.property-list.scss meta.property-list.scss punctuation.terminator.rule.scss",
"r": {
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",
@@ -1156,28 +1112,6 @@
},
{
"c": " ",
"t": "source.css.scss meta.property-list.scss meta.property-list.scss meta.property-list.scss",
"r": {
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",
"dark_vs": "default: #D4D4D4",
"light_vs": "default: #000000",
"hc_black": "default: #FFFFFF"
}
},
{
"c": "}",
"t": "source.css.scss meta.property-list.scss meta.property-list.scss meta.property-list.scss punctuation.section.property-list.end.bracket.curly.scss",
"r": {
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",
"dark_vs": "default: #D4D4D4",
"light_vs": "default: #000000",
"hc_black": "default: #FFFFFF"
}
},
{
"c": " ",
"t": "source.css.scss meta.property-list.scss meta.property-list.scss",
"r": {
"dark_plus": "default: #D4D4D4",
@@ -1198,6 +1132,17 @@
"hc_black": "default: #FFFFFF"
}
},
{
"c": " ",
"t": "source.css.scss meta.property-list.scss",
"r": {
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",
"dark_vs": "default: #D4D4D4",
"light_vs": "default: #000000",
"hc_black": "default: #FFFFFF"
}
},
{
"c": "}",
"t": "source.css.scss meta.property-list.scss punctuation.section.property-list.end.bracket.curly.scss",
@@ -1209,6 +1154,17 @@
"hc_black": "default: #FFFFFF"
}
},
{
"c": "}",
"t": "source.css.scss",
"r": {
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",
"dark_vs": "default: #D4D4D4",
"light_vs": "default: #000000",
"hc_black": "default: #FFFFFF"
}
},
{
"c": "/*",
"t": "source.css.scss comment.block.scss punctuation.definition.comment.scss",
@@ -1299,13 +1255,13 @@
},
{
"c": "font",
"t": "source.css.scss meta.property-list.scss entity.name.tag.css",
"t": "source.css.scss meta.property-list.scss meta.property-name.scss support.type.property-name.css",
"r": {
"dark_plus": "entity.name.tag.css: #D7BA7D",
"light_plus": "entity.name.tag: #800000",
"dark_vs": "entity.name.tag.css: #D7BA7D",
"light_vs": "entity.name.tag: #800000",
"hc_black": "entity.name.tag.css: #D7BA7D"
"dark_plus": "support.type.property-name: #9CDCFE",
"light_plus": "support.type.property-name: #FF0000",
"dark_vs": "support.type.property-name: #9CDCFE",
"light_vs": "support.type.property-name: #FF0000",
"hc_black": "support.type.property-name: #D4D4D4"
}
},
{
@@ -3356,13 +3312,13 @@
},
{
"c": "font",
"t": "source.css.scss meta.property-list.scss entity.name.tag.css",
"t": "source.css.scss meta.property-list.scss meta.property-name.scss support.type.property-name.css",
"r": {
"dark_plus": "entity.name.tag.css: #D7BA7D",
"light_plus": "entity.name.tag: #800000",
"dark_vs": "entity.name.tag.css: #D7BA7D",
"light_vs": "entity.name.tag: #800000",
"hc_black": "entity.name.tag.css: #D7BA7D"
"dark_plus": "support.type.property-name: #9CDCFE",
"light_plus": "support.type.property-name: #FF0000",
"dark_vs": "support.type.property-name: #9CDCFE",
"light_vs": "support.type.property-name: #FF0000",
"hc_black": "support.type.property-name: #D4D4D4"
}
},
{
@@ -4731,13 +4687,13 @@
},
{
"c": "content",
"t": "source.css.scss meta.property-list.scss entity.name.tag.css",
"t": "source.css.scss meta.property-list.scss meta.property-name.scss support.type.property-name.css",
"r": {
"dark_plus": "entity.name.tag.css: #D7BA7D",
"light_plus": "entity.name.tag: #800000",
"dark_vs": "entity.name.tag.css: #D7BA7D",
"light_vs": "entity.name.tag: #800000",
"hc_black": "entity.name.tag.css: #D7BA7D"
"dark_plus": "support.type.property-name: #9CDCFE",
"light_plus": "support.type.property-name: #FF0000",
"dark_vs": "support.type.property-name: #9CDCFE",
"light_vs": "support.type.property-name: #FF0000",
"hc_black": "support.type.property-name: #D4D4D4"
}
},
{
@@ -12860,13 +12816,13 @@
},
{
"c": "font",
"t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss entity.name.tag.css",
"t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-name.scss support.type.property-name.css",
"r": {
"dark_plus": "entity.name.tag.css: #D7BA7D",
"light_plus": "entity.name.tag: #800000",
"dark_vs": "entity.name.tag.css: #D7BA7D",
"light_vs": "entity.name.tag: #800000",
"hc_black": "entity.name.tag.css: #D7BA7D"
"dark_plus": "support.type.property-name: #9CDCFE",
"light_plus": "support.type.property-name: #FF0000",
"dark_vs": "support.type.property-name: #9CDCFE",
"light_vs": "support.type.property-name: #FF0000",
"hc_black": "support.type.property-name: #D4D4D4"
}
},
{
@@ -13795,13 +13751,13 @@
},
{
"c": "style",
"t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss entity.name.tag.css",
"t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.property-name.scss support.type.property-name.css",
"r": {
"dark_plus": "entity.name.tag.css: #D7BA7D",
"light_plus": "entity.name.tag: #800000",
"dark_vs": "entity.name.tag.css: #D7BA7D",
"light_vs": "entity.name.tag: #800000",
"hc_black": "entity.name.tag.css: #D7BA7D"
"dark_plus": "support.type.property-name: #9CDCFE",
"light_plus": "support.type.property-name: #FF0000",
"dark_vs": "support.type.property-name: #9CDCFE",
"light_vs": "support.type.property-name: #FF0000",
"hc_black": "support.type.property-name: #D4D4D4"
}
},
{
@@ -15588,13 +15544,13 @@
},
{
"c": "html",
"t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss entity.name.tag.css",
"t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-name.scss",
"r": {
"dark_plus": "entity.name.tag.css: #D7BA7D",
"light_plus": "entity.name.tag: #800000",
"dark_vs": "entity.name.tag.css: #D7BA7D",
"light_vs": "entity.name.tag: #800000",
"hc_black": "entity.name.tag.css: #D7BA7D"
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",
"dark_vs": "default: #D4D4D4",
"light_vs": "default: #000000",
"hc_black": "default: #FFFFFF"
}
},
{
@@ -16292,13 +16248,13 @@
},
{
"c": "content",
"t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss entity.name.tag.css",
"t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-name.scss support.type.property-name.css",
"r": {
"dark_plus": "entity.name.tag.css: #D7BA7D",
"light_plus": "entity.name.tag: #800000",
"dark_vs": "entity.name.tag.css: #D7BA7D",
"light_vs": "entity.name.tag: #800000",
"hc_black": "entity.name.tag.css: #D7BA7D"
"dark_plus": "support.type.property-name: #9CDCFE",
"light_plus": "support.type.property-name: #FF0000",
"dark_vs": "support.type.property-name: #9CDCFE",
"light_vs": "support.type.property-name: #FF0000",
"hc_black": "support.type.property-name: #D4D4D4"
}
},
{
@@ -17986,13 +17942,13 @@
},
{
"c": "a",
"t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss entity.name.tag.css",
"t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.property-name.scss",
"r": {
"dark_plus": "entity.name.tag.css: #D7BA7D",
"light_plus": "entity.name.tag: #800000",
"dark_vs": "entity.name.tag.css: #D7BA7D",
"light_vs": "entity.name.tag: #800000",
"hc_black": "entity.name.tag.css: #D7BA7D"
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",
"dark_vs": "default: #D4D4D4",
"light_vs": "default: #000000",
"hc_black": "default: #FFFFFF"
}
},
{
@@ -18107,13 +18063,13 @@
},
{
"c": "b",
"t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss entity.name.tag.css",
"t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.property-name.scss",
"r": {
"dark_plus": "entity.name.tag.css: #D7BA7D",
"light_plus": "entity.name.tag: #800000",
"dark_vs": "entity.name.tag.css: #D7BA7D",
"light_vs": "entity.name.tag: #800000",
"hc_black": "entity.name.tag.css: #D7BA7D"
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",
"dark_vs": "default: #D4D4D4",
"light_vs": "default: #000000",
"hc_black": "default: #FFFFFF"
}
},
{
@@ -20624,182 +20580,6 @@
"hc_black": "default: #FFFFFF"
}
},
{
"c": ":",
"t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss entity.other.attribute-name.pseudo-element.css punctuation.definition.entity.css",
"r": {
"dark_plus": "entity.other.attribute-name.pseudo-element.css: #D7BA7D",
"light_plus": "entity.other.attribute-name.pseudo-element.css: #800000",
"dark_vs": "entity.other.attribute-name.pseudo-element.css: #D7BA7D",
"light_vs": "entity.other.attribute-name.pseudo-element.css: #800000",
"hc_black": "entity.other.attribute-name.pseudo-element.css: #D7BA7D"
}
},
{
"c": "before",
"t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss entity.other.attribute-name.pseudo-element.css",
"r": {
"dark_plus": "entity.other.attribute-name.pseudo-element.css: #D7BA7D",
"light_plus": "entity.other.attribute-name.pseudo-element.css: #800000",
"dark_vs": "entity.other.attribute-name.pseudo-element.css: #D7BA7D",
"light_vs": "entity.other.attribute-name.pseudo-element.css: #800000",
"hc_black": "entity.other.attribute-name.pseudo-element.css: #D7BA7D"
}
},
{
"c": " ",
"t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss",
"r": {
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",
"dark_vs": "default: #D4D4D4",
"light_vs": "default: #000000",
"hc_black": "default: #FFFFFF"
}
},
{
"c": "{",
"t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss punctuation.section.property-list.begin.bracket.curly.scss",
"r": {
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",
"dark_vs": "default: #D4D4D4",
"light_vs": "default: #000000",
"hc_black": "default: #FFFFFF"
}
},
{
"c": " ",
"t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss",
"r": {
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",
"dark_vs": "default: #D4D4D4",
"light_vs": "default: #000000",
"hc_black": "default: #FFFFFF"
}
},
{
"c": "content",
"t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss entity.name.tag.css",
"r": {
"dark_plus": "entity.name.tag.css: #D7BA7D",
"light_plus": "entity.name.tag: #800000",
"dark_vs": "entity.name.tag.css: #D7BA7D",
"light_vs": "entity.name.tag: #800000",
"hc_black": "entity.name.tag.css: #D7BA7D"
}
},
{
"c": ":",
"t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss punctuation.separator.key-value.scss",
"r": {
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",
"dark_vs": "default: #D4D4D4",
"light_vs": "default: #000000",
"hc_black": "default: #FFFFFF"
}
},
{
"c": "'",
"t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.property-value.scss string.quoted.single.scss punctuation.definition.string.begin.scss",
"r": {
"dark_plus": "string: #CE9178",
"light_plus": "string: #A31515",
"dark_vs": "string: #CE9178",
"light_vs": "string: #A31515",
"hc_black": "string: #CE9178"
}
},
{
"c": "\\\\",
"t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.property-value.scss string.quoted.single.scss constant.character.escape.scss",
"r": {
"dark_plus": "constant.character.escape: #D7BA7D",
"light_plus": "constant.character.escape: #A31515",
"dark_vs": "string: #CE9178",
"light_vs": "string: #A31515",
"hc_black": "constant.character: #569CD6"
}
},
{
"c": "'",
"t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss meta.property-value.scss string.quoted.single.scss punctuation.definition.string.end.scss",
"r": {
"dark_plus": "string: #CE9178",
"light_plus": "string: #A31515",
"dark_vs": "string: #CE9178",
"light_vs": "string: #A31515",
"hc_black": "string: #CE9178"
}
},
{
"c": ";",
"t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss punctuation.terminator.rule.scss",
"r": {
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",
"dark_vs": "default: #D4D4D4",
"light_vs": "default: #000000",
"hc_black": "default: #FFFFFF"
}
},
{
"c": "}",
"t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-list.scss punctuation.section.property-list.end.bracket.curly.scss",
"r": {
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",
"dark_vs": "default: #D4D4D4",
"light_vs": "default: #000000",
"hc_black": "default: #FFFFFF"
}
},
{
"c": "/*",
"t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss comment.block.scss punctuation.definition.comment.scss",
"r": {
"dark_plus": "comment: #608B4E",
"light_plus": "comment: #008000",
"dark_vs": "comment: #608B4E",
"light_vs": "comment: #008000",
"hc_black": "comment: #7CA668"
}
},
{
"c": " a comment ",
"t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss comment.block.scss",
"r": {
"dark_plus": "comment: #608B4E",
"light_plus": "comment: #008000",
"dark_vs": "comment: #608B4E",
"light_vs": "comment: #008000",
"hc_black": "comment: #7CA668"
}
},
{
"c": "*/",
"t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss comment.block.scss punctuation.definition.comment.scss",
"r": {
"dark_plus": "comment: #608B4E",
"light_plus": "comment: #008000",
"dark_vs": "comment: #608B4E",
"light_vs": "comment: #008000",
"hc_black": "comment: #7CA668"
}
},
{
"c": "$var1",
"t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss variable.scss",
"r": {
"dark_plus": "variable.scss: #9CDCFE",
"light_plus": "variable.scss: #FF0000",
"dark_vs": "variable.scss: #9CDCFE",
"light_vs": "variable.scss: #FF0000",
"hc_black": "variable.scss: #D4D4D4"
}
},
{
"c": ":",
"t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss punctuation.separator.key-value.scss",
@@ -20812,8 +20592,52 @@
}
},
{
"c": " ",
"t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss",
"c": "before",
"t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-value.scss support.type.property-name.css",
"r": {
"dark_plus": "support.type.property-name: #9CDCFE",
"light_plus": "support.type.property-name: #FF0000",
"dark_vs": "support.type.property-name: #9CDCFE",
"light_vs": "support.type.property-name: #FF0000",
"hc_black": "support.type.property-name: #D4D4D4"
}
},
{
"c": " {",
"t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-value.scss",
"r": {
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",
"dark_vs": "default: #D4D4D4",
"light_vs": "default: #000000",
"hc_black": "default: #FFFFFF"
}
},
{
"c": " ",
"t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-value.scss",
"r": {
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",
"dark_vs": "default: #D4D4D4",
"light_vs": "default: #000000",
"hc_black": "default: #FFFFFF"
}
},
{
"c": "content",
"t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-value.scss support.constant.property-value.css",
"r": {
"dark_plus": "support.constant.property-value: #CE9178",
"light_plus": "support.constant.property-value: #0451A5",
"dark_vs": "default: #D4D4D4",
"light_vs": "support.constant.property-value: #0451A5",
"hc_black": "support.constant.property-value: #CE9178"
}
},
{
"c": ":",
"t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-value.scss",
"r": {
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",
@@ -20834,7 +20658,7 @@
}
},
{
"c": "\\'",
"c": "\\\\",
"t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-value.scss string.quoted.single.scss constant.character.escape.scss",
"r": {
"dark_plus": "constant.character.escape: #D7BA7D",
@@ -20867,74 +20691,8 @@
}
},
{
"c": "$var2",
"t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss variable.scss",
"r": {
"dark_plus": "variable.scss: #9CDCFE",
"light_plus": "variable.scss: #FF0000",
"dark_vs": "variable.scss: #9CDCFE",
"light_vs": "variable.scss: #FF0000",
"hc_black": "variable.scss: #D4D4D4"
}
},
{
"c": ":",
"t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss punctuation.separator.key-value.scss",
"r": {
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",
"dark_vs": "default: #D4D4D4",
"light_vs": "default: #000000",
"hc_black": "default: #FFFFFF"
}
},
{
"c": " ",
"t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss",
"r": {
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",
"dark_vs": "default: #D4D4D4",
"light_vs": "default: #000000",
"hc_black": "default: #FFFFFF"
}
},
{
"c": "\"",
"t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-value.scss string.quoted.double.scss punctuation.definition.string.begin.scss",
"r": {
"dark_plus": "string: #CE9178",
"light_plus": "string: #A31515",
"dark_vs": "string: #CE9178",
"light_vs": "string: #A31515",
"hc_black": "string: #CE9178"
}
},
{
"c": "\\\"",
"t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-value.scss string.quoted.double.scss constant.character.escape.scss",
"r": {
"dark_plus": "constant.character.escape: #D7BA7D",
"light_plus": "constant.character.escape: #A31515",
"dark_vs": "string: #CE9178",
"light_vs": "string: #A31515",
"hc_black": "constant.character: #569CD6"
}
},
{
"c": "\"",
"t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss meta.property-value.scss string.quoted.double.scss punctuation.definition.string.end.scss",
"r": {
"dark_plus": "string: #CE9178",
"light_plus": "string: #A31515",
"dark_vs": "string: #CE9178",
"light_vs": "string: #A31515",
"hc_black": "string: #CE9178"
}
},
{
"c": ";",
"t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss punctuation.terminator.rule.scss",
"c": "}",
"t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss punctuation.section.property-list.end.bracket.curly.scss",
"r": {
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",
@@ -20945,7 +20703,7 @@
},
{
"c": "/*",
"t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss comment.block.scss punctuation.definition.comment.scss",
"t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss comment.block.scss punctuation.definition.comment.scss",
"r": {
"dark_plus": "comment: #608B4E",
"light_plus": "comment: #008000",
@@ -20955,8 +20713,8 @@
}
},
{
"c": " another comment ",
"t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss comment.block.scss",
"c": " a comment ",
"t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss comment.block.scss",
"r": {
"dark_plus": "comment: #608B4E",
"light_plus": "comment: #008000",
@@ -20967,7 +20725,172 @@
},
{
"c": "*/",
"t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss meta.property-list.scss comment.block.scss punctuation.definition.comment.scss",
"t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss comment.block.scss punctuation.definition.comment.scss",
"r": {
"dark_plus": "comment: #608B4E",
"light_plus": "comment: #008000",
"dark_vs": "comment: #608B4E",
"light_vs": "comment: #008000",
"hc_black": "comment: #7CA668"
}
},
{
"c": "$var1",
"t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss variable.scss",
"r": {
"dark_plus": "variable.scss: #9CDCFE",
"light_plus": "variable.scss: #FF0000",
"dark_vs": "variable.scss: #9CDCFE",
"light_vs": "variable.scss: #FF0000",
"hc_black": "variable.scss: #D4D4D4"
}
},
{
"c": ": ",
"t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss",
"r": {
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",
"dark_vs": "default: #D4D4D4",
"light_vs": "default: #000000",
"hc_black": "default: #FFFFFF"
}
},
{
"c": "'",
"t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss string.quoted.single.scss punctuation.definition.string.begin.scss",
"r": {
"dark_plus": "string: #CE9178",
"light_plus": "string: #A31515",
"dark_vs": "string: #CE9178",
"light_vs": "string: #A31515",
"hc_black": "string: #CE9178"
}
},
{
"c": "\\'",
"t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss string.quoted.single.scss constant.character.escape.scss",
"r": {
"dark_plus": "constant.character.escape: #D7BA7D",
"light_plus": "constant.character.escape: #A31515",
"dark_vs": "string: #CE9178",
"light_vs": "string: #A31515",
"hc_black": "constant.character: #569CD6"
}
},
{
"c": "'",
"t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss string.quoted.single.scss punctuation.definition.string.end.scss",
"r": {
"dark_plus": "string: #CE9178",
"light_plus": "string: #A31515",
"dark_vs": "string: #CE9178",
"light_vs": "string: #A31515",
"hc_black": "string: #CE9178"
}
},
{
"c": ";",
"t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss punctuation.terminator.rule.css",
"r": {
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",
"dark_vs": "default: #D4D4D4",
"light_vs": "default: #000000",
"hc_black": "default: #FFFFFF"
}
},
{
"c": "$var2",
"t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss variable.scss",
"r": {
"dark_plus": "variable.scss: #9CDCFE",
"light_plus": "variable.scss: #FF0000",
"dark_vs": "variable.scss: #9CDCFE",
"light_vs": "variable.scss: #FF0000",
"hc_black": "variable.scss: #D4D4D4"
}
},
{
"c": ": ",
"t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss",
"r": {
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",
"dark_vs": "default: #D4D4D4",
"light_vs": "default: #000000",
"hc_black": "default: #FFFFFF"
}
},
{
"c": "\"",
"t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss string.quoted.double.scss punctuation.definition.string.begin.scss",
"r": {
"dark_plus": "string: #CE9178",
"light_plus": "string: #A31515",
"dark_vs": "string: #CE9178",
"light_vs": "string: #A31515",
"hc_black": "string: #CE9178"
}
},
{
"c": "\\\"",
"t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss string.quoted.double.scss constant.character.escape.scss",
"r": {
"dark_plus": "constant.character.escape: #D7BA7D",
"light_plus": "constant.character.escape: #A31515",
"dark_vs": "string: #CE9178",
"light_vs": "string: #A31515",
"hc_black": "constant.character: #569CD6"
}
},
{
"c": "\"",
"t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss string.quoted.double.scss punctuation.definition.string.end.scss",
"r": {
"dark_plus": "string: #CE9178",
"light_plus": "string: #A31515",
"dark_vs": "string: #CE9178",
"light_vs": "string: #A31515",
"hc_black": "string: #CE9178"
}
},
{
"c": ";",
"t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss punctuation.terminator.rule.css",
"r": {
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",
"dark_vs": "default: #D4D4D4",
"light_vs": "default: #000000",
"hc_black": "default: #FFFFFF"
}
},
{
"c": "/*",
"t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss comment.block.scss punctuation.definition.comment.scss",
"r": {
"dark_plus": "comment: #608B4E",
"light_plus": "comment: #008000",
"dark_vs": "comment: #608B4E",
"light_vs": "comment: #008000",
"hc_black": "comment: #7CA668"
}
},
{
"c": " another comment ",
"t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss comment.block.scss",
"r": {
"dark_plus": "comment: #608B4E",
"light_plus": "comment: #008000",
"dark_vs": "comment: #608B4E",
"light_vs": "comment: #008000",
"hc_black": "comment: #7CA668"
}
},
{
"c": "*/",
"t": "source.css.scss meta.at-rule.each.scss meta.at-rule.while.scss comment.block.scss punctuation.definition.comment.scss",
"r": {
"dark_plus": "comment: #608B4E",
"light_plus": "comment: #008000",
+3 -18
View File
@@ -1,23 +1,8 @@
// ATTENTION - THIS DIRECTORY CONTAINS THIRD PARTY OPEN SOURCE MATERIALS:
[{
"name": "textmate/sql.tmbundle",
"name": "Microsoft/vscode-mssql",
"version": "0.0.0",
"license": "TextMate Bundle License",
"repositoryURL": "https://github.com/textmate/sql.tmbundle",
"licenseDetail": [
"Copyright (c) textmate-sql.tmbundle project authors",
"",
"If not otherwise specified (see below), files in this folder fall under the following license: ",
"",
"Permission to copy, use, modify, sell and distribute this",
"software is granted. This software is provided \"as is\" without",
"express or implied warranty, and with no claim as to its",
"suitability for any purpose.",
"",
"An exception is made for files in readable text which contain their own license information, ",
"or files where an accompanying file exists (in the same directory) with a \"-license\" suffix added ",
"to the base-name name of the original file, and an extension of txt, html, or similar. For example ",
"\"tidy\" is accompanied by \"tidy-license.txt\"."
]
"license": "MIT",
"repositoryURL": "https://github.com/Microsoft/vscode-mssql"
}]
+4 -1
View File
@@ -3,6 +3,9 @@
"version": "0.1.0",
"publisher": "vscode",
"engines": { "vscode": "*" },
"scripts": {
"update-grammar": "node ../../build/npm/update-grammar.js Microsoft/vscode-mssql syntaxes/SQL.plist ./syntaxes/sql.tmLanguage.json"
},
"contributes": {
"languages": [{
"id": "sql",
@@ -13,7 +16,7 @@
"grammars": [{
"language": "sql",
"scopeName": "source.sql",
"path": "./syntaxes/SQL.plist"
"path": "./syntaxes/sql.tmLanguage.json"
}]
}
}
-767
View File
@@ -1,767 +0,0 @@
<?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>fileTypes</key>
<array>
<string>sql</string>
<string>ddl</string>
<string>dml</string>
<string>dsql</string>
<string>psql</string>
</array>
<key>keyEquivalent</key>
<string>^~S</string>
<key>name</key>
<string>SQL</string>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#comments</string>
</dict>
<dict>
<key>captures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>keyword.other.create.sql</string>
</dict>
<key>2</key>
<dict>
<key>name</key>
<string>keyword.other.sql</string>
</dict>
<key>5</key>
<dict>
<key>name</key>
<string>entity.name.function.sql</string>
</dict>
</dict>
<key>match</key>
<string>(?i:^\s*(create(?:\s+or\s+replace)?)\s+(aggregate|conversion|database|domain|function|group|(unique\s+)?index|language|operator class|operator|rule|schema|sequence|table|tablespace|trigger|type|user|view)\s+)(['"`]?)(\w+)\4</string>
<key>name</key>
<string>meta.create.sql</string>
</dict>
<dict>
<key>captures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>keyword.other.create.sql</string>
</dict>
<key>2</key>
<dict>
<key>name</key>
<string>keyword.other.sql</string>
</dict>
</dict>
<key>match</key>
<string>(?i:^\s*(drop)\s+(aggregate|conversion|database|domain|function|group|index|language|operator class|operator|rule|schema|sequence|table|tablespace|trigger|type|user|view))</string>
<key>name</key>
<string>meta.drop.sql</string>
</dict>
<dict>
<key>captures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>keyword.other.create.sql</string>
</dict>
<key>2</key>
<dict>
<key>name</key>
<string>keyword.other.table.sql</string>
</dict>
<key>3</key>
<dict>
<key>name</key>
<string>entity.name.function.sql</string>
</dict>
<key>4</key>
<dict>
<key>name</key>
<string>keyword.other.cascade.sql</string>
</dict>
</dict>
<key>match</key>
<string>(?i:\s*(drop)\s+(table)\s+(\w+)(\s+cascade)?\b)</string>
<key>name</key>
<string>meta.drop.sql</string>
</dict>
<dict>
<key>captures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>keyword.other.create.sql</string>
</dict>
<key>2</key>
<dict>
<key>name</key>
<string>keyword.other.table.sql</string>
</dict>
</dict>
<key>match</key>
<string>(?i:^\s*(alter)\s+(aggregate|conversion|database|domain|function|group|index|language|operator class|operator|rule|schema|sequence|table|tablespace|trigger|type|user|view)\s+)</string>
<key>name</key>
<string>meta.alter.sql</string>
</dict>
<dict>
<key>captures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>storage.type.sql</string>
</dict>
<key>10</key>
<dict>
<key>name</key>
<string>constant.numeric.sql</string>
</dict>
<key>11</key>
<dict>
<key>name</key>
<string>storage.type.sql</string>
</dict>
<key>12</key>
<dict>
<key>name</key>
<string>storage.type.sql</string>
</dict>
<key>13</key>
<dict>
<key>name</key>
<string>storage.type.sql</string>
</dict>
<key>14</key>
<dict>
<key>name</key>
<string>constant.numeric.sql</string>
</dict>
<key>15</key>
<dict>
<key>name</key>
<string>storage.type.sql</string>
</dict>
<key>2</key>
<dict>
<key>name</key>
<string>storage.type.sql</string>
</dict>
<key>3</key>
<dict>
<key>name</key>
<string>constant.numeric.sql</string>
</dict>
<key>4</key>
<dict>
<key>name</key>
<string>storage.type.sql</string>
</dict>
<key>5</key>
<dict>
<key>name</key>
<string>constant.numeric.sql</string>
</dict>
<key>6</key>
<dict>
<key>name</key>
<string>storage.type.sql</string>
</dict>
<key>7</key>
<dict>
<key>name</key>
<string>constant.numeric.sql</string>
</dict>
<key>8</key>
<dict>
<key>name</key>
<string>constant.numeric.sql</string>
</dict>
<key>9</key>
<dict>
<key>name</key>
<string>storage.type.sql</string>
</dict>
</dict>
<key>match</key>
<string>(?xi)
# normal stuff, capture 1
\b(bigint|bigserial|bit|boolean|box|bytea|cidr|circle|date|double\sprecision|inet|int|integer|line|lseg|macaddr|money|oid|path|point|polygon|real|serial|smallint|sysdate|text)\b
# numeric suffix, capture 2 + 3i
|\b(bit\svarying|character\s(?:varying)?|tinyint|var\schar|float|interval)\((\d+)\)
# optional numeric suffix, capture 4 + 5i
|\b(char|number|varchar\d?)\b(?:\((\d+)\))?
# special case, capture 6 + 7i + 8i
|\b(numeric|decimal)\b(?:\((\d+),(\d+)\))?
# special case, captures 9, 10i, 11
|\b(times?)\b(?:\((\d+)\))?(\swith(?:out)?\stime\szone\b)?
# special case, captures 12, 13, 14i, 15
|\b(timestamp)(?:(s|tz))?\b(?:\((\d+)\))?(\s(with|without)\stime\szone\b)?
</string>
</dict>
<dict>
<key>match</key>
<string>(?i:\b((?:primary|foreign)\s+key|references|on\sdelete(\s+cascade)?|check|constraint)\b)</string>
<key>name</key>
<string>storage.modifier.sql</string>
</dict>
<dict>
<key>match</key>
<string>\b\d+\b</string>
<key>name</key>
<string>constant.numeric.sql</string>
</dict>
<dict>
<key>match</key>
<string>(?i:\b(select(\s+distinct)?|insert\s+(ignore\s+)?into|update|delete|from|declare|set|where|group\sby|or|like|and|union(\s+all)?|having|order\sby|limit|(inner|cross)\s+join|join|straight_join|(left|right)(\s+outer)?\s+join|natural(\s+(left|right)(\s+outer)?)?\s+join)\b)</string>
<key>name</key>
<string>keyword.other.DML.sql</string>
</dict>
<dict>
<key>match</key>
<string>(?i:\b(on|((is\s+)?not\s+)?null)\b)</string>
<key>name</key>
<string>keyword.other.DDL.create.II.sql</string>
</dict>
<dict>
<key>match</key>
<string>(?i:\b(values|go|use|into|exec|execute|openquery)\b)</string>
<key>name</key>
<string>keyword.other.DML.II.sql</string>
</dict>
<dict>
<key>match</key>
<string>(?i:\b(begin(\s+work)?|start\s+transaction|commit(\s+work)?|rollback(\s+work)?)\b)</string>
<key>name</key>
<string>keyword.other.LUW.sql</string>
</dict>
<dict>
<key>match</key>
<string>(?i:\b(grant(\swith\sgrant\soption)?|revoke)\b)</string>
<key>name</key>
<string>keyword.other.authorization.sql</string>
</dict>
<dict>
<key>match</key>
<string>(?i:\bin\b)</string>
<key>name</key>
<string>keyword.other.data-integrity.sql</string>
</dict>
<dict>
<key>match</key>
<string>(?i:^\s*(comment\s+on\s+(table|column|aggregate|constraint|database|domain|function|index|operator|rule|schema|sequence|trigger|type|view))\s+.*?\s+(is)\s+)</string>
<key>name</key>
<string>keyword.other.object-comments.sql</string>
</dict>
<dict>
<key>match</key>
<string>(?i)\bAS\b</string>
<key>name</key>
<string>keyword.other.alias.sql</string>
</dict>
<dict>
<key>match</key>
<string>(?i)\b(DESC|ASC)\b</string>
<key>name</key>
<string>keyword.other.order.sql</string>
</dict>
<dict>
<key>match</key>
<string>\*</string>
<key>name</key>
<string>keyword.operator.star.sql</string>
</dict>
<dict>
<key>match</key>
<string>[!&lt;&gt;]?=|&lt;&gt;|&lt;|&gt;</string>
<key>name</key>
<string>keyword.operator.comparison.sql</string>
</dict>
<dict>
<key>match</key>
<string>-|\+|/</string>
<key>name</key>
<string>keyword.operator.math.sql</string>
</dict>
<dict>
<key>match</key>
<string>\|\|</string>
<key>name</key>
<string>keyword.operator.concatenator.sql</string>
</dict>
<dict>
<key>comment</key>
<string>List of SQL99 built-in functions from http://www.oreilly.com/catalog/sqlnut/chapter/ch04.html</string>
<key>match</key>
<string>(?i)\b(CURRENT_(DATE|TIME(STAMP)?|USER)|(SESSION|SYSTEM)_USER)\b</string>
<key>name</key>
<string>support.function.scalar.sql</string>
</dict>
<dict>
<key>comment</key>
<string>List of SQL99 built-in functions from http://www.oreilly.com/catalog/sqlnut/chapter/ch04.html</string>
<key>match</key>
<string>(?i)\b(AVG|COUNT|MIN|MAX|SUM)(?=\s*\()</string>
<key>name</key>
<string>support.function.aggregate.sql</string>
</dict>
<dict>
<key>match</key>
<string>(?i)\b(CONCATENATE|CONVERT|LOWER|SUBSTRING|TRANSLATE|TRIM|UPPER)\b</string>
<key>name</key>
<string>support.function.string.sql</string>
</dict>
<dict>
<key>captures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>constant.other.database-name.sql</string>
</dict>
<key>2</key>
<dict>
<key>name</key>
<string>constant.other.table-name.sql</string>
</dict>
</dict>
<key>match</key>
<string>(\w+?)\.(\w+)</string>
</dict>
<dict>
<key>include</key>
<string>#strings</string>
</dict>
<dict>
<key>include</key>
<string>#regexps</string>
</dict>
<dict>
<key>captures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>punctuation.section.scope.begin.sql</string>
</dict>
<key>2</key>
<dict>
<key>name</key>
<string>punctuation.section.scope.end.sql</string>
</dict>
</dict>
<key>comment</key>
<string>Allow for special ↩ behavior</string>
<key>match</key>
<string>(\()(\))</string>
<key>name</key>
<string>meta.block.sql</string>
</dict>
</array>
<key>repository</key>
<dict>
<key>comments</key>
<dict>
<key>patterns</key>
<array>
<dict>
<key>begin</key>
<string>(^[ \t]+)?(?=--)</string>
<key>beginCaptures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>punctuation.whitespace.comment.leading.sql</string>
</dict>
</dict>
<key>end</key>
<string>(?!\G)</string>
<key>patterns</key>
<array>
<dict>
<key>begin</key>
<string>--</string>
<key>beginCaptures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>punctuation.definition.comment.sql</string>
</dict>
</dict>
<key>end</key>
<string>\n</string>
<key>name</key>
<string>comment.line.double-dash.sql</string>
</dict>
</array>
</dict>
<dict>
<key>begin</key>
<string>(^[ \t]+)?(?=#)</string>
<key>beginCaptures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>punctuation.whitespace.comment.leading.sql</string>
</dict>
</dict>
<key>end</key>
<string>(?!\G)</string>
<key>patterns</key>
<array>
<dict>
<key>begin</key>
<string>#</string>
<key>beginCaptures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>punctuation.definition.comment.sql</string>
</dict>
</dict>
<key>end</key>
<string>\n</string>
<key>name</key>
<string>comment.line.number-sign.sql</string>
</dict>
</array>
</dict>
<dict>
<key>begin</key>
<string>/\*</string>
<key>captures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>punctuation.definition.comment.sql</string>
</dict>
</dict>
<key>end</key>
<string>\*/</string>
<key>name</key>
<string>comment.block.c</string>
</dict>
</array>
</dict>
<key>regexps</key>
<dict>
<key>patterns</key>
<array>
<dict>
<key>begin</key>
<string>/(?=\S.*/)</string>
<key>beginCaptures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>punctuation.definition.string.begin.sql</string>
</dict>
</dict>
<key>end</key>
<string>/</string>
<key>endCaptures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>punctuation.definition.string.end.sql</string>
</dict>
</dict>
<key>name</key>
<string>string.regexp.sql</string>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#string_interpolation</string>
</dict>
<dict>
<key>match</key>
<string>\\/</string>
<key>name</key>
<string>constant.character.escape.slash.sql</string>
</dict>
</array>
</dict>
<dict>
<key>begin</key>
<string>%r\{</string>
<key>beginCaptures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>punctuation.definition.string.begin.sql</string>
</dict>
</dict>
<key>comment</key>
<string>We should probably handle nested bracket pairs!?! -- Allan</string>
<key>end</key>
<string>\}</string>
<key>endCaptures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>punctuation.definition.string.end.sql</string>
</dict>
</dict>
<key>name</key>
<string>string.regexp.modr.sql</string>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#string_interpolation</string>
</dict>
</array>
</dict>
</array>
</dict>
<key>string_escape</key>
<dict>
<key>match</key>
<string>\\.</string>
<key>name</key>
<string>constant.character.escape.sql</string>
</dict>
<key>string_interpolation</key>
<dict>
<key>captures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>punctuation.definition.string.begin.sql</string>
</dict>
<key>3</key>
<dict>
<key>name</key>
<string>punctuation.definition.string.end.sql</string>
</dict>
</dict>
<key>match</key>
<string>(#\{)([^\}]*)(\})</string>
<key>name</key>
<string>string.interpolated.sql</string>
</dict>
<key>strings</key>
<dict>
<key>patterns</key>
<array>
<dict>
<key>captures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>punctuation.definition.string.begin.sql</string>
</dict>
<key>2</key>
<dict>
<key>name</key>
<string>punctuation.definition.string.end.sql</string>
</dict>
</dict>
<key>comment</key>
<string>this is faster than the next begin/end rule since sub-pattern will match till end-of-line and SQL files tend to have very long lines.</string>
<key>match</key>
<string>(')[^'\\]*(')</string>
<key>name</key>
<string>string.quoted.single.sql</string>
</dict>
<dict>
<key>begin</key>
<string>'</string>
<key>beginCaptures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>punctuation.definition.string.begin.sql</string>
</dict>
</dict>
<key>end</key>
<string>'</string>
<key>endCaptures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>punctuation.definition.string.end.sql</string>
</dict>
</dict>
<key>name</key>
<string>string.quoted.single.sql</string>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#string_escape</string>
</dict>
</array>
</dict>
<dict>
<key>captures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>punctuation.definition.string.begin.sql</string>
</dict>
<key>2</key>
<dict>
<key>name</key>
<string>punctuation.definition.string.end.sql</string>
</dict>
</dict>
<key>comment</key>
<string>this is faster than the next begin/end rule since sub-pattern will match till end-of-line and SQL files tend to have very long lines.</string>
<key>match</key>
<string>(`)[^`\\]*(`)</string>
<key>name</key>
<string>string.quoted.other.backtick.sql</string>
</dict>
<dict>
<key>begin</key>
<string>`</string>
<key>beginCaptures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>punctuation.definition.string.begin.sql</string>
</dict>
</dict>
<key>end</key>
<string>`</string>
<key>endCaptures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>punctuation.definition.string.end.sql</string>
</dict>
</dict>
<key>name</key>
<string>string.quoted.other.backtick.sql</string>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#string_escape</string>
</dict>
</array>
</dict>
<dict>
<key>captures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>punctuation.definition.string.begin.sql</string>
</dict>
<key>2</key>
<dict>
<key>name</key>
<string>punctuation.definition.string.end.sql</string>
</dict>
</dict>
<key>comment</key>
<string>this is faster than the next begin/end rule since sub-pattern will match till end-of-line and SQL files tend to have very long lines.</string>
<key>match</key>
<string>(")[^"#]*(")</string>
<key>name</key>
<string>string.quoted.double.sql</string>
</dict>
<dict>
<key>begin</key>
<string>"</string>
<key>beginCaptures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>punctuation.definition.string.begin.sql</string>
</dict>
</dict>
<key>end</key>
<string>"</string>
<key>endCaptures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>punctuation.definition.string.end.sql</string>
</dict>
</dict>
<key>name</key>
<string>string.quoted.double.sql</string>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#string_interpolation</string>
</dict>
</array>
</dict>
<dict>
<key>begin</key>
<string>%\{</string>
<key>beginCaptures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>punctuation.definition.string.begin.sql</string>
</dict>
</dict>
<key>end</key>
<string>\}</string>
<key>endCaptures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>punctuation.definition.string.end.sql</string>
</dict>
</dict>
<key>name</key>
<string>string.other.quoted.brackets.sql</string>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#string_interpolation</string>
</dict>
</array>
</dict>
</array>
</dict>
</dict>
<key>scopeName</key>
<string>source.sql</string>
<key>uuid</key>
<string>C49120AC-6ECC-11D9-ACC8-000D93589AF6</string>
</dict>
</plist>
File diff suppressed because one or more lines are too long
@@ -1,7 +1,7 @@
[
{
"c": "CREATE",
"t": "source.sql meta.create.sql keyword.other.create.sql",
"t": "source.sql keyword.other.sql",
"r": {
"dark_plus": "keyword: #569CD6",
"light_plus": "keyword: #0000FF",
@@ -11,51 +11,7 @@
}
},
{
"c": " ",
"t": "source.sql meta.create.sql",
"r": {
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",
"dark_vs": "default: #D4D4D4",
"light_vs": "default: #000000",
"hc_black": "default: #FFFFFF"
}
},
{
"c": "VIEW",
"t": "source.sql meta.create.sql keyword.other.sql",
"r": {
"dark_plus": "keyword: #569CD6",
"light_plus": "keyword: #0000FF",
"dark_vs": "keyword: #569CD6",
"light_vs": "keyword: #0000FF",
"hc_black": "keyword: #569CD6"
}
},
{
"c": " ",
"t": "source.sql meta.create.sql",
"r": {
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",
"dark_vs": "default: #D4D4D4",
"light_vs": "default: #000000",
"hc_black": "default: #FFFFFF"
}
},
{
"c": "METRIC_STATS",
"t": "source.sql meta.create.sql entity.name.function.sql",
"r": {
"dark_plus": "entity.name.function: #DCDCAA",
"light_plus": "entity.name.function: #795E26",
"dark_vs": "default: #D4D4D4",
"light_vs": "default: #000000",
"hc_black": "entity.name.function: #DCDCAA"
}
},
{
"c": " (ID, MONTH, TEMP_C, RAIN_C) ",
"c": " VIEW METRIC_STATS (ID, MONTH, TEMP_C, RAIN_C) ",
"t": "source.sql",
"r": {
"dark_plus": "default: #D4D4D4",
@@ -52,7 +52,10 @@
}
},
{
"scope": ["meta.embedded", "source.groovy.embedded"],
"scope": [
"meta.embedded",
"source.groovy.embedded"
],
"settings": {
"background": "#1e1e1e",
"foreground": "#C5C8C6"
@@ -62,7 +65,7 @@
"name": "Comment",
"scope": "comment",
"settings": {
"fontStyle": "\n ",
"fontStyle": "",
"foreground": "#9A9B99"
}
},
@@ -70,7 +73,7 @@
"name": "String",
"scope": "string",
"settings": {
"fontStyle": "\n \t\t\t",
"fontStyle": "",
"foreground": "#9AA83A"
}
},
@@ -78,7 +81,7 @@
"name": "String Embedded Source",
"scope": "string source",
"settings": {
"fontStyle": "\n \t\t\t",
"fontStyle": "",
"foreground": "#D08442"
}
},
@@ -86,7 +89,7 @@
"name": "Number",
"scope": "constant.numeric",
"settings": {
"fontStyle": "\n \t\t\t",
"fontStyle": "",
"foreground": "#6089B4"
}
},
@@ -94,7 +97,7 @@
"name": "Built-in constant",
"scope": "constant.language",
"settings": {
"fontStyle": "\n \t\t\t",
"fontStyle": "",
"foreground": "#408080"
}
},
@@ -102,7 +105,7 @@
"name": "User-defined constant",
"scope": "constant.character, constant.other",
"settings": {
"fontStyle": "\n \t\t\t",
"fontStyle": "",
"foreground": "#8080FF",
"background": "#1e1e1e"
}
@@ -111,7 +114,7 @@
"name": "Keyword",
"scope": "keyword",
"settings": {
"fontStyle": "\n \t\t\t",
"fontStyle": "",
"foreground": "#6089B4"
}
},
@@ -119,7 +122,7 @@
"name": "Support",
"scope": "support",
"settings": {
"fontStyle": "\n \t\t\t",
"fontStyle": "",
"foreground": "#C7444A"
}
},
@@ -127,7 +130,7 @@
"name": "Storage",
"scope": "storage",
"settings": {
"fontStyle": "\n \t\t\t",
"fontStyle": "",
"foreground": "#9872A2"
}
},
@@ -135,7 +138,7 @@
"name": "Class name",
"scope": "entity.name.class, entity.name.type",
"settings": {
"fontStyle": "\n \t\t\t \t",
"fontStyle": "",
"foreground": "#9B0000",
"background": "#1E1E1E"
}
@@ -144,7 +147,7 @@
"name": "Inherited class",
"scope": "entity.other.inherited-class",
"settings": {
"fontStyle": "\n \t\t\t",
"fontStyle": "",
"foreground": "#C7444A"
}
},
@@ -152,7 +155,7 @@
"name": "Function name",
"scope": "entity.name.function",
"settings": {
"fontStyle": "\n \t\t\t",
"fontStyle": "",
"foreground": "#CE6700"
}
},
@@ -160,7 +163,7 @@
"name": "Function argument",
"scope": "variable.parameter",
"settings": {
"fontStyle": "\n \t\t\t",
"fontStyle": "",
"foreground": "#6089B4"
}
},
@@ -168,7 +171,7 @@
"name": "Tag name",
"scope": "entity.name.tag",
"settings": {
"fontStyle": "\n \t\t\t",
"fontStyle": "",
"foreground": "#9872A2"
}
},
@@ -176,7 +179,7 @@
"name": "Tag attribute",
"scope": "entity.other.attribute-name",
"settings": {
"fontStyle": "\n \t\t\t",
"fontStyle": "",
"foreground": "#9872A2"
}
},
@@ -184,7 +187,7 @@
"name": "Library function",
"scope": "support.function",
"settings": {
"fontStyle": "\n \t\t\t",
"fontStyle": "",
"foreground": "#9872A2"
}
},
@@ -192,7 +195,7 @@
"name": "Keyword",
"scope": "keyword",
"settings": {
"fontStyle": "\n \t\t\t\t",
"fontStyle": "",
"foreground": "#676867"
}
},
@@ -200,7 +203,7 @@
"name": "Class Variable",
"scope": "variable.other, variable.js, punctuation.separator.variable",
"settings": {
"fontStyle": "\n \t\t\t",
"fontStyle": "",
"foreground": "#6089B4"
}
},
@@ -208,7 +211,7 @@
"name": "Language Constant",
"scope": "constant.language",
"settings": {
"fontStyle": "\n \t\t\t",
"fontStyle": "",
"foreground": "#FF0080"
}
},
@@ -216,7 +219,7 @@
"name": "Meta Brace",
"scope": "punctuation.section.embedded -(source string source punctuation.section.embedded), meta.brace.erb.html",
"settings": {
"fontStyle": "\n \t\t\t",
"fontStyle": "",
"foreground": "#008200"
}
},
@@ -224,7 +227,7 @@
"name": "Invalid",
"scope": "invalid",
"settings": {
"fontStyle": "\n \t\t\t",
"fontStyle": "",
"foreground": "#FF0B00"
}
},
@@ -232,7 +235,7 @@
"name": "Normal Variable",
"scope": "variable.other.php, variable.other.normal",
"settings": {
"fontStyle": "\n \t\t\t",
"fontStyle": "",
"foreground": "#6089B4"
}
},
@@ -240,7 +243,7 @@
"name": "Function Object",
"scope": "meta.function-call.object",
"settings": {
"fontStyle": "\n \t\t\t",
"fontStyle": "",
"foreground": "#9872A2"
}
},
@@ -248,7 +251,7 @@
"name": "Function Call Variable",
"scope": "variable.other.property",
"settings": {
"fontStyle": "\n \t\t\t",
"fontStyle": "",
"foreground": "#9872A2"
}
},
@@ -256,7 +259,7 @@
"name": "Keyword Control",
"scope": "keyword.control",
"settings": {
"fontStyle": "\n \t\t\t",
"fontStyle": "",
"foreground": "#9872A2"
}
},
@@ -264,7 +267,7 @@
"name": "Tag",
"scope": "meta.tag",
"settings": {
"fontStyle": "\n \t\t\t",
"fontStyle": "",
"foreground": "#D0B344"
}
},
@@ -272,7 +275,7 @@
"name": "Tag Name",
"scope": "entity.name.tag",
"settings": {
"fontStyle": "\n \t\t\t",
"fontStyle": "",
"foreground": "#6089B4"
}
},
@@ -280,7 +283,7 @@
"name": "Doctype",
"scope": "meta.doctype, meta.tag.sgml-declaration.doctype, meta.tag.sgml.doctype",
"settings": {
"fontStyle": "\n \t\t\t",
"fontStyle": "",
"foreground": "#9AA83A"
}
},
@@ -288,7 +291,7 @@
"name": "Tag Inline Source",
"scope": "meta.tag.inline source, text.html.php.source",
"settings": {
"fontStyle": "\n \t\t\t",
"fontStyle": "",
"foreground": "#9AA83A"
}
},
@@ -296,7 +299,7 @@
"name": "Tag Other",
"scope": "meta.tag.other, entity.name.tag.style, entity.name.tag.script, meta.tag.block.script, source.js.embedded punctuation.definition.tag.html, source.css.embedded punctuation.definition.tag.html",
"settings": {
"fontStyle": "\n \t\t\t",
"fontStyle": "",
"foreground": "#9872A2"
}
},
@@ -304,7 +307,7 @@
"name": "Tag Attribute",
"scope": "entity.other.attribute-name, meta.tag punctuation.definition.string",
"settings": {
"fontStyle": "\n \t\t\t",
"fontStyle": "",
"foreground": "#D0B344"
}
},
@@ -312,7 +315,7 @@
"name": "Tag Value",
"scope": "meta.tag string -source -punctuation, text source text meta.tag string -punctuation",
"settings": {
"fontStyle": "\n \t\t\t",
"fontStyle": "",
"foreground": "#6089B4"
}
},
@@ -320,7 +323,7 @@
"name": "Meta Brace",
"scope": "punctuation.section.embedded -(source string source punctuation.section.embedded), meta.brace.erb.html",
"settings": {
"fontStyle": "\n \t\t\t",
"fontStyle": "",
"foreground": "#D0B344"
}
},
@@ -335,7 +338,7 @@
"name": "HTML String",
"scope": "string.quoted.double.html, punctuation.definition.string.begin.html, punctuation.definition.string.end.html",
"settings": {
"fontStyle": "\n \t\t\t",
"fontStyle": "",
"foreground": "#9AA83A"
}
},
@@ -343,7 +346,7 @@
"name": "HTML Tags",
"scope": "punctuation.definition.tag.html, punctuation.definition.tag.begin, punctuation.definition.tag.end",
"settings": {
"fontStyle": "\n \t\t\t",
"fontStyle": "",
"foreground": "#6089B4"
}
},
@@ -351,7 +354,7 @@
"name": "CSS ID",
"scope": "meta.selector.css entity.other.attribute-name.id",
"settings": {
"fontStyle": "\n \t\t\t",
"fontStyle": "",
"foreground": "#9872A2"
}
},
@@ -359,7 +362,7 @@
"name": "CSS Property Name",
"scope": "support.type.property-name.css",
"settings": {
"fontStyle": "\n \t\t\t",
"fontStyle": "",
"foreground": "#676867"
}
},
@@ -367,7 +370,7 @@
"name": "CSS Property Value",
"scope": "meta.property-group support.constant.property-value.css, meta.property-value support.constant.property-value.css",
"settings": {
"fontStyle": "\n \t\t\t",
"fontStyle": "",
"foreground": "#C7444A"
}
},
@@ -401,7 +404,7 @@
"name": "PHP Function Call",
"scope": "meta.function-call.object.php",
"settings": {
"fontStyle": "\n \t\t\t",
"fontStyle": "",
"foreground": "#D0B344"
}
},
@@ -423,7 +426,7 @@
"name": "PHP Punctuation Embedded",
"scope": "punctuation.section.embedded.begin.php, punctuation.section.embedded.end.php",
"settings": {
"fontStyle": "\n \t\t\t",
"fontStyle": "",
"foreground": "#D08442"
}
},
@@ -431,7 +434,7 @@
"name": "Ruby Symbol",
"scope": "constant.other.symbol.ruby",
"settings": {
"fontStyle": "\n \t\t\t",
"fontStyle": "",
"foreground": "#9AA83A"
}
},
@@ -439,7 +442,7 @@
"name": "Ruby Variable",
"scope": "variable.language.ruby",
"settings": {
"fontStyle": "\n \t\t\t",
"fontStyle": "",
"foreground": "#D0B344"
}
},
@@ -447,7 +450,7 @@
"name": "Ruby Special Method",
"scope": "keyword.other.special-method.ruby",
"settings": {
"fontStyle": "\n \t\t\t",
"fontStyle": "",
"foreground": "#D9B700"
}
},
@@ -455,7 +458,8 @@
"name": "Ruby Embedded Source",
"scope": [
"punctuation.section.embedded.begin.ruby",
"punctuation.section.embedded.end.ruby"],
"punctuation.section.embedded.end.ruby"
],
"settings": {
"foreground": "#D08442"
}
@@ -464,7 +468,7 @@
"name": "SQL",
"scope": "keyword.other.DML.sql",
"settings": {
"fontStyle": "\n \t\t\t\t",
"fontStyle": "",
"foreground": "#D0B344"
}
},
@@ -19,7 +19,7 @@
"editor.foreground": "#f8f8f2",
"selection.background": "#ccccc7",
"editor.selectionHighlightBackground": "#665044cc",
"editor.selectionBackground": "#334444cc",
"editor.selectionBackground": "#334444cc",
"editor.lineHighlightBackground": "#3e3d32",
"editorCursor.foreground": "#f8f8f0",
"editorWhitespace.foreground": "#464741",
@@ -73,22 +73,22 @@
"peekViewResult.selectionBackground": "#414339",
"peekViewResult.matchHighlightBackground": "#75715E",
"peekViewEditor.matchHighlightBackground": "#75715E",
"terminal.ansiBlack": "#333333",
"terminal.ansiRed": "#C4265E", // the bright color with ~75% transparent on the background
"terminal.ansiGreen": "#86B42B",
"terminal.ansiYellow": "#B3B42B",
"terminal.ansiBlue": "#6A7EC8",
"terminal.ansiMagenta": "#8C6BC8",
"terminal.ansiCyan": "#56ADBC",
"terminal.ansiWhite": "#e3e3dd",
"terminal.ansiBrightBlack": "#666666",
"terminal.ansiBrightRed": "#f92672",
"terminal.ansiBrightGreen": "#A6E22E",
"terminal.ansiBrightYellow": "#e2e22e", // hue shifted #A6E22E
"terminal.ansiBrightBlue": "#819aff", // hue shifted #AE81FF
"terminal.ansiBrightMagenta": "#AE81FF",
"terminal.ansiBrightCyan": "#66D9EF",
"terminal.ansiBrightWhite": "#f8f8f2"
"terminal.ansiBlack": "#333333",
"terminal.ansiRed": "#C4265E", // the bright color with ~75% transparent on the background
"terminal.ansiGreen": "#86B42B",
"terminal.ansiYellow": "#B3B42B",
"terminal.ansiBlue": "#6A7EC8",
"terminal.ansiMagenta": "#8C6BC8",
"terminal.ansiCyan": "#56ADBC",
"terminal.ansiWhite": "#e3e3dd",
"terminal.ansiBrightBlack": "#666666",
"terminal.ansiBrightRed": "#f92672",
"terminal.ansiBrightGreen": "#A6E22E",
"terminal.ansiBrightYellow": "#e2e22e", // hue shifted #A6E22E
"terminal.ansiBrightBlue": "#819aff", // hue shifted #AE81FF
"terminal.ansiBrightMagenta": "#AE81FF",
"terminal.ansiBrightCyan": "#66D9EF",
"terminal.ansiBrightWhite": "#f8f8f2"
},
"tokenColors": [
{
@@ -98,7 +98,10 @@
}
},
{
"scope": ["meta.embedded", "source.groovy.embedded"],
"scope": [
"meta.embedded",
"source.groovy.embedded"
],
"settings": {
"background": "#272822",
"foreground": "#F8F8F2"
@@ -408,4 +411,4 @@
}
}
]
}
}
@@ -8,7 +8,10 @@
}
},
{
"scope": ["meta.embedded", "source.groovy.embedded"],
"scope": [
"meta.embedded",
"source.groovy.embedded"
],
"settings": {
"background": "#F5F5F5",
"foreground": "#333333"
@@ -491,8 +494,8 @@
"statusBar.background": "#705697",
"statusBar.noFolderBackground": "#705697",
"statusBar.debuggingBackground": "#705697",
"activityBar.background": "#EDEDF5",
"activityBar.foreground": "#705697",
"activityBar.background": "#EDEDF5",
"activityBar.foreground": "#705697",
"activityBarBadge.background": "#705697",
"titleBar.activeBackground": "#c4b7d7",
"button.background": "#705697",
@@ -69,7 +69,10 @@
}
},
{
"scope": ["meta.embedded", "source.groovy.embedded"],
"scope": [
"meta.embedded",
"source.groovy.embedded"
],
"settings": {
"background": "#390000",
"foreground": "#F8F8F8"
@@ -3,12 +3,13 @@
* Licensed under the MIT License. See License.txt in the project root for license information.
*--------------------------------------------------------------------------------------------*/
import { CodeActionProvider, TextDocument, Range, CancellationToken, CodeActionContext, Command, commands, workspace, WorkspaceEdit } from 'vscode';
import { CodeActionProvider, TextDocument, Range, CancellationToken, CodeActionContext, Command, commands } from 'vscode';
import * as Proto from '../protocol';
import { ITypescriptServiceClient } from '../typescriptService';
import { tsTextSpanToVsRange, vsRangeToTsFileRange } from '../utils/convert';
import { vsRangeToTsFileRange } from '../utils/convert';
import FormattingConfigurationManager from './formattingConfigurationManager';
import { applyCodeAction } from '../utils/codeAction';
interface NumberSet {
[key: number]: boolean;
@@ -55,7 +56,7 @@ export default class TypeScriptCodeActionProvider implements CodeActionProvider
errorCodes: Array.from(supportedActions)
};
const response = await this.client.execute('getCodeFixes', args, token);
return (response.body || []).map(action => this.getCommandForAction(action));
return (response.body || []).map(action => this.getCommandForAction(action, file));
}
private get supportedCodeActions(): Thenable<NumberSet> {
@@ -72,31 +73,22 @@ export default class TypeScriptCodeActionProvider implements CodeActionProvider
return this._supportedCodeActions;
}
private getSupportedActionsForContext(context: CodeActionContext): Thenable<Set<number>> {
return this.supportedCodeActions.then(supportedActions =>
new Set(context.diagnostics
.map(diagnostic => +diagnostic.code)
.filter(code => supportedActions[code])));
private async getSupportedActionsForContext(context: CodeActionContext): Promise<Set<number>> {
const supportedActions = await this.supportedCodeActions;
return new Set(context.diagnostics
.map(diagnostic => +diagnostic.code)
.filter(code => supportedActions[code]));
}
private getCommandForAction(action: Proto.CodeAction): Command {
private getCommandForAction(action: Proto.CodeAction, file: string): Command {
return {
title: action.description,
command: this.commandId,
arguments: [action]
arguments: [action, file]
};
}
private async onCodeAction(action: Proto.CodeAction): Promise<boolean> {
const workspaceEdit = new WorkspaceEdit();
for (const change of action.changes) {
for (const textChange of change.textChanges) {
workspaceEdit.replace(this.client.asUrl(change.fileName),
tsTextSpanToVsRange(textChange),
textChange.newText);
}
}
return workspace.applyEdit(workspaceEdit);
private onCodeAction(action: Proto.CodeAction, file: string): Promise<boolean> {
return applyCodeAction(this.client, action, file);
}
}
@@ -3,17 +3,18 @@
* Licensed under the MIT License. See License.txt in the project root for license information.
*--------------------------------------------------------------------------------------------*/
import { CompletionItem, TextDocument, Position, CompletionItemKind, CompletionItemProvider, CancellationToken, TextEdit, Range, SnippetString, workspace, ProviderResult, CompletionContext } from 'vscode';
import { CompletionItem, TextDocument, Position, CompletionItemKind, CompletionItemProvider, CancellationToken, TextEdit, Range, SnippetString, workspace, ProviderResult, CompletionContext, commands } from 'vscode';
import { ITypescriptServiceClient } from '../typescriptService';
import TypingsStatus from '../utils/typingsStatus';
import * as PConst from '../protocol.const';
import { CompletionEntry, CompletionsRequestArgs, CompletionDetailsRequestArgs, CompletionEntryDetails } from '../protocol';
import { CompletionEntry, CompletionsRequestArgs, CompletionDetailsRequestArgs, CompletionEntryDetails, CodeAction } from '../protocol';
import * as Previewer from './previewer';
import { tsTextSpanToVsRange, vsPositionToTsFileLocation } from '../utils/convert';
import * as nls from 'vscode-nls';
import { applyCodeAction } from '../utils/codeAction';
let localize = nls.loadMessageBundle();
class MyCompletionItem extends CompletionItem {
@@ -132,6 +133,7 @@ namespace Configuration {
}
export default class TypeScriptCompletionItemProvider implements CompletionItemProvider {
private readonly commandId: string;
private config: Configuration = {
useCodeSnippetsOnMethodSuggest: false,
@@ -141,8 +143,12 @@ export default class TypeScriptCompletionItemProvider implements CompletionItemP
constructor(
private client: ITypescriptServiceClient,
mode: string,
private typingsStatus: TypingsStatus
) { }
) {
this.commandId = `_typescript.applyCompletionCodeAction.${mode}`;
commands.registerCommand(this.commandId, this.applyCompletionCodeAction, this);
}
public updateConfiguration(): void {
// Use shared setting for js and ts
@@ -277,9 +283,16 @@ export default class TypeScriptCompletionItemProvider implements CompletionItemP
}
const detail = details[0];
item.detail = Previewer.plain(detail.displayParts);
item.documentation = Previewer.markdownDocumentation(detail.documentation, detail.tags);
if (detail.codeActions && detail.codeActions.length) {
item.command = {
title: '',
command: this.commandId,
arguments: [filepath, detail.codeActions]
};
}
if (detail && this.config.useCodeSnippetsOnMethodSuggest && (item.kind === CompletionItemKind.Function || item.kind === CompletionItemKind.Method)) {
return this.isValidFunctionCompletionContext(filepath, item.position).then(shouldCompleteFunction => {
if (shouldCompleteFunction) {
@@ -341,4 +354,13 @@ export default class TypeScriptCompletionItemProvider implements CompletionItemP
return new SnippetString(codeSnippet);
}
private async applyCompletionCodeAction(file: string, codeActions: CodeAction[]): Promise<boolean> {
for (const action of codeActions) {
if (!(await applyCodeAction(this.client, action, file))) {
return false;
}
}
return true;
}
}
@@ -52,6 +52,11 @@ export default class TypeScriptRefactorProvider implements CodeActionProvider {
const actions: Command[] = [];
for (const info of response.body) {
// Workaround for https://github.com/Microsoft/TypeScript/issues/19378
if (info.name.startsWith('Install missing ')) {
continue;
}
if (info.inlineable === false) {
actions.push({
title: info.description,
+1 -1
View File
@@ -239,7 +239,7 @@ class LanguageProvider {
const selector = this.description.modeIds;
const config = workspace.getConfiguration(this.id);
const completionItemProvider = new (await import('./features/completionItemProvider')).default(client, this.typingsStatus);
const completionItemProvider = new (await import('./features/completionItemProvider')).default(client, this.description.id, this.typingsStatus);
completionItemProvider.updateConfiguration();
this.toUpdateOnConfigurationChanged.push(completionItemProvider);
this.disposables.push(languages.registerCompletionItemProvider(selector, completionItemProvider, '.', '"', '\'', '/', '@'));
@@ -66,6 +66,7 @@ export interface ITypescriptServiceClient {
execute(command: 'docCommentTemplate', args: Proto.FileLocationRequestArgs, token?: CancellationToken): Promise<Proto.DocCommandTemplateResponse>;
execute(command: 'getApplicableRefactors', args: Proto.GetApplicableRefactorsRequestArgs, token?: CancellationToken): Promise<Proto.GetApplicableRefactorsResponse>;
execute(command: 'getEditsForRefactor', args: Proto.GetEditsForRefactorRequestArgs, token?: CancellationToken): Promise<Proto.GetEditsForRefactorResponse>;
execute(command: 'applyCodeActionCommand', args: Proto.ApplyCodeActionCommandRequestArgs, token?: CancellationToken): Promise<Proto.ApplyCodeActionCommandResponse>;
// execute(command: 'compileOnSaveAffectedFileList', args: Proto.CompileOnSaveEmitFileRequestArgs, token?: CancellationToken): Promise<Proto.CompileOnSaveAffectedFileListResponse>;
// execute(command: 'compileOnSaveEmitFile', args: Proto.CompileOnSaveEmitFileRequestArgs, token?: CancellationToken): Promise<any>;
execute(command: string, args: any, expectedResult: boolean | CancellationToken, token?: CancellationToken): Promise<any>;
@@ -231,6 +231,7 @@ export default class TypeScriptServiceClient implements ITypescriptServiceClient
if (this.servicePromise) {
this.servicePromise = this.servicePromise.then(cp => {
if (cp) {
this.info('Killing TS Server');
this.isRestarting = true;
cp.kill();
}
@@ -401,7 +402,10 @@ export default class TypeScriptServiceClient implements ITypescriptServiceClient
this.logTelemetry('error', { message: err.message });
return;
}
this.info('Started TSServer');
this.lastStart = Date.now();
childProcess.on('error', (err: Error) => {
this.lastError = err;
this.error('TSServer errored with error.', err);
@@ -416,7 +420,7 @@ export default class TypeScriptServiceClient implements ITypescriptServiceClient
});
childProcess.on('exit', (code: any) => {
if (code === null || typeof code === 'undefined') {
this.info(`TSServer exited`);
this.info('TSServer exited');
} else {
this.error(`TSServer exited with code: ${code}`);
/* __GDPR__
@@ -0,0 +1,41 @@
/*---------------------------------------------------------------------------------------------
* Copyright (c) Microsoft Corporation. All rights reserved.
* Licensed under the MIT License. See License.txt in the project root for license information.
*--------------------------------------------------------------------------------------------*/
import { WorkspaceEdit, workspace } from 'vscode';
import * as Proto from '../protocol';
import { tsTextSpanToVsRange } from './convert';
import { ITypescriptServiceClient } from '../typescriptService';
export async function applyCodeAction(
client: ITypescriptServiceClient,
action: Proto.CodeAction,
file: string
): Promise<boolean> {
if (action.changes && action.changes.length) {
const workspaceEdit = new WorkspaceEdit();
for (const change of action.changes) {
for (const textChange of change.textChanges) {
workspaceEdit.replace(client.asUrl(change.fileName),
tsTextSpanToVsRange(textChange),
textChange.newText);
}
}
if (!(await workspace.applyEdit(workspaceEdit))) {
return false;
}
}
if (action.commands && action.commands.length) {
for (const command of action.commands) {
const response = await client.execute('applyCodeActionCommand', { file, command });
if (!response || !response.body) {
return false;
}
}
}
return true;
}
+2 -2
View File
@@ -7,10 +7,10 @@ To update to the latest version:
Migration notes and todos:
- differentiate variable and function declarations from references
- I suggest we use a new scope segment 'function-call' to sigmal a function references, and 'definition' to the declaration. Alternative is to use 'support.function' everywhere.
- I suggest we use a new scope segment 'function-call' to signal a function reference, and 'definition' to the declaration. An alternative is to use 'support.function' everywhere.
- I suggest we use a new scope segment 'definition' to the variable declarations. Haven't yet found a scope for references that other grammars use.
- rename scope to return.type to return-type, which is already used in other grammars
- rename entity.name.class to entity.name.type.class which is used in all other grammars I've seen
- do we really want to have the list of all the 'library' types (Math, Dom...). It adds a lot of size to the grammar, lots of special rules and is not really correct as it depends on the JavaScript runtime which types are present.
- do we really want to have the list of all the 'library' types (Math, Dom...). It adds a lot of size to the grammar, lots of special rules and is not really correct as it depends on the JavaScript runtime which types are present.
@@ -4,13 +4,13 @@
*--------------------------------------------------------------------------------------------*/
// Do not edit this file. It is machine generated.
{
"activeEditorShort": "例如 myFile.txt",
"activeEditorMedium": "例如 myFolder/myFile.txt",
"activeEditorLong": "例如 /Users/Development/myProject/myFolder/myFile.txt",
"rootName": "例如 myFolder1、myFolder2、myFolder3",
"rootPath": "例如 /Users/Development/myProject",
"folderName": "例如 myFolder",
"folderPath": "例如 /Users/Development/myFolder",
"activeEditorShort": "文件名 (例如 myFile.txt)",
"activeEditorMedium": "相对于工作区文件夹的文件路径 (例如 myFolder/myFile.txt)",
"activeEditorLong": "文件的完整路径 (例如 /Users/Development/myProject/myFolder/myFile.txt)",
"rootName": "工作区名称 (例如 myFolder 或 myWorkspace)",
"rootPath": "工作区路径 (例如 /Users/Development/myWorkspace)",
"folderName": "文件所在工作区文件夹的名称 (例如 myFolder)",
"folderPath": "文件所在工作区文件夹的路径 (例如 /Users/Development/myFolder)",
"appName": "例如 VS Code",
"dirty": "一个更新的指示器,指示活动编辑器是否更新",
"separator": "一个条件分隔符(\"-\"),仅在左右是具有值的变量时才显示",
+3 -8
View File
@@ -28,13 +28,6 @@
"command.incrementNumberByTen": "增加 10",
"command.decrementNumberByTen": "减少 10",
"emmetSyntaxProfiles": "为指定的语法定义配置文件或使用带有特定规则的配置文件。",
"emmetExclude": "不应展开 Emmet 缩写的语言数组。",
"emmetExtensionsPath": "含有 Emmet 配置文件和片段的文件夹路径。",
"emmetShowExpandedAbbreviation": "显示扩展的 Emmet 缩写作为建议。\n\"inMarkupAndStylesheetFilesOnly\" 选项适用于 html、haml、jade、slim、xml、xsl、css、scss、sass、less 和 stylus。\n\"always\" 选项适用于 markup/css 文件的所有部分。",
"emmetShowAbbreviationSuggestions": "显示可能的 Emmet 缩写作为建议。在风格表中或将 emmet.showExpandedAbbreviation 设置为 \"never\" 时不适用。",
"emmetIncludeLanguages": "启用使用默认不支持的语言的 Emmet 缩写。在此添加该语言与支持 Emmet 的语言之间的映射。示例: {\"vue-html\": \"html\", \"javascript\": \"javascriptreact\"}",
"emmetVariables": "要用于 Emmet 代码片段的变量",
"emmetTriggerExpansionOnTab": "启用后,按 TAB 键时,将展开 Emmet 缩写。",
"emmetPreferences": "用于修改 Emmet 某些操作和解析程序的行为的首选项。",
"emmetPreferencesIntUnit": "整数值的默认单位",
"emmetPreferencesFloatUnit": "浮点数值的默认单位",
@@ -44,5 +37,7 @@
"emmetPreferencesCssBetween": "展开 CSS 缩写时在 CSS 属性之间放置的符号",
"emmetPreferencesSassBetween": "在 Sass 文件中展开 CSS 缩写时在 CSS 属性之间放置的符号",
"emmetPreferencesStylusBetween": "在 Stylus 文件中展开 CSS 缩写时在 CSS 属性之间放置的符号",
"emmetShowSuggestionsAsSnippets": "若为 \"true\"Emmet 建议将会显示为代码片段,根据editor.snippetSuggestions 设置进行排列。"
"emmetPreferencesFilterCommentBefore": "使用注释过滤器时,应置于匹配元素前注释的定义。",
"emmetPreferencesFilterCommentAfter": "使用注释过滤器时,应置于匹配元素后注释的定义。",
"emmetPreferencesFilterCommentTrigger": "用半角逗号 (\",\") 隔开的属性名缩写的数组,将由注释筛选器应用"
}
@@ -12,8 +12,9 @@
"cloning": "正在克隆 GIT 存储库...",
"openrepo": "打开存储库",
"proposeopen": "是否要打开已克隆存储库?",
"path to init": "文件夹路径",
"provide path": "请提供用于初始化 Git 存储库的文件夹路径",
"init repo": "初始化存储库",
"create repo": "初始化存储库",
"are you sure": "将在“{0}”中创建 Git 存储库。确定要继续吗?",
"HEAD not available": "“{0}”的 HEAD 版本不可用。",
"confirm stage files with merge conflicts": "确定要暂存含有合并冲突的 {0} 个文件吗?",
"confirm stage file with merge conflicts": "确定要暂存含有合并冲突的 {0} 吗?",
@@ -60,7 +61,7 @@
"push with tags success": "已成功带标签进行推送。",
"nobranch": "请签出一个分支以推送到远程。",
"pick remote": "选取要将分支“{0}”发布到的远程:",
"sync is unpredictable": "此操作“{0}”推送和拉取提交。",
"sync is unpredictable": "此操作将推送提交至“{0}”,并从中拉取提交。",
"ok": "确定",
"never again": "好,永不再显示",
"no remotes to publish": "存储库未配置任何要发布到的远程存储库。",
@@ -21,6 +21,8 @@
"deleted by us": "已被我们删除",
"both added": "两者均已添加",
"both modified": "二者均已修改",
"untracked, short": "U",
"modified, short": "M",
"commit": "提交",
"merge changes": "合并更改",
"staged changes": "暂存的更改",
+4 -2
View File
@@ -15,6 +15,8 @@
"command.stageAll": "暂存所有更改",
"command.stageSelectedRanges": "暂存所选范围",
"command.revertSelectedRanges": "还原所选更改",
"command.stageChange": "暂存更改",
"command.revertChange": "还原更改",
"command.unstage": "取消暂存更改",
"command.unstageAll": "取消暂存所有更改",
"command.unstageSelectedRanges": "取消暂存所选范围",
@@ -53,11 +55,11 @@
"config.enableLongCommitWarning": "是否针对长段提交消息进行警告",
"config.confirmSync": "同步 Git 存储库前进行确认",
"config.countBadge": "控制 Git 徽章计数器。“all”计算所有更改。“tracked”只计算跟踪的更改。“off”关闭此功能。",
"config.checkoutType": "控制运行“签出到...”时列出的分支的类型。all显示所有 refslocal只显示本地分支,tags只显示标签,“remote只显示远程分支。",
"config.checkoutType": "控制运行“签出到...”命令时列出的分支的类型。\"all\" 显示所有 refs\"local\" 只显示本地分支,\"tags\" 只显示标记,\"remote\" 只显示远程分支。",
"config.ignoreLegacyWarning": "忽略旧版 Git 警告",
"config.ignoreLimitWarning": "忽略“存储库中存在大量更改”的警告",
"config.defaultCloneDirectory": "克隆 Git 存储库的默认位置",
"config.enableSmartCommit": "在没有暂存的更改时提交所有更改。",
"config.enableCommitSigning": "启用使用 GPG 签名的提交",
"config.discardAllScope": "控制运行\"放弃所有更改\"命令时放弃的更改。\"all\" 放弃所有更改。 \"tracked\" 只放弃跟踪的文件。 \"prompt\" 每次运行此操作时显示提示对话框。"
"config.discardAllScope": "控制运行放弃所有更改命令时放弃的更改类型。\"all\" 放弃所有更改。\"tracked\" 只放弃跟踪的文件。\"prompt\" 表示在每次运行此操作时显示提示对话框。"
}
@@ -44,7 +44,8 @@
"typescript.npm": "指定用于自动获取类型的 NPM 可执行文件的路径。要求 TypeScript >= 2.3.4。",
"typescript.check.npmIsInstalled": "检查是否安装了 NPM 以自动获取类型。",
"javascript.nameSuggestions": "启用/禁用在 JavaScript 建议列表中包含文件中的唯一名称。",
"typescript.tsc.autoDetect": "控制自动检测 tsc 任务是否打开。",
"typescript.tsc.autoDetect": "控制 tsc 任务的自动检测。\"off\" 关闭此功能。\"build\" 仅创建单次运行编译任务。\"watch\" 仅创建编译及监视任务。\"on\" 创建构建及监视任务。默认值为 \"on\"。",
"typescript.problemMatchers.tsc.label": "TypeScript 问题",
"typescript.problemMatchers.tscWatch.label": "TypeScript 问题(观看模式)"
"typescript.problemMatchers.tscWatch.label": "TypeScript 问题(观看模式)",
"typescript.quickSuggestionsForPaths": "当输入导入路径时启用或禁用快速建议。"
}
@@ -15,7 +15,6 @@
"label.replaceButton": "替换",
"label.replaceAllButton": "全部替换",
"label.toggleReplaceButton": "切换替换模式",
"title.matchesCountLimit": "仅前 999 个结果突出显示,但所有查找操作均针对整个文本。",
"label.matchesLocation": "第 {0} 个(共 {1} 个)",
"label.noResults": "无结果"
}
@@ -10,12 +10,6 @@
"nextSelectionMatchFindAction": "查找下一个选择",
"previousSelectionMatchFindAction": "查找上一个选择",
"startReplace": "替换",
"addSelectionToNextFindMatch": "将选择添加到下一个查找匹配项",
"addSelectionToPreviousFindMatch": "将选择内容添加到上一查找匹配项",
"moveSelectionToNextFindMatch": "将上次选择移动到下一个查找匹配项",
"moveSelectionToPreviousFindMatch": "将上个选择内容移动到上一查找匹配项",
"selectAllOccurrencesOfFindMatch": "选择所有找到的查找匹配项",
"changeAll.label": "更改所有匹配项",
"showNextFindTermAction": "显示下一个搜索结果",
"showPreviousFindTermAction": "显示上一个搜索结果"
}
@@ -6,5 +6,11 @@
{
"mutlicursor.insertAbove": "在上面添加光标",
"mutlicursor.insertBelow": "在下面添加光标",
"mutlicursor.insertAtEndOfEachLineSelected": "在行尾添加光标"
"mutlicursor.insertAtEndOfEachLineSelected": "在行尾添加光标",
"addSelectionToNextFindMatch": "将选择添加到下一个查找匹配项",
"addSelectionToPreviousFindMatch": "将选择内容添加到上一查找匹配项",
"moveSelectionToNextFindMatch": "将上次选择移动到下一个查找匹配项",
"moveSelectionToPreviousFindMatch": "将上个选择内容移动到上一查找匹配项",
"selectAllOccurrencesOfFindMatch": "选择所有找到的查找匹配项",
"changeAll.label": "更改所有匹配项"
}
@@ -4,7 +4,6 @@
*--------------------------------------------------------------------------------------------*/
// Do not edit this file. It is machine generated.
{
"invalid.color": "颜色格式无效。请使用 #RGB、#RGBA、#RRGGBB 或 #RRGGBBAA",
"schema.colors": "工作台中使用的颜色。",
"foreground": "整体前景色。此颜色仅在不被组件覆盖时适用。",
"errorForeground": "错误信息的整体前景色。此颜色仅在不被组件覆盖时适用。",
@@ -9,14 +9,17 @@
"addFolderToWorkspace": "将文件夹添加到工作区...",
"add": "添加(&&A)",
"addFolderToWorkspaceTitle": "将文件夹添加到工作区",
"globalRemoveFolderFromWorkspace": "将文件夹从工作区删除…",
"newWorkspace": "新建工作区...",
"select": "选择(&&S)",
"selectWorkspace": "选择文件夹作为工作区",
"removeFolderFromWorkspace": "将文件夹从工作区删除",
"openFolderSettings": "打开文件夹设置",
"saveWorkspaceAsAction": "将工作区另存为...",
"save": "保存(&&S)",
"saveWorkspace": "保存工作区",
"openWorkspaceAction": "打开工作区...",
"openWorkspaceConfigFile": "打开工作区配置文件",
"openFolderAsWorkspaceInNewWindow": "在新窗口中将文件夹作为工作区打开",
"workspaceFolderPickerPlaceholder": "选择工作区文件夹"
}
@@ -5,6 +5,5 @@
// Do not edit this file. It is machine generated.
{
"hideActivitBar": "隐藏活动栏",
"activityBarAriaLabel": "活动视图切换器",
"globalActions": "全局动作"
}
@@ -0,0 +1,8 @@
/*---------------------------------------------------------------------------------------------
* Copyright (c) Microsoft Corporation. All rights reserved.
* Licensed under the MIT License. See License.txt in the project root for license information.
*--------------------------------------------------------------------------------------------*/
// Do not edit this file. It is machine generated.
{
"activityBarAriaLabel": "活动视图切换器"
}
@@ -0,0 +1,14 @@
/*---------------------------------------------------------------------------------------------
* Copyright (c) Microsoft Corporation. All rights reserved.
* Licensed under the MIT License. See License.txt in the project root for license information.
*--------------------------------------------------------------------------------------------*/
// Do not edit this file. It is machine generated.
{
"badgeTitle": "{0} - {1}",
"additionalViews": "其他视图",
"numberBadge": "{0} ({1})",
"manageExtension": "管理扩展",
"titleKeybinding": "{0} ({1})",
"hide": "隐藏",
"toggle": "切换已固定的视图"
}
@@ -12,5 +12,6 @@
"groupTwoPicker": "在第二组中显示编辑器",
"groupThreePicker": "在第三组中显示编辑器",
"allEditorsPicker": "显示所有已打开的编辑器",
"view": "查看"
"view": "查看",
"file": "文件"
}
@@ -4,6 +4,5 @@
*--------------------------------------------------------------------------------------------*/
// Do not edit this file. It is machine generated.
{
"canNotRun": "命令“{0}”当前未启用,无法运行。",
"manageExtension": "管理扩展"
}
@@ -10,18 +10,15 @@
"workspaces": "工作区",
"developer": "开发者",
"showEditorTabs": "控制打开的编辑器是否显示在选项卡中。",
"workbench.editor.labelFormat.default": "显示文件名。当启用选项卡且在同一组内有两个相同名称的文件时,将添加每个文件路径中可以用于区分的部分。在选项卡被禁用且编辑器活动时,将显示相对于工作区根目录的路径。",
"workbench.editor.labelFormat.short": "在文件的目录名之后显示文件名。",
"workbench.editor.labelFormat.medium": "在文件相对当前工作空间根的路径之后显示文件名。",
"workbench.editor.labelFormat.long": "在文件的绝对路径之后显示文件名。",
"tabDescription": "控制编辑器标签的格式。修改这项设置会让文件的路径更容易理解:\n- short: \"parent\"\n- medium: \"workspace/src/parent\"\n- long: \"/home/user/workspace/src/parent\"\n- default: 当与另一选项卡标题相同时为 \".../parent\"。选项卡被禁用时则为相对工作区路径",
"editorTabCloseButton": "控制编辑器的选项卡关闭按钮的位置,或当设置为 \"off\" 时禁用关闭它们。",
"showIcons": "控制打开的编辑器是否随图标一起显示。这还需启用图标主题。",
"enablePreview": "控制是否将打开的编辑器显示为预览。预览编辑器将会重用至其被保留(例如,通过双击或编辑),且其字体样式将为斜体。",
"enablePreviewFromQuickOpen": "控制 Quick Open 中打开的编辑器是否显示为预览。预览编辑器可以重新使用,直到将其保留(例如,通过双击或编辑)。",
"editorOpenPositioning": "控制打开编辑器的位置。选择“左侧”或“右侧”以在当前活动位置的左侧或右侧打开编辑器。选择“第一个”或“最后一个”以从当前活动位置独立打开编辑器。",
"revealIfOpen": "控制打开时编辑器是否显示在任何可见组中。如果禁用,编辑器会优先在当前活动编辑器组中打开。如果启用,会显示已打开的编辑器而不是在当前活动编辑器组中再次打开。请注意,有些情况下会忽略此设置,例如强制编辑器在特定组中或在当前活动组的边侧打开时。",
"commandHistory": "控制命令面板中保留最近使用命令的数量。设置为 0 禁用命令历史记录。",
"commandHistory": "控制命令面板中保留最近使用命令的数量。设置为 0 禁用命令历史功能。",
"preserveInput": "控制是否在再次打开命令面板时恢复上一次的输入内容。",
"closeOnFocusLost": "控制 Quick Open 是否应在失去焦点时自动关闭。",
"openDefaultSettings": "控制打开设置时是否打开显示所有默认设置的编辑器。",
@@ -50,7 +47,7 @@
"restoreWindows": "控制重启后重新打开窗口的方式。选择 \"none\" 则永远在启动时打开一个空工作区,\"one\" 则重新打开最后使用的窗口,\"folders\" 则重新打开所有含有文件夹的窗口,\"all\" 则重新打开上次会话的所有窗口。",
"restoreFullscreen": "如果窗口已退出全屏模式,控制其是否应还原为全屏模式。",
"zoomLevel": "调整窗口的缩放级别。原始大小是 0,每次递增(例如 1)或递减(例如 -1)表示放大或缩小 20%。也可以输入小数以便以更精细的粒度调整缩放级别。",
"title": "基于活动编辑器控制窗口标题。变量基于上下文进行替换:\n${activeEditorShort}: 如 myFile.txt\n${activeEditorMedium}: 如 myFolder/myFile.txt\n${activeEditorLong}: 如 /Users/Development/myProject/myFolder/myFile.txt\n${folderName}: 如 myFolder\n${folderPath}: 如 /Users/Development/myFolder\n${rootName}: 如 myFolder1, myFolder2, myFolder3\n${rootPath}: 如 /Users/Development/myWorkspace\n${appName}: 如 VS Code\n${dirty}: 更新的指示器(如果活动编辑器已更新)\n${separator}: 仅在被带值的变量包围时显示的条件分隔符(\" - \")",
"title": "根据活动编辑器控制窗口标题。变量基于上下文进行替换:\n${activeEditorShort}: 文件名 (如 myFile.txt)\n${activeEditorMedium}: 相对于工作区文件夹的文件路径 (如 myFolder/myFile.txt)\n${activeEditorLong}: 文件的完整路径 (如 /Users/Development/myProject/myFolder/myFile.txt)\n${folderName}: 文件所在工作区文件夹名称 (如 myFolder)\n${folderPath}: 文件所在工作区文件夹路径 (如 /Users/Development/myFolder)\n${rootName}: 工作区名称 (如 myFolder 或 myWorkspace)\n${rootPath}: 工作区路径 (如 /Users/Development/myWorkspace)\n${appName}: 如 VS Code\n${dirty}: 活动编辑器有更新时显示的更新指示器\n${separator}: 仅在被有值变量包围时显示的分隔符 (\" - \")",
"window.newWindowDimensions.default": "在屏幕中心打开新窗口。",
"window.newWindowDimensions.inherit": "以与上一个活动窗口相同的尺寸打开新窗口。",
"window.newWindowDimensions.maximized": "打开最大化的新窗口。",
@@ -6,6 +6,8 @@
{
"entryAriaLabel": "{0},调试",
"debugAriaLabel": "键入启动配置的名称以运行。",
"addConfigTo": "添加配置 ({0})...",
"addConfiguration": "添加配置...",
"noConfigurationsMatching": "无任何调试配置匹配",
"noConfigurationsFound": "找不到任何调试配置。请创建一个 \"launch.json\" 文件。"
}
@@ -0,0 +1,8 @@
/*---------------------------------------------------------------------------------------------
* Copyright (c) Microsoft Corporation. All rights reserved.
* Licensed under the MIT License. See License.txt in the project root for license information.
*--------------------------------------------------------------------------------------------*/
// Do not edit this file. It is machine generated.
{
"debug": "调试"
}
@@ -0,0 +1,11 @@
/*---------------------------------------------------------------------------------------------
* Copyright (c) Microsoft Corporation. All rights reserved.
* Licensed under the MIT License. See License.txt in the project root for license information.
*--------------------------------------------------------------------------------------------*/
// Do not edit this file. It is machine generated.
{
"debugFocusVariablesView": "聚焦于变量视图",
"debugFocusWatchView": "聚焦于监视视图",
"debugFocusCallStackView": "聚焦于调用堆栈视图",
"debugFocusBreakpointsView": "聚焦于断点视图"
}
@@ -15,7 +15,6 @@
"vscode.extension.contributes.debuggers.initialConfigurations": "用于生成初始 \"launch.json\" 的配置。",
"vscode.extension.contributes.debuggers.languages": "可能被视为“默认调试程序”的调试扩展的语言列表。",
"vscode.extension.contributes.debuggers.adapterExecutableCommand": "如果指定的 VS Code 将调用此命令以确定调试适配器的可执行路径和要传递的参数。",
"vscode.extension.contributes.debuggers.startSessionCommand": "如果指定的 VS Code 将为针对此扩展的“调试”或“运行”操作调用此命令。",
"vscode.extension.contributes.debuggers.configurationSnippets": "用于在 \"launch.json\" 中添加新配置的代码段。",
"vscode.extension.contributes.debuggers.configurationAttributes": "用于验证 \"launch.json\" 的 JSON 架构配置。",
"vscode.extension.contributes.debuggers.windows": "Windows 特定的设置。",
@@ -12,8 +12,8 @@
"breakpointRemoved": "已删除断点,行 {0},文件 {1}",
"compoundMustHaveConfigurations": "复合项必须拥有 \"configurations\" 属性集,才能启动多个配置。",
"configMissing": "\"launch.json\" 中缺少配置“{0}”。",
"debugRequestNotSupported": "所选调试配置有一个不支持的属性“{0}”: “{1}”。",
"debugRequesMissing": "所选的调试配置缺少属性{0}。",
"debugRequestNotSupported": "所选调试配置的属性“{0}”的值“{1}”不受支持。",
"debugRequesMissing": "所选的调试配置缺少属性 '{0}' 。",
"debugTypeNotSupported": "配置的类型“{0}”不受支持。",
"debugTypeMissing": "所选的启动配置缺少属性 \"type\"。",
"preLaunchTaskErrors": "preLaunchTask“{0}”期间检测到多个生成错误。",
@@ -8,5 +8,5 @@
"replVariableAriaLabel": "变量 {0} 具有值 {1}、读取 Eval 打印循环,调试",
"replExpressionAriaLabel": "表达式 {0} 具有值 {1},读取 Eval 打印循环,调试",
"replValueOutputAriaLabel": "{0},读取 Eval 打印循环,调试",
"replKeyValueOutputAriaLabel": "输出变量 {0} 具有值 {1},读取 Eval 打印循环,调试"
"replRawObjectAriaLabel": "Repl(交互式解释器)变量 {0} 具有值 {1},读取 求值 输出 循环,调试"
}
@@ -44,7 +44,7 @@
"showOutdatedExtensions": "显示过时扩展",
"showPopularExtensions": "显示常用的扩展",
"showRecommendedExtensions": "显示推荐的扩展",
"showWorkspaceRecommendedExtensions": "显示工作区建议的扩展",
"showWorkspaceRecommendedExtensions": "显示根据工作区推荐的扩展",
"showRecommendedKeymapExtensions": "显示推荐键映射",
"showRecommendedKeymapExtensionsShort": "键映射",
"showLanguageExtensions": "显示语言扩展",
@@ -23,6 +23,7 @@
"confirmMoveTrashMessageFile": "是否确实要删除“{0}”?",
"undoBin": "可以从回收站还原。",
"undoTrash": "可以从回收站还原。",
"doNotAskAgain": "不再询问",
"confirmDeleteMessageFolder": "是否确定要永久删除“{0}”及其内容?",
"confirmDeleteMessageFile": "是否确定要永久删除“{0}”?",
"irreversible": "此操作不可逆!",
@@ -37,8 +38,6 @@
"openToSide": "打开到侧边",
"compareSource": "选择以进行比较",
"globalCompareFile": "比较活动文件与...",
"pickHistory": "选择要进行比较的之前已打开的文件",
"unableToFileToCompare": "无法将所选文件与“{0}”进行比较。",
"openFileToCompare": "首先打开文件以将其与另外一个文件比较。",
"compareWith": "将“{0}”与“{1}”比较",
"compareFiles": "比较文件",
@@ -47,7 +46,7 @@
"saveAs": "另存为...",
"saveAll": "全部保存",
"saveAllInGroup": "保存组中的全部内容",
"saveFiles": "保存已更新文件",
"saveFiles": "保存所有文件",
"revert": "还原文件",
"focusOpenEditors": "专注于“打开的编辑器”视图",
"focusFilesExplorer": "关注文件资源浏览器",
@@ -40,10 +40,14 @@
"dynamicHeight": "控制打开的编辑器部分的高度是否应动态适应元素数量。",
"autoReveal": "控制资源管理器是否应在打开文件时自动显示并选择它们。",
"enableDragAndDrop": "控制资源管理器是否应该允许通过拖放移动文件和文件夹。",
"confirmDragAndDrop": "控制资源管理器是否应在拖拽移动文件或文件夹时进行确认。",
"confirmDelete": "控制资源管理器是否应在删除文件到回收站时进行确认。",
"sortOrder.default": "按名称的字母顺序排列文件和文件夹。文件夹显示在文件前。",
"sortOrder.mixed": "按名称的字母顺序排列文件和文件夹。两者穿插显示。",
"sortOrder.filesFirst": "按名称的字母顺序排列文件和文件夹。文件显示在文件夹前。",
"sortOrder.type": "按扩展名的字母顺序排列文件和文件夹。文件夹显示在文件前。",
"sortOrder.modified": "按最后修改日期降序排列文件和文件夹。文件夹显示在文件前。",
"sortOrder": "控制资源管理器文件和文件夹的排列顺序。除了默认排列顺序,你也可以设置为 \"mixed\" (文件和文件夹一起排序)、\"type\" (按文件类型排)、\"modified\" (按最后修改日期排)或是 \"filesFirst\" (将文件排在文件夹前)。"
"sortOrder": "控制资源管理器文件和文件夹的排列顺序。除了默认排列顺序,你也可以设置为 \"mixed\" (文件和文件夹一起排序)、\"type\" (按文件类型排)、\"modified\" (按最后修改日期排)或是 \"filesFirst\" (将文件排在文件夹前)。",
"explorer.decorations.colors": "控制文件修饰是否用颜色。",
"explorer.decorations.badges": "控制文件修饰是否用徽章。"
}
@@ -6,6 +6,8 @@
{
"noWorkspace": "无打开的文件夹",
"explorerSection": "文件资源管理器部分",
"noWorkspaceHelp": "尚未打开文件夹。",
"noWorkspaceHelp": "你还没有在工作区中添加文件夹。",
"addFolder": "添加文件夹",
"noFolderHelp": "尚未打开文件夹。",
"openFolder": "打开文件夹"
}
@@ -4,12 +4,15 @@
*--------------------------------------------------------------------------------------------*/
// Do not edit this file. It is machine generated.
{
"canNotResolve": "无法解析文件夹 {0}",
"fileInputAriaLabel": "键入文件名。按 Enter 以确认或按 Esc 以取消。",
"filesExplorerViewerAriaLabel": "{0},文件资源管理器",
"dropFolders": "你是否要将文件夹添加到工作区?",
"dropFolder": "你是否要将文件夹添加到工作区?",
"addFolders": "添加文件夹(&&A)",
"addFolder": "添加文件夹(&&A)",
"confirmMove": "是否确实要移动“{0}”?",
"doNotAskAgain": "不再询问",
"confirmOverwriteMessage": "目标文件夹中已存在“{0}”。是否要将其替换?",
"irreversible": "此操作不可逆!",
"replaceButtonLabel": "替换(&&R)"
@@ -0,0 +1,11 @@
/*---------------------------------------------------------------------------------------------
* Copyright (c) Microsoft Corporation. All rights reserved.
* Licensed under the MIT License. See License.txt in the project root for license information.
*--------------------------------------------------------------------------------------------*/
// Do not edit this file. It is machine generated.
{
"label": "问题",
"tooltip.1": "此文件存在 1 个问题",
"tooltip.N": "此文件存在 {0} 个问题",
"markers.showOnFile": "显示关于文件与文件夹的错误与警告。"
}
@@ -5,7 +5,6 @@
// Do not edit this file. It is machine generated.
{
"emptyUserSettingsHeader": "将设置放入此处以覆盖\"默认设置\"。",
"errorInvalidConfiguration": "无法写入设置。请更正文件中的错误/警告,然后重试。",
"emptyWorkspaceSettingsHeader": "将设置放入此处以覆盖\"用户设置\"。",
"emptyFolderSettingsHeader": "将文件夹设置放入此处以覆盖\"工作区设置\"。",
"defaultFolderSettingsTitle": "默认文件夹设置",
@@ -13,7 +13,6 @@
"actionNotEnabled": "在当前上下文中没有启用命令“{0}”。",
"recentlyUsed": "最近使用",
"morecCommands": "其他命令",
"commandLabel": "{0}: {1}",
"cat.title": "{0}: {1}",
"noCommandsMatching": "没有匹配的命令"
}
@@ -4,6 +4,10 @@
*--------------------------------------------------------------------------------------------*/
// Do not edit this file. It is machine generated.
{
"changes": "第 {0} 个更改 (共 {1} 个)",
"change": "第 {0} 个更改 (共 {1} 个)",
"show previous change": "显示上一个更改",
"show next change": "显示下一个更改",
"editorGutterModifiedBackground": "编辑器导航线中被修改行的背景颜色。",
"editorGutterAddedBackground": "编辑器导航线中已插入行的背景颜色。",
"editorGutterDeletedBackground": "编辑器导航线中被删除行的背景颜色。",
@@ -17,7 +17,7 @@
"exclude": "配置 glob 模式以在搜索中排除文件和文件夹。从 files.exclude 设置中继承所有 glob 模式。",
"exclude.boolean": "匹配文件路径所依据的 glob 模式。设置为 true 或 false 可启用或禁用该模式。",
"exclude.when": "对匹配文件的同级文件的其他检查。使用 $(basename) 作为匹配文件名的变量。",
"useRipgrep": "控制是否在文本搜索中使用 ripgrep",
"useRipgrep": "控制是否在文本和文件搜索中使用 ripgrep",
"useIgnoreFilesByDefault": "控制在新工作区中搜索时是否默认使用 .gitignore 和 .ignore 文件。",
"search.quickOpen.includeSymbols": "配置为在 Quick Open 文件结果中包括全局符号搜索的结果。"
}
@@ -19,7 +19,6 @@
"ClearSearchResultsAction.label": "清除搜索结果",
"FocusNextSearchResult.label": "聚焦下一搜索结果",
"FocusPreviousSearchResult.label": "聚焦上一搜索结果",
"RemoveAction.label": "删除",
"file.replaceAll.label": "全部替换",
"match.replace.label": "替换"
}
@@ -10,8 +10,8 @@
"vscode.extension.contributes.snippets": "添加代码段。",
"vscode.extension.contributes.snippets-language": "此代码片段参与的语言标识符。",
"vscode.extension.contributes.snippets-path": "代码片段文件的路径。该路径相对于扩展文件夹,通常以 \"./snippets/\" 开头。",
"badFile": "无法读取代码片段文件“{0}”。",
"badVariableUse": "“{0}”代码片段很可能混淆了片段变量和片段占位符。有关详细信息,请访问 https://code.visualstudio.com/docs/editor/userdefinedsnippets#_snippet-syntax。",
"badFile": "无法读取代码片段文件“{0}”。",
"source.snippet": "用户代码片段",
"detail.snippet": "{0} ({1})",
"snippetSuggest.longLabel": "{0}{1}"
@@ -14,6 +14,7 @@
"runningTasks": "显示运行中的任务",
"tasks": "任务",
"TaskSystem.noHotSwap": "在有活动任务运行时更换任务执行引擎需要重新加载窗口",
"TaskServer.folderIgnored": "由于使用任务版本 0.1.0,文件夹 {0} 将被忽略",
"TaskService.noBuildTask1": "未定义任何生成任务。使用 \"isBuildCommand\" 在 tasks.json 文件中标记任务。",
"TaskService.noBuildTask2": "未定义任何生成任务。在 tasks.json 文件中将任务标记为 \"build\" 组。",
"TaskService.noTestTask1": "未定义任何测试任务。使用 \"isTestCommand\" 在 tasks.json 文件中标记任务。",
@@ -30,6 +31,7 @@
"TaskSystem.activeSame.noBackground": "任务 \"{0}\" 已处于活动状态。若要终止任务,请选择“任务”菜单中的“终止任务...”。",
"TaskSystem.active": "当前已有任务正在运行。请先终止它,然后再执行另一项任务。",
"TaskSystem.restartFailed": "未能终止并重启任务 {0}",
"TaskService.noConfiguration": "错误: {0} 任务检测没有提供拥有下列配置的任务:\n{1}\n将忽略此任务。",
"TaskSystem.configurationErrors": "错误: 提供的任务配置具有验证错误,无法使用。请首先改正错误。",
"taskService.ignoreingFolder": "将忽略工作区文件夹 {0} 的任务配置。多文件夹工作区任务支持要求所有文件夹使用任务版本 2.0.0\n",
"TaskSystem.invalidTaskJson": "错误: tasks.json 文件的内容具有语法错误。请先更正错误然后再执行任务。\n",
@@ -17,6 +17,7 @@
"terminal.integrated.fontFamily": "控制终端的字体系列,这在编辑器中是默认的。fontFamily 的值。",
"terminal.integrated.fontSize": "控制终端的字号(以像素为单位)。",
"terminal.integrated.lineHeight": "控制终端的行高,此数字乘以终端字号得到实际行高(以像素表示)。",
"terminal.integrated.enableBold": "是否在终端内启用粗体文本,注意这需要终端命令行的支持。",
"terminal.integrated.cursorBlinking": "控制终端光标是否闪烁。",
"terminal.integrated.cursorStyle": "控制终端游标的样式。",
"terminal.integrated.scrollback": "控制终端保持在缓冲区的最大行数。",
@@ -16,7 +16,6 @@
"workbench.action.terminal.new.short": "新的终端",
"workbench.action.terminal.focus": "聚焦于终端",
"workbench.action.terminal.focusNext": "聚焦于下一终端",
"workbench.action.terminal.focusAtIndex": "焦点终端 {0}",
"workbench.action.terminal.focusPrevious": "聚焦于上一终端",
"workbench.action.terminal.paste": "粘贴到活动终端中",
"workbench.action.terminal.DefaultShell": "选择默认 Shell",
@@ -6,5 +6,5 @@
{
"terminalLinkHandler.followLinkAlt": "Alt + 单击以访问链接",
"terminalLinkHandler.followLinkCmd": "Cmd + 单击以跟踪链接",
"terminalLinkHandler.followLinkCtrl": "Ctrl + 单击以跟踪链接"
"terminalLinkHandler.followLinkCtrl": "按住 Ctrl 并单击可访问链接"
}
@@ -5,7 +5,6 @@
// Do not edit this file. It is machine generated.
{
"copy": "复制",
"createNewTerminal": "新的终端",
"paste": "粘贴",
"selectAll": "全选",
"clear": "清除"
@@ -10,6 +10,5 @@
"never again": "好,永不再显示",
"terminal.integrated.chooseWindowsShell": "选择首选的终端 shell,你可稍后在设置中进行更改",
"terminalService.terminalCloseConfirmationSingular": "存在一个活动的终端会话,是否要终止此会话?",
"terminalService.terminalCloseConfirmationPlural": "存在 {0} 个活动的终端会话,是否要终止这些会话?",
"yes": "是"
"terminalService.terminalCloseConfirmationPlural": "存在 {0} 个活动的终端会话,是否要终止这些会话?"
}
@@ -0,0 +1,24 @@
/*---------------------------------------------------------------------------------------------
* Copyright (c) Microsoft Corporation. All rights reserved.
* Licensed under the MIT License. See License.txt in the project root for license information.
*--------------------------------------------------------------------------------------------*/
// Do not edit this file. It is machine generated.
{
"vscode.extension.contributes.configuration.title": "设置摘要。此标签将在设置文件中用作分隔注释。",
"vscode.extension.contributes.configuration.properties": "配置属性的描述。",
"scope.window.description": "特定于窗口的配置,可在“用户”或“工作区”设置中配置。",
"scope.resource.description": "特定于资源的配置,可在“用户”、“工作区”或“文件夹”设置中配置。",
"scope.description": "配置适用的范围。可用范围有“窗口”和“资源”。",
"vscode.extension.contributes.configuration": "用于配置字符串。",
"invalid.title": "configuration.title 必须是字符串",
"vscode.extension.contributes.defaultConfiguration": "按语言提供默认编辑器配置设置。",
"invalid.properties": "configuration.properties 必须是对象",
"invalid.allOf": "\"configuration.allOf\" 已被弃用且不应被使用。你可以将多个配置单元作为数组传递给 \"configuration\" 参与点。",
"workspaceConfig.folders.description": "将载入到工作区的文件夹列表。",
"workspaceConfig.path.description": "文件路径。例如 \"/root/folderA\" 或 \"./folderA\"。后者表示根据工作区文件位置进行解析的相对路径。",
"workspaceConfig.name.description": "文件夹的可选名称。",
"workspaceConfig.uri.description": "文件夹的 URI",
"workspaceConfig.settings.description": "工作区设置",
"workspaceConfig.extensions.description": "工作区扩展",
"unknownWorkspaceProperty": "未知的工作区配置属性"
}
@@ -0,0 +1,8 @@
/*---------------------------------------------------------------------------------------------
* Copyright (c) Microsoft Corporation. All rights reserved.
* Licensed under the MIT License. See License.txt in the project root for license information.
*--------------------------------------------------------------------------------------------*/
// Do not edit this file. It is machine generated.
{
"compareLabels": "{0} ↔ {1}"
}
@@ -6,6 +6,7 @@
{
"schema.token.settings": "标记的颜色和样式。",
"schema.token.foreground": "标记的前景色。",
"schema.token.background.warning": "暂不支持标记背景色。",
"schema.token.fontStyle": "规则字体样式:“斜体”、“粗体”和“下划线”中的一种或者组合",
"schema.fontStyle.error": "字体样式必须为 \"italic\"(斜体)、 \"bold\"(粗体)和 \"underline\"(下划线)的组合。",
"schema.properties.name": "规则的描述。",
@@ -33,5 +33,6 @@
"schema.fontSize": "使用某种字体时: 文本字体的字体大小(以百分比表示)。如果未设置,则默认为字体定义中的大小。",
"schema.fontId": "使用某种字体时: 字体的 ID。如果未设置,则默认为第一个字体定义。",
"schema.light": "浅色主题中文件图标的可选关联。",
"schema.highContrast": "高对比度颜色主题中文件图标的可选关联。"
"schema.highContrast": "高对比度颜色主题中文件图标的可选关联。",
"schema.hidesExplorerArrows": "配置文件资源管理器的箭头是否应在此主题启用时隐藏。"
}
@@ -0,0 +1,15 @@
/*---------------------------------------------------------------------------------------------
* Copyright (c) Microsoft Corporation. All rights reserved.
* Licensed under the MIT License. See License.txt in the project root for license information.
*--------------------------------------------------------------------------------------------*/
// Do not edit this file. It is machine generated.
{
"vscode.extension.contributes.themes": "请提供 TextMate 颜色主题。",
"vscode.extension.contributes.themes.id": "用户设置中使用的图标主题的 ID。",
"vscode.extension.contributes.themes.label": "显示在 UI 中的颜色主题标签。",
"vscode.extension.contributes.themes.uiTheme": "用于定义编辑器周围颜色的基本主题: \"vs\" 是浅色主题,\"vs-dark\" 是深色主题。\"hc-black\" 是深色高对比度主题。",
"vscode.extension.contributes.themes.path": "tmTheme 文件的路径。该路径相对于扩展文件夹,通常为 \"./themes/themeFile.tmTheme\"。",
"reqarray": "扩展点“{0}”必须是一个数组。",
"reqpath": "“contributes.{0}.path”中应为字符串。提供的值: {1}",
"invalid.path.1": "“contributes.{0}.path”({1})应包含在扩展的文件夹({2})内。这可能会使扩展不可移植。"
}
@@ -0,0 +1,8 @@
/*---------------------------------------------------------------------------------------------
* Copyright (c) Microsoft Corporation. All rights reserved.
* Licensed under the MIT License. See License.txt in the project root for license information.
*--------------------------------------------------------------------------------------------*/
// Do not edit this file. It is machine generated.
{
"error.cannotparseicontheme": "分析文件图标文件时出现问题: {0}"
}
@@ -0,0 +1,15 @@
/*---------------------------------------------------------------------------------------------
* Copyright (c) Microsoft Corporation. All rights reserved.
* Licensed under the MIT License. See License.txt in the project root for license information.
*--------------------------------------------------------------------------------------------*/
// Do not edit this file. It is machine generated.
{
"vscode.extension.contributes.iconThemes": "提供文件图标主题。",
"vscode.extension.contributes.iconThemes.id": "用户设置中使用的图标主题的 ID。",
"vscode.extension.contributes.iconThemes.label": "UI 中显示的图标主题的标签。",
"vscode.extension.contributes.iconThemes.path": "图标主题定义文件的路径。该路径相对于扩展文件夹,通常是 \"./icons/awesome-icon-theme.json\"。",
"reqarray": "扩展点“{0}”必须是一个数组。",
"reqpath": "“contributes.{0}.path”中应为字符串。提供的值: {1}",
"reqid": "contributes.{0}.id\" 中的预期字符串。提供的值: {1}",
"invalid.path.1": "“contributes.{0}.path”({1})应包含在扩展的文件夹({2})内。这可能会使扩展不可移植。"
}
@@ -4,31 +4,15 @@
*--------------------------------------------------------------------------------------------*/
// Do not edit this file. It is machine generated.
{
"vscode.extension.contributes.themes": "Contributes textmate color themes.",
"vscode.extension.contributes.themes.id": "用户设置中使用的图标主题的 ID。",
"vscode.extension.contributes.themes.label": "显示在 UI 中的颜色主题标签。",
"vscode.extension.contributes.themes.uiTheme": "用于定义编辑器周围颜色的基本主题: \"vs\" 是浅色主题,\"vs-dark\" 是深色主题。\"hc-black\" 是深色高对比度主题。",
"vscode.extension.contributes.themes.path": "tmTheme 文件的路径。该路径相对于扩展文件夹,通常为 \"./themes/themeFile.tmTheme\"。",
"vscode.extension.contributes.iconThemes": "Contributes file icon themes.",
"vscode.extension.contributes.iconThemes.id": "用户设置中使用的图标主题的 ID。",
"vscode.extension.contributes.iconThemes.label": "UI 中显示的图标主题的标签。",
"vscode.extension.contributes.iconThemes.path": "图标主题定义文件的路径。该路径相对于扩展文件夹,通常是 \"./icons/awesome-icon-theme.json\"。",
"migration.completed": "已向用户设置添加了新的主题设置。{0} 中可备份。",
"error.cannotloadtheme": "无法加载 {0}: {1}",
"reqarray": "扩展点“{0}”必须是一个数组。",
"reqpath": "“contributes.{0}.path”中应为字符串。提供的值: {1}",
"invalid.path.1": "“contributes.{0}.path”({1})应包含在扩展的文件夹({2})内。这可能会使扩展不可移植。",
"reqid": "“contributes.{0}.id”中应为字符串。提供的值: {1}",
"error.cannotloadicontheme": "Unable to load {0}",
"error.cannotparseicontheme": "Problems parsing file icons file: {0}",
"colorTheme": "指定工作台中使用的颜色主题。",
"colorThemeError": "主题未知或未安装。",
"iconTheme": "指定在工作台中使用的图标主题,或指定 \"null\" 以不显示任何文件图标。",
"noIconThemeDesc": "No file icons",
"iconThemeError": "文件图标主题未知或未安装。",
"workbenchColors": "覆盖当前所选颜色主题的颜色。",
"workbenchColors.deprecated": "该设置不再是实验性设置,并已重命名为“workbench.colorCustomizations”",
"workbenchColors.deprecatedDescription": "改用“workbench.colorCustomizations”",
"editorColors": "覆盖当前所选颜色主题中的编辑器颜色和字体样式。",
"editorColors.comments": "设置注释的颜色和样式",
"editorColors.strings": "设置字符串文本的颜色和样式",

Some files were not shown because too many files have changed in this diff Show More