I realize I'm building plugins for a "niche within a niche"βusing Neovim for Unreal Engine C++ development. But honestly? It's becoming surprisingly capable.
This week, I shipped some massive updates to the UnrealDev.nvim ecosystem. From Perforce integration to a wizard for generating UPROPERTY macros, here is whatβs new!
π¦ 1. UnrealDev.nvim
Health Checks for Peace of Mind
Added :checkhealth UnrealDev
I added a health check command to verify that your Unreal Engine development environment is set up correctly.
Since nvim-treesitter parsers don't always auto-update with plugin managers, things can sometimes get out of sync. If something feels off, just run this command to troubleshoot instantly.
π² 2. UNX.nvim (Explorer)
Finally... Perforce (P4) Support!
You can't talk about Unreal Engine development without mentioning Perforce. It's the industry standard, and until now, UNX only supported Git.
With this update, P4 status is now integrated into the file tree!
- Status Icons: Visualizes P4 states (Add, Edit, etc.) directly in the explorer.
- Auto-Checkout: If you try to modify a read-only file, a dialog will pop up asking if you want to check it out.
Say goodbye to those annoying "File is read-only" errors! π
π οΈ 3. UCM.nvim (Code Actions)
Speeding up Includes & Macros
π :UCM copy_include[!]
Tired of manually typing relative paths for #include? This command calculates the correct include path for a C++ class and copies it to your clipboard.
-
Auto-Resolution: Run this on
MyActor.cpp, and it generates#include "Actor/MyActor.h". -
:UCM copy_include: Copies the include path for the current file. -
:UCM copy_include!: Lets you fuzzy-search for a class name and copies its include path.
β‘ :UCM specifiers[!] (The Macro Wizard)
Writing UPROPERTY, UFUNCTION, or UCLASS macros by hand is tedious. This wizard handles it for you.
- Normal Mode (
:UCM specifiers):
1. Select the macro type (e.g., `UPROPERTY`).
2. Multi-select specifiers (e.g., `EditAnywhere`, `BlueprintReadWrite`).
3. Inserts the full macro `UPROPERTY(EditAnywhere, ...)` at your cursor AND copies it to the clipboard.
4. **Smart Cursor:** If you pick something like `Category=""`, the cursor automatically jumps between the quotes.
-
Append Mode (
:UCM specifiers!with bang):- Perfect for editing existing macros.
- It skips the wrapper and only inserts the specifiers (e.g.,
EditAnywhere) at your cursor position.
π 4. UEP.nvim (Project Provider)
Smarter Navigation & Docs
File & Shader Enhancements
-
Config/Shaders Visibility: Fixed an issue where
UEP treewasn't showing Config or Shaders directories. -
Virtual Paths: Added support for virtual include paths in
.ush/.usffiles.open_filescan now jump straight to them. -
:UEP shaders[!] [Scope]: A new command to search and open shader files quickly.
C# Config Navigation
-
:UEP build_cs[!]:- Without
!: Instantly opensBuild.csfor the current module. - With
!: Lists allBuild.csfiles in the project to choose from.
- Without
-
:UEP target_cs[!]:- Without
!: Lists projectTarget.csfiles. - With
!: Includes Engine targets in the search.
- Without
π :UEP web_doc[!] (Context-Aware Docs)
Opens the official Unreal Engine documentation in your browser. The best part? It automatically detects your project's UE version and opens the correct page.
-
Without
!: Searches the docs for the word under your cursor. -
With
!: Lets you select a class from your project to open its documentation.- Note (Experimental): If the plugin can't guess the direct URL, it gracefully falls back to a site search.
Conclusion
This week was all about "Quality of Life" improvements. I focused on fixing those small frictions that made me miss my heavy IDE.
Honestly, I'm finding myself opening Rider less and less these days. (Maybe I just forgot the Rider shortcuts? π€... nah, Neovim is just getting that good!)
If you have any feature requests or ideas, let me know in the comments or issues. And if you find these plugins useful, a Star βοΈ on UnrealDev.nvim would make my day!
Happy Hacking! π»β¨





Top comments (0)