SkillAgentSearch skills...

UnrealDev.nvim

The Neovim suite for Unreal Engine development. Integrates plugins like UEP, UBT, ULG, UCM, and more for a unified experience.

Install / Use

/learn @taku25/UnrealDev.nvim
About this skill

Quality Score

0/100

Supported Platforms

Universal

README

UnrealDev.nvim

Unreal Engine Development Sweet 💓 Neovim

<img width="2048" height="1342" alt="screenshot-20251122-191958" src="https://github.com/user-attachments/assets/4b26c5e7-461b-4e78-953b-9b2d6d24988e" />

UnrealDev.nvim is a thin wrapper plugin that integrates the functionality of the Unreal Neovim Plugin Sweet suite (UEP, UBT, UCM, ULG, USH, UEA, UNX, UDB) into a single global command, :UDEV.

Its purpose is to simplify the setup of each plugin and allow all Unreal Engine-related operations to be called from a single interface.

English | 日本語 (Japanese)

GitHub stars Qiita Dev.to


Introduction to Some Features

<table> <tr> <td> <div align=center> <img width="100%" alt="image" src="https://github.com/user-attachments/assets/4cc958a0-515e-4b4d-bfdc-a2b5fde27146" /> UDEV refresh </div> </td> <td> <div align=center> <img width="100%" alt="image" src="https://github.com/user-attachments/assets/30596bc6-a2a3-4805-a84e-1d28350da207" /> UDEV gencompiledb </div> </td> </tr> <tr> <td> <div align=center> <img width="100%" alt="image" src="https://github.com/user-attachments/assets/b0a5080a-7f45-4d2f-94ed-898b307239b0" /> UDEV tree </div> </td> <td> <div align=center> <img width="100%" alt="image" src="https://github.com/user-attachments/assets/0f0ef9a4-770e-4900-a5cf-6a29596a90c4" /> UDEV symbols </div> </td> </tr> <tr> <td> <div align=center> <img width="100%" alt="image" src="https://github.com/user-attachments/assets/f1907046-d1bb-48cb-936d-5ad45f1809cc" /> UDEV build & error </div> </td> <td> <div align=center> <img width="100%" alt="image" src="https://github.com/user-attachments/assets/7753f489-b1ec-44bf-bea2-16ba268262cc" /> UDEV new class </div> </td> </tr> <tr> <td> <div align=center> <img width="100%" alt="image" src="https://github.com/user-attachments/assets/c4bd92d5-e1e6-44ac-8b5c-b13bed5496ab" /> UDEV classes </div> </td> <td> <div align=center> <img width="100%" alt="image" src="https://github.com/user-attachments/assets/ab76c626-f3d1-435a-b720-88cdb73fc731" /> UDEV config_grep </div> </td> </tr> </table>

many other features


⚡ Development Status & Architecture

Note UnrealDev.nvim acts as a meta-plugin (wrapper) for the Unreal Engine development suite. While this specific repository primarily handles orchestration, the core features are actively developed and updated frequently in the individual modules listed below.

📚 Detailed Documentation (Wiki)

Detailed installation instructions, configuration, command lists, and API usage examples are all available on the GitHub Wiki.

Please refer to the wiki first when setting up or customizing.


✨ Features

  • Unified Command Interface:
    • Call all detected plugin functions from the suite (project exploration, build, class management, log viewing, shell operations, asset inspection) from the :UDEV command.
  • Automatic Feature Detection:
    • Auto-detects installed suite plugins (UEP, UBT, UCM, ULG, USH, UEA) via pcall and provides commands only for those that are available.
  • Unified API:
    • Access all available suite plugin API functions via require('UnrealDev.api'), making it easy to create keymaps and automation.

🔧 Requirements

✅ For a complete list of external tool requirements (like fd, rg) and recommended UI plugins (like telescope, neo-tree), please see the Wiki Installation Page.

🚀 Installation

Example installation for lazy.nvim. UnrealDev.nvim should be listed, and any suite plugins you want to use should be listed as well (they are no longer hard dependencies, but peers).

return {
  {
    'taku25/UnrealDev.nvim',
    -- Define all plugins in the development suite.
    -- You can remove any plugins you don't use.
    dependencies = {
      {
        'taku25/UNL.nvim', -- Core Library
        build = "cargo build --release --manifest-path scanner/Cargo.toml",
        lazy = false,
      },
      'taku25/UEP.nvim', -- Project Explorer
      'taku25/UEA.nvim', -- Asset (Blueprint) Inspector
      'taku25/UBT.nvim', -- Build Tool
      'taku25/UCM.nvim', -- Class Manager
      'taku25/ULG.nvim', -- Log Viewer
      'taku25/USH.nvim', -- Unreal Shell
      {
        'taku25/UNX.nvim', -- Logical View 
        dependencies = {
          "MunifTanjim/nui.nvim",
          "nvim-tree/nvim-web-devicons",
        },
      },
      'taku25/UDB.nvim', -- Debug
      {
        'taku25/USX.nvim', -- Syntax highlight
        lazy=false,
      },
      
      -- UI Plugins (Optional)
      'nvim-telescope/telescope.nvim',
      'j-hui/fidget.nvim',
      'nvim-lualine/lualine.nvim',
      { 
          'nvim-treesitter/nvim-treesitter',
           branch = "main",
           config = function(_, opts)
             vim.api.nvim_create_autocmd('User', { pattern = 'TSUpdate',
               callback = function()
                 local parsers = require('nvim-treesitter.parsers')
                 parsers.cpp = {
                   install_info = {
                     url  = 'https://github.com/taku25/tree-sitter-unreal-cpp',
                     -- Check if need to update to the latest revision
                     revision  = '7bbb85f1fcc6e109c90cea2167e88a5a472910d3',
                   },
                 }
                 parsers.ushader = {
                   install_info = {
                     url  = 'https://github.com/taku25/tree-sitter-unreal-shader',
                     -- Check if need to update to the latest revision
                     revision  = '26f0617475bb5d5accb4d55bd4cc5facbca81bbd',
                   },
                 }
              end
            })
            local langs = { "c", "cpp", "ushader","json"  }
            require("nvim-treesitter").install(langs)
            local group = vim.api.nvim_create_augroup('MyTreesitter', { clear = true })
            vim.api.nvim_create_autocmd('FileType', {
               group = group,
               pattern = langs,
               callback = function(args)
                  vim.treesitter.start(args.buf)
                  vim.bo[args.buf].indentexpr = "v:lua.require'nvim-treesitter'.indentexpr()"
               end,
            })
         end
       }
      -- ...
    },
    opts = {
      -- Configuration specific to UnrealDev.nvim
      -- (e.g., disable setup for plugins you don't have)
      setup_modules = {
        UBT = true,
        UEP = true,
        ULG = true,
        USH = true,
        UCM = true,
        UEA = true,
        UNX = true,
      },
    },
  },

  -- ---
  -- Individual Plugin Settings (Optional)
  -- ---
  --{ 'taku25/UBT.nvim', opts = { ... } },
  --{ 'taku25/UEP.nvim', opts = { ... } },
  --{ 'taku25/UEA.nvim', opts = { ... } },
  -- ...
}

✅ Verify Installation

After installation, run the following command to ensure all dependencies, external tools (fd, rg), and the custom tree-sitter parser are correctly set up:

:checkhealth UnrealDev

If you see any Errors or Warnings, please follow the advice displayed in the checkhealth output.

✅ For a complete installation example including UI plugins, and detailed opts examples for each plugin (UEP, UBT, etc.), please see the Wiki Installation Guide.

⚙️ Configuration

Configuration for UnrealDev.nvim itself is minimal, such as the setup_modules table shown above.

Configuration for each plugin in the suite (UEP, UBT, etc.) is done by passing opts to each plugin's spec in lazy.nvim (see installation example above).

✅ For detailed configuration options for each plugin, please refer to the Wiki Configuration Page or each plugin's individual README.

⚡ Usage

All commands start with :UDEV. Only commands for installed plugins will be available.

" ===== (Examples) ===== "

" Rescan the project (from UEP)
:UDEV refresh

" Find files (from UEP)
:UDEV files

" Build a target (from UBT)
:UDEV build

" Create a new class (from

Related Skills

View on GitHub
GitHub Stars30
CategoryDevelopment
Updated4d ago
Forks6

Languages

Lua

Security Score

95/100

Audited on Mar 28, 2026

No findings