Ideas to reduce clutter in tabs caused by C++ header and implementation files
Hi everyone,
I'd like to share two ideas to reduce the tab cluttering caused by the fact that C++ uses separate files for headers and implementation. Maybe some of these are already in Rider, in that case please point me to them.
1. There's a hotkey to switch between header and implementation file. If the destination file is not open, it is opened. I'd love to be able to have it so that the file is opened in the preview tab instead of its own tab.
2. Similarly, I'd love to be able to always open header files in the preview tab so that I never accidentally create more tabs by double-clicking a header file.
Please let me know if these sound like ideas that could make it into the IDE or if they might be suitable for a plugin. I haven't checked out plugin development yet but might have a look if what I suggest would be possible with a plugin.
I have also found and upvoted this issue, linking this so others interested in the topic will see it: https://youtrack.jetbrains.com/issue/RIDER-43249
Cheers and have a great week.
Please sign in to leave a comment.
Hello,
Thank you for sharing your feedback.
These are indeed good ideas, and I believe the best way for implementing it would be to develop a plugin.
There are a lot of articles and tutorials about how to develop plugins:
- Rider sample plugin;
- An article about Rider Frontend plugin development;
- Creating Your First Plugin.
Here is a link to Rider plugin collection. Moreover, we have a Slack channel #dotnet-pluginwriters where our plugin writers can ask Rider/R#/IJ developers. Let me know if you want to be added there.
Talking about p.1, adjusting the behavior of existing built-in action might be tricky, but you could make your own action that does what you want.
Talking about p.2, that should be possible.
You might find these projects interesting and helpful to get started with editor tab handling:
https://github.com/dkjb634/CppOrganizer, https://github.com/AlexToulan/Rider-Smart-Tab-Groups
Have a nice day!