Home

Awesome

Tinted Vim

Matrix Chat

Supports console Vim, graphical Vim and Neovim.

Over 250 themes plus light/dark variations are available. Here are some of our favorites:

The classic-dark theme:

tinted-vim classic-dark

The horizon-dark theme:

tinted-vim horizon-dark

The onedark theme:

tinted-vim onedark

Usage

  1. Install the plugin.

  2. Configuration depends on your environment:

    • 24-bit Terminal or GUI Vim

      Vimscript:

      set termguicolors  " Only needed for terminal vim
      colorscheme base16-ayu-dark
      

      Lua:

      vim.cmd.colorscheme('base16-ayu-dark')
      
    • 256 Color Terminal

      Configure tinted-shell

      Vimscript:

      let tinted_colorspace=256
      colorscheme base16-ayu-dark " Set to same theme as your terminal theme
      

      Lua:

      vim.g.tinted_colorspace = 256
      vim.cmd.colorscheme('base16-ayu-dark')
      
    • 16 Color Terminal

      With a 16 color terminal there will be less "gray" colors. Configure terminal with theme from tinted-shell, official or unofficial.

      Vimscript:

      colorscheme base16-ayu-dark  " Set to same theme as your terminal theme
      

      Lua:

      vim.cmd.colorscheme('base16-ayu-dark')
      
  3. Check the highlights with (Neovim only):

:help tinted-vim

Installation

Lazy.nvim

{
    "tinted-theming/tinted-vim",
}

Packer

use {
  "tinted-theming/tinted-vim",
  config = function()
    vim.cmd.colorscheme 'base16-ayu-dark'
  end,
}

Pathogen

cd ~/.vim/bundle
git clone https://github.com/tinted-theming/tinted-vim.git
Plugin 'tinted-theming/tinted-vim'

vim-plug

Add the following to your ~/.vimrc file and run PlugInstall in Vim.

Plug 'tinted-theming/tinted-vim'

Vundle

Add the following to your ~/.vimrc file and run PluginInstall in Vim.

git clone https://github.com/tinted-theming/tinted-vim.git ~/.vim/bundle/tinted-vim
Plugin 'tinted-theming/tinted-vim'

Symlink

You can use a symlink to easily keep things updated. Update your vim colors every time you do a git pull on the tinted-vim repo.

  1. Clone tinted-vim somewhere:

    git clone git://github.com/tinted-theming/tinted-vim.git ~/projects/tinted-vim
    
  2. Remove your old vim/nvim colors/ directory if it exists:

    rm -r ~/.vim/colors # Or ~/.config/nvim/colors for Neovim
    
  3. Symlink the colors directory:

    ln -s ~/projects/tinted-vim/colors/* ~/.vim/colors
    # Or for Neovim
    # ln -s ~/projects/tinted-vim/colors ~/.config/nvim/colors
    

Manual

Vim

cd ~/.vim/colors
git clone git://github.com/tinted-theming/tinted-vim.git tinted-vim
cp tinted-vim/colors/*.vim .

Neovim

cd ~/.config/nvim/colors
git clone git://github.com/tinted-theming/tinted-vim.git tinted-vim
cp tinted-vim/colors/*.vim .

Background transparency

If you're using a terminal with an opacity of < 1, you'll notice that tinted-vim doesn't respect this transparency by default. You can enable transparent backgrounds with tinted-vim by adding the following settings to your Vim/Neovim setup.

Vimscript:

let tinted_background_transparent=1

Lua:

vim.g.tinted_background_transparent = 1

Troubleshooting

There is a script to help troubleshoot colour issues called colortest available in the tinted-shell repository.

If you are using a ISO-8613-3 compatible terminal (vim docs, neovim docs), and you see a green or blue line, try to enable termguicolors:

set termguicolors

Green line numbers

green line numbers screenshot

If your Vim looks like the above image you are using a 256 terminal theme without setting let tinted_colorspace=256 in your ~/.vimrc. Either set let tinted_colorspace=256 in your ~/.vimrc or use a non 256 terminal theme.

Blue line numbers

blue line numbers screenshot

If your Vim looks like the above image you are setting let tinted_colorspace=256 in your ~/.vimrc but either not running tinted-shell or tinted-shell is not working for your terminal. Either ensure tinted-shell is working by running the colortest available in the tinted-shell repository or not setting let tinted_colorspace=256 in your ~/.vimrc.

Customization

If you want to do some local customization, you can add something like this to your ~/.vimrc:

function! s:tinted_customize() abort
  call Tinted_Hi("MatchParen", g:tinted_gui05, g:tinted_gui03, g:tinted_cterm05, g:tinted_cterm03, "bold,italic", "")
endfunction

augroup on_change_colorschema
  autocmd!
  autocmd ColorScheme * call s:tinted_customize()
augroup END

Contributing

See CONTRIBUTING.md, which contains building and contributing instructions.