246

GitHub - sainnhe/sonokai: High Contrast & Vivid Color Scheme based on Monoka...

 4 years ago
source link: https://github.com/sainnhe/sonokai
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

README.md

๐’๐ก๐ฎ๐ฌ๐ข๐š

shusia

๐€๐ง๐๐ซ๐จ๐ฆ๐ž๐๐š

andromeda

๐€๐ญ๐ฅ๐š๐ง๐ญ๐ข๐ฌ

atlantis

๐Œ๐š๐ข๐š

maia

Sometimes I need a high contrast color scheme, and I think monokai is one of the best solutions, it's very beautiful and vivid.

However there is one thing I can't stand -- the contrast is too high, which is totally unacceptable to me.

This color scheme is based on Monokai Pro, the contrast is adjusted to be a bit lower while keeping the colors vivid enough.

The shusia and maia variants are based on monokai pro and monokai machine respectively. I'm not going to port all variants of Monokai Pro because I don't like some of them. In addition, I designed some new variants inspired by other color schemes.

Features

  • High contrast but within acceptable range.
  • Vivid colors.
  • Customizable.
  • Rich support for common file types and plugins.
  • Italic support ๐ŸŽ‰

Installation

Via Plugin Manager

Take vim-plug for example:

Plug 'sainnhe/sonokai'

For better syntax highlighting support, please install sheerun/vim-polyglot.

Manually

  1. Clone this repository.
  2. Copy /path/to/sonokai/colors/sonokai.vim to ~/.vim/colors/ .
  3. To install airline theme, copy /path/to/sonokai/autoload/airline/themes/sonokai.vim to ~/.vim/autoload/airline/themes/ .
  4. To install lightline theme, copy /path/to/sonokai/autoload/lightline/colorscheme/sonokai.vim to ~/.vim/autoload/lightline/colorscheme/ .

Usage

Vim

Put this in your vimrc:

" important!!
set termguicolors

" the configuration options should be placed before `colorscheme sonokai`
let g:sonokai_style = 'andromeda'
let g:sonokai_enable_italic = 1
let g:sonokai_disable_italic_comment = 1

colorscheme sonokai

See Configuration for more configuration options.

If you want to apply this color scheme temporarily, run this command in vim(this may cause colors to break):

:colorscheme sonokai

Airline

To enable airline color scheme, put this in your vimrc:

let g:airline_theme = 'sonokai'

To apply it without reloading:

:AirlineTheme sonokai

Lightline

To enable lightline color scheme, put this in your vimrc:

let g:lightline = {}
let g:lightline.colorscheme = 'sonokai'

" or this line
let g:lightline = {'colorscheme' : 'sonokai'}

To apply it without reloading:

:let g:lightline.colorscheme = 'sonokai'
:call lightline#init()
:call lightline#colorscheme()

Configuration

Note: The configuration options should be placed before colorscheme sonokai .

  • g:sonokai_style: Customize the style of this color scheme.
    • Available values: 'shusia', 'andromeda', 'atlantis', 'maia'
    • Default value: 'shusia'
  • g:sonokai_transparent_background: Set to 1 to enable transparent background.
    • Available values: 0, 1
    • Default value: 0
  • g:sonokai_menu_selection_background: Control the background color of PmenuSel and WildMenu .
    • Available values: 'green', 'red', 'blue'
    • Default value: 'green'
  • g:sonokai_disable_italic_comment: Set to 1 to disable italic in Comment .
    • Available values: 0, 1
    • Default value: 0
  • g:sonokai_enable_italic: Set to 1 to italicize keywords. This option is designed to use with fonts that support cursive italic styles, for example Fira Code iCursive Op.
    • Available values: 0, 1
    • Default value: 0
  • g:sonokai_current_word: Some plugins can highlight the word under current cursor(for example neoclide/coc-highlight), you can use this option to control their behavior.
    • Available values: 'bold', 'underline', 'italic', 'grey background'
    • Default value: 'grey background' when not in transparent mode, 'bold' when in transparent mode.
  • g:sonokai_lightline_disable_bold: Set to 1 to disable bold in lightline theme.
    • Available values: 0, 1
    • Default value: 0

FAQ

Q: It doesn't work as expected.

A:

  1. This color scheme is mainly designed for true colors, set termguicolors is required. Check output of vim --version, maybe your vim doesn't support termguicolors.
  2. Maybe your terminal emulator doesn't support true colors, you can test it using this script.
  3. If you are running vim in tmux, you need to override default true colors of tmux, as tmux cannot display true colors properly: #1246 How to use true colors in vim under tmux?
  4. There are many highlight group links in syntax files while a color scheme may change them, enabling one color scheme based on another color scheme enabled is very likely to cause colors to break. If any color is broken, you can enable the color scheme in your vimrc instead of after vim startup.

Q: How to enable cursive italic keywords?

A:

  1. Install a font that supports cursive italics, for example icursive-nerd-font.
  2. Enable italic keywords in this color scheme: let g:sonokai_enable_italic = 1
  3. Disable italic comment(optional): let g:sonokai_disable_italic_comment = 1

Related Projects

Inspiration

License

MIT ยฉ sainnhe


Recommend

About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK