Top Related Projects
Gruvbox with Material Palette
Lua port of the most famous vim colorscheme
🌲 Comfortable & Pleasant Color Scheme for Vim
Quick Overview
Gruvbox is a retro groove color scheme for Vim and other text editors. It's designed to be easy on the eyes with warm, earthy tones and carefully chosen contrast levels. The color scheme is available in both dark and light variants, catering to different user preferences and lighting conditions.
Pros
- Carefully crafted color palette that reduces eye strain
- Available in both dark and light variants
- Supports a wide range of programming languages and file types
- Consistent design across various text editors and IDEs
Cons
- May not appeal to users who prefer cooler or more vibrant color schemes
- Some users might find the contrast levels too low for their liking
- Limited customization options compared to more flexible color schemes
- Occasional inconsistencies in syntax highlighting across different editors
Getting Started
To use Gruvbox in Vim:
- Install a plugin manager like Vim-Plug if you haven't already.
- Add the following line to your
.vimrc
file:
Plug 'morhetz/gruvbox'
- Run
:PlugInstall
in Vim to install the plugin. - Add these lines to your
.vimrc
to set Gruvbox as your color scheme:
set background=dark " or light if you prefer the light version
colorscheme gruvbox
- Restart Vim or source your
.vimrc
file to apply the changes.
For other editors, consult the repository's README for specific installation instructions.
Competitor Comparisons
Gruvbox with Material Palette
Pros of Gruvbox Material
- Enhanced color palette with more balanced and softer tones
- Better support for modern terminals and editors
- Improved syntax highlighting for various programming languages
Cons of Gruvbox Material
- Less widespread adoption compared to the original Gruvbox
- May require additional configuration for some applications
- Slight learning curve for users familiar with original Gruvbox
Code Comparison
Gruvbox:
let g:gruvbox_contrast_dark = 'hard'
let g:gruvbox_italic = 1
colorscheme gruvbox
Gruvbox Material:
let g:gruvbox_material_background = 'hard'
let g:gruvbox_material_enable_italic = 1
let g:gruvbox_material_better_performance = 1
colorscheme gruvbox-material
Summary
Gruvbox Material offers a refined color palette and improved support for modern environments, making it an attractive option for users seeking a more polished Gruvbox experience. However, the original Gruvbox remains widely popular and may be more familiar to long-time users. The choice between the two ultimately depends on personal preference and specific use cases.
Lua port of the most famous vim colorscheme
Pros of gruvbox.nvim
- Written in Lua, providing better performance and integration with Neovim
- Offers more customization options and color variants
- Actively maintained with regular updates and bug fixes
Cons of gruvbox.nvim
- Specific to Neovim, not compatible with regular Vim
- May require additional configuration for optimal use
- Potentially less stable due to ongoing development
Code Comparison
gruvbox:
let g:gruvbox_contrast_dark = 'hard'
let g:gruvbox_italic = 1
colorscheme gruvbox
gruvbox.nvim:
require("gruvbox").setup({
contrast = "hard",
italic = true,
})
vim.cmd("colorscheme gruvbox")
The code comparison shows the difference in syntax between the original Vim-based gruvbox and the Lua-based gruvbox.nvim. The latter uses Lua's table syntax for configuration, which is more native to Neovim's ecosystem.
gruvbox.nvim leverages Neovim's built-in LSP and treesitter for improved syntax highlighting, while gruvbox relies on Vim's traditional syntax highlighting system. This can result in more accurate and consistent highlighting in gruvbox.nvim, especially for complex language constructs.
🌲 Comfortable & Pleasant Color Scheme for Vim
Pros of Everforest
- More refined and softer color palette, easier on the eyes for long coding sessions
- Offers both light and dark variants, providing more flexibility
- Actively maintained with regular updates and improvements
Cons of Everforest
- Less widespread adoption compared to Gruvbox, potentially limiting available ports
- May require more manual configuration in some environments
- Color scheme might be too muted for users who prefer higher contrast
Code Comparison
Gruvbox (Vim configuration):
let g:gruvbox_contrast_dark = 'hard'
let g:gruvbox_italic = 1
colorscheme gruvbox
Everforest (Vim configuration):
let g:everforest_background = 'hard'
let g:everforest_enable_italic = 1
let g:everforest_better_performance = 1
colorscheme everforest
Both color schemes offer similar configuration options, but Everforest includes additional performance-related settings. The syntax for applying the color scheme is identical, making it easy to switch between the two.
Everforest provides a more modern and refined aesthetic, while Gruvbox offers a classic, high-contrast look that many developers are familiar with. The choice between the two ultimately depends on personal preference and specific use cases.
Convert designs to code with AI
Introducing Visual Copilot: A new AI model to turn Figma designs to high quality code using your components.
Try Visual CopilotREADME
gruvbox is heavily inspired by badwolf, jellybeans and solarized.
Designed as a bright theme with pastel 'retro groove' colors and light/dark mode switching in the way of solarized. The main focus when developing gruvbox is to keep colors easily distinguishable, contrast enough and still pleasant for the eyes.
Attention
- Read this first
- Typeface from gallery is Fantasque Sans Mono
- Typeface from screenshots below is Fira Mono
Screenshots
Refer Gallery for more syntax-specific screenshots.
Dark mode
Light mode
Airline theme
Palette
Dark mode
Light mode
Contrast options
Refer wiki section for contrast configuration and other options.
Documentation
Please check wiki for installation details, terminal-specific setup, troubleshooting, configuration options and others.
Features
-
Lots of style-customization options (contrast, color invertion, italics usage etc.)
-
Extended filetype highlighting: Html, Xml, Vim, Clojure, C, Python, JavaScript, TypeScript, PureScript, CoffeeScript, Ruby, Objective-C, Go, Lua, MoonScript, Java, Markdown, Haskell, Elixir
-
Supported plugins: EasyMotion, vim-sneak, Indent Guides, indentLine, Rainbow Parentheses, Airline, Lightline, GitGutter, Signify, ShowMarks, Signature, Syntastic, Ale, CtrlP, Startify, NERDTree, Dirvish
Contributions
See gruvbox-contrib repo for contributions, ports and extras.
ToDo
- Filetype syntax highlighting (R, TeX, Swift, Erlang)
- Plugin support (Tagbar, VimPlug)
Self-Promotion
If you like gruvbox follow the repository on GitHub and vote for it on vim.org.
License
Top Related Projects
Gruvbox with Material Palette
Lua port of the most famous vim colorscheme
🌲 Comfortable & Pleasant Color Scheme for Vim
Convert designs to code with AI
Introducing Visual Copilot: A new AI model to turn Figma designs to high quality code using your components.
Try Visual Copilot