Awesome Open Source
Awesome Open Source

stellarized

paint vim with the stars


screenshot of the stellarized vim theme, light version

screenshot of the stellarized vim theme, dark version
The solarized theme, inspired by reading a book under
a shady tree on a sunny day, features a base palette
of dark green-blue and bright orange-yellow.
The stellarized theme takes this basic idea and shifts
the base hues to reflect the colours of the stars.
Specifically, dark base colors are shifted bluewise (to the
approximate "hot star hue"), while light base colors
are shifted orangewise (to the "cold star hue").
stellarized is a special adaptation of snow.

installation

If you don’t have a preferred plugin management method, consider vim-plug, which can be installed (on *nix systems) with:

curl -fLo ~/.vim/autoload/plug.vim --create-dirs \
  https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim

Having installed vim-plug, stellarized can be installed by adding the following to the top of your vimrc...

call plug#begin('~/.vim/plugged')
Plug 'haystackandroid/stellarized'
call plug#end()

...then restarting vim, followed by running :PlugUpdate (at the vim command line).

activation

For a sunny day, add the following to vimrc:

set background=light
colorscheme stellarized

For a starry night:

set background=dark
colorscheme stellarized

To set the background automatically based on the time at which vim is launched:

if strftime('%H') >= 7 && strftime('%H') < 19
  set background=light
else
  set background=dark
endif
colorscheme stellarized

...which activates the light version of stellarized during the day (defined here as 7AM-7PM), dark version at night.

Be sure to set colorscheme after background, otherwise some theme colors may not be applied.

status line themes

stellarized comes with themes for airline and lightline, which can be activated with the following vimrc code:

airline lightline
let g:airline_theme='stellarized_light' let g:lightline = { 'colorscheme': 'stellarized_light' }
let g:airline_theme='stellarized_dark' let g:lightline = { 'colorscheme': 'stellarized_dark' }

Status line themes can be added to the time-based snippet above:

if strftime('%H') >= 7 && strftime('%H') < 19
  set background=light
  let g:lightline = { 'colorscheme': 'stellarized_light' }
else
  set background=dark
  let g:lightline = { 'colorscheme': 'stellarized_dark' }
endif
colorscheme stellarized

terminal vim

colors

Terminals/multiplexers with true-color support can display the exact colors of the stellarized theme.

In most cases, the only vimrc setting you need is:

set termguicolors

In some cases you'll also need (see :h xterm-true-color for explanation):

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

If termguicolors is not set, terminal vim will fall back to a rough approximation of stellarized.

Note that if you're running vim in iTerm2, you must use vim 8.1 in order for stellarized to work properly.

cursor shape

To set mode-specific cursor shapes in terminal vim, see the Vim Tips Wiki.

For instance, to set cursor shapes in vte-compatible terminals, you could add to vimrc:

let &t_SI = "\<Esc>[6 q"
let &t_SR = "\<Esc>[4 q"
let &t_EI = "\<Esc>[2 q"

...which sets the cursor to a vertical line for insert mode, underline for replace mode, and block for normal mode.

shell

colors

Many terminal emulators can be themed by sourcing the color-setting shell scripts included with stellarized. The path to these scripts will depend on your plugin management method.

For instance, if you use vim-plug and want to apply the dark stellarized theme to your bash or zsh shell, add the following to ~/.bashrc or ~/.zshrc:

[ -n "$PS1" ] && sh ~/.vim/plugged/stellarized/shell/stellarized_dark.sh

Or for the fish shell, add to ~/.config/fish/config.fish:

if status --is-interactive
  sh ~/.vim/plugged/stellarized/shell/stellarized_dark.sh
end

If you use vundle, replace plugged in the above paths with bundle.

Replace dark with light for the light theme.

fish syntax

Again, the script path will depend on your plugin management method.

For the dark theme in a vim-plug setup, add to ~/.config/fish/config.fish:

source ~/.vim/plugged/stellarized/shell/stellarized_dark.fish

               

The 4.5:1 W3C contrast ratio standard for readability is met by all text/background combinations, with the exception of some transient highlighting (e.g. cursorline/column), which nonetheless well exceeds the minimal ISO 3:1 standard.
image credit: night sky photo by ESO/S. Brunier (CC BY 4.0)

Get A Weekly Email With Trending Projects For These Topics
No Spam. Unsubscribe easily at any time.
Vim Script (18,716
Theme (6,260
Vim (5,846
Terminal (4,242
Scheme (4,022
Neovim (2,577
Color (2,171
Color Scheme (1,187
Light (671
Dark (407
Colour (238
Gvim (53
Colour Scheme (25
True Color (22
True (13
Colortemplate (3
Related Projects