My variation of the gruvbox theme with full support for treesitter!
I wasn't comfortable with the gruvbox themes out there, either they didn't have good treesitter support or if they do, I didn't like their colors on python and javascript/typescript files.
Telescope theme inspired by https://github.com/NvChad/NvChad (You have to enable it via config variable)
Font: Jetbrains Mono patched with nerd fonts
Terminal: https://github.com/wez/wezterm
Plug 'luisiacc/gruvbox-baby', {'branch': 'main'}
...
colorscheme gruvbox-baby
❗️ configuration needs to be set BEFORE loading the color scheme with
colorscheme gruvbox-baby
Option | Default | Available options |
---|---|---|
background_color | medium |
medium , dark |
transparent_mode | false |
false , true - sets background colors to None |
comment_style | italic |
see :h attr-list |
keyword_style | italic |
see :h attr-list |
function_style | bold |
see :h attr-list |
variable_style | NONE |
see :h attr-list |
hightlights | {} |
override highlights with your custom colors |
-- Example config in Lua
vim.g.gruvbox_baby_function_style = "NONE"
vim.g.gruvbox_baby_keyword_style = "italic"
-- Each highlight group must follow the structure:
-- ColorGroup = {fg = "foreground color", bg = "background_color", style = "some_style(:h attr-list)"}
-- See also :h highlight-guifg
-- Example:
vim.g.gruvbox_baby_highlights = {Normal = {fg = "#123123", bg = "NONE", style="underline"}}
-- Enable telescope theme
vim.g.gruvbox_baby_telescope_theme = 1
-- Enable transparent mode
vim.g.gruvbox_baby_transparent_mode = 1
-- Load the colorscheme
vim.cmd[[colorscheme gruvbox-baby]]
" Example config in VimScript
let g:gruvbox_baby_function_style = "NONE"
let g:gruvbox_baby_keyword_style = "italic"
" Enable telescope theme
let g:gruvbox_baby_telescope_theme = 1
" Enable transparent mode
let g:gruvbox_baby_transparent_mode = 1
" Load the colorscheme
colorscheme gruvbox-baby
If you want access to the palette you have to do this:
local colors = require("gruvbox-baby.colors").config()
vim.g.gruvbox_baby_highlights = {Normal = {fg = colors.orange}}
- https://github.com/mhinz/vim-startify
- https://github.com/nvim-treesitter/nvim-treesitter
- https://github.com/neoclide/coc.nvim
- https://github.com/kyazdani42/nvim-tree.lua
- https://github.com/phaazon/hop.nvim
- https://github.com/lukas-reineke/indent-blankline.nvim
- https://github.com/hrsh7th/nvim-cmp
- https://github.com/nvim-telescope/telescope.nvim
- https://github.com/nvim-lualine/lualine.nvim
To enable gruvbox-baby
theme for Lualine
, simply specify it in your lualine settings:
require('lualine').setup {
options = {
-- ... your lualine config,
theme = "gruvbox-baby",
-- ... your lualine config,
}
}
Extra color configs for iTerm2 can be found on extras
dark = "#202020",
foreground = "#ebdbb2",
background = "#282828",
background_dark = "#242424",
bg_light = "#32302f",
medium_gray = "#504945",
comment = "#665c54",
gray = "#DEDEDE",
soft_yellow = "#EEBD35",
soft_green = "#98971a",
bright_yellow = "#fabd2f",
orange = "#d65d0e",
red = "#fb4934",
error_red = "#cc241d",
magenta = "#b16286",
pink = "#D4879C",
light_blue = "#7fa2ac",
dark_gray = "#83a598",
blue_gray = "#458588",
forest_green = "#689d6a",
clean_green = "#8ec07c",
milk = "#E7D7AD",
-- Dark theme changes colors to
["dark"] = {
dark = "#161616",
background = "#202020",
background_dark = "#161616",
},
- Shutout to @ThePrimeagen for the inspiration for the plugin name, Gruvbox baby!
- I based my structure on https://github.com/folke/tokyonight.nvim (and also copied some of it)
- The all father 👴 https://github.com/morhetz/gruvbox