Skip to content

API for management of clangd configuration files in C/C++ projects using contexts.

License

Notifications You must be signed in to change notification settings

eclipse-cdt-cloud/clangd-contexts

Repository files navigation

ECLIPSE CDT.CLOUD - CLANGD CONTEXTS

PRs Welcome Open questions Open bugs CI

Overview

An API for management of clangd configuration files in C/C++ projects using contexts.

Features

  • @eclipse-cdt-cloud/clangd-contexts:
    • Library for management of clangd configuration files
    • Retrieve and set contexts in one or more .clangd files
    • Manage compile flags in .clangd files
    • See the package readme for further details.
  • @eclipse-cdt-cloud/clangd-contexts-cli
    • An example command-line tool (clangd-context) built on the @eclipse-cdt-cloud/clangd-contexts API for management of clangd configuration files in C/C++ projects.
    • See the package readme for details, including a step-by-step guide to the CLI.
  • theia-clangd-contexts-ext
    • An example VS Code extension demonstrating use of the @eclipse-cdt-cloud/clangd-contexts API.
    • See the package readme for details, including a step-by-step guide to the extension UI.

How to build

Packages and Examples

To build the monorepo:

yarn

Additionally, to make the clangd-context example CLI tool available in your C/C++ projects (such as the clangd workspace example):

cd examples/clangd-contexts-cli
yarn link

Note that on some Linux installations you may need to ensure that Yarn's global bin directory is in your shell path:

export PATH=$(yarn global bin):$PATH

Example Theia Deployments

The browser-app and electron-app directories contain examples of Theia-based applications which use the extensions provided by the repository.

  • browser-app build instructions:

    yarn
    yarn start:browser
  • electron-app build instructions:

    yarn
    yarn start:electron

Example Packages

  • clangd-contexts-cli
    • provides a command-line tool that demonstrates usage of the clangd contexts API
  • clangd-contexts-ext
    • an example VS Code extension that demonstrates usage of the clangd contexts API

Example Workspaces

License

About

API for management of clangd configuration files in C/C++ projects using contexts.

Topics

Resources

License

Code of conduct

Stars

Watchers

Forks

Contributors 4

  •  
  •  
  •  
  •