madskristensen / madskristensen/WorkspaceFiles

CMake project support

Open
#49 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

enhancement
Dominant language
C#
Stars
51
Forks
15
PR merge metrics
No merged PRs in 30d

Description

Is your feature request related to a problem? Please describe.
VS2022 has no option to access the files outside of CMake project source root.
And often it is a missing feature as some dependent projects could be added to CMake build through either ExternalProject_Add() or add_subdirectory() with absolute path that is outside of the project root.
Current version of the extension does not show the icon in the Solution Explorer's Folder View:

Image

Describe the solution you'd like
Add support for CMake projects.
Consider using .vs/ProjectSettings.json (preferable) or .vs/VSWorkspaceState.json to store the settings.

Describe alternatives you've considered
Not that I could find

Additional context
Anything that could allow access external files, another (non-Solution explorer) view is ok too.

Thank you.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reviewing how the extension populates the Solution Explorer's Folder View and how it detects project roots. Then examine .vs/ProjectSettings.json and .vs/VSWorkspaceState.json as possible settings locations. Done means CMake projects can expose dependent files outside the source root, including paths from ExternalProject_Add() or add_subdirectory(), with a usable view and persisted settings.

Written by the indexing model from the issue text.

Assessment

Tech stack
cmake, csharp
Domain
build-system, developer-experience
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.