dwww Home | Manual pages | Find package

CLANGD(1)                        User Commands                       CLANGD(1)

NAME
       clangd - manual page for clangd 14

DESCRIPTION
       OVERVIEW:  clangd  is a language server that provides IDE-like features
       to editors.

   It should be used via an editor plugin rather than  invoked  directly.  For
       more information, see:
              https://clangd.llvm.org/        https://microsoft.github.io/lan-
              guage-server-protocol/

       clangd accepts flags on the commandline, and in the CLANGD_FLAGS  envi-
       ronment variable.

       USAGE: clangd [options]

       OPTIONS:

       Generic Options:

       --help                             -    Display    available    options
              (--help-hidden for more)

       --help-list                     - Display  list  of  available  options
              (--help-list-hidden for more)

       --version                       - Display the version of this program

       clangd compilation flags options:

       --compile-commands-dir=<string>  -  Specify  a  path  to  look for com-
              pile_commands.json. If path is invalid, clangd will look in  the
              current directory and parent paths of each source file

       --query-driver=<string>          -  Comma  separated  list of globs for
              white-listing gcc-compatible drivers that are safe  to  execute.
              Drivers matching any of these globs will be used to extract sys-
              tem includes. e.g. /usr/bin/**/clang-*,/path/to/repo/**/g++-*

       clangd feature options:

       --all-scopes-completion         - If set to true, code completion  will
              include  index  symbols that are not defined in the scopes (e.g.
              namespaces) visible from the code completion point. Such comple-
              tions can insert scope qualifiers

       --background-index               - Index project code in the background
              and persist index on disk.

       --clang-tidy                    - Enable clang-tidy diagnostics

       --completion-style=<value>      - Granularity of code  completion  sug-
              gestions

       =detailed
              -    One  completion item for each semantically distinct comple-
              tion, with full type information

       =bundled
              -   Similar completion items (e.g. function overloads) are  com-
              bined. Type information shown where possible

       --fallback-style=<string>        -  clang-format  style to apply by de-
              fault when no .clang-format file is found

       --function-arg-placeholders     - When  disabled,  completions  contain
              only  parentheses  for function calls. When enabled, completions
              also contain placeholders for method parameters

       --header-insertion=<value>      - Add #include directives when  accept-
              ing code completions

       =iwyu  -   Include what you use. Insert the owning header for top-level
              symbols, unless the header is already directly included  or  the
              symbol is forward-declared

       =never -   Never insert #include directives as part of code completion

       --header-insertion-decorators    -  Prepend a circular dot or space be-
              fore the completion label, depending on whether an include  line
              will be inserted or not

       --limit-references=<int>         -  Limit  the number of references re-
              turned by clangd. 0 means no limit (default=1000)

       --limit-results=<int>           - Limit the number of results  returned
              by clangd. 0 means no limit (default=100)

       --project-root=<string>          -  Path  to the project root. Requires
              remote-index-address to be set.

       --remote-index-address=<string> - Address of the remote index server

       clangd miscellaneous options:

       --check[=<string>]                - Parse one file in isolation instead
              of  acting as a language server. Useful to investigate/reproduce
              crashes or configuration problems. With --check=<filename>,  at-
              tempts to parse a particular file.

       --check-lines[=<string>]           -  If specified, limits the range of
              tokens in -check file on which various features are tested.  Ex-
              ample  --check-lines=3-7  restricts testing to lines 3 to 7 (in-
              clusive) or --check-lines=5 to restrict to one line. Default  is
              testing entire file.

       --enable-config                  -  Read user and project configuration
       from YAML files.
              Project config is from a .clangd file in the project  directory.
              User config is from clangd/config.yaml in the following directo-
              ries:

       Windows: %USERPROFILE%\AppData\Local
              Mac OS: ~/Library/Preferences/ Others: $XDG_CONFIG_HOME, usually
              ~/.config

              Configuration   is  documented  at  https://clangd.llvm.org/con-
              fig.html

       -j=<uint>                       -  Number  of  async  workers  used  by
              clangd. Background index also uses this many workers.

       --malloc-trim                    - Release memory periodically via mal-
              loc_trim(3).

       --pch-storage=<value>           - Storing PCHs in memory increases mem-
              ory usages, but may improve performance

       =disk  -   store PCHs on disk

       =memory
              -   store PCHs in memory

       clangd protocol and logging options:

       --log=<value>                    - Verbosity of log messages written to
              stderr

       =error
              -   Error messages only

       =info  -   High level execution tracing

       =verbose
              -   Low level details

       --offset-encoding=<value>       - Force  the  offsetEncoding  used  for
              character  positions. This bypasses negotiation via client capa-
              bilities

       =utf-8
              -   Offsets are in UTF-8 bytes

       =utf-16
              -   Offsets are in UTF-16 code units

       =utf-32
              -   Offsets are in unicode codepoints

       --path-mappings=<string>        - Translates between client  paths  (as
              seen  by  a  remote  editor) and server paths (where clangd sees
              files     on     disk).     Comma     separated     list      of
              '<client_path>=<server_path>'  pairs, the first entry matching a
              given   path   is   used.    e.g.    /home/project/incl=/opt/in-
              clude,/home/project=/workarea/project

       --pretty                        - Pretty-print JSON output

clangd 14                        February 2023                       CLANGD(1)

Generated by dwww version 1.15 on Wed Jun 26 18:45:19 CEST 2024.