/edge

Clean & Elegant Color Scheme inspired by Atom One and Material

Primary LanguageVim ScriptMIT LicenseMIT

𝐄𝐝𝐠𝐞

𝐄𝐝𝐠𝐞 𝐃𝐚𝐫𝐤

edge-dark

𝐄𝐝𝐠𝐞 𝐃𝐚𝐫𝐤 (𝐀𝐮𝐫𝐚)

aura-dark

𝐄𝐝𝐠𝐞 𝐃𝐚𝐫𝐤 (𝐍𝐞𝐨𝐧)

neon-dark

𝐄𝐝𝐠𝐞 𝐋𝐢𝐠𝐡𝐭

edge-light

This color scheme is heavily inspired by Atom One and Material, I'm trying to combine my favorite designs of them in this color scheme.

Features

  • Vivid colors.
  • Designed to have a soft contrast for eye protection.
  • Customizable.
  • Rich support for common file types and plugins.
  • Italic support 🎉

Installation

Via Plugin Manager

Take vim-plug for example:

Plug 'sainnhe/edge'

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

Manually

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

Usage

Vim

Put this in your vimrc:

" important!!
set termguicolors

" for dark version
set background=dark

" for light version
set background=light

" the configuration options should be placed before `colorscheme edge`
let g:edge_style = 'neon'
let g:edge_disable_italic_comment = 1

colorscheme edge

See Configuration for more configuration options.

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

:colorscheme edge

Airline

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

let g:airline_theme = 'edge'

To apply it without reloading:

:AirlineTheme edge

Lightline

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

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

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

To apply it without reloading:

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

Configuration

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

  • g:edge_style: Customize the style of this color scheme.
    • Available values: 'default', 'aura', 'neon'
    • Default value: 'default'
  • g:edge_transparent_background: Set to 1 to enable transparent background.
    • Available values: 0, 1
    • Default value: 0
  • g:edge_menu_selection_background: Control the background color of PmenuSel and WildMenu .
    • Available values: 'blue', 'green', 'purple'
    • Default value: 'blue'
  • g:edge_disable_italic_comment: Set to 1 to disable italic in Comment .
    • Available values: 0, 1
    • Default value: 0
  • g:edge_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:edge_cursor: Customize the cursor color, only works in GUI clients.
    • Available values: 'auto', 'red', 'green', 'blue', 'purple'
    • Default value: 'auto'
  • g:edge_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:edge_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:edge_enable_italic = 1
  3. Disable italic comment(optional): let g:edge_disable_italic_comment = 1

Q: What's your status line configuration?

A: See this article.

Related Projects

Code Editor

Terminal Emulators

Other

More Color Schemes

Inspiration

Thanks to

License

MIT && Anti-996