Convert Figma logo to code with AI

lifepillar logovim-solarized8

Optimized Solarized colorschemes. Best served with true-color terminals!

1,007
88
1,007
2

Top Related Projects

precision colorscheme for the vim text editor

13,627

Retro groove color scheme for Vim

A dark Vim/Neovim color scheme inspired by Atom's One Dark syntax theme.

1,321

🧛🏻‍♂️ Dark theme for Vim

2,514

An arctic, north-bluish clean and elegant Vim theme.

:art: Light & Dark Vim color schemes inspired by Google's Material Design

Quick Overview

Vim-solarized8 is a high-quality color scheme for Vim and Neovim, based on Ethan Schoonover's Solarized palette. It offers true-color (24-bit) support, as well as fallback options for 256-color and 16-color terminals, making it versatile across different environments.

Pros

  • True-color support for modern terminals and GUIs
  • Includes variants for light and dark backgrounds
  • Optimized for readability and reduced eye strain
  • Compatible with both Vim and Neovim

Cons

  • May require terminal configuration for optimal display
  • Limited customization options compared to some other color schemes
  • Might not appeal to users who prefer high-contrast themes

Getting Started

To install vim-solarized8 using a plugin manager like vim-plug, add the following to your .vimrc or init.vim:

Plug 'lifepillar/vim-solarized8'

Then run :PlugInstall in Vim.

To enable the color scheme, add this to your configuration file:

set background=dark  " or light
colorscheme solarized8

For true-color support in terminal Vim, ensure your TERM is set correctly (e.g., xterm-256color) and add:

set termguicolors

For Neovim users, no additional configuration is needed for true-color support.

Competitor Comparisons

precision colorscheme for the vim text editor

Pros of vim-colors-solarized

  • Original and widely recognized Solarized color scheme for Vim
  • Extensive documentation and usage instructions
  • Supports both GUI and terminal versions of Vim

Cons of vim-colors-solarized

  • Less frequent updates and maintenance
  • Limited support for newer Vim features and syntax highlighting
  • May have compatibility issues with some terminal emulators

Code Comparison

vim-colors-solarized:

let g:solarized_termcolors=256
let g:solarized_termtrans=1
let g:solarized_contrast="normal"
let g:solarized_visibility="normal"
colorscheme solarized

vim-solarized8:

set background=dark
let g:solarized_statusline="flat"
let g:solarized_diffmode="high"
let g:solarized_term_italics=1
colorscheme solarized8

The code snippets show configuration options for each color scheme. vim-solarized8 offers more granular control over various aspects of the theme, including statusline appearance and diff mode highlighting.

vim-solarized8 is a modern implementation of the Solarized color scheme, offering improved performance, better terminal support, and additional features like true color support. It also provides multiple variants (high/low contrast, flat) and is actively maintained, addressing issues and incorporating new Vim features more frequently than the original vim-colors-solarized.

13,627

Retro groove color scheme for Vim

Pros of Gruvbox

  • More vibrant and warm color palette, which may be easier on the eyes for long coding sessions
  • Includes a wider range of color schemes (light and dark variants with different contrast levels)
  • Better support for various programming languages and plugins out of the box

Cons of Gruvbox

  • May not be as suitable for users who prefer a more muted or cool color scheme
  • Slightly larger file size and potentially more resource-intensive due to its extensive customization options

Code Comparison

Gruvbox color definition:

let g:gruvbox_contrast_dark = 'medium'
colorscheme gruvbox

Solarized8 color definition:

set background=dark
colorscheme solarized8

Both color schemes offer easy customization, but Gruvbox provides more built-in options for adjusting contrast and color intensity. Solarized8, being a port of the original Solarized theme, stays true to its classic color palette while offering improved performance and compatibility with modern Vim features.

A dark Vim/Neovim color scheme inspired by Atom's One Dark syntax theme.

Pros of onedark.vim

  • More vibrant and modern color scheme, inspired by Atom's One Dark theme
  • Includes support for popular plugins like lightline and vim-airline out of the box
  • Offers a light variant (One Light) for users who prefer brighter themes

Cons of onedark.vim

  • Less customization options compared to vim-solarized8's extensive variants
  • May not be as suitable for users who prefer more muted or pastel color schemes
  • Smaller community and fewer contributions compared to the well-established Solarized theme

Code Comparison

vim-solarized8:

let g:solarized_visibility = "normal"
let g:solarized_diffmode = "normal"
let g:solarized_termtrans = 0
colorscheme solarized8

onedark.vim:

let g:onedark_terminal_italics = 1
let g:onedark_hide_endofbuffer = 1
let g:onedark_color_overrides = {"black": {"gui": "#2F343F", "cterm": "235", "cterm16": "0"}}
colorscheme onedark

Both color schemes offer easy configuration options, but vim-solarized8 provides more granular control over various aspects of the theme. onedark.vim focuses on simplicity and out-of-the-box functionality, making it easier for users to get started quickly with a modern-looking theme.

1,321

🧛🏻‍♂️ Dark theme for Vim

Pros of Dracula

  • More vibrant and modern color scheme
  • Wider range of supported platforms and applications
  • Active community with frequent updates and contributions

Cons of Dracula

  • May be too high-contrast for some users
  • Less customization options compared to Solarized8
  • Darker background might not be suitable for all environments

Code Comparison

Dracula:

hi Normal guifg=#F8F8F2 guibg=#282A36
hi Comment guifg=#6272A4
hi Constant guifg=#BD93F9
hi String guifg=#F1FA8C
hi Function guifg=#50FA7B

Solarized8:

hi Normal guifg=#657b83 guibg=#fdf6e3
hi Comment guifg=#93a1a1
hi Constant guifg=#2aa198
hi String guifg=#2aa198
hi Function guifg=#268bd2

Summary

Dracula offers a more modern and vibrant color scheme with wider platform support, while Solarized8 provides a more customizable and subtle palette. Dracula's high contrast may be preferred by some users but could be overwhelming for others. Solarized8's light background and earth tones offer a more traditional look. The code comparison shows the difference in color choices, with Dracula using brighter, more saturated colors compared to Solarized8's more muted tones.

2,514

An arctic, north-bluish clean and elegant Vim theme.

Pros of vim

  • More comprehensive color scheme with a wider range of syntax highlighting options
  • Active development with frequent updates and improvements
  • Includes additional themes like Nord Light and Polar Night

Cons of vim

  • Larger file size and potentially more resource-intensive
  • May require additional configuration for optimal appearance in some terminal emulators
  • Less focus on maintaining a strict adherence to the original Solarized color palette

Code Comparison

vim-solarized8:

let g:solarized_termtrans=1
colorscheme solarized8

vim:

set background=dark
colorscheme nord
let g:nord_uniform_status_lines = 1
let g:nord_bold_vertical_split_line = 1
let g:nord_cursor_line_number_background = 1

The vim configuration offers more customization options out of the box, allowing users to fine-tune various aspects of the theme's appearance. However, this may also require more setup time compared to the simpler vim-solarized8 configuration.

:art: Light & Dark Vim color schemes inspired by Google's Material Design

Pros of PaperColor Theme

  • More color schemes available, including both light and dark variants
  • Supports a wider range of file types and plugins
  • Active community with frequent updates and contributions

Cons of PaperColor Theme

  • Less focus on maintaining true color accuracy across different environments
  • May require more configuration to achieve optimal results in some setups
  • Slightly larger file size due to additional color schemes and options

Code Comparison

PaperColor Theme:

let g:PaperColor_Theme_Options = {
  \   'theme': {
  \     'default': {
  \       'transparent_background': 1
  \     }
  \   }
  \ }

Vim-Solarized8:

let g:solarized_statusline = "flat"
let g:solarized_visibility = "high"
let g:solarized_diffmode = "high"

Both themes offer customization options, but PaperColor Theme provides more granular control over specific elements, while Vim-Solarized8 focuses on broader adjustments to maintain color consistency.

Convert Figma logo designs to code with AI

Visual Copilot

Introducing Visual Copilot: A new AI model to turn Figma designs to high quality code using your components.

Try Visual Copilot

README

Solarized 8 for Vim

Solarized 8 Flat DarkSolarized 8 Flat Light

Note: if you are using Neovim, checkout the neovim branch of this repo.

This is yet another Solarized theme for Vim. It places itself half way between the original Solarized and the Flattened variant. It removes only some of the bullshit. The color palette is exactly the same as in Solarized, although some highlight groups are defined slightly differently (for instance, I have tried to avoid red on blue).

The main reason for the existence of this project is that the original Solarized theme does not define guifg and guibg in terminal Vim, making it unsuitable for versions of Vim supporting true-color (i.e., 24-bit color) terminals. Instead, this color scheme works out of the box everywhere. For the best experience, you need:

  • Vim ≥7.4.1799 with termguicolors set, and
  • a terminal supporting millions of colors (but see below for workarounds).

Solarized 8 also works in any GUI version of Vim: no configuration is necessary.* See below for installation instructions.

* VimR users must set termguicolors before loading the color scheme.

But, my terminal has only 256 colors!

For terminals not supporting true colors, Solarized 8 will fall back to use an approximate palette based on xterm's 256 colors, which looks more or less like this:

Dark 256 color paletteLight 256 color palette

(Yeah, it looks like a different color scheme: Solarized palette is far away from xterm colors!)

If you do not like this approximation, to get exact colors with such terminals you have two possibilities:

  1. Modify some of your terminal colors in the range 16–255 to match Solarized palette. For this purpose, you may run (not source!) scripts/solarized8.sh; no setting is needed in Vim. For instance, if you are using Bash, put this in .bashrc:

    sh /path/to/scripts/solarized.sh
    

    Note: this method is supported only by some terminals. For instance, in Apple's Terminal.app, running solarized.sh has no effect.

  2. Set your terminal's 16 ANSI colors (the colors in the range 0–15) to the Solarized palette (how to do that depends on the terminal) and set t_Co=16 in Vim to instruct Vim to use your terminal's colors. Be aware that, if you force the use of your terminal colors in Vim with any of these settings, but your terminal is not configured to use the Solarized palette, your colors will be completely off!

Note: whatever method you choose, keep in mind that if your terminal does not support millions of colors, you must not set termguicolors (i.e., make sure that set termguicolors? outputs notermguicolors).

What if I happen to work on vt100 or similar?

In the past, Solarized 8 used to complain when your terminal did not support enough colors. But the current version will gracefully degrade to a (beautiful!) black&white color scheme:

Solarized 8 B&W variantSolarized 8 B&W variant

Installation

If your Vim supports packages (echo has('packages') prints 1), I strongly recommend that you use them. Just clone this repo inside pack/*/opt, e.g.:

git clone https://github.com/lifepillar/vim-solarized8.git \
    ~/.vim/pack/themes/opt/solarized8

Otherwise, use you favourite installation method.

There are actually four optimized* color schemes you may load:

  • solarized8_high: high-contrast variant (screenshot below, first column);
  • solarized8: the default Solarized theme (screenshot below, second column);
  • solarized8_low: low-contrast variant (screenshot below, third column);
  • solarized8_flat: “flat” variant (screenshot below, fourth column).

The “flat” variant does not exist in the original Solarized. It differs from solarized8 mainly in how the status line, split bars and tab bar look like:

To use a Solarized 8 color scheme, set the background (dark or light) then load the variant you want, e.g.:

set background=dark
colorscheme solarized8

If you opt to use some Vim plugin manager instead, the following should be added to your vimrc, rather than the above, for the color scheme to be loaded correctly:

set background=dark
autocmd vimenter * ++nested colorscheme solarized8

To switch the background from dark to light or vice versa, just set background accordingly.

If you use Vim packages, there is no need to packadd solarized8. Keep your runtimepath clean!

* Below is the result of a benchmark I have made using Vim 8.1.1450 and iTerm 2 v3.2.6 on a MacBook Pro Early 2015 with macOS 10.14.5. To make the comparison meaningful, g:solarized_extra_hi_groups was set to 1: Solarized 8 should load a bit faster if you do not enable additional syntax items. Note that Solarized 8 is optimized for what are believed to be the most common use cases, i.e., GUI, true-color terminals and 256-color terminals.

Options

The following options are inherited from Solarized, although their effects may be slightly different from those in the original Solarized:

  • g:solarized_visibility: one of "normal" (default), "low", "high": controls CursorLineNr, LineNr, NonText, SpecialKey, Title, and all the Spell* highlight groups; in light mode, it may also slightly change the color for Cursor and MatchParen;
  • g:solarized_diffmode: one of "normal" (default), "low", "high": controls the style of DiffAdd, DiffChange, DiffDelete, and DiffText.
  • g:solarized_termtrans: make the background transparent if set to 1 (default: 0). This has effect only if Vim is run from the terminal.

The following options were not available in the original Solarized:

  • g:solarized_statusline: one of "normal" (default), "low" or "flat". This affects the “structural” elements of your editor: StatusLine, StatusLineNC, TabLine, TablineFill, TabLineSel, and VertSplit.
  • g:solarized_italics: set to 0 to suppress italics (default is 1). Note that in the terminal whether italics is actually used depends also on the font and the terminal environment: setting this option to 1 is not guaranteed to work.
  • g:solarized_old_cursor_style: set to 1 if you want to use the original Solarized's cursor style (default: 0). By default, the cursor is orange or red in light themes (depending on g:solarized_visibility), and blue in dark themes. Please note that your terminal may override the cursor's color, so this option is not guaranteed to change the cursor's color.
  • g:solarized_extra_hi_groups: set to 1 to enable Solarized filetype-specific syntax highlighting groups (default is 0). Please be aware that if your Vim is very old you may encounter an issue with syntax items defined in color schemes.

All these options may be used with any Solarized 8 variant.

Troubleshooting

Hey, I do not get the right colors when running Vim inside tmux or in my favourite true-color enabled terminal!

Try putting this in your .vimrc:

let &t_8f = "\<Esc>[38;2;%lu;%lu;%lum"
let &t_8b = "\<Esc>[48;2;%lu;%lu;%lum"

See :h xterm-true-color for the details.

It may also be necessary to add the following to your tmux.conf:

# Add truecolor support
set-option -ga terminal-overrides ",xterm-256color:Tc"
# Default terminal is 256 colors
set -g default-terminal "tmux-256color"

See also these threads:

Hacking

Do you want to hack the theme? Install Colortemplate, edit the templates/*.colortemplate files, then rebuild the color schemes.

If you extend or improve Solarized 8, please consider submitting a pull request!