A over-minimal Neovim color scheme using only two colors for a plain text editor experience.
Check here for inspirations!
Warning
This is an extreme color scheme that:
- Eliminates ALL colors
- Removes ALL font styles
Tip
If you are not sure if you have the strength, consider:
- Neovim's built-in
quiet
color scheme - Checking vim-no-color-collections for alternatives
- Uses only foreground and background colors
- No syntax highlighting
- No special highlighting for diagnostics, search results, or UI elements
Using lazy.nvim:
{
"jackplus-xyz/binary.nvim",
opts = {
-- Add your configuration here
}
}
binary.nvim
comes with the following default configuration:
{
style = "system", -- Theme style: "system" | "light" | "dark"
colors = { -- Colors used for the "light" theme; reversed automatically for "dark"
fg = "#000000", -- Foreground color
bg = "#ffffff", -- Background color
},
reversed_group = {}, -- Highlight groups with reversed `fg` and `bg` (e.g., `CursorLine`, `Visual`)
}
The default reversed_group includes commonly used highlight groups, with fg
and bg
reversed for better visibility:
-- default reversed_group
{
-- Editor UI
Cursor = true,
CursorLine = true,
IncSearch = true,
MatchParen = true,
PmenuSel = true,
QuickFixLine = true,
Search = true,
Substitute = true,
TabLineSel = true,
TermCursor = true,
TermCursorNC = true,
Visual = true,
VisualNOS = true,
WildMenu = true,
-- LSP
LspReferenceText = true,
LspReferenceRead = true,
LspReferenceWrite = true,
LspSignatureActiveParameter = true,
-- Telescope
TelescopePromptTitle = true,
TelescopePreviewTitle = true,
TelescopeResultsTitle = true,
TelescopeSelection = true,
TelescopeSelectionCaret = true,
}
Example configuration with lazy.nvim
:
require("lazy").setup({
{
"jackplus-xyz/binary.nvim",
opts = {
style = "light",
colors = {
fg = "#FFB400",
},
-- Customize the reversed groups
reversed_group = {
Title = true, -- Add a new reversed group
Search = false, -- Disable a default reversed group
},
},
},
})
Once installed, simply set the color scheme in your Neovim configuration:
vim.cmd("colorscheme binary")
You can dynamically change the style and colors by updating the configuration:
require("binary").setup({
style = "dark",
colors = {
fg = "#ffffff",
bg = "#000000",
},
})
binary.nvim
brute force a two-color scheme by:
- Overrides all highlight groups to use only the configured
fg
andbg
. - Allows selected groups to reverse their colors for improved readability.
- Adapts to different styles (light or dark) by swapping fg and bg.
- zenbones-theme/zenbones.nvim: A collection of calming color schemes, including my favorite daily driver:
zenwritten
. - folke/tokyonight.nvim: A clean and super well maintained color scheme, where I learn how to setup the project.
- vim-no-color-collections: A collection of color schemes with minimal colors.
- Swordfish90/cool-retro-term: A retro terminal emulator which was the inspiration of this plugin.
MIT