Provided by: clangd-18_18.1.3-1ubuntu1_amd64 bug

NAME

       clangd - manual page for clangd 18

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/language-server-protocol/

       clangd accepts flags on the commandline, and in the CLANGD_FLAGS environment 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 compile_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
              system 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
              completions can insert scope qualifiers

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

       --background-index-priority=<value>  -  Thread  priority for building the background index. The effect of
              this flag is OS-specific.

       =background
              -   Minimum priority, runs on idle CPUs. May leave 'performance' cores unused.

       =low   -   Reduced priority compared to interactive work.

       =normal
              -   Same priority as other clangd work.

       --clang-tidy                        - Enable clang-tidy diagnostics

       --completion-style=<value>          - Granularity of code completion suggestions

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

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

       --fallback-style=<string>            -  clang-format style to apply by default 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 accepting 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  before  the  completion  label,
              depending on whether an include line will be inserted or not

       --import-insertions                  -  If  header  insertion  is  enabled,  add  #import directives when
              accepting code completions or fixing includes in Objective-C code

       --limit-references=<int>            - Limit the number of references returned 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

       --rename-file-limit=<int>           - Limit the number of files to be  affected  by  symbol  renaming.  0
              means no limit (default=50)

       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>, attempts to parse a particular 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 directories:

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

              Configuration is documented at https://clangd.llvm.org/config.html

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

       --malloc-trim                       - Release memory periodically via malloc_trim(3).

       --pch-storage=<value>                -  Storing  PCHs  in memory increases memory 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 capabilities

       =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/include,/home/project=/workarea/project

       --pretty                            - Pretty-print JSON output

clangd 18                                           May 2024                                           CLANGD(1)