ARDUINO-LANGUAGE-SERVER(1)

NAME
arduino-language-server - Arduino Language Server based on Clangd for code autocompletion

SYNOPSIS
arduino-language-server [OPTION]...

DESCRIPTION

The language server is not intended for direct usage by humans via the command line terminal. The purpose of this program is to provide C++/.ino language-related functionality to the IDEs so, in general, it's the IDE that talks to the language server via stdin/stdout using the slightly modified JSONRPC protocol defined in the LSP specification.

To start the language server, an arduino-cli(1) config file is required. You can create one by running:

    arduino-cli config init

OPTIONS

-board-name string
    User-friendly board name to use initially (can be changed via JSON-RPC)

-clangd string
    Path to clangd executable

-cli string
    Path to arduino-cli executable

-cli-config string
    Path to arduino-cli config file

-cli-daemon-addr string
    TCP address and port of the Arduino CLI daemon (for example: localhost:50051)

-cli-daemon-instance int
    Instance number of the Arduino CLI daemon (default -1)

-format-conf-path string
    Path to global clang-format configuration file

-fqbn string
    Fully qualified board name to use initially (can be changed via JSON-RPC)

-jobs int
    Max number of parallel jobs. Default is 1. Use 0 to match the number of available CPU cores. (default -1)

-log
    Enable logging to files

-logpath string
    Location where to write logging files to when logging is enabled (default ".")

-no-real-time-diagnostics
    Disable real time diagnostics

-skip-libraries-discovery-on-rebuild
    Skip libraries discovery on rebuild, it will make rebuilds faster but it will fail if the used libraries changes.

SEE ALSO
arduino-cli(1), clangd(1)