Light and dark vim colorscheme, shamelessly stolen from atom (another excellent text editor). One supports true colors and falls back gracefully and automatically if your environment does not support this feature.
Add the following line to your
As for the colorscheme, this theme comes with light and dark flavors.
Pull requests are more than welcome here. I have created few issues to provide a bare bone roadmap for this color scheme.
You can use your preferred Vim Package Manager to install One.
One comes in two flavors: light and dark.
colorscheme one set background=dark " for the dark version " set background=light " for the light version
set background has to be called after setting the colorscheme, this explains
the issue #21 where Vim tries to determine the best background when
Normal highlight is defined.
Some terminals do not support italic, cf. #3.
If your terminal does support italic, you can set the
g:one_allow_italics variable to 1 in your
set background=light " for the light version let g:one_allow_italics = 1 " I love italic for comments colorscheme one
iTerm2 can support italic, follow the instructions given in this blog post by Alex Pearce. Make sure to read the update if you are using tmux version 2.1 or above.
To benefit from the true color support make sure to add the following lines in your
"Credit joshdick "Use 24-bit (true-color) mode in Vim/Neovim when outside tmux. "If you're using tmux version 2.2 or later, you can remove the outermost $TMUX check and use tmux's 24-bit color support "(see < http://sunaku.github.io/tmux-24bit-color.html#usage > for more information.) if (empty($TMUX)) if (has("nvim")) "For Neovim 0.1.3 and 0.1.4 < https://github.com/neovim/neovim/pull/2198 > let $NVIM_TUI_ENABLE_TRUE_COLOR=1 endif "For Neovim > 0.1.5 and Vim > patch 7.4.1799 < https://github.com/vim/vim/commit/61be73bb0f965a895bfb064ea3e55476ac175162 > "Based on Vim patch 7.4.1770 (`guicolors` option) < https://github.com/vim/vim/commit/8a633e3427b47286869aa4b96f2bfc1fe65b25cd > " < https://github.com/neovim/neovim/wiki/Following-HEAD#20160511 > if (has("termguicolors")) set termguicolors endif endif set background=dark " for the dark version " set background=light " for the light version colorscheme one
To get true color working in tmux, ensure that the
$TERM environment variable is set to
xterm-256color. Inside the
.tmux.conf file we need to override this terminal and also set the default terminal as 256 color.
# Add truecolor support set-option -ga terminal-overrides ",xterm-256color:Tc" # Default terminal is 256 colors set -g default-terminal "screen-256color"
Note that this only works for Neovim (tested on 0.1.5). For some reason Vim (7.5.2334) doesn't play nice. See blog post by Anton Kalyaev for more details on setting up tmux.
For Vim inside tmux, you can add the following snippet in your
set t_8b=^[[48;2;%lu;%lu;%lum set t_8f=^[[38;2;%lu;%lu;%lum
^[ in this snippet is a real escape character. To insert it, press
Ctrl-V and then
I've tested the following setup on a Mac:
Following a request to be able to customise one without the need to fork, one is now exposing a public function to meet this requirement.
After the colorscheme has been initialised, you can call the following function:
one#highlight(group, fg, bg, attribute)
group: Highlight you want to customise for example
fg: foreground color for the highlight, without the '#', for example:
bg: background color for the highlight, without the '#', for example:
underlineor any comma separated combination
call one#highlight('vimLineComment', 'cccccc', '', 'none')
A special thank you to the following people