Skip to content

About

A clean, modern, dark neovim theme.

Topics

Resources

Stars

2 stars

Watchers

1 watching

Forks

Latest commit

 

History

47 Commits

Folders and files

Repository files navigation

nightfall.nvim

A clean, modern, dark neovim theme.

While not a 1:1 port of coeiico's nightfall theme for Jetbrains IDEs, this theme is heavily inspired by it. This is also the reason for keeping the name (there is already another theme with the same name).

nightfall theme screenshot nightfall nightfall-darker theme screenshot nightfall-darker

✨ Features

  • 🌙 Dark
  • 📖 Easy to read
  • 🌳 Treesitter support
  • 🧩 LSP support
  • 👀 Focus on visual consistency

Integrations

See here for a list of integrations.

📦 Installation

Using lazy.nvim

{
	"benjasper/nightfall.nvim",
	priority = 1000,
	config = function()
		require("nightfall").setup()

		vim.cmd("colorscheme nightfall")
	end
}

⚙️ Configuration

Pass options to setup() before loading the colorscheme. Options are merged with the defaults, so you only need to specify what you want to change.

require("nightfall").setup({
	palette = "darker", -- "default" or "darker"
})

vim.cmd("colorscheme nightfall")

When using lazy.nvim, put these options in the setup() call in the installation example above.

Plugin integrations

By default, nightfall automatically enables integrations for plugins configured in lazy.nvim. Without lazy.nvim, all supported integrations are enabled.

These are the default options:

require("nightfall").setup({
	palette = "default",
	plugins = {
		all = package.loaded.lazy == nil,
		auto = true, -- Detect plugins configured in lazy.nvim
	},
})

You can explicitly enable or disable individual integrations. To enable only selected integrations, disable both all and auto:

require("nightfall").setup({
	palette = "darker",
	plugins = {
		all = false,
		auto = false,
		telescope = true,
		["neo-tree"] = true,
	},
})

Integration keys can be the integration filename without .lua (for example, "neo-tree") or the plugin name from the plugin mapping (for example, "neo-tree.nvim"). Explicit settings override automatic detection and all; use false to disable an integration. Neo-tree support includes a highlight for untracked Git files.

👷‍♂️ Development

If you want to contribute to this project, you can do so by forking the repository and creating a pull request. You can easily build an integration for a plugin by adding a new file to the lua/nightfall/highlights/integrations directory. As you can see in other integrations, they always return a set of highlight groups.

After you have created your integration, you can add it to the lua/nightfall/highlights/init.lua file: At the top you'll find a table, that maps the exact plugin name to the filename. Simply enter your newly created file.

📝 License

MIT

About

A clean, modern, dark neovim theme.

Topics

Resources

Stars

2 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages