Update dracula pro themes for emacs and vim

This commit is contained in:
Sravan Balaji 2024-07-13 08:32:30 -04:00
parent ceb09c3014
commit 6f2977976a
66 changed files with 866 additions and 1705 deletions

@ -1 +1 @@
Subproject commit 580dd2dd60d704aa3b09a925a65ddcc318f66c60 Subproject commit 6b650eaba20133d5f944ce92476945d4a889f0ce

@ -1 +1 @@
Subproject commit d5995a16e4352719f1288c7af024be09bf7b768c Subproject commit eec6e5b035fa5629272a3838618b568fd132917b

View File

@ -4,36 +4,59 @@
These are the default instructions using Vim 8's `|packages|` feature. These are the default instructions using Vim 8's `|packages|` feature.
1. Create theme folder (in case you don't have yet): 1. Create theme folder (in case you don't have it yet):
``` - `\*nix` with vim:
```bash
# vim 8.2+
mkdir -p ~/.vim/pack/themes/start mkdir -p ~/.vim/pack/themes/start
# vim 8.0
mkdir -p ~/.vim/pack/themes/opt
``` ```
- `\*nix` with neovim:
```bash
nvim +'call mkdir(stdpath("data")."/site/pack/themes/start", "p")' +q
```
- Windows with vim: create directory `$HOME\vimfiles\pack\themes\start` or
`$HOME\vimfiles\pack\themes\opt`, according to your version.
2. Copy the `vim` folder and rename to "dracula_pro": 2. Copy the `vim` folder and rename to "dracula_pro":
``` - `\*nix` with vim:
```bash
# change according to your version above
cp -r vim ~/.vim/pack/themes/start/dracula_pro cp -r vim ~/.vim/pack/themes/start/dracula_pro
``` ```
- `\*nix` with neovim:
```bash
cp -r vim "$(nvim -es +'put =stdpath("data")' +print +'q!')"/site/pack/themes/start/dracula_pro
```
#### Activate #### Activate
1. Create configuration file (in case you don't have yet): 1. Edit your vimrc file (`:help vimrc`):
- `\*nix` with vim: edit `~/.vimrc` or `~/.vim/vimrc`
- `\*nix` with neovim: edit `~/.config/nvim/init.vim`
- Windows with vim: edit `$HOME\_vimrc` or `$HOME\vimfiles\vimrc`
- Windows with neovim: edit `~/AppData/Local/nvim/init.vim`
with the following content
``` ```
vim ~/.vimrc " For packages, versions 8.2 and later will autoload `start` packages
``` " correctly even in your vimrc.
if v:version < 802
2. Edit the `~/.vimrc` file with the following content: packadd! dracula
endif
```
packadd! dracula_pro
syntax enable syntax enable
let g:dracula_colorterm = 0 let g:dracula_colorterm = 0
colorscheme dracula_pro colorscheme dracula_pro
``` ```
P.S.: You need a 256-color or truecolor terminal and you may want one that supports xterm sequences for :terminal. P.S.: You need a 256-color or truecolor terminal and you may want one that
supports xterm sequences for :terminal.

View File

@ -1,45 +0,0 @@
if dracula_pro#should_abort()
finish
endif
" Fzf: {{{
if exists('g:loaded_fzf') && ! exists('g:fzf_colors')
let g:fzf_colors = {
\ 'fg': ['fg', 'Normal'],
\ 'bg': ['bg', 'Normal'],
\ 'hl': ['fg', 'Search'],
\ 'fg+': ['fg', 'Normal'],
\ 'bg+': ['bg', 'Normal'],
\ 'hl+': ['fg', 'DraculaOrange'],
\ 'info': ['fg', 'DraculaPurple'],
\ 'border': ['fg', 'Ignore'],
\ 'prompt': ['fg', 'DraculaGreen'],
\ 'pointer': ['fg', 'Exception'],
\ 'marker': ['fg', 'Keyword'],
\ 'spinner': ['fg', 'Label'],
\ 'header': ['fg', 'Comment'],
\}
endif
"}}}
" ALE: {{{
if exists('g:ale_enabled')
hi! link ALEError DraculaErrorLine
hi! link ALEWarning DraculaWarnLine
hi! link ALEInfo DraculaInfoLine
hi! link ALEErrorSign DraculaRed
hi! link ALEWarningSign DraculaOrange
hi! link ALEInfoSign DraculaCyan
hi! link ALEVirtualTextError Comment
hi! link ALEVirtualTextWarning Comment
endif
" }}}
" CtrlP: {{{
if exists('g:loaded_ctrlp')
hi! link CtrlPMatch IncSearch
hi! link CtrlPBufferHid Normal
endif
" }}}
" vim: fdm=marker ts=2 sts=2 sw=2 fdl=0:

View File

@ -1,15 +0,0 @@
if dracula_pro#should_abort('css')
finish
endif
hi! link cssAttrComma Delimiter
hi! link cssAttrRegion DraculaPink
hi! link cssAttributeSelector DraculaGreenItalic
hi! link cssBraces Delimiter
hi! link cssFunctionComma Delimiter
hi! link cssNoise DraculaPink
hi! link cssProp DraculaCyan
hi! link cssPseudoClass DraculaPink
hi! link cssPseudoClassId DraculaGreenItalic
hi! link cssUnitDecorators DraculaPink
hi! link cssVendor DraculaGreenItalic

View File

@ -1,12 +0,0 @@
if dracula_pro#should_abort('gitcommit')
finish
endif
" The following two are misnomers. Colors are correct.
hi! link diffFile DraculaGreen
hi! link diffNewFile DraculaRed
hi! link diffAdded DraculaGreen
hi! link diffLine DraculaCyanItalic
hi! link diffRemoved DraculaRed

View File

@ -1,9 +0,0 @@
if dracula_pro#should_abort('html')
finish
endif
hi! link htmlTag DraculaFg
hi! link htmlArg DraculaGreenItalic
hi! link htmlTitle DraculaFg
hi! link htmlH1 DraculaFg
hi! link htmlSpecialChar DraculaPurple

View File

@ -1,25 +0,0 @@
if dracula_pro#should_abort('javascript')
finish
endif
hi! link javaScriptBraces Delimiter
hi! link javaScriptNumber Constant
hi! link javaScriptNull Constant
hi! link javaScriptFunction Keyword
" pangloss/vim-javascript {{{
hi! link jsArrowFunction Operator
hi! link jsClassMethodType Keyword
hi! link jsDestructuringAssignment DraculaOrangeItalic
hi! link jsDocParam DraculaOrangeItalic
hi! link jsDocTags Keyword
hi! link jsDocType Type
hi! link jsDocTypeBrackets DraculaCyan
hi! link jsFuncArgOperator Operator
hi! link jsFunction Keyword
hi! link jsTemplateBraces Special
"}}}
" vim: fdm=marker ts=2 sts=2 sw=2 fdl=0:

View File

@ -1,6 +0,0 @@
if dracula_pro#should_abort('json')
finish
endif
hi! link jsonKeyword DraculaCyan
hi! link jsonKeywordMatch DraculaPink

View File

@ -1,50 +0,0 @@
if dracula_pro#should_abort('markdown', 'mkd')
finish
endif
if b:current_syntax ==# 'mkd'
" plasticboy/vim-markdown {{{1
hi! link htmlBold DraculaOrangeBold
hi! link htmlBoldItalic DraculaOrangeBoldItalic
hi! link htmlH1 DraculaPurpleBold
hi! link htmlItalic DraculaYellowItalic
hi! link mkdBlockquote DraculaYellowItalic
hi! link mkdBold DraculaOrangeBold
hi! link mkdBoldItalic DraculaOrangeBoldItalic
hi! link mkdCode DraculaGreen
hi! link mkdCodeEnd DraculaGreen
hi! link mkdCodeStart DraculaGreen
hi! link mkdHeading DraculaPurpleBold
hi! link mkdInlineUrl DraculaLink
hi! link mkdItalic DraculaYellowItalic
hi! link mkdLink DraculaPink
hi! link mkdListItem DraculaCyan
hi! link mkdRule DraculaComment
hi! link mkdUrl DraculaLink
"}}}1
elseif b:current_syntax ==# 'markdown'
" Builtin: {{{1
hi! link markdownBlockquote DraculaCyan
hi! link markdownBold DraculaOrangeBold
hi! link markdownBoldItalic DraculaOrangeBoldItalic
hi! link markdownCodeBlock DraculaGreen
hi! link markdownCode DraculaGreen
hi! link markdownCodeDelimiter DraculaGreen
hi! link markdownH1 DraculaPurpleBold
hi! link markdownH2 markdownH1
hi! link markdownH3 markdownH1
hi! link markdownH4 markdownH1
hi! link markdownH5 markdownH1
hi! link markdownH6 markdownH1
hi! link markdownHeadingDelimiter markdownH1
hi! link markdownHeadingRule markdownH1
hi! link markdownItalic DraculaYellowItalic
hi! link markdownLinkText DraculaPink
hi! link markdownListMarker DraculaCyan
hi! link markdownOrderedListMarker DraculaCyan
hi! link markdownRule DraculaComment
hi! link markdownUrl DraculaLink
"}}}
endif
" vim: fdm=marker ts=2 sts=2 sw=2 fdl=0:

View File

@ -1,7 +0,0 @@
if dracula_pro#should_abort('ocaml')
finish
endif
hi! link ocamlModule Type
hi! link ocamlModPath Normal
hi! link ocamlLabel DraculaOrangeItalic

View File

@ -1,38 +0,0 @@
if dracula_pro#should_abort('perl')
finish
endif
" Regex
hi! link perlMatchStartEnd DraculaRed
" Builtin functions
hi! link perlOperator DraculaCyan
hi! link perlStatementFiledesc DraculaCyan
hi! link perlStatementFiles DraculaCyan
hi! link perlStatementFlow DraculaCyan
hi! link perlStatementHash DraculaCyan
hi! link perlStatementIOfunc DraculaCyan
hi! link perlStatementIPC DraculaCyan
hi! link perlStatementList DraculaCyan
hi! link perlStatementMisc DraculaCyan
hi! link perlStatementNetwork DraculaCyan
hi! link perlStatementNumeric DraculaCyan
hi! link perlStatementProc DraculaCyan
hi! link perlStatementPword DraculaCyan
hi! link perlStatementRegexp DraculaCyan
hi! link perlStatementScalar DraculaCyan
hi! link perlStatementSocket DraculaCyan
hi! link perlStatementTime DraculaCyan
hi! link perlStatementVector DraculaCyan
" Highlighting for quoting constructs, tied to existing option in vim-perl
if get(g:, 'perl_string_as_statement', 0)
hi! link perlStringStartEnd DraculaRed
endif
" Signatures
hi! link perlSignature DraculaOrangeItalic
hi! link perlSubPrototype DraculaOrangeItalic
" Hash keys
hi! link perlVarSimpleMemberName DraculaPurple

View File

@ -1,10 +0,0 @@
if dracula_pro#should_abort('php')
finish
endif
hi! link phpClass Type
hi! link phpClasses Type
hi! link phpDocTags DraculaCyanItalic
hi! link phpFunction Function
hi! link phpParent Normal
hi! link phpSpecialFunction DraculaCyan

View File

@ -1,13 +0,0 @@
if dracula_pro#should_abort('plantuml')
finish
endif
hi! link plantumlClassPrivate SpecialKey
hi! link plantumlClassProtected DraculaOrange
hi! link plantumlClassPublic Function
hi! link plantumlColonLine String
hi! link plantumlDirectedOrVerticalArrowLR Constant
hi! link plantumlDirectedOrVerticalArrowRL Constant
hi! link plantumlHorizontalArrow Constant
hi! link plantumlSkinParamKeyword DraculaCyan
hi! link plantumlTypeKeyword Keyword

View File

@ -1,11 +0,0 @@
if dracula_pro#should_abort('python')
finish
endif
hi! link pythonBuiltinObj Type
hi! link pythonBuiltinObject Type
hi! link pythonBuiltinType Type
hi! link pythonClassVar DraculaPurpleItalic
hi! link pythonExClass Type
hi! link pythonNone Type
hi! link pythonRun Comment

View File

@ -1,16 +0,0 @@
if dracula_pro#should_abort('ruby')
finish
endif
if ! exists('g:ruby_operators')
let g:ruby_operators=1
endif
hi! link rubyBlockArgument DraculaOrangeItalic
hi! link rubyBlockParameter DraculaOrangeItalic
hi! link rubyCurlyBlock DraculaPink
hi! link rubyGlobalVariable DraculaPurple
hi! link rubyInstanceVariable DraculaPurpleItalic
hi! link rubyInterpolationDelimiter DraculaPink
hi! link rubyRegexpDelimiter DraculaRed
hi! link rubyStringDelimiter DraculaYellow

View File

@ -1,5 +0,0 @@
if dracula_pro#should_abort('rust')
finish
endif
hi! link rustCommentLineDoc Comment

View File

@ -1,12 +0,0 @@
if dracula_pro#should_abort('sass')
finish
endif
hi! link sassClass cssClassName
hi! link sassClassChar cssClassNameDot
hi! link sassId cssIdentifier
hi! link sassIdChar cssIdentifier
hi! link sassInterpolationDelimiter DraculaPink
hi! link sassMixinName Function
hi! link sassProperty cssProp
hi! link sassVariableAssignment Operator

View File

@ -1,8 +0,0 @@
if dracula_pro#should_abort('bash', 'ksh', 'posix', 'sh')
finish
endif
hi! link shCommandSub NONE
hi! link shEscape DraculaRed
hi! link shParen NONE
hi! link shParenError NONE

View File

@ -1,17 +0,0 @@
if dracula_pro#should_abort('tex')
finish
endif
hi! link texBeginEndName DraculaOrangeItalic
hi! link texBoldItalStyle DraculaOrangeBoldItalic
hi! link texBoldStyle DraculaOrangeBold
hi! link texInputFile DraculaOrangeItalic
hi! link texItalStyle DraculaYellowItalic
hi! link texLigature DraculaPurple
hi! link texMath DraculaPurple
hi! link texMathMatcher DraculaPurple
hi! link texMathSymbol DraculaPurple
hi! link texRefZone DraculaBgDarker
hi! link texSpecialChar DraculaPurple
hi! link texSubscripts DraculaPurple
hi! link texTitle DraculaFgBold

View File

@ -1,57 +0,0 @@
if dracula_pro#should_abort('typescript', 'typescriptreact')
finish
endif
" HerringtonDarkholme/yats.vim {{{
hi! link typescriptAliasDeclaration Type
hi! link typescriptArrayMethod Function
hi! link typescriptArrowFunc Operator
hi! link typescriptArrowFuncArg DraculaOrangeItalic
hi! link typescriptAssign Operator
hi! link typescriptBOMWindowProp Constant
hi! link typescriptBinaryOp Operator
hi! link typescriptBraces Delimiter
hi! link typescriptCall typescriptArrowFuncArg
hi! link typescriptClassHeritage Type
hi! link typescriptClassName Type
hi! link typescriptDateMethod DraculaCyan
hi! link typescriptDateStaticMethod Function
hi! link typescriptDecorator DraculaGreenItalic
hi! link typescriptDefaultParam Operator
hi! link typescriptES6SetMethod DraculaCyan
hi! link typescriptEndColons Delimiter
hi! link typescriptEnum Type
hi! link typescriptEnumKeyword Keyword
hi! link typescriptFuncComma Delimiter
hi! link typescriptFuncKeyword Keyword
hi! link typescriptFuncType DraculaOrangeItalic
hi! link typescriptFuncTypeArrow Operator
hi! link typescriptGlobal Type
hi! link typescriptGlobalMethod DraculaCyan
hi! link typescriptGlobalObjects Type
hi! link typescriptIdentifier DraculaPurpleItalic
hi! link typescriptInterfaceHeritage Type
hi! link typescriptInterfaceName Type
hi! link typescriptInterpolationDelimiter Keyword
hi! link typescriptKeywordOp Keyword
hi! link typescriptLogicSymbols Operator
hi! link typescriptMember Identifier
hi! link typescriptMemberOptionality Special
hi! link typescriptObjectColon Special
hi! link typescriptObjectLabel Identifier
hi! link typescriptObjectSpread Operator
hi! link typescriptOperator Operator
hi! link typescriptParamImpl DraculaOrangeItalic
hi! link typescriptParens Delimiter
hi! link typescriptPredefinedType Type
hi! link typescriptRestOrSpread Operator
hi! link typescriptTernaryOp Operator
hi! link typescriptTypeAnnotation Special
hi! link typescriptTypeCast Operator
hi! link typescriptTypeParameter DraculaOrangeItalic
hi! link typescriptTypeReference Type
hi! link typescriptUnaryOp Operator
hi! link typescriptVariable Keyword
" }}}

View File

@ -1,10 +0,0 @@
if dracula_pro#should_abort('typescriptreact')
finish
endif
runtime! syntax/typescript.vim
hi! link tsxAttrib DraculaGreenItalic
hi! link tsxEqual Operator
hi! link tsxIntrinsicTagName Keyword
hi! link tsxTagName Type

View File

@ -1,14 +0,0 @@
if dracula_pro#should_abort('vim')
finish
endif
hi! link vimAutoCmdSfxList Type
hi! link vimAutoEventList Type
hi! link vimEnvVar Constant
hi! link vimFunction Function
hi! link vimHiBang Keyword
hi! link vimOption Type
hi! link vimSetMod Keyword
hi! link vimSetSep Delimiter
hi! link vimUserAttrbCmpltFunc Function
hi! link vimUserFunc Function

View File

@ -1,13 +0,0 @@
if dracula_pro#should_abort('xml')
finish
endif
hi! link xmlAttrib DraculaGreenItalic
hi! link xmlEqual Operator
hi! link xmlTag Delimiter
hi! link xmlTagName Statement
" Fixes missing highlight over end tags
syn region xmlTagName
\ matchgroup=xmlTag start=+</[^ /!?<>"']\@=+
\ matchgroup=xmlTag end=+>+

View File

@ -1,12 +0,0 @@
if dracula_pro#should_abort('yaml')
finish
endif
hi! link yamlAlias DraculaGreenItalicUnderline
hi! link yamlAnchor DraculaPinkItalic
hi! link yamlBlockMappingKey DraculaCyan
hi! link yamlFlowCollection DraculaPink
hi! link yamlFlowIndicator Delimiter
hi! link yamlNodeTag DraculaPink
hi! link yamlPlainScalar DraculaYellow

View File

@ -111,7 +111,7 @@ let g:airline#themes#dracula_pro#palette = {
\ }, \ },
\ ), \ ),
\ 'terminal': s:color_map( \ 'terminal': s:color_map(
\ ['bg', 'purple'], \ ['bg', 'green'],
\ ['fg', 'comment'], \ ['fg', 'comment'],
\ ['fg', 'selection'], \ ['fg', 'selection'],
\ { \ {

View File

@ -43,15 +43,4 @@ let g:dracula_pro#palette.color_15 = '#FFFFFF'
" }}} " }}}
" Helper function that takes a variadic list of filetypes as args and returns
" whether or not the execution of the ftplugin should be aborted.
func! dracula_pro#should_abort(...)
if ! exists('g:colors_name') || g:colors_name !~# 'dracula_pro.*'
return 1
elseif a:0 > 0 && (! exists('b:current_syntax') || index(a:000, b:current_syntax) == -1)
return 1
endif
return 0
endfunction
" vim: fdm=marker ts=2 sts=2 sw=2 fdl=0: " vim: fdm=marker ts=2 sts=2 sw=2 fdl=0:

View File

@ -0,0 +1,69 @@
runtime autoload/dracula_pro.vim
let g:dracula_pro#palette.comment = ['#635D97', 60]
let g:dracula_pro#palette.selection = ['#CFCFDE', 188]
let g:dracula_pro#palette.subtle = ['#DCDEEF', 189]
let g:dracula_pro#palette.bglighter = ['#FFFFFF', 15]
let g:dracula_pro#palette.bglight = ['#F5F5F5', 15]
let g:dracula_pro#palette.bg = ['#F5F5F5', 15]
let g:dracula_pro#palette.bgdark = ['#E6E6E6', 254]
let g:dracula_pro#palette.bgdarker = ['#B8B8B8', 249]
" This cterm value adjusted by hand. Conversion function gives 66, which is too
" blue compared to the grey. 242 (0x6C6C6C) is visually closer.
let g:dracula_pro#palette.fg = ['#1F1F1F', 234]
let g:dracula_pro#palette.cyan = ['#036A96', 24]
let g:dracula_pro#palette.green = ['#14710A', 22]
let g:dracula_pro#palette.orange = ['#A34D14', 130]
let g:dracula_pro#palette.pink = ['#A3144D', 125]
let g:dracula_pro#palette.purple = ['#644AC9', 62]
let g:dracula_pro#palette.red = ['#CB3A2A', 166]
let g:dracula_pro#palette.yellow = ['#846E15', 94]
" ANSI
" Note that these blacks and whites are swapped because this is a light
" colorscheme. Also, MacVim (not sure about GVim) always uses a black terminal
" background, which is unhelpful in this case.
" black (background)
let g:dracula_pro#palette.color_0 = g:dracula_pro#palette.bg[0]
" dark red
let g:dracula_pro#palette.color_1 = g:dracula_pro#palette.red[0]
" dark green
let g:dracula_pro#palette.color_2 = g:dracula_pro#palette.green[0]
" brown/yellow
let g:dracula_pro#palette.color_3 = g:dracula_pro#palette.yellow[0]
" dark blue
let g:dracula_pro#palette.color_4 = g:dracula_pro#palette.purple[0]
" dark magenta
let g:dracula_pro#palette.color_5 = g:dracula_pro#palette.pink[0]
" dark cyan
let g:dracula_pro#palette.color_6 = g:dracula_pro#palette.cyan[0]
" light grey/white (foreground)
let g:dracula_pro#palette.color_7 = g:dracula_pro#palette.fg[0]
" dark grey
let g:dracula_pro#palette.color_8 = g:dracula_pro#palette.comment[0]
" (bright) red
let g:dracula_pro#palette.color_9 = '#D74C3D'
" (bright) green
let g:dracula_pro#palette.color_10 = '#198D0C'
" (bright) yellow
let g:dracula_pro#palette.color_11 = '#9E841A'
" (bright) blue/purple
let g:dracula_pro#palette.color_12 = '#7862D0'
" (bright) magenta/pink
let g:dracula_pro#palette.color_13 = '#BF185A'
" bright cyan
let g:dracula_pro#palette.color_14 = '#047FB4'
" white (bright foreground)
let g:dracula_pro#palette.color_15 = '#2C2B31'
runtime colors/dracula_pro_base.vim
" Fix Pmenu. The BgDark is too close to the selection value.
highlight! link Pmenu DraculaBgLighter
highlight! link PmenuSbar DraculaBgLighter
let g:colors_name = 'alucard'

View File

@ -61,12 +61,20 @@ if !exists('g:dracula_italic')
let g:dracula_italic = 1 let g:dracula_italic = 1
endif endif
if !exists('g:dracula_strikethrough')
let g:dracula_strikethrough = 1
endif
if !exists('g:dracula_underline') if !exists('g:dracula_underline')
let g:dracula_underline = 1 let g:dracula_underline = 1
endif endif
if !exists('g:dracula_undercurl') && g:dracula_underline != 0 if !exists('g:dracula_undercurl')
let g:dracula_undercurl = 1 let g:dracula_undercurl = g:dracula_underline
endif
if !exists('g:dracula_full_special_attrs_support')
let g:dracula_full_special_attrs_support = has('gui_running')
endif endif
if !exists('g:dracula_inverse') if !exists('g:dracula_inverse')
@ -77,12 +85,17 @@ if !exists('g:dracula_colorterm')
let g:dracula_colorterm = 1 let g:dracula_colorterm = 1
endif endif
if !exists('g:dracula_high_contrast_diff')
let g:dracula_high_contrast_diff = 0
endif
"}}}2 "}}}2
" Script Helpers: {{{2 " Script Helpers: {{{2
let s:attrs = { let s:attrs = {
\ 'bold': g:dracula_bold == 1 ? 'bold' : 0, \ 'bold': g:dracula_bold == 1 ? 'bold' : 0,
\ 'italic': g:dracula_italic == 1 ? 'italic' : 0, \ 'italic': g:dracula_italic == 1 ? 'italic' : 0,
\ 'strikethrough': g:dracula_strikethrough == 1 ? 'strikethrough' : 0,
\ 'underline': g:dracula_underline == 1 ? 'underline' : 0, \ 'underline': g:dracula_underline == 1 ? 'underline' : 0,
\ 'undercurl': g:dracula_undercurl == 1 ? 'undercurl' : 0, \ 'undercurl': g:dracula_undercurl == 1 ? 'undercurl' : 0,
\ 'inverse': g:dracula_inverse == 1 ? 'inverse' : 0, \ 'inverse': g:dracula_inverse == 1 ? 'inverse' : 0,
@ -95,10 +108,15 @@ function! s:h(scope, fg, ...) " bg, attr_list, special
let l:attr_list = filter(get(a:, 2, ['NONE']), 'type(v:val) == 1') let l:attr_list = filter(get(a:, 2, ['NONE']), 'type(v:val) == 1')
let l:attrs = len(l:attr_list) > 0 ? join(l:attr_list, ',') : 'NONE' let l:attrs = len(l:attr_list) > 0 ? join(l:attr_list, ',') : 'NONE'
" Falls back to coloring foreground group on terminals because " If the UI does not have full support for special attributes (like underline and
" nearly all do not support undercurl " undercurl) and the highlight does not explicitly set the foreground color,
" make the foreground the same as the attribute color to ensure the user will
" get some highlight if the attribute is not supported. The default behavior
" is to assume that terminals do not have full support, but the user can set
" the global variable `g:dracula_full_special_attrs_support` explicitly if the
" default behavior is not desirable.
let l:special = get(a:, 3, ['NONE', 'NONE']) let l:special = get(a:, 3, ['NONE', 'NONE'])
if l:special[0] !=# 'NONE' && l:fg[0] ==# 'NONE' && !has('gui_running') if l:special[0] !=# 'NONE' && l:fg[0] ==# 'NONE' && !g:dracula_full_special_attrs_support
let l:fg[0] = l:special[0] let l:fg[0] = l:special[0]
let l:fg[1] = l:special[1] let l:fg[1] = l:special[1]
endif endif
@ -125,6 +143,7 @@ call s:h('DraculaBgDarker', s:none, s:bgdarker)
call s:h('DraculaFg', s:fg) call s:h('DraculaFg', s:fg)
call s:h('DraculaFgUnderline', s:fg, s:none, [s:attrs.underline]) call s:h('DraculaFgUnderline', s:fg, s:none, [s:attrs.underline])
call s:h('DraculaFgBold', s:fg, s:none, [s:attrs.bold]) call s:h('DraculaFgBold', s:fg, s:none, [s:attrs.bold])
call s:h('DraculaFgStrikethrough', s:fg, s:none, [s:attrs.strikethrough])
call s:h('DraculaComment', s:comment) call s:h('DraculaComment', s:comment)
call s:h('DraculaCommentBold', s:comment, s:none, [s:attrs.bold]) call s:h('DraculaCommentBold', s:comment, s:none, [s:attrs.bold])
@ -169,11 +188,19 @@ call s:h('DraculaInfoLine', s:none, s:none, [s:attrs.undercurl], s:cyan)
call s:h('DraculaTodo', s:cyan, s:none, [s:attrs.bold, s:attrs.inverse]) call s:h('DraculaTodo', s:cyan, s:none, [s:attrs.bold, s:attrs.inverse])
call s:h('DraculaSearch', s:green, s:none, [s:attrs.inverse]) call s:h('DraculaSearch', s:green, s:none, [s:attrs.inverse])
call s:h('DraculaBoundary', s:comment, s:bgdark) call s:h('DraculaBoundary', s:comment, s:bgdark)
call s:h('DraculaWinSeparator', s:comment, s:bgdark)
call s:h('DraculaLink', s:cyan, s:none, [s:attrs.underline]) call s:h('DraculaLink', s:cyan, s:none, [s:attrs.underline])
call s:h('DraculaDiffChange', s:orange, s:none) if g:dracula_high_contrast_diff
call s:h('DraculaDiffChange', s:yellow, s:purple)
call s:h('DraculaDiffDelete', s:bgdark, s:red)
else
call s:h('DraculaDiffChange', s:orange, s:none)
call s:h('DraculaDiffDelete', s:red, s:bgdark)
endif
call s:h('DraculaDiffText', s:bg, s:orange) call s:h('DraculaDiffText', s:bg, s:orange)
call s:h('DraculaDiffDelete', s:red, s:bgdark) call s:h('DraculaInlayHint', s:comment, s:bgdark)
" }}}2 " }}}2
@ -212,14 +239,16 @@ hi! link Pmenu DraculaBgDark
hi! link PmenuSbar DraculaBgDark hi! link PmenuSbar DraculaBgDark
hi! link PmenuSel DraculaSelection hi! link PmenuSel DraculaSelection
hi! link PmenuThumb DraculaSelection hi! link PmenuThumb DraculaSelection
call s:h('PmenuMatch', s:cyan, s:bgdark)
call s:h('PmenuMatchSel', s:cyan, s:selection)
hi! link Question DraculaFgBold hi! link Question DraculaFgBold
hi! link Search DraculaSearch hi! link Search DraculaSearch
call s:h('SignColumn', s:comment) call s:h('SignColumn', s:comment)
hi! link TabLine DraculaBoundary hi! link TabLine DraculaBoundary
hi! link TabLineFill DraculaBgDarker hi! link TabLineFill DraculaBgDark
hi! link TabLineSel Normal hi! link TabLineSel Normal
hi! link Title DraculaGreenBold hi! link Title DraculaGreenBold
hi! link VertSplit DraculaBoundary hi! link VertSplit DraculaWinSeparator
hi! link Visual DraculaSelection hi! link Visual DraculaSelection
hi! link VisualNOS Visual hi! link VisualNOS Visual
hi! link WarningMsg DraculaOrangeInverse hi! link WarningMsg DraculaOrangeInverse
@ -234,17 +263,51 @@ call s:h('Conceal', s:cyan, s:none)
" Neovim uses SpecialKey for escape characters only. Vim uses it for that, plus whitespace. " Neovim uses SpecialKey for escape characters only. Vim uses it for that, plus whitespace.
if has('nvim') if has('nvim')
hi! link SpecialKey DraculaRed hi! link SpecialKey DraculaRed
hi! link LspDiagnosticsUnderline DraculaFgUnderline hi! link LspReferenceText DraculaSelection
hi! link LspDiagnosticsInformation DraculaCyan hi! link LspReferenceRead DraculaSelection
hi! link LspDiagnosticsHint DraculaCyan hi! link LspReferenceWrite DraculaSelection
hi! link LspDiagnosticsError DraculaError " Link old 'LspDiagnosticsDefault*' hl groups
hi! link LspDiagnosticsWarning DraculaOrange " for backward compatibility with neovim v0.5.x
hi! link LspDiagnosticsUnderlineError DraculaErrorLine hi! link LspDiagnosticsDefaultInformation DiagnosticInfo
hi! link LspDiagnosticsUnderlineHint DraculaInfoLine hi! link LspDiagnosticsDefaultHint DiagnosticHint
hi! link LspDiagnosticsUnderlineInformation DraculaInfoLine hi! link LspDiagnosticsDefaultError DiagnosticError
hi! link LspDiagnosticsUnderlineWarning DraculaWarnLine hi! link LspDiagnosticsDefaultWarning DiagnosticWarn
hi! link LspDiagnosticsUnderlineError DiagnosticUnderlineError
hi! link LspDiagnosticsUnderlineHint DiagnosticUnderlineHint
hi! link LspDiagnosticsUnderlineInformation DiagnosticUnderlineInfo
hi! link LspDiagnosticsUnderlineWarning DiagnosticUnderlineWarn
hi! link LspInlayHint DraculaInlayHint
hi! link DiagnosticInfo DraculaCyan
hi! link DiagnosticHint DraculaCyan
hi! link DiagnosticError DraculaError
hi! link DiagnosticWarn DraculaOrange
hi! link DiagnosticUnderlineError DraculaErrorLine
hi! link DiagnosticUnderlineHint DraculaInfoLine
hi! link DiagnosticUnderlineInfo DraculaInfoLine
hi! link DiagnosticUnderlineWarn DraculaWarnLine
hi! link WinSeparator DraculaWinSeparator
if has('nvim-0.9')
hi! link @lsp.type.class DraculaCyan
hi! link @lsp.type.decorator DraculaGreen
hi! link @lsp.type.enum DraculaCyan
hi! link @lsp.type.enumMember DraculaPurple
hi! link @lsp.type.function DraculaGreen
hi! link @lsp.type.interface DraculaCyan
hi! link @lsp.type.macro DraculaCyan
hi! link @lsp.type.method DraculaGreen
hi! link @lsp.type.namespace DraculaCyan
hi! link @lsp.type.parameter DraculaOrangeItalic
hi! link @lsp.type.property DraculaOrange
hi! link @lsp.type.struct DraculaCyan
hi! link @lsp.type.type DraculaCyanItalic
hi! link @lsp.type.typeParameter DraculaPink
hi! link @lsp.type.variable DraculaFg
endif
else else
hi! link SpecialKey DraculaSubtle hi! link SpecialKey DraculaPink
endif endif
hi! link Comment DraculaComment hi! link Comment DraculaComment
@ -296,6 +359,628 @@ hi! link helpCommand DraculaPurple
hi! link helpExample DraculaGreen hi! link helpExample DraculaGreen
hi! link helpBacktick Special hi! link helpBacktick Special
"}}} " }}}
" Languages: {{{
" CSS: {{{
hi! link cssAttrComma Delimiter
hi! link cssAttrRegion DraculaPink
hi! link cssAttributeSelector DraculaGreenItalic
hi! link cssBraces Delimiter
hi! link cssFunctionComma Delimiter
hi! link cssNoise DraculaPink
hi! link cssProp DraculaCyan
hi! link cssPseudoClass DraculaPink
hi! link cssPseudoClassId DraculaGreenItalic
hi! link cssUnitDecorators DraculaPink
hi! link cssVendor DraculaGreenItalic
" }}}
" Git Commit: {{{
" The following two are misnomers. Colors are correct.
hi! link diffFile DraculaGreen
hi! link diffNewFile DraculaRed
hi! link diffAdded DraculaGreen
hi! link diffLine DraculaCyanItalic
hi! link diffRemoved DraculaRed
" }}}
" HTML: {{{
hi! link htmlTag DraculaFg
hi! link htmlArg DraculaGreenItalic
hi! link htmlTitle DraculaFg
hi! link htmlH1 DraculaFg
hi! link htmlSpecialChar DraculaPurple
" }}}
" JavaScript: {{{
hi! link javaScriptBraces Delimiter
hi! link javaScriptNumber Constant
hi! link javaScriptNull Constant
hi! link javaScriptFunction Keyword
" pangloss/vim-javascript
hi! link jsArrowFunction Operator
hi! link jsBuiltins DraculaCyan
hi! link jsClassDefinition DraculaCyan
hi! link jsClassMethodType Keyword
hi! link jsDestructuringAssignment DraculaOrangeItalic
hi! link jsDocParam DraculaOrangeItalic
hi! link jsDocTags Keyword
hi! link jsDocType Type
hi! link jsDocTypeBrackets DraculaCyan
hi! link jsFuncArgOperator Operator
hi! link jsFuncArgs DraculaOrangeItalic
hi! link jsFunction Keyword
hi! link jsNull Constant
hi! link jsObjectColon DraculaPink
hi! link jsSuper DraculaPurpleItalic
hi! link jsTemplateBraces Special
hi! link jsThis DraculaPurpleItalic
hi! link jsUndefined Constant
" maxmellon/vim-jsx-pretty
hi! link jsxTag Keyword
hi! link jsxTagName Keyword
hi! link jsxComponentName Type
hi! link jsxCloseTag Type
hi! link jsxAttrib DraculaGreenItalic
hi! link jsxCloseString Identifier
hi! link jsxOpenPunct Identifier
" }}}
" JSON: {{{
hi! link jsonKeyword DraculaCyan
hi! link jsonKeywordMatch DraculaPink
" }}}
" Lua: {{{
hi! link luaFunc DraculaCyan
hi! link luaTable DraculaFg
" tbastos/vim-lua
hi! link luaBraces DraculaFg
hi! link luaBuiltIn Constant
hi! link luaDocTag Keyword
hi! link luaErrHand DraculaCyan
hi! link luaFuncArgName DraculaOrangeItalic
hi! link luaFuncCall Function
hi! link luaLocal Keyword
hi! link luaSpecialTable Constant
hi! link luaSpecialValue DraculaCyan
" }}}
" Markdown: {{{
hi! link markdownBlockquote DraculaCyan
hi! link markdownBold DraculaOrangeBold
hi! link markdownBoldItalic DraculaOrangeBoldItalic
hi! link markdownCodeBlock DraculaGreen
hi! link markdownCode DraculaGreen
hi! link markdownCodeDelimiter DraculaGreen
hi! link markdownH1 DraculaPurpleBold
hi! link markdownH2 markdownH1
hi! link markdownH3 markdownH1
hi! link markdownH4 markdownH1
hi! link markdownH5 markdownH1
hi! link markdownH6 markdownH1
hi! link markdownHeadingDelimiter markdownH1
hi! link markdownHeadingRule markdownH1
hi! link markdownItalic DraculaYellowItalic
hi! link markdownLinkText DraculaPink
hi! link markdownListMarker DraculaCyan
hi! link markdownOrderedListMarker DraculaCyan
hi! link markdownRule DraculaComment
hi! link markdownUrl DraculaLink
" plasticboy/vim-markdown
hi! link htmlBold DraculaOrangeBold
hi! link htmlBoldItalic DraculaOrangeBoldItalic
hi! link htmlH1 DraculaPurpleBold
hi! link htmlItalic DraculaYellowItalic
hi! link mkdBlockquote DraculaYellowItalic
hi! link mkdBold DraculaOrangeBold
hi! link mkdBoldItalic DraculaOrangeBoldItalic
hi! link mkdCode DraculaGreen
hi! link mkdCodeEnd DraculaGreen
hi! link mkdCodeStart DraculaGreen
hi! link mkdHeading DraculaPurpleBold
hi! link mkdInlineUrl DraculaLink
hi! link mkdItalic DraculaYellowItalic
hi! link mkdLink DraculaPink
hi! link mkdListItem DraculaCyan
hi! link mkdRule DraculaComment
hi! link mkdUrl DraculaLink
" }}}
" OCaml: {{{
hi! link ocamlModule Type
hi! link ocamlModPath Normal
hi! link ocamlLabel DraculaOrangeItalic
" }}}
" Perl: {{{
" Regex
hi! link perlMatchStartEnd DraculaRed
" Builtin functions
hi! link perlOperator DraculaCyan
hi! link perlStatementFiledesc DraculaCyan
hi! link perlStatementFiles DraculaCyan
hi! link perlStatementFlow DraculaCyan
hi! link perlStatementHash DraculaCyan
hi! link perlStatementIOfunc DraculaCyan
hi! link perlStatementIPC DraculaCyan
hi! link perlStatementList DraculaCyan
hi! link perlStatementMisc DraculaCyan
hi! link perlStatementNetwork DraculaCyan
hi! link perlStatementNumeric DraculaCyan
hi! link perlStatementProc DraculaCyan
hi! link perlStatementPword DraculaCyan
hi! link perlStatementRegexp DraculaCyan
hi! link perlStatementScalar DraculaCyan
hi! link perlStatementSocket DraculaCyan
hi! link perlStatementTime DraculaCyan
hi! link perlStatementVector DraculaCyan
" Highlighting for quoting constructs, tied to existing option in vim-perl
if get(g:, 'perl_string_as_statement', 0)
hi! link perlStringStartEnd DraculaRed
endif
" Signatures
hi! link perlSignature DraculaOrangeItalic
hi! link perlSubPrototype DraculaOrangeItalic
" Hash keys
hi! link perlVarSimpleMemberName DraculaPurple
" }}}
" PHP: {{{
hi! link phpClass Type
hi! link phpClasses Type
hi! link phpDocTags DraculaCyanItalic
hi! link phpFunction Function
hi! link phpParent Normal
hi! link phpSpecialFunction DraculaCyan
" }}}
" PlantUML: {{{
hi! link plantumlClassPrivate SpecialKey
hi! link plantumlClassProtected DraculaOrange
hi! link plantumlClassPublic Function
hi! link plantumlColonLine String
hi! link plantumlDirectedOrVerticalArrowLR Constant
hi! link plantumlDirectedOrVerticalArrowRL Constant
hi! link plantumlHorizontalArrow Constant
hi! link plantumlSkinParamKeyword DraculaCyan
hi! link plantumlTypeKeyword Keyword
" }}}
" PureScript: {{{
hi! link purescriptModule Type
hi! link purescriptImport DraculaCyan
hi! link purescriptImportAs DraculaCyan
hi! link purescriptOperator Operator
hi! link purescriptBacktick Operator
" }}}
" Python: {{{
hi! link pythonBuiltinObj Type
hi! link pythonBuiltinObject Type
hi! link pythonBuiltinType Type
hi! link pythonClassVar DraculaPurpleItalic
hi! link pythonExClass Type
hi! link pythonNone Type
hi! link pythonRun Comment
" }}}
" reStructuredText: {{{
hi! link rstComment Comment
hi! link rstTransition Comment
hi! link rstCodeBlock DraculaGreen
hi! link rstInlineLiteral DraculaGreen
hi! link rstLiteralBlock DraculaGreen
hi! link rstQuotedLiteralBlock DraculaGreen
hi! link rstStandaloneHyperlink DraculaLink
hi! link rstStrongEmphasis DraculaOrangeBold
hi! link rstSections DraculaPurpleBold
hi! link rstEmphasis DraculaYellowItalic
hi! link rstDirective Keyword
hi! link rstSubstitutionDefinition Keyword
hi! link rstCitation String
hi! link rstExDirective String
hi! link rstFootnote String
hi! link rstCitationReference Tag
hi! link rstFootnoteReference Tag
hi! link rstHyperLinkReference Tag
hi! link rstHyperlinkTarget Tag
hi! link rstInlineInternalTargets Tag
hi! link rstInterpretedTextOrHyperlinkReference Tag
hi! link rstTodo Todo
" }}}
" Ruby: {{{
if ! exists('g:ruby_operators')
let g:ruby_operators=1
endif
hi! link rubyBlockArgument DraculaOrangeItalic
hi! link rubyBlockParameter DraculaOrangeItalic
hi! link rubyCurlyBlock DraculaPink
hi! link rubyGlobalVariable DraculaPurple
hi! link rubyInstanceVariable DraculaPurpleItalic
hi! link rubyInterpolationDelimiter DraculaPink
hi! link rubyRegexpDelimiter DraculaRed
hi! link rubyStringDelimiter DraculaYellow
" }}}
" Rust: {{{
hi! link rustCommentLineDoc Comment
" }}}
" Sass: {{{
hi! link sassClass cssClassName
hi! link sassClassChar cssClassNameDot
hi! link sassId cssIdentifier
hi! link sassIdChar cssIdentifier
hi! link sassInterpolationDelimiter DraculaPink
hi! link sassMixinName Function
hi! link sassProperty cssProp
hi! link sassVariableAssignment Operator
" }}}
" Shell: {{{
hi! link shCommandSub NONE
hi! link shEscape DraculaRed
hi! link shParen NONE
hi! link shParenError NONE
" }}}
" Tex: {{{
hi! link texBeginEndName DraculaOrangeItalic
hi! link texBoldItalStyle DraculaOrangeBoldItalic
hi! link texBoldStyle DraculaOrangeBold
hi! link texInputFile DraculaOrangeItalic
hi! link texItalStyle DraculaYellowItalic
hi! link texLigature DraculaPurple
hi! link texMath DraculaPurple
hi! link texMathMatcher DraculaPurple
hi! link texMathSymbol DraculaPurple
hi! link texSpecialChar DraculaPurple
hi! link texSubscripts DraculaPurple
hi! link texTitle DraculaFgBold
" }}}
" Typescript: {{{
hi! link typescriptAliasDeclaration Type
hi! link typescriptArrayMethod Function
hi! link typescriptArrowFunc Operator
hi! link typescriptArrowFuncArg DraculaOrangeItalic
hi! link typescriptAssign Operator
hi! link typescriptBOMWindowProp Constant
hi! link typescriptBinaryOp Operator
hi! link typescriptBraces Delimiter
hi! link typescriptCall typescriptArrowFuncArg
hi! link typescriptClassHeritage Type
hi! link typescriptClassName Type
hi! link typescriptDateMethod DraculaCyan
hi! link typescriptDateStaticMethod Function
hi! link typescriptDecorator DraculaGreenItalic
hi! link typescriptDefaultParam Operator
hi! link typescriptES6SetMethod DraculaCyan
hi! link typescriptEndColons Delimiter
hi! link typescriptEnum Type
hi! link typescriptEnumKeyword Keyword
hi! link typescriptFuncComma Delimiter
hi! link typescriptFuncKeyword Keyword
hi! link typescriptFuncType DraculaOrangeItalic
hi! link typescriptFuncTypeArrow Operator
hi! link typescriptGlobal Type
hi! link typescriptGlobalMethod DraculaCyan
hi! link typescriptGlobalObjects Type
hi! link typescriptIdentifier DraculaPurpleItalic
hi! link typescriptInterfaceHeritage Type
hi! link typescriptInterfaceName Type
hi! link typescriptInterpolationDelimiter Keyword
hi! link typescriptKeywordOp Keyword
hi! link typescriptLogicSymbols Operator
hi! link typescriptMember Identifier
hi! link typescriptMemberOptionality Special
hi! link typescriptObjectColon Special
hi! link typescriptObjectLabel Identifier
hi! link typescriptObjectSpread Operator
hi! link typescriptOperator Operator
hi! link typescriptParamImpl DraculaOrangeItalic
hi! link typescriptParens Delimiter
hi! link typescriptPredefinedType Type
hi! link typescriptRestOrSpread Operator
hi! link typescriptTernaryOp Operator
hi! link typescriptTypeAnnotation Special
hi! link typescriptTypeCast Operator
hi! link typescriptTypeParameter DraculaOrangeItalic
hi! link typescriptTypeReference Type
hi! link typescriptUnaryOp Operator
hi! link typescriptVariable Keyword
hi! link tsxAttrib DraculaGreenItalic
hi! link tsxEqual Operator
hi! link tsxIntrinsicTagName Keyword
hi! link tsxTagName Type
" }}}
" Vim: {{{
hi! link vimAutoCmdSfxList Type
hi! link vimAutoEventList Type
hi! link vimEnvVar Constant
hi! link vimFunction Function
hi! link vimHiBang Keyword
hi! link vimOption Type
hi! link vimSetMod Keyword
hi! link vimSetSep Delimiter
hi! link vimUserAttrbCmpltFunc Function
hi! link vimUserFunc Function
" }}}
" XML: {{{
hi! link xmlAttrib DraculaGreenItalic
hi! link xmlEqual Operator
hi! link xmlTag Delimiter
hi! link xmlTagName Statement
" Fixes missing highlight over end tags
syn region xmlTagName
\ matchgroup=xmlTag start=+</[^ /!?<>"']\@=+
\ matchgroup=xmlTag end=+>+
" }}}
" YAML: {{{
hi! link yamlAlias DraculaGreenItalicUnderline
hi! link yamlAnchor DraculaPinkItalic
hi! link yamlBlockMappingKey DraculaCyan
hi! link yamlFlowCollection DraculaPink
hi! link yamlFlowIndicator Delimiter
hi! link yamlNodeTag DraculaPink
hi! link yamlPlainScalar DraculaYellow
" }}}
" }}}
" Plugins: {{{
" junegunn/fzf {{{
if ! exists('g:fzf_colors')
let g:fzf_colors = {
\ 'fg': ['fg', 'Normal'],
\ 'bg': ['bg', 'Normal'],
\ 'hl': ['fg', 'Search'],
\ 'fg+': ['fg', 'Normal'],
\ 'bg+': ['bg', 'Normal'],
\ 'hl+': ['fg', 'DraculaOrange'],
\ 'info': ['fg', 'DraculaPurple'],
\ 'border': ['fg', 'Ignore'],
\ 'prompt': ['fg', 'DraculaGreen'],
\ 'pointer': ['fg', 'Exception'],
\ 'marker': ['fg', 'Keyword'],
\ 'spinner': ['fg', 'Label'],
\ 'header': ['fg', 'Comment'],
\}
endif
" }}}
" dense-analysis/ale {{{
hi! link ALEError DraculaErrorLine
hi! link ALEWarning DraculaWarnLine
hi! link ALEInfo DraculaInfoLine
hi! link ALEErrorSign DraculaRed
hi! link ALEWarningSign DraculaOrange
hi! link ALEInfoSign DraculaCyan
hi! link ALEVirtualTextError Comment
hi! link ALEVirtualTextWarning Comment
" }}}
" ctrlpvim/ctrlp.vim: {{{
hi! link CtrlPMatch IncSearch
hi! link CtrlPBufferHid Normal
" }}}
" airblade/vim-gitgutter {{{
hi! link GitGutterAdd DiffAdd
hi! link GitGutterChange DiffChange
hi! link GitGutterDelete DiffDelete
" }}}
" Neovim-only plugins {{{
if has('nvim')
" nvim-treesitter/nvim-treesitter: {{{
" The nvim-treesitter library defines many global highlight groups that are
" linked to the regular vim syntax highlight groups. We only need to redefine
" those highlight groups when the defaults do not match the dracula
" specification.
" https://github.com/nvim-treesitter/nvim-treesitter/blob/master/plugin/nvim-treesitter.vim
" deprecated TS* highlight groups
" see https://github.com/nvim-treesitter/nvim-treesitter/pull/3656
" # Misc
hi! link TSPunctSpecial Special
" # Constants
hi! link TSConstMacro Macro
hi! link TSStringEscape Character
hi! link TSSymbol DraculaPurple
hi! link TSAnnotation DraculaYellow
hi! link TSAttribute DraculaGreenItalic
" # Functions
hi! link TSFuncBuiltin DraculaCyan
hi! link TSFuncMacro Function
hi! link TSParameter DraculaOrangeItalic
hi! link TSParameterReference DraculaOrange
hi! link TSField DraculaOrange
hi! link TSConstructor DraculaCyan
" # Keywords
hi! link TSLabel DraculaPurpleItalic
" # Variable
hi! link TSVariableBuiltin DraculaPurpleItalic
" # Text
hi! link TSStrong DraculaFgBold
hi! link TSEmphasis DraculaFg
hi! link TSUnderline Underlined
hi! link TSTitle DraculaYellow
hi! link TSLiteral DraculaYellow
hi! link TSURI DraculaYellow
" HTML and JSX tag attributes. By default, this group is linked to TSProperty,
" which in turn links to Identifer (white).
hi! link TSTagAttribute DraculaGreenItalic
if has('nvim-0.8.1')
" # Misc
hi! link @punctuation.delimiter Delimiter
hi! link @punctuation.bracket DraculaFg
hi! link @punctuation.special Special
hi! link @punctuation Delimiter
" # Constants
hi! link @constant Constant
hi! link @constant.builtin Constant
hi! link @constant.macro Macro
hi! link @string.regex @string.special
hi! link @string.escape @string.special
hi! link @string String
hi! link @string.regexp @string.special
hi! link @string.special SpecialChar
hi! link @string.special.symbol DraculaPurple
hi! link @string.special.url Underlined
hi! link @symbol DraculaPurple
hi! link @annotation DraculaYellow
hi! link @attribute DraculaGreenItalic
hi! link @namespace Structure
hi! link @module Structure
hi! link @module.builtin Special
" # Functions
hi! link @function.builtin DraculaCyan
hi! link @funcion.macro Function
hi! link @function Function
hi! link @parameter DraculaOrangeItalic
hi! link @parameter.reference DraculaOrange
hi! link @field DraculaOrange
hi! link @property DraculaFg
hi! link @constructor DraculaCyan
" # Keywords
hi! link @label DraculaPurpleItalic
hi! link @keyword.function DraculaPink
hi! link @keyword.operator Operator
hi! link @keyword Keyword
hi! link @exception DraculaPurple
hi! link @operator Operator
" # Types
hi! link @type Type
hi! link @type.builtin Special
hi! link @character Character
hi! link @character.special SpecialChar
hi! link @boolean Boolean
hi! link @number Number
hi! link @number.float Float
" # Variable
hi! link @variable DraculaFg
hi! link @variable.builtin DraculaPurpleItalic
hi! link @variable.parameter DraculaOrangeItalic
hi! link @variable.member DraculaOrange
" # Text
hi! link @text DraculaFg
hi! link @text.strong DraculaFgBold
hi! link @text.emphasis DraculaFg
hi! link @text.underline Underlined
hi! link @text.title DraculaYellow
hi! link @text.literal DraculaYellow
hi! link @text.uri DraculaYellow
hi! link @text.diff.add DiffAdd
hi! link @text.diff.delete DiffDelete
hi! link @markup.strong DraculaFgBold
hi! link @markup.italic DraculaFgItalic
hi! link @markup.strikethrough DraculaFgStrikethrough
hi! link @markup.underline Underlined
hi! link @markup Special
hi! link @markup.heading DraculaYellow
hi! link @markup.link Underlined
hi! link @markup.link.uri DraculaYellow
hi! link @markup.link.label SpecialChar
hi! link @markup.raw DraculaYellow
hi! link @markup.list Special
hi! link @comment Comment
hi! link @comment.error DiagnosticError
hi! link @comment.warning DiagnosticWarn
hi! link @comment.note DiagnosticInfo
hi! link @comment.todo Todo
hi! link @diff.plus Added
hi! link @diff.minus Removed
hi! link @diff.delta Changed
" # Tags
hi! link @tag DraculaCyan
hi! link @tag.delimiter DraculaFg
" HTML and JSX tag attributes. By default, this group is linked to TSProperty,
" which in turn links to Identifer (white).
hi! link @tag.attribute DraculaGreenItalic
endif
" }}}
" hrsh7th/nvim-cmp {{{
hi! link CmpItemAbbrDeprecated DraculaError
hi! link CmpItemAbbrMatch DraculaCyan
hi! link CmpItemAbbrMatchFuzzy DraculaCyan
hi! link CmpItemKindText DraculaFg
hi! link CmpItemKindMethod Function
hi! link CmpItemKindFunction Function
hi! link CmpItemKindConstructor DraculaCyan
hi! link CmpItemKindField DraculaOrange
hi! link CmpItemKindVariable DraculaPurpleItalic
hi! link CmpItemKindClass DraculaCyan
hi! link CmpItemKindInterface DraculaCyan
hi! link CmpItemKindModule DraculaYellow
hi! link CmpItemKindProperty DraculaPink
hi! link CmpItemKindUnit DraculaFg
hi! link CmpItemKindValue DraculaYellow
hi! link CmpItemKindEnum DraculaPink
hi! link CmpItemKindKeyword DraculaPink
hi! link CmpItemKindSnippet DraculaFg
hi! link CmpItemKindColor DraculaYellow
hi! link CmpItemKindFile DraculaYellow
hi! link CmpItemKindReference DraculaOrange
hi! link CmpItemKindFolder DraculaYellow
hi! link CmpItemKindEnumMember DraculaPurple
hi! link CmpItemKindConstant DraculaPurple
hi! link CmpItemKindStruct DraculaPink
hi! link CmpItemKindEvent DraculaFg
hi! link CmpItemKindOperator DraculaPink
hi! link CmpItemKindTypeParameter DraculaCyan
hi! link CmpItemMenu Comment
" }}}
" lewis6991/gitsigns.nvim {{{
hi! link GitSignsAdd DiffAdd
hi! link GitSignsAddLn DiffAdd
hi! link GitSignsAddNr DiffAdd
hi! link GitSignsChange DiffChange
hi! link GitSignsChangeLn DiffChange
hi! link GitSignsChangeNr DiffChange
hi! link GitSignsDelete DraculaRed
hi! link GitSignsDeleteLn DraculaRed
hi! link GitSignsDeleteNr DraculaRed
" }}}
endif
" }}}
" }}}
" vim: fdm=marker ts=2 sts=2 sw=2 fdl=0 et: " vim: fdm=marker ts=2 sts=2 sw=2 fdl=0 et:

View File

@ -75,6 +75,10 @@ Include bold attributes in highlighting >
Include italic attributes in highlighting > Include italic attributes in highlighting >
let g:dracula_italic = 1 let g:dracula_italic = 1
* *g:dracula_strikethrough*
Include strikethrough attributes in highlighting >
let g:dracula_strikethrough = 1
* *g:dracula_underline* * *g:dracula_underline*
Include underline attributes in highlighting > Include underline attributes in highlighting >
let g:dracula_underline = 1 let g:dracula_underline = 1
@ -83,6 +87,18 @@ Include underline attributes in highlighting >
Include undercurl attributes in highlighting (only if underline enabled) > Include undercurl attributes in highlighting (only if underline enabled) >
let g:dracula_undercurl = 1 let g:dracula_undercurl = 1
* *g:dracula_full_special_attrs_support*
Explicitly declare full support for special attributes. By default it is 1
for graphical applications and 0 for terminals and terminal emulators. On
terminal emulators, set to 1 to allow underline/undercurl highlights without
changing the foreground color. >
let g:dracula_full_special_attrs_support = 1
* *g:dracula_high_contrast_diff*
Use high-contrast color when in diff mode. By default it is disabled, set to
1 to enable it.
let g:dracula_high_contrast_diff = 1
* *g:dracula_inverse* * *g:dracula_inverse*
Include inverse attributes in highlighting > Include inverse attributes in highlighting >
let g:dracula_inverse = 1 let g:dracula_inverse = 1
@ -94,20 +110,46 @@ Include background fill colors >
================================================================================ ================================================================================
CUSTOMIZATION *dracula-pro-customization* CUSTOMIZATION *dracula-pro-customization*
Like all colorschemes, Dracula PRO is easy to customize with |autocmd|. Make use Like all colorschemes, Dracula PRO is easy to customize with |autocmd|. Make use
of the |ColorScheme| event as in the following examples. of the |ColorScheme| event as in the following examples. Like all autocommands,
it's best to put all of your personal changes in an |augroup|: >
It would be a good idea to put all of your personal changes in an |augroup|, augroup DraculaCustomization
which you can do with the following code: > autocmd!
augroup dracula_customization " Change the highlight group used with vim-gitgutter.
au! autocmd ColorScheme dracula highlight! link GitGutterDelete DraculaRed
" autocmds...
augroup END augroup END
>
- To add underline styling to |hl-CursorLine|, you can use the following: > colorscheme dracula
autocmd ColorScheme dracula_pro* hi CursorLine cterm=underline term=underline
< <
The autocommand must be defined before the colorscheme is set. To overwrite
any highlight link that is already established in `colors/dracula.vim`, you
will need to use the bang (!) modifier on the |hi-link| command.
For more than one customization, it will be easier to define a function that
can be called from the autocommand: >
function! s:customize_dracula() abort
" Link a highlight group to a predefined highlight group.
" See `colors/dracula.vim` for all predefined highlight groups.
" To overwrite a highlight link created in `colors/dracula.vim`, you
" will need to use the bang (!) modifier
highlight! link GitGutterDelete DraculaRed
" Customize existing highlight groups, for example adding underline.
highlight CursorLine cterm=underline term=underline
endfunction
augroup DraculaCustomization
autocmd!
autocmd ColorScheme dracula call s:customize_dracula()
augroup END
colorscheme dracula
<
================================================================================ ================================================================================
LICENSE *dracula-pro-license* LICENSE *dracula-pro-license*

View File

@ -1 +0,0 @@
doc/tags

View File

@ -1,63 +0,0 @@
### [Vim](http://www.vim.org/)
#### Install
These are the default instructions using Vim 8's `|packages|` feature.
1. Create theme folder (in case you don't have yet):
```
mkdir -p ~/.vim/pack/themes/start
```
In case you're using NeoVim:
```
mkdir -p ~/.local/share/nvim/site/pack/themes/start
```
2. Copy the `vim` folder and rename to "dracula_pro":
```
cp -r vim ~/.vim/pack/themes/start/dracula_pro
```
**NeoVim**
In case you're using NeoVim, here are the instructions.
1. Create theme folder (in case you don't have yet):
```
mkdir -p ~/.local/share/nvim/site/pack/themes/start
```
2. Copy the `vim` folder and rename to "dracula_pro":
```
cp -r vim ~/.local/share/nvim/site/pack/themes/start/dracula_pro
```
#### Activate
1. Create configuration file (in case you don't have yet):
```
vim ~/.vimrc
```
Or `.nvimrc` if you're using NeoVim.
2. Edit the `~/.vimrc` file with the following content:
```
packadd! dracula_pro
syntax enable
let g:dracula_colorterm = 0
colorscheme dracula_pro
```
P.S.: You need a 256-color or truecolor terminal and you may want one that supports xterm sequences for :terminal.

View File

@ -1,45 +0,0 @@
if dracula_pro#should_abort()
finish
endif
" Fzf: {{{
if exists('g:loaded_fzf') && ! exists('g:fzf_colors')
let g:fzf_colors = {
\ 'fg': ['fg', 'Normal'],
\ 'bg': ['bg', 'Normal'],
\ 'hl': ['fg', 'Search'],
\ 'fg+': ['fg', 'Normal'],
\ 'bg+': ['bg', 'Normal'],
\ 'hl+': ['fg', 'DraculaOrange'],
\ 'info': ['fg', 'DraculaPurple'],
\ 'border': ['fg', 'Ignore'],
\ 'prompt': ['fg', 'DraculaGreen'],
\ 'pointer': ['fg', 'Exception'],
\ 'marker': ['fg', 'Keyword'],
\ 'spinner': ['fg', 'Label'],
\ 'header': ['fg', 'Comment'],
\}
endif
"}}}
" ALE: {{{
if exists('g:ale_enabled')
hi! link ALEError DraculaErrorLine
hi! link ALEWarning DraculaWarnLine
hi! link ALEInfo DraculaInfoLine
hi! link ALEErrorSign DraculaRed
hi! link ALEWarningSign DraculaOrange
hi! link ALEInfoSign DraculaCyan
hi! link ALEVirtualTextError Comment
hi! link ALEVirtualTextWarning Comment
endif
" }}}
" CtrlP: {{{
if exists('g:loaded_ctrlp')
hi! link CtrlPMatch IncSearch
hi! link CtrlPBufferHid Normal
endif
" }}}
" vim: fdm=marker ts=2 sts=2 sw=2 fdl=0:

View File

@ -1,15 +0,0 @@
if dracula_pro#should_abort('css')
finish
endif
hi! link cssAttrComma Delimiter
hi! link cssAttrRegion DraculaPink
hi! link cssAttributeSelector DraculaGreenItalic
hi! link cssBraces Delimiter
hi! link cssFunctionComma Delimiter
hi! link cssNoise DraculaPink
hi! link cssProp DraculaCyan
hi! link cssPseudoClass DraculaPink
hi! link cssPseudoClassId DraculaGreenItalic
hi! link cssUnitDecorators DraculaPink
hi! link cssVendor DraculaGreenItalic

View File

@ -1,12 +0,0 @@
if dracula_pro#should_abort('gitcommit')
finish
endif
" The following two are misnomers. Colors are correct.
hi! link diffFile DraculaGreen
hi! link diffNewFile DraculaRed
hi! link diffAdded DraculaGreen
hi! link diffLine DraculaCyanItalic
hi! link diffRemoved DraculaRed

View File

@ -1,9 +0,0 @@
if dracula_pro#should_abort('html')
finish
endif
hi! link htmlTag DraculaFg
hi! link htmlArg DraculaGreenItalic
hi! link htmlTitle DraculaFg
hi! link htmlH1 DraculaFg
hi! link htmlSpecialChar DraculaPurple

View File

@ -1,25 +0,0 @@
if dracula_pro#should_abort('javascript')
finish
endif
hi! link javaScriptBraces Delimiter
hi! link javaScriptNumber Constant
hi! link javaScriptNull Constant
hi! link javaScriptFunction Keyword
" pangloss/vim-javascript {{{
hi! link jsArrowFunction Operator
hi! link jsClassMethodType Keyword
hi! link jsDestructuringAssignment DraculaOrangeItalic
hi! link jsDocParam DraculaOrangeItalic
hi! link jsDocTags Keyword
hi! link jsDocType Type
hi! link jsDocTypeBrackets DraculaCyan
hi! link jsFuncArgOperator Operator
hi! link jsFunction Keyword
hi! link jsTemplateBraces Special
"}}}
" vim: fdm=marker ts=2 sts=2 sw=2 fdl=0:

View File

@ -1,6 +0,0 @@
if dracula_pro#should_abort('json')
finish
endif
hi! link jsonKeyword DraculaCyan
hi! link jsonKeywordMatch DraculaPink

View File

@ -1,50 +0,0 @@
if dracula_pro#should_abort('markdown', 'mkd')
finish
endif
if b:current_syntax ==# 'mkd'
" plasticboy/vim-markdown {{{1
hi! link htmlBold DraculaOrangeBold
hi! link htmlBoldItalic DraculaOrangeBoldItalic
hi! link htmlH1 DraculaPurpleBold
hi! link htmlItalic DraculaYellowItalic
hi! link mkdBlockquote DraculaYellowItalic
hi! link mkdBold DraculaOrangeBold
hi! link mkdBoldItalic DraculaOrangeBoldItalic
hi! link mkdCode DraculaGreen
hi! link mkdCodeEnd DraculaGreen
hi! link mkdCodeStart DraculaGreen
hi! link mkdHeading DraculaPurpleBold
hi! link mkdInlineUrl DraculaLink
hi! link mkdItalic DraculaYellowItalic
hi! link mkdLink DraculaPink
hi! link mkdListItem DraculaCyan
hi! link mkdRule DraculaComment
hi! link mkdUrl DraculaLink
"}}}1
elseif b:current_syntax ==# 'markdown'
" Builtin: {{{1
hi! link markdownBlockquote DraculaCyan
hi! link markdownBold DraculaOrangeBold
hi! link markdownBoldItalic DraculaOrangeBoldItalic
hi! link markdownCodeBlock DraculaGreen
hi! link markdownCode DraculaGreen
hi! link markdownCodeDelimiter DraculaGreen
hi! link markdownH1 DraculaPurpleBold
hi! link markdownH2 markdownH1
hi! link markdownH3 markdownH1
hi! link markdownH4 markdownH1
hi! link markdownH5 markdownH1
hi! link markdownH6 markdownH1
hi! link markdownHeadingDelimiter markdownH1
hi! link markdownHeadingRule markdownH1
hi! link markdownItalic DraculaYellowItalic
hi! link markdownLinkText DraculaPink
hi! link markdownListMarker DraculaCyan
hi! link markdownOrderedListMarker DraculaCyan
hi! link markdownRule DraculaComment
hi! link markdownUrl DraculaLink
"}}}
endif
" vim: fdm=marker ts=2 sts=2 sw=2 fdl=0:

View File

@ -1,7 +0,0 @@
if dracula_pro#should_abort('ocaml')
finish
endif
hi! link ocamlModule Type
hi! link ocamlModPath Normal
hi! link ocamlLabel DraculaOrangeItalic

View File

@ -1,38 +0,0 @@
if dracula_pro#should_abort('perl')
finish
endif
" Regex
hi! link perlMatchStartEnd DraculaRed
" Builtin functions
hi! link perlOperator DraculaCyan
hi! link perlStatementFiledesc DraculaCyan
hi! link perlStatementFiles DraculaCyan
hi! link perlStatementFlow DraculaCyan
hi! link perlStatementHash DraculaCyan
hi! link perlStatementIOfunc DraculaCyan
hi! link perlStatementIPC DraculaCyan
hi! link perlStatementList DraculaCyan
hi! link perlStatementMisc DraculaCyan
hi! link perlStatementNetwork DraculaCyan
hi! link perlStatementNumeric DraculaCyan
hi! link perlStatementProc DraculaCyan
hi! link perlStatementPword DraculaCyan
hi! link perlStatementRegexp DraculaCyan
hi! link perlStatementScalar DraculaCyan
hi! link perlStatementSocket DraculaCyan
hi! link perlStatementTime DraculaCyan
hi! link perlStatementVector DraculaCyan
" Highlighting for quoting constructs, tied to existing option in vim-perl
if get(g:, 'perl_string_as_statement', 0)
hi! link perlStringStartEnd DraculaRed
endif
" Signatures
hi! link perlSignature DraculaOrangeItalic
hi! link perlSubPrototype DraculaOrangeItalic
" Hash keys
hi! link perlVarSimpleMemberName DraculaPurple

View File

@ -1,10 +0,0 @@
if dracula_pro#should_abort('php')
finish
endif
hi! link phpClass Type
hi! link phpClasses Type
hi! link phpDocTags DraculaCyanItalic
hi! link phpFunction Function
hi! link phpParent Normal
hi! link phpSpecialFunction DraculaCyan

View File

@ -1,13 +0,0 @@
if dracula_pro#should_abort('plantuml')
finish
endif
hi! link plantumlClassPrivate SpecialKey
hi! link plantumlClassProtected DraculaOrange
hi! link plantumlClassPublic Function
hi! link plantumlColonLine String
hi! link plantumlDirectedOrVerticalArrowLR Constant
hi! link plantumlDirectedOrVerticalArrowRL Constant
hi! link plantumlHorizontalArrow Constant
hi! link plantumlSkinParamKeyword DraculaCyan
hi! link plantumlTypeKeyword Keyword

View File

@ -1,11 +0,0 @@
if dracula_pro#should_abort('python')
finish
endif
hi! link pythonBuiltinObj Type
hi! link pythonBuiltinObject Type
hi! link pythonBuiltinType Type
hi! link pythonClassVar DraculaPurpleItalic
hi! link pythonExClass Type
hi! link pythonNone Type
hi! link pythonRun Comment

View File

@ -1,16 +0,0 @@
if dracula_pro#should_abort('ruby')
finish
endif
if ! exists('g:ruby_operators')
let g:ruby_operators=1
endif
hi! link rubyBlockArgument DraculaOrangeItalic
hi! link rubyBlockParameter DraculaOrangeItalic
hi! link rubyCurlyBlock DraculaPink
hi! link rubyGlobalVariable DraculaPurple
hi! link rubyInstanceVariable DraculaPurpleItalic
hi! link rubyInterpolationDelimiter DraculaPink
hi! link rubyRegexpDelimiter DraculaRed
hi! link rubyStringDelimiter DraculaYellow

View File

@ -1,5 +0,0 @@
if dracula_pro#should_abort('rust')
finish
endif
hi! link rustCommentLineDoc Comment

View File

@ -1,12 +0,0 @@
if dracula_pro#should_abort('sass')
finish
endif
hi! link sassClass cssClassName
hi! link sassClassChar cssClassNameDot
hi! link sassId cssIdentifier
hi! link sassIdChar cssIdentifier
hi! link sassInterpolationDelimiter DraculaPink
hi! link sassMixinName Function
hi! link sassProperty cssProp
hi! link sassVariableAssignment Operator

View File

@ -1,8 +0,0 @@
if dracula_pro#should_abort('bash', 'ksh', 'posix', 'sh')
finish
endif
hi! link shCommandSub NONE
hi! link shEscape DraculaRed
hi! link shParen NONE
hi! link shParenError NONE

View File

@ -1,17 +0,0 @@
if dracula_pro#should_abort('tex')
finish
endif
hi! link texBeginEndName DraculaOrangeItalic
hi! link texBoldItalStyle DraculaOrangeBoldItalic
hi! link texBoldStyle DraculaOrangeBold
hi! link texInputFile DraculaOrangeItalic
hi! link texItalStyle DraculaYellowItalic
hi! link texLigature DraculaPurple
hi! link texMath DraculaPurple
hi! link texMathMatcher DraculaPurple
hi! link texMathSymbol DraculaPurple
hi! link texRefZone DraculaBgDarker
hi! link texSpecialChar DraculaPurple
hi! link texSubscripts DraculaPurple
hi! link texTitle DraculaFgBold

View File

@ -1,57 +0,0 @@
if dracula_pro#should_abort('typescript', 'typescriptreact')
finish
endif
" HerringtonDarkholme/yats.vim {{{
hi! link typescriptAliasDeclaration Type
hi! link typescriptArrayMethod Function
hi! link typescriptArrowFunc Operator
hi! link typescriptArrowFuncArg DraculaOrangeItalic
hi! link typescriptAssign Operator
hi! link typescriptBOMWindowProp Constant
hi! link typescriptBinaryOp Operator
hi! link typescriptBraces Delimiter
hi! link typescriptCall typescriptArrowFuncArg
hi! link typescriptClassHeritage Type
hi! link typescriptClassName Type
hi! link typescriptDateMethod DraculaCyan
hi! link typescriptDateStaticMethod Function
hi! link typescriptDecorator DraculaGreenItalic
hi! link typescriptDefaultParam Operator
hi! link typescriptES6SetMethod DraculaCyan
hi! link typescriptEndColons Delimiter
hi! link typescriptEnum Type
hi! link typescriptEnumKeyword Keyword
hi! link typescriptFuncComma Delimiter
hi! link typescriptFuncKeyword Keyword
hi! link typescriptFuncType DraculaOrangeItalic
hi! link typescriptFuncTypeArrow Operator
hi! link typescriptGlobal Type
hi! link typescriptGlobalMethod DraculaCyan
hi! link typescriptGlobalObjects Type
hi! link typescriptIdentifier DraculaPurpleItalic
hi! link typescriptInterfaceHeritage Type
hi! link typescriptInterfaceName Type
hi! link typescriptInterpolationDelimiter Keyword
hi! link typescriptKeywordOp Keyword
hi! link typescriptLogicSymbols Operator
hi! link typescriptMember Identifier
hi! link typescriptMemberOptionality Special
hi! link typescriptObjectColon Special
hi! link typescriptObjectLabel Identifier
hi! link typescriptObjectSpread Operator
hi! link typescriptOperator Operator
hi! link typescriptParamImpl DraculaOrangeItalic
hi! link typescriptParens Delimiter
hi! link typescriptPredefinedType Type
hi! link typescriptRestOrSpread Operator
hi! link typescriptTernaryOp Operator
hi! link typescriptTypeAnnotation Special
hi! link typescriptTypeCast Operator
hi! link typescriptTypeParameter DraculaOrangeItalic
hi! link typescriptTypeReference Type
hi! link typescriptUnaryOp Operator
hi! link typescriptVariable Keyword
" }}}

View File

@ -1,10 +0,0 @@
if dracula_pro#should_abort('typescriptreact')
finish
endif
runtime! syntax/typescript.vim
hi! link tsxAttrib DraculaGreenItalic
hi! link tsxEqual Operator
hi! link tsxIntrinsicTagName Keyword
hi! link tsxTagName Type

View File

@ -1,14 +0,0 @@
if dracula_pro#should_abort('vim')
finish
endif
hi! link vimAutoCmdSfxList Type
hi! link vimAutoEventList Type
hi! link vimEnvVar Constant
hi! link vimFunction Function
hi! link vimHiBang Keyword
hi! link vimOption Type
hi! link vimSetMod Keyword
hi! link vimSetSep Delimiter
hi! link vimUserAttrbCmpltFunc Function
hi! link vimUserFunc Function

View File

@ -1,13 +0,0 @@
if dracula_pro#should_abort('xml')
finish
endif
hi! link xmlAttrib DraculaGreenItalic
hi! link xmlEqual Operator
hi! link xmlTag Delimiter
hi! link xmlTagName Statement
" Fixes missing highlight over end tags
syn region xmlTagName
\ matchgroup=xmlTag start=+</[^ /!?<>"']\@=+
\ matchgroup=xmlTag end=+>+

View File

@ -1,12 +0,0 @@
if dracula_pro#should_abort('yaml')
finish
endif
hi! link yamlAlias DraculaGreenItalicUnderline
hi! link yamlAnchor DraculaPinkItalic
hi! link yamlBlockMappingKey DraculaCyan
hi! link yamlFlowCollection DraculaPink
hi! link yamlFlowIndicator Delimiter
hi! link yamlNodeTag DraculaPink
hi! link yamlPlainScalar DraculaYellow

View File

@ -1,150 +0,0 @@
" Helpers: {{{
" Takes a foreground color name, background color name, and optionally one or
" more attr-list items as input, transforms it to the format accepted by
" airline#themes#generate_color_map and returns that value
func! s:clr(fg, bg, ...)
let l:fg = g:dracula_pro#palette[a:fg]
let l:bg = g:dracula_pro#palette[a:bg]
return [ l:fg[0], l:bg[0], l:fg[1], l:bg[1] ] +
\ filter(copy(a:000), 'type(v:val) == 1 && len(v:val) > 0')
endfunc
" Takes three ['fg', 'bg'] color lists and optionally a dictionary of extra
" key-value pairs and returns the value generated by
" airline#themes#generate_color_map after optionally merging the dictionary of
" extra key-value pairs.
"
" a:a -> airline_a, airline_x
" a:b -> airline_b, airline_y
" a:c -> airline_c, airline_z
func! s:color_map(a, b, c, ...)
if a:0 == 0
return call('airline#themes#generate_color_map', [call('s:clr', a:a), call('s:clr', a:b), call('s:clr', a:c)])
else
return call('extend', [ call('airline#themes#generate_color_map', [call('s:clr', a:a), call('s:clr', a:b), call('s:clr', a:c)]) ] + a:000)
endif
endfunc
"}}}
let g:airline#themes#dracula_pro#palette = {
\ 'normal': s:color_map(
\ ['bg', 'purple'],
\ ['fg', 'comment'],
\ ['fg', 'selection'],
\ {
\ 'airline_warning': s:clr('bg', 'orange'),
\ 'airline_error': s:clr('bg', 'red'),
\ },
\ ),
\ 'normal_modified': s:color_map(
\ ['bg', 'purple'],
\ ['fg', 'comment'],
\ ['fg', 'bgdark'],
\ {
\ 'airline_warning': s:clr('bg', 'orange'),
\ 'airline_error': s:clr('bg', 'red'),
\ },
\ ),
\ 'insert': s:color_map(
\ ['bg', 'green'],
\ ['fg', 'comment'],
\ ['fg', 'selection'],
\ {
\ 'airline_warning': s:clr('bg', 'orange'),
\ 'airline_error': s:clr('bg', 'red'),
\ },
\ ),
\ 'insert_modified': s:color_map(
\ ['bg', 'green'],
\ ['fg', 'comment'],
\ ['fg', 'bgdark'],
\ {
\ 'airline_warning': s:clr('bg', 'orange'),
\ 'airline_error': s:clr('bg', 'red'),
\ },
\ ),
\ 'replace': s:color_map(
\ ['bg', 'orange'],
\ ['fg', 'comment'],
\ ['fg', 'selection'],
\ {
\ 'airline_warning': s:clr('bg', 'orange'),
\ 'airline_error': s:clr('bg', 'red'),
\ },
\ ),
\ 'replace_modified': s:color_map(
\ ['bg', 'orange'],
\ ['fg', 'comment'],
\ ['fg', 'bgdark'],
\ {
\ 'airline_warning': s:clr('bg', 'orange'),
\ 'airline_error': s:clr('bg', 'red'),
\ },
\ ),
\ 'visual': s:color_map(
\ ['bg', 'yellow'],
\ ['fg', 'comment'],
\ ['fg', 'selection'],
\ {
\ 'airline_warning': s:clr('bg', 'orange'),
\ 'airline_error': s:clr('bg', 'red'),
\ },
\ ),
\ 'visual_modified': s:color_map(
\ ['bg', 'yellow'],
\ ['fg', 'comment'],
\ ['fg', 'bgdark'],
\ {
\ 'airline_warning': s:clr('bg', 'orange'),
\ 'airline_error': s:clr('bg', 'red'),
\ },
\ ),
\ 'inactive': s:color_map(
\ ['bg', 'comment'],
\ ['fg', 'bgdark'],
\ ['fg', 'selection'],
\ {
\ 'airline_warning': s:clr('bg', 'orange'),
\ 'airline_error': s:clr('bg', 'red'),
\ },
\ ),
\ 'terminal': s:color_map(
\ ['bg', 'purple'],
\ ['fg', 'comment'],
\ ['fg', 'selection'],
\ {
\ 'airline_term': s:clr('fg', 'selection'),
\ },
\ ),
\}
" Extensions: {{{
" Tabline: {{{
if get(g:, 'airline#extensions#tabline#enabled', 0)
let g:airline#themes#dracula_pro#palette.tabline = {
\ 'airline_tabfill': s:clr('bg', 'bglight'),
\
\ 'airline_tab': s:clr('comment', 'bg'),
\ 'airline_tabsel': s:clr('bg', 'purple'),
\ 'airline_tabmod': s:clr('green', 'bg'),
\
\ 'airline_tab_right': s:clr('comment', 'bg'),
\ 'airline_tabsel_right': s:clr('fg', 'bg', ),
\ 'airline_tabmod_right': s:clr('green', 'bg'),
\}
endif
"}}}
" CtrlP: {{{2
if exists('g:loaded_ctrlp')
let g:airline#themes#dracula_pro#palette.ctrlp = airline#extensions#ctrlp#generate_color_map(
\ s:clr('fg', 'selection'),
\ s:clr('fg', 'comment'),
\ s:clr('fg', 'purple'),
\)
endif
"}}}2
"}}}
" vim: fdm=marker ts=2 sts=2 sw=2 fdl=0:

View File

@ -1,57 +0,0 @@
" Palette: {{{
let g:dracula_pro#palette = {}
let g:dracula_pro#palette.fg = ['#F8F8F2', 231]
let g:dracula_pro#palette.bglighter = ['#393649', 59]
let g:dracula_pro#palette.bglight = ['#2E2B3B', 59]
let g:dracula_pro#palette.bg = ['#22212C', 59]
let g:dracula_pro#palette.bgdark = ['#17161D', 17]
let g:dracula_pro#palette.bgdarker = ['#0B0B0F', 16]
let g:dracula_pro#palette.comment = ['#7970A9', 103]
let g:dracula_pro#palette.selection = ['#454158', 60]
let g:dracula_pro#palette.subtle = ['#424450', 60]
let g:dracula_pro#palette.cyan = ['#80FFEA', 159]
let g:dracula_pro#palette.green = ['#8AFF80', 157]
let g:dracula_pro#palette.orange = ['#FFCA80', 223]
let g:dracula_pro#palette.pink = ['#FF80BF', 218]
let g:dracula_pro#palette.purple = ['#9580FF', 147]
let g:dracula_pro#palette.red = ['#FF9580', 217]
let g:dracula_pro#palette.yellow = ['#FFFF80', 229]
"
" ANSI
"
let g:dracula_pro#palette.color_0 = '#454158'
let g:dracula_pro#palette.color_1 = '#FF9580'
let g:dracula_pro#palette.color_2 = '#8AFF80'
let g:dracula_pro#palette.color_3 = '#FFFF80'
let g:dracula_pro#palette.color_4 = '#9580FF'
let g:dracula_pro#palette.color_5 = '#FF80BF'
let g:dracula_pro#palette.color_6 = '#80FFEA'
let g:dracula_pro#palette.color_7 = '#F8F8F2'
let g:dracula_pro#palette.color_8 = '#7970A9'
let g:dracula_pro#palette.color_9 = '#FFAA99'
let g:dracula_pro#palette.color_10 = '#A2FF99'
let g:dracula_pro#palette.color_11 = '#FFFF99'
let g:dracula_pro#palette.color_12 = '#AA99FF'
let g:dracula_pro#palette.color_13 = '#FF99CC'
let g:dracula_pro#palette.color_14 = '#99FFEE'
let g:dracula_pro#palette.color_15 = '#FFFFFF'
" }}}
" Helper function that takes a variadic list of filetypes as args and returns
" whether or not the execution of the ftplugin should be aborted.
func! dracula_pro#should_abort(...)
if ! exists('g:colors_name') || g:colors_name !~# 'dracula_pro.*'
return 1
elseif a:0 > 0 && (! exists('b:current_syntax') || index(a:000, b:current_syntax) == -1)
return 1
endif
return 0
endfunction
" vim: fdm=marker ts=2 sts=2 sw=2 fdl=0:

View File

@ -1,35 +0,0 @@
let s:black = g:dracula_pro#palette.bg
let s:gray = g:dracula_pro#palette.selection
let s:white = g:dracula_pro#palette.fg
let s:darkblue = g:dracula_pro#palette.comment
let s:cyan = g:dracula_pro#palette.cyan
let s:green = g:dracula_pro#palette.green
let s:orange = g:dracula_pro#palette.orange
let s:purple = g:dracula_pro#palette.purple
let s:red = g:dracula_pro#palette.red
let s:yellow = g:dracula_pro#palette.yellow
if exists('g:lightline')
let s:p = {'normal': {}, 'inactive': {}, 'insert': {}, 'replace': {}, 'visual': {}, 'tabline': {}}
let s:p.normal.left = [ [ s:black, s:purple ], [ s:cyan, s:gray ] ]
let s:p.normal.right = [ [ s:black, s:purple ], [ s:white, s:darkblue ] ]
let s:p.inactive.right = [ [ s:black, s:darkblue ], [ s:white, s:black ] ]
let s:p.inactive.left = [ [ s:cyan, s:black ], [ s:white, s:black ] ]
let s:p.insert.left = [ [ s:black, s:green ], [ s:cyan, s:gray ] ]
let s:p.replace.left = [ [ s:black, s:red ], [ s:cyan, s:gray ] ]
let s:p.visual.left = [ [ s:black, s:orange ], [ s:cyan, s:gray ] ]
let s:p.normal.middle = [ [ s:white, s:gray ] ]
let s:p.inactive.middle = [ [ s:white, s:gray ] ]
let s:p.tabline.left = [ [ s:darkblue, s:gray ] ]
let s:p.tabline.tabsel = [ [ s:cyan, s:black ] ]
let s:p.tabline.middle = [ [ s:darkblue, s:gray ] ]
let s:p.tabline.right = copy(s:p.normal.right)
let s:p.normal.error = [ [ s:red, s:black ] ]
let s:p.normal.warning = [ [ s:yellow, s:black ] ]
let g:lightline#colorscheme#dracula_pro#palette = lightline#colorscheme#flatten(s:p)
endif
" vim: fdm=marker ts=2 sts=2 sw=2 fdl=0:

View File

@ -1,14 +0,0 @@
runtime autoload/dracula_pro.vim
let g:dracula_pro#palette.comment = ['#7970A9', 103]
let g:dracula_pro#palette.selection = ['#454158', 60]
let g:dracula_pro#palette.bglighter = ['#393649', 59]
let g:dracula_pro#palette.bglight = ['#2E2B3B', 59]
let g:dracula_pro#palette.bg = ['#22212C', 59]
let g:dracula_pro#palette.bgdark = ['#17161D', 17]
let g:dracula_pro#palette.bgdarker = ['#0B0B0F', 16]
runtime colors/dracula_pro_base.vim
let g:colors_name = 'dracula_pro'

View File

@ -1,301 +0,0 @@
" Configuration: {{{
if v:version > 580
highlight clear
if exists('syntax_on')
syntax reset
endif
endif
let g:colors_name = 'dracula_pro'
if !(has('termguicolors') && &termguicolors) && !has('gui_running') && &t_Co != 256
finish
endif
" Palette: {{{2
let s:fg = g:dracula_pro#palette.fg
let s:bglighter = g:dracula_pro#palette.bglighter
let s:bglight = g:dracula_pro#palette.bglight
let s:bg = g:dracula_pro#palette.bg
let s:bgdark = g:dracula_pro#palette.bgdark
let s:bgdarker = g:dracula_pro#palette.bgdarker
let s:comment = g:dracula_pro#palette.comment
let s:selection = g:dracula_pro#palette.selection
let s:subtle = g:dracula_pro#palette.subtle
let s:cyan = g:dracula_pro#palette.cyan
let s:green = g:dracula_pro#palette.green
let s:orange = g:dracula_pro#palette.orange
let s:pink = g:dracula_pro#palette.pink
let s:purple = g:dracula_pro#palette.purple
let s:red = g:dracula_pro#palette.red
let s:yellow = g:dracula_pro#palette.yellow
let s:none = ['NONE', 'NONE']
if has('nvim')
for s:i in range(16)
let g:terminal_color_{s:i} = g:dracula_pro#palette['color_' . s:i]
endfor
endif
if has('terminal')
let g:terminal_ansi_colors = []
for s:i in range(16)
call add(g:terminal_ansi_colors, g:dracula_pro#palette['color_' . s:i])
endfor
endif
" }}}2
" User Configuration: {{{2
if !exists('g:dracula_bold')
let g:dracula_bold = 1
endif
if !exists('g:dracula_italic')
let g:dracula_italic = 1
endif
if !exists('g:dracula_underline')
let g:dracula_underline = 1
endif
if !exists('g:dracula_undercurl') && g:dracula_underline != 0
let g:dracula_undercurl = 1
endif
if !exists('g:dracula_inverse')
let g:dracula_inverse = 1
endif
if !exists('g:dracula_colorterm')
let g:dracula_colorterm = 1
endif
"}}}2
" Script Helpers: {{{2
let s:attrs = {
\ 'bold': g:dracula_bold == 1 ? 'bold' : 0,
\ 'italic': g:dracula_italic == 1 ? 'italic' : 0,
\ 'underline': g:dracula_underline == 1 ? 'underline' : 0,
\ 'undercurl': g:dracula_undercurl == 1 ? 'undercurl' : 0,
\ 'inverse': g:dracula_inverse == 1 ? 'inverse' : 0,
\}
function! s:h(scope, fg, ...) " bg, attr_list, special
let l:fg = copy(a:fg)
let l:bg = get(a:, 1, ['NONE', 'NONE'])
let l:attr_list = filter(get(a:, 2, ['NONE']), 'type(v:val) == 1')
let l:attrs = len(l:attr_list) > 0 ? join(l:attr_list, ',') : 'NONE'
" Falls back to coloring foreground group on terminals because
" nearly all do not support undercurl
let l:special = get(a:, 3, ['NONE', 'NONE'])
if l:special[0] !=# 'NONE' && l:fg[0] ==# 'NONE' && !has('gui_running')
let l:fg[0] = l:special[0]
let l:fg[1] = l:special[1]
endif
let l:hl_string = [
\ 'highlight!', a:scope,
\ 'guifg=' . l:fg[0], 'ctermfg=' . l:fg[1],
\ 'guibg=' . l:bg[0], 'ctermbg=' . l:bg[1],
\ 'gui=' . l:attrs, 'cterm=' . l:attrs,
\ 'guisp=' . l:special[0],
\]
execute join(l:hl_string, ' ')
endfunction
"}}}2
" Dracula Highlight Groups: {{{2
call s:h('DraculaBgLight', s:none, s:bglight)
call s:h('DraculaBgLighter', s:none, s:bglighter)
call s:h('DraculaBgDark', s:none, s:bgdark)
call s:h('DraculaBgDarker', s:none, s:bgdarker)
call s:h('DraculaFg', s:fg)
call s:h('DraculaFgUnderline', s:fg, s:none, [s:attrs.underline])
call s:h('DraculaFgBold', s:fg, s:none, [s:attrs.bold])
call s:h('DraculaComment', s:comment)
call s:h('DraculaCommentBold', s:comment, s:none, [s:attrs.bold])
call s:h('DraculaSelection', s:none, s:selection)
call s:h('DraculaSubtle', s:subtle)
call s:h('DraculaCyan', s:cyan)
call s:h('DraculaCyanItalic', s:cyan, s:none, [s:attrs.italic])
call s:h('DraculaGreen', s:green)
call s:h('DraculaGreenBold', s:green, s:none, [s:attrs.bold])
call s:h('DraculaGreenItalic', s:green, s:none, [s:attrs.italic])
call s:h('DraculaGreenItalicUnderline', s:green, s:none, [s:attrs.italic, s:attrs.underline])
call s:h('DraculaOrange', s:orange)
call s:h('DraculaOrangeBold', s:orange, s:none, [s:attrs.bold])
call s:h('DraculaOrangeItalic', s:orange, s:none, [s:attrs.italic])
call s:h('DraculaOrangeBoldItalic', s:orange, s:none, [s:attrs.bold, s:attrs.italic])
call s:h('DraculaOrangeInverse', s:bg, s:orange)
call s:h('DraculaPink', s:pink)
call s:h('DraculaPinkItalic', s:pink, s:none, [s:attrs.italic])
call s:h('DraculaPurple', s:purple)
call s:h('DraculaPurpleBold', s:purple, s:none, [s:attrs.bold])
call s:h('DraculaPurpleItalic', s:purple, s:none, [s:attrs.italic])
call s:h('DraculaRed', s:red)
call s:h('DraculaRedInverse', s:fg, s:red)
call s:h('DraculaYellow', s:yellow)
call s:h('DraculaYellowItalic', s:yellow, s:none, [s:attrs.italic])
call s:h('DraculaError', s:red, s:none, [], s:red)
call s:h('DraculaErrorLine', s:none, s:none, [s:attrs.undercurl], s:red)
call s:h('DraculaWarnLine', s:none, s:none, [s:attrs.undercurl], s:orange)
call s:h('DraculaInfoLine', s:none, s:none, [s:attrs.undercurl], s:cyan)
call s:h('DraculaTodo', s:cyan, s:none, [s:attrs.bold, s:attrs.inverse])
call s:h('DraculaSearch', s:green, s:none, [s:attrs.inverse])
call s:h('DraculaBoundary', s:comment, s:bgdark)
call s:h('DraculaLink', s:cyan, s:none, [s:attrs.underline])
call s:h('DraculaDiffChange', s:orange, s:none)
call s:h('DraculaDiffText', s:bg, s:orange)
call s:h('DraculaDiffDelete', s:red, s:bgdark)
" }}}2
" }}}
" User Interface: {{{
set background=dark
" Required as some plugins will overwrite
call s:h('Normal', s:fg, g:dracula_colorterm || has('gui_running') ? s:bg : s:none )
call s:h('StatusLine', s:none, s:bglighter, [s:attrs.bold])
call s:h('StatusLineNC', s:none, s:bglight)
call s:h('StatusLineTerm', s:none, s:bglighter, [s:attrs.bold])
call s:h('StatusLineTermNC', s:none, s:bglight)
call s:h('WildMenu', s:bg, s:purple, [s:attrs.bold])
call s:h('CursorLine', s:none, s:subtle)
hi! link ColorColumn DraculaBgDark
hi! link CursorColumn CursorLine
hi! link CursorLineNr DraculaYellow
hi! link DiffAdd DraculaGreen
hi! link DiffAdded DiffAdd
hi! link DiffChange DraculaDiffChange
hi! link DiffDelete DraculaDiffDelete
hi! link DiffRemoved DiffDelete
hi! link DiffText DraculaDiffText
hi! link Directory DraculaPurpleBold
hi! link ErrorMsg DraculaRedInverse
hi! link FoldColumn DraculaSubtle
hi! link Folded DraculaBoundary
hi! link IncSearch DraculaOrangeInverse
call s:h('LineNr', s:comment)
hi! link MoreMsg DraculaFgBold
hi! link NonText DraculaSubtle
hi! link Pmenu DraculaBgDark
hi! link PmenuSbar DraculaBgDark
hi! link PmenuSel DraculaSelection
hi! link PmenuThumb DraculaSelection
hi! link Question DraculaFgBold
hi! link Search DraculaSearch
call s:h('SignColumn', s:comment)
hi! link TabLine DraculaBoundary
hi! link TabLineFill DraculaBgDarker
hi! link TabLineSel Normal
hi! link Title DraculaGreenBold
hi! link VertSplit DraculaBoundary
hi! link Visual DraculaSelection
hi! link VisualNOS Visual
hi! link WarningMsg DraculaOrangeInverse
" }}}
" Syntax: {{{
" Required as some plugins will overwrite
call s:h('MatchParen', s:green, s:none, [s:attrs.underline])
call s:h('Conceal', s:cyan, s:none)
" Neovim uses SpecialKey for escape characters only. Vim uses it for that, plus whitespace.
if has('nvim')
hi! link SpecialKey DraculaRed
hi! link LspDiagnosticsUnderline DraculaFgUnderline
hi! link LspDiagnosticsInformation DraculaCyan
hi! link LspDiagnosticsHint DraculaCyan
hi! link LspDiagnosticsError DraculaError
hi! link LspDiagnosticsWarning DraculaOrange
hi! link LspDiagnosticsUnderlineError DraculaErrorLine
hi! link LspDiagnosticsUnderlineHint DraculaInfoLine
hi! link LspDiagnosticsUnderlineInformation DraculaInfoLine
hi! link LspDiagnosticsUnderlineWarning DraculaWarnLine
else
hi! link SpecialKey DraculaSubtle
endif
hi! link Comment DraculaComment
hi! link Underlined DraculaFgUnderline
hi! link Todo DraculaTodo
hi! link Error DraculaError
hi! link SpellBad DraculaErrorLine
hi! link SpellLocal DraculaWarnLine
hi! link SpellCap DraculaInfoLine
hi! link SpellRare DraculaInfoLine
hi! link Constant DraculaPurple
hi! link String DraculaYellow
hi! link Character DraculaPink
hi! link Number Constant
hi! link Boolean Constant
hi! link Float Constant
hi! link Identifier DraculaFg
hi! link Function DraculaGreen
hi! link Statement DraculaPink
hi! link Conditional DraculaPink
hi! link Repeat DraculaPink
hi! link Label DraculaPink
hi! link Operator DraculaPink
hi! link Keyword DraculaPink
hi! link Exception DraculaPink
hi! link PreProc DraculaPink
hi! link Include DraculaPink
hi! link Define DraculaPink
hi! link Macro DraculaPink
hi! link PreCondit DraculaPink
hi! link StorageClass DraculaPink
hi! link Structure DraculaPink
hi! link Typedef DraculaPink
hi! link Type DraculaCyanItalic
hi! link Delimiter DraculaFg
hi! link Special DraculaPink
hi! link SpecialComment DraculaCyanItalic
hi! link Tag DraculaCyan
hi! link helpHyperTextJump DraculaLink
hi! link helpCommand DraculaPurple
hi! link helpExample DraculaGreen
hi! link helpBacktick Special
"}}}
" vim: fdm=marker ts=2 sts=2 sw=2 fdl=0 et:

View File

@ -1,14 +0,0 @@
runtime autoload/dracula_pro.vim
let g:dracula_pro#palette.comment = ['#70A99F', 109]
let g:dracula_pro#palette.selection = ['#415854', 66]
let g:dracula_pro#palette.bglighter = ['#364946', 59]
let g:dracula_pro#palette.bglight = ['#2B3B38', 59]
let g:dracula_pro#palette.bg = ['#212C2A', 59]
let g:dracula_pro#palette.bgdark = ['#161D1C', 23]
let g:dracula_pro#palette.bgdarker = ['#0B0F0E', 16]
runtime colors/dracula_pro_base.vim
let g:colors_name = 'dracula_pro_blade'

View File

@ -1,14 +0,0 @@
runtime autoload/dracula_pro.vim
let g:dracula_pro#palette.comment = ['#9F70A9', 139]
let g:dracula_pro#palette.selection = ['#544158', 96]
let g:dracula_pro#palette.bglighter = ['#463649', 59]
let g:dracula_pro#palette.bglight = ['#382B3B', 59]
let g:dracula_pro#palette.bg = ['#2A212C', 59]
let g:dracula_pro#palette.bgdark = ['#1C161D', 53]
let g:dracula_pro#palette.bgdarker = ['#0E0B0F', 16]
runtime colors/dracula_pro_base.vim
let g:colors_name = 'dracula_pro_buffy'

View File

@ -1,14 +0,0 @@
runtime autoload/dracula_pro.vim
let g:dracula_pro#palette.comment = ['#A99F70', 144]
let g:dracula_pro#palette.selection = ['#585441', 101]
let g:dracula_pro#palette.bglighter = ['#494636', 59]
let g:dracula_pro#palette.bglight = ['#3B382B', 59]
let g:dracula_pro#palette.bg = ['#2C2A21', 59]
let g:dracula_pro#palette.bgdark = ['#1D1C16', 58]
let g:dracula_pro#palette.bgdarker = ['#0F0E0B', 16]
runtime colors/dracula_pro_base.vim
let g:colors_name = 'dracula_pro_lincoln'

View File

@ -1,14 +0,0 @@
runtime autoload/dracula_pro.vim
let g:dracula_pro#palette.comment = ['#A97079', 138]
let g:dracula_pro#palette.selection = ['#584145', 95]
let g:dracula_pro#palette.bglighter = ['#493639', 59]
let g:dracula_pro#palette.bglight = ['#3B2B2E', 59]
let g:dracula_pro#palette.bg = ['#2C2122', 59]
let g:dracula_pro#palette.bgdark = ['#1D1617', 52]
let g:dracula_pro#palette.bgdarker = ['#0F0B0B', 16]
runtime colors/dracula_pro_base.vim
let g:colors_name = 'dracula_pro_morbius'

View File

@ -1,14 +0,0 @@
runtime autoload/dracula_pro.vim
let g:dracula_pro#palette.comment = ['#708CA9', 109]
let g:dracula_pro#palette.selection = ['#414D58', 66]
let g:dracula_pro#palette.bglighter = ['#161A1D', 23]
let g:dracula_pro#palette.bglight = ['#111417', 16]
let g:dracula_pro#palette.bg = ['#0B0D0F', 16]
let g:dracula_pro#palette.bgdark = ['#070809', 16]
let g:dracula_pro#palette.bgdarker = ['#000000', 16]
runtime colors/dracula_pro_base.vim
let g:colors_name = 'dracula_pro_van_helsing'

View File

@ -1,146 +0,0 @@
*dracula_pro.txt* For Vim version 8 Last change: 2020 Apr 27
*dracula-pro* *vim-dracula-pro*
|\ ,, ~
\\ _ || _ ~
/ \\ ,._-_ < \, _-_ \\ \\ || < \, -_-_ ,._-_ /'\\ ~
|| || || /-|| || || || || /-|| || \\ || || || ~
|| || || (( || || || || || (( || || || || || || ~
\\/ \\, \/\\ \\,/ \\/\\ \\ \/\\ ||-' \\, \\,/ ~
|/ ~
' ~
A premium dark theme for vim
================================================================================
CONTENTS *dracula-pro-contents*
1. Intro .............................................. |dracula-pro-intro|
2. Usage .............................................. |dracula-pro-usage|
3. Configuration .............................. |dracula-pro-configuration|
4. Personal Customization ..................... |dracula-pro-customization|
5. License .......................................... |dracula-pro-license|
6. Bugs ................................................ |dracula-pro-bugs|
7. Contributing ................................ |dracula-pro-contributing|
8. Credits .......................................... |dracula-pro-credits|
================================================================================
INTRO *dracula-pro-intro*
Dracula PRO is a vim plugin that contains
- a dark colorscheme for vim
- a similarly-themed colorscheme for the vim plugin airline
================================================================================
USAGE *dracula-pro-usage*
Install it with your favorite plugin manager, and then >
colorscheme dracula_pro
" or
colorscheme dracula_pro_variation
in your vimrc! See also |dracula-pro-runtimepath|.
If you are an airline user, you can also do >
let g:airline_theme='dracula_pro'
to have airline use Dracula.
*dracula-pro-runtimepath*
Note that dracula must be in your 'runtimepath' for this command to work
properly: Version 2.0 introduced autoload functionality for part of the
plugin, which doesn't work without 'runtimepath' properly set.
For users of Vim 8's |packages| feature, it suffices to put this in your vimrc:
packadd! dracula_pro
colorscheme dracula_pro
================================================================================
CONFIGURATION *dracula-pro-configuration*
There are a couple of variables used by Dracula that you might want to adjust
depending on your terminal's capabilities.
Default values are shown.
--------------------------------------------------------------------------------
In the following section, `1` signifies `on` and `0` signifies `off`.
* *g:dracula_bold*
Include bold attributes in highlighting >
let g:dracula_bold = 1
* *g:dracula_italic*
Include italic attributes in highlighting >
let g:dracula_italic = 1
* *g:dracula_underline*
Include underline attributes in highlighting >
let g:dracula_underline = 1
* *g:dracula_undercurl*
Include undercurl attributes in highlighting (only if underline enabled) >
let g:dracula_undercurl = 1
* *g:dracula_inverse*
Include inverse attributes in highlighting >
let g:dracula_inverse = 1
* *g:dracula_colorterm*
Include background fill colors >
let g:dracula_colorterm = 1
================================================================================
CUSTOMIZATION *dracula-pro-customization*
Like all colorschemes, Dracula PRO is easy to customize with |autocmd|. Make use
of the |ColorScheme| event as in the following examples.
It would be a good idea to put all of your personal changes in an |augroup|,
which you can do with the following code: >
augroup dracula_customization
au!
" autocmds...
augroup END
>
- To add underline styling to |hl-CursorLine|, you can use the following: >
autocmd ColorScheme dracula_pro* hi CursorLine cterm=underline term=underline
<
================================================================================
LICENSE *dracula-pro-license*
Copyright © 2020 Dracula Theme
EULA available at https://gum.co/dracula-pro
================================================================================
BUGS *dracula-pro-bugs*
At the time of this writing, no major bugs have been found.
If you find one and wish to report it, send an email to zeno@draculatheme.com
================================================================================
CONTRIBUTING *dracula-pro-contributing*
Want to submit a new feature, bugfix, or hack on Dracula PRO?
Send an email to zeno@draculatheme.com
Existing code determines style guidelines.
================================================================================
CREDITS *dracula-pro-credits*
Originally Created by:
- Derek S. (https://github.com/dsifford)
- D. Ben Knoble (https://github.com/benknoble)
Modified by:
- D. Ben Knoble (https://github.com/benknoble)
- Zeno Rocha (https://github.com/zenorocha)
Further information available at
https://draculatheme.com/pro
vim:tw=78:ts=8:ft=help:norl: