ofirgall/ofirkai.nvim

github github
tree-sitter-supported-colorscheme
star 14
stars
alert-circle 2
open issues
users 2
subscribers
git-branch 1
forks
CREATED

2022-09-20

UPDATED

yesterday


ofirkai.nvim

Monokai theme for Neovim with treesitter support, aimed to feel like SublimeText 4.



Why not monokai.nvim?

Before I used Neovim I used Sublime Text for 6 years with the builtin Monokai scheme.

My eyes got used to the monokai colorscheme and I didn't want to change what I used to, so the first thing I did when I transferred to Neovim was searching for a Monokai colorscheme.

I found monokai.nvim and installed it immediately, unfortunately it wasn't 1:1 to Sublime Text, I tinkered some values through the config and achieved a colorscheme I was happy with.

I kept adding support for other plugins and changing the default values of monokai.nvim. A colleague of mine asked which colorscheme I use and how can he install it, I answered it was my customized monokai colorscheme, hence the name ofirkai.

Installation

use 'ofirgall/ofirkai.nvim'

Usage

-- Leave empty for default values
require('ofirkai').setup {
}

-- Or setup with custom parameters
require('ofirkai').setup {
    scheme = require('ofirkai').scheme -- Option to override scheme
    custom_hlgroups = {},              -- Option to add/override highlight groups
    remove_italics = false,            -- Option to change all the italics style to none
}

You can find the default values for the scheme and highlights in design.lua.

Note: Each plugin that need a setup has an example in the collapsible section.

Supported Plugins

There is a screenshot example for each plugin.

Status Lines


Setup Example:

require('lualine').setup {
    options = {
        theme = require('ofirkai.statuslines.lualine').theme,
    }
}

Tab Lines


Setup Example:

-- bufferline.nvim, must be loaded after color scheme (working on that https://github.com/ofirgall/ofirkai.nvim/issues/2)
require('bufferline').setup {
    highlights = require('ofirkai.tablines.bufferline').highlights, -- Must
    options = { -- Optional, recommended
        themable = true, -- Must
        separator_style = 'slant',
        offsets = { { filetype = 'NvimTree', text = 'File Explorer', text_align = 'center' } },
        show_buffer_icons = true,
        numbers = 'ordinal',
        max_name_length = 40,
    },
}

Others


require('cmp').setup({
    window = require('ofirkai.plugins.nvim-cmp').window, -- I just removed the `FloatBorder:Normal` from the highlights to allow the FloatBorder to be colored, its not a must.

    -- Get lsp icons from ofirkai, requires https://github.com/onsails/lspkind.nvim
    formatting = {
        format = lspkind.cmp_format({
            symbol_map = require('ofirkai.plugins.nvim-cmp').kind_icons,
            maxwidth = 50,
            mode = 'symbol'
        })
    },

})












I don't change the highlight group because I use a minimalistic design for the lsp signature you can adapt it.

local lsp_signature_cfg = {
    bind = true,
    use_lspsaga = false,
    doc_lines = 0,
    floating_window = false,
    hint_scheme = 'LspSignatureHintVirtualText',
    hint_prefix = ' ',
}



Contributing

Pull requests are welcome, you must provide a screenshot of before/after the change.