Compare commits
38
Commits
1.1.2
...
1.2.0-preview
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
2ad35c83c0 | ||
|
|
72c9f2115e | ||
|
|
805f884b17 | ||
|
|
26726df578 | ||
|
|
b7a0279352 | ||
|
|
f724ae8912 | ||
|
|
ab55557ddb | ||
|
|
c70dc9e93b | ||
|
|
0aaf0c5af4 | ||
|
|
29ff9be9f7 | ||
|
|
52469738d3 | ||
|
|
8dd2efd090 | ||
|
|
07683b02fe | ||
|
|
a0a7d5b678 | ||
|
|
3e34ba2227 | ||
|
|
08a28c3fd5 | ||
|
|
95ae82ff5c | ||
|
|
94294dd372 | ||
|
|
61e98c0e0d | ||
|
|
bb910aa280 | ||
|
|
a6c7ffd8f5 | ||
|
|
4c2124ebf4 | ||
|
|
aefe53cab1 | ||
|
|
ce3d3fa403 | ||
|
|
55a9117ecf | ||
|
|
e5d08d2a9e | ||
|
|
3194b10e62 | ||
|
|
12c653fa7b | ||
|
|
0c32d707ab | ||
|
|
b4e2a8457f | ||
|
|
f6d7577688 | ||
|
|
c026a827c6 | ||
|
|
55421659dc | ||
|
|
1a718f3f0e | ||
|
|
68078182bf | ||
|
|
7bcbea62e9 | ||
|
|
ec66642c60 | ||
|
|
4119b6c263 |
@@ -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
|
||||
@@ -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() {
|
||||
|
||||
@@ -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:
|
||||
|
||||
@@ -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
|
||||
@@ -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()
|
||||
}
|
||||
}
|
||||
|
||||
@@ -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
|
||||
@@ -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,9 +2,9 @@ name: CI (Linux)
|
||||
|
||||
on:
|
||||
push:
|
||||
branches: [ master ]
|
||||
branches: [ main ]
|
||||
pull_request:
|
||||
branches: [ master ]
|
||||
branches: [ main ]
|
||||
|
||||
jobs:
|
||||
build:
|
||||
|
||||
@@ -2,9 +2,9 @@ name: CI (Mac)
|
||||
|
||||
on:
|
||||
push:
|
||||
branches: [ master ]
|
||||
branches: [ main ]
|
||||
pull_request:
|
||||
branches: [ master ]
|
||||
branches: [ main ]
|
||||
|
||||
jobs:
|
||||
build:
|
||||
|
||||
@@ -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."
|
||||
@@ -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
@@ -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`.
|
||||
|
||||
@@ -41,3 +41,6 @@ translations_auto_pr.js
|
||||
|
||||
# ignore i18n language files
|
||||
i18n/**
|
||||
|
||||
# ignore node_modules
|
||||
node_modules/
|
||||
|
||||
+53
-3
@@ -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
@@ -1,6 +1,6 @@
|
||||
# C/C++ for Visual Studio Code
|
||||
|
||||
#### [Repository](https://github.com/microsoft/vscode-cpptools) | [Issues](https://github.com/microsoft/vscode-cpptools/issues) | [Documentation](https://code.visualstudio.com/docs/languages/cpp) | [Code Samples](https://github.com/microsoft/vscode-cpptools/tree/master/Code%20Samples) | [Offline Installers](https://github.com/microsoft/vscode-cpptools/releases)
|
||||
#### [Repository](https://github.com/microsoft/vscode-cpptools) | [Issues](https://github.com/microsoft/vscode-cpptools/issues) | [Documentation](https://code.visualstudio.com/docs/languages/cpp) | [Code Samples](https://github.com/microsoft/vscode-cpptools/tree/main/Code%20Samples) | [Offline Installers](https://github.com/microsoft/vscode-cpptools/releases)
|
||||
|
||||
[](https://aka.ms/vsls)
|
||||
|
||||
|
||||
+674
-311
File diff suppressed because it is too large
Load Diff
@@ -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)"
|
||||
]
|
||||
@@ -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."
|
||||
]
|
||||
@@ -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)"
|
||||
]
|
||||
@@ -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)"
|
||||
]
|
||||
@@ -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)"
|
||||
]
|
||||
@@ -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 操作を代わりに使用して) 試行されます"
|
||||
]
|
||||
@@ -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 작업 사용)"
|
||||
]
|
||||
@@ -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)"
|
||||
]
|
||||
@@ -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)"
|
||||
]
|
||||
@@ -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)"
|
||||
]
|
||||
@@ -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)"
|
||||
]
|
||||
@@ -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 操作)"
|
||||
]
|
||||
@@ -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 作業)"
|
||||
]
|
||||
@@ -4,5 +4,5 @@
|
||||
"recursiveIncludes": 100,
|
||||
"gotoDefIntelliSense": 100,
|
||||
"enhancedColorization": 100,
|
||||
"minimumVSCodeVersion": "1.49.0"
|
||||
"minimumVSCodeVersion": "1.52.0"
|
||||
}
|
||||
@@ -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": "生成已成功完成。"
|
||||
}
|
||||
@@ -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": "编译器查询返回了无法识别的语言标准版本。将改用受支持的最新版本。"
|
||||
}
|
||||
@@ -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": "已成功完成建置。"
|
||||
}
|
||||
@@ -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 原始程式檔,依據編譯器引數與探查 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}\"",
|
||||
"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": "編譯器查詢傳回無法辨識的語言標準版本。將改用支援的最新版本。"
|
||||
}
|
||||
@@ -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."
|
||||
}
|
||||
@@ -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."
|
||||
}
|
||||
@@ -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."
|
||||
}
|
||||
@@ -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."
|
||||
}
|
||||
@@ -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."
|
||||
}
|
||||
@@ -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."
|
||||
}
|
||||
@@ -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."
|
||||
}
|
||||
@@ -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."
|
||||
}
|
||||
@@ -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."
|
||||
}
|
||||
@@ -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": "ビルドが正常に完了しました。"
|
||||
}
|
||||
@@ -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": "コンパイラ クエリにより、認識されない言語標準バージョンが返されました。代わりに、サポートされている最新のバージョンが使用されます。"
|
||||
}
|
||||
@@ -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": "빌드가 완료되었습니다."
|
||||
}
|
||||
@@ -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": "컴파일러 쿼리에서 인식할 수 없는 언어 표준 버전을 반환했습니다. 지원되는 최신 버전이 대신 사용됩니다."
|
||||
}
|
||||
@@ -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."
|
||||
}
|
||||
@@ -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."
|
||||
}
|
||||
@@ -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."
|
||||
}
|
||||
@@ -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."
|
||||
}
|
||||
@@ -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": "Сборка завершена."
|
||||
}
|
||||
@@ -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": "Проба компилятора возвратила нераспознанную версию стандарта языка. Вместо этого будет использоваться последняя поддерживаемая версия."
|
||||
}
|
||||
@@ -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ı."
|
||||
}
|
||||
@@ -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
@@ -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": {
|
||||
|
||||
@@ -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";
|
||||
}
|
||||
|
||||
|
||||
@@ -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();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -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 {
|
||||
|
||||
@@ -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
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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
Reference in New Issue
Block a user