Familiar Look
Not only are the colours accurate to the default JetBrains themes, they
also attempt to emulate the original colour hierarchy. For instance, JSON
keywords are highlighted in the Constant colour, not the keyword colour.
This of course is limited by the available highlight groups in Vim, and
even with vim-polyglot it is
not possible to get an exact match, so expect a best-effort outcome.
Multiple Palettes
Three palette options are packaged:
dark: Uses the colours from the 'Dark' JetBrains themelight: For those who prefer a light theme, follows the 'Light' thememid: A bonus theme - Thedarkpalette with a lighter background
Bring Your Own Colours
Any of the palette colours can be overridden. See Configuration or :help g:jb_color_overrides for how to implement your own colours. Highlight groups can also be modified in an autoload group to change the look of the plugin.
Semantic language syntax highlighting
Includes more in depth highlighting rules, ported from the original themes, in accordance with the highlight groups of the language syntax packs in vim-polyglot. It is recommended you install polyglot alongside this colorscheme for the best highlighting.
Truecolor, cterm, and italic support
Whilst built with true colours in mind, vim-jb's schemes also support 256 colour terminals. You can also opt-in to italics if your terminal emulator supports them. See Configuration or :help jb-configuration for more details.
Plugins out the box
Includes highlight links for popular Vim plugins such as GitGutter,
NERDTree, ALE, FZF, Fugitive, and more. For those without included groups,
the JB* top-level highlight groups in the plugin configuration allow for
easy and clear custom mapping in a .vimrc that won't affect other
schemes. See colors/jb.vim for the groups.
Using vim-plug (or your package manager of choice):
Plug 'devsjc/vim-jb'Place the following line at the bottom of your .vimrc:
colorscheme jbNote: All configuration must be placed before the colorscheme jb line.
Further configuration details can be found via
:help jb-configuration.
Choosing the style
The style is set with g:jb_style variable. For instance:
let g:jb_style='mid'
colorscheme jbEnabling italics
If your terminal emulator supports italics, opt in using
let g:jb_enable_italics=1
colorscheme jbEnabling Unicode
If your terminal emulator/font support unicode, opt in using
let g:jb_enable_unicode=1
colorscheme jbModifying a color
To choose your own colour, pick a category from the
palettes file, and define your overrides in a
dictionary containing your replacement gui and cterm colours:
let g:jb_color_overrides={
\"keyword": {"gui": "#ff00ff", "cterm": "16"}
\}You can also change highlight groups, overriding what is set in the plugin.
Say you prefer how Android Studio uses the Type colour for Kotlin
structures, instead of the less saturated Keyword of IntelliJ Idea.
Simply add the following overrides in an augroup in your .vimrc:
augroup JBHiglights
autocmd!
autocmd ColorScheme * highlight link ktStructure Type
augroup ENDThis must be placed in an augroup to prevent vim-jb from overriding it.
- Iterm2 themes: terminals-jb
- Kitty themes: terminals-jb
Enjoy the theme? Give it a star on GitHub! Feel free to create pull requests with any new highlight rules that have been missed.

