Git Product home page Git Product logo

monokai-pro.nvim's Introduction

img_v3_0274_94b96554-6c31-431b-a95e-2de719b493hu

Beautiful functionality for professional developers

Find out more here monokai.pro

monokai-pro-macbook

โญ Pro

pro

๐Ÿ›‘ Octagon

octagon

๐Ÿค– Machine

machine

โ˜• Ristretto

ristretto

๐ŸŒˆ Spectrum

spectrum

๐Ÿ‘ด Classic

classic

๐Ÿ”Œ Plugin support

๐Ÿ“ฆ Installation

vim-plug

Plug 'loctvl842/monokai-pro.nvim'

packer

use {
  "loctvl842/monokai-pro.nvim",
  config = function()
    require("monokai-pro").setup()
  end
}

๐Ÿ”จ Configuration

There are several themes included in this plugin.

  • Pro โ€“ Monokai Pro (default)
  • Octagon โ€“ Monokai Pro (Filter Octagon)
  • Machine โ€“ Monokai Pro (Filter Machine)
  • Ristretto โ€“ Monokai Pro (Filter Machine)
  • Spectrum โ€“ Monokai Pro (Filter Machine)
  • Classic โ€“ Monokai Classic

Example configuration:

require("monokai-pro").setup({
  transparent_background = false,
  terminal_colors = true,
  devicons = true, -- highlight the icons of `nvim-web-devicons`
  styles = {
    comment = { italic = true },
    keyword = { italic = true }, -- any other keyword
    type = { italic = true }, -- (preferred) int, long, char, etc
    storageclass = { italic = true }, -- static, register, volatile, etc
    structure = { italic = true }, -- struct, union, enum, etc
    parameter = { italic = true }, -- parameter pass in function
    annotation = { italic = true },
    tag_attribute = { italic = true }, -- attribute of tag in reactjs
  },
  filter = "pro", -- classic | octagon | pro | machine | ristretto | spectrum
  -- Enable this will disable filter option
  day_night = {
    enable = false, -- turn off by default
    day_filter = "pro", -- classic | octagon | pro | machine | ristretto | spectrum
    night_filter = "spectrum", -- classic | octagon | pro | machine | ristretto | spectrum
  },
  inc_search = "background", -- underline | background
  background_clear = {
    -- "float_win",
    "toggleterm",
    "telescope",
    -- "which-key",
    "renamer",
    "notify",
    -- "nvim-tree",
    -- "neo-tree",
    -- "bufferline", -- better used if background of `neo-tree` or `nvim-tree` is cleared
  },-- "float_win", "toggleterm", "telescope", "which-key", "renamer", "neo-tree", "nvim-tree", "bufferline"
  plugins = {
    bufferline = {
      underline_selected = false,
      underline_visible = false,
    },
    indent_blankline = {
      context_highlight = "default", -- default | pro
      context_start_underline = false,
    },
  },
  ---@param c Colorscheme
  override = function(c) end,
  ---@param cs Colorscheme
  ---@param p ColorschemeOptions
  ---@param Config MonokaiProOptions
  ---@param hp Helper
  override = function(cs: Colorscheme, p: ColorschemeOptions, Config: MonokaiProOptions, hp: Helper) end,
})
  • Check my nvim to see my plugins setup for border if you want to set background_clear

For example:

float_win
require("monokai-pro").setup({
    -- ... your config
    background_clear = { "float_win" }
    -- ... your config
})

require("cmp").setup({
    -- ... your config
    window = {
      border = "rounded",
    }
    completion = {
        border = "rounded",
    }
    -- ... your config
})
  • With the above config: bg_clear_cmp

  • With the default config: default_cmp

Telescope
require("monokai-pro").setup({
    -- ... your config
    background_clear = {}
    -- ... your config
})

require("telescope").setup({
    -- ... your config
    defaults = {
      borderchars = { "โ–ˆ", " ", "โ–€", "โ–ˆ", "โ–ˆ", " ", " ", "โ–€" },
    }
    -- ... your config
})
  • With the above config:

removed_border_telescope

  • With the default config: default_telescope

๐Ÿ“š Usage

  • Enable this colorscheme by using the following command after setup:
" Vim Script
colorscheme monokai-pro
require("monokai-pro").setup({
  -- ... your config
})
-- lua
vim.cmd([[colorscheme monokai-pro]])
  • To enable monokai-pro for Lualine:
require('lualine').setup {
  options = {
    -- ...
    theme = 'monokai-pro'
    -- ...
  }
}
  • To enable monokai-pro for barbecue:
require('barbecue').setup {
  -- ...
  theme = 'monokai-pro'
  -- ...
}
  • To enable monokai-pro for lightline:
" Vim Script
let g:lightline = {'colorscheme': 'monokaipro'}
  • Override function for customizing the final color scheme:
require("monokai-pro").setup({
    -- ...
    override = function()
      return {
          Normal = { bg = "#000000" }
        }
    end
    -- ...
  })
  • Customize your own palette:

This is a sample config to use Tokyonight as the palette:

require("monokai-pro").setup({
    -- ...
    --- @param filter "classic" | "machine" | "octagon" | "pro" | "ristretto" | "spectrum"
    override = function(c)
      return {
        IndentBlanklineChar = { fg = c.base.dimmed4 },
      }
    end,
    overridePalette = 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
    -- ...
  })
  • Customize the scheme:

This is a sample config to use a darker background for almost all supported plugins:

require("monokai-pro").setup({
    -- ...
    overrideScheme = function(cs, p, config, hp)
      local cs_override = {}
      local calc_bg = hp.blend(p.background, 0.75, '#000000')

      cs_override.editor = {
        background = calc_bg,
      }
      return cs_override
    end
    -- ...
  })

๐Ÿ”ง Command

  • run command MonokaiProSelect to launch a menu to choose theme filter (required: nui.nvim)
  • or we can run command MonokaiPro with parameter to change theme filter: For example:

    MonokaiPro classic

monokai-pro.nvim's People

Contributors

ansonh avatar github-actions[bot] avatar loctvl842 avatar red-m avatar sartak avatar skmtkytr avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

monokai-pro.nvim's Issues

Enable theme selection through :Telescope colorscheme

Hi. Thanks a lot for this package, it has been my daily driver for a couple of months now and I really enjoy using it.

Like many other Neovim users, I use Telescope for many purposes, and one functionality I find myself using quite often is the :Telescope colorscheme command. I am aware that the :MonokaiProSelect command exists, however, I would like to be able to select among the Monokai Pro variants within Telescope. Several theme plugins with variants (i.e. Tokyo Night, Rose Pine, Kanagawa) expose their variants as individual themes. Would it be possible to offer such functionality? Please let me know what you think.

Thanks a lot for your work!

Override colorscheme for plugin nvim-treesitter

I'm using your monokai-pro colorscheme with Neovim (on Linux and OpenBSD) and I'm very happy with it :)

But with nvim-treesitter.lua plugin (also used with Neovim), I don't like italic style used for some items, especially for Markdown inline => https://github.com/loctvl842/monokai-pro.nvim/blob/master/lua/monokai-pro/theme/plugins/nvim-treesitter.lua

Is it possible and how could I override monokai-pro colorscheme for nvim-treesitter.lua plugin ? I would like to set italic = false for @markup.italic.markdown_inline and other items.

Colors conflict with indentline.nvim

The indentline.nvim plugin provides indent guides, but somehow this colorscheme seems to conflict with its indent hightlighting (or the other way around, I am not sure).
When I open neovim the indent guides don't appear, when when I run :colo monokai-pro, they appear. I don't know why that is.

I have brought a minimal reproducible example.
Below is my ~/.config/nvim

.
โ”œโ”€โ”€ init.lua
โ”œโ”€โ”€ lazy-lock.json
โ””โ”€โ”€ lua
    โ”œโ”€โ”€ core
    โ”‚ย ย  โ””โ”€โ”€ options.lua
    โ””โ”€โ”€ plugins
        โ”œโ”€โ”€ indentline.lua
        โ”œโ”€โ”€ monokai-pro.lua
        โ””โ”€โ”€ treesitter.lua

4 directories, 6 files

init.lua

local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim"
if not vim.loop.fs_stat(lazypath) then
    print("Installing lazy.nvim ...")
    vim.fn.system({
        "git",
        "clone",
        "--filter=blob:none",
        "https://github.com/folke/lazy.nvim.git",
        "--branch=stable", -- latest stable release
        lazypath,
    })
end
vim.opt.rtp:prepend(lazypath)

-- Core configs loaded from ./lua/core/
require("core.options")

-- Plugins configured at ./lua/plugins/
require("lazy").setup("plugins")

-- Colorscheme
vim.cmd([[colorscheme monokai-pro]])

This is lua/plugins/indentline.lua

return { 
    "lukas-reineke/indent-blankline.nvim", 
    main = "ibl",
    opts = {
        indent = { char = "โ–", },
        scope = {
            enabled = false,
            show_start = false,     -- don't underline line where scope begins
            show_end = false,
        }
    },
}

lua/plugins/monokai-pro.lua

return {
    "loctvl842/monokai-pro.nvim",
    opts = {
        filter = "ristretto",
        styles = {
            comment = { italic = false },
            keyword = { italic = false }, -- any other keyword
            type = { italic = true }, -- (preferred) int, long, char, etc
            storageclass = { italic = true }, -- static, register, volatile, etc
            structure = { italic = true }, -- struct, union, enum, etc
            parameter = { italic = true }, -- parameter pass in function
            annotation = { italic = true },
            tag_attribute = { italic = true }, -- attribute of tag in reactjs
        },
        plugins = {
            indent_blankline = {
                context_highlight = "default", -- default | pro
            },
        },
    },
}

I am also adding lua/plugins/treesitter.lua just because indentline uses it

return {
    'nvim-treesitter/nvim-treesitter',
    dependencies = {
        'nvim-treesitter/nvim-treesitter-context',
        'nvim-treesitter/nvim-treesitter-textobjects',
    },
    config = function()
        require("nvim-treesitter.configs").setup({
            ensure_installed = { "c", "lua", "vim", "vimdoc", "query", "javascript", "html", "typescript", "python" },
            auto_install = true,
            sync_install = false,
            ignore_install = { "markdown", "diff" },
            highlight = { enable = true, },
            textobjects = {
                select = {
                    enable = true,
                    lookahead = true,
                    ignore_surrounding_whitespace = true,
                    keymaps = {
                        -- You can use the capture groups defined in textobjects.scm
                        ['aa'] = '@parameter.outer',
                        ['ia'] = '@parameter.inner',
                        ["af"] = "@function.outer",
                        ["if"] = "@function.inner",
                        ["ac"] = "@class.outer",
                        ["ic"] = "@class.inner",
                        ["as"] = "@scope",
                    }
                },

                -- Popup window with definition
                -- lsp_interop = {
                --     enable = true,
                --     border = 'none',
                --     floating_preview_opts = {},
                --     peek_definition_code = {
                --         ["<leader>ds"] = "@function.outer",     -- definition show
                --         ["<leader>dS"] = "@class.outer",
                --     },
                -- },
            }
        })
    end,
}

the last one lua/core/options.lua, this should not be making the issue as far as I know.

vim.o.number = true
vim.o.relativenumber = true
vim.o.pumheight = 12
vim.o.shiftwidth = 4
vim.o.tabstop = 4
vim.o.smartindent = true
vim.o.expandtab = true
vim.o.undofile = true
vim.o.hlsearch = true
vim.o.cursorline = true
vim.o.ignorecase = true
vim.o.smartcase = true
vim.o.splitright = true
vim.o.splitbelow = true
vim.o.swapfile = false
vim.o.laststatus = 3
vim.o.updatetime = 250
vim.o.termguicolors = true
vim.o.signcolumn = 'yes'
vim.o.wrap = false
vim.o.scrolloff = 8
vim.g.netrw_banner = 0

Neo tree offset

Not sure if you're aware of it, but something in the last commits creates an offset/overflow between bufferline and neo-tree
I will start using tags from now on, so this is not really an issue but I thought you might find it useful.

Cheers!

last commit:
image

v1.1.8:
image

Support with treesitter.

I was wondering if this plugin can somehow be updated to better compliment treesitter? I'm getting sub optimal syntax highlighting with LaTeX at the moment.

inlay hints barely visible

With the new built-in feature of neovim, inlay hints can be viewed.
But with this colorscheme it is hardly visible if visible at all:

image

The inlay hints are there, just not visible enough:
image

Is it possible to alter the colorscheme, so that the inlay hints could be seen properly?

With tokyonight it looks just fine, but I'd like to use monokai pro.
image

Thanks in advance!

Is this theme incompatible with latest NvChad?

Hi there,

First time nvim user here. Saw this theme and thought it was the perfect Monokai Pro theme plugin! However, I installed this theme the other day and am having a few problems with it.

  • My status bar has some icons that don't look quite right.

image

  • The theme doesn't appear in the theme selection window.

image

  • I can't set the theme as my default; I can only load it through the :MonokaiPro command.

custom/chadrc.lua

M.ui = {
  theme = "monokai-pro",
  theme_toggle = { "monokai-pro", "one_light" },

  hl_override = highlights.override,
  hl_add = highlights.add,
}

custom/plugins.lua

  {
    "loctvl842/monokai-pro.nvim",
    lazy = false,
    priority = 1000,
    config = function()
      local monokai = require("monokai-pro")
      monokai.setup({
        transparent_background = false,
        terminal_colors = true,
        devicons = true, -- highlight the icons of `nvim-web-devicons`
        styles = {
          comment = { italic = true },
          keyword = { italic = true }, -- any other keyword
          type = { italic = true }, -- (preferred) int, long, char, etc
          storageclass = { italic = true }, -- static, register, volatile, etc
          structure = { italic = true }, -- struct, union, enum, etc
          parameter = { italic = true }, -- parameter pass in function
          annotation = { italic = true },
          tag_attribute = { italic = true }, -- attribute of tag in reactjs
        },
        filter = "pro", -- classic | octagon | pro | machine | ristretto | spectrum
        inc_search = "background", -- underline | background
        background_clear = {
          --"float_win",
          --"toggleterm",
          --"telescope",
          -- "which-key",
          --"renamer",
          --"notify",
          --"nvim-tree",
          -- "neo-tree",
          --"bufferline", -- better used if background of `neo-tree` or `nvim-tree` is cleared
        },-- "float_win", "toggleterm", "telescope", "which-key", "renamer", "neo-tree", "nvim-tree", "bufferline"
        plugins = {
          bufferline = {
            underline_selected = false,
            underline_visible = false,
          },
          indent_blankline = {
            context_highlight = "pro", -- default | pro
            context_start_underline = false,
          },
        },
        ---@param c Colorscheme
        override = function(c) end,
      })
      vim.cmd([[colorscheme monokai-pro]])
    end,
  },

There aren't instructions for lazy.nvim so I just took the packer example and ported that snippet to lazy. I didn't make any other modifications to the plugin itself. Will I need to port the plugin itself to make use of lazy properly? It seems like it sort of works so I'm not totally sure.

Thanks in advance! :)

Add support of neo-tree plugin

In README it incorrectly addressed that neo-tree (NeoTree* hl groups) is supported while only nvim-tree (NvimTree* hl groups) plugin is actually supported.
Could you please also add support of neo-tree plugin?

[Feature Request/Question] make theme work with `wilder` plugin

Hello,

I'm using wilder to have command line auto completion.
This plugin adds a list of possible completions when searching or starting to type commands (: or / or ?).

Right now, we can't see the suggestions with monokai-pro theme, as the completion text is black on a black foreground.

Example of wilder with monokai-pro. We can't see any suggestion.
image

Example of wilder with sonokai. We can see wilder suggestion just above my command:
image

Is it possible to support wilder ?
Or is there any tweak I can make to the monokai-pro config to change the text color of the suggestions text ?

Thank you for the plugin.

colorcolumn isn't visible

My colorcolumn seems to be invisible.

I've tried several things:

  1. Change the filter but no setting seems to make the colorcolumn visible.
  2. Set the colorcolumn manually by calling :set colorcolumn=80.

The colorcolumn is visible in any other theme so i'm guessing it has nothing to do with my terminal colors.
My config for the monokai-pro theme is pretty much the default one

require("monokai-pro").setup({
    filter = "octagon",
    plugins = {
        bufferline = {
            underline_selected = false,
            underline_visible = false,
        },
    },
})

Versions:

  • nvim: v0.8.2
  • alacritty: v0.11.0
  • tmux: 3.3a

Custom Fonts

Hey! first of all thank you for this theme, its awesome!
one question though,
is there a way to change the font to some custom font? instead of the Mononoki Nerd Font?

Differences between monokai pro on vscode

Hi, i just wanted to point out some differences i noticed between the monokai pro theme on vscode and this neovim theme.

My goal is to be able to modify/ovveride this theme to match it a little better.

  1. Unused variables/imports: Is there a way to gray out the unused variables and imports like in vscode, rather than adding a blue squigly line like in this theme?
  2. Color of export/async/await: In vscode monokai pro these key words are in red, where as in this theme they are blue, is there some way i can change that?

screenshot (left: neovim, right: vscode)
image

my current ovverides

override = function()
	return {
		Normal = { bg = "#121212" },
		DiagnosticVirtualTextError = { bg = "none" },
		DiagnosticVirtualTextInformation = { bg = "none" },
		DiagnosticVirtualTextWarning = { bg = "none" },
		DiagnosticVirtualTextHint = { fg = "Gray", bg = "none" },
		DiagnosticSignHint = { fg = "Gray" },
	}
end,

Adding the 'background_clear' option for bufferline results in errors.

I copied the example configurations to my .lua file it it worked fine.

-- ...
transparent_background = true, -- I want transparent background
background_clear = {
    -- "float_win",
    "toggleterm",
    "telescope",
    -- "which-key",
    "renamer",
    "notify",
    -- "nvim-tree",
    -- "neo-tree",
    -- "bufferline", -- better used if background of `neo-tree` or `nvim-tree` is cleared
  },
-- ...

Then I uncommented nvim-tree and neo-tree, and it worked. My nvim tree is now transparent.

-- ...
transparent_background = true, -- I want transparent background
background_clear = {
    -- "float_win",
    "toggleterm",
    "telescope",
    -- "which-key",
    "renamer",
    "notify",
    "nvim-tree",
    "neo-tree",
    -- "bufferline", -- better used if background of `neo-tree` or `nvim-tree` is cleared
  },
-- ...

I tried the same with bufferline, but it resulted in errors.

-- ...
transparent_background = true, -- I want transparent background
background_clear = {
    -- "float_win",
    "toggleterm",
    "telescope",
    -- "which-key",
    "renamer",
    "notify",
    "nvim-tree",
    "neo-tree",
    "bufferline", -- errors on nvim open
  },
-- ...

image

I'm new to Vim and trying to get a monokai-pro-themed neovim with transparent backgrounds.

ColorColumn should be different than Normal background

Currently ColorColumn background is the same as the Normal background:
image

image

Which essentially makes enabling CursorColumn useless by default.
Would be nice to have same value as CursorLine:
CursorLine xxx guibg=#313443

I am aware of both #16 and #14, however users that do not like to use ColorColumn should have it disabled appropriately using
set cc=
or vim.opt.colorcolumn=""
So having the ColorColumn a different color will not impact them anyway.

Option to remove undercurls

When overwriting styles i would like the option to remove undercurls.

vim.api.nvim_set_hl(0, 'DiagnosticUnnecessary', { undercurl = false })
			override = function()
					return {
                                           DiagnosticUnnecessary = { fg = "Gray", italic = true }
					}
				end,

Allow colorscheme override

I like this theme a lot but I'd like to provide a function similar to the palette and theme overrides but for when the colorscheme is defined.

An example would be:

cs = vim.tbl_deep_extend("force", cs, Config.overrideColorscheme and Config.overrideColorscheme(cs, p, config, hp) or {})

at this line which would allow changing colour values for all of the other pre-computed colours provided by the palette. Please do note that this example does not work as cs is a local to the file and has some builtin lua functions applied to it that I don't yet understand, however this functionality would be really good for people who wish to slightly tweak the existing themes and filters to create, effectively, mini-forks of the existing ones without having to do a lot of work to offer them back (as not everyone else may like them).

Previously I had a copy of this repository as just files, in my dotfiles repository as a hackish workaround (I've moved since to a fork) and modifying them directly but doing this would make things a lot easier for myself and potentially for others who would enjoy tweaking a few things or making divergent themes based on monokai.

Markdown highlighting bug

Hi!
Currently, some highlights of markdown are still broken. For example, code blocks in markdown have a transparent background.

image

I believe the last commit did not fully fix the markdown issues.
Thank you

How to change the color of the cursor itself

I am using monokai-pro in neovim (specifically LunarVim). I have a very hard time seeing the actual cursor: it is dark blue. I would like the cursor to be white, but I can't figure out how to accomplish that particular override. How would this be accomplished in the setup?

Support for indent-blankline v3

The project was refactored at v3 and now the highlight groups have changed, which are covered in the Migration Guide.

Here's a snippet from the help page:

==============================================================================
 4. HIGHLIGHTS                                                *ibl.highlights*

IblIndent                                                       *hl-IblIndent*

 The default highlight group for indentation characters.

 Default: takes the values from |hl-Whitespace| when not defined ~


IblWhitespace                                               *hl-IblWhitespace*

 The default highlight group for whitespace characters.

 Default: takes the values from |hl-Whitespace| when not defined ~


IblScope                                                         *hl-IblScope*

 The default highlight group for |ibl.config.scope| characters.

 Default: takes the values from |hl-LineNr| when not defined ~

a option of turn off all itatic?

I really like the monokai theme, and your monokai-pro.nvim almost completely reproduce the monokai theme. I really like it. But I dont like italic font. Is there a option to turn off all italics.

Checkout failed

Hello. I have an error when I trying to update your theme.

error: The following untracked working tree files would be overwritten by checkout: doc/tags Please move or remove them before you switch branches. Aborting

How to change color of Diagnostic messages

I am trying to migrate from https://github.com/sainnhe/sonokai to this plugin theme.

How do i change the color of the diagnostic messsages, you can see in the "monokai-pro" screenshot that the error message is in the color "white" and the info message is in the color "blue"

I would prefer if the error message was red and the info message was gray ( like in the sonokai screenshot)

monokai-pro
image

sonokai
image

Add more color differentiation

Love the theme, but in comparison to other themes, I noticed that there is less differentiation in colors. For example, here return, other keywords like if, fields like .caffeinate, and the = all get the same color. Compare this to dawnfox (from nightfox.nvim), where the same four things all have different colors.

CleanShot 2023-05-27 at 12 53 57@2x

CleanShot 2023-05-27 at 12 57 00@2x

๐Ÿ› Invalid filter, expected "classic", "machine", "octagon", "pro", "ristretto" or "spectrum"

This is my setup

require("monokai-pro").setup({
  transparent_background = false,
  terminal_colors = true,
  devicons = true, -- highlight the icons of `nvim-web-devicons`
  styles = {
    comment = { italic = true },
    keyword = { italic = true }, -- any other keyword
    type = { italic = true }, -- (preferred) int, long, char, etc
    storageclass = { italic = true }, -- static, register, volatile, etc
    structure = { italic = true }, -- struct, union, enum, etc
    parameter = { italic = true }, -- parameter pass in function
    annotation = { italic = true },
    tag_attribute = { italic = true }, -- attribute of tag in reactjs
  },
  filter = "pro", -- classic | octagon | pro | machine | ristretto | spectrum
  -- Enable this will disable filter option
  day_night = {
    enable = false, -- turn off by default
    day_filter = "pro", -- classic | octagon | pro | machine | ristretto | spectrum
    night_filter = "spectrum", -- classic | octagon | pro | machine | ristretto | spectrum
  },
  inc_search = "background", -- underline | background
  background_clear = {
    -- "float_win",
    "toggleterm",
    "telescope",
    "which-key"
  },-- "float_win", "toggleterm", "telescope", "which-key", "renamer", "neo-tree"
  plugins = {
    bufferline = {
      underline_selected = false,
      underline_visible = false,
    },
    indent_blankline = {
      context_highlight = "default", -- default | pro
      context_start_underline = false,
    },
  },
  ---@param c Colorscheme
  override = function(c) end,
})

I get this message after updating this theme to v1.21.0:

Invalid filter, expected "classic", "machine", "octagon", "pro", "ristretto" or "spectrum"

This is new and never happened in the past.

I'm on

NVIM v0.9.5
Build type: Release
LuaJIT 2.1.1703358377

Missing color in yaml files

I seem to be having an issue with yaml files using this theme.

Basically the key part is shown as white instead of the classic red I got used to while using this theme on VS code.

Is this expected behavior or am I missing some config?

image

Can't set octagon theme

Hello,
Thank your for porting this great color theme to neovim. It looks great.

I would like to set octagon version of monokai-pro but it does not seem to work. The color theme still looks lke Pro.

As proposed in the README, I added the following lines to my init.lua :

require("monokai-pro").setup({
	transparent_background = false, -- better set to false
	italic_comments = true,
	theme = "octagon", -- classic | octagon | pro | machine | ristretto | spectrum
	diagnostic = {
		background = true, -- highlight background of diagnostic
	},
    plugins = {
        bufferline = {
            underline_selected = true, -- better set `false` if you don't use kitty terminal
        }
    }
})

Am I missing something ?

background_clear for bufferline issue

error here

Error detected while processing /Users/kyotaro.sakamoto/dotfiles/config/nvim/init.lua:
E5113: Error while calling lua chunk: vim/_editor.lua:0: /Users/kyotaro.sakamoto/dotfiles/config/nvim/init.lua..nvim_exec2() called at /Users/kyotaro.sakamoto/dotfiles/config/nvim/init.lua:0../Users/kyotaro.saka
moto/.local/share/nvim/lazy/monokai-pro.nvim/colors/monokai-pro.lua: Vim(colorscheme):E5113: Error while calling lua chunk: ...m/lazy/monokai-pro.nvim/lua/monokai-pro/color_helper.lua:34: attempt to perform arit
hmetic on field 'r' (a nil value)
stack traceback:
        ...m/lazy/monokai-pro.nvim/lua/monokai-pro/color_helper.lua:34: in function 'lighten'
        ...ai-pro.nvim/lua/monokai-pro/theme/plugins/bufferline.lua:52: in function 'setup'
        ...vim/lazy/monokai-pro.nvim/lua/monokai-pro/theme/init.lua:58: in function 'generate_hl_groups'
        ...vim/lazy/monokai-pro.nvim/lua/monokai-pro/theme/init.lua:77: in function 'setup'
        ...hare/nvim/lazy/monokai-pro.nvim/lua/monokai-pro/init.lua:9: in function 'load'
        .../share/nvim/lazy/monokai-pro.nvim/colors/monokai-pro.lua:1: in main chunk
        [C]: in function 'nvim_exec2'
        vim/_editor.lua: in function 'cmd'
        /Users/kyotaro.sakamoto/.config/nvim/lua/colorscheme.lua:11: in main chunk
        [C]: in function 'require'
        /Users/kyotaro.sakamoto/dotfiles/config/nvim/init.lua:8: in main chunk
stack traceback:
        [C]: in function 'nvim_exec2'
        vim/_editor.lua: in function 'cmd'
        /Users/kyotaro.sakamoto/.config/nvim/lua/colorscheme.lua:11: in main chunk
        [C]: in function 'require'
        /Users/kyotaro.sakamoto/dotfiles/config/nvim/init.lua:8: in main chunk

my monokai-pro configs

 {
    "loctvl842/monokai-pro.nvim",
    lazy = true,
    dependencies = {
      { "nvim-tree/nvim-web-devicons" },
      { "nvim-telescope/telescope.nvim" },
      { "nvim-tree/nvim-tree.lua" },
      { "akinsho/bufferline.nvim" },
    },
    config = function()
      require("monokai-pro").setup({
        transparent_background = true,
        terminal_colors = false,
        devicons = true, -- highlight the icons of `nvim-web-devicons`
        styles = {
          comment = { italic = true },
          keyword = { italic = true }, -- any other keyword
          type = { italic = true },    -- (preferred) int, long, char, etc
          storageclass = { italic = true }, -- static, register, volatile, etc
          structure = { italic = true }, -- struct, union, enum, etc
          parameter = { italic = true }, -- parameter pass in function
          annotation = { italic = true },
          tag_attribute = { italic = true }, -- attribute of tag in reactjs
        },
        filter = "spectrum",           -- classic | octagon | pro | machine | ristretto | spectrum
        -- Enable this will disable filter option
        day_night = {
          enable = false,      -- turn off by default
          day_filter = "pro",  -- classic | octagon | pro | machine | ristretto | spectrum
          night_filter = "spectrum", -- classic | octagon | pro | machine | ristretto | spectrum
        },
        inc_search = "background", -- underline | background
        background_clear = {
          -- "float_win",
          -- "toggleterm",
          "telescope",
          -- "which-key",
          -- "renamer",
          -- "notify",
          "nvim-tree",
          -- "neo-tree",
          "bufferline",
          -- better used if background of `neo-tree` or `nvim-tree` is cleared
        }, -- "float_win","toggleterm", "telescope", "which-key", "renamer", "neo-tree", "nvim-tree", "bufferline"
        plugins = {
          bufferline = {
            underline_selected = false,
            underline_visible = false,
          },
          indent_blankline = {
            context_highlight = "default", -- default | pro
            context_start_underline = false,
          },
        },
        ---@param c Colorscheme
        override = function(c) end,
      })
    end
  },

my bufferline configs

  -- Tab UIs
  {
    'akinsho/bufferline.nvim',
    tag = "v4.2.0",
    dependencies = 'nvim-tree/nvim-web-devicons',
    config = function()
      local bufferline = require('bufferline')
      bufferline.setup {
        options = {
          mode = "tabs", -- set to "tabs" to only show tabpages instead
          separator_style = 'slant',
          always_show_bufferline = true,
          style_preset = bufferline.style_preset.default, -- or bufferline.style_preset.minimal,
          max_name_length = 18,
          tab_size = 18,
          diagnostics = "nvim_lsp",
          diagnostics_indicator = function(count, level, diagnostics_dict, context)
            local icon = level:match("error") and "๏œ " or "๏ฑ "
            return " " .. icon .. count
          end,
          color_icons = true -- whether or not to add the filetype icon highlights
        }
      }
    end
  },

any solution?

Colors change with LSP

Hi,

When LSP is done loading with typescript using tsserver, the colors changes (see screen recording).
Variable colors which were white become purple, and interface colors also changes.

I think it may be related to semantic tokens, but I'm not sure.

screecapture.mov

Also, should export statement be red?
Anyway, nice theme! Thanks

Better support treesitter

image

Co cach nao de giup treesitter highlight tot hon cho Dockerfile k nhi.
Minh expect phan args se duoc highlight mau khac

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.