*monokai-pro.txt*
                               For Neovim >= 0.8.0    Last change: 2026 May 08

==============================================================================
Table of Contents                              *monokai-pro-table-of-contents*

  - Filters                                              |monokai-pro-filters|
  - Installation                                    |monokai-pro-installation|
  - Configuration                                  |monokai-pro-configuration|
  - Lazy Loading                                    |monokai-pro-lazy-loading|
  - Plugin Support                                |monokai-pro-plugin-support|
  - Customization                                  |monokai-pro-customization|
  - Commands                                            |monokai-pro-commands|
  - Palette Reference                          |monokai-pro-palette-reference|
  - License                                              |monokai-pro-license|
1. Links                                                   |monokai-pro-links|


  monokai-pro.nvim is under active development.
  Version **v2.0.0** involves a large internal refactor, so some short-term
  regressions are expected. If you encounter issues, please report them here
  <https://github.com/loctvl842/monokai-pro.nvim/issues> — they help stabilize
  the next release.
  If you are maintaining a fork with fixes, please consider contributing upstream
  via pull requests so improvements benefit the whole community.

FILTERS                                                  *monokai-pro-filters*


PRO (DEFAULT) ~


OCTAGON ~


MACHINE ~


RISTRETTO ~


SPECTRUM ~


CLASSIC ~


INSTALLATION                                        *monokai-pro-installation*

Using lazy.nvim <https://github.com/folke/lazy.nvim>:

>lua
    {
      "loctvl842/monokai-pro.nvim",
      lazy = false,
      priority = 1000,
      config = function()
        require("monokai-pro").setup()
        vim.cmd.colorscheme("monokai-pro")
      end,
    }
<

Using packer.nvim <https://github.com/wbthomason/packer.nvim>:

>lua
    use {
      "loctvl842/monokai-pro.nvim",
      config = function()
        require("monokai-pro").setup()
        vim.cmd.colorscheme("monokai-pro")
      end
    }
<


CONFIGURATION                                      *monokai-pro-configuration*

>lua
    require("monokai-pro").setup({
      transparent_background = false,
      terminal_colors = true,
      devicons = true,
      styles = {
        comment = { italic = true },
        keyword = { italic = true },
        type = { italic = true },
        storageclass = { italic = true },
        structure = { italic = true },
        parameter = { italic = true },
        annotation = { italic = true },
        tag_attribute = { italic = true },
      },
      filter = "pro", -- classic | octagon | pro | machine | ristretto | spectrum
      day_night = {
        enable = false,
        day_filter = "pro",
        night_filter = "spectrum",
      },
      inc_search = "background", -- underline | background
      background_clear = {
        "toggleterm",
        "telescope",
        "renamer",
        "notify",
      },
      plugins = {
        bufferline = {
          underline_selected = false,
          underline_visible = false,
          underline_fill = false,
          bold = true,
        },
        indent_blankline = {
          context_highlight = "default", -- default | pro
          context_start_underline = false,
        },
      },
      override = function(scheme)
        return {}
      end,
      override_palette = function(filter)
        return {}
      end,
      override_scheme = function(scheme, palette, colors)
        return {}
      end,
    })
<


LAZY LOADING                                        *monokai-pro-lazy-loading*

Plugin highlights can be lazy-loaded to reduce initial colorscheme load time.
Highlights are applied when:

- **Event-based**: A Vim event fires (e.g., `VimEnter`, `FileType`)
- **Module-based**: A module is required (e.g., `require("telescope")`)


HOW IT WORKS ~

Each plugin spec can define a `lazy` field:

>lua
    -- Eager loading (default)
    { name = "treesitter", lazy = false }
    
    -- Lazy loading on module require
    { name = "telescope", lazy = { module = "telescope" } }
    
    -- Lazy loading on event
    { name = "dashboard", lazy = { event = "VimEnter" } }
    
    -- Both triggers
    { name = "neo-tree", lazy = { module = "neo-tree", event = "FileType neo-tree" } }
<


CHECK APPLIED PLUGINS ~

>lua
    :lua print(vim.inspect(require("monokai-pro.theme.triggers").applied_plugins))
<


DISABLE SPECIFIC PLUGINS ~

>lua
    require("monokai-pro").setup({
      disabled_plugins = { "bufferline", "neo-tree" },
    })
<


PLUGIN SUPPORT                                    *monokai-pro-plugin-support*

33 plugins supported ~

  -----------------------------------------------------------------------
  Plugin                    Lazy Loading
  ------------------------- ---------------------------------------------
  aerial.nvim               module

  alpha-nvim                module

  blink.cmp                 module

  bufferline.nvim           module

  coc.nvim                  module

  dashboard-nvim            event

  fidget.nvim               module

  fzf-lua                   module

  gitsigns.nvim             module

  indent-blankline.nvim     module

  lazy.nvim                 module

  lualine.nvim              built-in

  mason.nvim                module

  mini.nvim                 module

  neo-tree.nvim             module

  noice.nvim                module

  nvim-cmp                  module

  nvim-navic                module

  nvim-notify               module

  nvim-tree.lua             module

  nvim-treesitter           eager

  nvim-ufo                  module

  packer.nvim               module

  rainbow-delimiters.nvim   module

  renamer.nvim              module

  nvim-scrollbar            module

  snacks.nvim               module

  telescope.nvim            module

  toggleterm.nvim           module

  vim-illuminate            module

  which-key.nvim            module

  wilder.nvim               module

  Built-in LSP              eager
  -----------------------------------------------------------------------

LUALINE ~

>lua
    require("lualine").setup({
      options = { theme = "monokai-pro" },
    })
<


BARBECUE ~

>lua
    require("barbecue").setup({
      theme = "monokai-pro",
    })
<


LIGHTLINE ~

>vim
    let g:lightline = {'colorscheme': 'monokaipro'}
<


NVCHAD ~

monokai-pro.nvim can be integrated with NvChad
<https://github.com/NvChad/NvChad>’s base46 theme system, enabling theme
toggle functionality.

**Step 1:** Create theme files in your NvChad config:

>lua
    -- lua/themes/monokai-pro.lua
    return require("monokai-pro").nvchad()
<

>lua
    -- lua/themes/monokai-pro-light.lua
    return require("monokai-pro").nvchad("light")
<

**Step 2:** Update your `chadrc.lua`:

>lua
    M.base46 = {
      theme = "monokai-pro",
      theme_toggle = { "monokai-pro", "monokai-pro-light" },
    }
<

**Step 3:** Ensure monokai-pro is installed (without loading the colorscheme):

>lua
    {
      "loctvl842/monokai-pro.nvim",
      lazy = false,
      priority = 1000,
      config = function()
        require("monokai-pro").setup()
        -- Don't call vim.cmd.colorscheme() - let NvChad handle it
      end,
    }
<

You can also create theme files for other filters:

>lua
    -- lua/themes/monokai-pro-spectrum.lua
    return require("monokai-pro").nvchad("spectrum")
<


CUSTOMIZATION                                      *monokai-pro-customization*


OVERRIDE HIGHLIGHTS ~

>lua
    require("monokai-pro").setup({
      override = function(scheme)
        return {
          Normal = { bg = "#000000" },
          IndentBlanklineChar = { fg = scheme.base.dimmed4 },
        }
      end,
    })
<


CUSTOM PALETTE ~

>lua
    require("monokai-pro").setup({
      override_palette = function(filter)
        return {
          dark2 = "#101014",
          dark1 = "#16161E",
          background = "#1A1B26",
          text = "#C0CAF5",
          accent1 = "#f7768e",
          accent2 = "#7aa2f7",
          accent3 = "#e0af68",
          accent4 = "#9ece6a",
          accent5 = "#0DB9D7",
          accent6 = "#9d7cd8",
          dimmed1 = "#737aa2",
          dimmed2 = "#787c99",
          dimmed3 = "#363b54",
          dimmed4 = "#363b54",
          dimmed5 = "#16161e",
        }
      end,
    })
<


CUSTOM SCHEME ~

>lua
    require("monokai-pro").setup({
      override_scheme = function(scheme, palette, colors)
        return {
          editor = {
            background = colors.blend(palette.background, 0.75, "#000000"),
          },
        }
      end,
    })
<


COMMANDS                                                *monokai-pro-commands*

  -----------------------------------------------------------------------
  Command                       Description
  ----------------------------- -----------------------------------------
  :MonokaiPro                   Select filter with picker (requires
                                nui.nvim)

  :MonokaiPro <filter>          Set filter directly (e.g.,
                                :MonokaiPro spectrum)

  :MonokaiProSelect             Alias for :MonokaiPro
  -----------------------------------------------------------------------

PALETTE REFERENCE                              *monokai-pro-palette-reference*

>lua
    base = {
      dark = "#19181a",      -- darker background
      black = "#221f22",     -- background
      red = "#ff6188",       -- accent1
      green = "#a9dc76",     -- accent4
      yellow = "#ffd866",    -- accent3
      blue = "#fc9867",      -- accent2
      magenta = "#ab9df2",   -- accent6
      cyan = "#78dce8",      -- accent5
      white = "#fcfcfa",     -- text
      dimmed1 = "#c1c0c0",
      dimmed2 = "#939293",
      dimmed3 = "#727072",
      dimmed4 = "#5b595c",
      dimmed5 = "#403e41",
    }
<


LICENSE                                                  *monokai-pro-license*

MIT

==============================================================================
1. Links                                                   *monokai-pro-links*

1. *monokai-pro-macbook*: https://user-images.githubusercontent.com/80513079/218453999-87c957f1-658d-49a6-bf67-291d3e46fa9a.png
2. *pro*: https://user-images.githubusercontent.com/80513079/209659184-ed5a28c3-cb7f-4de7-8f7c-5d206dc11540.png
3. *octagon*: https://user-images.githubusercontent.com/80513079/209659175-97db9a95-edd0-4b6e-8087-7fb1aee45c52.png
4. *machine*: https://user-images.githubusercontent.com/80513079/209659194-d9fe09f5-ea35-4130-b2e8-d854b7b6fb72.png
5. *ristretto*: https://user-images.githubusercontent.com/80513079/209659205-90200c24-d302-4b70-811a-36e6e7845f6b.png
6. *spectrum*: https://user-images.githubusercontent.com/80513079/209659126-9df0d401-020f-4b0c-963d-5a930d0a6974.png
7. *classic*: https://user-images.githubusercontent.com/80513079/209659153-9362a05f-2b7f-4b36-acf1-d13bef6a9118.png

Generated by panvimdoc <https://github.com/kdheepak/panvimdoc>

vim:tw=78:ts=8:noet:ft=help:norl:
