Compare commits

...
38 Commits
Author SHA1 Message Date
Sean McManus 2ad35c83c0 Add IntelliSense crashed string and update changelog (#6674)
* Add IntelliSense crashed string.
* Update changelog.
2020-12-21 13:04:06 -08:00
Elaheh Rashedi 72c9f2115e change master to main (#6679)
* change master to main

* master to main
2020-12-17 16:04:38 -08:00
Colen Garoutte-Carson 805f884b17 Handle inactive regions when determining folding ranges (#6667) 2020-12-14 16:22:31 -08:00
Elaheh Rashedi 26726df578 check for valid user compiler path (#6606)
* valid user compiler path

* fix lint error
2020-12-14 13:48:17 -08:00
csigs b7a0279352 Localization - Translated Strings (#6664) 2020-12-14 12:45:24 -08:00
dependabot[bot] f724ae8912 Bump ini from 1.3.5 to 1.3.7 in /Extension (#6653)
Bumps [ini](https://github.com/isaacs/ini) from 1.3.5 to 1.3.7.
- [Release notes](https://github.com/isaacs/ini/releases)
- [Commits](https://github.com/isaacs/ini/compare/v1.3.5...v1.3.7)

Signed-off-by: dependabot[bot] <[email protected]>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2020-12-11 15:09:06 -08:00
Sean McManus ab55557ddb Cache call to which.sync('clang-format') (#6645) 2020-12-08 19:25:46 -08:00
Michelle Matias c70dc9e93b Separate "investigate costing" and "investigate" for debugger issue workflows (#6646) 2020-12-08 16:41:21 -08:00
Michelle Matias 0aaf0c5af4 Fix yaml syntax for GitHub actions (#6644) 2020-12-08 15:58:50 -08:00
Michelle Matias 29ff9be9f7 add GitHub actions for debugger issues (#6637) 2020-12-08 13:23:58 -08:00
Sean McManus 52469738d3 Update TPN. (#6529)
* Update TPN.
2020-12-04 13:26:52 -08:00
Sean McManus 8dd2efd090 Merge pull request #6601 from xymeng16/master
Allow extension's x64 binaries to run on Apple Silicon x64 emulator
2020-12-03 17:20:43 -08:00
Sean McManus 07683b02fe Merge branch 'master' into master 2020-12-03 16:13:41 -08:00
Sean McManus a0a7d5b678 Add dependencies for TPN generation. (#6621) 2020-12-03 16:13:15 -08:00
Sean McManus 3e34ba2227 Fix cwd. (#6619)
Fixes #6618
2020-12-03 14:00:20 -08:00
Colen Garoutte-Carson 08a28c3fd5 Add field to activation telemetry for web-based Codespaces (#6609) 2020-12-02 12:22:40 -08:00
Xiangyi Meng 95ae82ff5c Merge branch 'master' into master 2020-12-02 15:08:05 +08:00
Sean McManus 94294dd372 Fix infinite loop after cpptools crashes. (#6604)
* Fix infinite loop after cpptools crashes: https://github.com/microsoft/vscode-cpptools/issues/6603
2020-12-01 15:50:24 -08:00
Sean McManus 61e98c0e0d Fix cppbuild task warnings. (#6557)
* Fix cppbuild task warnings: https://github.com/microsoft/vscode-cpptools/issues/6556
2020-12-01 14:22:59 -08:00
Xiangyi Meng bb910aa280 Add support to Apple Silicon 2020-12-01 20:17:23 +08:00
Sean McManus a6c7ffd8f5 Update a loc string. (#6577) 2020-11-25 20:30:57 -08:00
Elaheh Rashedi 4c2124ebf4 Add localization to strings in LanguageServer\cppBuildTaskProvider.ts (#6544)
* localizing for task provider

* localize single_file_mode_not_available

* remove end of line from localalized string

* modify error(s)

* remove space from localized string

* remove space from localized string
2020-11-25 15:13:31 -08:00
Sean McManus aefe53cab1 Update IntelliSense strings. (#6528) 2020-11-20 12:31:25 -08:00
Sean McManus ce3d3fa403 Fix build task bugs. (#6539)
* Fix build task bugs.
* Use VS Code's variable resolution.
2020-11-19 16:09:03 -08:00
Colen Garoutte-Carson 55a9117ecf Remove telemetry for remoteName (#6537) 2020-11-18 12:54:16 -08:00
guntern e5d08d2a9e fixed problemmatcher regexp (#6490)
* fixed problemmatcher regexp so that it should work with compilers not printing the column
Co-authored-by: guntern <[email protected]>
2020-11-17 14:21:23 -08:00
csigsandazure-pipelines[bot] 3194b10e62 Localization - Translated Strings (#6533)
Co-authored-by: azure-pipelines[bot] <azure-pipelines[bot]@users.noreply.github.com>
2020-11-17 11:39:46 -08:00
Colen Garoutte-Carson 12c653fa7b Do not prompt Web-based Codespaces users to join Insiders (#6513) 2020-11-16 14:34:24 -08:00
csigsandazure-pipelines[bot] 0c32d707ab Localization - Translated Strings (#6523)
Co-authored-by: azure-pipelines[bot] <azure-pipelines[bot]@users.noreply.github.com>
2020-11-16 12:44:47 -08:00
Colen Garoutte-Carson b4e2a8457f Automatically fall back to config provider (#6504) 2020-11-13 14:29:02 -08:00
csigs f6d7577688 Localization - Translated Strings (#6499) 2020-11-11 12:54:47 -08:00
Colen Garoutte-Carson c026a827c6 Replace uses of 'probe' with 'query' (#6495) 2020-11-10 18:57:09 -08:00
Sean McManus 55421659dc Remove symbol_add_failed. (#6493)
* Remove unused strings.
2020-11-10 17:15:28 -08:00
Sean McManus 1a718f3f0e Fix fileDirname. (#6482) 2020-11-10 15:12:12 -08:00
Colen Garoutte-Carson 68078182bf Command to generate .editorconfig file (#6415) 2020-11-10 13:22:48 -08:00
Colen Garoutte-Carson 7bcbea62e9 Replace uses of process.env.HOME with os.homedir() (#6479) 2020-11-10 13:10:58 -08:00
csigs ec66642c60 Localization - Translated Strings (#6487) 2020-11-10 11:58:44 -08:00
Colen Garoutte-Carson 4119b6c263 Add string for log message regarding compiler probeability (#6463) 2020-11-09 21:45:17 -08:00
110 changed files with 2214 additions and 970 deletions
+105 -105
View File
@@ -1,106 +1,106 @@
"use strict";
/*---------------------------------------------------------------------------------------------
* Copyright (c) Microsoft Corporation. All rights reserved.
* Licensed under the MIT License. See LICENSE in the project root for license information.
*--------------------------------------------------------------------------------------------*/
Object.defineProperty(exports, "__esModule", { value: true });
exports.StaleCloser = void 0;
const ActionBase_1 = require("../common/ActionBase");
const utils_1 = require("../common/utils");
class StaleCloser extends ActionBase_1.ActionBase {
constructor(github, closeDays, labels, closeComment, pingDays, pingComment, additionalTeam, addLabels, removeLabels, setMilestoneId, milestoneName, milestoneId, ignoreLabels, ignoreMilestoneNames, ignoreMilestoneIds, minimumVotes, maximumVotes) {
super(labels, milestoneName, milestoneId, ignoreLabels, ignoreMilestoneNames, ignoreMilestoneIds, minimumVotes, maximumVotes);
this.github = github;
this.closeDays = closeDays;
this.closeComment = closeComment;
this.pingDays = pingDays;
this.pingComment = pingComment;
this.additionalTeam = additionalTeam;
this.addLabels = addLabels;
this.removeLabels = removeLabels;
this.setMilestoneId = setMilestoneId;
}
async run() {
const updatedTimestamp = utils_1.daysAgoToHumanReadbleDate(this.closeDays);
const pingTimestamp = this.pingDays ? utils_1.daysAgoToTimestamp(this.pingDays) : undefined;
const query = this.buildQuery((this.closeDays ? `updated:<${updatedTimestamp} ` : "") + "is:open is:unlocked");
const addLabelsSet = this.addLabels ? this.addLabels.split(',') : [];
const removeLabelsSet = this.removeLabels ? this.removeLabels.split(',') : [];
for await (const page of this.github.query({ q: query })) {
for (const issue of page) {
const hydrated = await issue.getIssue();
const lastCommentIterator = await issue.getComments(true).next();
if (lastCommentIterator.done) {
throw Error('Unexpected comment data');
}
const lastComment = lastCommentIterator.value[0];
if (hydrated.open && this.validateIssue(hydrated)
// TODO: Verify updated timestamp
) {
if (!lastComment ||
lastComment.author.isGitHubApp ||
pingTimestamp == undefined ||
// TODO: List the collaborators once per go rather than checking a single user each issue
this.additionalTeam.includes(lastComment.author.name) ||
await issue.hasWriteAccess(lastComment.author)) {
if (pingTimestamp != undefined) {
if (lastComment) {
console.log(`Last comment on issue ${hydrated.number} by ${lastComment.author.name}. Closing.`);
}
else {
console.log(`No comments on issue ${hydrated.number}. Closing.`);
}
}
if (this.closeComment) {
console.log(`Posting comment on issue ${hydrated.number}`);
await issue.postComment(this.closeComment);
}
if (removeLabelsSet.length > 0) {
for (const removeLabel of removeLabelsSet) {
if (removeLabel && removeLabel.length > 0) {
console.log(`Removing label on issue ${hydrated.number}: ${removeLabel}`);
await issue.removeLabel(removeLabel);
}
}
}
if (addLabelsSet.length > 0) {
for (const addLabel of addLabelsSet) {
if (addLabel && addLabel.length > 0) {
console.log(`Adding label on issue ${hydrated.number}: ${addLabel}`);
await issue.addLabel(addLabel);
}
}
}
await issue.closeIssue();
if (this.setMilestoneId != undefined) {
console.log(`Setting milestone of issue ${hydrated.number} to id ${+this.setMilestoneId}`);
await issue.setMilestone(+this.setMilestoneId);
}
console.log(`Closing issue ${hydrated.number}.`);
}
else {
// Ping
if (hydrated.updatedAt < pingTimestamp && hydrated.assignee) {
console.log(`Last comment on issue ${hydrated.number} by ${lastComment.author.name}. Pinging @${hydrated.assignee}`);
if (this.pingComment) {
await issue.postComment(this.pingComment
.replace('${assignee}', hydrated.assignee)
.replace('${author}', hydrated.author.name));
}
}
else {
console.log(`Last comment on issue ${hydrated.number} by ${lastComment.author.name}. Skipping.${hydrated.assignee ? ' cc @' + hydrated.assignee : ''}`);
}
}
}
else {
if (!hydrated.open) {
console.log(`Issue ${hydrated.number} is not open. Ignoring`);
}
}
}
}
}
}
exports.StaleCloser = StaleCloser;
"use strict";
/*---------------------------------------------------------------------------------------------
* Copyright (c) Microsoft Corporation. All rights reserved.
* Licensed under the MIT License. See LICENSE in the project root for license information.
*--------------------------------------------------------------------------------------------*/
Object.defineProperty(exports, "__esModule", { value: true });
exports.StaleCloser = void 0;
const ActionBase_1 = require("../common/ActionBase");
const utils_1 = require("../common/utils");
class StaleCloser extends ActionBase_1.ActionBase {
constructor(github, closeDays, labels, closeComment, pingDays, pingComment, additionalTeam, addLabels, removeLabels, setMilestoneId, milestoneName, milestoneId, ignoreLabels, ignoreMilestoneNames, ignoreMilestoneIds, minimumVotes, maximumVotes, involves) {
super(labels, milestoneName, milestoneId, ignoreLabels, ignoreMilestoneNames, ignoreMilestoneIds, minimumVotes, maximumVotes, involves);
this.github = github;
this.closeDays = closeDays;
this.closeComment = closeComment;
this.pingDays = pingDays;
this.pingComment = pingComment;
this.additionalTeam = additionalTeam;
this.addLabels = addLabels;
this.removeLabels = removeLabels;
this.setMilestoneId = setMilestoneId;
}
async run() {
const updatedTimestamp = utils_1.daysAgoToHumanReadbleDate(this.closeDays);
const pingTimestamp = this.pingDays ? utils_1.daysAgoToTimestamp(this.pingDays) : undefined;
const query = this.buildQuery((this.closeDays ? `updated:<${updatedTimestamp} ` : "") + "is:open is:unlocked");
const addLabelsSet = this.addLabels ? this.addLabels.split(',') : [];
const removeLabelsSet = this.removeLabels ? this.removeLabels.split(',') : [];
for await (const page of this.github.query({ q: query })) {
for (const issue of page) {
const hydrated = await issue.getIssue();
const lastCommentIterator = await issue.getComments(true).next();
if (lastCommentIterator.done) {
throw Error('Unexpected comment data');
}
const lastComment = lastCommentIterator.value[0];
if (hydrated.open && this.validateIssue(hydrated)
// TODO: Verify updated timestamp
) {
if (!lastComment ||
lastComment.author.isGitHubApp ||
pingTimestamp == undefined ||
// TODO: List the collaborators once per go rather than checking a single user each issue
this.additionalTeam.includes(lastComment.author.name) ||
await issue.hasWriteAccess(lastComment.author)) {
if (pingTimestamp != undefined) {
if (lastComment) {
console.log(`Last comment on issue ${hydrated.number} by ${lastComment.author.name}. Closing.`);
}
else {
console.log(`No comments on issue ${hydrated.number}. Closing.`);
}
}
if (this.closeComment) {
console.log(`Posting comment on issue ${hydrated.number}`);
await issue.postComment(this.closeComment);
}
if (removeLabelsSet.length > 0) {
for (const removeLabel of removeLabelsSet) {
if (removeLabel && removeLabel.length > 0) {
console.log(`Removing label on issue ${hydrated.number}: ${removeLabel}`);
await issue.removeLabel(removeLabel);
}
}
}
if (addLabelsSet.length > 0) {
for (const addLabel of addLabelsSet) {
if (addLabel && addLabel.length > 0) {
console.log(`Adding label on issue ${hydrated.number}: ${addLabel}`);
await issue.addLabel(addLabel);
}
}
}
await issue.closeIssue();
if (this.setMilestoneId != undefined) {
console.log(`Setting milestone of issue ${hydrated.number} to id ${+this.setMilestoneId}`);
await issue.setMilestone(+this.setMilestoneId);
}
console.log(`Closing issue ${hydrated.number}.`);
}
else {
// Ping
if (hydrated.updatedAt < pingTimestamp && hydrated.assignee) {
console.log(`Last comment on issue ${hydrated.number} by ${lastComment.author.name}. Pinging @${hydrated.assignee}`);
if (this.pingComment) {
await issue.postComment(this.pingComment
.replace('${assignee}', hydrated.assignee)
.replace('${author}', hydrated.author.name));
}
}
else {
console.log(`Last comment on issue ${hydrated.number} by ${lastComment.author.name}. Skipping.${hydrated.assignee ? ' cc @' + hydrated.assignee : ''}`);
}
}
}
else {
if (!hydrated.open) {
console.log(`Issue ${hydrated.number} is not open. Ignoring`);
}
}
}
}
}
}
exports.StaleCloser = StaleCloser;
//# sourceMappingURL=StaleCloser.js.map
+3 -2
View File
@@ -25,10 +25,11 @@ export class StaleCloser extends ActionBase {
ignoreMilestoneNames?: string,
ignoreMilestoneIds?: string,
minimumVotes?: number,
maximumVotes?: number
maximumVotes?: number,
involves?: string
)
{
super(labels, milestoneName, milestoneId, ignoreLabels, ignoreMilestoneNames, ignoreMilestoneIds, minimumVotes, maximumVotes);
super(labels, milestoneName, milestoneId, ignoreLabels, ignoreMilestoneNames, ignoreMilestoneIds, minimumVotes, maximumVotes, involves);
}
async run() {
+2
View File
@@ -38,6 +38,8 @@ inputs:
descriptions: Only issues with at least this many votes will be considered.
maximumVotes:
descriptions: Only issues fewer or equal to this many votes will be considered.
involves:
descriptions: Qualifier to find issues that in some way involve a certain user either as an author, assignee, or mentions.
readonly:
description: If true, changes are not applied.
runs:
+20 -20
View File
@@ -1,21 +1,21 @@
"use strict";
/*---------------------------------------------------------------------------------------------
* Copyright (c) Microsoft Corporation. All rights reserved.
* Licensed under the MIT License. See LICENSE in the project root for license information.
*--------------------------------------------------------------------------------------------*/
Object.defineProperty(exports, "__esModule", { value: true });
const utils_1 = require("../common/utils");
const StaleCloser_1 = require("./StaleCloser");
const Action_1 = require("../common/Action");
class StaleCloserAction extends Action_1.Action {
constructor() {
super(...arguments);
this.id = 'StaleCloser';
}
async onTriggered(github) {
var _a;
await new StaleCloser_1.StaleCloser(github, +utils_1.getRequiredInput('closeDays'), utils_1.getRequiredInput('labels'), utils_1.getInput('closeComment') || '', +(utils_1.getInput('pingDays') || 0), utils_1.getInput('pingComment') || '', ((_a = utils_1.getInput('additionalTeam')) !== null && _a !== void 0 ? _a : '').split(','), utils_1.getInput('addLabels') || undefined, utils_1.getInput('removeLabels') || undefined, utils_1.getInput('setMilestoneId') || undefined, utils_1.getInput('milestoneName') || undefined, utils_1.getInput('milestoneId') || undefined, utils_1.getInput('ignoreLabels') || undefined, utils_1.getInput('ignoreMilestoneNames') || undefined, utils_1.getInput('ignoreMilestoneIds') || undefined, +(utils_1.getInput('minimumVotes') || 0), +(utils_1.getInput('maximumVotes') || 9999999)).run();
}
}
new StaleCloserAction().run(); // eslint-disable-line
"use strict";
/*---------------------------------------------------------------------------------------------
* Copyright (c) Microsoft Corporation. All rights reserved.
* Licensed under the MIT License. See LICENSE in the project root for license information.
*--------------------------------------------------------------------------------------------*/
Object.defineProperty(exports, "__esModule", { value: true });
const utils_1 = require("../common/utils");
const StaleCloser_1 = require("./StaleCloser");
const Action_1 = require("../common/Action");
class StaleCloserAction extends Action_1.Action {
constructor() {
super(...arguments);
this.id = 'StaleCloser';
}
async onTriggered(github) {
var _a;
await new StaleCloser_1.StaleCloser(github, +utils_1.getRequiredInput('closeDays'), utils_1.getRequiredInput('labels'), utils_1.getInput('closeComment') || '', +(utils_1.getInput('pingDays') || 0), utils_1.getInput('pingComment') || '', ((_a = utils_1.getInput('additionalTeam')) !== null && _a !== void 0 ? _a : '').split(','), utils_1.getInput('addLabels') || undefined, utils_1.getInput('removeLabels') || undefined, utils_1.getInput('setMilestoneId') || undefined, utils_1.getInput('milestoneName') || undefined, utils_1.getInput('milestoneId') || undefined, utils_1.getInput('ignoreLabels') || undefined, utils_1.getInput('ignoreMilestoneNames') || undefined, utils_1.getInput('ignoreMilestoneIds') || undefined, +(utils_1.getInput('minimumVotes') || 0), +(utils_1.getInput('maximumVotes') || 9999999), utils_1.getInput('involves') || undefined).run();
}
}
new StaleCloserAction().run(); // eslint-disable-line
//# sourceMappingURL=index.js.map
+2 -1
View File
@@ -29,7 +29,8 @@ class StaleCloserAction extends Action {
getInput('ignoreMilestoneNames') || undefined,
getInput('ignoreMilestoneIds') || undefined,
+(getInput('minimumVotes') || 0),
+(getInput('maximumVotes') || 9999999)
+(getInput('maximumVotes') || 9999999),
getInput('involves') || undefined
).run()
}
}
+180 -164
View File
@@ -1,165 +1,181 @@
"use strict";
/*---------------------------------------------------------------------------------------------
* Copyright (c) Microsoft Corporation. All rights reserved.
* Licensed under the MIT License. See LICENSE in the project root for license information.
*--------------------------------------------------------------------------------------------*/
Object.defineProperty(exports, "__esModule", { value: true });
exports.ActionBase = void 0;
class ActionBase {
constructor(labels, milestoneName, milestoneId, ignoreLabels, ignoreMilestoneNames, ignoreMilestoneIds, minimumVotes, maximumVotes) {
this.labels = labels;
this.milestoneName = milestoneName;
this.milestoneId = milestoneId;
this.ignoreLabels = ignoreLabels;
this.ignoreMilestoneNames = ignoreMilestoneNames;
this.ignoreMilestoneIds = ignoreMilestoneIds;
this.minimumVotes = minimumVotes;
this.maximumVotes = maximumVotes;
this.labelsSet = [];
this.ignoreLabelsSet = [];
this.ignoreMilestoneNamesSet = [];
this.ignoreMilestoneIdsSet = [];
this.ignoreAllWithLabels = false;
this.ignoreAllWithMilestones = false;
}
buildQuery(baseQuery) {
var _a, _b;
let query = baseQuery;
console.log(`labels: ${this.labels}`);
console.log(`milestoneName: ${this.milestoneName}`);
console.log(`milestoneId: ${this.milestoneId}`);
console.log(`ignoreLabels: ${this.ignoreLabels}`);
console.log(`ignoreMilestoneNames: ${this.ignoreMilestoneNames}`);
console.log(`ignoreMilestoneIds: ${this.ignoreMilestoneIds}`);
console.log(`minimumVotes: ${this.minimumVotes}`);
console.log(`maximumVotes: ${this.maximumVotes}`);
// Both milestone name and milestone Id must be provided and must match.
// The name is used to construct the query, which does not accept ID.
// The ID is used for comparisons with issue data, which does not include the name.
// TODO: Figure out a way to convert either from milestone name to ID, or vice versa.
// If label inclusion and exclusion are mixed, exclusion will take precedence.
// For example, an issue with both labels A and B will not match if B is excluded, even if A is included.
// If a milestoneName/milestoneId are set, ignoreMilenameName/ignoreMilestoneIds are ignored.
// GitHub does not appear to support searching for all issues with milestones (not lacking a milestone). "-no:milestone" does not work.
// GitHub does not appear to support searching for all issues with labels (not lacking a label). "-no:label" does not work.
// All indicated labels must be present
if (this.labels) {
this.labelsSet = (_a = this.labels) === null || _a === void 0 ? void 0 : _a.split(',');
for (const str of this.labelsSet) {
if (str != "") {
query = query.concat(` label:"${str}"`);
}
}
}
if (this.ignoreLabels) {
if (this.ignoreLabels == "*" && !this.labels) { // only if unlabeled
query = query.concat(` no:label`);
this.ignoreAllWithLabels = true;
}
else {
this.ignoreLabelsSet = (_b = this.ignoreLabels) === null || _b === void 0 ? void 0 : _b.split(',');
for (const str of this.ignoreLabelsSet) {
if (str != "") {
query = query.concat(` -label:"${str}"`);
}
}
}
}
if (this.milestoneName) {
query = query.concat(` milestone:"${this.milestoneName}"`);
}
else if (this.ignoreMilestoneNames) {
if (this.ignoreMilestoneNames == "*") {
query = query.concat(` no:milestone`);
this.ignoreAllWithMilestones = true;
}
else if (this.ignoreMilestoneIds) {
this.ignoreMilestoneNamesSet = this.ignoreMilestoneNames.split(',');
this.ignoreMilestoneIdsSet = this.ignoreMilestoneIds.split(',');
for (const str of this.ignoreMilestoneNamesSet) {
if (str != "") {
query = query.concat(` -milestone:"${str}"`);
}
}
}
}
return query;
}
// This is necessary because GitHub sometimes returns incorrect results,
// and because issues may get modified while we are processing them.
validateIssue(issue) {
if (this.ignoreAllWithLabels) {
// Validate that the issue does not have labels
if (issue.labels && issue.labels.length !== 0) {
console.log(`Issue ${issue.number} skipped due to label found after querying for no:label.`);
return false;
}
}
else {
// Make sure all labels we wanted are present.
if ((!issue.labels || issue.labels.length == 0) && this.labelsSet.length > 0) {
console.log(`Issue ${issue.number} skipped due to not having a required label set. No labels found.`);
return false;
}
for (const str of this.labelsSet) {
if (!issue.labels.includes(str)) {
console.log(`Issue ${issue.number} skipped due to not having a required label set.`);
return false;
}
}
// Make sure no labels we wanted to ignore are present.
if (issue.labels && issue.labels.length > 0) {
for (const str of this.ignoreLabelsSet) {
if (issue.labels.includes(str)) {
console.log(`Issue ${issue.number} skipped due to having an ignore label set: ${str}`);
return false;
}
}
}
}
if (this.ignoreAllWithMilestones) {
// Validate that the issue does not have a milestone.
if (issue.milestoneId != null) {
console.log(`Issue ${issue.number} skipped due to milestone found after querying for no:milestone.`);
return false;
}
}
else {
// Make sure milestone is present, if required.
if (this.milestoneId != undefined && issue.milestoneId != +this.milestoneId) {
console.log(`Issue ${issue.number} skipped due to not having required milsetone id ${this.milestoneId}. Had: ${issue.milestoneId}`);
return false;
}
// Make sure a milestones we wanted to ignore is not present.
if (issue.milestoneId != null) {
for (const str of this.ignoreMilestoneIdsSet) {
if (issue.milestoneId == +str) {
console.log(`Issue ${issue.number} skipped due to milestone ${issue.milestoneId} found in list of ignored milestone IDs.`);
return false;
}
}
}
}
// Verify the issue has a sufficient number of upvotes
let upvotes = 0;
if (issue.reactions) {
upvotes = issue.reactions['+1'];
}
if (this.minimumVotes != undefined) {
if (upvotes < this.minimumVotes) {
console.log(`Issue ${issue.number} skipped due to not having at least ${this.minimumVotes} upvotes. Had: ${upvotes}`);
return false;
}
}
// Verify the issue does not have too many upvotes
if (this.maximumVotes != undefined) {
if (upvotes > this.maximumVotes) {
console.log(`Issue ${issue.number} skipped due to having more than ${this.maximumVotes} upvotes. Had: ${upvotes}`);
return false;
}
}
return true;
}
}
exports.ActionBase = ActionBase;
"use strict";
/*---------------------------------------------------------------------------------------------
* Copyright (c) Microsoft Corporation. All rights reserved.
* Licensed under the MIT License. See LICENSE in the project root for license information.
*--------------------------------------------------------------------------------------------*/
Object.defineProperty(exports, "__esModule", { value: true });
exports.ActionBase = void 0;
class ActionBase {
constructor(labels, milestoneName, milestoneId, ignoreLabels, ignoreMilestoneNames, ignoreMilestoneIds, minimumVotes, maximumVotes, involves) {
this.labels = labels;
this.milestoneName = milestoneName;
this.milestoneId = milestoneId;
this.ignoreLabels = ignoreLabels;
this.ignoreMilestoneNames = ignoreMilestoneNames;
this.ignoreMilestoneIds = ignoreMilestoneIds;
this.minimumVotes = minimumVotes;
this.maximumVotes = maximumVotes;
this.involves = involves;
this.labelsSet = [];
this.ignoreLabelsSet = [];
this.ignoreMilestoneNamesSet = [];
this.ignoreMilestoneIdsSet = [];
this.ignoreAllWithLabels = false;
this.ignoreAllWithMilestones = false;
this.involvesSet = [];
}
buildQuery(baseQuery) {
var _a, _b, _c, _d, _e, _f;
let query = baseQuery;
console.log(`labels: ${this.labels}`);
console.log(`milestoneName: ${this.milestoneName}`);
console.log(`milestoneId: ${this.milestoneId}`);
console.log(`ignoreLabels: ${this.ignoreLabels}`);
console.log(`ignoreMilestoneNames: ${this.ignoreMilestoneNames}`);
console.log(`ignoreMilestoneIds: ${this.ignoreMilestoneIds}`);
console.log(`minimumVotes: ${this.minimumVotes}`);
console.log(`maximumVotes: ${this.maximumVotes}`);
console.log(`involves: ${this.involves}`);
// Both milestone name and milestone Id must be provided and must match.
// The name is used to construct the query, which does not accept ID.
// The ID is used for comparisons with issue data, which does not include the name.
// TODO: Figure out a way to convert either from milestone name to ID, or vice versa.
// If label inclusion and exclusion are mixed, exclusion will take precedence.
// For example, an issue with both labels A and B will not match if B is excluded, even if A is included.
// If a milestoneName/milestoneId are set, ignoreMilenameName/ignoreMilestoneIds are ignored.
// GitHub does not appear to support searching for all issues with milestones (not lacking a milestone). "-no:milestone" does not work.
// GitHub does not appear to support searching for all issues with labels (not lacking a label). "-no:label" does not work.
// All indicated labels must be present
if (this.labels) {
if (((_a = this.labels) === null || _a === void 0 ? void 0 : _a.length) > 2 && ((_b = this.labels) === null || _b === void 0 ? void 0 : _b.startsWith('"')) && ((_c = this.labels) === null || _c === void 0 ? void 0 : _c.endsWith('"'))) {
this.labels = this.labels.substring(1, this.labels.length - 2);
}
this.labelsSet = (_d = this.labels) === null || _d === void 0 ? void 0 : _d.split(',');
for (const str of this.labelsSet) {
if (str != "") {
query = query.concat(` label:"${str}"`);
}
}
}
// The "involves" qualifier to find issues that in some way involve a certain user.
// It is a logical OR between the author, assignee, and mentions.
if (this.involves) {
this.involvesSet = (_e = this.involves) === null || _e === void 0 ? void 0 : _e.split(',');
for (const str of this.involvesSet) {
if (str != "") {
query = query.concat(` involves:"${str}"`);
}
}
}
if (this.ignoreLabels) {
if (this.ignoreLabels == "*" && !this.labels) { // only if unlabeled
query = query.concat(` no:label`);
this.ignoreAllWithLabels = true;
}
else {
this.ignoreLabelsSet = (_f = this.ignoreLabels) === null || _f === void 0 ? void 0 : _f.split(',');
for (const str of this.ignoreLabelsSet) {
if (str != "") {
query = query.concat(` -label:"${str}"`);
}
}
}
}
if (this.milestoneName) {
query = query.concat(` milestone:"${this.milestoneName}"`);
}
else if (this.ignoreMilestoneNames) {
if (this.ignoreMilestoneNames == "*") {
query = query.concat(` no:milestone`);
this.ignoreAllWithMilestones = true;
}
else if (this.ignoreMilestoneIds) {
this.ignoreMilestoneNamesSet = this.ignoreMilestoneNames.split(',');
this.ignoreMilestoneIdsSet = this.ignoreMilestoneIds.split(',');
for (const str of this.ignoreMilestoneNamesSet) {
if (str != "") {
query = query.concat(` -milestone:"${str}"`);
}
}
}
}
return query;
}
// This is necessary because GitHub sometimes returns incorrect results,
// and because issues may get modified while we are processing them.
validateIssue(issue) {
if (this.ignoreAllWithLabels) {
// Validate that the issue does not have labels
if (issue.labels && issue.labels.length !== 0) {
console.log(`Issue ${issue.number} skipped due to label found after querying for no:label.`);
return false;
}
}
else {
// Make sure all labels we wanted are present.
if ((!issue.labels || issue.labels.length == 0) && this.labelsSet.length > 0) {
console.log(`Issue ${issue.number} skipped due to not having a required label set. No labels found.`);
return false;
}
for (const str of this.labelsSet) {
if (!issue.labels.includes(str)) {
console.log(`Issue ${issue.number} skipped due to not having a required label set.`);
return false;
}
}
// Make sure no labels we wanted to ignore are present.
if (issue.labels && issue.labels.length > 0) {
for (const str of this.ignoreLabelsSet) {
if (issue.labels.includes(str)) {
console.log(`Issue ${issue.number} skipped due to having an ignore label set: ${str}`);
return false;
}
}
}
}
if (this.ignoreAllWithMilestones) {
// Validate that the issue does not have a milestone.
if (issue.milestoneId != null) {
console.log(`Issue ${issue.number} skipped due to milestone found after querying for no:milestone.`);
return false;
}
}
else {
// Make sure milestone is present, if required.
if (this.milestoneId != undefined && issue.milestoneId != +this.milestoneId) {
console.log(`Issue ${issue.number} skipped due to not having required milsetone id ${this.milestoneId}. Had: ${issue.milestoneId}`);
return false;
}
// Make sure a milestones we wanted to ignore is not present.
if (issue.milestoneId != null) {
for (const str of this.ignoreMilestoneIdsSet) {
if (issue.milestoneId == +str) {
console.log(`Issue ${issue.number} skipped due to milestone ${issue.milestoneId} found in list of ignored milestone IDs.`);
return false;
}
}
}
}
// Verify the issue has a sufficient number of upvotes
let upvotes = 0;
if (issue.reactions) {
upvotes = issue.reactions['+1'];
}
if (this.minimumVotes != undefined) {
if (upvotes < this.minimumVotes) {
console.log(`Issue ${issue.number} skipped due to not having at least ${this.minimumVotes} upvotes. Had: ${upvotes}`);
return false;
}
}
// Verify the issue does not have too many upvotes
if (this.maximumVotes != undefined) {
if (upvotes > this.maximumVotes) {
console.log(`Issue ${issue.number} skipped due to having more than ${this.maximumVotes} upvotes. Had: ${upvotes}`);
return false;
}
}
return true;
}
}
exports.ActionBase = ActionBase;
//# sourceMappingURL=ActionBase.js.map
+19 -2
View File
@@ -14,7 +14,8 @@ export class ActionBase {
private ignoreMilestoneNames?: string,
private ignoreMilestoneIds?: string,
private minimumVotes?: number,
private maximumVotes?: number
private maximumVotes?: number,
private involves?: string,
) {}
private labelsSet: string[] = [];
@@ -23,6 +24,7 @@ export class ActionBase {
private ignoreMilestoneIdsSet: string[] = [];
private ignoreAllWithLabels: boolean = false;
private ignoreAllWithMilestones: boolean = false;
private involvesSet: string[] = [];
buildQuery(baseQuery: string): string {
let query = baseQuery;
@@ -35,6 +37,7 @@ export class ActionBase {
console.log(`ignoreMilestoneIds: ${this.ignoreMilestoneIds}`);
console.log(`minimumVotes: ${this.minimumVotes}`);
console.log(`maximumVotes: ${this.maximumVotes}`);
console.log(`involves: ${this.involves}`);
// Both milestone name and milestone Id must be provided and must match.
// The name is used to construct the query, which does not accept ID.
@@ -51,10 +54,24 @@ export class ActionBase {
// All indicated labels must be present
if (this.labels) {
if (this.labels?.length > 2 && this.labels?.startsWith('"') && this.labels?.endsWith('"')) {
this.labels = this.labels.substring(1, this.labels.length - 2);
}
this.labelsSet = this.labels?.split(',');
for (const str of this.labelsSet) {
if (str != "") {
query = query.concat(` label:"${str}"`)
query = query.concat(` label:"${str}"`);
}
}
}
// The "involves" qualifier to find issues that in some way involve a certain user.
// It is a logical OR between the author, assignee, and mentions.
if (this.involves) {
this.involvesSet = this.involves?.split(',');
for (const str of this.involvesSet) {
if (str != "") {
query = query.concat(` involves:"${str}"`)
}
}
}
@@ -0,0 +1,26 @@
name: By Design closer - debugger
on:
schedule:
- cron: 10 11 * * * # Run at 11:10 AM UTC (3:10 AM PST, 4:10 AM PDT)
workflow_dispatch:
inputs:
readonly:
description: "readonly: Specify true or 1 to prevent changes from being commited to GitHub"
default: false
jobs:
main:
runs-on: ubuntu-latest
steps:
- name: Checkout Actions
uses: actions/checkout@v2
- name: Install Actions
run: cd ./.github/actions && npm install --production && cd ../..
- name: Stale Closer
uses: ./.github/actions/StaleCloser
with:
readonly: ${{ github.event.inputs.readonly }}
labels: by design,debugger
ignoreLabels: language service,internal
closeDays: 0
closeComment: "This issue has been closed automatically because it's labeled as 'by design'."
+2 -2
View File
@@ -2,9 +2,9 @@ name: CI (Linux)
on:
push:
branches: [ master ]
branches: [ main ]
pull_request:
branches: [ master ]
branches: [ main ]
jobs:
build:
+2 -2
View File
@@ -2,9 +2,9 @@ name: CI (Mac)
on:
push:
branches: [ master ]
branches: [ main ]
pull_request:
branches: [ master ]
branches: [ main ]
jobs:
build:
+2 -2
View File
@@ -2,9 +2,9 @@ name: CI (Windows)
on:
push:
branches: [ master ]
branches: [ main ]
pull_request:
branches: [ master ]
branches: [ main ]
jobs:
build:
@@ -0,0 +1,26 @@
name: External closer - debugger
on:
schedule:
- cron: 10 11 * * * # Run at 11:10 AM UTC (3:10 AM PST, 4:10 AM PDT)
workflow_dispatch:
inputs:
readonly:
description: "readonly: Specify true or 1 to prevent changes from being commited to GitHub"
default: false
jobs:
main:
runs-on: ubuntu-latest
steps:
- name: Checkout Actions
uses: actions/checkout@v2
- name: Install Actions
run: cd ./.github/actions && npm install --production && cd ../..
- name: Stale Closer
uses: ./.github/actions/StaleCloser
with:
readonly: ${{ github.event.inputs.readonly }}
labels: external,debugger
ignoreLabels: language service,internal
closeDays: 0
closeComment: "This issue has been closed automatically because it's labeled as 'external'."
@@ -0,0 +1,26 @@
name: Investigate closer - debugger
on:
schedule:
- cron: 10 11 * * * # Run at 11:10 AM UTC (3:10 AM PST, 4:10 AM PDT)
workflow_dispatch:
inputs:
readonly:
description: "readonly: Specify true or 1 to prevent changes from being commited to GitHub"
default: false
jobs:
main:
runs-on: ubuntu-latest
steps:
- name: Checkout Actions
uses: actions/checkout@v2
- name: Install Actions
run: cd ./.github/actions && npm install --production && cd ../..
- name: Stale Closer
uses: ./.github/actions/StaleCloser
with:
readonly: ${{ github.event.inputs.readonly }}
labels: investigate,debugger
ignoreLabels: language service,internal
closeDays: 180
closeComment: "This issue has been closed automatically because it has not had recent activity."
@@ -0,0 +1,26 @@
name: Investigate Costing closer - debugger
on:
schedule:
- cron: 10 11 * * * # Run at 11:10 AM UTC (3:10 AM PST, 4:10 AM PDT)
workflow_dispatch:
inputs:
readonly:
description: "readonly: Specify true or 1 to prevent changes from being commited to GitHub"
default: false
jobs:
main:
runs-on: ubuntu-latest
steps:
- name: Checkout Actions
uses: actions/checkout@v2
- name: Install Actions
run: cd ./.github/actions && npm install --production && cd ../..
- name: Stale Closer
uses: ./.github/actions/StaleCloser
with:
readonly: ${{ github.event.inputs.readonly }}
labels: "investigate: costing,debugger"
ignoreLabels: language service,internal
closeDays: 180
closeComment: "This issue has been closed automatically because it has not had recent activity."
@@ -0,0 +1,29 @@
name: More Info Needed Closer - debugger
on:
schedule:
- cron: 10 11 * * * # Run at 11:10 AM UTC (3:10 AM PST, 4:10 AM PDT)
workflow_dispatch:
inputs:
readonly:
description: "readonly: Specify true or 1 to prevent changes from being commited to GitHub"
default: false
jobs:
main:
runs-on: ubuntu-latest
steps:
- name: Checkout Actions
uses: actions/checkout@v2
- name: Install Actions
run: cd ./.github/actions && npm install --production && cd ../..
- name: Stale Closer
uses: ./.github/actions/StaleCloser
with:
readonly: ${{ github.event.inputs.readonly }}
labels: more info needed,debugger
ignoreLabels: language service,internal
involves: wardengnaw,pieandcakes,calgagi
closeDays: 14
closeComment: "This issue has been closed automatically because it needs more information and has not had recent activity."
pingDays: 7
pingComment: "Hey @${assignee}, this issue might need further attention.\n\n@${author}, you can help us out by closing this issue if the problem no longer exists, or adding more information."
@@ -0,0 +1,29 @@
name: Question Closer - debugger
on:
schedule:
- cron: 20 11 * * * # Run at 11:20 AM UTC (3:20 AM PST, 4:20 AM PDT)
workflow_dispatch:
inputs:
readonly:
description: "readonly: Specify true or 1 to prevent changes from being commited to GitHub"
default: false
jobs:
main:
runs-on: ubuntu-latest
steps:
- name: Checkout Actions
uses: actions/checkout@v2
- name: Install Actions
run: cd ./.github/actions && npm install --production && cd ../..
- name: Stale Closer
uses: ./.github/actions/StaleCloser
with:
readonly: ${{ github.event.inputs.readonly }}
labels: question,debugger
ignoreLabels: language service,internal
involves: wardengnaw,pieandcakes,calgagi
closeDays: 14
closeComment: "This issue has been closed automatically because it's labeled as a 'question' and has not had recent activity."
pingDays: 7
pingComment: "Hey @${assignee}, this issue might need further attention.\n\n@${author}, you can help us out by closing this issue if the question has been answered."
+1 -1
View File
@@ -6,7 +6,7 @@ variables:
llvm_additional_parameters: "-DLLDB_RELOCATABLE_PYTHON=1 -DLLDB_INCLUDE_TESTS=OFF -DLLDB_BUILD_FRAMEWORK=1"
# TODO: fix lldb_mi_repo and lldb_mi_branch (https://github.com/lldb-tools/lldb-mi/pull/37 and https://github.com/lldb-tools/lldb-mi/pull/39)
lldb_mi_repo: https://github.com/WardenGnaw/lldb-mi # TODO: Change to lldb-tools
lldb_mi_branch: release/cpptools # TODO: Change to master
lldb_mi_branch: release/cpptools # TODO: Change to main
lldb_mi_additional_parameters: "-DUSE_LLDB_FRAMEWORK=1"
jobs:
+2 -2
View File
@@ -6,14 +6,14 @@
* File an [issue](https://github.com/Microsoft/vscode-cpptools/issues) and a [pull request](https://github.com/Microsoft/vscode-cpptools/pulls) with the change and we will review it.
* If the change affects functionality, add a line describing the change to [**CHANGELOG.md**](Extension/CHANGELOG.md).
* Try and add a test in [**test/extension.test.ts**](Extension/test/unitTests/extension.test.ts).
* Run tests via opening the [**Extension**](https://github.com/Microsoft/vscode-cpptools/tree/master/Extension) folder in Visual Studio Code, selecting the "Launch Tests" configuration in the Debug pane, and choosing "Start Debugging".
* Run tests via opening the [**Extension**](https://github.com/Microsoft/vscode-cpptools/tree/main/Extension) folder in Visual Studio Code, selecting the "Launch Tests" configuration in the Debug pane, and choosing "Start Debugging".
## About the Code
* Execution starts in the `activate` method in [**main.ts**](Extension/src/main.ts).
* `processRuntimeDependencies` handles the downloading and installation of the OS-dependent files. Downloading code exists in [**packageManager.ts**](Extension/src/packageManager.ts).
* `downloadCpptoolsJsonPkg` handles the **cpptools.json**, which can be used to enable changes to occur mid-update, such as turning the `intelliSenseEngine` to `"Default"` for a certain percentage of users.
* The debugger code is in the [**Debugger**](https://github.com/Microsoft/vscode-cpptools/tree/master/Extension/src/Debugger) folder.
* The debugger code is in the [**Debugger**](https://github.com/Microsoft/vscode-cpptools/tree/main/Extension/src/Debugger) folder.
* [**LanguageServer/client.ts**](Extension/src/LanguageServer/client.ts) handles various language server functionality.
* [**LanguageServer/configurations.ts**](Extension/src/LanguageServer/configurations.ts) handles functionality related to **c_cpp_properties.json**.
* [**telemetry.ts**](Extension/src/telemetry.ts): Telemetry data gets sent to either `logLanguageServerEvent` or `logDebuggerEvent`.
+3
View File
@@ -41,3 +41,6 @@ translations_auto_pr.js
# ignore i18n language files
i18n/**
# ignore node_modules
node_modules/
+53 -3
View File
@@ -1,5 +1,55 @@
# C/C++ for Visual Studio Code Change Log
## Version 1.2.0-preview: Decemeber 21, 2020
### Enhancements
* Add command `Generate EditorConfig contents from VC Format settings`. [#6018](https://github.com/microsoft/vscode-cpptools/issues/6018)
### Bug Fixes
* Fix handling of `--sysroot` and `-isysroot` with `compileCommands`. [#1575](https://github.com/microsoft/vscode-cpptools/issues/1575)
* Fix IntelliSense involving overflow for unsigned int values. [#2202](https://github.com/microsoft/vscode-cpptools/issues/2202)
* Fix IntelliSense not switching the language mode after changing C versus C++ `files.associations`. [#2557](https://github.com/microsoft/vscode-cpptools/issues/2557)
* Fix #include completion not sorting _ last. [#3465](https://github.com/microsoft/vscode-cpptools/issues/3465)
* Fix crash when certain JavaScript files are parsed as C++. [#3858](https://github.com/microsoft/vscode-cpptools/issues/3858)
* Fix IntelliSense squiggle about not being able to assign to an object of its own type. [#3883](https://github.com/microsoft/vscode-cpptools/issues/3883)
* Fix hover and Find All References for template function overloads. [#4044[(https://github.com/microsoft/vscode-cpptools/issues/4044), [#4249](https://github.com/microsoft/vscode-cpptools/issues/4249)
* Fix the Outline view for nested namespaces. [#4456](https://github.com/microsoft/vscode-cpptools/issues/4456)
* Fix Outline view with`"**/.*"` in `files.exclude`. [#4602](https://github.com/microsoft/vscode-cpptools/issues/4602)
* Fix the Outline view for nested structs/classes. [#4781](https://github.com/microsoft/vscode-cpptools/issues/4871)
* Fix code folding incorrectly matching an inactive }. [#5429](https://github.com/microsoft/vscode-cpptools/issues/5429)
* Fix IntelliSense clang version for Apple clang. [#5500](https://github.com/microsoft/vscode-cpptools/issues/5500)
* Automatically configure to use a custom configuration provider if available and no other configuration exists. [#6150](https://github.com/microsoft/vscode-cpptools/issues/6150)
* Fix IntelliSense crashing with cl.exe with C++20 and span. [#6251](https://github.com/microsoft/vscode-cpptools/issues/6251)
* Stop querying unsupported compilers. [#6314](https://github.com/microsoft/vscode-cpptools/issues/6314)
* Fix IntelliSense crash with coroutines. [#6363](https://github.com/microsoft/vscode-cpptools/issues/6363)
* Add localized strings for `cppbuild` tasks. [#6436](https://github.com/microsoft/vscode-cpptools/issues/6436)
* Fix IntelliSense squiggle with C++20 non-type templates. [#6462](https://github.com/microsoft/vscode-cpptools/issues/6462)
* Fix `compilerArgs` processing with `-MF` and other multi-arg arguments. [#6478](https://github.com/microsoft/vscode-cpptools/issues/6478)
* Fix bug causing `Unable to read process.env.HOME`. [#6468](https://github.com/microsoft/vscode-cpptools/issues/6468)
* Fix gcc problem matcher when the column is missing.
* @guntern [PR #6490](https://github.com/microsoft/vscode-cpptools/pull/6490)
* Disable Insiders prompt for Codespaces. [#6491](https://github.com/microsoft/vscode-cpptools/issues/6491)
* Fix `compile_commands.json` not working correctly for `*.C` files. [#6497](https://github.com/microsoft/vscode-cpptools/issues/6497)
* Fix IntelliSense crash with a parenthesized type followed by an initializer list. [#6554](https://github.com/microsoft/vscode-cpptools/issues/6554), [#6624](https://github.com/microsoft/vscode-cpptools/issues/6624)
* Fix IntelliSense updating after pasting multi-line code. [#6565](https://github.com/microsoft/vscode-cpptools/issues/6565)
* Use "method" instead of "method" for semantic tokens. [#6569](https://github.com/microsoft/vscode-cpptools/issues/6569)
* Fix `__builtin_coro_*` methods not recognized by IntelliSense in gcc mode with `-fcoroutines`. [#6575](https://github.com/microsoft/vscode-cpptools/issues/6575)
* Fix the `else` snippet interfering with entering one line `else` statements. [#6582](https://github.com/microsoft/vscode-cpptools/issues/6582)
* Fix hover doc comments not working if there's a selection. [#6583](https://github.com/microsoft/vscode-cpptools/issues/6583)
* Fix a cpptools crash and a multiple deadlocks.
## Version 1.1.3: December 3, 2020
### Bug Fixes
* Disable the "join Insiders" prompt for Linux CodeSpaces. [#6491](https://github.com/microsoft/vscode-cpptools/issues/6491)
* Fix "shell" tasks giving error "Cannot read property `includes` of undefined". [#6538](https://github.com/microsoft/vscode-cpptools/issues/6538)
* Fix various task variables not getting resolved with `cppbuild` tasks. [#6538](https://github.com/microsoft/vscode-cpptools/issues/6538)
* Fix warnings not appearing with `cppbuild` tasks. [#6556](https://github.com/microsoft/vscode-cpptools/issues/6556)
* Fix endless CPU/memory usage if the cpptools process crashes. [#6603](https://github.com/microsoft/vscode-cpptools/issues/6603)
* Fix the default `cwd` for `cppbuild` tasks. [#6618](https://github.com/microsoft/vscode-cpptools/issues/6618)
## Version 1.1.2: November 17, 2020
### Bug Fix
* Fix resolution of `${fileDirname}` with `cppbuild` tasks. [#6386](https://github.com/microsoft/vscode-cpptools/issues/6386)
## Version 1.1.1: November 9, 2020
### Bug Fixes
* Fix cpptools binaries sometimes not getting installed on Windows. [#6453](https://github.com/microsoft/vscode-cpptools/issues/6453)
@@ -17,7 +67,7 @@
* Tasks: Configure Task
* Tasks: Run Build Task
* C/C++: Build and debug active file.
* Add logging around compiler probing, and the "C/C++ Configuration Warnings" output channel. [#5259](https://github.com/microsoft/vscode-cpptools/issues/5259)
* Add logging around compiler querying, and the "C/C++ Configuration Warnings" output channel. [#5259](https://github.com/microsoft/vscode-cpptools/issues/5259)
* Add compile commands info to Log Diagnostics. [#5761](https://github.com/microsoft/vscode-cpptools/issues/5761)
* Add `intelliSenseUpdateDelay` setting. [#6142](https://github.com/microsoft/vscode-cpptools/issues/6142)
* YuTengjing (@tjx666) [PR #6344](https://github.com/microsoft/vscode-cpptools/pull/6344)
@@ -110,7 +160,7 @@
* Fix bug with cl.exe flags /FU and /FI not being processed. [#5819](https://github.com/microsoft/vscode-cpptools/issues/5819)
* Fix `cStandard` being set to `c11` instead of `gnu18` with gcc. [#5834](https://github.com/microsoft/vscode-cpptools/issues/5834)
* Fix Doxygen parameterHint comment to display for a parameter name that is followed by colon. [#5836](https://github.com/microsoft/vscode-cpptools/issues/5836)
* Fix compiler probing when relative paths are used in `compile_commands.json`. [#5848](https://github.com/microsoft/vscode-cpptools/issues/5848)
* Fix compiler querying when relative paths are used in `compile_commands.json`. [#5848](https://github.com/microsoft/vscode-cpptools/issues/5848)
* Fix the compile commands compiler not being used if `C_Cpp.default.compilerPath` is set. [#5848](https://github.com/microsoft/vscode-cpptools/issues/5848)
* Fix Doxygen comment to escape markdown characters. [#5904](https://github.com/microsoft/vscode-cpptools/issues/5904)
* Remove keyword completion of C identifiers that are defined in headers and aren't keywords (e.g. `alignas`). [#6022](https://github.com/microsoft/vscode-cpptools/issues/6022)
@@ -444,7 +494,7 @@
## Version 0.24.0: July 3, 2019
### New Features
* Semantic colorization [Documentation](https://github.com/microsoft/vscode-cpptools/blob/master/Documentation/LanguageServer/colorization.md) [#230](https://github.com/microsoft/vscode-cpptools/issues/230)
* Semantic colorization [Documentation](https://github.com/microsoft/vscode-cpptools/blob/main/Documentation/LanguageServer/colorization.md) [#230](https://github.com/microsoft/vscode-cpptools/issues/230)
* Add `Rescan Workspace` command. [microsoft/vscode-cpptools-api#11](https://github.com/microsoft/vscode-cpptools-api/issues/11)
### Enhancements
+1 -1
View File
@@ -1,6 +1,6 @@
# C/C++ for Visual Studio Code
#### [Repository](https://github.com/microsoft/vscode-cpptools)&nbsp;&nbsp;|&nbsp;&nbsp;[Issues](https://github.com/microsoft/vscode-cpptools/issues)&nbsp;&nbsp;|&nbsp;&nbsp;[Documentation](https://code.visualstudio.com/docs/languages/cpp)&nbsp;&nbsp;|&nbsp;&nbsp;[Code Samples](https://github.com/microsoft/vscode-cpptools/tree/master/Code%20Samples)&nbsp;&nbsp;|&nbsp;&nbsp;[Offline Installers](https://github.com/microsoft/vscode-cpptools/releases)
#### [Repository](https://github.com/microsoft/vscode-cpptools)&nbsp;&nbsp;|&nbsp;&nbsp;[Issues](https://github.com/microsoft/vscode-cpptools/issues)&nbsp;&nbsp;|&nbsp;&nbsp;[Documentation](https://code.visualstudio.com/docs/languages/cpp)&nbsp;&nbsp;|&nbsp;&nbsp;[Code Samples](https://github.com/microsoft/vscode-cpptools/tree/main/Code%20Samples)&nbsp;&nbsp;|&nbsp;&nbsp;[Offline Installers](https://github.com/microsoft/vscode-cpptools/releases)
[![Badge](https://aka.ms/vsls-badge)](https://aka.ms/vsls)
File diff suppressed because it is too large Load Diff
+8 -2
View File
@@ -3300,7 +3300,7 @@
"Neplatné použití konceptu",
"Výchozí operátor porovnání členů nemůže být kvalifikovaný jako &&.",
"Výchozí funkce pro porovnání constexpr volá funkci %nd, která constexpr není.",
"Porovnání paměti constexpr se podporuje jen pro celé číslo nejvyšší úrovně nebo objekty polí celých čísel.",
"Porovnání paměti constexpr se podporuje jen pro celé číslo nebo objekty polí celých čísel.",
"Šablona konceptu nemůže mít přidružená omezení.",
"export se nepovoluje.",
"Export jednotlivých členů třídy se nepodporuje.",
@@ -3351,5 +3351,11 @@
"nejde přečíst soubor modulu",
"předdefinovaná funkce není k dispozici, protože typ char8_t se nepodporuje s aktuálními možnostmi",
"možnost příkazového řádku --ms_await nejde zadat, pokud jsou povolené korutiny C++20",
"nestandardní použití explicitního konstruktoru %nod pro inicializaci výchozího agregačního elementu"
"nestandardní použití explicitního konstruktoru %nod pro inicializaci výchozího agregačního elementu",
"zdroj nebo cíl vnitřní funkce memcpy-like neukazuje na objekt",
"vnitřní funkce memcpy-like se pokouší o kopírování reprezentačně odlišných typů %t1 a %t2",
"vnitřní funkce memcpy-like se pokouší o kopírování netriviálně kopírovatelného typu %t",
"vnitřní funkce memcpy-like se pokouší o kopírování částečného objektu",
"vnitřní funkce memcpy-like se pokouší o kopírování hranice za polem",
"vnitřní funkce memcpy-like se pokouší o kopírování překrývajících se bajtových rozsahů (místo toho se použije odpovídající operace memmove)"
]
+8 -2
View File
@@ -3300,7 +3300,7 @@
"Ungültige Verwendung von \"concept\".",
"Ein standardmäßiger Membervergleichsoperator kann nicht &&-qualifiziert sein.",
"Die constexpr-Standardvergleichsfunktion ruft die Nicht-constexpr-Funktion \"%nd\" auf.",
"Der constexpr-Speichervergleich wird nur für integer-Objekte oder array-of-integer-Objekte oberster Ebene unterstützt.",
"Der constexpr-Speichervergleich wird nur für integer-Objekte oder array-of-integer-Objekte unterstützt.",
"Einer Konzeptvorlage können keine Einschränkungen zugeordnet sein.",
"\"export\" ist nicht zulässig.",
"Das Exportieren einzelner Klassenmember ist nicht zulässig.",
@@ -3351,5 +3351,11 @@
"Die Moduldatei kann nicht gelesen werden.",
"Die integrierte Funktion ist nicht verfügbar, weil der char8_t-Typ mit den aktuellen Optionen nicht unterstützt wird.",
"Die Befehlszeilenoption \"--ms_await\" kann nicht angegeben werden, wenn C++20-Coroutinen aktiviert sind.",
"Nicht standardmäßige Verwendung des expliziten Konstruktors \"%nod\" für die standardmäßige Aggregatelementinitialisierung"
"Nicht standardmäßige Verwendung des expliziten Konstruktors \"%nod\" für die standardmäßige Aggregatelementinitialisierung",
"Die Quelle oder das Ziel des memcpy-ähnlichen systeminternen Objekts verweist nicht auf ein Objekt.",
"Ein memcpy-ähnliches systeminternes Objekt versucht, die darstellerisch unterschiedlichen Typen %t1 und %t2 zu kopieren.",
"Ein memcpy-ähnliches systeminternes Objekt versucht, den nicht trivial kopierbaren Typ %t zu kopieren.",
"Ein memcpy-ähnliches systeminternes Objekt versucht, ein Teilobjekt zu kopieren.",
"Ein memcpy-ähnliches systeminternes Objekt versucht, einen Kopiervorgang über die Arraygrenze hinaus durchzuführen.",
"Ein memcpy-ähnliches systeminternes Objekt versucht, überlappende Bytebereiche (stattdessen mithilfe eines entsprechenden memmove-Vorgangs) zu kopieren."
]
+8 -2
View File
@@ -3300,7 +3300,7 @@
"uso no válido del concepto",
"un operador de comparación de miembros con valores predeterminados no puede estar calificado con \"&&\"",
"la función de comparación constexpr predeterminada llama a una función %nd que no es constexpr",
"la comparación de memoria de constexpr solo se admite para objetos de matriz de enteros o enteros de nivel superior",
"la comparación de memoria de constexpr solo se admite para objetos de matriz de enteros o enteros",
"una plantilla de concepto no puede tener restricciones asociadas",
"no se permite \"export\"",
"no se permite la exportación de miembros de clases individuales",
@@ -3351,5 +3351,11 @@
"no se puede leer el archivo de módulo",
"la función integrada no está disponible porque no se admite el tipo char8_t con las opciones actuales",
"no se puede especificar la opción de línea de comandos --ms_await si están habilitadas las corrutinas de C++ 20",
"uso no estándar de %nod de constructor explícito para la inicialización predeterminada del elemento de agregado"
"uso no estándar de %nod de constructor explícito para la inicialización predeterminada del elemento de agregado",
"el origen o el destino del intento intrínseco de tipo memcpy no apunta a un objeto",
"intentos intrínsecos de tipo memcpy para copiar los tipos %t1 y %t2 diferentes de forma representativa",
"intentos intrínsecos de tipo memcpy para copiar el tipo %t que no se puede copiar de forma trivial",
"intentos intrínsecos de tipo memcpy para copiar el objeto parcial",
"intentos intrínsecos de tipo memcpy para copiar más allá del límite de matriz",
"intentos intrínsecos de tipo memcpy para copiar los intervalos de bytes solapados (con la operación memmove correspondiente en su lugar)"
]
+8 -2
View File
@@ -3300,7 +3300,7 @@
"utilisation non valide du concept",
"un opérateur de comparaison de membres par défaut ne peut pas être qualifié en tant que '&&'",
"la fonction de comparaison constexpr par défaut appelle la fonction non constexpr %nd",
"la comparaison de mémoire constexpr est prise en charge uniquement pour les objets d'entiers de niveau supérieur ou les objets de tableaux d'entiers",
"la comparaison de mémoire constexpr est prise en charge uniquement pour les objets d'entiers ou les objets de tableaux d'entiers",
"un modèle de concept ne peut pas avoir de contraintes associées",
"'export' n'est pas autorisé",
"l'exportation de membres de classe individuels n'est pas autorisée",
@@ -3351,5 +3351,11 @@
"impossible de lire le fichier de module",
"la fonction intégrée n'est pas disponible, car le type char8_t n'est pas pris en charge avec les options actuelles",
"l'option de ligne de commande --ms_await ne peut pas être spécifiée si les coroutines C++20 sont activées",
"utilisation non standard du constructeur explicite %nod pour l'initialisation de l'élément d'agrégation par défaut"
"utilisation non standard du constructeur explicite %nod pour l'initialisation de l'élément d'agrégation par défaut",
"la source ou la destination de l'intrinsèque de type memcpy ne pointe pas vers un objet",
"l'intrinsèque de type memcpy tente de copier les types représentatifs distincts %t1 et %t2",
"l'intrinsèque de type memcpy tente de copier le type non trivialement copiable %t",
"l'intrinsèque de type memcpy tente de copier un objet partiel",
"l'intrinsèque de type memcpy tente de copier au-delà de la limite du tableau",
"l'intrinsèque de type memcpy tente de copier des plages d'octets qui se chevauchent (en utilisant plutôt l'opération memmove correspondante)"
]
+8 -2
View File
@@ -3300,7 +3300,7 @@
"uso del concetto non valido",
"un operatore di confronto membri impostato come predefinito non può essere qualificato con '&&'",
"la funzione di confronto constexpr predefinita chiama la funzione non constexpr %nd",
"il confronto di memoria constexpr è supportato solo per gli oggetti intero o matrice di intero di primo livello",
"il confronto di memoria constexpr è supportato solo per gli oggetti intero o matrice di interi",
"un modello di concetto non può avere vincoli associati",
"'export' non è consentito",
"l'esportazione di singoli membri di classe non è consentita",
@@ -3351,5 +3351,11 @@
"non è possibile leggere il file del modulo",
"la funzione predefinita non è disponibile perché il tipo char8_t non è supportato con le opzioni correnti",
"non è possibile specificare l'opzione della riga di comando --ms_await se le coroutine di C++20 sono abilitate",
"uso non standard del costruttore esplicito %nod per l'inizializzazione dell'elemento di aggregazione predefinito"
"uso non standard del costruttore esplicito %nod per l'inizializzazione dell'elemento di aggregazione predefinito",
"l'origine o la destinazione dell'intrinseco simile a memcpy non punta a un oggetto",
"l'intrinseco simile a memcpy prova a copiare i tipi distinti dal punto di vista della rappresentazione %t1 e %t2",
"l'intrinseco simile a memcpy prova a copiare il tipo non facilmente copiabile %t",
"l'intrinseco simile a memcpy prova a copiare l'oggetto parziale",
"l'intrinseco simile a memcpy prova a copiare oltre il limite della matrice",
"l'intrinseco simile a memcpy prova a copiare intervalli di byte sovrapposti (usando invece l'operazione memmove corrispondente)"
]
+8 -2
View File
@@ -3300,7 +3300,7 @@
"概念が正しく使用されていません",
"既定のメンバー比較演算子を '&&' で修飾することはできません",
"既定の constexpr 比較関数は、constexpr ではない関数 %nd を呼び出します",
"constexpr のメモリ比較は、トップレベルの整数または整数の配列オブジェクトでのみサポートされています",
"constexpr のメモリ比較は、整数または整数の配列オブジェクトでのみサポートされています",
"概念テンプレートに関連する制約を持たせることはできません",
"[エクスポート] は許可されていません",
"個別のクラス メンバーのエクスポートは許可されていません",
@@ -3351,5 +3351,11 @@
"モジュール ファイルを読み取れません",
"現在のオプションで char8_t 型がサポートされていないので、ビルトイン関数を使用できません",
"--ms_await コマンド ライン オプションは、C++20 コルーチンが有効になっている場合は指定できません",
"既定の集約要素の初期化における明示的なコンストラクター %nod の非標準的な使用"
"既定の集約要素の初期化における明示的なコンストラクター %nod の非標準的な使用",
"memcpy に似た組み込み関数のソースやターゲットでオブジェクトが指定されていません",
"memcpy に似た組み込み関数により、表現上個別の型である %t1 と %t2 のコピーが試行されます",
"memcpy に似た組み込み関数により、普通にコピーすることができない型 %t のコピーが試行されます",
"memcpy に似た組み込み関数により、部分的なオブジェクトのコピーが試行されます",
"memcpy に似た組み込み関数により、配列の境界を越えたコピーが試行されます",
"memcpy に似た組み込み関数により、重複しているバイト範囲のコピーが (対応する memmove 操作を代わりに使用して) 試行されます"
]
+8 -2
View File
@@ -3300,7 +3300,7 @@
"잘못된 개념 사용",
"기본 멤버 비교 연산자는 '&&'-qualified일 수 없습니다.",
"기본 constexpr 비교 함수에서 비 constexpr 함수 %nd 호출",
"constexpr 메모리 비교는 최상위 정수 또는 정수 배열 개체에 대해서만 지원됩니다.",
"constexpr 메모리 비교는 정수 또는 정수 배열 개체에 대해서만 지원됩니다.",
"개념 템플릿에는 관련된 제약 조건이 있을 수 없습니다.",
"'export'는 허용되지 않습니다.",
"개별 클래스 멤버를 내보낼 수 없습니다.",
@@ -3351,5 +3351,11 @@
"모듈 파일을 읽을 수 없음",
"char8_t 형식이 현재 옵션에서 지원되지 않기 때문에 기본 제공 함수를 사용할 수 없습니다.",
"C++20 코루틴을 사용하도록 설정한 경우 --ms_await 명령줄 옵션을 지정할 수 없습니다.",
"기본 집계 요소 초기화에 명시적 생성자 %nod의 비표준 사용"
"기본 집계 요소 초기화에 명시적 생성자 %nod의 비표준 사용",
"memcpy 유사 내장의 소스 또는 대상이 개체를 가리키지 않음",
"memcpy 유사 내장이 대표적으로 차별화된 형식 %t1 및 %t2을(를) 복사하려고 시도함",
"memcpy 유사 내장이 중요하게 복사 가능한 형식 %t을(를) 복사하려고 시도함",
"memcpy 유사 내장이 부분 개체를 복사하려고 시도함",
"memcpy 유사 내장이 과거 배열 경계를 복사하려고 시도함",
"memcpy 유사 내장이 겹치는 바이트 범위를 복사하려고 시도함(대신 해당 memmove 작업 사용)"
]
+8 -2
View File
@@ -3300,7 +3300,7 @@
"nieprawidłowe użycie koncepcji",
"domyślny operator porównania elementu członkowskiego nie może być kwalifikowany przez element „&&”",
"domyślna funkcja porównywania constexpr wywołuje funkcję non-constexpr %nd",
"Porównywanie pamięci constexpr jest obsługiwane tylko w przypadku obiektów najwyższego poziomu w postaci liczby całkowitej lub obiektów typu tablica liczb całkowitych",
"Porównywanie pamięci constexpr jest obsługiwane tylko w przypadku obiektów będących liczbami całkowitymi lub tablicami liczb całkowitych",
"z szablonem koncepcji nie mogą być skojarzone ograniczenia",
"Polecenie „export” jest niedozwolone",
"eksportowanie pojedynczych elementów członkowskich klasy jest niedozwolone",
@@ -3351,5 +3351,11 @@
"nie można odczytać pliku modułu",
"wbudowana funkcja jest niedostępna, ponieważ typ char8_t nie jest obsługiwany z bieżącymi opcjami",
"nie można określić opcji wiersza polecenia --ms_await, jeśli włączono koprocedury języka C++20",
"niestandardowe użycie konstruktora jawnego %nod dla domyślnej inicjalizacji elementu agregacji"
"niestandardowe użycie konstruktora jawnego %nod dla domyślnej inicjalizacji elementu agregacji",
"element źródłowy lub docelowy funkcji wewnętrznej podobnej do memcpy nie wskazuje obiektu",
"Funkcja wewnętrzna podobna do memcpy próbuje skopiować reprezentacyjnie odrębne typy %t1 i %t2",
"Funkcja wewnętrzna podobna do memcpy próbuje skopiować typ %t, którego nie można skopiować w sposób trywialny",
"Funkcja wewnętrzna podobna do memcpy próbuje skopiować częściowy obiekt",
"Funkcja wewnętrzna podobna do memcpy próbuje skopiować dane spoza granicy tablicy",
"Funkcja wewnętrzna podobna do memcpy próbuje skopiować nakładające się na siebie zakresy bajtów (zamiast tego zostanie użyta odpowiednia operacja memmove)"
]
+8 -2
View File
@@ -3300,7 +3300,7 @@
"uso inválido do conceito",
"um operador de comparação de membros usado como padrão não pode ser qualificado por '&&'",
"a função de comparação constexpr padrão chama a função não constexpr %nd",
"só há suporte para a comparação de memória constexpr para os objetos inteiros de nível superior ou matriz de inteiro",
"Só há suporte para a comparação de memória constexpr para os objetos inteiros ou matriz de inteiro",
"um modelo de conceito não pode ter restrições associadas",
"'export' não é permitido",
"a exportação de membros de classe individuais não é permitida",
@@ -3351,5 +3351,11 @@
"não é possível ler o arquivo de módulo",
"a função interna não está disponível porque não há suporte para o tipo char8_t com as opções atuais",
"a opção da linha de comando --ms_await não poderá ser especificada se as corrotinas do C++20 estiverem habilitadas",
"o uso não padrão do construtor explícito %nod para inicialização do elemento de agregação padrão"
"o uso não padrão do construtor explícito %nod para inicialização do elemento de agregação padrão",
"a origem ou o destino do intrínseco similar a memcpy não aponta para um objeto",
"tentativas intrínsecas similares a memcpy de copiar tipos representacionalmente distintos %t1 e %t2",
"tentativas intrínsecas similares a memcpy de copiar o tipo não trivialmente copiável %t",
"tentativas intrínsecas similares a memcpy de copiar objetos parciais",
"tentativas intrínsecas similares a memcpy de copiar o limite de matriz passado",
"tentativas intrínsecas similares a memcpy de copiar intervalos de bytes sobrepostos (usando a operação de memmove correspondente, em vez disso)"
]
+8 -2
View File
@@ -3300,7 +3300,7 @@
"недопустимое использование концепции",
"оператор сравнения элемента по умолчанию не может быть квалифицирован как \"&&\"",
"функция сравнения constexpr по умолчанию вызывает функцию %nd, не являющуюся constexpr",
"Сравнение памяти с помощью constexpr поддерживается только для целочисленных объектов верхнего уровня или массивов целых чисел",
"сравнение памяти с помощью constexpr поддерживается только для целых чисел и для массивов целых чисел",
"шаблон концепции не может иметь связанные ограничения",
"использование \"export\" запрещено",
"экспорт отдельных членов класса запрещен",
@@ -3351,5 +3351,11 @@
"не удалось прочитать файл модуля",
"встроенная функция недоступна, так как тип char8_t не поддерживается с текущими параметрами.",
"невозможно указать параметр командной строки --ms_await, если включены сопрограммы C++20.",
"нестандартное использование явного конструктора %nod для агрегатной инициализации элементов по умолчанию."
"нестандартное использование явного конструктора %nod для агрегатной инициализации элементов по умолчанию.",
"источник или назначение встроенной функции, похожей на memcpy, не указывает на объект",
"Встроенная функция, похожая на memcpy, пытается скопировать различные с точки зрения представления типы %t1 и %t2",
"Встроенная функция, похожая на memcpy, пытается скопировать нетривиально копируемый тип %t",
"Встроенная функция, похожая на memcpy, пытается скопировать частичный объект",
"Встроенная функция, похожая на memcpy, пытается выполнить копирование за границей массива",
"Встроенная функция, похожая на memcpy, пытается скопировать перекрывающиеся диапазоны байтов (вместо использования соответствующей операции memmove)"
]
+8 -2
View File
@@ -3300,7 +3300,7 @@
"kavram kullanımı geçersiz",
"varsayılan olarak ayarlanan üye karşılaştırma işleci tam '&&' ile nitelenemez",
"varsayılan constexpr karşılaştırma işlevi constexpr olmayan %nd işlevini çağırıyor",
"constexpr bellek karşılaştırması yalnızca üst düzey tamsayı veya tamsayı dizisi nesneleri için desteklenir",
"constexpr bellek karşılaştırması yalnızca tamsayı veya tamsayı dizisi nesneleri için desteklenir",
"kavram şablonunda ilişkili kısıtlamalar olamaz",
"'export'a izin verilmiyor",
"sınıf üyelerini tek tek dışarı aktarmaya izin verilmiyor",
@@ -3351,5 +3351,11 @@
"modül dosyası okunamıyor",
"char8_t türü geçerli seçeneklerle desteklenmediği için yerleşik işlev kullanılamıyor",
"C++20 eş yordamları etkinleştirilirse --ms_await komut satırı seçeneği belirtilemez",
"varsayılan toplama öğesi başlatma için açık oluşturucu %nod için standart olmayan kullanım"
"varsayılan toplama öğesi başlatma için açık oluşturucu %nod için standart olmayan kullanım",
"memcpy benzeri iç öğenin kaynağı veya hedefi bir nesneye işaret etmiyor",
"memcpy benzeri iç öğe, temsili olarak farklı %t1 ve %t2 türlerini kopyalamaya çalışıyor",
"memcpy benzeri iç öğe, önemsiz olarak kopyalanabilir %t türünü kopyalamaya çalışıyor",
"memcpy benzeri iç öğe, kısmi nesneyi kopyalamaya çalışıyor",
"memcpy benzeri iç öğe, geçmiş dizi sınırını kopyalamaya çalışıyor",
"memcpy benzeri iç öğe, çakışan bayt aralıklarını kopyalamaya çalışıyor (bunun yerine karşılık gelen memmove işlemini kullanarak)"
]
+9 -3
View File
@@ -2790,7 +2790,7 @@
"矢量元素类型必须是整型、枚举或真浮点类型",
"内置函数无法使用,因为不支持 128 位整数",
"内置函数无法使用,因为不支持矢量类型",
"两个连续的左方括号始终引入一个属性列表,但此处不能出现属性列表",
"两个连续的左方括号必然会引入一个属性列表,但此处不能出现属性列表",
"无法识别的 \"target\" 特性将使解析程序例程无法使用此例程",
"%t 不是矢量类型",
"适量类型 %t1 和 %t2 长度必须相同",
@@ -3300,7 +3300,7 @@
"概念的使用无效",
"默认成员比较运算符不能是 \"&&\" 限定",
"默认的 constexpr 比较函数会调用非 constexpr 函数 %nd",
"只有顶级整数或数组整数对象支持 constexpr 内存比较",
"只有整数或数组整数对象支持 constexpr 内存比较",
"概念模板不能具有关联约束",
"不允许使用 \"export\"",
"不允许导出单个类成员",
@@ -3351,5 +3351,11 @@
"无法读取模块文件",
"内置函数不可用,因为当前选项不支持 char8_t 类型",
"如果启用了 C++20 协同程序,则无法指定 --ms_await 命令行选项",
"对默认聚合元素初始化使用显式构造函数 %nod 不是标准做法"
"对默认聚合元素初始化使用显式构造函数 %nod 不是标准做法",
"与 memcpy 类似的固有项的源或目标不指向对象",
"与 memcpy 类似的固有项尝试复制在表达上不同的类型 %t1 和 %t2",
"与 memcpy 类似的固有项尝试复制非平凡可复制类型 %t",
"与 memcpy 类似的固有项尝试复制部分对象",
"与 memcpy 类似的固有项尝试复制过去的数组边界",
"与 memcpy 类似的固有项尝试复制重叠的字节范围(改为使用相应的 memmove 操作)"
]
+8 -2
View File
@@ -3300,7 +3300,7 @@
"概念使用無效",
"預設的成員比較運算子不可限定為 '&&'",
"預設 constexpr 比較函式會呼叫非 constexpr 函式 %nd",
"只有最上層整數或整數陣列物件支援 constexpr 記憶體比較",
"只有整數或整數陣列物件支援 constexpr 記憶體比較",
"概念範本不能具有已建立關聯的條件約束",
"不允許 'export'",
"不允許匯出個別類別成員",
@@ -3351,5 +3351,11 @@
"無法讀取模組檔案",
"因為目前的選項不支援 char8_t 類型,所以無法使用內建函式",
"如果啟用 C++ 20 協同程式,就不能指定 --ms_await 命令列選項",
"非標準地使用明確的建構函式 %nod 進行預設彙總元素初始化"
"非標準地使用明確的建構函式 %nod 進行預設彙總元素初始化",
"內建類 memcpy 的來源或目的地未指向物件",
"內建類 memcpy 嘗試複製具象相異類型 %t1 與 %t2",
"內建類 memcpy 嘗試複製非一般可複製類型 %t",
"內建類 memcpy 嘗試複製部分物件",
"內建類 memcpy 嘗試複製過去陣列邊界",
"內建類 memcpy 嘗試複製重疊位元組範圍 (改用對應的 memmove 作業)"
]
+1 -1
View File
@@ -4,5 +4,5 @@
"recursiveIncludes": 100,
"gotoDefIntelliSense": 100,
"enhancedColorization": 100,
"minimumVSCodeVersion": "1.49.0"
"minimumVSCodeVersion": "1.52.0"
}
+1
View File
@@ -22,6 +22,7 @@
"c_cpp.command.rescanWorkspace.title": "重新扫描工作区",
"c_cpp.command.vcpkgClipboardInstallSuggested.title": "将 vcpkg 安装命令复制到剪贴板",
"c_cpp.command.vcpkgOnlineHelpSuggested.title": "访问 vcpkg 帮助页",
"c_cpp.command.generateEditorConfig.title": "从 VC 格式设置生成 EditorConfig 内容",
"c_cpp.configuration.formatting.description": "配置格式化引擎",
"c_cpp.configuration.formatting.clangFormat.description": "将使用 clang-format 设置代码的格式。",
"c_cpp.configuration.formatting.vcFormat.description": "将使用 Visual C++ 格式设置引擎来设置代码的格式。",
@@ -5,6 +5,7 @@
// Do not edit this file. It is machine generated.
{
"build.and.debug.active.file": "生成和调试活动文件",
"single_file_mode_not_available": "此命令不能用于单文件模式。",
"cannot.build.non.cpp": "无法生成和调试,因为活动文件不是 C 或 C++ 源文件。",
"no.compiler.found": "未找到编译程序",
"select.configuration": "选择配置",
@@ -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.
{
"build_active_file": "生成活动文件",
"compiler_details": "编译器:",
"task_generated_by_debugger": "调试器生成的任务。",
"starting_build": "正在启动生成...",
"build_finished_with_error": "生成已完成,但发生错误",
"build_finished_with_warnings": "生成已完成,但收到警告",
"build finished successfully": "生成已成功完成。"
}
+14 -13
View File
@@ -36,7 +36,6 @@
"database_add_file_failed": "无法将文件添加到数据库,错误 = {0}: {1}",
"reset_timestamp_failed": "未能在中止期间重置时间戳,错误 = {0}: {1}",
"update_timestamp_failed": "无法更新时间戳,错误 = {0}: {1}",
"symbol_add_failed": "无法开始添加文件的代码符号,错误 = {0}: {1}",
"finalize_updates_failed": "无法完成文件的更新,错误 = {0}: {1}",
"not_directory_with_mode": "{0} 不是目录(st_mode={1})",
"retrieve_fs_info_failed": "无法检索 {0} 的文件系统信息。错误 = {1}",
@@ -175,7 +174,7 @@
"deprecated_label": "已弃用:",
"exceptions_label": "异常:",
"template_parameters_label": "模板参数:",
"compiler_probe_command_line": "编译器探测命令行: {0}",
"compiler_query_command_line": "编译器查询命令行: {0}",
"c_compiler_from_compiler_path": "正在尝试从 \"compilerPath\" 属性中的 C 编译器获取默认值:“{0}”",
"cpp_compiler_from_compiler_path": "正在尝试从 \"compilerPath\" 属性中的 C++ 编译器获取默认值:“{0}”",
"c_compiler_from_compile_commands": "正在尝试从 compile_commands.json 文件中的 C 编译器获取默认值:“{0}”",
@@ -186,23 +185,25 @@
"cpp_std_version_changed": "对于 C++ 源文件,cppStandard 已从“{0}”更改为“{1}”。",
"c_intellisense_mode_and_std_version_changed": "对于 C 源文件,IntelliSenseMode 已从“{0}”更改为“{1}”,cStandard 已从“{2}”更改为“{3}”。",
"cpp_intellisense_mode_and_std_version_changed": "对于 C++ 源文件,IntelliSenseMode 已从“{0}”更改为“{1}”,cppStandard 已从“{2}”更改为“{3}”。",
"c_intellisense_mode_changed_with_path": "对于 C 源文件,IntelliSenseMode 已根据编译器参数和探测 compilerPath 从“{0}”更改为“{1}”:“{2}”",
"cpp_intellisense_mode_changed_with_path": "对于 C++ 源文件,IntelliSenseMode 已根据编译器参数和探测 compilerPath 从“{0}”更改为“{1}”:“{2}”",
"c_std_version_changed_with_path": "对于 C 源文件,cStandard 已根据编译器参数和探测 compilerPath 从“{0}”更改为“{1}”:“{2}”",
"cpp_std_version_changed_with_path": "对于 C++ 源文件,cppStandard 已根据编译器参数和探测 compilerPath 从“{0}”更改为“{1}”:“{2}”",
"c_intellisense_mode_and_std_version_changed_with_path": "对于 C 源文件,IntelliSenseMode 已从“{0}”更改为“{1}”,cStandard 已根据编译器参数和探测 compilerPath 从“{2}”更改为“{3}”:“{4}”",
"cpp_intellisense_mode_and_std_version_changed_with_path": "对于 C++ 源文件,IntelliSenseMode 已从“{0}”更改为“{1}”,cppStandard 已根据编译器参数和探测 compilerPath 从“{2}”更改为“{3}”:“{4}”",
"c_intellisense_mode_changed_with_path": "对于 C 源文件,IntelliSenseMode 已根据编译器参数和查询 compilerPath 从“{0}”更改为“{1}”:“{2}”",
"cpp_intellisense_mode_changed_with_path": "对于 C++ 源文件,IntelliSenseMode 已根据编译器参数和查询 compilerPath 从“{0}”更改为“{1}”:“{2}”",
"c_std_version_changed_with_path": "对于 C 源文件,cStandard 已根据编译器参数和查询 compilerPath 从“{0}”更改为“{1}”:“{2}”",
"cpp_std_version_changed_with_path": "对于 C++ 源文件,cppStandard 已根据编译器参数和查询 compilerPath 从“{0}”更改为“{1}”:“{2}”",
"c_intellisense_mode_and_std_version_changed_with_path": "对于 C 源文件,IntelliSenseMode 已从“{0}”更改为“{1}”,cStandard 已根据编译器参数和查询 compilerPath 从“{2}”更改为“{3}”:“{4}”",
"cpp_intellisense_mode_and_std_version_changed_with_path": "对于 C++ 源文件,IntelliSenseMode 已从“{0}”更改为“{1}”,cppStandard 已根据编译器参数和查询 compilerPath 从“{2}”更改为“{3}”:“{4}”",
"compiler_path_changed": "无法使用 compilerPath“{0}”解析配置。 请改用“{1}”。",
"compiler_path_invalid": "无法使用 compilerPath 解析配置:“{0}”",
"compiler_path_empty": "由于 compilerPath 明确为空,因此正在跳过对编译器的探测",
"compiler_path_empty": "由于 compilerPath 明确为空,因此正在跳过对编译器的查询",
"msvc_intellisense_specified": "已指定 MSVC intelliSenseMode。正在针对编译器 cl.exe 进行配置。",
"unable_to_configure_cl_exe": "无法针对编译器 cl.exe 进行配置。",
"probing_compiler_default_target": "正在使用命令行探测编译器的目标:“{0}”{1}",
"querying_compiler_default_target": "正在使用命令行查询编译器的目标:“{0}”{1}",
"compiler_default_target": "编译器返回的默认目标值: {0}",
"c_probing_compiler_default_standard": "正在使用命令行探测默认 C 语言标准的编译器: {0}",
"cpp_probing_compiler_default_standard": "正在使用命令行探测默认 C++ 语言标准的编译器: {0}",
"c_querying_compiler_default_standard": "正在使用命令行查询默认 C 语言标准的编译器: {0}",
"cpp_querying_compiler_default_standard": "正在使用命令行查询默认 C++ 语言标准的编译器: {0}",
"detected_language_standard_version": "检测到的语言标准版本: {0}",
"unhandled_default_target_detected": "检测到未处理的默认编译器目标值: {0}",
"unhandled_target_arg_detected": "检测到未处理的目标参数值: {0}",
"memory_limit_shutting_down_intellisense": "正在关闭 IntelliSense 服务器: {0}。内存使用量为 {1} MB,已超过 {2} MB 的限制。"
"memory_limit_shutting_down_intellisense": "正在关闭 IntelliSense 服务器: {0}。内存使用量为 {1} MB,已超过 {2} MB 的限制。",
"failed_to_query_for_standard_version": "未能在路径 \"{0}\" 处查询编译器以获得默认标准版本。已对此编译器禁用编译器查询。",
"unrecognized_language_standard_version": "编译器查询返回了无法识别的语言标准版本。将改用受支持的最新版本。"
}
+1
View File
@@ -22,6 +22,7 @@
"c_cpp.command.rescanWorkspace.title": "重新掃描工作區",
"c_cpp.command.vcpkgClipboardInstallSuggested.title": "將 vcpkg 安裝命令複製到剪貼簿",
"c_cpp.command.vcpkgOnlineHelpSuggested.title": "瀏覽 vcpkg 說明頁面",
"c_cpp.command.generateEditorConfig.title": "從 VC 格式設定產生 EditorConfig 內容",
"c_cpp.configuration.formatting.description": "選擇格式設定引擎",
"c_cpp.configuration.formatting.clangFormat.description": "將使用 clang-format 來格式化程式碼。",
"c_cpp.configuration.formatting.vcFormat.description": "將使用 Visual C++ 格式化引擎來格式化程式碼。",
@@ -5,6 +5,7 @@
// Do not edit this file. It is machine generated.
{
"build.and.debug.active.file": "建置及偵錯使用中的檔案",
"single_file_mode_not_available": "此命令不適用於單一檔案模式。",
"cannot.build.non.cpp": "因為作用中的檔案不是 C 或 C++ 來源檔案,所以無法建立和偵錯。",
"no.compiler.found": "找不到任何編譯器",
"select.configuration": "選取組態",
@@ -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.
{
"build_active_file": "建置使用中檔案",
"compiler_details": "編譯器:",
"task_generated_by_debugger": "偵錯工具產生的工作。",
"starting_build": "正在開始建置...",
"build_finished_with_error": "建置已完成,但出現錯誤",
"build_finished_with_warnings": "建置已完成,但出現警告",
"build finished successfully": "已成功完成建置。"
}
+14 -13
View File
@@ -36,7 +36,6 @@
"database_add_file_failed": "無法將檔案新增至資料庫,錯誤 = {0}: {1}",
"reset_timestamp_failed": "無法在中止期間重設時間戳記,錯誤 = {0}: {1}",
"update_timestamp_failed": "無法更新時間戳記,錯誤 = {0}: {1}",
"symbol_add_failed": "無法開始新增檔案的程式碼符號,錯誤 = {0}: {1}",
"finalize_updates_failed": "無法完成檔案的更新,錯誤 = {0}: {1}",
"not_directory_with_mode": "{0} 不是目錄 (st_mode={1})",
"retrieve_fs_info_failed": "無法擷取 {0} 的檔案系統資訊。錯誤 = {1}",
@@ -175,7 +174,7 @@
"deprecated_label": "已淘汰:",
"exceptions_label": "例外狀況:",
"template_parameters_label": "範本參數:",
"compiler_probe_command_line": "編譯器查命令列: {0}",
"compiler_query_command_line": "編譯器查命令列: {0}",
"c_compiler_from_compiler_path": "正在嘗試從 C 編譯器的 \"compilerPath\" 屬性中取得預設值: '{0}'",
"cpp_compiler_from_compiler_path": "正在嘗試從 C++ 編譯器的 \"compilerPath\" 屬性中取得預設值: '{0}'",
"c_compiler_from_compile_commands": "正在嘗試從 C 編譯器的 compile_commands.json 檔案中取得預設值: '{0}'",
@@ -186,23 +185,25 @@
"cpp_std_version_changed": "若為 C 原始程式檔,cppStandard 已從 \"{0}\" 變更為 \"{1}\"。",
"c_intellisense_mode_and_std_version_changed": "若為 C 原始程式檔,IntelliSenseMode 已從 \"{0}\" 變更為 \"{1}\",且 cStandard 已從 \"{2}\" 變更為 \"{3}\"。",
"cpp_intellisense_mode_and_std_version_changed": "若為 C++ 原始程式檔,IntelliSenseMode 已從 \"{0}\" 變更為 \"{1}\",且 cppStandard 已從 \"{2}\" 變更為 \"{3}\"。",
"c_intellisense_mode_changed_with_path": "若為 C 原始程式檔,依據編譯器引數與查 compilerPathIntelliSenseMode 已從 \"{0}\" 變更為 \"{1}\": \"{2}\"",
"cpp_intellisense_mode_changed_with_path": "若為 C++ 原始程式檔,依據編譯器引數與查 compilerPathIntelliSenseMode 已從 \"{0}\" 變更為 \"{1}\": \"{2}\"",
"c_std_version_changed_with_path": "若為 C 原始程式檔,依據編譯器引數與查 compilerPathcStandard 已從 \"{0}\" 變更為 \"{1}\": \"{2}\"",
"cpp_std_version_changed_with_path": "若為 C++ 原始程式檔,依據編譯器引數與查 compilerPathcppStandard 已從 \"{0}\" 變更為 \"{1}\": \"{2}\"",
"c_intellisense_mode_and_std_version_changed_with_path": "若為 C 原始程式檔,依據編譯器引數與查 compilerPathIntelliSenseMode 已從 \"{0}\" 變更為 \"{1}\",且 cStandard 已從 \"{2}\" 變更為 \"{3}\": \"{4}\"",
"cpp_intellisense_mode_and_std_version_changed_with_path": "若為 C++ 原始程式檔,依據編譯器引數與查 compilerPathIntelliSenseMode 已從 \"{0}\" 變更為 \"{1}\",且 cppStandard 已從 \"{2}\" 變更為 \"{3}\": \"{4}\"",
"c_intellisense_mode_changed_with_path": "針對 C 來源檔案,依據編譯器引數與查 compilerPath: \"{2}\"IntelliSenseMode 已從 \"{0}\" 變更為 \"{1}\"",
"cpp_intellisense_mode_changed_with_path": "針對 C++ 來源檔案,依據編譯器引數與查 compilerPath: \"{2}\"IntelliSenseMode 已從 \"{0}\" 變更為 \"{1}\"",
"c_std_version_changed_with_path": "針對 C 來源檔案,依據編譯器引數與查 compilerPath: \"{2}\"cStandard 已從 \"{0}\" 變更為 \"{1}\"",
"cpp_std_version_changed_with_path": "針對 C++ 來源檔案,依據編譯器引數與查 compilerPath: \"{2}\"cppStandard 已從 \"{0}\" 變更為 \"{1}\"",
"c_intellisense_mode_and_std_version_changed_with_path": "針對 C 來源檔案,依據編譯器引數與查 compilerPath: \"{4}\"IntelliSenseMode 已從 \"{0}\" 變更為 \"{1}\",且 cStandard 已從 \"{2}\" 變更為 \"{3}\"",
"cpp_intellisense_mode_and_std_version_changed_with_path": "針對 C++ 來源檔案,依據編譯器引數與查 compilerPath: \"{4}\"IntelliSenseMode 已從 \"{0}\" 變更為 \"{1}\",且 cppStandard 已從 \"{2}\" 變更為 \"{3}\"",
"compiler_path_changed": "無法解析 compilerPath \"{0}\" 的設定。請改為使用 \"{1}\"。",
"compiler_path_invalid": "無法解析 compilerPath 的設定: \"{0}\"",
"compiler_path_empty": "因明確清空 compilerPath,所以略過探查編譯器",
"compiler_path_empty": "因明確的空白 compilerPath,所以跳過編譯器的查詢",
"msvc_intellisense_specified": "已指定 MSVC intelliSenseMode。正在進行編譯器 cl.exe 的設定。",
"unable_to_configure_cl_exe": "無法進行編譯器 cl.exe 的設定。",
"probing_compiler_default_target": "使用命令列查編譯器的預設目標: \"{0}\" {1}",
"querying_compiler_default_target": "使用命令列查編譯器的預設目標: \"{0}\" {1}",
"compiler_default_target": "編譯器傳回了預設目標值: {0}",
"c_probing_compiler_default_standard": "使用命令列查預設 C 語言標準的編譯器: {0}",
"cpp_probing_compiler_default_standard": "使用命令列查預設 C++ 語言標準的編譯器: {0}",
"c_querying_compiler_default_standard": "使用命令列查預設 C 語言標準的編譯器: {0}",
"cpp_querying_compiler_default_standard": "使用命令列查預設 C++ 語言標準的編譯器: {0}",
"detected_language_standard_version": "已偵測到語言標準版本: {0}",
"unhandled_default_target_detected": "偵測到未處理的預設編譯器目標值: {0}",
"unhandled_target_arg_detected": "偵測到未處理的目標引數值: {0}",
"memory_limit_shutting_down_intellisense": "IntelliSense 伺服器即將關機: {0}。記憶體使用量為 {1} MB,超過了 {2} MB 的限制。"
"memory_limit_shutting_down_intellisense": "IntelliSense 伺服器即將關機: {0}。記憶體使用量為 {1} MB,超過了 {2} MB 的限制。",
"failed_to_query_for_standard_version": "無法查詢位於路徑 \"{0}\" 的編譯器預設標準版本。已停用此編譯器的編譯器查詢。",
"unrecognized_language_standard_version": "編譯器查詢傳回無法辨識的語言標準版本。將改用支援的最新版本。"
}
+1
View File
@@ -22,6 +22,7 @@
"c_cpp.command.rescanWorkspace.title": "Znovu prohledat pracovní prostor",
"c_cpp.command.vcpkgClipboardInstallSuggested.title": "Zkopírovat příkaz pro instalaci vcpkg do schránky",
"c_cpp.command.vcpkgOnlineHelpSuggested.title": "Navštívit stránku nápovědy k vcpkg",
"c_cpp.command.generateEditorConfig.title": "Vygenerovat obsah EditorConfig z nastavení formátu VC",
"c_cpp.configuration.formatting.description": "Nakonfiguruje nástroj formátování textu.",
"c_cpp.configuration.formatting.clangFormat.description": "K formátování kódu se použije clang-format.",
"c_cpp.configuration.formatting.vcFormat.description": "K formátování kódu se použije nástroj formátování textu Visual C++.",
@@ -5,6 +5,7 @@
// Do not edit this file. It is machine generated.
{
"build.and.debug.active.file": "Sestavit a ladit aktivní soubor",
"single_file_mode_not_available": "Tento příkaz není pro režim s jedním souborem k dispozici.",
"cannot.build.non.cpp": "Sestavení a ladění není možné, protože aktivní soubor není zdrojový soubor jazyka C ani C++.",
"no.compiler.found": "Nenašel se žádný kompilátor.",
"select.configuration": "Vybrat konfiguraci",
@@ -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.
{
"build_active_file": "sestavit aktivní soubor",
"compiler_details": "kompilátor:",
"task_generated_by_debugger": "Úloha vygenerovaná ladicím programem",
"starting_build": "Spouští se sestavování...",
"build_finished_with_error": "Sestavování se dokončilo s chybami.",
"build_finished_with_warnings": "Sestavování se dokončilo s upozorněními.",
"build finished successfully": "Sestavování se úspěšně dokončilo."
}
@@ -36,7 +36,6 @@
"database_add_file_failed": "Nepovedlo se přidat soubor do databáze, chyba = {0}: {1}",
"reset_timestamp_failed": "Nepovedlo se resetovat časové razítko během přerušení, chyba = {0}: {1}",
"update_timestamp_failed": "Nepovedlo se aktualizovat časové razítko, chyba = {0}: {1}",
"symbol_add_failed": "Nepovedlo se začít přidávat symboly kódu pro soubor, chyba = {0}: {1}",
"finalize_updates_failed": "Nepovedlo se dokončit aktualizace pro soubor, chyba = {0}: {1}",
"not_directory_with_mode": "{0} není adresář (st_mode={1}).",
"retrieve_fs_info_failed": "Nepovedlo se získat informace o souborovém systému pro {0}. Chyba = {1}",
@@ -175,7 +174,7 @@
"deprecated_label": "Zastaralé:",
"exceptions_label": "Výjimky:",
"template_parameters_label": "Parametry šablony:",
"compiler_probe_command_line": "Příkazový řádek sondy kompilátoru: {0}",
"compiler_query_command_line": "Příkazový řádek sondy kompilátoru: {0}",
"c_compiler_from_compiler_path": "Probíhá pokus o získání výchozích hodnot z kompilátoru jazyka C ve vlastnosti compilerPath: {0}",
"cpp_compiler_from_compiler_path": "Probíhá pokus o získání výchozích hodnot z kompilátoru jazyka C++ ve vlastnosti compilerPath: {0}",
"c_compiler_from_compile_commands": "Probíhá pokus o získání výchozích hodnot z kompilátoru jazyka C v souboru compile_commands.json: {0}",
@@ -197,12 +196,14 @@
"compiler_path_empty": "Vynechává se dotaz na kompilátor kvůli explicitně prázdné vlastnosti compilerPath.",
"msvc_intellisense_specified": "Je zadaný režim intelliSenseMode MSVC. Probíhá konfigurace pro kompilátor cl.exe.",
"unable_to_configure_cl_exe": "Konfigurace pro kompilátor cl.exe nebyla úspěšná.",
"probing_compiler_default_target": "Probíhá dotazování na výchozí cíl kompilátoru pomocí příkazového řádku: {0} {1}",
"querying_compiler_default_target": "Probíhá dotazování na výchozí cíl kompilátoru pomocí příkazového řádku: {0} {1}",
"compiler_default_target": "Kompilátor vrátil výchozí hodnotu cíle: {0}",
"c_probing_compiler_default_standard": "Probíhá dotazování kompilátoru na výchozí standard jazyka C pomocí příkazového řádku: {0}",
"cpp_probing_compiler_default_standard": "Probíhá dotazování kompilátoru na výchozí standard jazyka C++ pomocí příkazového řádku: {0}",
"c_querying_compiler_default_standard": "Probíhá dotazování kompilátoru na výchozí standard jazyka C pomocí příkazového řádku: {0}",
"cpp_querying_compiler_default_standard": "Probíhá dotazování kompilátoru na výchozí standard jazyka C++ pomocí příkazového řádku: {0}",
"detected_language_standard_version": "Zjištěná verze standardu jazyka: {0}",
"unhandled_default_target_detected": "Zjistila se neošetřená výchozí hodnota cíle kompilátoru: {0}",
"unhandled_target_arg_detected": "Zjistila se neošetřená hodnota argumentu target: {0}",
"memory_limit_shutting_down_intellisense": "Vypíná se server technologie IntelliSense: {0}. Využití paměti je {1} MB a překročilo limit {2} MB."
"memory_limit_shutting_down_intellisense": "Vypíná se server technologie IntelliSense: {0}. Využití paměti je {1} MB a překročilo limit {2} MB.",
"failed_to_query_for_standard_version": "Nepovedlo se dotázat kompilátor na cestě {0} na výchozí standardní verze. Dotazování je pro tento kompilátor zakázané.",
"unrecognized_language_standard_version": "Dotaz na kompilátor vrátil nerozpoznanou standardní verzi jazyka. Místo ní se použije nejnovější podporovaná verze."
}
+1
View File
@@ -22,6 +22,7 @@
"c_cpp.command.rescanWorkspace.title": "Arbeitsbereich erneut überprüfen",
"c_cpp.command.vcpkgClipboardInstallSuggested.title": "vcpkg-Installationsbefehl in Zwischenablage kopieren",
"c_cpp.command.vcpkgOnlineHelpSuggested.title": "vcpkg-Hilfeseite aufrufen",
"c_cpp.command.generateEditorConfig.title": "EditorConfig-Inhalte aus VC-Formateinstellungen generieren",
"c_cpp.configuration.formatting.description": "Konfiguriert das Formatierungsmodul.",
"c_cpp.configuration.formatting.clangFormat.description": "Zum Formatieren von Code wird \"clang-format\" verwendet.",
"c_cpp.configuration.formatting.vcFormat.description": "Das Visual C++-Formatierungsmodul wird zum Formatieren von Code verwendet.",
@@ -5,6 +5,7 @@
// Do not edit this file. It is machine generated.
{
"build.and.debug.active.file": "Aktive Datei erstellen und debuggen",
"single_file_mode_not_available": "Dieser Befehl ist für den Einzeldateimodus nicht verfügbar.",
"cannot.build.non.cpp": "Erstellen und Debuggen nicht möglich, da die aktive Datei keine C- oder C++-Quelldatei ist.",
"no.compiler.found": "Kein Compiler gefunden.",
"select.configuration": "Konfiguration auswählen",
@@ -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.
{
"build_active_file": "Aktive Datei kompilieren",
"compiler_details": "Compiler:",
"task_generated_by_debugger": "Vom Debugger generierte Aufgabe.",
"starting_build": "Kompilierung wird gestartet...",
"build_finished_with_error": "Die Kompilierung wurde mit Fehlern abgeschlossen.",
"build_finished_with_warnings": "Die Kompilierung wurde mit Warnungen abgeschlossen.",
"build finished successfully": "Die Kompilierung wurde erfolgreich abgeschlossen."
}
+14 -13
View File
@@ -36,7 +36,6 @@
"database_add_file_failed": "Die Datei kann nicht zur Datenbank hinzugefügt werden, Fehler = {0}: {1}",
"reset_timestamp_failed": "Fehler beim Zurücksetzen des Zeitstempels beim Abbruch, Fehler = {0}: {1}",
"update_timestamp_failed": "Zeitstempel kann nicht aktualisiert werden, Fehler = {0}: {1}",
"symbol_add_failed": "Das Hinzufügen von Codesymbolen für die Datei kann nicht gestartet werden, Fehler = {0}: {1}",
"finalize_updates_failed": "Die Updates für die Datei können nicht finalisiert werden, Fehler = {0}: {1}",
"not_directory_with_mode": "\"{0}\" ist kein Verzeichnis (st_mode={1}).",
"retrieve_fs_info_failed": "Dateisysteminformationen für \"{0}\" können nicht abgerufen werden. Fehler = {1}",
@@ -175,7 +174,7 @@
"deprecated_label": "Veraltet:",
"exceptions_label": "Ausnahmen:",
"template_parameters_label": "Vorlagenparameter:",
"compiler_probe_command_line": "Befehlszeile des Compilertests: {0}",
"compiler_query_command_line": "Befehlszeile der Compilerabfrage: {0}",
"c_compiler_from_compiler_path": "Es wird versucht, Standardwerte vom C-Compiler in der Eigenschaft \"compilerPath\" abzurufen: {0}",
"cpp_compiler_from_compiler_path": "Es wird versucht, Standardwerte vom C++-Compiler in der Eigenschaft \"compilerPath\" abzurufen: {0}",
"c_compiler_from_compile_commands": "Es wird versucht, Standardwerte vom C-Compiler in der Datei \"compile_commands.json\" abzurufen: {0}",
@@ -186,23 +185,25 @@
"cpp_std_version_changed": "Für C++-Quelldateien wurde \"cppStandard\" von \"{0}\" in \"{1}\" geändert.",
"c_intellisense_mode_and_std_version_changed": "Für C-Quelldateien wurde \"IntelliSenseMode\" von \"{0}\" in \"{1}\" und \"cStandard\" von \"{2}\" in \"{3}\" geändert.",
"cpp_intellisense_mode_and_std_version_changed": "Für C++-Quelldateien wurde \"IntelliSenseMode\" von \"{0}\" in \"{1}\" und \"cppStandard\" von \"{2}\" in \"{3}\" geändert.",
"c_intellisense_mode_changed_with_path": "Für C-Quelldateien wurde \"IntelliSenseMode\" basierend auf Compilerargumenten und \"compilerPath\" von \"{0}\" in \"{1}\" geändert: \"{2}\"",
"cpp_intellisense_mode_changed_with_path": "Für C++-Quelldateien wurde \"IntelliSenseMode\" basierend auf Compilerargumenten und \"compilerPath\" von \"{0}\" in \"{1}\" geändert: \"{2}\"",
"c_std_version_changed_with_path": "Für C-Quelldateien wurde \"cStandard\" basierend auf Compilerargumenten und \"compilerPath\" von \"{0}\" in \"{1}\" geändert: \"{2}\"",
"cpp_std_version_changed_with_path": "Für C++-Quelldateien wurde \"cppStandard\" basierend auf Compilerargumenten und \"compilerPath\" von \"{0}\" in \"{1}\" geändert: \"{2}\"",
"c_intellisense_mode_and_std_version_changed_with_path": "Für C-Quelldateien wurde basierend auf Compilerargumenten und \"compilerPath\" der IntelliSenseMode-Wert von \"{0}\" in \"{1}\" und \"cStandard\" von \"{2}\" in \"{3}\" geändert: \"{4}\"",
"cpp_intellisense_mode_and_std_version_changed_with_path": "Für C++-Quelldateien wurde basierend auf Compilerargumenten und \"compilerPath\" der IntelliSenseMode-Wert von \"{0}\" in \"{1}\" und \"cppStandard\" von \"{2}\" in \"{3}\" geändert: \"{4}\"",
"c_intellisense_mode_changed_with_path": "Für C-Quelldateien wurde \"IntelliSenseMode\" basierend auf Compilerargumenten und Abfrage von compilerPath \"{2}\" von \"{0}\" in \"{1}\" geändert.",
"cpp_intellisense_mode_changed_with_path": "Für C++-Quelldateien wurde \"IntelliSenseMode\" basierend auf Compilerargumenten und Abfrage von compilerPath \"{2}\" von \"{0}\" in \"{1}\" geändert.",
"c_std_version_changed_with_path": "Für C-Quelldateien wurde der cStandard basierend auf Compilerargumenten und Abfrage von compilerPath \"{2}\" von \"{0}\" in \"{1}\" geändert.",
"cpp_std_version_changed_with_path": "Für C++-Quelldateien wurde der cppStandard basierend auf Compilerargumenten und Abfrage von compilerPath \"{2}\" von \"{0}\" in \"{1}\" geändert.",
"c_intellisense_mode_and_std_version_changed_with_path": "Für C-Quelldateien wurde basierend auf Compilerargumenten und Abfrage von compilerPath \"{4}\" der IntelliSenseMode-Wert von \"{0}\" in \"{1}\" und cStandard von \"{2}\" in \"{3}\" geändert.",
"cpp_intellisense_mode_and_std_version_changed_with_path": "Für C++-Quelldateien wurde basierend auf Compilerargumenten und Abfrage von compilerPath \"{4}\" der IntelliSenseMode-Wert von \"{0}\" in \"{1}\" und cppStandard von \"{2}\" in \"{3}\" geändert.",
"compiler_path_changed": "Die Konfiguration mit compilerPath \"{0}\" kann nicht aufgelöst werden. Stattdessen wird \"{1}\" verwendet.",
"compiler_path_invalid": "Die Konfiguration mit compilerPath \"{0}\" kann nicht aufgelöst werden.",
"compiler_path_empty": "Der Compilertest wird aufgrund eines explizit leeren compilerPath-Werts übersprungen.",
"compiler_path_empty": "Die Compilerabfrage wird aufgrund eines explizit leeren compilerPath-Werts übersprungen.",
"msvc_intellisense_specified": "Es wurde der MSVC-IntelliSenseMode angegeben. Der Compiler (cl.exe) wird konfiguriert.",
"unable_to_configure_cl_exe": "Der Compiler (cl.exe) kann nicht konfiguriert werden.",
"probing_compiler_default_target": "Das Standardziel des Compilers wird über die Befehlszeile getestet: \"{0}\" {1}",
"querying_compiler_default_target": "Das Standardziel des Compilers wird über die Befehlszeile abgefragt: \"{0}\" {1}",
"compiler_default_target": "Der Compiler hat den Standardzielwert zurückgegeben: {0}",
"c_probing_compiler_default_standard": "Der Compiler für den Standard-C-Sprachstandard wird über die Befehlszeile getestet: {0}",
"cpp_probing_compiler_default_standard": "Der Compiler für den Standard-C++-Sprachstandard wird über die Befehlszeile getestet: {0}",
"c_querying_compiler_default_standard": "Der Compiler für den Standard-C-Sprachstandard wird über die Befehlszeile abgefragt: {0}",
"cpp_querying_compiler_default_standard": "Der Compiler für den Standard-C++-Sprachstandard wird über die Befehlszeile abgefragt: {0}",
"detected_language_standard_version": "Erkannte Sprachstandardversion: {0}",
"unhandled_default_target_detected": "Unbehandelter Standardzielwert für Compiler erkannt: {0}",
"unhandled_target_arg_detected": "Unbehandelter Zielargumentwert erkannt: {0}",
"memory_limit_shutting_down_intellisense": "IntelliSense-Server wird heruntergefahren: {0}. Die Arbeitsspeicherauslastung beträgt {1} MB und hat das Limit von {2} MB überschritten."
"memory_limit_shutting_down_intellisense": "IntelliSense-Server wird heruntergefahren: {0}. Die Arbeitsspeicherauslastung beträgt {1} MB und hat das Limit von {2} MB überschritten.",
"failed_to_query_for_standard_version": "Der Compiler im Pfad \"{0}\" konnte nicht nach standardmäßigen Standardversionen abgefragt werden. Die Compilerabfrage ist für diesen Compiler deaktiviert.",
"unrecognized_language_standard_version": "Die Compilerabfrage hat eine unbekannte Sprachstandardversion zurückgegeben. Stattdessen wird die neueste unterstützte Version verwendet."
}
+1
View File
@@ -22,6 +22,7 @@
"c_cpp.command.rescanWorkspace.title": "Volver a examinar el área de trabajo",
"c_cpp.command.vcpkgClipboardInstallSuggested.title": "Copiar el comando vcpkg install en el Portapapeles",
"c_cpp.command.vcpkgOnlineHelpSuggested.title": "Visitar la página de ayuda de vcpkg",
"c_cpp.command.generateEditorConfig.title": "Generar contenido de EditorConfig a partir de la configuración de formato de VC",
"c_cpp.configuration.formatting.description": "Configura el motor de formato",
"c_cpp.configuration.formatting.clangFormat.description": "El archivo clang-format se usará para formatear el código.",
"c_cpp.configuration.formatting.vcFormat.description": "El motor de formato de Visual C++ se usará para formatear el código.",
@@ -5,6 +5,7 @@
// Do not edit this file. It is machine generated.
{
"build.and.debug.active.file": "Compilar y depurar el archivo activo",
"single_file_mode_not_available": "Este comando no está disponible para el modo de archivo único.",
"cannot.build.non.cpp": "No se puede compilar y depurar código porque el archivo activo no es un archivo de código fuente de C o C++.",
"no.compiler.found": "No se encontró ningún compilador",
"select.configuration": "Seleccionar una configuración",
@@ -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.
{
"build_active_file": "compilar archivo activo",
"compiler_details": "compilador:",
"task_generated_by_debugger": "Tarea generada por el depurador.",
"starting_build": "Iniciando la compilación...",
"build_finished_with_error": "La compilación finalizó con errores.",
"build_finished_with_warnings": "La compilación finalizó con advertencias.",
"build finished successfully": "La compilación finalizó correctamente."
}
+14 -13
View File
@@ -36,7 +36,6 @@
"database_add_file_failed": "No se puede agregar el archivo a la base de datos. Error = {0}: {1}",
"reset_timestamp_failed": "No se pudo restablecer la marca de tiempo durante la anulación. Error = {0}: {1}",
"update_timestamp_failed": "No se puede actualizar la marca de tiempo. Error = {0}: {1}",
"symbol_add_failed": "No se puede empezar a agregar símbolos de código para el archivo. Error = {0}: {1}",
"finalize_updates_failed": "No se pueden finalizar las actualizaciones del archivo. Error = {0}: {1}",
"not_directory_with_mode": "{0} no es un directorio (st_mode={1})",
"retrieve_fs_info_failed": "No se puede recuperar la información del sistema de archivos para {0}. Error = {1}",
@@ -175,7 +174,7 @@
"deprecated_label": "En desuso:",
"exceptions_label": "Excepciones:",
"template_parameters_label": "Parámetros de plantilla:",
"compiler_probe_command_line": "Línea de comandos de sondeo del compilador: {0}",
"compiler_query_command_line": "Línea de comandos de consulta del compilador: {0}",
"c_compiler_from_compiler_path": "Intentando obtener los valores predeterminados del compilador de C en la propiedad \"compilerPath\": \"{0}\"",
"cpp_compiler_from_compiler_path": "Intentando obtener los valores predeterminados del compilador de C++ en la propiedad \"compilerPath\": \"{0}\"",
"c_compiler_from_compile_commands": "Intentando obtener los valores predeterminados del compilador de C en el archivo compile_commands.json: \"{0}\"",
@@ -186,23 +185,25 @@
"cpp_std_version_changed": "Para los archivos de código fuente de C++, cppStandard se ha cambiado de \"{0}\" a \"{1}\".",
"c_intellisense_mode_and_std_version_changed": "Para los archivos de código fuente de C, IntelliSenseMode se ha cambiado de \"{0}\" a \"{1}\" y cStandard de \"{2}\" a \"{3}\".",
"cpp_intellisense_mode_and_std_version_changed": "Para los archivos de código fuente de C++, IntelliSenseMode se ha cambiado de \"{0}\" a \"{1}\" y cppStandard de \"{2}\" a \"{3}\".",
"c_intellisense_mode_changed_with_path": "Para los archivos de código fuente de C, IntelliSenseMode se ha cambiado de \"{0}\" a \"{1}\" en función de los argumentos del compilador y el sondeo de compilerPath: \"{2}\"",
"cpp_intellisense_mode_changed_with_path": "Para los archivos de código fuente de C++, IntelliSenseMode se ha cambiado de \"{0}\" a \"{1}\" en función de los argumentos del compilador y el sondeo de compilerPath: \"{2}\"",
"c_std_version_changed_with_path": "Para los archivos de código fuente de C, cStandard se ha cambiado de \"{0}\" a \"{1}\" en función de los argumentos del compilador y el sondeo de compilerPath: \"{2}\"",
"cpp_std_version_changed_with_path": "Para los archivos de código fuente de C++, cppStandard se ha cambiado de \"{0}\" a \"{1}\" en función de los argumentos del compilador y el sondeo de compilerPath: \"{2}\"",
"c_intellisense_mode_and_std_version_changed_with_path": "Para los archivos de código fuente de C, IntelliSenseMode se ha cambiado de \"{0}\" a \"{1}\" y cStandard de \"{2}\" a \"{3}\", en función de los argumentos del compilador y el sondeo de compilerPath: \"{4}\"",
"cpp_intellisense_mode_and_std_version_changed_with_path": "Para los archivos de código fuente de C++, IntelliSenseMode se ha cambiado de \"{0}\" a \"{1}\" y cppStandard de \"{2}\" a \"{3}\", en función de los argumentos del compilador y el sondeo de compilerPath: \"{4}\"",
"c_intellisense_mode_changed_with_path": "Para los archivos de código fuente de C, IntelliSenseMode se ha cambiado de \"{0}\" a \"{1}\" en función de los argumentos del compilador y de la consulta de compilerPath: \"{2}\"",
"cpp_intellisense_mode_changed_with_path": "Para los archivos de código fuente de C++, IntelliSenseMode se ha cambiado de \"{0}\" a \"{1}\" en función de los argumentos del compilador y de la consulta de compilerPath: \"{2}\"",
"c_std_version_changed_with_path": "Para los archivos de código fuente de C, cStandard se ha cambiado de \"{0}\" a \"{1}\" en función de los argumentos del compilador y de la consulta de compilerPath: \"{2}\"",
"cpp_std_version_changed_with_path": "Para los archivos de código fuente de C++, cppStandard se ha cambiado de \"{0}\" a \"{1}\" en función de los argumentos del compilador y de la consulta de compilerPath: \"{2}\"",
"c_intellisense_mode_and_std_version_changed_with_path": "Para los archivos de código fuente de C, IntelliSenseMode se ha cambiado de \"{0}\" a \"{1}\" y cStandard de \"{2}\" a \"{3}\", en función de los argumentos del compilador y de la consulta de compilerPath: \"{4}\"",
"cpp_intellisense_mode_and_std_version_changed_with_path": "Para los archivos de código fuente de C++, IntelliSenseMode se ha cambiado de \"{0}\" a \"{1}\" y cppStandard de \"{2}\" a \"{3}\", en función de los argumentos del compilador y de la consulta de compilerPath: \"{4}\"",
"compiler_path_changed": "No se puede resolver la configuración con compilerPath \"{0}\". Se usará \"{1}\".",
"compiler_path_invalid": "No se puede resolver la configuración con compilerPath: \"{0}\"",
"compiler_path_empty": "Omitiendo el sondeo del compilador debido a que la ruta compilerPath está explícitamente vacía.",
"compiler_path_empty": "Omitiendo la consulta del compilador debido a que la ruta compilerPath está explícitamente vacía.",
"msvc_intellisense_specified": "IntelliSenseMode MSVC especificado. Configurando para el compilador cl.exe.",
"unable_to_configure_cl_exe": "No se puede configurar para el compilador cl.exe.",
"probing_compiler_default_target": "Sondeo del destino predeterminado del compilador mediante la línea de comandos: \"{0}\" {1}",
"querying_compiler_default_target": "Consulta del destino predeterminado del compilador mediante la línea de comandos: \"{0}\" {1}",
"compiler_default_target": "El compilador devolvió el valor de destino predeterminado: {0}",
"c_probing_compiler_default_standard": "Sondeo del compilador para el estándar de lenguaje C predeterminado con la línea de comandos: {0}",
"cpp_probing_compiler_default_standard": "Sondeo del compilador para el estándar de lenguaje C++ predeterminado con la línea de comandos: {0}",
"c_querying_compiler_default_standard": "Consulta del compilador para el estándar de lenguaje C predeterminado con la línea de comandos: {0}",
"cpp_querying_compiler_default_standard": "Consulta del compilador para el estándar de lenguaje C++ predeterminado con la línea de comandos: {0}",
"detected_language_standard_version": "Versión estándar del lenguaje detectada: {0}",
"unhandled_default_target_detected": "Se detectó un valor de destino del compilador predeterminado no controlado: {0}",
"unhandled_target_arg_detected": "Se detectó un valor del argumento de destino no controlado: {0}",
"memory_limit_shutting_down_intellisense": "Cerrando el servidor de IntelliSense: {0}. El uso de la memoria es de {1} MB y ha superado el límite de {2} MB."
"memory_limit_shutting_down_intellisense": "Cerrando el servidor de IntelliSense: {0}. El uso de la memoria es de {1} MB y ha superado el límite de {2} MB.",
"failed_to_query_for_standard_version": "No se pudo consultar el compilador en la ruta de acceso \"{0}\" para las versiones estándar predeterminadas. La consulta del compilador está deshabilitada para este.",
"unrecognized_language_standard_version": "La consulta del compilador devolvió una versión estándar del lenguaje no reconocida. En su lugar se usará la última versión admitida."
}
+1
View File
@@ -22,6 +22,7 @@
"c_cpp.command.rescanWorkspace.title": "Réanalyser l'espace de travail",
"c_cpp.command.vcpkgClipboardInstallSuggested.title": "Copier la commande vcpkg install dans le Presse-papiers",
"c_cpp.command.vcpkgOnlineHelpSuggested.title": "Visiter la page d'aide de vcpkg",
"c_cpp.command.generateEditorConfig.title": "Générer le contenu d'EditorConfig à partir des paramètres de format VC",
"c_cpp.configuration.formatting.description": "Configure le moteur de mise en forme",
"c_cpp.configuration.formatting.clangFormat.description": "clang-format est utilisé pour la mise en forme du code.",
"c_cpp.configuration.formatting.vcFormat.description": "Le moteur de mise en forme de Visual C++ est utilisé pour la mise en forme du code.",
@@ -5,6 +5,7 @@
// Do not edit this file. It is machine generated.
{
"build.and.debug.active.file": "Générer et déboguer le fichier actif",
"single_file_mode_not_available": "Cette commande n'est pas disponible pour le mode de fichier unique.",
"cannot.build.non.cpp": "Génération et débogage impossibles, car le fichier actif n'est pas un fichier source C ou C++.",
"no.compiler.found": "Aucun compilateur",
"select.configuration": "Sélectionner une configuration",
@@ -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.
{
"build_active_file": "générer le fichier actif",
"compiler_details": "compilateur :",
"task_generated_by_debugger": "Tâche générée par le débogueur.",
"starting_build": "Démarrage de la génération...",
"build_finished_with_error": "La génération s'est achevée avec une ou plusieurs erreurs",
"build_finished_with_warnings": "La génération s'est achevée avec un ou plusieurs avertissements",
"build finished successfully": "La génération s'est achevée correctement."
}
+14 -13
View File
@@ -36,7 +36,6 @@
"database_add_file_failed": "Impossible d'ajouter le fichier à la base de données, erreur = {0} : {1}",
"reset_timestamp_failed": "La réinitialisation de l'horodatage a échoué pendant l'abandon, erreur = {0} : {1}",
"update_timestamp_failed": "Impossible de mettre à jour l'horodatage, erreur = {0} : {1}",
"symbol_add_failed": "Impossible de commencer à ajouter des symboles de code pour le fichier, erreur = {0} : {1}",
"finalize_updates_failed": "Impossible de finaliser les mises à jour du fichier, erreur = {0} : {1}",
"not_directory_with_mode": "{0} n'est pas un répertoire (st_mode={1})",
"retrieve_fs_info_failed": "Impossible de récupérer les informations du système de fichiers pour {0}. Erreur = {1}",
@@ -175,7 +174,7 @@
"deprecated_label": "Déprécié :",
"exceptions_label": "Exceptions :",
"template_parameters_label": "Paramètres du modèle :",
"compiler_probe_command_line": "Ligne de commande de la sonde du compilateur : {0}",
"compiler_query_command_line": "Ligne de commande d'interrogation du compilateur : {0}",
"c_compiler_from_compiler_path": "Tentative d'obtention des valeurs par défaut du compilateur C dans la propriété \"compilerPath\" : '{0}'",
"cpp_compiler_from_compiler_path": "Tentative d'obtention des valeurs par défaut du compilateur C++ dans la propriété \"compilerPath\" : '{0}'",
"c_compiler_from_compile_commands": "Tentative d'obtention des valeurs par défaut du compilateur C dans le fichier compile_commands.json : '{0}'",
@@ -186,23 +185,25 @@
"cpp_std_version_changed": "Pour les fichiers sources C++, cppStandard est passé de \"{0}\" à \"{1}\".",
"c_intellisense_mode_and_std_version_changed": "Pour les fichiers sources C, IntelliSenseMode est passé de \"{0}\" à \"{1}\" et cStandard est passé de \"{2}\" à \"{3}\".",
"cpp_intellisense_mode_and_std_version_changed": "Pour les fichiers sources C++, IntelliSenseMode est passé de \"{0}\" à \"{1}\" et cppStandard est passé de \"{2}\" à \"{3}\".",
"c_intellisense_mode_changed_with_path": "Pour les fichiers sources C, IntelliSenseMode est passé de \"{0}\" à \"{1}\" en fonction des arguments du compilateur et du sondage de compilerPath : \"{2}\"",
"cpp_intellisense_mode_changed_with_path": "Pour les fichiers sources C++, IntelliSenseMode est passé de \"{0}\" à \"{1}\" en fonction des arguments du compilateur et du sondage de compilerPath : \"{2}\"",
"c_std_version_changed_with_path": "Pour les fichiers sources C, cStandard est passé de \"{0}\" à \"{1}\" en fonction des arguments du compilateur et du sondage de compilerPath : \"{2}\"",
"cpp_std_version_changed_with_path": "Pour les fichiers sources C++, cppStandard est passé de \"{0}\" à \"{1}\" en fonction des arguments du compilateur et du sondage de compilerPath : \"{2}\"",
"c_intellisense_mode_and_std_version_changed_with_path": "Pour les fichiers sources C, IntelliSenseMode est passé de \"{0}\" à \"{1}\" et cStandard est passé de \"{2}\" à \"{3}\" en fonction des arguments du compilateur et du sondage de compilerPath : \"{4}\"",
"cpp_intellisense_mode_and_std_version_changed_with_path": "Pour les fichiers sources C++, IntelliSenseMode est passé de \"{0}\" à \"{1}\" et cppStandard est passé de \"{2}\" à \"{3}\" en fonction des arguments du compilateur et du sondage de compilerPath : \"{4}\"",
"c_intellisense_mode_changed_with_path": "Pour les fichiers sources C, IntelliSenseMode est passé de \"{0}\" à \"{1}\" en fonction des arguments du compilateur et de l'interrogation de compilerPath : \"{2}\"",
"cpp_intellisense_mode_changed_with_path": "Pour les fichiers sources C++, IntelliSenseMode est passé de \"{0}\" à \"{1}\" en fonction des arguments du compilateur et de l'interrogation de compilerPath : \"{2}\"",
"c_std_version_changed_with_path": "Pour les fichiers sources C, cStandard est passé de \"{0}\" à \"{1}\" en fonction des arguments du compilateur et de l'interrogation de compilerPath : \"{2}\"",
"cpp_std_version_changed_with_path": "Pour les fichiers sources C++, cppStandard est passé de \"{0}\" à \"{1}\" en fonction des arguments du compilateur et de l'interrogation de compilerPath : \"{2}\"",
"c_intellisense_mode_and_std_version_changed_with_path": "Pour les fichiers sources C, IntelliSenseMode est passé de \"{0}\" à \"{1}\" et cStandard est passé de \"{2}\" à \"{3}\" en fonction des arguments du compilateur et de l'interrogation de compilerPath : \"{4}\"",
"cpp_intellisense_mode_and_std_version_changed_with_path": "Pour les fichiers sources C++, IntelliSenseMode est passé de \"{0}\" à \"{1}\" et cppStandard est passé de \"{2}\" à \"{3}\" en fonction des arguments du compilateur et de l'interrogation de compilerPath : \"{4}\"",
"compiler_path_changed": "Impossible de résoudre la configuration avec le compilerPath \"{0}\". Utilisation de \"{1}\" à la place.",
"compiler_path_invalid": "Impossible de résoudre la configuration avec le compilerPath \"{0}\"",
"compiler_path_empty": "Sondage du compilateur ignoré en raison d'un compilerPath explicitement vide",
"compiler_path_empty": "Interrogation du compilateur ignorée en raison d'un compilerPath explicitement vide",
"msvc_intellisense_specified": "Paramètre MSVC intelliSenseMode spécifié. Configuration pour le compilateur cl.exe.",
"unable_to_configure_cl_exe": "Impossible d'effectuer la configuration pour le compilateur cl.exe.",
"probing_compiler_default_target": "Sondage de la cible par défaut du compilateur via la ligne de commande : \"{0}\" {1}",
"querying_compiler_default_target": "Interrogation de la cible par défaut du compilateur via la ligne de commande : \"{0}\" {1}",
"compiler_default_target": "Le compilateur a retourné la valeur cible par défaut : {0}",
"c_probing_compiler_default_standard": "Sondage du compilateur pour déterminer la norme de langage C par défaut via la ligne de commande : {0}",
"cpp_probing_compiler_default_standard": "Sondage du compilateur pour déterminer la norme de langage C++ par défaut via la ligne de commande : {0}",
"c_querying_compiler_default_standard": "Interrogation du compilateur pour déterminer la norme de langage C par défaut via la ligne de commande : {0}",
"cpp_querying_compiler_default_standard": "Interrogation du compilateur pour déterminer la norme de langage C++ par défaut via la ligne de commande : {0}",
"detected_language_standard_version": "Version de la norme de langage détectée : {0}",
"unhandled_default_target_detected": "Détection d'une valeur cible par défaut du compilateur non prise en charge : {0}",
"unhandled_target_arg_detected": "Détection d'une valeur d'argument cible non prise en charge : {0}",
"memory_limit_shutting_down_intellisense": "Arrêt du serveur IntelliSense : {0}. L'utilisation de la mémoire est de {1} Mo et a dépassé la limite fixée à {2} Mo."
"memory_limit_shutting_down_intellisense": "Arrêt du serveur IntelliSense : {0}. L'utilisation de la mémoire est de {1} Mo et a dépassé la limite fixée à {2} Mo.",
"failed_to_query_for_standard_version": "Échec de l'interrogation du compilateur sur le chemin \"{0}\" pour les versions normalisées par défaut. L'interrogation du compilateur est désactivée pour ce compilateur.",
"unrecognized_language_standard_version": "L'interrogation du compilateur a retourné une version de norme de langage non reconnue. La toute dernière version prise en charge va être utilisée à la place."
}
+1
View File
@@ -22,6 +22,7 @@
"c_cpp.command.rescanWorkspace.title": "Ripeti analisi dell'area di lavoro",
"c_cpp.command.vcpkgClipboardInstallSuggested.title": "Copia il comando di installazione di vcpkg negli Appunti",
"c_cpp.command.vcpkgOnlineHelpSuggested.title": "Visitare la pagina della Guida di vcpkg",
"c_cpp.command.generateEditorConfig.title": "Genera il contenuto di EditorConfig dalle impostazioni di Formato VC",
"c_cpp.configuration.formatting.description": "Configura il motore di formattazione",
"c_cpp.configuration.formatting.clangFormat.description": "Per formattare il codice, verrà usato clang-format.",
"c_cpp.configuration.formatting.vcFormat.description": "Per formattare il codice, verrà usato il motore di formattazione Visual C++.",
@@ -5,6 +5,7 @@
// Do not edit this file. It is machine generated.
{
"build.and.debug.active.file": "Compila ed esegui il debug del file attivo",
"single_file_mode_not_available": "Questo comando non è disponibile per la modalità file singolo.",
"cannot.build.non.cpp": "Non è possibile compilare ed eseguire il debug perché il file attivo non è un file di origine C o C++.",
"no.compiler.found": "Non è stato trovato alcun compilatore",
"select.configuration": "Seleziona una configurazione",
@@ -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.
{
"build_active_file": "compila il file attivo",
"compiler_details": "compilatore:",
"task_generated_by_debugger": "Attività generata dal debugger.",
"starting_build": "Avvio della compilazione...",
"build_finished_with_error": "La compilazione è terminata con uno o più errori",
"build_finished_with_warnings": "La compilazione è terminata con uno o più avvisi",
"build finished successfully": "La compilazione è terminata."
}
+14 -13
View File
@@ -36,7 +36,6 @@
"database_add_file_failed": "Non è possibile aggiungere il file al database. Errore = {0}: {1}",
"reset_timestamp_failed": "Non è stato possibile reimpostare il timestamp durante l'interruzione. Errore = {0}: {1}",
"update_timestamp_failed": "Non è possibile aggiornare il timestamp. Errore = {0}: {1}",
"symbol_add_failed": "Non è possibile iniziare ad aggiungere simboli di codice per il file. Errore = {0}: {1}",
"finalize_updates_failed": "Non è possibile finalizzare gli aggiornamenti per il file. Errore = {0}: {1}",
"not_directory_with_mode": "{0} non è una directory (st_mode={1})",
"retrieve_fs_info_failed": "Non è possibile recuperare le informazioni del file system per {0}. Errore = {1}",
@@ -175,7 +174,7 @@
"deprecated_label": "Deprecato:",
"exceptions_label": "Eccezioni:",
"template_parameters_label": "Parametri del modello:",
"compiler_probe_command_line": "Riga di comando del probe del compilatore: {0}",
"compiler_query_command_line": "Riga di comando della query del compilatore: {0}",
"c_compiler_from_compiler_path": "Tentativo di recuperare le impostazioni predefinite dal compilatore C nella proprietà \"compilerPath\": '{0}'",
"cpp_compiler_from_compiler_path": "Tentativo di recuperare le impostazioni predefinite dal compilatore C++ nella proprietà \"compilerPath\": '{0}'",
"c_compiler_from_compile_commands": "Tentativo di recuperare le impostazioni predefinite dal compilatore C nel file compile_commands.json: '{0}'",
@@ -186,23 +185,25 @@
"cpp_std_version_changed": "Per il file di origine C++, il valore di cppStandard è stato modificato da \"{0}\" a \"{1}\".",
"c_intellisense_mode_and_std_version_changed": "Per i file di origine C, il valore di IntelliSenseMode è stato modificato da \"{0}\" a \"{1}\" e quello di cStandard è stato modificato da \"{2}\" a \"{3}\".",
"cpp_intellisense_mode_and_std_version_changed": "Per i file di origine C++, il valore di IntelliSenseMode è stato modificato da \"{0}\" a \"{1}\" e quello di cppStandard è stato modificato da \"{2}\" a \"{3}\".",
"c_intellisense_mode_changed_with_path": "Per i file di origine C, il valore di IntelliSenseMode è stato modificato da \"{0}\" a \"{1}\" in base agli argomenti del compilatore e all'esecuzione del probe su compilerPath: \"{2}\"",
"cpp_intellisense_mode_changed_with_path": "Per i file di origine C++, il valore di IntelliSenseMode è stato modificato da \"{0}\" a \"{1}\" in base agli argomenti del compilatore e all'esecuzione del probe su compilerPath: \"{2}\"",
"c_std_version_changed_with_path": "Per i file di origine C, il valore di cStandard è stato modificato da \"{0}\" a \"{1}\" in base agli argomenti del compilatore e all'esecuzione del probe su compilerPath: \"{2}\"",
"cpp_std_version_changed_with_path": "Per i file di origine C++, il valore di cppStandard è stato modificato da \"{0}\" a \"{1}\" in base agli argomenti del compilatore e all'esecuzione del probe su compilerPath: \"{2}\"",
"c_intellisense_mode_and_std_version_changed_with_path": "Per i file di origine C, il valore di IntelliSenseMode è stato modificato da \"{0}\" a \"{1}\" e quello di cStandard è stato modificato da \"{2}\" a \"{3}\" in base agli argomenti del compilatore e all'esecuzione del probe su compilerPath: \"{4}\"",
"cpp_intellisense_mode_and_std_version_changed_with_path": "Per i file di origine C++, il valore di IntelliSenseMode è stato modificato da \"{0}\" a \"{1}\" e quello di cppStandard è stato modificato da \"{2}\" a \"{3}\" in base agli argomenti del compilatore e all'esecuzione del probe su compilerPath: \"{4}\"",
"c_intellisense_mode_changed_with_path": "Per i file di origine C, il valore di IntelliSenseMode è stato modificato da \"{0}\" a \"{1}\" in base agli argomenti del compilatore e all'esecuzione di query su compilerPath: \"{2}\"",
"cpp_intellisense_mode_changed_with_path": "Per i file di origine C++, il valore di IntelliSenseMode è stato modificato da \"{0}\" a \"{1}\" in base agli argomenti del compilatore e all'esecuzione di query su compilerPath: \"{2}\"",
"c_std_version_changed_with_path": "Per i file di origine C, il valore di cStandard è stato modificato da \"{0}\" a \"{1}\" in base agli argomenti del compilatore e all'esecuzione di query su compilerPath: \"{2}\"",
"cpp_std_version_changed_with_path": "Per i file di origine C++, il valore di cppStandard è stato modificato da \"{0}\" a \"{1}\" in base agli argomenti del compilatore e all'esecuzione di query su compilerPath: \"{2}\"",
"c_intellisense_mode_and_std_version_changed_with_path": "Per i file di origine C, il valore di IntelliSenseMode è stato modificato da \"{0}\" a \"{1}\" e quello di cStandard è stato modificato da \"{2}\" a \"{3}\" in base agli argomenti del compilatore e all'esecuzione di query su compilerPath: \"{4}\"",
"cpp_intellisense_mode_and_std_version_changed_with_path": "Per i file di origine C++, il valore di IntelliSenseMode è stato modificato da \"{0}\" a \"{1}\" e quello di cppStandard è stato modificato da \"{2}\" a \"{3}\" in base agli argomenti del compilatore e all'esecuzione di query su compilerPath: \"{4}\"",
"compiler_path_changed": "Non è possibile risolvere la configurazione con compilerPath \"{0}\". In alternativa, verrà usato \"{1}\".",
"compiler_path_invalid": "Non è possibile risolvere la configurazione con compilerPath: \"{0}\"",
"compiler_path_empty": "Il probe del compilatore verrà ignorato perché compilerPath è esplicitamente vuoto",
"compiler_path_empty": "La query del compilatore verrà ignorata perché compilerPath è esplicitamente vuoto",
"msvc_intellisense_specified": "È stato specificato intelliSenseMode MSVC. Verrà eseguita la configurazione per il compilatore cl.exe.",
"unable_to_configure_cl_exe": "Non è possibile eseguire la configurazione per il compilatore cl.exe.",
"probing_compiler_default_target": "Esecuzione del probe sulla destinazione predefinita del compilatore con la riga di comando: \"{0}\" {1}",
"querying_compiler_default_target": "Esecuzione di query sulla destinazione predefinita del compilatore con la riga di comando: \"{0}\" {1}",
"compiler_default_target": "Il compilatore ha restituito il valore di destinazione predefinito: {0}",
"c_probing_compiler_default_standard": "Esecuzione del probe sul compilatore per lo standard del linguaggio C predefinito con la riga di comando: {0}",
"cpp_probing_compiler_default_standard": "Esecuzione del probe sul compilatore per lo standard del linguaggio C++ predefinito con la riga di comando: {0}",
"c_querying_compiler_default_standard": "Esecuzione di query sul compilatore per lo standard del linguaggio C predefinito con la riga di comando: {0}",
"cpp_querying_compiler_default_standard": "Esecuzione di query sul compilatore per lo standard del linguaggio C++ predefinito con la riga di comando: {0}",
"detected_language_standard_version": "Versione standard del linguaggio rilevata: {0}",
"unhandled_default_target_detected": "È stato rilevato un valore di destinazione del compilatore predefinito non gestito: {0}",
"unhandled_target_arg_detected": "È stato rilevato un valore dell'argomento di destinazione non gestito: {0}",
"memory_limit_shutting_down_intellisense": "Il server IntelliSense verrà arrestato: {0}. La memoria utilizzata è {1} MB e ha superato il limite di {2} MB."
"memory_limit_shutting_down_intellisense": "Il server IntelliSense verrà arrestato: {0}. La memoria utilizzata è {1} MB e ha superato il limite di {2} MB.",
"failed_to_query_for_standard_version": "Non è stato possibile eseguire una query sul compilatore nel percorso \"{0}\" per le versioni standard predefinite. L'esecuzione di query del compilatore è disabilitata per questo compilatore.",
"unrecognized_language_standard_version": "La query del compilatore ha restituito una versione standard del linguaggio non riconosciuta. In alternativa, verrà usata la versione più recente supportata."
}
+1
View File
@@ -22,6 +22,7 @@
"c_cpp.command.rescanWorkspace.title": "ワークスペースの再スキャン",
"c_cpp.command.vcpkgClipboardInstallSuggested.title": "vcpkg インストール コマンドをクリップボードにコピーする",
"c_cpp.command.vcpkgOnlineHelpSuggested.title": "vcpkg のヘルプ ページへのアクセス",
"c_cpp.command.generateEditorConfig.title": "VC 形式の設定からの EditorConfig コンテンツの生成",
"c_cpp.configuration.formatting.description": "書式設定エンジンを構成します",
"c_cpp.configuration.formatting.clangFormat.description": "clang-format を使用してコードがフォーマットされます。",
"c_cpp.configuration.formatting.vcFormat.description": "コードの書式設定に Visual C++ の書式設定エンジンが使用されます。",
@@ -5,6 +5,7 @@
// Do not edit this file. It is machine generated.
{
"build.and.debug.active.file": "アクティブ ファイルのビルドとデバッグ",
"single_file_mode_not_available": "このコマンドは、単一ファイルモードでは使用できません。",
"cannot.build.non.cpp": "アクティブ ファイルが C または C++ ソース ファイルではないため、ビルドおよびデバッグできません。",
"no.compiler.found": "コンパイラが見つかりませんでした",
"select.configuration": "構成の選択",
@@ -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.
{
"build_active_file": "アクティブなファイルのビルド",
"compiler_details": "コンパイラ:",
"task_generated_by_debugger": "デバッガーによって生成されたタスク。",
"starting_build": "ビルドを開始しています...",
"build_finished_with_error": "ビルドが完了しましたが、エラーが発生しました",
"build_finished_with_warnings": "ビルドが完了しましたが、警告が発生しました",
"build finished successfully": "ビルドが正常に完了しました。"
}
+14 -13
View File
@@ -36,7 +36,6 @@
"database_add_file_failed": "ファイルをデータベースに追加できません。エラー = {0}: {1}",
"reset_timestamp_failed": "中止でタイムスタンプをリセットできませんでした。エラー = {0}: {1}",
"update_timestamp_failed": "タイムスタンプを更新できません。エラー = {0}: {1}",
"symbol_add_failed": "ファイルのコード シンボルの追加を開始できません。エラー = {0}: {1}",
"finalize_updates_failed": "ファイルの更新を完了できません。エラー = {0}: {1}",
"not_directory_with_mode": "{0} はディレクトリではありません (st_mode ={1})",
"retrieve_fs_info_failed": "{0} のファイル システム情報を取得できません。エラー = {1}",
@@ -175,7 +174,7 @@
"deprecated_label": "非推奨:",
"exceptions_label": "例外:",
"template_parameters_label": "テンプレート パラメーター:",
"compiler_probe_command_line": "コンパイラ プローブ コマンド ライン: {0}",
"compiler_query_command_line": "コンパイラ クエリ コマンド ライン: {0}",
"c_compiler_from_compiler_path": "\"compilerPath\" プロパティの C コンパイラから既定値を取得しようとしています: '{0}'",
"cpp_compiler_from_compiler_path": "\"compilerPath\" プロパティの C++ コンパイラから既定値を取得しようとしています: '{0}'",
"c_compiler_from_compile_commands": "compile_commands.json ファイルの C コンパイラから既定値を取得しようとしています: '{0}'",
@@ -186,23 +185,25 @@
"cpp_std_version_changed": "C++ ソース ファイルで、cppStandard が \"{0}\" から \"{1}\" に変更されました。",
"c_intellisense_mode_and_std_version_changed": "C ソース ファイルで、IntelliSenseMode が \"{0}\" から \"{1}\" に変更され、cStandard が \"{2}\" から \"{3}\" に変更されました。",
"cpp_intellisense_mode_and_std_version_changed": "C++ ソースファイルで、IntelliSenseMode が \"{0}\" から \"{1}\" に変更され、cppStandard が \"{2}\" から \"{3}\" に変更されました。",
"c_intellisense_mode_changed_with_path": "C ソース ファイルで、コンパイラの引数とプローブ compilerPath に基づいて、IntelliSenseMode が \"{0}\" から \"{1}\" に変更されました: \"{2}\"",
"cpp_intellisense_mode_changed_with_path": "C++ ソース ファイルで、コンパイラの引数と compilerPath \"{2}\" のプローブに基づいて、IntelliSenseMode が \"{0}\" から \"{1}\" に変更されました",
"c_std_version_changed_with_path": "C ソース ファイルで、コンパイラの引数と compilerPath \"{2}\" のプローブに基づいて、cStandard が \"{0}\" から \"{1}\" に変更されました",
"cpp_std_version_changed_with_path": "C++ ソース ファイルで、コンパイラの引数とプローブ compilerPath に基づいて、cppStandard が \"{0}\" から \"{1}\" に変更されました: \"{2}\"",
"c_intellisense_mode_and_std_version_changed_with_path": "C ソース ファイルで、コンパイラの引数とプローブ compilerPath に基づいて、IntelliSenseMode が \"{0}\" から \"{1}\" に変更され、cStandard が \"{2}\" から \"{3}\" に変更されました: \"{4}\"",
"cpp_intellisense_mode_and_std_version_changed_with_path": "C++ ソース ファイルで、コンパイラの引数と compilerPath \"{4}\" のプローブに基づいて、IntelliSenseMode が \"{0}\" から \"{1}\" に変更され、cppStandard が \"{2}\" から \"{3}\" に変更されました",
"c_intellisense_mode_changed_with_path": "C ソース ファイルで、コンパイラの引数と compilerPath のクエリに基づいて、IntelliSenseMode が \"{0}\" から \"{1}\" に変更されました: \"{2}\"",
"cpp_intellisense_mode_changed_with_path": "C++ ソース ファイルで、コンパイラの引数と compilerPath のクエリに基づいて、IntelliSenseMode が \"{0}\" から \"{1}\" に変更されました: \"{2}\"",
"c_std_version_changed_with_path": "C ソース ファイルで、コンパイラの引数と compilerPath のクエリに基づいて、cStandard が \"{0}\" から \"{1}\" に変更されました: \"{2}\"",
"cpp_std_version_changed_with_path": "C++ ソース ファイルで、コンパイラの引数と compilerPath のクエリに基づいて、cppStandard が \"{0}\" から \"{1}\" に変更されました: \"{2}\"",
"c_intellisense_mode_and_std_version_changed_with_path": "C ソース ファイルで、コンパイラの引数と compilerPath のクエリに基づいて、IntelliSenseMode が \"{0}\" から \"{1}\" に変更され、cStandard が \"{2}\" から \"{3}\" に変更されました: \"{4}\"",
"cpp_intellisense_mode_and_std_version_changed_with_path": "C++ ソース ファイルで、コンパイラの引数と compilerPath のクエリに基づいて、IntelliSenseMode が \"{0}\" から \"{1}\" に変更され、cppStandard が \"{2}\" から \"{3}\" に変更されました: \"{4}\"",
"compiler_path_changed": "compilerPath \"{0}\" を使用して構成を解決できません。代わりに \"{1}\" を使用しています。",
"compiler_path_invalid": "compilerPath を使用して構成を解決できません: \"{0}\"",
"compiler_path_empty": "compilerPath が明示的に空になっているため、コンパイラのプローブをスキップしています",
"compiler_path_empty": "compilerPath が明示的に空になっているため、コンパイラのクエリをスキップしています",
"msvc_intellisense_specified": "MSVC intelliSenseMode が指定されました。コンパイラ cl.exe 用に構成しています。",
"unable_to_configure_cl_exe": "コンパイラ cl.exe 用に構成できません。",
"probing_compiler_default_target": "コマンド ラインを使用してコンパイラの既定のターゲットをプローブしています: \"{0}\" {1}",
"querying_compiler_default_target": "コマンド ラインを使用してコンパイラの既定のターゲットをクエリしています: \"{0}\" {1}",
"compiler_default_target": "コンパイラによって既定のターゲット値が返されました: {0}",
"c_probing_compiler_default_standard": "コマンド ラインを使用して既定の C 言語標準用にコンパイラをプローブしています: {0}",
"cpp_probing_compiler_default_standard": "コマンド ラインを使用して既定の C++ 言語標準用にコンパイラをプローブしています: {0}",
"c_querying_compiler_default_standard": "コマンド ラインを使用して既定の C 言語標準用にコンパイラをクエリしています: {0}",
"cpp_querying_compiler_default_standard": "コマンド ラインを使用して既定の C++ 言語標準用にコンパイラをクエリしています: {0}",
"detected_language_standard_version": "検出された言語標準バージョン: {0}",
"unhandled_default_target_detected": "ハンドルされていない既定のコンパイラ ターゲット値が検出されました: {0}",
"unhandled_target_arg_detected": "ハンドルされていないターゲット引数値が検出されました: {0}",
"memory_limit_shutting_down_intellisense": "IntelliSense サーバーをシャットダウンしています: {0}。メモリ使用量は {1} MB で、{2} MB の制限を超えました。"
"memory_limit_shutting_down_intellisense": "IntelliSense サーバーをシャットダウンしています: {0}。メモリ使用量は {1} MB で、{2} MB の制限を超えました。",
"failed_to_query_for_standard_version": "既定の標準バージョンのパス \"{0}\" でコンパイラをクエリできませんでした。このコンパイラでは、コンパイラのクエリが無効になっています。",
"unrecognized_language_standard_version": "コンパイラ クエリにより、認識されない言語標準バージョンが返されました。代わりに、サポートされている最新のバージョンが使用されます。"
}
+1
View File
@@ -22,6 +22,7 @@
"c_cpp.command.rescanWorkspace.title": "작업 영역 다시 검사",
"c_cpp.command.vcpkgClipboardInstallSuggested.title": "vcpkg install 명령을 클립보드에 복사",
"c_cpp.command.vcpkgOnlineHelpSuggested.title": "vcpkg 도움말 페이지 방문",
"c_cpp.command.generateEditorConfig.title": "VC 형식 설정에서 EditorConfig 콘텐츠 생성",
"c_cpp.configuration.formatting.description": "서식 엔진을 구성합니다.",
"c_cpp.configuration.formatting.clangFormat.description": "코드 서식을 지정하는 데 clang-format이 사용됩니다.",
"c_cpp.configuration.formatting.vcFormat.description": "코드 서식을 지정하는 데 Visual C++ 서식 엔진이 사용됩니다.",
@@ -5,6 +5,7 @@
// Do not edit this file. It is machine generated.
{
"build.and.debug.active.file": "활성 파일 빌드 및 디버그",
"single_file_mode_not_available": "단일 파일 모드에서는 이 명령을 사용할 수 없습니다.",
"cannot.build.non.cpp": "활성 파일이 C 또는 C++ 소스 파일이 아니므로 빌드 및 디버그할 수 없습니다.",
"no.compiler.found": "컴파일러를 찾을 수 없음",
"select.configuration": "구성 선택",
@@ -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.
{
"build_active_file": "활성 파일 빌드",
"compiler_details": "컴파일러:",
"task_generated_by_debugger": "디버거에서 생성된 작업입니다.",
"starting_build": "빌드를 시작하는 중...",
"build_finished_with_error": "빌드가 완료되었지만, 오류가 발생했습니다.",
"build_finished_with_warnings": "빌드가 완료되었지만, 경고가 발생했습니다.",
"build finished successfully": "빌드가 완료되었습니다."
}
+14 -13
View File
@@ -36,7 +36,6 @@
"database_add_file_failed": "데이터베이스에 파일을 추가할 수 없습니다. 오류 = {0}: {1}",
"reset_timestamp_failed": "중단하는 동안 타임스탬프를 다시 설정하지 못했습니다. 오류 = {0}: {1}",
"update_timestamp_failed": "타임스탬프를 업데이트할 수 없습니다. 오류 = {0}: {1}",
"symbol_add_failed": "파일의 코드 기호 추가를 시작할 수 없습니다. 오류 = {0}: {1}",
"finalize_updates_failed": "파일 업데이트를 완료할 수 없습니다. 오류 = {0}: {1}",
"not_directory_with_mode": "{0}은(는) 디렉터리가 아닙니다(st_mode={1}).",
"retrieve_fs_info_failed": "{0}의 파일 시스템 정보를 검색할 수 없습니다. 오류 = {1}",
@@ -175,7 +174,7 @@
"deprecated_label": "사용되지 않음:",
"exceptions_label": "예외:",
"template_parameters_label": "템플릿 매개 변수:",
"compiler_probe_command_line": "컴파일러 프로브 명령줄: {0}",
"compiler_query_command_line": "컴파일러 쿼리 명령줄: {0}",
"c_compiler_from_compiler_path": "\"compilerPath\" 속성의 C 컴파일러에서 기본값을 가져오려고 합니다. '{0}'",
"cpp_compiler_from_compiler_path": "\"compilerPath\" 속성의 C++ 컴파일러에서 기본값을 가져오려고 합니다. '{0}'",
"c_compiler_from_compile_commands": "compile_commands.json 파일의 C 컴파일러에서 기본값을 가져오려고 합니다. '{0}'",
@@ -186,23 +185,25 @@
"cpp_std_version_changed": "C++ 소스 파일에서는 cppStandard가 \"{0}\"에서 \"{1}\"(으)로 변경되었습니다.",
"c_intellisense_mode_and_std_version_changed": "C 소스 파일에서는 IntelliSenseMode가 \"{0}\"에서 \"{1}\"(으)로 변경되고 cStandard가 \"{2}\"에서 \"{3}\"(으)로 변경되었습니다.",
"cpp_intellisense_mode_and_std_version_changed": "C++ 소스 파일에서는 IntelliSenseMode가 \"{0}\"에서 \"{1}\"(으)로 변경되고 cppStandard가 \"{2}\"에서 \"{3}\"(으)로 변경되었습니다.",
"c_intellisense_mode_changed_with_path": "C 소스 파일에서는 IntelliSenseMode가 컴파일러 인수 및 프로빙 compilerPath(\"{2}\")에 따라 \"{0}\"에서 \"{1}\"(으)로 변경되었습니다.",
"cpp_intellisense_mode_changed_with_path": "C++ 소스 파일에서는 IntelliSenseMode가 컴파일러 인수 및 프로빙 compilerPath(\"{2}\")에 따라 \"{0}\"에서 \"{1}\"(으)로 변경되었습니다.",
"c_std_version_changed_with_path": "C 소스 파일에서는 cStandard가 컴파일러 인수 및 프로빙 compilerPath(\"{2}\")에 따라 \"{0}\"에서 \"{1}\"(으)로 변경되었습니다.",
"cpp_std_version_changed_with_path": "C++ 소스 파일에서는 cppStandard가 컴파일러 인수 및 프로빙 compilerPath(\"{2}\")에 따라 \"{0}\"에서 \"{1}\"(으)로 변경되었습니다.",
"c_intellisense_mode_and_std_version_changed_with_path": "C 소스 파일에서는 컴파일러 인수 및 프로빙 compilerPath(\"{4}\")에 따라 IntelliSenseMode가 \"{0}\"에서 \"{1}\"(으)로 변경되고 cStandard가 \"{2}\"에서 \"{3}\"(으)로 변경되었습니다.",
"cpp_intellisense_mode_and_std_version_changed_with_path": "C++ 소스 파일에서는 컴파일러 인수 및 프로빙 compilerPath(\"{4}\")에 따라 IntelliSenseMode가 \"{0}\"에서 \"{1}\"(으)로 변경되고 cppStandard가 \"{2}\"에서 \"{3}\"(으)로 변경되었습니다.",
"c_intellisense_mode_changed_with_path": "C 소스 파일에서는 컴파일러 인수 및 쿼리 compilerPath(\"{2}\")에 따라 IntelliSenseMode가 \"{0}\"에서 \"{1}\"(으)로 변경되었습니다.",
"cpp_intellisense_mode_changed_with_path": "C++ 소스 파일에서는 컴파일러 인수 및 쿼리 compilerPath(\"{2}\")에 따라 IntelliSenseMode가 \"{0}\"에서 \"{1}\"(으)로 변경되었습니다.",
"c_std_version_changed_with_path": "C 소스 파일에서는 컴파일러 인수 및 쿼리 compilerPath(\"{2}\")에 따라 cStandard가 \"{0}\"에서 \"{1}\"(으)로 변경되었습니다.",
"cpp_std_version_changed_with_path": "C++ 소스 파일에서는 컴파일러 인수 및 쿼리 compilerPath(\"{2}\")에 따라 cppStandard가 \"{0}\"에서 \"{1}\"(으)로 변경되었습니다.",
"c_intellisense_mode_and_std_version_changed_with_path": "C 소스 파일에서는 컴파일러 인수 및 쿼리 compilerPath(\"{4}\")에 따라 IntelliSenseMode가 \"{0}\"에서 \"{1}\"(으)로 변경되고 cStandard가 \"{2}\"에서 \"{3}\"(으)로 변경되었습니다.",
"cpp_intellisense_mode_and_std_version_changed_with_path": "C++ 소스 파일에서는 컴파일러 인수 및 쿼리 compilerPath(\"{4}\")에 따라 IntelliSenseMode가 \"{0}\"에서 \"{1}\"(으)로 변경되고 cppStandard가 \"{2}\"에서 \"{3}\"(으)로 변경되었습니다.",
"compiler_path_changed": "CompilerPath가 \"{0}\"인 구성을 확인할 수 없습니다. \"{1}\"을(를) 대신 사용하세요.",
"compiler_path_invalid": "CompilerPath가 \"{0}\"인 구성을 확인할 수 없습니다.",
"compiler_path_empty": "명시적으로 빈 compilerPath로 인해 컴파일러 검색을 건너뜁니다.",
"compiler_path_empty": "명시적으로 빈 compilerPath로 인해 컴파일러 쿼리를 건너뜁니다.",
"msvc_intellisense_specified": "MSVC intelliSenseMode를 지정했습니다. 컴파일러 cl.exe에 대해 구성합니다.",
"unable_to_configure_cl_exe": "컴파일러 cl.exe를 구성할 수 없습니다.",
"probing_compiler_default_target": "명령줄 사용하여 컴파일러의 기본 대상을 검색하는 중: \"{0}\" {1}",
"querying_compiler_default_target": "명령줄 \"{0}\" {1}을(를) 사용하여 컴파일러의 기본 대상을 쿼리하는 중",
"compiler_default_target": "컴파일러가 기본 대상 값을 반환함: {0}",
"c_probing_compiler_default_standard": "명령줄 사용하여 기본 C 언어 표준에 대한 컴파일러를 검색하는 중: {0}",
"cpp_probing_compiler_default_standard": "명령줄 사용하여 기본 C++ 언어 표준에 대한 컴파일러를 검색하는 중: {0}",
"c_querying_compiler_default_standard": "명령줄 {0}을(를) 사용하여 기본 C 언어 표준에 대한 컴파일러를 쿼리하는 중",
"cpp_querying_compiler_default_standard": "명령줄 {0}을(를) 사용하여 기본 C++ 언어 표준에 대한 컴파일러를 쿼리하는 중",
"detected_language_standard_version": "언어 표준 버전이 검색됨: {0}",
"unhandled_default_target_detected": "처리되지 않은 기본 컴파일러 대상 값이 검색됨: {0}",
"unhandled_target_arg_detected": "처리되지 않은 대상 인수 값이 검색됨: {0}",
"memory_limit_shutting_down_intellisense": "IntelliSense 서버 {0}을(를) 종료하는 중입니다. 메모리 사용량이 {1}MB이며 {2}MB 한도를 초과했습니다."
"memory_limit_shutting_down_intellisense": "IntelliSense 서버 {0}을(를) 종료하는 중입니다. 메모리 사용량이 {1}MB이며 {2}MB 한도를 초과했습니다.",
"failed_to_query_for_standard_version": "기본 표준 버전에 대해 경로 \"{0}\"에서 컴파일러를 쿼리하지 못했습니다. 이 컴파일러에 대해서는 컴파일러 쿼리를 사용할 수 없습니다.",
"unrecognized_language_standard_version": "컴파일러 쿼리에서 인식할 수 없는 언어 표준 버전을 반환했습니다. 지원되는 최신 버전이 대신 사용됩니다."
}
+1
View File
@@ -22,6 +22,7 @@
"c_cpp.command.rescanWorkspace.title": "Ponowne skanowanie obszaru roboczego",
"c_cpp.command.vcpkgClipboardInstallSuggested.title": "Kopiowanie polecenia instalowania menedżera vcpkg do schowka",
"c_cpp.command.vcpkgOnlineHelpSuggested.title": "Odwiedź stronę pomocy menedżera vcpkg",
"c_cpp.command.generateEditorConfig.title": "Generuj zawartość pliku EditorConfig z ustawień formatu VC",
"c_cpp.configuration.formatting.description": "Konfiguruje aparat formatowania",
"c_cpp.configuration.formatting.clangFormat.description": "Do formatowania kodu będzie używane narzędzie clang-format.",
"c_cpp.configuration.formatting.vcFormat.description": "Do formatowania kodu będzie używany aparat formatowania języka Visual C++.",
@@ -5,6 +5,7 @@
// Do not edit this file. It is machine generated.
{
"build.and.debug.active.file": "Kompiluj i debuguj aktywny plik",
"single_file_mode_not_available": "To polecenie nie jest dostępne dla trybu pojedynczego pliku.",
"cannot.build.non.cpp": "Nie można skompilować i debugować, ponieważ aktywny plik nie jest plikiem źródłowym języka C lub C++.",
"no.compiler.found": "Nie znaleziono kompilatora",
"select.configuration": "Wybierz konfigurację",
@@ -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.
{
"build_active_file": "kompiluj aktywny plik",
"compiler_details": "kompilator:",
"task_generated_by_debugger": "Zadanie wygenerowane przez debuger.",
"starting_build": "Trwa uruchamianie kompilacji...",
"build_finished_with_error": "Kompilacja została zakończona z błędami",
"build_finished_with_warnings": "Kompilacja została zakończona z ostrzeżeniami",
"build finished successfully": "Kompilacja została zakończona pomyślnie."
}
+14 -13
View File
@@ -36,7 +36,6 @@
"database_add_file_failed": "Nie można dodać pliku do bazy danych, błąd = {0}: {1}",
"reset_timestamp_failed": "Nie można zresetować znacznika czasu podczas przerywania, błąd = {0}: {1}",
"update_timestamp_failed": "Nie można zaktualizować znacznika czasu, błąd = {0}: {1}",
"symbol_add_failed": "Nie można rozpocząć dodawania symboli kodu do pliku, błąd = {0}: {1}",
"finalize_updates_failed": "Nie można sfinalizować aktualizacji dla pliku, błąd = {0}: {1}",
"not_directory_with_mode": "Element {0} nie jest katalogiem (st_mode={1})",
"retrieve_fs_info_failed": "Nie można pobrać informacji systemu plików dla: {0}. Błąd = {1}",
@@ -175,7 +174,7 @@
"deprecated_label": "Przestarzałe:",
"exceptions_label": "Wyjątki:",
"template_parameters_label": "Parametry szablonu:",
"compiler_probe_command_line": "Wiersz polecenia sondy kompilatora: {0}",
"compiler_query_command_line": "Wiersz polecenia zapytania kompilatora: {0}",
"c_compiler_from_compiler_path": "Próba pobrania wartości domyślnych z kompilatora języka C we właściwości „compilerPath”: „{0}”",
"cpp_compiler_from_compiler_path": "Próba pobrania wartości domyślnych z kompilatora języka C++ we właściwości „compilerPath”: „{0}”",
"c_compiler_from_compile_commands": "Próba pobrania wartości domyślnych z kompilatora języka C w pliku compile_commands.json: „{0}”",
@@ -186,23 +185,25 @@
"cpp_std_version_changed": "W przypadku plików źródłowych w języku C++ wartość właściwości cppStandard została zmieniona z „{0}” na „{1}”.",
"c_intellisense_mode_and_std_version_changed": "W przypadku plików źródłowych w języku C wartość właściwości IntelliSenseMode została zmieniona z „{0}” na „{1}”, a wartość właściwości cStandard — z „{2}” na „{3}”.",
"cpp_intellisense_mode_and_std_version_changed": "W przypadku plików źródłowych w języku C++ wartość właściwości IntelliSenseMode została zmieniona z „{0}” na „{1}”, a wartość właściwości cppStandard — z „{2}” na „{3}”.",
"c_intellisense_mode_changed_with_path": "W przypadku plików źródłowych w języku C wartość właściwości IntelliSenseMode została zmieniona z „{0}” na „{1}” na podstawie argumentów kompilatora i właściwości compilerPath sondowania: „{2}”",
"cpp_intellisense_mode_changed_with_path": "W przypadku plików źródłowych w języku C++ wartość właściwości IntelliSenseMode została zmieniona z „{0}” na „{1}” na podstawie argumentów kompilatora i właściwości compilerPath sondowania: „{2}”",
"c_std_version_changed_with_path": "W przypadku plików źródłowych w języku C wartość właściwości cStandard została zmieniona z „{0}” na „{1}” na podstawie argumentów kompilatora i właściwości compilerPath sondowania: „{2}”",
"cpp_std_version_changed_with_path": "W przypadku plików źródłowych w języku C++ wartość właściwości cppStandard została zmieniona z „{0}” na „{1}” na podstawie argumentów kompilatora i właściwości compilerPath sondowania: „{2}”",
"c_intellisense_mode_and_std_version_changed_with_path": "W przypadku plików źródłowych w języku C wartość właściwości IntelliSenseMode została zmieniona z „{0}” na „{1}”, a wartość właściwości cStandard została zmieniona z „{2}” na „{3}” na podstawie argumentów kompilatora i właściwości compilerPath sondowania: „{4}”",
"cpp_intellisense_mode_and_std_version_changed_with_path": "W przypadku plików źródłowych w języku C++ wartość właściwości IntelliSenseMode została zmieniona z „{0}” na „{1}”, a wartość właściwości cppStandard została zmieniona z „{2}” na „{3}” na podstawie argumentów kompilatora i właściwości compilerPath sondowania: „{4}”",
"c_intellisense_mode_changed_with_path": "W przypadku plików źródłowych w języku C wartość właściwości IntelliSenseMode została zmieniona z „{0}” na „{1}” na podstawie argumentów kompilatora i wykonywania zapytań dotyczących właściwości compilerPath: „{2}”",
"cpp_intellisense_mode_changed_with_path": "W przypadku plików źródłowych w języku C++ wartość właściwości IntelliSenseMode została zmieniona z „{0}” na „{1}” na podstawie argumentów kompilatora i wykonywania zapytań dotyczących właściwości compilerPath: „{2}”",
"c_std_version_changed_with_path": "W przypadku plików źródłowych w języku C wartość właściwości cStandard została zmieniona z „{0}” na „{1}” na podstawie argumentów kompilatora i wykonywania zapytań dotyczących właściwości compilerPath: „{2}”",
"cpp_std_version_changed_with_path": "W przypadku plików źródłowych w języku C++ wartość właściwości cppStandard została zmieniona z „{0}” na „{1}” na podstawie argumentów kompilatora i wykonywania zapytań dotyczących właściwości compilerPath: „{2}”",
"c_intellisense_mode_and_std_version_changed_with_path": "W przypadku plików źródłowych w języku C wartość właściwości IntelliSenseMode została zmieniona z „{0}” na „{1}”, a wartość właściwości cStandard została zmieniona z „{2}” na „{3}” na podstawie argumentów kompilatora i wykonywania zapytań dotyczących właściwości compilerPath: „{4}”",
"cpp_intellisense_mode_and_std_version_changed_with_path": "W przypadku plików źródłowych w języku C++ wartość właściwości IntelliSenseMode została zmieniona z „{0}” na „{1}”, a wartość właściwości cppStandard została zmieniona z „{2}” na „{3}” na podstawie argumentów kompilatora i wykonywania zapytań dotyczących właściwości compilerPath: „{4}”",
"compiler_path_changed": "Nie można rozpoznać konfiguracji za pomocą właściwości compilerPath „{0}”. Zamiast tego zostanie użyta wartość „{1}”.",
"compiler_path_invalid": "Nie można rozpoznać konfiguracji za pomocą właściwości compilerPath „{0}”.",
"compiler_path_empty": "Pomijanie sondowania kompilatora z powodu jawnie pustej właściwości compilerPath",
"compiler_path_empty": "Pomijanie wykonywania zapytań kompilatora z powodu jawnie pustej właściwości compilerPath",
"msvc_intellisense_specified": "Określono wartość MSVC dla właściwości intelliSenseMode. Konfigurowanie pod kątem kompilatora cl.exe.",
"unable_to_configure_cl_exe": "Nie można skonfigurować pod kątem kompilatora cl.exe.",
"probing_compiler_default_target": "Sondowanie domyślnego elementu docelowego kompilatora przy użyciu wiersza polecenia: „{0}” {1}",
"querying_compiler_default_target": "Wykonywanie zapytań dotyczących domyślnego elementu docelowego kompilatora przy użyciu wiersza polecenia: „{0}” {1}",
"compiler_default_target": "Kompilator zwrócił domyślną wartość docelową: {0}",
"c_probing_compiler_default_standard": "Sondowanie kompilatora domyślnego standardu języka C przy użyciu wiersza polecenia: {0}",
"cpp_probing_compiler_default_standard": "Sondowanie kompilatora domyślnego standardu języka C++ przy użyciu wiersza polecenia: {0}",
"c_querying_compiler_default_standard": "Wykonywanie zapytań dotyczących kompilatora domyślnego standardu języka C przy użyciu wiersza polecenia: {0}",
"cpp_querying_compiler_default_standard": "Wykonywanie zapytań dotyczących kompilatora domyślnego standardu języka C++ przy użyciu wiersza polecenia: {0}",
"detected_language_standard_version": "Wykryta wersja standardowa języka: {0}",
"unhandled_default_target_detected": "Wykryto nieobsługiwaną domyślną wartość docelową kompilatora: {0}",
"unhandled_target_arg_detected": "Wykryto nieobsługiwaną docelową wartość argumentu: {0}",
"memory_limit_shutting_down_intellisense": "Zamykanie serwera funkcji IntelliSense: {0}. Użycie pamięci to {1} MB i przekroczyło limit wynoszący {2} MB."
"memory_limit_shutting_down_intellisense": "Zamykanie serwera funkcji IntelliSense: {0}. Użycie pamięci to {1} MB i przekroczyło limit wynoszący {2} MB.",
"failed_to_query_for_standard_version": "Nie można wykonać zapytań dotyczących kompilatora w ścieżce „{0}” dla domyślnych wersji standardowych. Wykonywanie zapytań dotyczących kompilatora jest wyłączone dla tego kompilatora.",
"unrecognized_language_standard_version": "Zapytanie kompilatora zwróciło nierozpoznaną wersję standardu języka. Zamiast tego zostanie użyta najnowsza obsługiwana wersja."
}
+1
View File
@@ -22,6 +22,7 @@
"c_cpp.command.rescanWorkspace.title": "Examinar Novamente o Workspace",
"c_cpp.command.vcpkgClipboardInstallSuggested.title": "Copiar o comando de instalação vcpkg para a área de transferência",
"c_cpp.command.vcpkgOnlineHelpSuggested.title": "Visite a página de ajuda do vcpkg",
"c_cpp.command.generateEditorConfig.title": "Gerar o conteúdo do EditorConfig por meio das configurações de Formato do VC",
"c_cpp.configuration.formatting.description": "Configura o mecanismo de formatação",
"c_cpp.configuration.formatting.clangFormat.description": "O clang-format será usado para formatar o código.",
"c_cpp.configuration.formatting.vcFormat.description": "O mecanismo de formatação Visual C++ será usado para formatar o código.",
@@ -5,6 +5,7 @@
// Do not edit this file. It is machine generated.
{
"build.and.debug.active.file": "Criar e depurar o arquivo ativo",
"single_file_mode_not_available": "Este comando não está disponível para o modo de arquivo único.",
"cannot.build.non.cpp": "Não é possível criar e depurar porque o arquivo ativo não é um arquivo de origem C ou C++.",
"no.compiler.found": "Nenhum compilador encontrado",
"select.configuration": "Selecionar uma configuração",
@@ -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.
{
"build_active_file": "arquivo de build ativo",
"compiler_details": "compilador:",
"task_generated_by_debugger": "Tarefa gerada pelo Depurador.",
"starting_build": "Iniciando o build...",
"build_finished_with_error": "Build concluído com erros",
"build_finished_with_warnings": "Build concluído com avisos",
"build finished successfully": "Build concluído com êxito."
}
+14 -13
View File
@@ -36,7 +36,6 @@
"database_add_file_failed": "Não é possível adicionar o arquivo ao banco de dados. Erro = {0}: {1}",
"reset_timestamp_failed": "Falha ao redefinir o carimbo de data/hora durante a anulação, erro = {0}: {1}",
"update_timestamp_failed": "Não é possível atualizar o carimbo de data/hora. Erro = {0}: {1}",
"symbol_add_failed": "Não é possível começar a adicionar símbolos de código para o arquivo. Erro = {0}: {1}",
"finalize_updates_failed": "Não é possível finalizar as atualizações para o arquivo. Erro = {0}: {1}",
"not_directory_with_mode": "{0} não é um diretório (st_mode ={1})",
"retrieve_fs_info_failed": "Não é possível recuperar as informações do sistema de arquivos para {0}. erro = {1}",
@@ -175,7 +174,7 @@
"deprecated_label": "Preterido:",
"exceptions_label": "Exceções:",
"template_parameters_label": "Parâmetros do Modelo:",
"compiler_probe_command_line": "Linha de comando de investigação do compilador: {0}",
"compiler_query_command_line": "Linha de comando de consulta do compilador: {0}",
"c_compiler_from_compiler_path": "Tentando obter padrões do compilador C na propriedade \"compilerPath\": '{0}'",
"cpp_compiler_from_compiler_path": "Tentando obter padrões do compilador C++ na propriedade \"compilerPath\": '{0}'",
"c_compiler_from_compile_commands": "Tentando obter padrões do compilador C no arquivo compile_commands.json: '{0}'",
@@ -186,23 +185,25 @@
"cpp_std_version_changed": "Para arquivos de origem C++, o cppStandard foi alterado de \"{0}\" para \"{1}\".",
"c_intellisense_mode_and_std_version_changed": "Para arquivos de origem C, o IntelliSenseMode foi alterado de \"{0}\" para \"{1}\" e o cStandard foi alterado de \"{2}\" para \"{3}\".",
"cpp_intellisense_mode_and_std_version_changed": "Para arquivos de origem C++, o IntelliSenseMode foi alterado de \"{0}\" para \"{1}\" e o cppStandard foi alterado de \"{2}\" para \"{3}\".",
"c_intellisense_mode_changed_with_path": "Para arquivos de origem C, o IntelliSenseMode foi alterado de \"{0}\" para \"{1}\" com base nos argumentos do compilador e na investigação compilerPath: \"{2}\"",
"cpp_intellisense_mode_changed_with_path": "Para arquivos de origem C++, o IntelliSenseMode foi alterado de \"{0}\" para \"{1}\" com base nos argumentos do compilador e na investigação compilerPath: \"{2}\"",
"c_std_version_changed_with_path": "Para arquivos de origem C, o cStandard foi alterado de \"{0}\" para \"{1}\" com base nos argumentos do compilador e na investigação compilerPath: \"{2}\"",
"cpp_std_version_changed_with_path": "Para arquivos de origem C++, o cppStandard foi alterado de \"{0}\" para \"{1}\" com base nos argumentos do compilador e na investigação do compilerPath: \"{2}\"",
"c_intellisense_mode_and_std_version_changed_with_path": "Para arquivos de origem C, o IntelliSenseMode foi alterado de \"{0}\" para \"{1}\" e o cStandard foi alterado de \"{2}\" para \"{3}\" com base nos argumentos do compilador e na investigação compilerPath: \"{4}\"",
"cpp_intellisense_mode_and_std_version_changed_with_path": "Para arquivos de origem C++, o IntelliSenseMode foi alterado de \"{0}\" para \"{1}\" e o cppStandard foi alterado de \"{2}\" para \"{3}\" com base nos argumentos do compilador e na investigação compilerPath: \"{4}\"",
"c_intellisense_mode_changed_with_path": "Para os arquivos de origem C, o IntelliSenseMode foi alterado de \"{0}\" para \"{1}\" com base nos argumentos do compilador e na consulta do compilerPath: \"{2}\"",
"cpp_intellisense_mode_changed_with_path": "Para os arquivos de origem C++, o IntelliSenseMode foi alterado de \"{0}\" para \"{1}\" com base nos argumentos do compilador e na consulta do compilerPath: \"{2}\"",
"c_std_version_changed_with_path": "Para os arquivos de origem C, o cStandard foi alterado de \"{0}\" para \"{1}\" com base nos argumentos do compilador e na consulta do compilerPath: \"{2}\"",
"cpp_std_version_changed_with_path": "Para os arquivos de origem C++, o cppStandard foi alterado de \"{0}\" para \"{1}\" com base nos argumentos do compilador e na consulta do compilerPath: \"{2}\"",
"c_intellisense_mode_and_std_version_changed_with_path": "Para os arquivos de origem C, o IntelliSenseMode foi alterado de \"{0}\" para \"{1}\" e o cStandard foi alterado de \"{2}\" para \"{3}\" com base nos argumentos do compilador e na consulta do compilerPath: \"{4}\"",
"cpp_intellisense_mode_and_std_version_changed_with_path": "Para os arquivos de origem C++, o IntelliSenseMode foi alterado de \"{0}\" para \"{1}\" e o cppStandard foi alterado de \"{2}\" para \"{3}\" com base nos argumentos do compilador e na consulta do compilerPath: \"{4}\"",
"compiler_path_changed": "Não é possível resolver a configuração com compilerPath \"{0}\". Em vez disso, use \"{1}\".",
"compiler_path_invalid": "Não é possível resolver a configuração com compilerPath: \"{0}\"",
"compiler_path_empty": "Ignorando a investigação do compilador devido a um compilerPath explicitamente vazio",
"compiler_path_empty": "Ignorando a consulta do compilador devido a um compilerPath explicitamente vazio",
"msvc_intellisense_specified": "O intelliSenseMode do MSVC foi especificado. Configurando para cl.exe do compilador.",
"unable_to_configure_cl_exe": "Não é possível configurar o compilador cl.exe.",
"probing_compiler_default_target": "Investigando o destino padrão do compilador usando a linha de comando: \"{0}\" {1}",
"querying_compiler_default_target": "Consultando o destino padrão do compilador usando a linha de comando: \"{0}\" {1}",
"compiler_default_target": "O compilador retornou o valor de destino padrão: {0}",
"c_probing_compiler_default_standard": "Investigando o compilador para obter o padrão de linguagem C padrão usando a linha de comando: {0}",
"cpp_probing_compiler_default_standard": "Investigando o compilador para obter o padrão de linguagem C++ padrão usando a linha de comando: {0}",
"c_querying_compiler_default_standard": "Consultando o compilador para obter o padrão de linguagem C padrão usando a linha de comando: {0}",
"cpp_querying_compiler_default_standard": "Consultando o compilador para obter o padrão de linguagem C++ padrão usando a linha de comando: {0}",
"detected_language_standard_version": "Versão padrão da linguagem detectada: {0}",
"unhandled_default_target_detected": "Foi detectado um valor de destino do compilador padrão não tratado: {0}",
"unhandled_target_arg_detected": "Foi detectado um valor de argumento de destino não tratado: {0}",
"memory_limit_shutting_down_intellisense": "Desligando o servidor do IntelliSense: {0}. O uso de memória é {1} MB e excedeu o limite de {2} MB."
"memory_limit_shutting_down_intellisense": "Desligando o servidor do IntelliSense: {0}. O uso de memória é {1} MB e excedeu o limite de {2} MB.",
"failed_to_query_for_standard_version": "Falha ao consultar compilador no caminho \"{0}\" para as versões padrão. A consulta do compilador está desabilitada para este compilador.",
"unrecognized_language_standard_version": "A consulta do compilador retornou uma versão do padrão de linguagem não reconhecida. Nesse caso, será usada a última versão com suporte."
}
+1
View File
@@ -22,6 +22,7 @@
"c_cpp.command.rescanWorkspace.title": "Повторное сканирование рабочей области",
"c_cpp.command.vcpkgClipboardInstallSuggested.title": "Копировать команду vcpkg install в буфер обмена",
"c_cpp.command.vcpkgOnlineHelpSuggested.title": "Посетите страницу справки по vcpkg",
"c_cpp.command.generateEditorConfig.title": "Создание содержимого EditorConfig из параметров формата VC",
"c_cpp.configuration.formatting.description": "Настраивает подсистему форматирования.",
"c_cpp.configuration.formatting.clangFormat.description": "Для форматирования кода будет использоваться clang-format.",
"c_cpp.configuration.formatting.vcFormat.description": "Для форматирования кода будет использоваться подсистема форматирования Visual C++.",
@@ -5,6 +5,7 @@
// Do not edit this file. It is machine generated.
{
"build.and.debug.active.file": "Сборка и отладка активного файла",
"single_file_mode_not_available": "Эта команда недоступна для однофайлового режима.",
"cannot.build.non.cpp": "Не удается выполнить сборку и отладку, так как активный файл не является исходным файлом C или C++.",
"no.compiler.found": "Компилятор не найден",
"select.configuration": "Выберите конфигурацию.",
@@ -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.
{
"build_active_file": "сборка активного файла",
"compiler_details": "компилятор:",
"task_generated_by_debugger": "Задача создана отладчиком.",
"starting_build": "Запуск сборки…",
"build_finished_with_error": "Сборка завершена с ошибками.",
"build_finished_with_warnings": "Сборка завершена с предупреждениями.",
"build finished successfully": "Сборка завершена."
}
+14 -13
View File
@@ -36,7 +36,6 @@
"database_add_file_failed": "Не удалось добавить файл в базу данных, ошибка — {0}: {1}",
"reset_timestamp_failed": "Не удалось сбросить метку времени во время прерывания, ошибка — {0}: {1}",
"update_timestamp_failed": "Не удалось обновить метку времени, ошибка — {0}: {1}",
"symbol_add_failed": "Не удалось начать добавление символов кода для файла, ошибка — {0}: {1}",
"finalize_updates_failed": "Не удалось финализировать обновления для файла, ошибка — {0}: {1}",
"not_directory_with_mode": "{0} не является каталогом (st_mode={1})",
"retrieve_fs_info_failed": "Невозможно получить данные файловой системы для {0}. Ошибка: {1}",
@@ -175,7 +174,7 @@
"deprecated_label": "Нерекомендуемый:",
"exceptions_label": "Исключения:",
"template_parameters_label": "Параметры шаблона:",
"compiler_probe_command_line": "Командная строка проверки компилятора: {0}",
"compiler_query_command_line": "Командная строка запроса компилятора: {0}",
"c_compiler_from_compiler_path": "Попытка получить значения по умолчанию из компилятора C в свойстве \"compilerPath\": \"{0}\"",
"cpp_compiler_from_compiler_path": "Попытка получить значения по умолчанию из компилятора C++ в свойстве \"compilerPath\": \"{0}\"",
"c_compiler_from_compile_commands": "Попытка получить значения по умолчанию из компилятора C в файле compile_commands.json: \"{0}\"",
@@ -186,23 +185,25 @@
"cpp_std_version_changed": "Для исходных файлов C++ cppStandard был изменен с \"{0}\" на \"{1}\".",
"c_intellisense_mode_and_std_version_changed": "Для исходных файлов C IntelliSenseMode был изменен с \"{0}\" на \"{1}\", а cStandard — с \"{2}\" на \"{3}\".",
"cpp_intellisense_mode_and_std_version_changed": "Для исходных файлов C++ IntelliSenseMode был изменен с \"{0}\" на \"{1}\", а cppStandard — с \"{2}\" на \"{3}\".",
"c_intellisense_mode_changed_with_path": "Для исходных файлов C IntelliSenseMode был изменен с \"{0}\" на \"{1}\" на основе аргументов компилятора и compilerPath проверки: \"{2}\"",
"cpp_intellisense_mode_changed_with_path": "Для исходных файлов C++ IntelliSenseMode был изменен с \"{0}\" на \"{1}\" на основе аргументов компилятора и compilerPath проверки: \"{2}\"",
"c_std_version_changed_with_path": "Для исходных файлов C cStandard был изменен с \"{0}\" на \"{1}\" на основе аргументов компилятора и compilerPath проверки: \"{2}\"",
"cpp_std_version_changed_with_path": "Для исходных файлов C++ cppStandard был изменен с \"{0}\" на \"{1}\" на основе аргументов компилятора и compilerPath проверки: \"{2}\"",
"c_intellisense_mode_and_std_version_changed_with_path": "Для исходных файлов C IntelliSenseMode был изменен с \"{0}\" на \"{1}\", а cStandard — с \"{2}\" на \"{3}\" на основе аргументов компилятора и compilerPath проверки: \"{4}\"",
"cpp_intellisense_mode_and_std_version_changed_with_path": "Для исходных файлов C++ IntelliSenseMode был изменен с \"{0}\" на \"{1}\", а cppStandard — с \"{2}\" на \"{3}\" на основе аргументов компилятора и compilerPath проверки: \"{4}\"",
"c_intellisense_mode_changed_with_path": "Для исходных файлов C IntelliSenseMode был изменен с \"{0}\" на \"{1}\" на основе аргументов компилятора и compilerPath запроса: \"{2}\"",
"cpp_intellisense_mode_changed_with_path": "Для исходных файлов C++ IntelliSenseMode был изменен с \"{0}\" на \"{1}\" на основе аргументов компилятора и compilerPath запроса: \"{2}\"",
"c_std_version_changed_with_path": "Для исходных файлов C cStandard был изменен с \"{0}\" на \"{1}\" на основе аргументов компилятора и compilerPath запроса: \"{2}\"",
"cpp_std_version_changed_with_path": "Для исходных файлов C++ cppStandard был изменен с \"{0}\" на \"{1}\" на основе аргументов компилятора и compilerPath запроса: \"{2}\"",
"c_intellisense_mode_and_std_version_changed_with_path": "Для исходных файлов C IntelliSenseMode был изменен с \"{0}\" на \"{1}\", а cStandard — с \"{2}\" на \"{3}\" на основе аргументов компилятора и compilerPath запроса: \"{4}\"",
"cpp_intellisense_mode_and_std_version_changed_with_path": "Для исходных файлов C++ IntelliSenseMode был изменен с \"{0}\" на \"{1}\", а cppStandard — с \"{2}\" на \"{3}\" на основе аргументов компилятора и compilerPath запроса: \"{4}\"",
"compiler_path_changed": "Не удалось разрешить конфигурацию с compilerPath \"{0}\". Вместо этого используется \"{1}\".",
"compiler_path_invalid": "Не удалось разрешить конфигурацию с compilerPath: \"{0}\"",
"compiler_path_empty": "Выполняется пропуск пробы компилятора из-за явным образом пустого compilerPath",
"compiler_path_empty": "Выполняется пропуск запроса к компилятору из-за явным образом пустого compilerPath",
"msvc_intellisense_specified": "Указан intelliSenseMode MSVC. Выполняется настройка для cl.exe компилятора.",
"unable_to_configure_cl_exe": "Не удалось выполнить настройку для cl.exe компилятора.",
"probing_compiler_default_target": "Проверка целевого объекта по умолчанию для компилятора с помощью командной строки: \"{0}\" {1}",
"querying_compiler_default_target": "Выполняется запрос целевого объекта по умолчанию для компилятора с помощью командной строки: \"{0}\" {1}",
"compiler_default_target": "Компилятор возвратил целевое значение по умолчанию: {0}",
"c_probing_compiler_default_standard": "Проверка компилятора для стандарта языка C по умолчанию с помощью командной строки: {0}",
"cpp_probing_compiler_default_standard": "Проверка компилятора для стандарта языка C++ по умолчанию с помощью командной строки: {0}",
"c_querying_compiler_default_standard": "Выполняется запрос к компилятору для стандарта языка C по умолчанию с помощью командной строки: {0}",
"cpp_querying_compiler_default_standard": "Выполняется запрос к компилятору для стандарта языка C++ по умолчанию с помощью командной строки: {0}",
"detected_language_standard_version": "Обнаруженная версия стандарта языка: {0}",
"unhandled_default_target_detected": "Обнаружено необработанное целевое значение компилятора по умолчанию: {0}",
"unhandled_target_arg_detected": "Обнаружено необработанное значение целевого аргумента: {0}",
"memory_limit_shutting_down_intellisense": "Завершение работы сервера IntelliSense: {0}. Используемый объем памяти ({1} МБ) превысил ограничение ({2} МБ)."
"memory_limit_shutting_down_intellisense": "Завершение работы сервера IntelliSense: {0}. Используемый объем памяти ({1} МБ) превысил ограничение ({2} МБ).",
"failed_to_query_for_standard_version": "Не удалось запросить компилятор по пути \"{0}\" для стандартных версий по умолчанию. Запросы для этого компилятора отключены.",
"unrecognized_language_standard_version": "Проба компилятора возвратила нераспознанную версию стандарта языка. Вместо этого будет использоваться последняя поддерживаемая версия."
}
+1
View File
@@ -22,6 +22,7 @@
"c_cpp.command.rescanWorkspace.title": "Çalışma Alanını Yeniden Tara",
"c_cpp.command.vcpkgClipboardInstallSuggested.title": "vcpkg yükleme komutunu panoya kopyalayın",
"c_cpp.command.vcpkgOnlineHelpSuggested.title": "vcpkg yardım sayfasını ziyaret edin",
"c_cpp.command.generateEditorConfig.title": "VC Biçimi ayarlarından EditorConfig içerikleri oluştur",
"c_cpp.configuration.formatting.description": "Biçimlendirme altyapısını yapılandırır",
"c_cpp.configuration.formatting.clangFormat.description": "Kodu biçimlendirmek için clang-format kullanılacak.",
"c_cpp.configuration.formatting.vcFormat.description": "Kodu biçimlendirmek için Visual C++ biçimlendirme altyapısı kullanılacak.",
@@ -5,6 +5,7 @@
// Do not edit this file. It is machine generated.
{
"build.and.debug.active.file": "Etkin dosyayı derle ve dosyada hata ayıkla",
"single_file_mode_not_available": "Bu komut, tek dosya modu için uygun değil.",
"cannot.build.non.cpp": "Etkin dosya bir C ya da C++ kaynak dosyası olmadığından derleme veya hata ayıklama yapılamıyor.",
"no.compiler.found": "Derleyici bulunamadı",
"select.configuration": "Yapılandırma seçin",
@@ -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.
{
"build_active_file": "etkin dosyayı derle",
"compiler_details": "derleyici:",
"task_generated_by_debugger": "Hata Ayıklayıcısı tarafından oluşturulan görev.",
"starting_build": "Derleme başlatılıyor...",
"build_finished_with_error": "Derleme hatalarla tamamlandı",
"build_finished_with_warnings": "Derleme uyarlılarla tamamlandı",
"build finished successfully": "Derleme başarıyla tamamlandı."
}
+14 -13
View File
@@ -36,7 +36,6 @@
"database_add_file_failed": "Dosya veritabanına eklenemiyor, hata = {0}: {1}",
"reset_timestamp_failed": "Durdurma sırasında zaman damgası sıfırlanamadı, hata = {0}: {1}",
"update_timestamp_failed": "Zaman damgası güncelleştirilemiyor, hata = {0}: {1}",
"symbol_add_failed": "Dosya için kod sembolleri ekleme işlemine başlanamıyor, hata = {0}: {1}",
"finalize_updates_failed": "Dosya için güncelleştirmeler sonuçlandırılamıyor, hata = {0}: {1}",
"not_directory_with_mode": "{0} bir dizin değil (st_mode={1})",
"retrieve_fs_info_failed": "{0} için dosya sistemi bilgileri alınamıyor. hata = {1}",
@@ -175,7 +174,7 @@
"deprecated_label": "Kullanım dışı:",
"exceptions_label": "Özel durumlar:",
"template_parameters_label": "Şablon Parametreleri:",
"compiler_probe_command_line": "Derleyici yoklaması komut satırı: {0}",
"compiler_query_command_line": "Derleyici sorgusunun komut satırı: {0}",
"c_compiler_from_compiler_path": "\"compilerPath\" özelliğindeki C derleyicisinden varsayılan değerler alınmaya çalışılıyor: '{0}'",
"cpp_compiler_from_compiler_path": "\"compilerPath\" özelliğindeki C++ derleyicisinden varsayılan değerler alınmaya çalışılıyor: '{0}'",
"c_compiler_from_compile_commands": "compile_commands.json dosyasındaki C derleyicisinden varsayılan değerler alınmaya çalışılıyor: '{0}'",
@@ -186,23 +185,25 @@
"cpp_std_version_changed": "C++ kaynak dosyaları için \"{0}\" olan cppStandard \"{1}\" olarak değiştirildi.",
"c_intellisense_mode_and_std_version_changed": "C kaynak dosyaları için \"{0}\" olan IntelliSenseMode, \"{1}\" olarak ve \"{2}\" olan cStandard, \"{3}\" olarak değiştirildi.",
"cpp_intellisense_mode_and_std_version_changed": "C++ kaynak dosyaları için \"{0}\" olan IntelliSenseMode, \"{1}\" olarak ve \"{2}\" olan cppStandard, \"{3}\" olarak değiştirildi.",
"c_intellisense_mode_changed_with_path": "C kaynak dosyaları için derleyici bağımsız değişkenlerine ve yoklama compilerPath'ine (\"{2}\") göre \"{0}\" olan IntelliSenseMode, \"{1}\" olarak değiştirildi",
"cpp_intellisense_mode_changed_with_path": "C++ kaynak dosyaları için derleyici bağımsız değişkenlerine ve yoklama compilerPath'ine (\"{2}\") göre \"{0}\" olan IntelliSenseMode, \"{1}\" olarak değiştirildi",
"c_std_version_changed_with_path": "C kaynak dosyaları için derleyici bağımsız değişkenlerine ve yoklama compilerPath'ine (\"{2}\") göre \"{0}\" olan cStandard, \"{1}\" olarak değiştirildi",
"cpp_std_version_changed_with_path": "C++ kaynak dosyaları için derleyici bağımsız değişkenlerine ve yoklama compilerPath'ine (\"{2}\") göre \"{0}\" olan cppStandard, \"{1}\" olarak değiştirildi",
"c_intellisense_mode_and_std_version_changed_with_path": "C kaynak dosyaları için derleyici bağımsız değişkenlerine ve yoklama compilerPath'ine (\"{4}\") göre \"{0}\" olan IntelliSenseMode, \"{1}\" olarak ve \"{2}\" olan cStandard, \"{3}\" olarak değiştirildi",
"cpp_intellisense_mode_and_std_version_changed_with_path": "C++ kaynak dosyaları için derleyici bağımsız değişkenlerine ve yoklama compilerPath'ine (\"{4}\") göre \"{0}\" olan IntelliSenseMode, \"{1}\" olarak ve \"{2}\" olan cppStandard, \"{3}\" olarak değiştirildi",
"c_intellisense_mode_changed_with_path": "C kaynak dosyaları için derleyici bağımsız değişkenlerine ve sorgulama compilerPath'ine (\"{2}\") göre \"{0}\" olan IntelliSenseMode, \"{1}\" olarak değiştirildi",
"cpp_intellisense_mode_changed_with_path": "C++ kaynak dosyaları için derleyici bağımsız değişkenlerine ve sorgulama compilerPath'ine (\"{2}\") göre \"{0}\" olan IntelliSenseMode, \"{1}\" olarak değiştirildi",
"c_std_version_changed_with_path": "C kaynak dosyaları için derleyici bağımsız değişkenlerine ve sorgulama compilerPath'ine (\"{2}\") göre \"{0}\" olan cStandard, \"{1}\" olarak değiştirildi",
"cpp_std_version_changed_with_path": "C++ kaynak dosyaları için derleyici bağımsız değişkenlerine ve sorgulama compilerPath'ine (\"{2}\") göre \"{0}\" olan cppStandard, \"{1}\" olarak değiştirildi",
"c_intellisense_mode_and_std_version_changed_with_path": "C kaynak dosyaları için derleyici bağımsız değişkenlerine ve sorgulama compilerPath'ine (\"{4}\") göre \"{0}\" olan IntelliSenseMode, \"{1}\" olarak ve \"{2}\" olan cStandard, \"{3}\" olarak değiştirildi",
"cpp_intellisense_mode_and_std_version_changed_with_path": "C++ kaynak dosyaları için derleyici bağımsız değişkenlerine ve sorgulama compilerPath'ine (\"{4}\") göre \"{0}\" olan IntelliSenseMode, \"{1}\" olarak ve \"{2}\" olan cppStandard, \"{3}\" olarak değiştirildi",
"compiler_path_changed": "\"{0}\" compilerPath ile yapılandırma çözümlenemiyor. Bunun yerine \"{1}\" kullanılıyor.",
"compiler_path_invalid": "\"{0}\" compilerPath ile yapılandırma çözümlenemiyor",
"compiler_path_empty": "Açıkça boş olan compilerPath nedeniyle derleyici yoklaması atlanıyor",
"compiler_path_empty": "Açıkça boş compilerPath nedeniyle derleyici sorgulaması atlanıyor",
"msvc_intellisense_specified": "MSVC intelliSenseMode belirtildi. Derleyici cl.exe dosyası için yapılandırılıyor.",
"unable_to_configure_cl_exe": "Derleyici cl.exe dosyası için yapılandırılamıyor.",
"probing_compiler_default_target": "\"{0}\" komut satırı kullanılarak derleyicinin varsayılan hedefi yoklanıyor: {1}",
"querying_compiler_default_target": "Komut satırı kullanılarak derleyicinin varsayılan hedefi yoklanıyor: \"{0}\" {1}",
"compiler_default_target": "Derleyici, varsayılan hedef değeri ({0}) döndürdü",
"c_probing_compiler_default_standard": "Komut satırı kullanılarak varsayılan C dili standardı için derleyici yoklanıyor: {0}",
"cpp_probing_compiler_default_standard": "Komut satırı kullanılarak varsayılan C++ dili standardı için derleyici yoklanıyor: {0}",
"c_querying_compiler_default_standard": "Komut satırı kullanılarak varsayılan C dili standardı için derleyici sorgulanıyor: {0}",
"cpp_querying_compiler_default_standard": "Komut satırı kullanılarak varsayılan C++ dili standardı için derleyici sorgulanıyor: {0}",
"detected_language_standard_version": "Algılanan dil standart sürümü: {0}",
"unhandled_default_target_detected": "İşlenmemiş varsayılan derleyici hedefi değeri saptandı: {0}",
"unhandled_target_arg_detected": "İşlenmemiş hedef bağımsız değişken değeri algılandı: {0}",
"memory_limit_shutting_down_intellisense": "IntelliSense sunucusu kapatılıyor: {0}. Bellek kullanımı {1} MB olduğundan {2} MB sınırını aştı."
"memory_limit_shutting_down_intellisense": "IntelliSense sunucusu kapatılıyor: {0}. Bellek kullanımı {1} MB olduğundan {2} MB sınırını aştı.",
"failed_to_query_for_standard_version": "Varsayılan standart sürümler için \"{0}\" yolundaki derleyici sorgulanamadı. Derleyici sorgulaması bu derleyici için devre dışı bırakıldı.",
"unrecognized_language_standard_version": "Derleyici sorgusu, tanınmayan bir dil standardı sürümü döndürdü. Bunun yerine desteklenen en güncel sürüm kullanılacak."
}
+25 -18
View File
@@ -2,7 +2,7 @@
"name": "cpptools",
"displayName": "C/C++",
"description": "C/C++ IntelliSense, debugging, and code browsing.",
"version": "1.1.1-master",
"version": "1.1.3-main",
"publisher": "ms-vscode",
"icon": "LanguageCCPP_color_128x.png",
"readme": "README.md",
@@ -11,7 +11,7 @@
},
"license": "SEE LICENSE IN LICENSE.txt",
"engines": {
"vscode": "^1.49.0"
"vscode": "^1.52.0"
},
"bugs": {
"url": "https://github.com/Microsoft/vscode-cpptools/issues",
@@ -105,7 +105,7 @@
"${workspaceFolder}"
],
"pattern": {
"regexp": "^(.*):(\\d+):(\\d+):\\s+(?:fatal\\s+)?(warning|error):\\s+(.*)$",
"regexp": "^(.*?):(\\d+):(\\d*):?\\s+(?:fatal\\s+)?(warning|error):\\s+(.*)$",
"file": 1,
"line": 2,
"column": 3,
@@ -1207,6 +1207,11 @@
"title": "%c_cpp.command.vcpkgOnlineHelpSuggested.title%",
"category": "C/C++"
},
{
"command": "C_Cpp.GenerateEditorConfig",
"title": "%c_cpp.command.generateEditorConfig.title%",
"category": "C/C++"
},
{
"command": "C_Cpp.referencesViewGroupByType",
"category": "C/C++",
@@ -2271,7 +2276,7 @@
"property.static": [
"variable.other.property.static"
],
"member.static": [
"method.static": [
"entity.name.function.member.static"
],
"macro": [
@@ -2347,7 +2352,7 @@
"@types/plist": "^3.0.2",
"@types/semver": "^7.1.0",
"@types/tmp": "^0.1.0",
"@types/vscode": "1.44.0",
"@types/vscode": "1.52.0",
"@types/webpack": "^4.39.0",
"@types/which": "^1.3.2",
"@types/yauzl": "^2.9.1",
@@ -2356,9 +2361,6 @@
"@typescript-eslint/parser": "^2.19.2",
"async-child-process": "^1.1.1",
"await-notify": "^1.0.1",
"comment-json": "^3.0.3",
"editorconfig": "^0.15.3",
"escape-string-regexp": "^2.0.0",
"eslint": "^6.8.0",
"eslint-plugin-import": "^2.20.1",
"eslint-plugin-jsdoc": "^21.0.0",
@@ -2373,30 +2375,35 @@
"gulp-sourcemaps": "^2.6.5",
"gulp-typescript": "^5.0.1",
"http-proxy-agent": "^2.1.0",
"https-proxy-agent": "^2.2.4",
"minimatch": "^3.0.4",
"minimist": "^1.2.5",
"mkdirp": "^0.5.1",
"mocha": "^4.0.0",
"parse5": "^5.1.0",
"parse5-traverse": "^1.0.3",
"plist": "^3.0.1",
"tmp": "^0.1.0",
"ts-loader": "^6.0.4",
"tslint": "^5.19.0",
"typescript": "^3.5.3",
"vscode-cpptools": "^4.0.1",
"vscode-debugadapter": "^1.35.0",
"vscode-debugprotocol": "^1.35.0",
"vscode-extension-telemetry": "^0.1.2",
"vscode-languageclient": "^5.2.1",
"vscode-nls": "^4.1.1",
"vscode-nls-dev": "^3.2.6",
"vscode-test": "^1.3.0",
"webpack": "^4.42.0",
"webpack-cli": "^3.3.7",
"xml2js": "^0.4.19"
},
"dependencies": {
"comment-json": "^3.0.3",
"editorconfig": "^0.15.3",
"escape-string-regexp": "^2.0.0",
"https-proxy-agent": "^2.2.4",
"minimatch": "^3.0.4",
"mkdirp": "^0.5.1",
"plist": "^3.0.1",
"tmp": "^0.1.0",
"vscode-cpptools": "^4.0.1",
"vscode-extension-telemetry": "^0.1.2",
"vscode-languageclient": "^5.2.1",
"vscode-nls": "^4.1.1",
"which": "^2.0.2",
"xml2js": "^0.4.19",
"yauzl": "^2.10.0"
},
"resolutions": {
+1
View File
@@ -17,6 +17,7 @@
"c_cpp.command.rescanWorkspace.title": "Rescan Workspace",
"c_cpp.command.vcpkgClipboardInstallSuggested.title": "Copy vcpkg install command to clipboard",
"c_cpp.command.vcpkgOnlineHelpSuggested.title": "Visit the vcpkg help page",
"c_cpp.command.generateEditorConfig.title": "Generate EditorConfig contents from VC Format settings",
"c_cpp.configuration.formatting.description": "Configures the formatting engine",
"c_cpp.configuration.formatting.clangFormat.description": "clang-format will be used to format code.",
"c_cpp.configuration.formatting.vcFormat.description": "The Visual C++ formatting engine will be used to format code.",
@@ -150,12 +150,16 @@ class CppConfigurationProvider implements vscode.DebugConfigurationProvider {
}
// Filter out build tasks that don't match the currently selected debug configuration type.
buildTasks = buildTasks.filter((task: CppBuildTask) => {
const command: string = task.definition.command as string;
if (!command) {
return false;
}
if (defaultConfig.name.startsWith("(Windows) ")) {
if ((task.definition.command as string).includes("cl.exe")) {
if (command.includes("cl.exe")) {
return true;
}
} else {
if (!(task.definition.command as string).includes("cl.exe")) {
if (!command.includes("cl.exe")) {
return true;
}
}
@@ -174,10 +178,13 @@ class CppConfigurationProvider implements vscode.DebugConfigurationProvider {
newConfig.preLaunchTask = task.name;
newConfig.externalConsole = false;
const exeName: string = path.join("${fileDirname}", "${fileBasenameNoExtension}");
newConfig.program = platform === "win32" ? exeName + ".exe" : exeName;
const isWindows: boolean = platform === 'win32';
newConfig.program = isWindows ? exeName + ".exe" : exeName;
// Add the "detail" property to show the compiler path in QuickPickItem.
// This property will be removed before writing the DebugConfiguration in launch.json.
newConfig.detail = task.detail ? task.detail : definition.command;
const isCl: boolean = compilerName === "cl.exe";
newConfig.cwd = isWindows && !isCl && !process.env.PATH?.includes(compilerPath) ? path.dirname(compilerPath) : "${workspaceFolder}";
return new Promise<vscode.DebugConfiguration>(resolve => {
if (platform === "darwin") {
@@ -197,7 +204,7 @@ class CppConfigurationProvider implements vscode.DebugConfigurationProvider {
debuggerName = "gdb";
}
if (platform === "win32") {
if (isWindows) {
debuggerName += ".exe";
}
+1 -1
View File
@@ -50,7 +50,7 @@ export function initialize(context: vscode.ExtensionContext): void {
// Not enabled because we do not react to single-file mode correctly yet.
// We get an ENOENT when the user's c_cpp_properties.json is attempted to be parsed.
// The DefaultClient will also have its configuration accessed, but since it doesn't exist it errors out.
vscode.window.showErrorMessage('This command is not yet available for single-file mode.');
vscode.window.showErrorMessage(localize("single_file_mode_not_available", "This command is not available for single-file mode."));
return Promise.resolve();
}
@@ -7,8 +7,11 @@ import { DefaultClient, GetFoldingRangesParams, GetFoldingRangesRequest, Folding
export class FoldingRangeProvider implements vscode.FoldingRangeProvider {
private client: DefaultClient;
public onDidChangeFoldingRangesEvent = new vscode.EventEmitter<void>();
public onDidChangeFoldingRanges?: vscode.Event<void>;
constructor(client: DefaultClient) {
this.client = client;
this.onDidChangeFoldingRanges = this.onDidChangeFoldingRangesEvent.event;
}
provideFoldingRanges(document: vscode.TextDocument, context: vscode.FoldingContext,
token: vscode.CancellationToken): Promise<vscode.FoldingRange[]> {
@@ -52,4 +55,8 @@ export class FoldingRangeProvider implements vscode.FoldingRangeProvider {
});
});
}
public refresh(): void {
this.onDidChangeFoldingRangesEvent.fire();
}
}
+12 -4
View File
@@ -399,7 +399,7 @@ enum SemanticTokenTypes {
referenceType = 5,
valueType = 6,
function = 7,
member = 8,
method = 8,
property = 9,
cliProperty = 10,
event = 11,
@@ -606,6 +606,7 @@ export class DefaultClient implements Client {
private documentFormattingProviderDisposable: vscode.Disposable | undefined;
private formattingRangeProviderDisposable: vscode.Disposable | undefined;
private onTypeFormattingProviderDisposable: vscode.Disposable | undefined;
private codeFoldingProvider: FoldingRangeProvider | undefined;
private codeFoldingProviderDisposable: vscode.Disposable | undefined;
private semanticTokensProvider: SemanticTokensProvider | undefined;
private semanticTokensProviderDisposable: vscode.Disposable | undefined;
@@ -838,7 +839,8 @@ export class DefaultClient implements Client {
this.onTypeFormattingProviderDisposable = vscode.languages.registerOnTypeFormattingEditProvider(this.documentSelector, new OnTypeFormattingEditProvider(this), ";", "}", "\n");
}
if (settings.codeFolding) {
this.codeFoldingProviderDisposable = vscode.languages.registerFoldingRangeProvider(this.documentSelector, new FoldingRangeProvider(this));
this.codeFoldingProvider = new FoldingRangeProvider(this);
this.codeFoldingProviderDisposable = vscode.languages.registerFoldingRangeProvider(this.documentSelector, this.codeFoldingProvider);
}
if (settings.enhancedColorization && this.semanticTokensLegend) {
this.semanticTokensProvider = new SemanticTokensProvider(this);
@@ -1347,16 +1349,18 @@ export class DefaultClient implements Client {
}
if (changedSettings["codeFolding"]) {
if (settings.codeFolding) {
this.codeFoldingProviderDisposable = vscode.languages.registerFoldingRangeProvider(this.documentSelector, new FoldingRangeProvider(this));
this.codeFoldingProvider = new FoldingRangeProvider(this);
this.codeFoldingProviderDisposable = vscode.languages.registerFoldingRangeProvider(this.documentSelector, this.codeFoldingProvider);
} else if (this.codeFoldingProviderDisposable) {
this.codeFoldingProviderDisposable.dispose();
this.codeFoldingProviderDisposable = undefined;
this.codeFoldingProvider = undefined;
}
}
if (changedSettings["enhancedColorization"]) {
if (settings.enhancedColorization && this.semanticTokensLegend) {
this.semanticTokensProvider = new SemanticTokensProvider(this);
this.semanticTokensProviderDisposable = vscode.languages.registerDocumentSemanticTokensProvider(this.documentSelector, new SemanticTokensProvider(this), this.semanticTokensLegend); ;
this.semanticTokensProviderDisposable = vscode.languages.registerDocumentSemanticTokensProvider(this.documentSelector, this.semanticTokensProvider, this.semanticTokensLegend); ;
} else if (this.semanticTokensProviderDisposable) {
this.semanticTokensProviderDisposable.dispose();
this.semanticTokensProviderDisposable = undefined;
@@ -1432,6 +1436,7 @@ export class DefaultClient implements Client {
if (!rootFolder) {
return; // There is no c_cpp_properties.json to edit because there is no folder open.
}
this.configuration.handleConfigurationChange();
const selectedProvider: string | undefined = this.configuration.CurrentConfigurationProvider;
if (!selectedProvider) {
const ask: PersistentFolderState<boolean> = new PersistentFolderState<boolean>("Client.registerProvider", true, rootFolder);
@@ -2161,6 +2166,9 @@ export class DefaultClient implements Client {
}
}
}
if (this.codeFoldingProvider) {
this.codeFoldingProvider.refresh();
}
}
public logIntellisenseSetupTime(notification: IntelliSenseSetup): void {
@@ -91,7 +91,11 @@ export class ClientCollection {
}
public forEach(callback: (client: cpptools.Client) => void): void {
this.languageClients.forEach(callback);
// Copy this.languageClients to languageClients to avoid an infinite foreach loop
// when callback modifies this.languageClients (e.g. when cpptools crashes).
const languageClients: cpptools.Client[] = [];
this.languageClients.forEach(client => languageClients.push(client));
languageClients.forEach(callback);
}
public checkOwnership(client: cpptools.Client, document: vscode.TextDocument): boolean {
+35 -9
View File
@@ -12,7 +12,7 @@ import * as telemetry from '../telemetry';
import { PersistentFolderState } from './persistentState';
import { CppSettings, OtherSettings } from './settings';
import { ABTestSettings, getABTestSettings } from '../abTesting';
import { getCustomConfigProviders } from './customProviders';
import { CustomConfigurationProviderCollection, getCustomConfigProviders } from './customProviders';
import { SettingsPanel } from './settingsPanel';
import * as os from 'os';
import escapeStringRegExp = require('escape-string-regexp');
@@ -246,7 +246,9 @@ export class CppProperties {
}
private onConfigurationsChanged(): void {
this.configurationsChanged.fire(this.Configurations);
if (this.Configurations) {
this.configurationsChanged.fire(this.Configurations);
}
}
private onSelectionChanged(): void {
@@ -706,6 +708,27 @@ export class CppProperties {
configuration.browse.limitSymbolsToIncludedHeaders = this.updateConfigurationStringOrBoolean(configuration.browse.limitSymbolsToIncludedHeaders, settings.defaultLimitSymbolsToIncludedHeaders, env);
configuration.browse.databaseFilename = this.updateConfigurationString(configuration.browse.databaseFilename, settings.defaultDatabaseFilename, env);
// If there is no c_cpp_properties.json, there are no relevant C_Cpp.default.* settings set,
// and there is only 1 registered custom config provider, default to using that provider.
const providers: CustomConfigurationProviderCollection = getCustomConfigProviders();
if (providers.size === 1
&& !this.propertiesFile
&& !settings.defaultCompilerPath
&& settings.defaultCompilerPath !== ""
&& !settings.defaultIncludePath
&& !settings.defaultDefines
&& !settings.defaultMacFrameworkPath
&& settings.defaultWindowsSdkVersion === ""
&& !settings.defaultForcedInclude
&& settings.defaultCompileCommands === ""
&& !settings.defaultCompilerArgs
&& settings.defaultCStandard === ""
&& settings.defaultCppStandard === ""
&& settings.defaultIntelliSenseMode === ""
&& settings.defaultConfigurationProvider === "") {
providers.forEach(provider => { configuration.configurationProvider = provider.extensionId; });
}
}
this.updateCompileCommandsFileWatchers();
@@ -896,7 +919,7 @@ export class CppProperties {
}
}
private handleConfigurationChange(): void {
public handleConfigurationChange(): void {
if (this.propertiesFile === undefined) {
return; // Occurs when propertiesFile hasn't been checked yet.
}
@@ -939,18 +962,21 @@ export class CppProperties {
}
const fullPathToFile: string = path.join(this.configFolder, "c_cpp_properties.json");
// Since the properties files does not exist, there will be exactly 1 configuration.
// If we have decided to use a custom config provider, propagate that to the new config.
const settings: CppSettings = new CppSettings(this.rootUri);
let providerId: string | undefined = settings.defaultConfigurationProvider;
if (this.configurationJson) {
if (!providerId) {
providerId = this.configurationJson.configurations[0].configurationProvider;
}
this.resetToDefaultSettings(true);
}
this.applyDefaultIncludePathsAndFrameworks();
const settings: CppSettings = new CppSettings(this.rootUri);
if (settings.defaultConfigurationProvider) {
if (providerId) {
if (this.configurationJson) {
this.configurationJson.configurations.forEach(config => {
config.configurationProvider = settings.defaultConfigurationProvider ? settings.defaultConfigurationProvider : undefined;
});
this.configurationJson.configurations[0].configurationProvider = providerId;
}
settings.update("default.configurationProvider", undefined); // delete the setting
}
await util.writeFileText(fullPathToFile, jsonc.stringify(this.configurationJson, null, 4));
@@ -4,7 +4,7 @@
* ------------------------------------------------------------------------------------------ */
import * as path from 'path';
import {
TaskDefinition, Task, TaskGroup, WorkspaceFolder, ShellExecution, Uri, workspace,
TaskDefinition, Task, TaskGroup, ShellExecution, Uri, workspace,
TaskProvider, TaskScope, CustomExecution, ProcessExecution, TextEditor, Pseudoterminal, EventEmitter, Event, TerminalDimensions, window
} from 'vscode';
import * as os from 'os';
@@ -15,6 +15,10 @@ import * as configs from './configurations';
import * as ext from './extension';
import * as cp from "child_process";
import { OtherSettings } from './settings';
import * as nls from 'vscode-nls';
nls.config({ messageFormat: nls.MessageFormat.bundle, bundleFormat: nls.BundleFormat.standalone })();
const localize: nls.LocalizeFunc = nls.loadMessageBundle();
export interface CppBuildTaskDefinition extends TaskDefinition {
type: string;
@@ -138,9 +142,12 @@ export class CppBuildTaskProvider implements TaskProvider {
if (knownCompilerPaths) {
result = knownCompilerPaths.map<Task>(compilerPath => this.getTask(compilerPath, appendSourceToName, undefined));
}
// Task for user compiler path setting
// Task for valid user compiler path setting
if (userCompilerPath) {
result.push(this.getTask(userCompilerPath, appendSourceToName, userCompilerPathAndArgs?.additionalArgs));
const isCompilerValid: boolean = await util.checkFileExists(userCompilerPath);
if (isCompilerValid) {
result.push(this.getTask(userCompilerPath, appendSourceToName, userCompilerPathAndArgs?.additionalArgs));
}
}
return result;
}
@@ -156,14 +163,14 @@ export class CppBuildTaskProvider implements TaskProvider {
if (!definition) {
const taskLabel: string = ((appendSourceToName && !compilerPathBase.startsWith(CppBuildTaskProvider.CppBuildSourceStr)) ?
CppBuildTaskProvider.CppBuildSourceStr + ": " : "") + compilerPathBase + " build active file";
CppBuildTaskProvider.CppBuildSourceStr + ": " : "") + compilerPathBase + " " + localize("build_active_file", "build active file");
const filePath: string = path.join('${fileDirname}', '${fileBasenameNoExtension}');
const isWindows: boolean = os.platform() === 'win32';
let args: string[] = isCl ? ['/Zi', '/EHsc', '/Fe:', filePath + '.exe', '${file}'] : ['-g', '${file}', '-o', filePath + (isWindows ? '.exe' : '')];
if (compilerArgs && compilerArgs.length > 0) {
args = args.concat(compilerArgs);
}
const cwd: string = isCl ? "${workspaceFolder}" : path.dirname(compilerPath);
const cwd: string = isWindows && !isCl && !process.env.PATH?.includes(compilerPath) ? path.dirname(compilerPath) : "${workspaceFolder}";
const options: cp.ExecOptions | undefined = { cwd: cwd };
definition = {
type: CppBuildTaskProvider.CppBuildScriptType,
@@ -185,13 +192,13 @@ export class CppBuildTaskProvider implements TaskProvider {
const scope: TaskScope = TaskScope.Workspace;
const task: CppBuildTask = new Task(definition, scope, definition.label, CppBuildTaskProvider.CppBuildSourceStr,
new CustomExecution(async (): Promise<Pseudoterminal> =>
new CustomExecution(async (resolvedDefinition: TaskDefinition): Promise<Pseudoterminal> =>
// When the task is executed, this callback will run. Here, we setup for running the task.
new CustomBuildTaskTerminal(resolvedcompilerPath, definition ? definition.args : [], definition ? definition.options : undefined)
new CustomBuildTaskTerminal(resolvedcompilerPath, resolvedDefinition.args, resolvedDefinition.options)
), isCl ? '$msCompile' : '$gcc');
task.group = TaskGroup.Build;
task.detail = detail ? detail : "compiler: " + resolvedcompilerPath;
task.detail = detail ? detail : localize("compiler_details", "compiler:") + " " + resolvedcompilerPath;
return task;
};
@@ -200,6 +207,9 @@ export class CppBuildTaskProvider implements TaskProvider {
const rawJson: any = await this.getRawTasksJson();
const rawTasksJson: any = (!rawJson.tasks) ? new Array() : rawJson.tasks;
const buildTasksJson: CppBuildTask[] = rawTasksJson.map((task: any) => {
if (!task.label) {
return null;
}
const definition: CppBuildTaskDefinition = {
type: task.type,
label: task.label,
@@ -211,7 +221,7 @@ export class CppBuildTaskProvider implements TaskProvider {
cppBuildTask.detail = task.detail;
return cppBuildTask;
});
return buildTasksJson;
return buildTasksJson.filter((task: CppBuildTask) => task !== null);
}
public async ensureBuildTaskExists(taskLabel: string): Promise<void> {
@@ -252,7 +262,7 @@ export class CppBuildTaskProvider implements TaskProvider {
...selectedTask.definition,
problemMatcher: selectedTask.problemMatchers,
group: { kind: "build", "isDefault": true },
detail: "Generated task by Debugger"
detail: localize("task_generated_by_debugger", "Task generated by Debugger.")
};
rawTasksJson.tasks.push(newTask);
}
@@ -333,7 +343,7 @@ class CustomBuildTaskTerminal implements Pseudoterminal {
async open(_initialDimensions: TerminalDimensions | undefined): Promise<void> {
telemetry.logLanguageServerEvent("cppBuildTaskStarted");
// At this point we can start using the terminal.
this.writeEmitter.fire(`Starting build...${this.endOfLine}`);
this.writeEmitter.fire(localize("starting_build", "Starting build...") + this.endOfLine);
await this.doBuild();
}
@@ -343,16 +353,16 @@ class CustomBuildTaskTerminal implements Pseudoterminal {
private async doBuild(): Promise<any> {
// Do build.
let activeCommand: string = util.resolveVariables(this.command, this.AdditionalEnvironment);
let activeCommand: string = util.resolveVariables(this.command);
this.args.forEach(value => {
let temp: string = util.resolveVariables(value, this.AdditionalEnvironment);
let temp: string = util.resolveVariables(value);
if (temp && temp.includes(" ")) {
temp = "\"" + temp + "\"";
}
activeCommand = activeCommand + " " + temp;
});
if (this.options?.cwd) {
this.options.cwd = util.resolveVariables(this.options.cwd, this.AdditionalEnvironment);
this.options.cwd = util.resolveVariables(this.options.cwd);
}
const splitWriteEmitter = (lines: string | Buffer) => {
@@ -363,16 +373,34 @@ class CustomBuildTaskTerminal implements Pseudoterminal {
try {
const result: number = await new Promise<number>((resolve, reject) => {
cp.exec(activeCommand, this.options, (_error, stdout, _stderr) => {
const dot: string = (stdout || _stderr) ? ":" : ".";
if (_error) {
telemetry.logLanguageServerEvent("cppBuildTaskError");
const dot: string = (stdout || _stderr) ? ":" : ".";
this.writeEmitter.fire(`Build finished with error${dot}${this.endOfLine}`);
splitWriteEmitter(stdout);
splitWriteEmitter(_stderr);
this.writeEmitter.fire(localize("build_finished_with_error", "Build finished with errors(s)") + dot + this.endOfLine);
if (stdout) {
splitWriteEmitter(stdout); // cl.exe
} else if (_stderr) {
splitWriteEmitter(_stderr); // gcc/clang
} else {
splitWriteEmitter(_error.message); // e.g. command executable not found
}
resolve(-1);
} else {
return;
} else if (_stderr && !stdout) { // gcc/clang
telemetry.logLanguageServerEvent("cppBuildTaskWarnings");
this.writeEmitter.fire(localize("build_finished_with_warnings", "Build finished with warning(s)") + dot + this.endOfLine);
splitWriteEmitter(_stderr);
resolve(0);
} else if (stdout && stdout.includes("warning C")) { // cl.exe
telemetry.logLanguageServerEvent("cppBuildTaskWarnings");
this.writeEmitter.fire(localize("build_finished_with_warnings", "Build finished with warning(s)") + dot + this.endOfLine);
splitWriteEmitter(stdout);
this.writeEmitter.fire(`Build finished successfully.${this.endOfLine}`);
resolve(0);
} else {
if (stdout) {
splitWriteEmitter(stdout); // cl.exe
}
this.writeEmitter.fire(localize("build finished successfully", "Build finished successfully.") + this.endOfLine);
resolve(0);
}
});
@@ -382,23 +410,4 @@ class CustomBuildTaskTerminal implements Pseudoterminal {
this.closeEmitter.fire(-1);
}
}
private get AdditionalEnvironment(): { [key: string]: string | string[] } | undefined {
const editor: TextEditor | undefined = window.activeTextEditor;
if (!editor) {
return undefined;
}
const fileDir: WorkspaceFolder | undefined = workspace.getWorkspaceFolder(editor.document.uri);
if (!fileDir) {
window.showErrorMessage('This command is not yet available for single-file mode.');
return undefined;
}
const file: string = editor.document.fileName;
return {
"file": file,
"fileDirname": fileDir.uri.fsPath,
"fileBasenameNoExtension": path.parse(file).name,
"workspaceFolder": fileDir.uri.fsPath
};
}
}
+18 -7
View File
@@ -14,7 +14,7 @@ import { TreeNode, NodeType } from './referencesModel';
import { UI, getUI } from './ui';
import { Client } from './client';
import { ClientCollection } from './clientCollection';
import { CppSettings, OtherSettings } from './settings';
import { CppSettings, generateEditorConfig, OtherSettings } from './settings';
import { PersistentWorkspaceState, PersistentState } from './persistentState';
import { getLanguageConfig } from './languageConfig';
import { getCustomConfigProviders } from './customProviders';
@@ -276,8 +276,8 @@ function sendActivationTelemetry(): void {
}
machineIdPersistentState.Value = vscode.env.machineId;
}
if (vscode.env.remoteName) {
activateEvent["remoteName"] = vscode.env.remoteName;
if (vscode.env.uiKind === vscode.UIKind.Web) {
activateEvent["WebUI"] = "1";
}
telemetry.logLanguageServerEvent("Activate", activateEvent);
}
@@ -608,6 +608,10 @@ async function suggestInsidersChannel(): Promise<void> {
if (!suggestInsiders.Value) {
return;
}
if (vscode.env.uiKind === vscode.UIKind.Web) {
// Do not prompt users of Web-based Codespaces to join Insiders.
return;
}
let buildInfo: BuildInfo | undefined;
try {
buildInfo = await getTargetBuildInfo("Insiders", false);
@@ -767,6 +771,7 @@ export function registerCommands(): void {
disposables.push(vscode.commands.registerCommand('C_Cpp.referencesViewUngroupByType', onToggleRefGroupView));
disposables.push(vscode.commands.registerCommand('C_Cpp.VcpkgClipboardInstallSuggested', onVcpkgClipboardInstallSuggested));
disposables.push(vscode.commands.registerCommand('C_Cpp.VcpkgOnlineHelpSuggested', onVcpkgOnlineHelpSuggested));
disposables.push(vscode.commands.registerCommand('C_Cpp.GenerateEditorConfig', onGenerateEditorConfig));
disposables.push(vscode.commands.registerCommand('cpptools.activeConfigName', onGetActiveConfigName));
disposables.push(vscode.commands.registerCommand('cpptools.activeConfigCustomVariable', onGetActiveConfigCustomVariable));
disposables.push(vscode.commands.registerCommand('cpptools.setActiveConfigName', onSetActiveConfigName));
@@ -890,6 +895,15 @@ function onEditConfiguration(): void {
}
}
function onGenerateEditorConfig(): void {
onActivationEvent();
if (!isFolderOpen()) {
generateEditorConfig();
} else {
selectClient().then(client => generateEditorConfig(client.RootUri));
}
}
function onAddToIncludePath(path: string): void {
if (!isFolderOpen()) {
vscode.window.showInformationMessage(localize('add.includepath.open.first', 'Open a folder first to add to {0}', "includePath"));
@@ -1068,10 +1082,7 @@ function onShowRefCommand(arg?: TreeNode): void {
function reportMacCrashes(): void {
if (process.platform === "darwin") {
prevCrashFile = "";
const home: string | undefined = process.env.HOME;
if (!home) {
return;
}
const home: string = os.homedir();
const crashFolder: string = path.resolve(home, "Library/Logs/DiagnosticReports");
fs.stat(crashFolder, (err, stats) => {
const crashObject: { [key: string]: string } = {};
@@ -13,8 +13,8 @@ const localize: nls.LocalizeFunc = nls.loadMessageBundle();
export class ReferencesTreeDataProvider implements vscode.TreeDataProvider<TreeNode> {
private referencesModel: ReferencesModel | undefined;
private readonly _onDidChangeTreeData = new vscode.EventEmitter<TreeNode>();
readonly onDidChangeTreeData: vscode.Event<TreeNode>;
private readonly _onDidChangeTreeData = new vscode.EventEmitter<void>();
readonly onDidChangeTreeData: vscode.Event<void>;
constructor() {
this.onDidChangeTreeData = this._onDidChangeTreeData.event;
+277 -33
View File
@@ -6,7 +6,7 @@
import * as vscode from 'vscode';
import { CommentPattern } from './languageConfig';
import { getExtensionFilePath } from '../common';
import { getExtensionFilePath, getCachedClangFormatPath, setCachedClangFormatPath } from '../common';
import * as os from 'os';
import * as which from 'which';
import { execSync } from 'child_process';
@@ -74,7 +74,15 @@ export class CppSettings extends Settings {
public get clangFormatPath(): string | undefined {
let path: string | undefined | null = super.Section.get<string>("clang_format_path");
if (!path) {
path = which.sync('clang-format', {nothrow: true});
const cachedClangFormatPath: string | null | undefined = getCachedClangFormatPath();
if (cachedClangFormatPath !== undefined) {
if (cachedClangFormatPath === null) {
return undefined;
}
return cachedClangFormatPath;
}
path = which.sync('clang-format', { nothrow: true });
setCachedClangFormatPath(path);
if (!path) {
return undefined;
} else {
@@ -157,7 +165,7 @@ export class CppSettings extends Settings {
public get defaultLimitSymbolsToIncludedHeaders(): boolean | undefined { return super.Section.get<boolean>("default.browse.limitSymbolsToIncludedHeaders"); }
public get defaultSystemIncludePath(): string[] | undefined { return super.Section.get<string[]>("default.systemIncludePath"); }
public get defaultEnableConfigurationSquiggles(): boolean | undefined { return super.Section.get<boolean>("default.enableConfigurationSquiggles"); }
public get defaultCustomConfigurationVariables(): { [key: string]: string } | undefined { return super.Section.get< { [key: string]: string } >("default.customConfigurationVariables"); }
public get defaultCustomConfigurationVariables(): { [key: string]: string } | undefined { return super.Section.get<{ [key: string]: string }>("default.customConfigurationVariables"); }
public get useBacktickCommandSubstitution(): boolean | undefined { return super.Section.get<boolean>("debugger.useBacktickCommandSubstitution"); }
public get codeFolding(): boolean { return super.Section.get<string>("codeFolding") === "Enabled"; }
@@ -175,12 +183,16 @@ export class CppSettings extends Settings {
return super.Section.get<boolean>("vcFormat.indent.braces") === true;
}
public get vcFormatIndentMultiLineRelativeTo(): string | undefined {
return super.Section.get<string>("vcFormat.indent.multiLineRelativeTo");
public get vcFormatIndentMultiLineRelativeTo(): string {
// These strings have default values in package.json, so should never be undefined.
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
return super.Section.get<string>("vcFormat.indent.multiLineRelativeTo")!;
}
public get vcFormatIndentWithinParentheses(): string | undefined {
return super.Section.get<string>("vcFormat.indent.withinParentheses");
public get vcFormatIndentWithinParentheses(): string {
// These strings have default values in package.json, so should never be undefined.
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
return super.Section.get<string>("vcFormat.indent.withinParentheses")!;
}
public get vcFormatIndentPreserveWithinParentheses(): boolean {
@@ -203,12 +215,16 @@ export class CppSettings extends Settings {
return super.Section.get<boolean>("vcFormat.indent.lambdaBracesWhenParameter") === true;
}
public get vcFormatIndentGotoLables(): string | undefined {
return super.Section.get<string>("vcFormat.indent.gotoLabels");
public get vcFormatIndentGotoLables(): string {
// These strings have default values in package.json, so should never be undefined.
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
return super.Section.get<string>("vcFormat.indent.gotoLabels")!;
}
public get vcFormatIndentPreprocessor(): string | undefined {
return super.Section.get<string>("vcFormat.indent.preprocessor");
public get vcFormatIndentPreprocessor(): string {
// These strings have default values in package.json, so should never be undefined.
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
return super.Section.get<string>("vcFormat.indent.preprocessor")!;
}
public get vcFormatIndentAccessSpecifiers(): boolean {
@@ -223,24 +239,34 @@ export class CppSettings extends Settings {
return super.Section.get<boolean>("vcFormat.indent.preserveComments") === true;
}
public get vcFormatNewlineBeforeOpenBraceNamespace(): string | undefined {
return super.Section.get<string>("vcFormat.newLine.beforeOpenBrace.namespace");
public get vcFormatNewlineBeforeOpenBraceNamespace(): string {
// These strings have default values in package.json, so should never be undefined.
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
return super.Section.get<string>("vcFormat.newLine.beforeOpenBrace.namespace")!;
}
public get vcFormatNewlineBeforeOpenBraceType(): string | undefined {
return super.Section.get<string>("vcFormat.newLine.beforeOpenBrace.type");
public get vcFormatNewlineBeforeOpenBraceType(): string {
// These strings have default values in package.json, so should never be undefined.
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
return super.Section.get<string>("vcFormat.newLine.beforeOpenBrace.type")!;
}
public get vcFormatNewlineBeforeOpenBraceFunction(): string | undefined {
return super.Section.get<string>("vcFormat.newLine.beforeOpenBrace.function");
public get vcFormatNewlineBeforeOpenBraceFunction(): string {
// These strings have default values in package.json, so should never be undefined.
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
return super.Section.get<string>("vcFormat.newLine.beforeOpenBrace.function")!;
}
public get vcFormatNewlineBeforeOpenBraceBlock(): string | undefined {
return super.Section.get<string>("vcFormat.newLine.beforeOpenBrace.block");
public get vcFormatNewlineBeforeOpenBraceBlock(): string {
// These strings have default values in package.json, so should never be undefined.
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
return super.Section.get<string>("vcFormat.newLine.beforeOpenBrace.block")!;
}
public get vcFormatNewlineBeforeOpenBraceLambda(): string | undefined {
return super.Section.get<string>("vcFormat.newLine.beforeOpenBrace.lambda");
public get vcFormatNewlineBeforeOpenBraceLambda(): string {
// These strings have default values in package.json, so should never be undefined.
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
return super.Section.get<string>("vcFormat.newLine.beforeOpenBrace.lambda")!;
}
public get vcFormatNewlineScopeBracesOnSeparateLines(): boolean {
@@ -267,8 +293,10 @@ export class CppSettings extends Settings {
return super.Section.get<boolean>("vcFormat.newLine.beforeWhileInDoWhile") === true;
}
public get vcFormatSpaceBeforeFunctionOpenParenthesis(): string | undefined {
return super.Section.get<string>("vcFormat.space.beforeFunctionOpenParenthesis");
public get vcFormatSpaceBeforeFunctionOpenParenthesis(): string {
// These strings have default values in package.json, so should never be undefined.
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
return super.Section.get<string>("vcFormat.space.beforeFunctionOpenParenthesis")!;
}
public get vcFormatSpaceWithinParameterListParentheses(): boolean {
@@ -383,24 +411,34 @@ export class CppSettings extends Settings {
return super.Section.get<boolean>("vcFormat.space.removeAroundUnaryOperator") === true;
}
public get vcFormatSpaceAroundBinaryOperator(): string | undefined {
return super.Section.get<string>("vcFormat.space.aroundBinaryOperator");
public get vcFormatSpaceAroundBinaryOperator(): string {
// These strings have default values in package.json, so should never be undefined.
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
return super.Section.get<string>("vcFormat.space.aroundBinaryOperator")!;
}
public get vcFormatSpaceAroundAssignmentOperator(): string | undefined {
return super.Section.get<string>("vcFormat.space.aroundAssignmentOperator");
public get vcFormatSpaceAroundAssignmentOperator(): string {
// These strings have default values in package.json, so should never be undefined.
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
return super.Section.get<string>("vcFormat.space.aroundAssignmentOperator")!;
}
public get vcFormatSpacePointerReferenceAlignment(): string | undefined {
return super.Section.get<string>("vcFormat.space.pointerReferenceAlignment");
public get vcFormatSpacePointerReferenceAlignment(): string {
// These strings have default values in package.json, so should never be undefined.
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
return super.Section.get<string>("vcFormat.space.pointerReferenceAlignment")!;
}
public get vcFormatSpaceAroundTernaryOperator(): string | undefined {
return super.Section.get<string>("vcFormat.space.aroundTernaryOperator");
public get vcFormatSpaceAroundTernaryOperator(): string {
// These strings have default values in package.json, so should never be undefined.
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
return super.Section.get<string>("vcFormat.space.aroundTernaryOperator")!;
}
public get vcFormatWrapPreserveBlocks(): string | undefined {
return super.Section.get<string>("vcFormat.wrap.preserveBlocks");
public get vcFormatWrapPreserveBlocks(): string {
// These strings have default values in package.json, so should never be undefined.
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
return super.Section.get<string>("vcFormat.wrap.preserveBlocks")!;
}
public get dimInactiveRegions(): boolean {
@@ -458,3 +496,209 @@ export class OtherSettings {
public get customTextMateRules(): TextMateRule[] | undefined { return vscode.workspace.getConfiguration("editor.tokenColorCustomizations").get<TextMateRule[]>("textMateRules"); }
public getCustomThemeSpecificTextMateRules(themeName: string): TextMateRule[] | undefined { return vscode.workspace.getConfiguration(`editor.tokenColorCustomizations.[${themeName}]`, this.resource).get<TextMateRule[]>("textMateRules"); }
}
function mapIndentationReferenceToEditorConfig(value: string | undefined): string {
if (value !== undefined) {
// Will never actually be undefined, as these settings have default values.
if (value === "statementBegin") {
return "statement_begin";
}
if (value === "outermostParenthesis") {
return "outermost_parenthesis";
}
}
return "innermost_parenthesis";
}
function mapIndentToEditorConfig(value: string | undefined): string {
if (value !== undefined) {
// Will never actually be undefined, as these settings have default values.
if (value === "leftmostColumn") {
return "leftmost_column";
}
if (value === "oneLeft") {
return "one_left";
}
}
return "none";
}
function mapNewOrSameLineToEditorConfig(value: string | undefined): string {
if (value !== undefined) {
// Will never actually be undefined, as these settings have default values.
if (value === "newLine") {
return "new_line";
}
if (value === "sameLine") {
return "same_line";
}
}
return "ignore";
}
function mapWrapToEditorConfig(value: string | undefined): string {
if (value !== undefined) {
// Will never actually be undefined, as these settings have default values.
if (value === "allOneLineScopes") {
return "all_one_line_scopes";
}
if (value === "oneLiners") {
return "one_liners";
}
}
return "never";
}
function populateEditorConfig(rootUri: vscode.Uri | undefined, document: vscode.TextDocument): void {
// Set up a map of setting names and values. Parse through the document line-by-line, looking for
// existing occurrences to replace. Replaced occurrences are removed from the map. If any remain when
// done, they are added as a new section at the end of the file. The file is opened with unsaved
// edits, so the user may edit or undo if we made a mistake.
const settings: CppSettings = new CppSettings(rootUri);
const settingMap: Map<string, string> = new Map<string, string>();
settingMap.set("cpp_indent_braces", settings.vcFormatIndentBraces.toString());
settingMap.set("cpp_indent_multi_line_relative_to", mapIndentationReferenceToEditorConfig(settings.vcFormatIndentMultiLineRelativeTo));
settingMap.set("cpp_indent_within_parentheses", settings.vcFormatIndentWithinParentheses.toString());
settingMap.set("cpp_indent_preserve_within_parentheses", settings.vcFormatIndentPreserveWithinParentheses.toString());
settingMap.set("cpp_indent_case_labels", settings.vcFormatIndentCaseLabels.toString());
settingMap.set("cpp_indent_case_contents", settings.vcFormatIndentCaseContents.toString());
settingMap.set("cpp_indent_case_contents_when_block", settings.vcFormatIndentCaseContentsWhenBlock.toString());
settingMap.set("cpp_indent_lambda_braces_when_parameter", settings.vcFormatIndentLambdaBracesWhenParameter.toString());
settingMap.set("cpp_indent_goto_labels", mapIndentToEditorConfig(settings.vcFormatIndentGotoLables));
settingMap.set("cpp_indent_preprocessor", mapIndentToEditorConfig(settings.vcFormatIndentPreprocessor));
settingMap.set("cpp_indent_access_specifiers", settings.vcFormatIndentAccessSpecifiers.toString());
settingMap.set("cpp_indent_namespace_contents", settings.vcFormatIndentNamespaceContents.toString());
settingMap.set("cpp_indent_preserve_comments", settings.vcFormatIndentPreserveComments.toString());
settingMap.set("cpp_new_line_before_open_brace_namespace", mapNewOrSameLineToEditorConfig(settings.vcFormatNewlineBeforeOpenBraceNamespace));
settingMap.set("cpp_new_line_before_open_brace_type", mapNewOrSameLineToEditorConfig(settings.vcFormatNewlineBeforeOpenBraceType));
settingMap.set("cpp_new_line_before_open_brace_function", mapNewOrSameLineToEditorConfig(settings.vcFormatNewlineBeforeOpenBraceFunction));
settingMap.set("cpp_new_line_before_open_brace_block", mapNewOrSameLineToEditorConfig(settings.vcFormatNewlineBeforeOpenBraceBlock));
settingMap.set("cpp_new_line_before_open_brace_lambda", mapNewOrSameLineToEditorConfig(settings.vcFormatNewlineBeforeOpenBraceLambda));
settingMap.set("cpp_new_line_scope_braces_on_separate_lines", settings.vcFormatNewlineScopeBracesOnSeparateLines.toString());
settingMap.set("cpp_new_line_close_brace_same_line_empty_type", settings.vcFormatNewlineCloseBraceSameLineEmptyType.toString());
settingMap.set("cpp_new_line_close_brace_same_line_empty_function", settings.vcFormatNewlineCloseBraceSameLineEmptyFunction.toString());
settingMap.set("cpp_new_line_before_catch", settings.vcFormatNewlineBeforeCatch.toString().toString());
settingMap.set("cpp_new_line_before_else", settings.vcFormatNewlineBeforeElse.toString().toString());
settingMap.set("cpp_new_line_before_while_in_do_while", settings.vcFormatNewlineBeforeWhileInDoWhile.toString());
settingMap.set("cpp_space_before_function_open_parenthesis", settings.vcFormatSpaceBeforeFunctionOpenParenthesis.toString());
settingMap.set("cpp_space_within_parameter_list_parentheses", settings.vcFormatSpaceWithinParameterListParentheses.toString());
settingMap.set("cpp_space_between_empty_parameter_list_parentheses", settings.vcFormatSpaceBetweenEmptyParameterListParentheses.toString());
settingMap.set("cpp_space_after_keywords_in_control_flow_statements", settings.vcFormatSpaceAfterKeywordsInControlFlowStatements.toString());
settingMap.set("cpp_space_within_control_flow_statement_parentheses", settings.vcFormatSpaceWithinControlFlowStatementParentheses.toString());
settingMap.set("cpp_space_before_lambda_open_parenthesis", settings.vcFormatSpaceBeforeLambdaOpenParenthesis.toString());
settingMap.set("cpp_space_within_cast_parentheses", settings.vcFormatSpaceWithinCastParentheses.toString());
settingMap.set("cpp_space_after_cast_close_parenthesis", settings.vcFormatSpaceAfterCastCloseParenthesis.toString());
settingMap.set("cpp_space_within_expression_parentheses", settings.vcFormatSpaceWithinExpressionParentheses.toString());
settingMap.set("cpp_space_before_block_open_brace", settings.vcFormatSpaceBeforeBlockOpenBrace.toString());
settingMap.set("cpp_space_between_empty_braces", settings.vcFormatSpaceBetweenEmptyBraces.toString());
settingMap.set("cpp_space_before_initializer_list_open_brace", settings.vcFormatSpaceBeforeInitializerListOpenBrace.toString());
settingMap.set("cpp_space_within_initializer_list_braces", settings.vcFormatSpaceWithinInitializerListBraces.toString());
settingMap.set("cpp_space_preserve_in_initializer_list", settings.vcFormatSpacePreserveInInitializerList.toString());
settingMap.set("cpp_space_before_open_square_bracket", settings.vcFormatSpaceBeforeOpenSquareBracket.toString());
settingMap.set("cpp_space_within_square_brackets", settings.vcFormatSpaceWithinSquareBrackets.toString());
settingMap.set("cpp_space_before_empty_square_brackets", settings.vcFormatSpaceBeforeEmptySquareBrackets.toString());
settingMap.set("cpp_space_between_empty_square_brackets", settings.vcFormatSpaceBetweenEmptySquareBrackets.toString());
settingMap.set("cpp_space_group_square_brackets", settings.vcFormatSpaceGroupSquareBrackets.toString());
settingMap.set("cpp_space_within_lambda_brackets", settings.vcFormatSpaceWithinLambdaBrackets.toString());
settingMap.set("cpp_space_between_empty_lambda_brackets", settings.vcFormatSpaceBetweenEmptyLambdaBrackets.toString());
settingMap.set("cpp_space_before_comma", settings.vcFormatSpaceBeforeComma.toString());
settingMap.set("cpp_space_after_comma", settings.vcFormatSpaceAfterComma.toString());
settingMap.set("cpp_space_remove_around_member_operators", settings.vcFormatSpaceRemoveAroundMemberOperators.toString());
settingMap.set("cpp_space_before_inheritance_colon", settings.vcFormatSpaceBeforeInheritanceColon.toString());
settingMap.set("cpp_space_before_constructor_colon", settings.vcFormatSpaceBeforeConstructorColon.toString());
settingMap.set("cpp_space_remove_before_semicolon", settings.vcFormatSpaceRemoveBeforeSemicolon.toString());
settingMap.set("cpp_space_after_semicolon", settings.vcFormatSpaceInsertAfterSemicolon.toString());
settingMap.set("cpp_space_remove_around_unary_operator", settings.vcFormatSpaceRemoveAroundUnaryOperator.toString());
settingMap.set("cpp_space_around_binary_operator", settings.vcFormatSpaceAroundBinaryOperator.toString());
settingMap.set("cpp_space_around_assignment_operator", settings.vcFormatSpaceAroundAssignmentOperator.toString());
settingMap.set("cpp_space_pointer_reference_alignment", settings.vcFormatSpacePointerReferenceAlignment.toString());
settingMap.set("cpp_space_around_ternary_operator", settings.vcFormatSpaceAroundTernaryOperator.toString());
settingMap.set("cpp_wrap_preserve_blocks", mapWrapToEditorConfig(settings.vcFormatWrapPreserveBlocks));
const edits: vscode.WorkspaceEdit = new vscode.WorkspaceEdit();
let isInWildcardSection: boolean = false;
let trailingBlankLines: number = 0;
// Cycle through lines using document.lineAt(), to avoid issues mapping edits back to lines.
for (let i: number = 0; i < document.lineCount; ++i) {
let textLine: vscode.TextLine = document.lineAt(i);
if (textLine.range.end.character === 0) {
trailingBlankLines++;
continue;
}
trailingBlankLines = 0;
// Keep track of whether we left off in a wildcard section, so we don't output a redundant one.
let text: string = textLine.text.trim();
if (text.startsWith("[")) {
isInWildcardSection = text.startsWith("[*]");
continue;
}
for (const setting of settingMap) {
if (text.startsWith(setting[0])) {
// The next character must be white space or '=', otherwise it's a partial match.
if (text.length > setting[0].length) {
const c: string = text[setting[0].length];
if (c !== '=' && c.trim() !== "") {
continue;
}
}
edits.replace(document.uri, textLine.range, setting[0] + "=" + setting[1]);
// Because we're going to remove this setting from the map,
// scan ahead to update any other sections it may need to be updated in.
for (let j: number = i + 1; j < document.lineCount; ++j) {
textLine = document.lineAt(j);
text = textLine.text.trim();
if (text.startsWith(setting[0])) {
// The next character must be white space or '=', otherwise it's a partial match.
if (text.length > setting[0].length) {
const c: string = text[setting[0].length];
if (c !== '=' && c.trim() !== "") {
continue;
}
}
edits.replace(document.uri, textLine.range, setting[0] + "=" + setting[1]);
}
}
settingMap.delete(setting[0]);
break;
}
}
if (settingMap.size === 0) {
break;
}
}
if (settingMap.size > 0) {
let remainingSettingsText: string = "";
if (document.lineCount > 0) {
while (++trailingBlankLines < 2) {
remainingSettingsText += "\n";
}
}
if (!isInWildcardSection) {
remainingSettingsText += "[*]\n";
}
for (const setting of settingMap) {
remainingSettingsText += setting[0] + "=" + setting[1] + "\n";
}
const lastPosition: vscode.Position = document.lineAt(document.lineCount - 1).range.end;
edits.insert(document.uri, lastPosition, remainingSettingsText);
}
vscode.workspace.applyEdit(edits).then(() => vscode.window.showTextDocument(document));
}
export function generateEditorConfig(rootUri?: vscode.Uri): void {
if (rootUri !== undefined) {
// If a folder is open and '.editorconfig' exists at the root, use that.
const uri: vscode.Uri = vscode.Uri.joinPath(rootUri, ".editorconfig");
const edits: vscode.WorkspaceEdit = new vscode.WorkspaceEdit();
edits.createFile(uri, { ignoreIfExists: true, overwrite: false });
vscode.workspace.applyEdit(edits).then(() => {
vscode.workspace.openTextDocument(uri).then(
(document) => populateEditorConfig(rootUri, document),
() => vscode.workspace.openTextDocument().then((document) => populateEditorConfig(rootUri, document)));
}, () => vscode.workspace.openTextDocument().then((document) => populateEditorConfig(rootUri, document)));
} else {
vscode.workspace.openTextDocument().then((document) => populateEditorConfig(rootUri, document));
}
}

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