SkillAgentSearch skills...

Mfd.nvim

monochrome neovim themes

Install / Use

/learn @kungfusheep/Mfd.nvim
About this skill

Quality Score

0/100

Supported Platforms

Universal

README

mfd.nvim

Monotone colorschemes for Neovim. Seventeen variants, from phosphor CRTs to night vision display technologies. Inspired by the aesthetics of military MFDs (multi-function displays) and vintage computer terminals.

[!TIP]
New:
accessibility_contrast slider (0–10) for WCAG-compliant contrast.
mfd-lumon Lumon Industries MDR terminal with CRT phosphor glow.
mfd-gbl Game Boy Light electroluminescence, dark and light variants.
mfd-flir 4 thermal display schemes.
mfd-blackout true black, ultra-low contrast for late night use.

Themes

MFD / MFD-DARK

Olive sage.

MFD MFD-DARK

MFD-STEALTH

Green phosphor.

MFD-STEALTH

MFD-AMBER

Amber phosphor.

MFD-AMBER

MFD-MONO

White phosphor.

MFD-MONO

MFD-SCARLET

Deep red.

MFD-SCARLET

MFD-PAPER

High contrast terminal. Aesthetic inspiration from U.S. Graphics Company - thanks for the beautiful work.

MFD-PAPER

MFD-HUD

Heads-up display.

MFD-HUD

MFD-NVG

Night vision goggles.

MFD-NVG

MFD-BLACKOUT

Covert lighting conditions.

MFD-BLACKOUT

MFD-FLIR

White-hot thermal.

MFD-FLIR

MFD-FLIR-BH

Black-hot thermal.

MFD-FLIR-BH

MFD-FLIR-RH

Red-hot thermal.

MFD-FLIR-RH

MFD-FLIR-FUSION

Thermal fusion.

MFD-FLIR-FUSION

MFD-GBL-LIGHT

Game Boy Light electroluminescence.

MFD-GBL-LIGHT

MFD-GBL-DARK

Game Boy Light electroluminescence.

MFD-GBL-DARK

MFD-LUMON

Lumon Industries Macrodata Refinement terminal.

MFD-LUMON (with a ghostty CRT shader) MFD-LUMON-CRT

Installation

-- lazy.nvim
{
  'kungfusheep/mfd.nvim',
  lazy = false,
  priority = 1000,
  config = function()
    vim.cmd('colorscheme mfd-stealth')
  end,
}

Approach

Syntax differentiation through text decoration, not colour:

  • Bold — keywords, functions
  • Italic — strings, comments, parameters
  • <ins>Underline</ins> — types, structures

Lualine themes are included for each variant.

Cursor sync

Each theme defines per-mode cursor highlights (CursorNormal, CursorInsert, CursorVisual, CursorReplace, CursorCommand). To sync these to your terminal cursor via OSC 12 (works with Ghostty, kitty, etc.):

{
  'kungfusheep/mfd.nvim',
  lazy = false,
  priority = 1000,
  config = function()
    vim.cmd('colorscheme mfd-stealth')

    vim.opt.guicursor = {
      "n:block-CursorNormal",
      "v:block-CursorVisual",
      "i:block-CursorInsert",
      "r-cr:block-CursorReplace",
      "c:block-CursorCommand",
    }

    require('mfd').enable_cursor_sync()
  end,
}

Options

Call setup() before setting the colorscheme:

require('mfd').setup({
  accessibility_contrast = 0, -- 0 (default) to 10 (max WCAG compliance)
  no_italic = true,           -- disable italic highlighting (default: false)
  bright_comments = true,     -- legacy: equivalent to accessibility_contrast = 4
})

Accessibility

accessibility_contrast lifts dim elements (comments, line numbers, inlay hints, borders) toward WCAG compliance while preserving each theme's hue.

Even small values make a noticeable difference. You'll likely find a comfortable level well before reaching formal WCAG thresholds. Your environment brightness matters too; a theme like mfd-blackout is perfectly readable in a dark room but benefits from a higher level in daylight.

| Theme | Level 5 | Level 10 | |---|---|---| | mfd | 1.5 | AA-UI (3.01) | | mfd-dark | AA-UI | AAA | | mfd-stealth | AA-UI | AAA | | mfd-amber | AA-UI | AAA | | mfd-mono | AA-UI | AAA | | mfd-scarlet | 2.7 | AAA | | mfd-paper | 2.6 | AAA | | mfd-hud | AA-UI | AAA | | mfd-nvg | AA-UI | AAA | | mfd-gbl-light | AA-UI | AAA | | mfd-gbl-dark | AA-UI | AAA | | mfd-lumon | AA-UI | AAA | | mfd-flir | 2.8 | AAA | | mfd-flir-bh | 2.6 | AAA | | mfd-flir-rh | 2.8 | AAA | | mfd-flir-fusion | 2.6 | AA (6.56) | | mfd-blackout | 2.6 | AAA |

AA-UI ≥ 3.0 / AA ≥ 4.5 / AAA ≥ 7.0

License

Apache 2.0 LICENSE

View on GitHub
GitHub Stars119
CategoryDevelopment
Updated17h ago
Forks6

Languages

Lua

Security Score

100/100

Audited on Apr 3, 2026

No findings