mirror of
https://github.com/microsoft/vscode.git
synced 2026-10-10 12:42:25 +01:00
Merge branch 'master' into dirtydiff
This commit is contained in:
commit
a92ff5dffa
477 files changed
+15283
-8514
No files matched your search
@@ -7,7 +7,7 @@
|
||||
api: [],
|
||||
css-less-sass: [],
|
||||
debug: [ isidorn ],
|
||||
editor: [ alexandrudima ],
|
||||
editor: [],
|
||||
editor-brackets: [],
|
||||
editor-clipboard: [ rebornix ],
|
||||
editor-colors: [],
|
||||
@@ -39,7 +39,7 @@
|
||||
php: [ roblourens ],
|
||||
search: [ roblourens ],
|
||||
snippets: [ jrieken ],
|
||||
tasks: [],
|
||||
tasks: [ dbaeumer ],
|
||||
typescript: [ mjbvz ],
|
||||
workbench: [ bpasero, isidorn, sandy081]
|
||||
}
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
{
|
||||
newReleaseLabel: 'new release',
|
||||
newReleases: ['1.16'],
|
||||
newReleases: ['1.17'],
|
||||
perform: false
|
||||
}
|
||||
@@ -94,6 +94,7 @@ const copyrightFilter = [
|
||||
'!**/*.opts',
|
||||
'!**/*.disabled',
|
||||
'!build/**/*.init',
|
||||
'!resources/linux/snap/snapcraft.yaml',
|
||||
'!resources/win32/bin/code.js',
|
||||
'!extensions/markdown/media/tomorrow.css',
|
||||
'!extensions/html/server/src/modes/typescript/*'
|
||||
|
||||
@@ -45,8 +45,8 @@ const nodeModules = ['electron', 'original-fs']
|
||||
// Build
|
||||
|
||||
const builtInExtensions = [
|
||||
{ name: 'ms-vscode.node-debug', version: '1.17.17' },
|
||||
{ name: 'ms-vscode.node-debug2', version: '1.17.5' }
|
||||
{ name: 'ms-vscode.node-debug', version: '1.17.18' },
|
||||
{ name: 'ms-vscode.node-debug2', version: '1.18.1' }
|
||||
];
|
||||
|
||||
const excludedExtensions = [
|
||||
@@ -449,6 +449,12 @@ gulp.task('upload-vscode-sourcemaps', ['minify-vscode'], () => {
|
||||
|
||||
const allConfigDetailsPath = path.join(os.tmpdir(), 'configuration.json');
|
||||
gulp.task('upload-vscode-configuration', ['generate-vscode-configuration'], () => {
|
||||
const branch = process.env.BUILD_SOURCEBRANCH;
|
||||
if (!branch.endsWith('/master') && !branch.indexOf('/release/') >= 0) {
|
||||
console.log(`Only runs on master and release branches, not ${branch}`);
|
||||
return;
|
||||
}
|
||||
|
||||
if (!fs.existsSync(allConfigDetailsPath)) {
|
||||
console.error(`configuration file at ${allConfigDetailsPath} does not exist`);
|
||||
return;
|
||||
|
||||
@@ -13,10 +13,10 @@
|
||||
"url": "https://github.com/Microsoft/vscode/issues"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@types/minimist": "^1.2.0",
|
||||
"@types/mocha": "^2.2.39",
|
||||
"@types/semver": "^5.3.30",
|
||||
"@types/sinon": "^1.16.34",
|
||||
"@types/minimist": "1.2.0",
|
||||
"@types/mocha": "2.2.39",
|
||||
"@types/semver": "5.3.30",
|
||||
"@types/sinon": "1.16.34",
|
||||
"debounce": "^1.0.0",
|
||||
"eslint": "^3.4.0",
|
||||
"event-stream": "^3.1.7",
|
||||
|
||||
+6
-6
@@ -2,13 +2,13 @@
|
||||
"name": "code-oss-dev-build",
|
||||
"version": "1.0.0",
|
||||
"devDependencies": {
|
||||
"@types/azure": "^0.9.18",
|
||||
"@types/documentdb": "^1.10.1",
|
||||
"@types/es6-collections": "^0.5.30",
|
||||
"@types/es6-promise": "0.0.32",
|
||||
"@types/azure": "0.9.19",
|
||||
"@types/documentdb": "1.10.2",
|
||||
"@types/es6-collections": "0.5.31",
|
||||
"@types/es6-promise": "0.0.33",
|
||||
"@types/mime": "0.0.29",
|
||||
"@types/node": "^7.0.13",
|
||||
"@types/xml2js": "^0.0.33",
|
||||
"@types/node": "8.0.33",
|
||||
"@types/xml2js": "0.0.33",
|
||||
"azure-storage": "^2.1.0",
|
||||
"documentdb": "^1.11.0",
|
||||
"mime": "^1.3.4",
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
#!/usr/bin/env bash
|
||||
#!/bin/bash
|
||||
set -e
|
||||
|
||||
# set agent specific npm cache
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
#!/usr/bin/env bash
|
||||
#!/bin/bash
|
||||
set -e
|
||||
|
||||
# setup nvm
|
||||
|
||||
@@ -1,3 +1,3 @@
|
||||
#!/usr/bin/env bash
|
||||
#!/bin/bash
|
||||
set -e
|
||||
./build/tfs/linux/build.sh ia32 "$@"
|
||||
@@ -1,3 +1,3 @@
|
||||
#!/usr/bin/env bash
|
||||
#!/bin/bash
|
||||
set -e
|
||||
./build/tfs/linux/build.sh x64 "$@"
|
||||
@@ -1,4 +1,4 @@
|
||||
#!/usr/bin/env bash
|
||||
#!/bin/bash
|
||||
|
||||
. ./build/tfs/common/node.sh
|
||||
. ./scripts/env.sh
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
#!/usr/bin/env bash
|
||||
#!/bin/bash
|
||||
|
||||
if [ ! -f pat ]; then
|
||||
echo "Error: file pat not found"
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
#!/usr/bin/env bash
|
||||
#!/bin/bash
|
||||
#
|
||||
# /etc/rc.d/init.d/xvfbd
|
||||
#
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
#!/usr/bin/env bash
|
||||
#!/bin/bash
|
||||
|
||||
. ./scripts/env.sh
|
||||
. ./build/tfs/common/common.sh
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
#!/usr/bin/env bash
|
||||
#!/bin/bash
|
||||
set -e
|
||||
|
||||
. ./build/tfs/common/node.sh
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
#!/usr/bin/env bash
|
||||
#!/bin/bash
|
||||
|
||||
if [ ! -f pat ]; then
|
||||
echo "Error: file pat not found"
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
#!/usr/bin/env bash
|
||||
#!/bin/bash
|
||||
#
|
||||
# /etc/rc.d/init.d/xvfbd
|
||||
#
|
||||
|
||||
@@ -43,9 +43,9 @@ export class SettingsDocument {
|
||||
private provideWindowTitleCompletionItems(location: Location, range: vscode.Range): vscode.ProviderResult<vscode.CompletionItem[]> {
|
||||
const completions: vscode.CompletionItem[] = [];
|
||||
|
||||
completions.push(this.newSimpleCompletionItem('${activeEditorShort}', range, localize('activeEditorShort', "e.g. the file name (myFile.txt)")));
|
||||
completions.push(this.newSimpleCompletionItem('${activeEditorMedium}', range, localize('activeEditorMedium', "e.g. the path of the file relative to the workspace folder (myFolder/myFile.txt)")));
|
||||
completions.push(this.newSimpleCompletionItem('${activeEditorLong}', range, localize('activeEditorLong', "e.g. the full path of the file (/Users/Development/myProject/myFolder/myFile.txt)")));
|
||||
completions.push(this.newSimpleCompletionItem('${activeEditorShort}', range, localize('activeEditorShort', "the file name (e.g. myFile.txt)")));
|
||||
completions.push(this.newSimpleCompletionItem('${activeEditorMedium}', range, localize('activeEditorMedium', "the path of the file relative to the workspace folder (e.g. myFolder/myFile.txt)")));
|
||||
completions.push(this.newSimpleCompletionItem('${activeEditorLong}', range, localize('activeEditorLong', "the full path of the file (e.g. /Users/Development/myProject/myFolder/myFile.txt)")));
|
||||
completions.push(this.newSimpleCompletionItem('${rootName}', range, localize('rootName', "name of the workspace (e.g. myFolder or myWorkspace)")));
|
||||
completions.push(this.newSimpleCompletionItem('${rootPath}', range, localize('rootPath', "file path of the workspace (e.g. /Users/Development/myWorkspace)")));
|
||||
completions.push(this.newSimpleCompletionItem('${folderName}', range, localize('folderName', "name of the workspace folder the file is contained in (e.g. myFolder)")));
|
||||
|
||||
@@ -780,7 +780,7 @@
|
||||
},
|
||||
"patterns": [
|
||||
{
|
||||
"begin": "\\G",
|
||||
"begin": "\\G(?=.)(?!//|/\\*(?!.*\\\\\\s*\\n))",
|
||||
"end": "(?=//)|(?=/\\*(?!.*\\\\\\s*\\n))|(?<!\\\\)(?=\\n)",
|
||||
"name": "meta.preprocessor.c",
|
||||
"patterns": [
|
||||
@@ -860,7 +860,7 @@
|
||||
},
|
||||
"patterns": [
|
||||
{
|
||||
"begin": "\\G",
|
||||
"begin": "\\G(?=.)(?!//|/\\*(?!.*\\\\\\s*\\n))",
|
||||
"end": "(?=//)|(?=/\\*(?!.*\\\\\\s*\\n))|(?<!\\\\)(?=\\n)",
|
||||
"name": "meta.preprocessor.c",
|
||||
"patterns": [
|
||||
@@ -1013,7 +1013,7 @@
|
||||
},
|
||||
"patterns": [
|
||||
{
|
||||
"begin": "\\G",
|
||||
"begin": "\\G(?=.)(?!//|/\\*(?!.*\\\\\\s*\\n))",
|
||||
"end": "(?=//)|(?=/\\*(?!.*\\\\\\s*\\n))|(?=\\n)",
|
||||
"name": "meta.preprocessor.c",
|
||||
"patterns": [
|
||||
@@ -1050,7 +1050,7 @@
|
||||
"end": "(?=^\\s*((#)\\s*(?:elif|else|endif)\\b))",
|
||||
"patterns": [
|
||||
{
|
||||
"begin": "\\G",
|
||||
"begin": "\\G(?=.)(?!//|/\\*(?!.*\\\\\\s*\\n))",
|
||||
"end": "(?=//)|(?=/\\*(?!.*\\\\\\s*\\n))|(?<!\\\\)(?=\\n)",
|
||||
"name": "meta.preprocessor.c",
|
||||
"patterns": [
|
||||
@@ -1110,7 +1110,7 @@
|
||||
},
|
||||
"patterns": [
|
||||
{
|
||||
"begin": "\\G",
|
||||
"begin": "\\G(?=.)(?!//|/\\*(?!.*\\\\\\s*\\n))",
|
||||
"end": "(?=//)|(?=/\\*(?!.*\\\\\\s*\\n))|(?=\\n)",
|
||||
"name": "meta.preprocessor.c",
|
||||
"patterns": [
|
||||
@@ -1147,7 +1147,7 @@
|
||||
"end": "(?=^\\s*((#)\\s*(?:elif|else|endif)\\b))",
|
||||
"patterns": [
|
||||
{
|
||||
"begin": "\\G",
|
||||
"begin": "\\G(?=.)(?!//|/\\*(?!.*\\\\\\s*\\n))",
|
||||
"end": "(?=//)|(?=/\\*(?!.*\\\\\\s*\\n))|(?<!\\\\)(?=\\n)",
|
||||
"name": "meta.preprocessor.c",
|
||||
"patterns": [
|
||||
@@ -1194,7 +1194,7 @@
|
||||
"end": "(?=^\\s*((#)\\s*(?:elif|else|endif)\\b))",
|
||||
"patterns": [
|
||||
{
|
||||
"begin": "\\G",
|
||||
"begin": "\\G(?=.)(?!//|/\\*(?!.*\\\\\\s*\\n))",
|
||||
"end": "(?=//)|(?=/\\*(?!.*\\\\\\s*\\n))|(?<!\\\\)(?=\\n)",
|
||||
"name": "meta.preprocessor.c",
|
||||
"patterns": [
|
||||
@@ -1253,7 +1253,7 @@
|
||||
},
|
||||
"patterns": [
|
||||
{
|
||||
"begin": "\\G",
|
||||
"begin": "\\G(?=.)(?!//|/\\*(?!.*\\\\\\s*\\n))",
|
||||
"end": "(?=//)|(?=/\\*(?!.*\\\\\\s*\\n))|(?=\\n)",
|
||||
"name": "meta.preprocessor.c",
|
||||
"patterns": [
|
||||
@@ -1355,7 +1355,7 @@
|
||||
},
|
||||
"patterns": [
|
||||
{
|
||||
"begin": "\\G",
|
||||
"begin": "\\G(?=.)(?!//|/\\*(?!.*\\\\\\s*\\n))",
|
||||
"end": "(?=//)|(?=/\\*(?!.*\\\\\\s*\\n))|(?=\\n)",
|
||||
"name": "meta.preprocessor.c",
|
||||
"patterns": [
|
||||
@@ -1444,7 +1444,7 @@
|
||||
"end": "(?=^\\s*((#)\\s*endif\\b))",
|
||||
"patterns": [
|
||||
{
|
||||
"begin": "\\G",
|
||||
"begin": "\\G(?=.)(?!//|/\\*(?!.*\\\\\\s*\\n))",
|
||||
"end": "(?=//)|(?=/\\*(?!.*\\\\\\s*\\n))|(?<!\\\\)(?=\\n)",
|
||||
"name": "meta.preprocessor.c",
|
||||
"patterns": [
|
||||
@@ -1531,7 +1531,7 @@
|
||||
"end": "(?=^\\s*((#)\\s*endif\\b))",
|
||||
"patterns": [
|
||||
{
|
||||
"begin": "\\G",
|
||||
"begin": "\\G(?=.)(?!//|/\\*(?!.*\\\\\\s*\\n))",
|
||||
"end": "(?=//)|(?=/\\*(?!.*\\\\\\s*\\n))|(?<!\\\\)(?=\\n)",
|
||||
"name": "meta.preprocessor.c",
|
||||
"patterns": [
|
||||
|
||||
@@ -100,24 +100,24 @@
|
||||
},
|
||||
{
|
||||
"c": "#",
|
||||
"t": "source.cpp meta.preprocessor.c",
|
||||
"t": "source.cpp meta.preprocessor.c keyword.control.directive.conditional.c punctuation.definition.directive.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"
|
||||
"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 entity.name.function.preprocessor.c",
|
||||
"t": "source.cpp meta.preprocessor.c keyword.control.directive.conditional.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"
|
||||
"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"
|
||||
}
|
||||
}
|
||||
]
|
||||
Generated
+3
-3
@@ -38,9 +38,9 @@
|
||||
"resolved": "https://registry.npmjs.org/image-size/-/image-size-0.5.5.tgz"
|
||||
},
|
||||
"vscode-emmet-helper": {
|
||||
"version": "1.1.13",
|
||||
"from": "vscode-emmet-helper@>=1.1.13 <2.0.0",
|
||||
"resolved": "https://registry.npmjs.org/vscode-emmet-helper/-/vscode-emmet-helper-1.1.13.tgz"
|
||||
"version": "1.1.14",
|
||||
"from": "vscode-emmet-helper@>=1.1.14 <2.0.0",
|
||||
"resolved": "https://registry.npmjs.org/vscode-emmet-helper/-/vscode-emmet-helper-1.1.14.tgz"
|
||||
},
|
||||
"vscode-languageserver-types": {
|
||||
"version": "3.3.0",
|
||||
|
||||
@@ -262,14 +262,14 @@
|
||||
"compile": "gulp compile-extension:emmet"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@types/node": "^7.0.4",
|
||||
"@types/node": "7.0.43",
|
||||
"vscode": "1.0.1"
|
||||
},
|
||||
"dependencies": {
|
||||
"@emmetio/html-matcher": "^0.3.1",
|
||||
"@emmetio/css-parser": "ramya-rao-a/css-parser#vscode",
|
||||
"@emmetio/math-expression": "^0.1.1",
|
||||
"vscode-emmet-helper": "^1.1.13",
|
||||
"vscode-emmet-helper": "^1.1.14",
|
||||
"vscode-languageserver-types": "^3.0.3",
|
||||
"image-size": "^0.5.2",
|
||||
"vscode-nls": "2.0.2"
|
||||
|
||||
@@ -24,8 +24,8 @@
|
||||
"folding": {
|
||||
"offSide": true,
|
||||
"markers": {
|
||||
"start": "^\\s*//#region",
|
||||
"end": "^\\s*//#endregion"
|
||||
"start": "^\\s*//\\s*#region|^\\s*\\(\\*\\s*#region(.*)\\*\\)",
|
||||
"end": "^\\s*//\\s*#endregion|^\\s*\\(\\*\\s*#endregion\\s*\\*\\)"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -803,7 +803,27 @@
|
||||
"default": false
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"colors": [
|
||||
{
|
||||
"id": "git.color.modified",
|
||||
"description": "Color for modified resources",
|
||||
"defaults": {
|
||||
"light": "#007BD0",
|
||||
"dark": "#1B80B2",
|
||||
"highContrast": "#1B80B2"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "git.color.untracked",
|
||||
"description": "Color for untracked resources",
|
||||
"defaults": {
|
||||
"light": "#6C6C6C",
|
||||
"dark": "#6C6C6C",
|
||||
"highContrast": "#6C6C6C"
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"dependencies": {
|
||||
"byline": "^5.0.0",
|
||||
@@ -816,4 +836,4 @@
|
||||
"@types/node": "7.0.43",
|
||||
"mocha": "^3.2.0"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -342,21 +342,35 @@ export class CommandCenter {
|
||||
|
||||
@command('git.init')
|
||||
async init(): Promise<void> {
|
||||
const value = workspace.workspaceFolders && workspace.workspaceFolders.length > 0
|
||||
? workspace.workspaceFolders[0].uri.fsPath
|
||||
: os.homedir();
|
||||
const homeUri = Uri.file(os.homedir());
|
||||
const defaultUri = workspace.workspaceFolders && workspace.workspaceFolders.length > 0
|
||||
? Uri.file(workspace.workspaceFolders[0].uri.fsPath)
|
||||
: homeUri;
|
||||
|
||||
const path = await window.showInputBox({
|
||||
placeHolder: localize('path to init', "Folder path"),
|
||||
prompt: localize('provide path', "Please provide a folder path to initialize a Git repository"),
|
||||
value,
|
||||
ignoreFocusOut: true
|
||||
const result = await window.showOpenDialog({
|
||||
canSelectFiles: false,
|
||||
canSelectFolders: true,
|
||||
canSelectMany: false,
|
||||
defaultUri,
|
||||
openLabel: localize('init repo', "Initialize Repository")
|
||||
});
|
||||
|
||||
if (!path) {
|
||||
if (!result || result.length === 0) {
|
||||
return;
|
||||
}
|
||||
|
||||
const uri = result[0];
|
||||
|
||||
if (homeUri.toString().startsWith(uri.toString())) {
|
||||
const yes = localize('create repo', "Initialize Repository");
|
||||
const answer = await window.showWarningMessage(localize('are you sure', "This will create a Git repository in '{0}'. Are you sure you want to continue?", uri.fsPath), yes);
|
||||
|
||||
if (answer !== yes) {
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
const path = uri.fsPath;
|
||||
await this.git.init(path);
|
||||
await this.model.tryOpenRepository(path);
|
||||
}
|
||||
|
||||
@@ -82,7 +82,7 @@ export class GitContentProvider {
|
||||
|
||||
const cacheKey = uri.toString();
|
||||
const timestamp = new Date().getTime();
|
||||
const cacheValue = { uri, timestamp };
|
||||
const cacheValue: CacheRow = { uri, timestamp };
|
||||
|
||||
this.cache[cacheKey] = cacheValue;
|
||||
|
||||
@@ -108,7 +108,10 @@ export class GitContentProvider {
|
||||
|
||||
Object.keys(this.cache).forEach(key => {
|
||||
const row = this.cache[key];
|
||||
const isOpen = window.visibleTextEditors.some(e => e.document.toString() === row.uri.toString());
|
||||
const { path } = fromGitUri(row.uri);
|
||||
const isOpen = workspace.textDocuments
|
||||
.filter(d => d.uri.scheme === 'file')
|
||||
.some(d => d.uri.fsPath === path);
|
||||
|
||||
if (isOpen || now - row.timestamp < THREE_MINUTES) {
|
||||
cache[row.uri.toString()] = row;
|
||||
|
||||
+18
-27
@@ -13,7 +13,6 @@ import { EventEmitter } from 'events';
|
||||
import iconv = require('iconv-lite');
|
||||
import { assign, uniqBy, groupBy, denodeify, IDisposable, toDisposable, dispose, mkdirp } from './util';
|
||||
|
||||
const readdir = denodeify<string[]>(fs.readdir);
|
||||
const readfile = denodeify<string>(fs.readFile);
|
||||
|
||||
export interface IGit {
|
||||
@@ -118,26 +117,11 @@ function findSystemGitWin32(base: string): Promise<IGit> {
|
||||
return findSpecificGit(path.join(base, 'Git', 'cmd', 'git.exe'));
|
||||
}
|
||||
|
||||
function findGitHubGitWin32(): Promise<IGit> {
|
||||
const github = path.join(process.env['LOCALAPPDATA'], 'GitHub');
|
||||
|
||||
return readdir(github).then(children => {
|
||||
const git = children.filter(child => /^PortableGit/.test(child))[0];
|
||||
|
||||
if (!git) {
|
||||
return Promise.reject<IGit>('Not found');
|
||||
}
|
||||
|
||||
return findSpecificGit(path.join(github, git, 'cmd', 'git.exe'));
|
||||
});
|
||||
}
|
||||
|
||||
function findGitWin32(): Promise<IGit> {
|
||||
return findSystemGitWin32(process.env['ProgramW6432'])
|
||||
.then(void 0, () => findSystemGitWin32(process.env['ProgramFiles(x86)']))
|
||||
.then(void 0, () => findSystemGitWin32(process.env['ProgramFiles']))
|
||||
.then(void 0, () => findSpecificGit('git'))
|
||||
.then(void 0, () => findGitHubGitWin32());
|
||||
.then(void 0, () => findSpecificGit('git'));
|
||||
}
|
||||
|
||||
export function findGit(hint: string | undefined): Promise<IGit> {
|
||||
@@ -174,7 +158,13 @@ function cpErrorHandler(cb: (reason?: any) => void): (reason?: any) => void {
|
||||
};
|
||||
}
|
||||
|
||||
async function exec(child: cp.ChildProcess, options: any = {}): Promise<IExecutionResult> {
|
||||
export interface SpawnOptions extends cp.SpawnOptions {
|
||||
input?: string;
|
||||
encoding?: string;
|
||||
log?: boolean;
|
||||
}
|
||||
|
||||
async function exec(child: cp.ChildProcess, options: SpawnOptions = {}): Promise<IExecutionResult> {
|
||||
if (!child.stdout || !child.stderr) {
|
||||
throw new GitError({
|
||||
message: 'Failed to get stdout or stderr from git process.'
|
||||
@@ -365,17 +355,17 @@ export class Git {
|
||||
return path.normalize(result.stdout.trim());
|
||||
}
|
||||
|
||||
async exec(cwd: string, args: string[], options: any = {}): Promise<IExecutionResult> {
|
||||
async exec(cwd: string, args: string[], options: SpawnOptions = {}): Promise<IExecutionResult> {
|
||||
options = assign({ cwd }, options || {});
|
||||
return await this._exec(args, options);
|
||||
}
|
||||
|
||||
stream(cwd: string, args: string[], options: any = {}): cp.ChildProcess {
|
||||
stream(cwd: string, args: string[], options: SpawnOptions = {}): cp.ChildProcess {
|
||||
options = assign({ cwd }, options || {});
|
||||
return this.spawn(args, options);
|
||||
}
|
||||
|
||||
private async _exec(args: string[], options: any = {}): Promise<IExecutionResult> {
|
||||
private async _exec(args: string[], options: SpawnOptions = {}): Promise<IExecutionResult> {
|
||||
const child = this.spawn(args, options);
|
||||
|
||||
if (options.input) {
|
||||
@@ -402,7 +392,7 @@ export class Git {
|
||||
return result;
|
||||
}
|
||||
|
||||
spawn(args: string[], options: any = {}): cp.ChildProcess {
|
||||
spawn(args: string[], options: SpawnOptions = {}): cp.ChildProcess {
|
||||
if (!this.gitPath) {
|
||||
throw new Error('git could not be found in the system.');
|
||||
}
|
||||
@@ -520,19 +510,19 @@ export class Repository {
|
||||
}
|
||||
|
||||
// TODO@Joao: rename to exec
|
||||
async run(args: string[], options: any = {}): Promise<IExecutionResult> {
|
||||
async run(args: string[], options: SpawnOptions = {}): Promise<IExecutionResult> {
|
||||
return await this.git.exec(this.repositoryRoot, args, options);
|
||||
}
|
||||
|
||||
stream(args: string[], options: any = {}): cp.ChildProcess {
|
||||
stream(args: string[], options: SpawnOptions = {}): cp.ChildProcess {
|
||||
return this.git.stream(this.repositoryRoot, args, options);
|
||||
}
|
||||
|
||||
spawn(args: string[], options: any = {}): cp.ChildProcess {
|
||||
spawn(args: string[], options: SpawnOptions = {}): cp.ChildProcess {
|
||||
return this.git.spawn(args, options);
|
||||
}
|
||||
|
||||
async config(scope: string, key: string, value: any, options: any): Promise<string> {
|
||||
async config(scope: string, key: string, value: any, options: SpawnOptions): Promise<string> {
|
||||
const args = ['config'];
|
||||
|
||||
if (scope) {
|
||||
@@ -898,7 +888,8 @@ export class Repository {
|
||||
getStatus(limit = 5000): Promise<{ status: IFileStatus[]; didHitLimit: boolean; }> {
|
||||
return new Promise<{ status: IFileStatus[]; didHitLimit: boolean; }>((c, e) => {
|
||||
const parser = new GitStatusParser();
|
||||
const child = this.stream(['status', '-z', '-u']);
|
||||
const env = { GIT_OPTIONAL_LOCKS: '0' };
|
||||
const child = this.stream(['status', '-z', '-u'], { env });
|
||||
|
||||
const onExit = exitCode => {
|
||||
if (exitCode !== 0) {
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
|
||||
'use strict';
|
||||
|
||||
import { Uri, Command, EventEmitter, Event, scm, SourceControl, SourceControlInputBox, SourceControlResourceGroup, SourceControlResourceState, SourceControlResourceDecorations, Disposable, ProgressLocation, window, workspace, WorkspaceEdit } from 'vscode';
|
||||
import { Uri, Command, EventEmitter, Event, scm, SourceControl, SourceControlInputBox, SourceControlResourceGroup, SourceControlResourceState, SourceControlResourceDecorations, Disposable, ProgressLocation, window, workspace, WorkspaceEdit, ThemeColor } from 'vscode';
|
||||
import { Repository as BaseRepository, Ref, Branch, Remote, Commit, GitErrorCodes, Stash, RefType } from './git';
|
||||
import { anyEvent, filterEvent, eventToPromise, dispose, find } from './util';
|
||||
import { memoize, throttle, debounce } from './decorators';
|
||||
@@ -170,14 +170,27 @@ export class Resource implements SourceControlResourceState {
|
||||
// return this.resourceUri.fsPath.substr(0, workspaceRootPath.length) !== workspaceRootPath;
|
||||
}
|
||||
|
||||
private get color(): ThemeColor | undefined {
|
||||
switch (this.type) {
|
||||
case Status.INDEX_MODIFIED:
|
||||
case Status.MODIFIED:
|
||||
return new ThemeColor('git.color.modified');
|
||||
case Status.UNTRACKED:
|
||||
return new ThemeColor('git.color.untracked');
|
||||
default:
|
||||
return undefined;
|
||||
}
|
||||
}
|
||||
|
||||
get decorations(): SourceControlResourceDecorations {
|
||||
const light = { iconPath: this.getIconPath('light') };
|
||||
const dark = { iconPath: this.getIconPath('dark') };
|
||||
const tooltip = this.tooltip;
|
||||
const strikeThrough = this.strikeThrough;
|
||||
const faded = this.faded;
|
||||
const color = this.color;
|
||||
|
||||
return { strikeThrough, faded, tooltip, light, dark };
|
||||
return { strikeThrough, faded, tooltip, light, dark, color };
|
||||
}
|
||||
|
||||
constructor(
|
||||
|
||||
@@ -132,6 +132,6 @@
|
||||
]
|
||||
},
|
||||
"devDependencies": {
|
||||
"@types/node": "^7.0.4"
|
||||
"@types/node": "8.0.33"
|
||||
}
|
||||
}
|
||||
@@ -22,6 +22,16 @@
|
||||
],
|
||||
"description": "For Loop"
|
||||
},
|
||||
"For Loop (let)": {
|
||||
"prefix": "forl",
|
||||
"body": [
|
||||
"for (let ${1:index} = 0; ${1:index} < ${2:array}.length; ${1:index}++) {",
|
||||
"\tlet ${3:element} = ${2:array}[${1:index}];",
|
||||
"\t$0",
|
||||
"}"
|
||||
],
|
||||
"description": "For Loop (let)"
|
||||
},
|
||||
"For-Each Loop": {
|
||||
"prefix": "foreach",
|
||||
"body": [
|
||||
@@ -43,6 +53,15 @@
|
||||
],
|
||||
"description": "For-In Loop"
|
||||
},
|
||||
"For-Of Loop": {
|
||||
"prefix": "forof",
|
||||
"body": [
|
||||
"for (let ${1:iterator} of ${2:object}) {",
|
||||
"\t$0",
|
||||
"}"
|
||||
],
|
||||
"description": "For-Of Loop"
|
||||
},
|
||||
"Function Statement": {
|
||||
"prefix": "function",
|
||||
"body": [
|
||||
|
||||
@@ -22,6 +22,16 @@
|
||||
],
|
||||
"description": "For Loop"
|
||||
},
|
||||
"For Loop (let)": {
|
||||
"prefix": "forl",
|
||||
"body": [
|
||||
"for (let ${1:index} = 0; ${1:index} < ${2:array}.length; ${1:index}++) {",
|
||||
"\tlet ${3:element} = ${2:array}[${1:index}];",
|
||||
"\t$0",
|
||||
"}"
|
||||
],
|
||||
"description": "For Loop (let)"
|
||||
},
|
||||
"For-Each Loop": {
|
||||
"prefix": "foreach",
|
||||
"body": [
|
||||
@@ -43,6 +53,15 @@
|
||||
],
|
||||
"description": "For-In Loop"
|
||||
},
|
||||
"For-Of Loop": {
|
||||
"prefix": "forof",
|
||||
"body": [
|
||||
"for (let ${1:iterator} of ${2:object}) {",
|
||||
"\t$0",
|
||||
"}"
|
||||
],
|
||||
"description": "For-Of Loop"
|
||||
},
|
||||
"Function Statement": {
|
||||
"prefix": "function",
|
||||
"body": [
|
||||
|
||||
File diff suppressed because it is too large.
Load diff
File diff suppressed because it is too large.
Load diff
File diff suppressed because it is too large.
Load diff
@@ -299,9 +299,9 @@
|
||||
"vscode-nls": "2.0.2"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@types/highlight.js": "^9.1.9",
|
||||
"@types/highlight.js": "9.1.10",
|
||||
"@types/markdown-it": "0.0.2",
|
||||
"@types/node": "^7.0.4",
|
||||
"@types/node": "8.0.33",
|
||||
"gulp-rename": "^1.2.2",
|
||||
"gulp-replace": "^0.5.4"
|
||||
}
|
||||
|
||||
@@ -88,6 +88,6 @@
|
||||
"vscode-nls": "^2.0.2"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@types/node": "^7.0.4"
|
||||
"@types/node": "8.0.33"
|
||||
}
|
||||
}
|
||||
@@ -89,7 +89,7 @@
|
||||
},
|
||||
{
|
||||
"c": "foreach",
|
||||
"t": "text.html.php meta.embedded.block.html source.js meta.embedded.block.php source.php keyword.control.php",
|
||||
"t": "text.html.php meta.embedded.block.html source.js meta.embedded.block.php source.php keyword.control.foreach.php",
|
||||
"r": {
|
||||
"dark_plus": "keyword.control: #C586C0",
|
||||
"light_plus": "keyword.control: #AF00DB",
|
||||
@@ -210,7 +210,7 @@
|
||||
},
|
||||
{
|
||||
"c": "{",
|
||||
"t": "text.html.php meta.embedded.block.html source.js meta.embedded.block.php source.php punctuation.section.scope.begin.php",
|
||||
"t": "text.html.php meta.embedded.block.html source.js meta.embedded.block.php source.php punctuation.definition.begin.bracket.curly.php",
|
||||
"r": {
|
||||
"dark_plus": "meta.embedded: #D4D4D4",
|
||||
"light_plus": "meta.embedded: #000000",
|
||||
@@ -430,7 +430,7 @@
|
||||
},
|
||||
{
|
||||
"c": "}",
|
||||
"t": "text.html.php meta.embedded.block.html source.js meta.embedded.block.php source.php punctuation.section.scope.end.php",
|
||||
"t": "text.html.php meta.embedded.block.html source.js meta.embedded.block.php source.php punctuation.definition.end.bracket.curly.php",
|
||||
"r": {
|
||||
"dark_plus": "meta.embedded: #D4D4D4",
|
||||
"light_plus": "meta.embedded: #000000",
|
||||
|
||||
@@ -298,7 +298,7 @@
|
||||
},
|
||||
{
|
||||
"c": "{",
|
||||
"t": "text.html.php meta.embedded.block.php source.php punctuation.section.scope.begin.php",
|
||||
"t": "text.html.php meta.embedded.block.php source.php punctuation.definition.begin.bracket.curly.php",
|
||||
"r": {
|
||||
"dark_plus": "meta.embedded: #D4D4D4",
|
||||
"light_plus": "meta.embedded: #000000",
|
||||
@@ -353,7 +353,7 @@
|
||||
},
|
||||
{
|
||||
"c": "}",
|
||||
"t": "text.html.php meta.embedded.block.php source.php punctuation.section.scope.end.php",
|
||||
"t": "text.html.php meta.embedded.block.php source.php punctuation.definition.end.bracket.curly.php",
|
||||
"r": {
|
||||
"dark_plus": "meta.embedded: #D4D4D4",
|
||||
"light_plus": "meta.embedded: #000000",
|
||||
@@ -1057,7 +1057,7 @@
|
||||
},
|
||||
{
|
||||
"c": "for",
|
||||
"t": "text.html.php meta.embedded.block.php source.php keyword.control.php",
|
||||
"t": "text.html.php meta.embedded.block.php source.php keyword.control.for.php",
|
||||
"r": {
|
||||
"dark_plus": "keyword.control: #C586C0",
|
||||
"light_plus": "keyword.control: #AF00DB",
|
||||
@@ -1134,7 +1134,7 @@
|
||||
},
|
||||
{
|
||||
"c": "0",
|
||||
"t": "text.html.php meta.embedded.block.php source.php constant.numeric.php",
|
||||
"t": "text.html.php meta.embedded.block.php source.php constant.numeric.decimal.php",
|
||||
"r": {
|
||||
"dark_plus": "constant.numeric: #B5CEA8",
|
||||
"light_plus": "constant.numeric: #09885A",
|
||||
@@ -1222,7 +1222,7 @@
|
||||
},
|
||||
{
|
||||
"c": "52",
|
||||
"t": "text.html.php meta.embedded.block.php source.php constant.numeric.php",
|
||||
"t": "text.html.php meta.embedded.block.php source.php constant.numeric.decimal.php",
|
||||
"r": {
|
||||
"dark_plus": "constant.numeric: #B5CEA8",
|
||||
"light_plus": "constant.numeric: #09885A",
|
||||
@@ -1310,7 +1310,7 @@
|
||||
},
|
||||
{
|
||||
"c": "{",
|
||||
"t": "text.html.php meta.embedded.block.php source.php punctuation.section.scope.begin.php",
|
||||
"t": "text.html.php meta.embedded.block.php source.php punctuation.definition.begin.bracket.curly.php",
|
||||
"r": {
|
||||
"dark_plus": "meta.embedded: #D4D4D4",
|
||||
"light_plus": "meta.embedded: #000000",
|
||||
@@ -1629,7 +1629,7 @@
|
||||
},
|
||||
{
|
||||
"c": "if",
|
||||
"t": "text.html.php meta.embedded.block.php source.php keyword.control.php",
|
||||
"t": "text.html.php meta.embedded.block.php source.php keyword.control.if.php",
|
||||
"r": {
|
||||
"dark_plus": "keyword.control: #C586C0",
|
||||
"light_plus": "keyword.control: #AF00DB",
|
||||
@@ -1794,7 +1794,7 @@
|
||||
},
|
||||
{
|
||||
"c": "{",
|
||||
"t": "text.html.php meta.embedded.block.php source.php punctuation.section.scope.begin.php",
|
||||
"t": "text.html.php meta.embedded.block.php source.php punctuation.definition.begin.bracket.curly.php",
|
||||
"r": {
|
||||
"dark_plus": "meta.embedded: #D4D4D4",
|
||||
"light_plus": "meta.embedded: #000000",
|
||||
@@ -1871,7 +1871,7 @@
|
||||
},
|
||||
{
|
||||
"c": "}",
|
||||
"t": "text.html.php meta.embedded.block.php source.php punctuation.section.scope.end.php",
|
||||
"t": "text.html.php meta.embedded.block.php source.php punctuation.definition.end.bracket.curly.php",
|
||||
"r": {
|
||||
"dark_plus": "meta.embedded: #D4D4D4",
|
||||
"light_plus": "meta.embedded: #000000",
|
||||
@@ -1893,7 +1893,7 @@
|
||||
},
|
||||
{
|
||||
"c": "else",
|
||||
"t": "text.html.php meta.embedded.block.php source.php keyword.control.php",
|
||||
"t": "text.html.php meta.embedded.block.php source.php keyword.control.else.php",
|
||||
"r": {
|
||||
"dark_plus": "keyword.control: #C586C0",
|
||||
"light_plus": "keyword.control: #AF00DB",
|
||||
@@ -1915,7 +1915,7 @@
|
||||
},
|
||||
{
|
||||
"c": "{",
|
||||
"t": "text.html.php meta.embedded.block.php source.php punctuation.section.scope.begin.php",
|
||||
"t": "text.html.php meta.embedded.block.php source.php punctuation.definition.begin.bracket.curly.php",
|
||||
"r": {
|
||||
"dark_plus": "meta.embedded: #D4D4D4",
|
||||
"light_plus": "meta.embedded: #000000",
|
||||
@@ -2245,7 +2245,7 @@
|
||||
},
|
||||
{
|
||||
"c": "}",
|
||||
"t": "text.html.php meta.embedded.block.php source.php punctuation.section.scope.end.php",
|
||||
"t": "text.html.php meta.embedded.block.php source.php punctuation.definition.end.bracket.curly.php",
|
||||
"r": {
|
||||
"dark_plus": "meta.embedded: #D4D4D4",
|
||||
"light_plus": "meta.embedded: #000000",
|
||||
@@ -2267,7 +2267,7 @@
|
||||
},
|
||||
{
|
||||
"c": "}",
|
||||
"t": "text.html.php meta.embedded.block.php source.php punctuation.section.scope.end.php",
|
||||
"t": "text.html.php meta.embedded.block.php source.php punctuation.definition.end.bracket.curly.php",
|
||||
"r": {
|
||||
"dark_plus": "meta.embedded: #D4D4D4",
|
||||
"light_plus": "meta.embedded: #000000",
|
||||
@@ -2487,7 +2487,7 @@
|
||||
},
|
||||
{
|
||||
"c": "51",
|
||||
"t": "text.html.php meta.embedded.block.php source.php constant.numeric.php",
|
||||
"t": "text.html.php meta.embedded.block.php source.php constant.numeric.decimal.php",
|
||||
"r": {
|
||||
"dark_plus": "constant.numeric: #B5CEA8",
|
||||
"light_plus": "constant.numeric: #09885A",
|
||||
@@ -2685,7 +2685,7 @@
|
||||
},
|
||||
{
|
||||
"c": "for",
|
||||
"t": "text.html.php meta.embedded.block.php source.php keyword.control.php",
|
||||
"t": "text.html.php meta.embedded.block.php source.php keyword.control.for.php",
|
||||
"r": {
|
||||
"dark_plus": "keyword.control: #C586C0",
|
||||
"light_plus": "keyword.control: #AF00DB",
|
||||
@@ -2773,7 +2773,7 @@
|
||||
},
|
||||
{
|
||||
"c": "0",
|
||||
"t": "text.html.php meta.embedded.block.php source.php constant.numeric.php",
|
||||
"t": "text.html.php meta.embedded.block.php source.php constant.numeric.decimal.php",
|
||||
"r": {
|
||||
"dark_plus": "constant.numeric: #B5CEA8",
|
||||
"light_plus": "constant.numeric: #09885A",
|
||||
@@ -2861,7 +2861,7 @@
|
||||
},
|
||||
{
|
||||
"c": "52",
|
||||
"t": "text.html.php meta.embedded.block.php source.php constant.numeric.php",
|
||||
"t": "text.html.php meta.embedded.block.php source.php constant.numeric.decimal.php",
|
||||
"r": {
|
||||
"dark_plus": "constant.numeric: #B5CEA8",
|
||||
"light_plus": "constant.numeric: #09885A",
|
||||
@@ -2949,7 +2949,7 @@
|
||||
},
|
||||
{
|
||||
"c": "{",
|
||||
"t": "text.html.php meta.embedded.block.php source.php punctuation.section.scope.begin.php",
|
||||
"t": "text.html.php meta.embedded.block.php source.php punctuation.definition.begin.bracket.curly.php",
|
||||
"r": {
|
||||
"dark_plus": "meta.embedded: #D4D4D4",
|
||||
"light_plus": "meta.embedded: #000000",
|
||||
@@ -2971,7 +2971,7 @@
|
||||
},
|
||||
{
|
||||
"c": "if",
|
||||
"t": "text.html.php meta.embedded.block.php source.php keyword.control.php",
|
||||
"t": "text.html.php meta.embedded.block.php source.php keyword.control.if.php",
|
||||
"r": {
|
||||
"dark_plus": "keyword.control: #C586C0",
|
||||
"light_plus": "keyword.control: #AF00DB",
|
||||
@@ -3059,7 +3059,7 @@
|
||||
},
|
||||
{
|
||||
"c": "52",
|
||||
"t": "text.html.php meta.embedded.block.php source.php constant.numeric.php",
|
||||
"t": "text.html.php meta.embedded.block.php source.php constant.numeric.decimal.php",
|
||||
"r": {
|
||||
"dark_plus": "constant.numeric: #B5CEA8",
|
||||
"light_plus": "constant.numeric: #09885A",
|
||||
@@ -3092,7 +3092,7 @@
|
||||
},
|
||||
{
|
||||
"c": "{",
|
||||
"t": "text.html.php meta.embedded.block.php source.php punctuation.section.scope.begin.php",
|
||||
"t": "text.html.php meta.embedded.block.php source.php punctuation.definition.begin.bracket.curly.php",
|
||||
"r": {
|
||||
"dark_plus": "meta.embedded: #D4D4D4",
|
||||
"light_plus": "meta.embedded: #000000",
|
||||
@@ -3169,7 +3169,7 @@
|
||||
},
|
||||
{
|
||||
"c": "0",
|
||||
"t": "text.html.php meta.embedded.block.php source.php constant.numeric.php",
|
||||
"t": "text.html.php meta.embedded.block.php source.php constant.numeric.decimal.php",
|
||||
"r": {
|
||||
"dark_plus": "constant.numeric: #B5CEA8",
|
||||
"light_plus": "constant.numeric: #09885A",
|
||||
@@ -3202,7 +3202,7 @@
|
||||
},
|
||||
{
|
||||
"c": "}",
|
||||
"t": "text.html.php meta.embedded.block.php source.php punctuation.section.scope.end.php",
|
||||
"t": "text.html.php meta.embedded.block.php source.php punctuation.definition.end.bracket.curly.php",
|
||||
"r": {
|
||||
"dark_plus": "meta.embedded: #D4D4D4",
|
||||
"light_plus": "meta.embedded: #000000",
|
||||
@@ -3444,7 +3444,7 @@
|
||||
},
|
||||
{
|
||||
"c": "}",
|
||||
"t": "text.html.php meta.embedded.block.php source.php punctuation.section.scope.end.php",
|
||||
"t": "text.html.php meta.embedded.block.php source.php punctuation.definition.end.bracket.curly.php",
|
||||
"r": {
|
||||
"dark_plus": "meta.embedded: #D4D4D4",
|
||||
"light_plus": "meta.embedded: #000000",
|
||||
@@ -3521,7 +3521,7 @@
|
||||
},
|
||||
{
|
||||
"c": "{",
|
||||
"t": "text.html.php meta.embedded.block.php source.php punctuation.section.scope.begin.php",
|
||||
"t": "text.html.php meta.embedded.block.php source.php punctuation.definition.begin.bracket.curly.php",
|
||||
"r": {
|
||||
"dark_plus": "meta.embedded: #D4D4D4",
|
||||
"light_plus": "meta.embedded: #000000",
|
||||
@@ -3532,7 +3532,7 @@
|
||||
},
|
||||
{
|
||||
"c": "}",
|
||||
"t": "text.html.php meta.embedded.block.php source.php punctuation.section.scope.end.php",
|
||||
"t": "text.html.php meta.embedded.block.php source.php punctuation.definition.end.bracket.curly.php",
|
||||
"r": {
|
||||
"dark_plus": "meta.embedded: #D4D4D4",
|
||||
"light_plus": "meta.embedded: #000000",
|
||||
|
||||
@@ -23,6 +23,10 @@
|
||||
["'", "'"]
|
||||
],
|
||||
"folding": {
|
||||
"offSide": true
|
||||
"offSide": true,
|
||||
"markers": {
|
||||
"start": "^\\s*#region",
|
||||
"end": "^\\s*#endregion"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -6,14 +6,14 @@
|
||||
|
||||
var updateGrammar = require('../../../build/npm/update-grammar');
|
||||
|
||||
function adaptToJavaScript(grammar) {
|
||||
function adaptToJavaScript(grammar, replacementScope) {
|
||||
grammar.name = 'JavaScript (with React support)';
|
||||
grammar.fileTypes = ['.js', '.jsx', '.es6', '.mjs' ];
|
||||
grammar.scopeName = 'source.js';
|
||||
grammar.scopeName = `source${replacementScope}`;
|
||||
|
||||
var fixScopeNames = function(rule) {
|
||||
if (typeof rule.name === 'string') {
|
||||
rule.name = rule.name.replace(/\.tsx/g, '.js');
|
||||
rule.name = rule.name.replace(/\.tsx/g, replacementScope);
|
||||
}
|
||||
for (var property in rule) {
|
||||
var value = rule[property];
|
||||
@@ -32,7 +32,9 @@ function adaptToJavaScript(grammar) {
|
||||
var tsGrammarRepo = 'Microsoft/TypeScript-TmLanguage';
|
||||
updateGrammar.update(tsGrammarRepo, 'TypeScript.tmLanguage', './syntaxes/TypeScript.tmLanguage.json');
|
||||
updateGrammar.update(tsGrammarRepo, 'TypeScriptReact.tmLanguage', './syntaxes/TypeScriptReact.tmLanguage.json');
|
||||
updateGrammar.update(tsGrammarRepo, 'TypeScriptReact.tmLanguage', '../javascript/syntaxes/JavaScript.tmLanguage.json', adaptToJavaScript);
|
||||
updateGrammar.update(tsGrammarRepo, 'TypeScriptReact.tmLanguage', '../javascript/syntaxes/JavaScript.tmLanguage.json', grammar => adaptToJavaScript(grammar, '.js'));
|
||||
updateGrammar.update(tsGrammarRepo, 'TypeScriptReact.tmLanguage', '../javascript/syntaxes/JavaScriptReact.tmLanguage.json', grammar => adaptToJavaScript(grammar, '.js.jsx'));
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -17,8 +17,8 @@
|
||||
"vscode-nls": "2.0.1"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@types/node": "^7.0.4",
|
||||
"@types/semver": "^5.3.30"
|
||||
"@types/node": "8.0.33",
|
||||
"@types/semver": "5.4.0"
|
||||
},
|
||||
"scripts": {
|
||||
"vscode:prepublish": "node ../../node_modules/gulp/bin/gulp.js --gulpfile ../../build/gulpfile.extensions.js compile-extension:typescript ./tsconfig.json",
|
||||
|
||||
@@ -177,7 +177,7 @@ export default class TypeScriptCompletionItemProvider implements CompletionItemP
|
||||
if (context.triggerCharacter === '"' || context.triggerCharacter === '\'') {
|
||||
// make sure we are in something that looks like the start of an import
|
||||
const line = document.lineAt(position.line).text.slice(0, position.character);
|
||||
if (!line.match(/\bfrom\s*["']$/) && !line.match(/\b(import|require)\(['"]$/)) {
|
||||
if (!line.match(/\b(from|import)\s*["']$/) && !line.match(/\b(import|require)\(['"]$/)) {
|
||||
return Promise.resolve<CompletionItem[]>([]);
|
||||
}
|
||||
}
|
||||
|
||||
File diff suppressed because it is too large.
Load diff
File diff suppressed because it is too large.
Load diff
@@ -97,7 +97,7 @@ suite('workspace-namespace', () => {
|
||||
});
|
||||
});
|
||||
|
||||
test('openTextDocument, untitled closes on save', function (done) {
|
||||
test('openTextDocument, untitled closes on save', function () {
|
||||
const path = join(vscode.workspace.rootPath || '', './newfile.txt');
|
||||
|
||||
return vscode.workspace.openTextDocument(vscode.Uri.parse('untitled:' + path)).then(doc => {
|
||||
@@ -115,7 +115,7 @@ suite('workspace-namespace', () => {
|
||||
|
||||
d0.dispose();
|
||||
|
||||
return deleteFile(vscode.Uri.file(join(vscode.workspace.rootPath || '', './newfile.txt'))).then(() => done(null));
|
||||
return deleteFile(vscode.Uri.file(join(vscode.workspace.rootPath || '', './newfile.txt')));
|
||||
});
|
||||
});
|
||||
|
||||
@@ -483,7 +483,7 @@ suite('workspace-namespace', () => {
|
||||
assert.equal(res.length, 1);
|
||||
assert.equal(basename(vscode.workspace.asRelativePath(res[0])), 'far.js');
|
||||
});
|
||||
}).timeout(60 * 1000); // Increase timeout for search-based test
|
||||
});
|
||||
|
||||
// TODO@Joh this test fails randomly
|
||||
// test('findFiles, cancellation', () => {
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
"links.navigate": "Ctrl + 单击以跟踪链接",
|
||||
"links.command.mac": "Cmd + 单击以执行命令",
|
||||
"links.command": "Ctrl + 单击以执行命令",
|
||||
"links.navigate.al": "Alt + 单击以访问链接",
|
||||
"links.navigate.al": "按住 Alt 并单击可访问链接",
|
||||
"links.command.al": "Alt + 单击以执行命令",
|
||||
"invalid.url": "抱歉,无法打开此链接,因为其格式不正确: {0}",
|
||||
"missing.url": "抱歉,无法打开此链接,因为其目标丢失。",
|
||||
|
||||
@@ -20,6 +20,7 @@
|
||||
"menus.editorTabContext": "编辑器选项卡上下文菜单",
|
||||
"menus.debugCallstackContext": "调试调用堆栈上下文菜单",
|
||||
"menus.scmTitle": "源代码管理标题菜单",
|
||||
"menus.scmSourceControl": "源代码管理菜单",
|
||||
"menus.resourceGroupContext": "源代码管理资源组上下文菜单",
|
||||
"menus.resourceStateContext": "源代码管理资源状态上下文菜单",
|
||||
"view.viewTitle": "提供的视图的标题菜单",
|
||||
|
||||
@@ -13,5 +13,7 @@
|
||||
"vscode.extension.contributes.views": "向编辑器提供视图",
|
||||
"views.explorer": "资源管理器视图",
|
||||
"views.debug": "调试视图",
|
||||
"locationId.invalid": "“{0}”为无效视图位置"
|
||||
"locationId.invalid": "“{0}”为无效视图位置",
|
||||
"duplicateView1": "无法在位置“{1}”注册多个 ID 同为“{0}”的视图。",
|
||||
"duplicateView2": "ID 为“{0}”的视图在位置“{1}”已被注册"
|
||||
}
|
||||
@@ -11,6 +11,7 @@
|
||||
"endOfLineLineFeed": "LF",
|
||||
"endOfLineCarriageReturnLineFeed": "CRLF",
|
||||
"tabFocusModeEnabled": "按 Tab 移动焦点",
|
||||
"screenReaderDetected": "已为屏幕阅读器优化",
|
||||
"screenReaderDetectedExtra": "如果你没有使用屏幕阅读器,请将设置中的“editor.accessibilitySupport”改为“off”。",
|
||||
"disableTabMode": "禁用辅助功能模式",
|
||||
"gotoLine": "转到行",
|
||||
@@ -47,8 +48,10 @@
|
||||
"guessedEncoding": "通过内容猜测",
|
||||
"pickEncodingForReopen": "选择文件编码以重新打开文件",
|
||||
"pickEncodingForSave": "选择用于保存的文件编码",
|
||||
"screenReaderDetectedExplanation.title": "已为屏幕阅读器优化",
|
||||
"screenReaderDetectedExplanation.question": "你在使用屏幕阅读器额来操作 VS Code 吗?",
|
||||
"screenReaderDetectedExplanation.answerYes": "是",
|
||||
"screenReaderDetectedExplanation.answerNo": "否",
|
||||
"screenReaderDetectedExplanation.body1": "VS Code 已为屏幕阅读器的使用进行优化。"
|
||||
"screenReaderDetectedExplanation.body1": "VS Code 已为屏幕阅读器的使用进行优化。",
|
||||
"screenReaderDetectedExplanation.body2": "一些编辑器功能将有不同的行为: 例如,文字换行,折叠,自动关闭括号等。"
|
||||
}
|
||||
@@ -3,4 +3,6 @@
|
||||
* Licensed under the MIT License. See License.txt in the project root for license information.
|
||||
*--------------------------------------------------------------------------------------------*/
|
||||
// Do not edit this file. It is machine generated.
|
||||
{}
|
||||
{
|
||||
"duplicateId": "ID 为“{0}”的视图在位置“{1}”已被注册"
|
||||
}
|
||||
@@ -17,6 +17,7 @@
|
||||
"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": "控制打开时编辑器是否显示在任何可见组中。如果禁用,编辑器会优先在当前活动编辑器组中打开。如果启用,会显示已打开的编辑器而不是在当前活动编辑器组中再次打开。请注意,有些情况下会忽略此设置,例如强制编辑器在特定组中或在当前活动组的边侧打开时。",
|
||||
|
||||
@@ -12,8 +12,8 @@
|
||||
"breakpointRemoved": "已删除断点,行 {0},文件 {1}",
|
||||
"compoundMustHaveConfigurations": "复合项必须拥有 \"configurations\" 属性集,才能启动多个配置。",
|
||||
"configMissing": "\"launch.json\" 中缺少配置“{0}”。",
|
||||
"debugRequestNotSupported": "不支持配置中的调试请求“{0}”",
|
||||
"debugRequesMissing": "所选的启动配置缺少调试请求",
|
||||
"debugRequestNotSupported": "所选的调试配置有一个不支持的属性值“{0}”: “{1}”。",
|
||||
"debugRequesMissing": "所选的调试配置缺少属性“{0}”。",
|
||||
"debugTypeNotSupported": "配置的类型“{0}”不受支持。",
|
||||
"debugTypeMissing": "所选的启动配置缺少属性 \"type\"。",
|
||||
"preLaunchTaskErrors": "preLaunchTask“{0}”期间检测到多个生成错误。",
|
||||
|
||||
+2
@@ -5,10 +5,12 @@
|
||||
// Do not edit this file. It is machine generated.
|
||||
{
|
||||
"reallyRecommended2": "建议对这种类型的文件使用“{0}”扩展。",
|
||||
"reallyRecommendedExtensionPack": "建议对这种类型的文件使用“{0}”扩展包。",
|
||||
"showRecommendations": "显示建议",
|
||||
"neverShowAgain": "不再显示",
|
||||
"close": "关闭",
|
||||
"workspaceRecommended": "此工作区具有扩展建议。",
|
||||
"ignoreExtensionRecommendations": "你是否要忽略所有推荐的扩展?",
|
||||
"ignoreAll": "是,忽略全部",
|
||||
"no": "否",
|
||||
"cancel": "取消"
|
||||
|
||||
@@ -10,6 +10,7 @@
|
||||
"textFileEditor": "文本文件编辑器",
|
||||
"binaryFileEditor": "二进制文件编辑器",
|
||||
"filesConfigurationTitle": "文件",
|
||||
"exclude": "配置 glob 模式以在搜索中排除文件和文件夹。例如,文件资源管理器根据此设置决定文件或文件夹的显示和隐藏。",
|
||||
"files.exclude.boolean": "匹配文件路径所依据的 glob 模式。设置为 true 或 false 可启用或禁用该模式。",
|
||||
"files.exclude.when": "对匹配文件的同级文件的其他检查。使用 $(basename) 作为匹配文件名的变量。",
|
||||
"associations": "配置语言的文件关联(如: \"*.extension\": \"html\")。这些关联的优先级高于已安装语言的默认关联。",
|
||||
@@ -18,6 +19,7 @@
|
||||
"eol": "默认行尾字符。使用 \\n 表示 LF,\\r\\n 表示 CRLF。",
|
||||
"trimTrailingWhitespace": "启用后,将在保存文件时剪裁尾随空格。",
|
||||
"insertFinalNewline": "启用后,保存文件时在文件末尾插入一个最终新行。",
|
||||
"trimFinalNewlines": "启用后,保存文件时将删除在最终新行后的所有新行。",
|
||||
"files.autoSave.off": "永不自动保存更新后的文件。",
|
||||
"files.autoSave.afterDelay": "配置 \"files.autoSaveDelay\" 后自动保存更新后的文件。",
|
||||
"files.autoSave.onFocusChange": "编辑器失去焦点时自动保存更新后的文件。",
|
||||
|
||||
@@ -5,6 +5,7 @@
|
||||
// Do not edit this file. It is machine generated.
|
||||
{
|
||||
"scm providers": "源代码管理提供程序",
|
||||
"hideRepository": "隐藏",
|
||||
"commitMessage": "消息(按 {0} 提交)",
|
||||
"installAdditionalSCMProviders": "安装其他 SCM 提供程序...",
|
||||
"no open repo": "没有活动的源代码管理提供程序。",
|
||||
|
||||
@@ -31,6 +31,7 @@
|
||||
"TaskSystem.active": "当前已有任务正在运行。请先终止它,然后再执行另一项任务。",
|
||||
"TaskSystem.restartFailed": "未能终止并重启任务 {0}",
|
||||
"TaskSystem.configurationErrors": "错误: 提供的任务配置具有验证错误,无法使用。请首先改正错误。",
|
||||
"taskService.ignoreingFolder": "将忽略工作区文件夹 {0} 的任务配置。多文件夹工作区任务支持要求所有文件夹使用任务版本 2.0.0\n",
|
||||
"TaskSystem.invalidTaskJson": "错误: tasks.json 文件的内容具有语法错误。请先更正错误然后再执行任务。\n",
|
||||
"TaskSystem.runningTask": "存在运行中的任务。要终止它吗?",
|
||||
"TaskSystem.terminateTask": "终止任务(&&T)",
|
||||
@@ -42,6 +43,7 @@
|
||||
"recentlyUsed": "最近使用的任务",
|
||||
"configured": "已配置的任务",
|
||||
"detected": "检测到的任务",
|
||||
"TaskService.ignoredFolder": "由于使用任务版本 0.1.0,以下工作区文件夹将被忽略:",
|
||||
"TaskService.notAgain": "不再显示",
|
||||
"TaskService.ok": "确定",
|
||||
"TaskService.pickRunTask": "选择要运行的任务",
|
||||
|
||||
@@ -19,5 +19,6 @@
|
||||
"workspaceConfig.name.description": "文件夹的可选名称。",
|
||||
"workspaceConfig.uri.description": "文件夹的 URI",
|
||||
"workspaceConfig.settings.description": "工作区设置",
|
||||
"workspaceConfig.extensions.description": "工作区扩展"
|
||||
"workspaceConfig.extensions.description": "工作区扩展",
|
||||
"unknownWorkspaceProperty": "未知的工作区配置属性"
|
||||
}
|
||||
+13
@@ -4,13 +4,26 @@
|
||||
*--------------------------------------------------------------------------------------------*/
|
||||
// Do not edit this file. It is machine generated.
|
||||
{
|
||||
"openTasksConfiguration": "打开任务配置",
|
||||
"openLaunchConfiguration": "打开启动配置",
|
||||
"close": "关闭",
|
||||
"open": "打开设置",
|
||||
"saveAndRetry": "保存并重试",
|
||||
"errorUnknownKey": "没有注册配置 {1},因此无法写入 {0}。",
|
||||
"errorInvalidFolderConfiguration": "{0} 不支持文件夹资源域,因此无法写入\"文件夹设置\"。",
|
||||
"errorInvalidUserTarget": "{0} 不支持全局域,因此无法写入\"用户设置\"。",
|
||||
"errorInvalidFolderTarget": "未提供资源,因此无法写入\"文件夹设置\"。",
|
||||
"errorNoWorkspaceOpened": "没有打开任何工作区,因此无法写入 {0}。请先打开一个工作区,然后重试。",
|
||||
"errorInvalidTaskConfiguration": "无法写入任务文件。请打开**任务**文件并清除错误/警告,然后重试。",
|
||||
"errorInvalidLaunchConfiguration": "无法写入启动文件。请打开**启动**文件并清除错误/警告,然后重试。",
|
||||
"errorInvalidConfiguration": "无法写入用户设置。请打开**用户设置**文件并清除错误/警告,然后重试。",
|
||||
"errorInvalidConfigurationWorkspace": "无法写入工作区设置。请打开**工作区设置**文件并清除错误/警告,然后重试。",
|
||||
"errorInvalidConfigurationFolder": "无法写入文件夹设置。请打开在 **{0}** 文件夹下的**文件夹设置**文件并清除错误/警告,然后重试。",
|
||||
"errorTasksConfigurationFileDirty": "文件已变更,因此无法写入设置。请先保存**任务配置**文件,然后重试。",
|
||||
"errorLaunchConfigurationFileDirty": "文件已变更,因此无法写入设置。请先保存**启动配置**文件,然后重试。",
|
||||
"errorConfigurationFileDirty": "文件已变更,因此无法写入设置。请先保存**用户设置**文件,然后重试。",
|
||||
"errorConfigurationFileDirtyWorkspace": "文件已变更,因此无法写入设置。请先保存**工作区设置**文件,然后重试。",
|
||||
"errorConfigurationFileDirtyFolder": "文件已变更,因此无法写入设置。请先保存在 **{0}** 下的**文件夹设置**文件,然后重试。",
|
||||
"userTarget": "用户设置",
|
||||
"workspaceTarget": "工作区设置",
|
||||
"folderTarget": "文件夹设置"
|
||||
|
||||
@@ -11,6 +11,7 @@
|
||||
"lineHeight": "控制行高。使用 0 會從 fontSize 計算 lineHeight。",
|
||||
"letterSpacing": "控制字元間距 (以像素為單位)",
|
||||
"lineNumbers": "控制行號顯示。可能的值有 'on'、'off' 及 'relative'。'relative' 會從目前的資料指標位置顯示行數。",
|
||||
"rulers": "在特定的等寬字元數之後轉譯垂直尺規。有多個尺規就使用多個值。若陣列為空,則不繪製任何尺規。",
|
||||
"wordSeparators": "執行文字相關導覽或作業時將作為文字分隔符號的字元",
|
||||
"tabSize": "與 Tab 相等的空格數量。當 `editor.detectIndentation` 已開啟時,會根據檔案內容覆寫此設定。",
|
||||
"tabSize.errorMessage": "必須是 'number'。請注意,值 \"auto\" 已由 `editor.detectIndentation` 設定取代。",
|
||||
|
||||
@@ -20,6 +20,7 @@
|
||||
"menus.editorTabContext": "編輯器索引標籤操作功能表",
|
||||
"menus.debugCallstackContext": "偵錯呼叫堆疊操作功能表",
|
||||
"menus.scmTitle": "原始檔控制標題功能表",
|
||||
"menus.scmSourceControl": "原始檔控制功能表",
|
||||
"menus.resourceGroupContext": "原始檔控制資源群組操作功能表",
|
||||
"menus.resourceStateContext": "原始檔控制資源群組狀態操作功能表",
|
||||
"view.viewTitle": "這有助於查看標題功能表",
|
||||
|
||||
@@ -13,5 +13,7 @@
|
||||
"vscode.extension.contributes.views": "提供意見給編輯者",
|
||||
"views.explorer": "檔案總管檢視",
|
||||
"views.debug": "偵錯檢視",
|
||||
"locationId.invalid": "`{0}`不是有效的識別位置"
|
||||
"locationId.invalid": "`{0}`不是有效的識別位置",
|
||||
"duplicateView1": "無法在位置 '{1}' 使用相同的識別碼 '{0}' 註冊多個檢視",
|
||||
"duplicateView2": "識別碼為 '{0}' 的檢視已在位置 '{1}' 註冊"
|
||||
}
|
||||
@@ -17,5 +17,6 @@
|
||||
"save": "儲存(&&S)",
|
||||
"saveWorkspace": "儲存工作區",
|
||||
"openWorkspaceAction": "開啟工作區...",
|
||||
"openWorkspaceConfigFile": "開啟工作區組態檔"
|
||||
"openWorkspaceConfigFile": "開啟工作區組態檔",
|
||||
"workspaceFolderPickerPlaceholder": "選取工作區資料夾"
|
||||
}
|
||||
@@ -6,6 +6,7 @@
|
||||
{
|
||||
"badgeTitle": "{0} - {1}",
|
||||
"titleKeybinding": "{0} ({1})",
|
||||
"removeFromActivityBar": "從活動列隱藏",
|
||||
"keepInActivityBar": "保留在活動列",
|
||||
"additionalViews": "其他檢視",
|
||||
"numberBadge": "{0} ({1})",
|
||||
|
||||
@@ -35,6 +35,7 @@
|
||||
"openPreviousEditorInGroup": "開啟群組中上一個編輯器",
|
||||
"navigateNext": "向前",
|
||||
"navigatePrevious": "向後",
|
||||
"navigateLast": "移至最後",
|
||||
"reopenClosedEditor": "重新開啟已關閉的編輯器",
|
||||
"clearRecentFiles": "清理最近開啟的",
|
||||
"showEditorsInFirstGroup": "在第一個群組顯示編輯器",
|
||||
|
||||
@@ -11,6 +11,7 @@
|
||||
"endOfLineLineFeed": "LF",
|
||||
"endOfLineCarriageReturnLineFeed": "CRLF",
|
||||
"tabFocusModeEnabled": "用 Tab 鍵移動焦點",
|
||||
"screenReaderDetected": "已將螢幕助讀程式最佳化",
|
||||
"screenReaderDetectedExtra": "若您不打算使用螢幕助讀程式,請將設定 `editor.accessibilitySupport` 變更為 \"off\"。",
|
||||
"disableTabMode": "停用協助工具模式",
|
||||
"gotoLine": "移至行",
|
||||
@@ -47,6 +48,10 @@
|
||||
"guessedEncoding": "已從內容猜測",
|
||||
"pickEncodingForReopen": "選取檔案的編碼以重新開啟檔案",
|
||||
"pickEncodingForSave": "選取用來儲存的檔案編碼",
|
||||
"screenReaderDetectedExplanation.title": "已將螢幕助讀程式最佳化",
|
||||
"screenReaderDetectedExplanation.question": "您正使用螢幕助讀程式來操作 VS Code 嗎?",
|
||||
"screenReaderDetectedExplanation.answerYes": "是",
|
||||
"screenReaderDetectedExplanation.answerNo": "否"
|
||||
"screenReaderDetectedExplanation.answerNo": "否",
|
||||
"screenReaderDetectedExplanation.body1": "已將 VS Code 最佳化,現在可搭配螢幕助讀程式使用。",
|
||||
"screenReaderDetectedExplanation.body2": "某些編輯器功能會具有不同的行為: 例如文字換行、折疊、自動括上括號等。"
|
||||
}
|
||||
@@ -3,4 +3,6 @@
|
||||
* Licensed under the MIT License. See License.txt in the project root for license information.
|
||||
*--------------------------------------------------------------------------------------------*/
|
||||
// Do not edit this file. It is machine generated.
|
||||
{}
|
||||
{
|
||||
"duplicateId": "識別碼為 '{0}' 的檢視已在位置 '{1}' 中註冊"
|
||||
}
|
||||
@@ -45,5 +45,7 @@
|
||||
"decreaseViewSize": "縮小目前的檢視大小",
|
||||
"showPreviousTab": "顯示前一個視窗索引標籤",
|
||||
"showNextWindowTab": "顯示下一個視窗索引標籤",
|
||||
"mergeAllWindowTabs": "合併所有視窗"
|
||||
"moveWindowTabToNewWindow": "將視窗索引標籤移至新的視窗",
|
||||
"mergeAllWindowTabs": "合併所有視窗",
|
||||
"toggleWindowTabsBar": "切換視窗索引標籤列"
|
||||
}
|
||||
@@ -10,9 +10,14 @@
|
||||
"workspaces": "工作區",
|
||||
"developer": "開發人員",
|
||||
"showEditorTabs": "控制已開啟的編輯器是否應顯示在索引標籤中。",
|
||||
"workbench.editor.labelFormat.default": "顯示檔案名稱。當啟用頁籤且有兩個相同名稱的檔案在同一個群組時,各檔案的路徑會被加入以分辨區隔。當取消頁籤時,在使用中的編輯器會顯示與工作區根目錄的相對路徑。",
|
||||
"workbench.editor.labelFormat.default": "顯示檔案的名稱。當啟用索引標籤時,若在一個群組中有兩個檔案使用相同的名稱,就會新增每個檔案路徑具有辨識度的區段。當索引標籤停用時,若編輯器在使用中,則會顯示工作區根目錄的相關路徑。",
|
||||
"workbench.editor.labelFormat.short": "顯示檔案的名稱,並在名稱後接著該檔案的目錄名稱。",
|
||||
"workbench.editor.labelFormat.medium": "顯示檔案的名稱,並在名稱後接著該檔案與工作區根目錄有關的路徑。",
|
||||
"workbench.editor.labelFormat.long": "顯示檔案的名稱,並在名稱後接著該檔案的絕對路徑。",
|
||||
"tabDescription": "控制編輯器的標籤格式。變更此設定具有多項優點,例如可讓檔案的位置更加清楚:\n-簡短: 'parent'\n-中等: 'workspace/src/parent'\n-完整: '/home/user/workspace/src/parent'\n-預設: '.../parent',當另一個索引標籤共用相同的標題,或若路徑停用,卻共用相關的工作區路徑時",
|
||||
"editorTabCloseButton": "控制編輯器的索引標籤關閉按鈕位置,或在設為 'off' 時將其停用。",
|
||||
"showIcons": "控制開啟的編輯器是否搭配圖示顯示。這需要同時啟用圖示佈景主題。",
|
||||
"enablePreview": "控制已開啟的編輯器是否顯示為預覽。預覽編輯器會重複使用到被保留 (例如按兩下或進行編輯) 並以斜體字型樣式顯示為止。",
|
||||
"enablePreviewFromQuickOpen": "控制透過 Quick Open 所開啟的編輯器是否顯示為預覽。預覽編輯器會重複使用到被保留 (例如按兩下或進行編輯) 為止。",
|
||||
"editorOpenPositioning": "控制要在何處開啟編輯器。選取 [左] 或 [右] 在目前使用中編輯器的左側或右側開啟編輯器。選取 [先] 或 [後] 從目前使用中編輯器另外開啟編輯器。",
|
||||
"revealIfOpen": "控制編輯器是否要在任何顯示的群組開啟時,在其中顯示。若啟用此選項,已經開啟的編輯器將會繼續顯示,而不會在目前使用中的編輯器群組中再開啟一次。請注意,有一些情況會忽略此設定,例如當強制編輯器在特定群組中開啟,或強制編輯器在目前使用中的群組旁開啟等情況。",
|
||||
|
||||
+5
-1
@@ -37,5 +37,9 @@
|
||||
"schema.indentationRules.unIndentedLinePattern.pattern": "適用於 unIndentedLinePattern 的 RegExp 模式。",
|
||||
"schema.indentationRules.unIndentedLinePattern.flags": "適用於 unIndentedLinePattern 的 RegExp 旗標。",
|
||||
"schema.indentationRules.unIndentedLinePattern.errorMessage": "必須符合樣式 `/^([gimuy]+)$/`",
|
||||
"schema.folding": "語言的摺疊設定。"
|
||||
"schema.folding": "語言的摺疊設定。",
|
||||
"schema.folding.offSide": "若語言中的區塊由其縮排表示,則該語言會依循越位規則。若已設定,則空白行會屬於後續區塊。",
|
||||
"schema.folding.markers": "語言的特定摺疊標記,例如 '#region' 和 '#endregion'。會針對所有行的內容測試起始和結尾 regex,而必須有效地設計起始和結尾 regex",
|
||||
"schema.folding.markers.start": "開始標記的 RegExp 模式。regexp 必須以 '^' 作為開頭。",
|
||||
"schema.folding.markers.end": "結束標記的 RegExp 模式。regexp 必須以 '^' 作為開頭。"
|
||||
}
|
||||
@@ -12,6 +12,8 @@
|
||||
"breakpointRemoved": "已移除中斷點,行 {0},檔案 {1}",
|
||||
"compoundMustHaveConfigurations": "複合必須設有 \"configurations\" 屬性,才能啟動多個組態。",
|
||||
"configMissing": "'launch.json' 中遺漏組態 '{0}'。",
|
||||
"debugRequestNotSupported": "所選的偵錯組態具有不支援的屬性值 '{0}': '{1}'。",
|
||||
"debugRequesMissing": "所選的偵錯組態遺漏屬性 '{0}'。",
|
||||
"debugTypeNotSupported": "不支援設定的偵錯類型 '{0}'。",
|
||||
"debugTypeMissing": "遺漏所選啟動設定的屬性 'type'。",
|
||||
"preLaunchTaskErrors": "執行 preLaunchTask '{0}' 期間偵測到建置錯誤。",
|
||||
|
||||
@@ -29,6 +29,13 @@
|
||||
"view id": "識別碼",
|
||||
"view name": "名稱",
|
||||
"view location": "位置",
|
||||
"colorThemes": "色彩佈景主題 ({0})",
|
||||
"iconThemes": "圖示佈景主題 ({0}) ",
|
||||
"colors": "色彩 ({0})",
|
||||
"colorId": "識別碼",
|
||||
"defaultDark": "預設深色",
|
||||
"defaultLight": "預設淺色",
|
||||
"defaultHC": "預設高對比",
|
||||
"JSON Validation": "JSON 驗證 ({0})",
|
||||
"commands": "命令 ({0})",
|
||||
"command name": "名稱",
|
||||
|
||||
@@ -53,6 +53,7 @@
|
||||
"showAzureExtensionsShort": "Azure 延伸模組",
|
||||
"OpenExtensionsFile.failed": "無法在 '.vscode' 資料夾 ({0}) 中建立 'extensions.json' 檔案。",
|
||||
"configureWorkspaceRecommendedExtensions": "設定建議的延伸模組 (工作區)",
|
||||
"configureWorkspaceFolderRecommendedExtensions": "設定建議的延伸模組 (工作區資料夾) ",
|
||||
"builtin": "內建",
|
||||
"disableAll": "停用所有已安裝的延伸模組",
|
||||
"disableAllWorkspace": "停用此工作區的所有已安裝延伸模組",
|
||||
|
||||
+2
@@ -5,10 +5,12 @@
|
||||
// Do not edit this file. It is machine generated.
|
||||
{
|
||||
"reallyRecommended2": "建議對此檔案類型使用 '{0}' 延伸模組。",
|
||||
"reallyRecommendedExtensionPack": "建議對此檔案類型使用 '{0}' 延伸模組套件。",
|
||||
"showRecommendations": "顯示建議",
|
||||
"neverShowAgain": "不要再顯示",
|
||||
"close": "關閉",
|
||||
"workspaceRecommended": "此工作區具有擴充功能建議。",
|
||||
"ignoreExtensionRecommendations": "是否略過所有的延伸模組建議?",
|
||||
"ignoreAll": "是,略過全部",
|
||||
"no": "否",
|
||||
"cancel": "取消"
|
||||
|
||||
@@ -10,12 +10,16 @@
|
||||
"textFileEditor": "文字檔編輯器",
|
||||
"binaryFileEditor": "二進位檔案編輯器",
|
||||
"filesConfigurationTitle": "檔案",
|
||||
"exclude": "設定 Glob 模式,以排除檔案及資料夾。例如,檔案總管會根據此項設定,判斷何種檔案和資料夾該顯示或隱藏。",
|
||||
"files.exclude.boolean": "要符合檔案路徑的 Glob 模式。設為 True 或 False 可啟用或停用模式。",
|
||||
"files.exclude.when": "在相符檔案同層級上額外的檢查。請使用 $(basename) 作為相符檔案名稱的變數。",
|
||||
"associations": "將檔案關聯設定為語言 (例如 \"*.extension\": \"html\")。這些語言優先於已安裝語言的預設關聯。",
|
||||
"encoding": "在讀取和寫入檔案時要使用的預設字元集編碼。此項設定也可根據每個語言加以設定。",
|
||||
"autoGuessEncoding": "當啟用此功能時,會嘗試在開啟檔案時推測字元集編碼。此項設定也可根據每個語言加以設定。",
|
||||
"eol": "預設結尾斷行字元.LF使用 \\n , CRLF使用\\r\\n ",
|
||||
"trimTrailingWhitespace": "若啟用,將在儲存檔案時修剪尾端空白。",
|
||||
"insertFinalNewline": "啟用時,請在儲存檔案時在其結尾插入最後一個新行。",
|
||||
"trimFinalNewlines": "若啟用,則會在儲存檔案時,修剪檔案末新行尾的所有新行。",
|
||||
"files.autoSave.off": "已變更的檔案一律不會自動儲存。",
|
||||
"files.autoSave.afterDelay": "已變更的檔案會在設定的 'files.autoSaveDelay' 之後自動儲存。",
|
||||
"files.autoSave.onFocusChange": "已變更的檔案會在編輯器失去焦點時自動儲存。",
|
||||
|
||||
@@ -4,5 +4,6 @@
|
||||
*--------------------------------------------------------------------------------------------*/
|
||||
// Do not edit this file. It is machine generated.
|
||||
{
|
||||
"dirtyFile": "1 個未儲存的檔案",
|
||||
"dirtyFiles": "{0} 個未儲存的檔案"
|
||||
}
|
||||
@@ -4,8 +4,11 @@
|
||||
*--------------------------------------------------------------------------------------------*/
|
||||
// Do not edit this file. It is machine generated.
|
||||
{
|
||||
"scm providers": "原始檔控制提供者",
|
||||
"hideRepository": "隱藏",
|
||||
"commitMessage": "Message (press {0} to commit)",
|
||||
"installAdditionalSCMProviders": "安裝額外SCM提供者...",
|
||||
"no open repo": "沒有使用中的原始檔控制提供者。",
|
||||
"source control": "原始檔控制",
|
||||
"viewletTitle": "{0}: {1}"
|
||||
}
|
||||
@@ -4,5 +4,7 @@
|
||||
*--------------------------------------------------------------------------------------------*/
|
||||
// Do not edit this file. It is machine generated.
|
||||
{
|
||||
"snippet.suggestions.label": "插入程式碼片段"
|
||||
"snippet.suggestions.label": "插入程式碼片段",
|
||||
"sep.userSnippet": "使用者程式碼片段",
|
||||
"sep.extSnippet": "延伸模組程式碼片段"
|
||||
}
|
||||
@@ -10,6 +10,7 @@
|
||||
"vscode.extension.contributes.snippets": "提供程式碼片段。",
|
||||
"vscode.extension.contributes.snippets-language": "要予以提供此程式碼片段的語言識別碼。",
|
||||
"vscode.extension.contributes.snippets-path": "程式碼片段檔案的路徑。此路徑是擴充功能資料夾的相對路徑,而且一般會以 './snippets/' 開頭。",
|
||||
"badFile": "無法讀取程式碼片段檔案 \"{0}\"。",
|
||||
"badVariableUse": "程式碼片段 \"{0}\" 很可能會混淆 snippet-variables 及 snippet-placeholders。如需詳細資料,請參閱 https://code.visualstudio.com/docs/editor/userdefinedsnippets#_snippet-syntax。",
|
||||
"source.snippet": "使用者程式碼片段",
|
||||
"detail.snippet": "{0} ({1})",
|
||||
|
||||
@@ -13,11 +13,13 @@
|
||||
"manyMarkers": "99+",
|
||||
"runningTasks": "顯示執行中的工作",
|
||||
"tasks": "工作",
|
||||
"TaskSystem.noHotSwap": "必須重新載入視窗才可變更執行使用中工作的工作執行引擎",
|
||||
"TaskService.noBuildTask1": "未定義任何建置工作。請使用 'isBuildCommand' 標記 tasks.json 檔案中的工作。",
|
||||
"TaskService.noBuildTask2": "未定義任何組建工作,請在 tasks.json 檔案中將工作標記為 'build' 群組。",
|
||||
"TaskService.noTestTask1": "未定義任何建置工作。請使用 'isTestCommand' 標記 tasks.json 檔案中的工作。",
|
||||
"TaskService.noTestTask2": "未定義任何測試工作,請在 tasks.json 檔案中將工作標記為 'test' 群組。",
|
||||
"TaskServer.noTask": "找不到所要求要執行的工作 {0}。",
|
||||
"TaskService.associate": "建立關聯",
|
||||
"TaskService.attachProblemMatcher.continueWithout": "在不掃描工作輸出的情況下繼續",
|
||||
"TaskService.attachProblemMatcher.never": "永不掃描工作輸出",
|
||||
"TaskService.attachProblemMatcher.learnMoreAbout": "深入了解掃描工作輸出",
|
||||
@@ -29,6 +31,7 @@
|
||||
"TaskSystem.active": "已有工作在執行。請先終止該工作,然後再執行其他工作。",
|
||||
"TaskSystem.restartFailed": "無法終止再重新啟動工作 {0}",
|
||||
"TaskSystem.configurationErrors": "錯誤: 提供的工作組態具有驗證錯誤而無法使用。請先更正這些錯誤。",
|
||||
"taskService.ignoreingFolder": "略過工作區資料夾 {0} 的工作組態。所有的資料夾都必須使用工作版本 2.0.0 才可使用多資料夾工作區工作支援\n",
|
||||
"TaskSystem.invalidTaskJson": "錯誤: tasks.json 檔案的內容具有語法錯誤。請更正錯誤,再執行工作\n",
|
||||
"TaskSystem.runningTask": "有一個工作正在執行。要終止工作嗎?",
|
||||
"TaskSystem.terminateTask": "終止工作(&&T)",
|
||||
@@ -40,20 +43,33 @@
|
||||
"recentlyUsed": "最近使用的工作",
|
||||
"configured": "設定的工作",
|
||||
"detected": "偵測到的工作",
|
||||
"TaskService.ignoredFolder": "下列工作區資料夾因為使用工作版本 0.1.0,所以已略過:",
|
||||
"TaskService.notAgain": "不要再顯示",
|
||||
"TaskService.ok": "確定",
|
||||
"TaskService.pickRunTask": "請選取要執行的工作",
|
||||
"TaslService.noEntryToRun": "找不到任何要執行的工作。請設定工作...",
|
||||
"TaskService.fetchingBuildTasks": "正在擷取組建工作...",
|
||||
"TaskService.pickBuildTask": "請選取要執行的組建工作",
|
||||
"TaskService.noBuildTask": "找不到任何要執行的組建工作。請設定工作...",
|
||||
"TaskService.fetchingTestTasks": "正在擷取測試工作...",
|
||||
"TaskService.pickTestTask": "請選取要執行的測試工作",
|
||||
"TaskService.noTestTaskTerminal": "找不到任何要執行的測試工作。請設定工作...",
|
||||
"TaskService.tastToTerminate": "請選取要終止的工作",
|
||||
"TaskService.noTaskRunning": "目前未執行任何工作",
|
||||
"TerminateAction.noProcess": "啟動的處理序已不存在。如果工作繁衍的背景工作結束,VS Code 可能會產生孤立的處理序。",
|
||||
"TerminateAction.failed": "無法終止執行中的工作",
|
||||
"TaskService.tastToRestart": "請選取要重新啟動的工作",
|
||||
"TaskService.noTaskToRestart": "沒有要重新啟動的工作",
|
||||
"TaskService.template": "選取工作範本",
|
||||
"TaskService.createJsonFile": "從範本建立 tasks.json 檔案",
|
||||
"TaskService.openJsonFile": "開啟 tasks.json 檔案",
|
||||
"TaskService.pickTask": "選取要設定的工作",
|
||||
"TaskService.defaultBuildTaskExists": "已經將 {0} 標記為預設組建工作",
|
||||
"TaskService.pickDefaultBuildTask": "請選取要用作預設組建工作的工作",
|
||||
"TaskService.defaultTestTaskExists": "已經將 {0} 標記為預設測試工作。",
|
||||
"TaskService.pickDefaultTestTask": "請選取要用作預設測試工作的工作",
|
||||
"TaskService.pickShowTask": "選取要顯示輸出的工作",
|
||||
"TaskService.noTaskIsRunning": "未執行任何工作",
|
||||
"ShowLogAction.label": "顯示工作記錄檔",
|
||||
"RunTaskAction.label": "執行工作",
|
||||
"RestartTaskAction.label": "重新開始執行工作",
|
||||
|
||||
@@ -5,6 +5,7 @@
|
||||
// Do not edit this file. It is machine generated.
|
||||
{
|
||||
"TerminalTaskSystem.unknownError": "執行工作時發生不明錯誤。如需詳細資訊,請參閱工作輸出記錄檔。",
|
||||
"dependencyFailed": "無法解決在工作區資料夾 '{1}' 中的相依工作 '{0}'",
|
||||
"TerminalTaskSystem.terminalName": "工作 - {0}",
|
||||
"reuseTerminal": "工作將被重新啟用.按任意鍵關閉.",
|
||||
"TerminalTaskSystem": "無法在 UNC 磁碟機上執行殼層命令。",
|
||||
|
||||
@@ -12,6 +12,7 @@
|
||||
"ConfigurationParser.invalidVaraibleReference": "錯誤: problemMatcher 參考無效: {0}\n",
|
||||
"ConfigurationParser.noTaskType": "錯誤: 工作組態必須具有型別屬性。將會忽略該組態。\n{0}\n",
|
||||
"ConfigurationParser.noTypeDefinition": "錯誤: 沒有已註冊工作類型 '{0}'。您是否忘記安裝提供相應工作提供者的延伸模組?",
|
||||
"ConfigurationParser.missingRequiredProperty": "錯誤: 工作組態 '{0}' 缺少要求的屬性 '{1}'。會略過工作組態。",
|
||||
"ConfigurationParser.notCustom": "錯誤: 未將工作宣告為自訂工作。將會忽略該組態。\n{0}\n",
|
||||
"ConfigurationParser.noTaskName": "錯誤: 工作必須提供 taskName 屬性。即將忽略此工作。\n{0}\n",
|
||||
"taskConfiguration.shellArgs": "警告: 工作 '{0}' 是殼層命令,但命令名稱或其中一個引數有的未逸出的空格。若要確保命令列正確引述,請將引數合併到命令中。",
|
||||
|
||||
@@ -38,5 +38,6 @@
|
||||
"workbench.action.terminal.focusFindWidget": "焦點尋找小工具",
|
||||
"workbench.action.terminal.hideFindWidget": "隱藏尋找小工具",
|
||||
"nextTerminalFindTerm": "顯示下一個尋找字詞",
|
||||
"previousTerminalFindTerm": "顯示上一個尋找字詞"
|
||||
"previousTerminalFindTerm": "顯示上一個尋找字詞",
|
||||
"quickOpenTerm": "切換使用中的終端機 "
|
||||
}
|
||||
+1
@@ -8,5 +8,6 @@
|
||||
"terminal.foreground": "終端機的前景色彩。",
|
||||
"terminalCursor.foreground": "終端機游標的前景色彩。",
|
||||
"terminalCursor.background": "終端機游標的背景色彩。允許區塊游標重疊於自訂字元色彩。",
|
||||
"terminal.selectionBackground": "終端機的選取項目背景色彩。",
|
||||
"terminal.ansiColor": "終端機中的 '{0}' ANSI 色彩。"
|
||||
}
|
||||
+1
@@ -10,6 +10,7 @@
|
||||
"welcomePage.newFile": "新增檔案",
|
||||
"welcomePage.openFolder": "開啟資料夾...",
|
||||
"welcomePage.cloneGitRepository": "複製 Git 存放庫...",
|
||||
"welcomePage.addWorkspaceFolder": "新增工作區資料夾...",
|
||||
"welcomePage.recent": "最近使用",
|
||||
"welcomePage.moreRecent": "更多...",
|
||||
"welcomePage.noRecentFolders": "沒有最近使用的資料夾",
|
||||
|
||||
@@ -13,6 +13,12 @@
|
||||
"invalid.title": "'configuration.title' 必須是字串",
|
||||
"vscode.extension.contributes.defaultConfiguration": "依語言貢獻預設編輯器組態設定。",
|
||||
"invalid.properties": "'configuration.properties' 必須是物件",
|
||||
"invalid.allOf": "'configuration.allOf' 已取代而不應再使用。請改為將多個組態區段作為陣列,傳遞至「組態」貢獻點。",
|
||||
"workspaceConfig.folders.description": "要載入工作區之資料夾的清單。",
|
||||
"workspaceConfig.path.description": "檔案路徑,例如 `/root/folderA` 或 `./folderA` 即為會對工作區檔案位置解析的相關路徑。",
|
||||
"workspaceConfig.settings.description": "工作區設定"
|
||||
"workspaceConfig.name.description": "資料夾的選用名稱。",
|
||||
"workspaceConfig.uri.description": "資料夾的 URI",
|
||||
"workspaceConfig.settings.description": "工作區設定",
|
||||
"workspaceConfig.extensions.description": "工作區延伸模組",
|
||||
"unknownWorkspaceProperty": "未知的工作區組態屬性"
|
||||
}
|
||||
+13
@@ -4,13 +4,26 @@
|
||||
*--------------------------------------------------------------------------------------------*/
|
||||
// Do not edit this file. It is machine generated.
|
||||
{
|
||||
"openTasksConfiguration": "開啟工作組態",
|
||||
"openLaunchConfiguration": "開啟啟動組態",
|
||||
"close": "關閉",
|
||||
"open": "開啟設定",
|
||||
"saveAndRetry": "儲存並重試",
|
||||
"errorUnknownKey": "因為 {1} 非已註冊的組態,所以無法寫入至 {0}。",
|
||||
"errorInvalidFolderConfiguration": "因為 {0} 不支援資料夾資源範圍,所以無法寫入至資料夾設定。",
|
||||
"errorInvalidUserTarget": "因為 {0} 不支援全域範圍,所以無法寫入至使用者設定。",
|
||||
"errorInvalidFolderTarget": "因為未提供資源,所以無法寫入至資料夾設定。",
|
||||
"errorNoWorkspaceOpened": "因為未開啟工作區,所以無法寫入至 {0}。請先開啟工作區,再試一次。",
|
||||
"errorInvalidTaskConfiguration": "無法寫入工作檔案。請開啟 **工作** 檔案以修正其中的錯誤/警告,然後重試一次。",
|
||||
"errorInvalidLaunchConfiguration": "無法寫入啟動檔案。請開啟 **啟動** 檔案以修正其中的錯誤/警告,然後重試一次。",
|
||||
"errorInvalidConfiguration": "無法寫入使用者設定。請開啟 **使用者設定** 檔案以修正其中的錯誤/警告,然後重試一次。",
|
||||
"errorInvalidConfigurationWorkspace": "無法寫入工作區設定。請開啟 **工作區設定** 檔案以修正其中的錯誤/警告,然後重試一次。",
|
||||
"errorInvalidConfigurationFolder": "無法寫入資料夾設定。請開啟 **{0}** 資料夾下的 **資料夾設定** 檔案以修正其中的錯誤/警告,然後重試一次。",
|
||||
"errorTasksConfigurationFileDirty": "因為檔案已變更,所以無法寫入工作檔案。請儲存 **工作組態** 檔案,然後重試一次。",
|
||||
"errorLaunchConfigurationFileDirty": "因為檔案已變更,所以無法寫入啟動檔案。請儲存 **啟動組態** 檔案,然後重試一次。",
|
||||
"errorConfigurationFileDirty": "因為檔案已變更,所以無法寫入使用者設定。請儲存 **使用者設定** 檔案,然後重試一次。",
|
||||
"errorConfigurationFileDirtyWorkspace": "因為檔案已變更,所以無法寫入工作區設定。請儲存 **工作區設定** 檔案,然後重試一次。",
|
||||
"errorConfigurationFileDirtyFolder": "因為檔案已變更,所以無法寫入資料夾設定。請儲存 **{0}** 資料夾下的 **資料夾設定** 檔案,然後重試一次。",
|
||||
"userTarget": "使用者設定",
|
||||
"workspaceTarget": "工作區設定",
|
||||
"folderTarget": "資料夾設定"
|
||||
|
||||
@@ -5,10 +5,12 @@
|
||||
// Do not edit this file. It is machine generated.
|
||||
{
|
||||
"fileInvalidPath": "檔案資源 ({0}) 無效",
|
||||
"fileIsDirectoryError": "檔案是目錄",
|
||||
"fileNotModifiedError": "未修改檔案的時間",
|
||||
"fileTooLargeError": "檔案太大無法開啟",
|
||||
"fileBinaryError": "檔案似乎是二進位檔,因此無法當做文字開啟",
|
||||
"fileNotFoundError": "找不到檔案 ({0})",
|
||||
"fileExists": "要建立的檔案已存在 ({0})",
|
||||
"fileMoveConflict": "無法移動/複製。目的地已存在檔案。",
|
||||
"unableToMoveCopyError": "無法移動/複製。檔案會取代其所在的資料夾。",
|
||||
"foldersCopyError": "資料夾不能複製到工作區。請選取個別檔案進行複製。",
|
||||
|
||||
@@ -4,6 +4,7 @@
|
||||
*--------------------------------------------------------------------------------------------*/
|
||||
// Do not edit this file. It is machine generated.
|
||||
{
|
||||
"css.title": "CSS",
|
||||
"css.lint.argumentsInColorFunction.desc": "Ungültige Parameteranzahl.",
|
||||
"css.lint.boxModel.desc": "Verwenden Sie width oder height nicht beim Festlegen von padding oder border",
|
||||
"css.lint.compatibleVendorPrefixes.desc": "Stellen Sie beim Verwenden vom anbieterspezifischen Präfix sicher, dass alle anderen anbieterspezifischen Eigenschaften miteinbezogen werden",
|
||||
@@ -25,6 +26,7 @@
|
||||
"css.trace.server.desc": "Verfolgt die Kommunikation zwischen VS Code und dem CSS-Sprachserver.",
|
||||
"css.validate.title": "Steuert die CSS-Validierung und Problemschweregrade.",
|
||||
"css.validate.desc": "Aktiviert oder deaktiviert alle Überprüfungen.",
|
||||
"less.title": "LESS",
|
||||
"less.lint.argumentsInColorFunction.desc": "Ungültige Parameteranzahl.",
|
||||
"less.lint.boxModel.desc": "Verwenden Sie width oder height nicht beim Festlegen von padding oder border",
|
||||
"less.lint.compatibleVendorPrefixes.desc": "Stellen Sie beim Verwenden vom anbieterspezifischen Präfix sicher, dass alle anderen anbieterspezifischen Eigenschaften miteinbezogen werden",
|
||||
@@ -45,6 +47,7 @@
|
||||
"less.lint.zeroUnits.desc": "Keine Einheit für Null erforderlich",
|
||||
"less.validate.title": "Steuert die LESS-Validierung und Problemschweregrade.",
|
||||
"less.validate.desc": "Aktiviert oder deaktiviert alle Überprüfungen.",
|
||||
"scss.title": "SCSS (SASS)",
|
||||
"scss.lint.argumentsInColorFunction.desc": "Ungültige Parameteranzahl.",
|
||||
"scss.lint.boxModel.desc": "Verwenden Sie width oder height nicht beim Festlegen von padding oder border",
|
||||
"scss.lint.compatibleVendorPrefixes.desc": "Stellen Sie beim Verwenden vom anbieterspezifischen Präfix sicher, dass alle anderen anbieterspezifischen Eigenschaften miteinbezogen werden",
|
||||
|
||||
@@ -3,4 +3,6 @@
|
||||
* Licensed under the MIT License. See License.txt in the project root for license information.
|
||||
*--------------------------------------------------------------------------------------------*/
|
||||
// Do not edit this file. It is machine generated.
|
||||
{}
|
||||
{
|
||||
"execFailed": "Fehler bei der automatischen Grunt-Erkennung für den Ordner {0}. Fehlermeldung: {1}"
|
||||
}
|
||||
@@ -3,4 +3,6 @@
|
||||
* Licensed under the MIT License. See License.txt in the project root for license information.
|
||||
*--------------------------------------------------------------------------------------------*/
|
||||
// Do not edit this file. It is machine generated.
|
||||
{}
|
||||
{
|
||||
"execFailed": "Fehler bei der automatischen Gulp-Erkennung für den Ordner {0}. Fehlermeldung: {1}"
|
||||
}
|
||||
@@ -3,4 +3,6 @@
|
||||
* Licensed under the MIT License. See License.txt in the project root for license information.
|
||||
*--------------------------------------------------------------------------------------------*/
|
||||
// Do not edit this file. It is machine generated.
|
||||
{}
|
||||
{
|
||||
"execFailed": "Fehler bei der automatischen Jake-Erkennung für den Ordner {0}. Fehlermeldung: {1}"
|
||||
}
|
||||
@@ -4,5 +4,6 @@
|
||||
*--------------------------------------------------------------------------------------------*/
|
||||
// Do not edit this file. It is machine generated.
|
||||
{
|
||||
"onPreviewStyleLoadError": "'markdown.styles' konnte nicht geladen werden: {0}"
|
||||
"onPreviewStyleLoadError": "'markdown.styles' konnte nicht geladen werden: {0}",
|
||||
"previewTitle": "Vorschau von {0}"
|
||||
}
|
||||
@@ -175,6 +175,8 @@
|
||||
"miRunningTask": "Aktive Auf&&gaben anzeigen...",
|
||||
"miRestartTask": "Aktuell&&e Aufgabe neu starten...",
|
||||
"miTerminateTask": "&&Aufgabe beenden...",
|
||||
"miConfigureTask": "Aufgaben &&konfigurieren...",
|
||||
"miConfigureBuildTask": "Standardbuildaufgabe kon&&figurieren...",
|
||||
"accessibilityOptionsWindowTitle": "Optionen für erleichterte Bedienung",
|
||||
"miRestartToUpdate": "Zum Aktualisieren neu starten...",
|
||||
"miCheckingForUpdates": "Überprüfen auf Updates...",
|
||||
|
||||
@@ -17,6 +17,8 @@
|
||||
"open": "Öffnen",
|
||||
"openFolder": "Ordner öffnen",
|
||||
"openFile": "Datei öffnen",
|
||||
"workspaceOpenedMessage": "Der Arbeitsbereich \"{0}\" kann nicht gespeichert werden.",
|
||||
"workspaceOpenedDetail": "Der Arbeitsbereich ist bereits in einem anderen Fenster geöffnet. Schließen Sie zuerst das andere Fenster, und versuchen Sie anschließend noch mal.",
|
||||
"openWorkspace": "&&Öffnen",
|
||||
"openWorkspaceTitle": "Arbeitsbereich öffnen",
|
||||
"save": "&&Speichern",
|
||||
|
||||
@@ -8,6 +8,6 @@
|
||||
"hintn1": "{0} Formatierungen in Zeile {1} vorgenommen",
|
||||
"hint1n": "1 Formatierung zwischen Zeilen {0} und {1} vorgenommen",
|
||||
"hintnn": "{0} Formatierungen zwischen Zeilen {1} und {2} vorgenommen",
|
||||
"formatDocument.label": "Format Document",
|
||||
"formatSelection.label": "Format Selection"
|
||||
"formatDocument.label": "Dokument formatieren",
|
||||
"formatSelection.label": "Auswahl formatieren"
|
||||
}
|
||||
@@ -9,5 +9,6 @@
|
||||
"markerAction.previous.label": "Gehe zum vorherigen Fehler oder zur vorherigen Warnung",
|
||||
"editorMarkerNavigationError": "Editormarkierung: Farbe bei Fehler des Navigationswidgets.",
|
||||
"editorMarkerNavigationWarning": "Editormarkierung: Farbe bei Warnung des Navigationswidgets.",
|
||||
"editorMarkerNavigationInfo": "Editormarkierung: Farbe bei Warnung des Navigationswidgets.",
|
||||
"editorMarkerNavigationBackground": "Editormarkierung: Hintergrund des Navigationswidgets."
|
||||
}
|
||||
@@ -20,6 +20,7 @@
|
||||
"menus.editorTabContext": "Das Kontextmenü für die Editor-Registerkarten",
|
||||
"menus.debugCallstackContext": "Das Kontextmenü für den Debug-Callstack",
|
||||
"menus.scmTitle": "Das Titelmenü der Quellcodeverwaltung",
|
||||
"menus.scmSourceControl": "Das Menü \"Quellcodeverwaltung\"",
|
||||
"menus.resourceGroupContext": "Das Ressourcengruppen-Kontextmenü der Quellcodeverwaltung",
|
||||
"menus.resourceStateContext": "Das Ressourcenstatus-Kontextmenü der Quellcodeverwaltung",
|
||||
"view.viewTitle": "Das beigetragene Editor-Titelmenü.",
|
||||
|
||||
@@ -6,6 +6,7 @@
|
||||
{
|
||||
"invalidManifest": "Die Erweiterung ist ungültig: \"package.json\" ist keine JSON-Datei.",
|
||||
"restartCodeLocal": "Bitte starten Sie Code vor der Neuinstallation von {0} neu.",
|
||||
"restartCodeGallery": "Bitte vor der Neuinstallation VSCode neu starten.",
|
||||
"uninstallDependeciesConfirmation": "Möchten Sie nur \"{0}\" oder auch die zugehörigen Abhängigkeiten deinstallieren?",
|
||||
"uninstallOnly": "Nur",
|
||||
"uninstallAll": "Alle",
|
||||
|
||||
@@ -15,5 +15,6 @@
|
||||
"invalid.default.colorType": "{0} muss entweder eine Farbe als Hex-Code (#RRGGBB[AA] oder #RGB[A]) sein oder der Bezeichner einer verwendbaren Farbe, der eine Standardeinstellung bereitstellt.",
|
||||
"invalid.id": "\"configuration.colors.id\" muss definiert und nicht leer sein",
|
||||
"invalid.id.format": "\"configuration.colors.id\" muss auf das Wort[.word]* folgen",
|
||||
"invalid.description": "\"configuration.colors.description\" muss definiert und darf nicht leer sein",
|
||||
"invalid.defaults": "\"configuration.colors.defaults\" muss definiert sein, und \"light\", \"dark\" und \"highContrast\" enthalten"
|
||||
}
|
||||
@@ -13,5 +13,7 @@
|
||||
"vscode.extension.contributes.views": "Trägt Ansichten zum Editor bei.",
|
||||
"views.explorer": "Explorer-Ansicht",
|
||||
"views.debug": "Debugansicht",
|
||||
"locationId.invalid": "{0}\" ist kein gültiger Ansichtenspeicherort"
|
||||
"locationId.invalid": "{0}\" ist kein gültiger Ansichtenspeicherort",
|
||||
"duplicateView1": "Mehrere Ansichten können nicht mit derselben ID \"{0}\" am Speicherort \"{1}\" registriert werden.",
|
||||
"duplicateView2": "Eine Ansicht mit der ID \"{0}\" ist am Speicherort \"{1}\" bereits registriert."
|
||||
}
|
||||
Loaded 100 of 477 files, more files were not shown because too many files have changed in this diff.
Show more
Reference in new issue
Block a user