A professional, high-contrast dark theme for Neovim, designed for focus and clarity. Written in Lua, with support for TreeSitter, LSP, and modern Neovim plugins.
{
"KlingelDev/psychotropic.nvim",
lazy = false,
priority = 1000,
opts = {},
}use({ 'KlingelDev/psychotropic.nvim' })Plug 'KlingelDev/psychotropic.nvim'Enable the colorscheme:
colorscheme psychotropicYou can configure the theme by passing options to the setup function. Here is the default configuration:
require("psychotropic").setup({
-- The specific style of the theme
-- Currently only "professional" is supported, but more may be added
style = "professional",
-- Disable setting the background color (useful for transparent terminals)
transparent = false,
-- Configure the colors used when opening a `:terminal` in Neovim
terminal_colors = true,
styles = {
-- Style to be applied to different syntax groups
-- Value is any valid attr-list value for `:help nvim_set_hl`
comments = { italic = true },
keywords = { italic = true, bold = true },
functions = {},
variables = {},
-- Background styles. Can be "dark", "transparent" or "normal"
sidebars = "dark", -- style for sidebars (e.g., NvimTree)
floats = "dark", -- style for floating windows
},
-- Override specific color groups to use other groups or a hex color
-- function will be called with a ColorScheme table
on_colors = function(colors) end,
-- Override specific highlights to use other groups or a hex color
-- function will be called with a Highlights and ColorScheme table
on_highlights = function(highlights, colors) end,
})You can customize the theme further using on_colors and on_highlights:
require("psychotropic").setup({
on_colors = function(colors)
colors.bg = "#000000" -- Make background pitch black
end,
on_highlights = function(hl, c)
hl.LineNr = { fg = c.blue } -- Change line number color
end,
})- Lualine: Support is coming soon.
- Terminal: Automatically configures terminal colors if enabled.