|
|
The solarized theme, inspired by reading a book under |
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).
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
afterbackground
, otherwise some theme colors may not be applied.
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
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.
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.
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.
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