Here are the updates for this week.
Along with fixing some persistent database-related bugs, I've focused on implementing convenient features found in JetBrains Riderโspecifically "Create Definition" and "Create Implementation"โinto UCM.nvim.
Neovim is getting one step closer to a full IDE experience for Unreal Engine development!
๐ UCM.nvim: Seamless Definitions & Implementations
Iโve automated the boilerplate code writing that usually requires manual switching between header and source files.
UCM create_impl
Executing this command on a function definition in a header file automatically inserts the implementation template into the corresponding source (.cpp) file.
A key feature is that if the function is marked withoverride, it automatically generates theSuper::Function()call as well.

UCM create_decl
This performs the reverse ofcreate_impl. Executing it on a function implementation in the source file adds the definition to the header. It also supports signature updates, such as changes to arguments.
-
UCM add_structWhile classes are typically managed as "one class per file," there are often times when you want to quickly add a struct to a header. This command provides a wizard where you can simply select a name and parent struct to insert the appropriateUSTRUCTdefinition right at your cursor.
- Refactoring New File Creation
-
UCM new_class: Dedicated command for creating new class files. -
UCM new_struct: Dedicated command for creating new struct files. - I refactored the internal logic of
UCM newto properly handle both classes and structs independently.
๐ฒ UNX.nvim: Reducing File Tree Friction
I've improved the usability of the file tree to reduce friction during navigation.
- Tree State Persistence Unreal Engine project hierarchies tend to be very deep. Reopening folders every time I restarted Neovim was tedious, so I added the ability to save and restore the tree's open/close state.
-
UNX focusI implemented a feature to focus the file tree on the currently edited file. This is extremely useful when you want to create a new file in the same directory as the one you are currently working onโyou can instantly locate your position in the tree.
๐ UEP.nvim: Enhanced Navigation
-
UEP structsImplemented a feature to display a list of structs and jump directly to their definitions.
Conclusion
That wraps up this week's changes.
With the addition of implementation/definition auto-generation and the struct wizard, I feel that Neovim has reached a level where it can be my primary battlefield for editing code.
Looking ahead, I'm exploring ways to integrate Neovim with IDEs like Rider.
For example, it would be amazing to instantly open a file hitting a breakpoint in Rider directly in Neovim, or conversely, open the file being edited in Neovim inside Rider. If I can achieve this seamless interaction, I think it will create the ultimate development environment. I'm currently researching the technical feasibility of this workflow.



Top comments (0)