This roadmap outlines the journey of csharp-explorer.nvim toward achieving feature parity with the solution trees in Visual Studio and JetBrains Rider.
Focus: Visibility into what makes up a project beyond just source files.
- NuGet Package Integration:
- Display a "Packages" node under each project.
- List installed NuGet packages and versions.
- Project References:
- Display a "Dependencies" or "References" node.
- Show links to other projects in the solution.
- Project Properties Access:
- Quick shortcut to open the
.csprojfile for editing.
- Quick shortcut to open the
Focus: Bringing the richness of IDE trees to the Neovim buffer.
- Diagnostic Signs:
- Show error/warning icons next to files/projects (integrated with
vim.diagnostic).
- Show error/warning icons next to files/projects (integrated with
- File Nesting:
- Logic to group related files (e.g.,
App.xaml→App.xaml.cs).
- Logic to group related files (e.g.,
- Dynamic Icon Themes:
- Support for project-specific icons (Web, Console, Library, Test).
- Item Metadata (Properties Window):
- Floating window showing file details (Size, Type, Build Action, Namespace).
Focus: Taking action on the solution directly from the explorer.
- Integrated Build Control:
- Bindings for
dotnet build,dotnet restore, anddotnet cleanon specific projects or the whole solution.
- Bindings for
- Test Integration:
- Discover and run tests directly from a project/file node.
- Solution/Project Templates:
- Interface for
dotnet newto add projects or classes via UI prompts.
- Interface for
Focus: Deep integration with LSP and build tools.
- Safe Refactoring:
- Rename/Delete operations that update File & Symbol references across the whole solution via LSP.
- Namespace Syncing:
- Automatically update
namespacedeclarations when a file is moved between folders.
- Automatically update
- Search Within Solution:
- Global symbol search scoped to the explorer tree.
We are currently in Phase 0 (Foundation): Basic SLN/SLNX parsing and file system proxying.