Top Related Projects
precision colorscheme for the vim text editor
Retro groove color scheme for Vim
A dark Vim/Neovim color scheme inspired by Atom's One Dark syntax theme.
🧛🏻♂️ Dark theme for Vim
Molokai color scheme for Vim
:art: Light & Dark Vim color schemes inspired by Google's Material Design
Quick Overview
Jellybeans.vim is a popular color scheme for Vim and Neovim text editors. It offers a balanced, high-contrast palette that's easy on the eyes and suitable for long coding sessions. The scheme is designed to work well across various programming languages and file types.
Pros
- High contrast and readability, making code easier to scan and understand
- Supports a wide range of programming languages and file types
- Customizable with options to tweak specific colors
- Active maintenance and community support
Cons
- May not suit everyone's personal taste in color schemes
- Some users might find the contrast too high for extended use
- Limited built-in support for certain newer language features or plugins
Getting Started
To use Jellybeans.vim in your Vim or Neovim setup:
- Install the color scheme using your preferred plugin manager. For example, with vim-plug:
Plug 'nanotech/jellybeans.vim'
- Add the following to your
.vimrc
orinit.vim
:
colorscheme jellybeans
- (Optional) Customize the scheme by adding settings before the
colorscheme
line:
let g:jellybeans_overrides = {
\ 'background': { 'ctermbg': 'none', '256ctermbg': 'none' },
\}
if has('termguicolors') && &termguicolors
let g:jellybeans_overrides['background']['guibg'] = 'none'
endif
This example removes the background color, allowing for transparent terminals.
Competitor Comparisons
precision colorscheme for the vim text editor
Pros of vim-colors-solarized
- Scientifically designed color scheme for optimal readability and reduced eye strain
- Offers both light and dark variants, suitable for different lighting conditions
- Widely adopted and supported across various applications beyond Vim
Cons of vim-colors-solarized
- Limited color palette may feel less vibrant compared to Jellybeans
- Can appear washed out on some displays, especially in the light variant
- Requires terminal support for 16 colors, which may not be available in all environments
Code Comparison
vim-colors-solarized:
let g:solarized_termcolors=256
set background=dark
colorscheme solarized
Jellybeans:
set background=dark
colorscheme jellybeans
let g:jellybeans_use_lowcolor_black = 1
Summary
vim-colors-solarized offers a scientifically designed color scheme with light and dark variants, suitable for extended coding sessions. However, it may appear less vibrant than Jellybeans and requires specific terminal support. Jellybeans provides a richer color palette but lacks the scientific approach of Solarized. Both color schemes are highly customizable and popular among Vim users, with the choice often coming down to personal preference and working environment.
Retro groove color scheme for Vim
Pros of Gruvbox
- More extensive color scheme with a wider range of colors and shades
- Better support for modern syntax highlighting features
- Actively maintained with regular updates and improvements
Cons of Gruvbox
- Heavier resource usage due to more complex color definitions
- Steeper learning curve for customization compared to Jellybeans
- May not be suitable for users who prefer simpler, more muted color schemes
Code Comparison
Jellybeans color definition:
let s:blue = "67"
let s:green = "107"
let s:red = "167"
Gruvbox color definition:
let s:gb.dark0_hard = ['#1d2021', 234] " 29-32-33
let s:gb.dark0 = ['#282828', 235] " 40-40-40
let s:gb.dark0_soft = ['#32302f', 236] " 50-48-47
let s:gb.dark1 = ['#3c3836', 237] " 60-56-54
let s:gb.dark2 = ['#504945', 239] " 80-73-69
Gruvbox offers a more detailed and extensive color palette, allowing for finer control over the appearance of different syntax elements. Jellybeans, on the other hand, uses a simpler color definition approach, which may be easier to understand and modify for beginners.
A dark Vim/Neovim color scheme inspired by Atom's One Dark syntax theme.
Pros of onedark.vim
- More modern and actively maintained color scheme
- Better support for newer syntax highlighting features
- Includes additional themes like One Light for versatility
Cons of onedark.vim
- May not work as well with older Vim versions
- Less customization options compared to jellybeans.vim
- Potentially higher resource usage due to more complex color definitions
Code Comparison
jellybeans.vim:
let g:jellybeans_use_lowcolor_black = 1
colorscheme jellybeans
let g:airline_theme='jellybeans'
onedark.vim:
let g:onedark_termcolors=256
colorscheme onedark
let g:airline_theme='onedark'
Both color schemes offer easy integration with popular statusline plugins like vim-airline. The main difference in usage is the configuration options available. jellybeans.vim provides more granular control over specific color elements, while onedark.vim focuses on providing a cohesive, pre-designed color palette.
onedark.vim is inspired by the Atom One Dark theme, offering a modern and sleek appearance. It's particularly well-suited for contemporary coding environments and newer Vim versions. On the other hand, jellybeans.vim has been around longer and may offer better compatibility with older Vim setups and terminal emulators.
Ultimately, the choice between these two color schemes comes down to personal preference, desired aesthetics, and specific Vim setup requirements.
🧛🏻♂️ Dark theme for Vim
Pros of Dracula
- More active development and maintenance
- Broader ecosystem with support for many applications beyond Vim
- Larger community and user base
Cons of Dracula
- Higher resource usage due to more complex color definitions
- Less customization options for individual syntax elements
- Steeper learning curve for theme customization
Code Comparison
Jellybeans:
let g:jellybeans_overrides = {
\ 'background': { 'ctermbg': 'none', '256ctermbg': 'none' },
\}
if has('termguicolors') && &termguicolors
let g:jellybeans_overrides['background']['guibg'] = 'none'
endif
colorscheme jellybeans
Dracula:
if (has("termguicolors"))
set termguicolors
endif
syntax enable
colorscheme dracula
Summary
Jellybeans offers a more lightweight and customizable option with a focus on Vim, while Dracula provides a consistent theme across multiple applications with a larger community. Jellybeans may be preferable for users who prioritize performance and fine-grained control, whereas Dracula suits those seeking a polished, widely-supported theme with minimal setup.
Molokai color scheme for Vim
Pros of Molokai
- More vibrant and high-contrast color scheme
- Better syntax highlighting for certain languages (e.g., Python, JavaScript)
- Actively maintained with recent updates
Cons of Molokai
- Less customization options compared to Jellybeans
- May be too bright for some users, especially in low-light environments
- Limited support for terminal color schemes
Code Comparison
Jellybeans:
let g:jellybeans_overrides = {
\ 'background': { 'ctermbg': 'none', '256ctermbg': 'none' },
\}
if has('termguicolors') && &termguicolors
let g:jellybeans_overrides['background']['guibg'] = 'none'
endif
colorscheme jellybeans
Molokai:
let g:molokai_original = 1
let g:rehash256 = 1
colorscheme molokai
Both color schemes are popular choices for Vim users, offering distinct visual styles. Jellybeans provides a more subdued and customizable appearance, while Molokai offers a brighter, more vibrant look. The code comparison shows that Jellybeans requires more configuration for transparency, while Molokai has simpler setup options. Ultimately, the choice between these two color schemes depends on personal preference and specific use cases.
:art: Light & Dark Vim color schemes inspired by Google's Material Design
Pros of PaperColor Theme
- Offers both light and dark themes, providing more versatility
- Includes specific support for a wider range of programming languages and plugins
- More actively maintained with frequent updates and improvements
Cons of PaperColor Theme
- May have a steeper learning curve due to more customization options
- Some users might find the color palette less visually appealing or too bright
- Slightly larger file size, which could impact load times on older systems
Code Comparison
PaperColor Theme:
let g:PaperColor_Theme_Options = {
\ 'theme': {
\ 'default': {
\ 'transparent_background': 1
\ }
\ }
\ }
Jellybeans:
let g:jellybeans_overrides = {
\ 'background': { 'ctermbg': 'none', '256ctermbg': 'none' },
\}
Both themes allow for customization, but PaperColor Theme offers more granular control over various aspects of the color scheme. Jellybeans provides a simpler configuration for basic adjustments like background transparency.
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
jellybeans.vim
A colorful, dark color scheme, inspired by ir_black and twilight.
Designed primarily for a graphical Vim, but includes support for 256, 88, 16,
and 8 color terminals. On a 16 or 8 color terminal, replace its colors with
those in ansi-term-colors.txt
for best results.
This script is vimscript #2555 at Vim.org.
Jellybeans has also been ported to other editors and programs, listed on the Ports wiki page.
Scroll down for screenshots!
Installation
Install the color scheme by adding it to your ~/.vim/colors
directory
mkdir -p ~/.vim/colors
cd ~/.vim/colors
curl -O https://raw.githubusercontent.com/nanotech/jellybeans.vim/master/colors/jellybeans.vim
Jellybeans can also be installed through plugin managers such as dein.vim, Pathogen, VAM, vim-plug, Vundle, etc.
To enable the jellybeans color scheme, use
:colorscheme jellybeans
If you are satisfied, you can add colorscheme jellybeans
to your ~/.vimrc
file (_vimrc
in Windows).
Options
Custom Highlights
If you prefer slightly different colors from what Jellybeans defines,
you can set g:jellybeans_overrides
in your .vimrc to a dictionary of
custom highlighting parameters:
let g:jellybeans_overrides = {
\ 'Todo': { 'guifg': '303030', 'guibg': 'f0f000',
\ 'ctermfg': 'Black', 'ctermbg': 'Yellow',
\ 'attr': 'bold' },
\ 'Comment': { 'guifg': 'cccccc' },
\}
This removes the need to edit Jellybeans directly, simplifying upgrades. In addition, RGB colors specified this way are run through the same color approximation algorithm that the core theme uses, so your colors work just as well in 256-color terminals.
If you can pick better colors than the approximator, specify them
in the 256ctermfg
and 256ctermbg
parameters to override
its choices.
Custom Background Colors
To set a custom background color, override the special
background
highlight group:
let g:jellybeans_overrides = {
\ 'background': { 'guibg': '000000' },
\}
Jellybeans uses the background color in multiple highlight
groups. Using the special background
group overrides them all
at once.
This replaces g:jellybeans_background_color
and
g:jellybeans_background_color_256
from Jellybeans versions
before 1.6.
Terminal Background
If you would prefer to use your terminal's default background
(e.g. for transparent backgrounds, image backgrounds, or a
different color) instead of the background color that Jellybeans
applies, use this background
override code:
let g:jellybeans_overrides = {
\ 'background': { 'ctermbg': 'none', '256ctermbg': 'none' },
\}
if has('termguicolors') && &termguicolors
let g:jellybeans_overrides['background']['guibg'] = 'none'
endif
MatchParen
Colors
Jellybeans sets alternate MatchParen
colors (magenta on black)
in some terminals to be more readable out of the box:
- Apple's Terminal.app has default themes with cursor colors
that are too close in brightness to Jellybeans' preferred
MatchParen
background color of#556779
to be clearly distinguishable. - Default 16-color terminal palettes don't typically have a
color available that can approximate the preferred
MatchParen
background color.
If you use Terminal.app with a brighter cursor color, you can
use the standard MatchParen
colors with this override:
let g:jellybeans_overrides = {
\ 'MatchParen': { 'guifg': 'ffffff', 'guibg': '556779' },
\}
To use the standard MatchParen
colors in a 16-color terminal,
configure Low-Color Black as described in the section
below.
If you prefer the alternate MatchParen
colors, you can use them
everywhere with
let g:jellybeans_overrides = {
\ 'MatchParen': { 'guifg': 'dd0093', 'guibg': '000000',
\ 'ctermfg': 'Magenta', 'ctermbg': '' },
\}
Added in version 1.7.
Italics
Jellybeans disables italics in terminal Vim by default, as some terminals do other things with the text's colors instead of actually italicizing the text. If your terminal does fully support italics, add
let g:jellybeans_use_term_italics = 1
to your .vimrc to enable italics in terminal Vim.
If you don't want italics even in GUI Vim, add
let g:jellybeans_use_gui_italics = 0
Low-Color Black (16 and 8 color terminals)
Since the background on a dark terminal is usually black already, Jellybeans can appropriate the black ANSI color as a dark grey and use no color when it really wants black.
After changing your terminalâs color palette (#444444
is
suggested), add this to your .vimrc:
let g:jellybeans_use_lowcolor_black = 1
This option was changed to be disabled by default in version 1.7.
Screenshots
The font in the screenshot is 10pt Monaco:
set guifont=Monaco:h10 noanti
Top Related Projects
precision colorscheme for the vim text editor
Retro groove color scheme for Vim
A dark Vim/Neovim color scheme inspired by Atom's One Dark syntax theme.
🧛🏻♂️ Dark theme for Vim
Molokai color scheme for Vim
:art: Light & Dark Vim color schemes inspired by Google's Material Design
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