[clang-tools-extra] r325477 - [clangd] Add "clangd.trace" VSCode setting to enable tracing.
Sam McCall via cfe-commits
cfe-commits at lists.llvm.org
Mon Feb 19 01:43:46 PST 2018
Author: sammccall
Date: Mon Feb 19 01:43:46 2018
New Revision: 325477
URL: http://llvm.org/viewvc/llvm-project?rev=325477&view=rev
Log:
[clangd] Add "clangd.trace" VSCode setting to enable tracing.
Summary:
Setting the CLANGD_TRACE environment variable directly is awkward with VSCode's
"reload from the command palette" workflow.
Reviewers: ilya-biryukov
Subscribers: klimek, jkorous-apple, ioeric, cfe-commits
Differential Revision: https://reviews.llvm.org/D43385
Modified:
clang-tools-extra/trunk/clangd/clients/clangd-vscode/package.json
clang-tools-extra/trunk/clangd/clients/clangd-vscode/src/extension.ts
Modified: clang-tools-extra/trunk/clangd/clients/clangd-vscode/package.json
URL: http://llvm.org/viewvc/llvm-project/clang-tools-extra/trunk/clangd/clients/clangd-vscode/package.json?rev=325477&r1=325476&r2=325477&view=diff
==============================================================================
--- clang-tools-extra/trunk/clangd/clients/clangd-vscode/package.json (original)
+++ clang-tools-extra/trunk/clangd/clients/clangd-vscode/package.json Mon Feb 19 01:43:46 2018
@@ -43,8 +43,8 @@
"@types/mocha": "^2.2.32"
},
"repository": {
- "type": "svn",
- "url": "http://llvm.org/svn/llvm-project/clang-tools-extra/trunk/clangd/clients/clangd-vscode/"
+ "type": "svn",
+ "url": "http://llvm.org/svn/llvm-project/clang-tools-extra/trunk/clangd/clients/clangd-vscode/"
},
"contributes": {
"configuration": {
@@ -68,6 +68,10 @@
"type": "boolean",
"default": true,
"description": "Whether or not to send file events to clangd (File created, changed or deleted). This can be disabled for performance consideration."
+ },
+ "clangd.trace": {
+ "type": "string",
+ "description": "Names a file that clangd should log a performance trace to, in chrome trace-viewer JSON format."
}
}
}
Modified: clang-tools-extra/trunk/clangd/clients/clangd-vscode/src/extension.ts
URL: http://llvm.org/viewvc/llvm-project/clang-tools-extra/trunk/clangd/clients/clangd-vscode/src/extension.ts?rev=325477&r1=325476&r2=325477&view=diff
==============================================================================
--- clang-tools-extra/trunk/clangd/clients/clangd-vscode/src/extension.ts (original)
+++ clang-tools-extra/trunk/clangd/clients/clangd-vscode/src/extension.ts Mon Feb 19 01:43:46 2018
@@ -16,11 +16,16 @@ function getConfig<T>(option: string, de
* your extension is activated the very first time the command is executed
*/
export function activate(context: vscode.ExtensionContext) {
- const clangdPath = getConfig<string>('path');
- const clangdArgs = getConfig<string[]>('arguments');
const syncFileEvents = getConfig<boolean>('syncFileEvents', true);
- const serverOptions: vscodelc.ServerOptions = { command: clangdPath, args: clangdArgs };
+ const clangd: vscodelc.Executable = {
+ command: getConfig<string>('path'),
+ args: getConfig<string[]>('arguments')
+ };
+ const traceFile = getConfig<string>('trace');
+ if (traceFile != null)
+ clangd.options = {env: {CLANGD_TRACE: traceFile}};
+ const serverOptions: vscodelc.ServerOptions = clangd;
const filePattern: string = '**/*.{' +
['cpp', 'c', 'cc', 'cxx', 'c++', 'm', 'mm', 'h', 'hh', 'hpp', 'hxx', 'inc'].join() + '}';
More information about the cfe-commits
mailing list