Skip to content

A dark, low-contrast colorscheme for Neovim inspired by roses and geared towards dark theme lovers.

License

Notifications You must be signed in to change notification settings

water-sucks/darkrose.nvim

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

47 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Darkrose

A dark, low-contrast colorscheme for Neovim inspired by roses and geared towards dark theme lovers.

Screenshot

image

Requirements

  • Neovim >= 0.9.0

Installation

packer.nvim:

use("water-sucks/darkrose.nvim")

lazy.nvim

{
    "water-sucks/darkrose.nvim",
    lazy = false,
    priority = 1000,
}

Usage

require("darkrose").setup({
    -- Override colors
    colors = {
        orange = "#F87757",
    },
    -- Override existing or add new highlight groups
    overrides = function(c)
        return {
            Class = { fg = c.magenta },
            ["@variable"] = { fg = c.fg_dark },
        }
    end,
    -- Styles to enable or disable
    styles = {
        bold = true, -- Enable bold highlights for some highlight groups
        italic = true, -- Enable italic highlights for some highlight groups
        underline = true, -- Enable underline highlights for some highlight groups
    }
})
vim.cmd.colorscheme("darkrose")

There is no need to run the setup function if you do not want to customize the colorscheme; run vim.cmd.colorscheme("darkrose"), and you're good to go. Color names are defined here.

Plugins

These are plugins explicitly supported by the colorscheme (more is always better, feel free to add more in a PR!):

Special Integrations

Certain plugins have too many highlights to define inside the theme file without ripping my hair out. They are the plugins marked with an asterisk above, and they have special integrations provided. These are how to use them:

bufferline.nvim

Pass the highlighting integration as an argument to bufferline.nvim's setup function. It must be loaded after darkrose is set up for this to work.

-- Define overrides to any highlight arguments here; this is an optional argument
-- to the generate function.
local overrides = {}
require("bufferline").setup({
    highlights = require("darkrose.integrations.bufferline").generate(overrides),
})
neorg

Pass the highlighting integration as an argument to neorg's setup function. It must be loaded after darkrose is set up for this to work.

-- Define overrides to any highlight arguments here; this is an optional argument
-- to the generate function.
local overrides = {}
require("neorg").setup({
    load = {
        ["core.highlights"] = {
            config = {
                highlights = require("darkrose.integrations.neorg").generate(overrides),
            },
        },
    },
})

Disclaimers

This is my first plugin; I threw together a bunch of colors that I liked, and this is the result. There is absolutely no color theory involved, and I'm not a graphic designer; however, I was not satisfied with any of the colorschemes for Neovim at the time of creation. If there are any problems with or ways to improve the colorscheme, please file an issue. I would love to make this colorscheme better for everyone.

This is also extremely unstable, and breaking changes can be made at any time until a 1.0 release happens. This will happen when the colorscheme's colors are stabilized, and when more plugins and languages are supported.

Thanks

About

A dark, low-contrast colorscheme for Neovim inspired by roses and geared towards dark theme lovers.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Languages