Completion and Diagnostic for C/C++/Objective-C using Clang
Completion and Diagnostic for C/C++/Objective-C using Clang command.
Clang project officialy starts to implement Language Server named clangd. (https://github.com/llvm-mirror/clang-tools-extra/tree/master/clangd)
This extension was renamed to C/C++ Clang Command Adapter to avoid confusion, because this extension is unofficial and only parse output of clang command.
PATH
is configured automatically.PATH
environment variable so that you can execute clang
command.
clang.executable
configuration (See the next section for detail)You can use configuration interface of Visual Studio Code. (Press F1
and type User Settings
or Workspace Settings
)
clang.executable
: Clang command or the path to the Clang executable (default: clang
)clang.cflags
, clang.cxxflags
, clang.objcflags
: Compiler Options for C/C++/Objective-Cclang.completion.enable
: Enable/disable completion feature (default: true
)clang.completion.maxBuffer
: Tolerable size of clang output for completion (default: 8 * 1024 * 1024
bytes)clang.completion.triggerChars
: Trigger completion when the user types one of the characters (default: [".", ":", ">"]
)clang.diagnostic.enable
: Enable/disable diagnostic feature (default: true
)clang.diagnostic.maxBuffer
: Tolerable size of clang output for diagnostic. (default: 256 * 1024
bytes)clang.diagnostic.delay
: The delay in millisecond after which diagnostic starts (default: 500
)Configurations support some variables which are available in tasks.json
.
They can be used inside of strings (e.g. "-I${workspaceRoot}/include"
)
${workspaceRoot}
${cwd}
${env.ENVIRONMENT_VARIABLE}
Since version 0.2.0, clang.diagnosticDelay
, clang.enableCompletion
, clang.enableDiagnostic
is deprecated.
Please update as follows:
clang.enableCompletion
-> clang.completion.enable
clang.enableDiagnostic
-> clang.diagnostic.enable
clang.diagnosticDelay
-> clang.diagnostic.delay
ClangCommandAdapter: Show Executable and Compile Options
: Showing Clang executable and compile options for the active editor.ClangCommandAdapter: Trust Workspace
: Trust the current workspace. (see #Security)ClangCommandAdapter: Untrust Workspace
: Untrust the current workspace. (see #Security)The following settings may cause security issue, if you are opening a malicious workspece.
clang.executable
: Arbitrary executables specified in the workspace-level setting will be executed.clang.cflags
, clang.cxxflags
, clang.objcflags
: Clang command is executed with artibrary options specified in the workspace-level setting.Therefore, these workspace-level settings are disabled by default.
ClangCommandAdapter: Trust Workspace
or ClangCommandAdapter: Untrust Workspace
.