gitwtfhub

wtf is wombient?

wom/wombient — explained in plain English

Analysis updated 2026-05-18

15LuaAudience · developerComplexity · 2/5Setup · easy

TL;DR

A Neovim plugin that shades nested code sections with subtle background colors to make large files easier to scan.

Mindmap

mindmap
  root((repo))
    What it does
      Shades code sections
      Optional left stripe
      Preserves syntax colors
    Tech stack
      Lua
      Neovim
      Tree-sitter
    Use cases
      Scan large files
      Mark section boundaries
      Per filetype strategies
    Audience
      Neovim users
      Developers

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

Why would anyone build with this?

REASON 1

Add subtle background shading to nested code blocks so large files are easier to scan visually.

REASON 2

Show a left-side stripe marking section boundaries in files you edit in Neovim.

REASON 3

Configure different section-detection strategies for YAML, Python, and other file types.

REASON 4

Toggle shading on or off per buffer using editor commands or the Lua API.

What's in the stack?

LuaNeovimTree-sitter

How it stacks up

wom/wombientfruityman577/gmod-tinysvgiogamaster/tuxedo.nvim
Stars151515
LanguageLuaLuaLua
Setup difficultyeasyeasymoderate
Complexity2/51/5
Audiencedeveloperdeveloperdeveloper

Figures from each repo's GitHub metadata at analysis time.

How do you spin it up?

Difficulty · easy Time to first run · 5min

Requires Neovim 0.10 or newer, Tree-sitter and an LSP server are optional but improve accuracy.

Wtf does this do

wombient.nvim is a plugin for the Neovim text editor that makes long files easier to scan. It shades nested sections of code with subtle background colors and an optional stripe down the left side, so you can see where one block of code ends and another begins, without changing your normal syntax highlighting colors. To figure out where sections start and end, wombient first tries semantic tools built into your editor setup: Tree-sitter, which understands the structure of your code, and folding ranges reported by a language server if one is attached. If neither of those is available it falls back to simpler pattern matching, such as recognizing YAML keys that open a block, common Python keywords like def and class, or general indentation rules. Different file types can be configured to use different chains of these strategies. The plugin needs Neovim version 0.10 or newer. Tree-sitter parsers and a language server are both optional extras that improve accuracy but are not required, since the indentation based fallback works on its own. Installation is shown for the lazy.nvim plugin manager, either pulling the plugin straight from its GitHub repository or pointing lazy.nvim at a local copy of the code for development. Once installed you call a setup function to configure it, then use editor commands to toggle, enable, or disable the shading. The README documents a long list of options: which strategy chain to use per file type, whether to show the left stripe and what character it uses, the color palettes used for dark and light backgrounds, which file types and buffer types to skip, and how often the shading refreshes as you edit. No default keyboard shortcuts are created, so you set your own if you want them. The project also exposes a small Lua API for calling these actions directly from your own configuration.

Yoink these prompts

Prompt 1
Help me install wombient.nvim with lazy.nvim and call its setup function.
Prompt 2
Explain the strategy chain options in wombient.nvim and how treesitter and lsp_folds differ from the heuristic fallbacks.
Prompt 3
Show me how to customize the stripe character and palette colors in wombient.nvim's config.
Prompt 4
Write a Neovim keymap that calls wombient's toggle function.

Frequently asked questions

wtf is wombient?

A Neovim plugin that shades nested code sections with subtle background colors to make large files easier to scan.

What language is wombient written in?

Mainly Lua. The stack also includes Lua, Neovim, Tree-sitter.

How hard is wombient to set up?

Setup difficulty is rated easy, with roughly 5min to a first successful run.

Who is wombient for?

Mainly developer.

View the repo → Decode another repo

This repo across BitVibe Labs

Don't trust strangers blindly. Verify against the repo.