1
0
Fork 0
mirror of synced 2024-12-21 14:31:06 -05:00

Added the Dracula colors scheme and use it as the default

This commit is contained in:
Amir 2021-07-30 22:53:30 +02:00
parent 65de68fa88
commit 97fed613a7
40 changed files with 1479 additions and 5 deletions

View file

@ -0,0 +1,45 @@
<!--
Thanks for your interest in reporting an issue.
Before submitting, please refer to the following common issues and solutions:
Running vim in a terminal?
- Try adding `set termguicolors` to your vimrc.
Running vim with tmux?
- Be sure you have terminal-overrides to enable truecolor (if supported in your term)
- Be sure your `default-terminal` is set to, ideally, `tmux-256color`. If your OS doesn't
have `tmux-256color` terminfo files, google them and add them using `tic`
Having issues with font styles (italic, bold, underline)?
- Be sure your terminal supports these styles.
- If running tmux, see tmux section.
- If all else fails, disable the style by setting `let g:dracula_<style-name> = 0`
in your vimrc, where `<style-name>` is one of (`italic`, `bold`, `underline`, `undercurl`, `inverse`)
If the above did not resolve your issue, please complete all fields of the form below.
-->
### What happened
### What I expected to happen
### Screenshot
### Machine Info
<!--
if on a *nix system, please provide the output of `uname -a` for OS field
-->
- **Vim type (`vim`/`gvim`/`neovim`)**:
- **Vim version**:
- **OS**:
- **Terminal/Terminal Emulator/VTE**:
- **`TERM` environment variable**:
### Additional Info
<!--
If using Tmux, please provide the output of `tmux info`
If having issues with text rendering, please provide the output of `infocmp`
-->

View file

@ -0,0 +1,5 @@
<!--
If you're fixing a UI issue, make sure you take two screenshots.
One that shows the actual bug and another that shows how you fixed it.
-->

1
sources_non_forked/dracula/.gitignore vendored Normal file
View file

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

View file

@ -0,0 +1,93 @@
### [Vim](http://www.vim.org/)
#### Install
These are the default instructions using Vim 8's `|packages|` feature. See
sections below, if you use other plugin managers.
1. Create theme folder (in case you don't have yet):
- \*nix:
```
mkdir -p ~/.vim/pack/themes/start
```
- Windows: create directory `$HOME\vimfiles\pack\themes\start`
If you use vim 8.0 (and not 8.2), you may need to use `~/.vim/pack/themes/opt`
or `$HOME\vimfiles\pack\themes\opt` instead.
2. Navigate to the folder above:
- \*nix:
```
cd ~/.vim/pack/themes/start
```
- Windows: navigate to `$HOME\vimfiles\pack\themes\start`
3. Clone the repository using the "dracula" name:
```
git clone https://github.com/dracula/vim.git dracula
```
(Or use your favorite GUI client, or download the ZIP)
4. Edit your `vimrc` file with the following content:
```
packadd! dracula
syntax enable
colorscheme dracula
```
The location of the `vimrc` varies between platforms:
- \*nix: `~/.vim/vimrc` or `~/.vimrc`
- Windows: `$HOME\vimfiles\vimrc` or `$HOME\_vimrc`
#### Install using other plugin managers
- If you [use vim + pathogen + submodules](http://vimcasts.org/episodes/synchronizing-plugins-with-git-submodules-and-pathogen/):
Navigate to your vim directory (\*nix: `~/.vim`; Windows: `$HOME\vimfiles`)
git submodule add git@github.com:dracula/vim.git bundle/dracula
Place `colorscheme dracula` after `execute pathogen#infect()`.
- If you [use vim + vundle](https://github.com/VundleVim/Vundle):
Plugin 'dracula/vim', { 'name': 'dracula' }
:PluginInstall
Place `colorscheme dracula` after `call vundle#end()`.
- If you [use vim-plug](https://github.com/junegunn/vim-plug) (\`as\` will install
the plugin in a directory called 'dracula' instead of just 'vim'):
Plug 'dracula/vim', { 'as': 'dracula' }
:PlugInstall
Place `colorscheme dracula` after `call plug#end()`.
- If you [use spacevim](https://spacevim.org), put the
following in `~/.SpaceVim.d/init.toml`:
```toml
[options]
colorscheme = "dracula"
colorscheme_bg = "dark"
[[custom_plugins]]
repo = "dracula/vim"
name = "dracula"
merged = false
```
---
Note that dracula must be in your `'runtimepath'` to load properly: Version 2.0
introduced autoload functionality for part of the plugin, which doesn't work
without `'runtimepath'` properly set. Consult your plugin-managers documentation
to make sure you put dracula on the `'runtimepath'` before loading it.

View file

@ -0,0 +1,21 @@
The MIT License (MIT)
Copyright (c) 2016 Dracula Theme
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.

View file

@ -0,0 +1,25 @@
# Dracula for [Vim](http://www.vim.org/)
> A dark theme for [Vim](http://www.vim.org/).
![Screenshot](./screenshot.png)
Screenshot taken with the [pangloss/vim-javascript](https://github.com/pangloss/vim-javascript)
syntax plugin for javascript.
## Install
All instructions can be found at [draculatheme.com/vim](https://draculatheme.com/vim).
## Team
This theme is maintained by the following person(s) and a bunch of
[awesome contributors](https://github.com/dracula/vim/graphs/contributors).
| [![Derek S.](https://avatars3.githubusercontent.com/u/5240018?v=3&s=70)](https://github.com/dsifford) | [![David Knoble](https://avatars0.githubusercontent.com/u/22802209?v=4&s=70)](https://github.com/benknoble) |
| ----------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------- |
| [Derek S.](https://github.com/dsifford) | [David Knoble](https://github.com/benknoble) |
## License
[MIT License](./LICENSE)

View file

@ -0,0 +1,95 @@
if dracula#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
" }}}
" GitGutter / gitsigns: {{{
if exists('g:loaded_gitgutter')
hi! link GitGutterAdd DiffAdd
hi! link GitGutterChange DiffChange
hi! link GitGutterDelete DiffDelete
endif
if has('nvim-0.5') && luaeval("pcall(require, 'gitsigns')")
" https://github.com/lewis6991/gitsigns.nvim requires nvim > 0.5
" has('nvim-0.5') checks >= 0.5, so this should be future-proof.
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 DiffDelete
hi! link GitSignsDeleteLn DiffDelete
hi! link GitSignsDeleteNr DiffDelete
endif
" }}}
" Tree-sitter: {{{
if exists('g:loaded_nvim_treesitter')
" # 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
endif
" }}}
" vim: fdm=marker ts=2 sts=2 sw=2 fdl=0:

View file

@ -0,0 +1,15 @@
if dracula#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

@ -0,0 +1,12 @@
if dracula#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

@ -0,0 +1,9 @@
if dracula#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

@ -0,0 +1,45 @@
if dracula#should_abort('javascript', 'javascriptreact', 'javascript.jsx')
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 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
" }}}
" vim: fdm=marker ts=2 sts=2 sw=2 fdl=0:

View file

@ -0,0 +1 @@
runtime! syntax/javascript.vim

View file

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

View file

@ -0,0 +1,22 @@
if dracula#should_abort('lua')
finish
endif
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
" }}}
" vim: fdm=marker ts=2 sts=2 sw=2 fdl=0:

View file

@ -0,0 +1,50 @@
if dracula#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

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

View file

@ -0,0 +1,38 @@
if dracula#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

@ -0,0 +1,10 @@
if dracula#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

@ -0,0 +1,13 @@
if dracula#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

@ -0,0 +1,9 @@
if dracula#should_abort('purescript')
finish
endif
hi! link purescriptModule Type
hi! link purescriptImport DraculaCyan
hi! link purescriptImportAs DraculaCyan
hi! link purescriptOperator Operator
hi! link purescriptBacktick Operator

View file

@ -0,0 +1,11 @@
if dracula#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

@ -0,0 +1,26 @@
if dracula#should_abort('rst')
finish
endif
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

View file

@ -0,0 +1,16 @@
if dracula#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

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

View file

@ -0,0 +1,12 @@
if dracula#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

@ -0,0 +1,8 @@
if dracula#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

@ -0,0 +1,16 @@
if dracula#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 texSpecialChar DraculaPurple
hi! link texSubscripts DraculaPurple
hi! link texTitle DraculaFgBold

View file

@ -0,0 +1,57 @@
if dracula#should_abort('typescript', 'typescriptreact', 'typescript.tsx')
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

@ -0,0 +1,22 @@
if dracula#should_abort('typescriptreact', 'typescript.tsx')
finish
endif
runtime! syntax/typescript.vim
hi! link tsxAttrib DraculaGreenItalic
hi! link tsxEqual Operator
hi! link tsxIntrinsicTagName Keyword
hi! link tsxTagName Type
" 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
" }}}

View file

@ -0,0 +1,14 @@
if dracula#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

@ -0,0 +1,13 @@
if dracula#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

@ -0,0 +1,12 @@
if dracula#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

@ -0,0 +1,160 @@
" Dracula Airline Theme: {{{
"
" Copyright 2016, All rights reserved
"
" Code licensed under the MIT license
" http://zenorocha.mit-license.org
"
" @author Extrante <extrante@gmail.com>
" @author Zeno Rocha <hi@zenorocha.com>
"}}}
" 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#palette[a:fg]
let l:bg = g:dracula#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#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', 'green'],
\ ['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#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#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

@ -0,0 +1,57 @@
" Palette: {{{
let g:dracula#palette = {}
let g:dracula#palette.fg = ['#F8F8F2', 253]
let g:dracula#palette.bglighter = ['#424450', 238]
let g:dracula#palette.bglight = ['#343746', 237]
let g:dracula#palette.bg = ['#282A36', 236]
let g:dracula#palette.bgdark = ['#21222C', 235]
let g:dracula#palette.bgdarker = ['#191A21', 234]
let g:dracula#palette.comment = ['#6272A4', 61]
let g:dracula#palette.selection = ['#44475A', 239]
let g:dracula#palette.subtle = ['#424450', 238]
let g:dracula#palette.cyan = ['#8BE9FD', 117]
let g:dracula#palette.green = ['#50FA7B', 84]
let g:dracula#palette.orange = ['#FFB86C', 215]
let g:dracula#palette.pink = ['#FF79C6', 212]
let g:dracula#palette.purple = ['#BD93F9', 141]
let g:dracula#palette.red = ['#FF5555', 203]
let g:dracula#palette.yellow = ['#F1FA8C', 228]
"
" ANSI
"
let g:dracula#palette.color_0 = '#21222C'
let g:dracula#palette.color_1 = '#FF5555'
let g:dracula#palette.color_2 = '#50FA7B'
let g:dracula#palette.color_3 = '#F1FA8C'
let g:dracula#palette.color_4 = '#BD93F9'
let g:dracula#palette.color_5 = '#FF79C6'
let g:dracula#palette.color_6 = '#8BE9FD'
let g:dracula#palette.color_7 = '#F8F8F2'
let g:dracula#palette.color_8 = '#6272A4'
let g:dracula#palette.color_9 = '#FF6E6E'
let g:dracula#palette.color_10 = '#69FF94'
let g:dracula#palette.color_11 = '#FFFFA5'
let g:dracula#palette.color_12 = '#D6ACFF'
let g:dracula#palette.color_13 = '#FF92DF'
let g:dracula#palette.color_14 = '#A4FFFF'
let g:dracula#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#should_abort(...)
if ! exists('g:colors_name') || g:colors_name !=# 'dracula'
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

@ -0,0 +1,42 @@
" =============================================================================
" Filename: autoload/lightline/colorscheme/dracula.vim
" Author: adamalbrecht
" License: MIT License
" Last Change: 2018/04/11
" =============================================================================
let s:black = g:dracula#palette.bg
let s:gray = g:dracula#palette.selection
let s:white = g:dracula#palette.fg
let s:darkblue = g:dracula#palette.comment
let s:cyan = g:dracula#palette.cyan
let s:green = g:dracula#palette.green
let s:orange = g:dracula#palette.orange
let s:purple = g:dracula#palette.purple
let s:red = g:dracula#palette.red
let s:yellow = g:dracula#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#palette = lightline#colorscheme#flatten(s:p)
endif
" vim: fdm=marker ts=2 sts=2 sw=2 fdl=0:

View file

@ -0,0 +1,319 @@
" Dracula Theme: {{{
"
" https://github.com/zenorocha/dracula-theme
"
" Copyright 2016, All rights reserved
"
" Code licensed under the MIT license
" http://zenorocha.mit-license.org
"
" @author Trevor Heins <@heinst>
" @author Éverton Ribeiro <nuxlli@gmail.com>
" @author Derek Sifford <dereksifford@gmail.com>
" @author Zeno Rocha <hi@zenorocha.com>
scriptencoding utf8
" }}}
" Configuration: {{{
if v:version > 580
highlight clear
if exists('syntax_on')
syntax reset
endif
endif
let g:colors_name = 'dracula'
if !(has('termguicolors') && &termguicolors) && !has('gui_running') && &t_Co != 256
finish
endif
" Palette: {{{2
let s:fg = g:dracula#palette.fg
let s:bglighter = g:dracula#palette.bglighter
let s:bglight = g:dracula#palette.bglight
let s:bg = g:dracula#palette.bg
let s:bgdark = g:dracula#palette.bgdark
let s:bgdarker = g:dracula#palette.bgdarker
let s:comment = g:dracula#palette.comment
let s:selection = g:dracula#palette.selection
let s:subtle = g:dracula#palette.subtle
let s:cyan = g:dracula#palette.cyan
let s:green = g:dracula#palette.green
let s:orange = g:dracula#palette.orange
let s:pink = g:dracula#palette.pink
let s:purple = g:dracula#palette.purple
let s:red = g:dracula#palette.red
let s:yellow = g:dracula#palette.yellow
let s:none = ['NONE', 'NONE']
if has('nvim')
for s:i in range(16)
let g:terminal_color_{s:i} = g:dracula#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#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')
let g:dracula_undercurl = g:dracula_underline
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 LspReferenceText DraculaSelection
hi! link LspReferenceRead DraculaSelection
hi! link LspReferenceWrite DraculaSelection
hi! link LspDiagnosticsDefaultInformation DraculaCyan
hi! link LspDiagnosticsDefaultHint DraculaCyan
hi! link LspDiagnosticsDefaultError DraculaError
hi! link LspDiagnosticsDefaultWarning DraculaOrange
hi! link LspDiagnosticsUnderlineError DraculaErrorLine
hi! link LspDiagnosticsUnderlineHint DraculaInfoLine
hi! link LspDiagnosticsUnderlineInformation DraculaInfoLine
hi! link LspDiagnosticsUnderlineWarning DraculaWarnLine
else
hi! link SpecialKey DraculaPink
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

@ -0,0 +1,157 @@
*dracula.txt* For Vim version 8 Last change: 2018 May 08
*dracula* *vim-dracula*
|\ ,, ~
\\ _ || _ ~
/ \\ ,._-_ < \, _-_ \\ \\ || < \, ~
|| || || /-|| || || || || /-|| ~
|| || || (( || || || || || (( || ~
\\/ \\, \/\\ \\,/ \\/\\ \\ \/\\ ~
A dark theme for vim
==============================================================================
CONTENTS *dracula-contents*
1. Intro ................................................... |dracula-intro|
2. Usage ................................................... |dracula-usage|
3. Configuration ................................... |dracula-configuration|
4. Personal Customization .......................... |dracula-customization|
5. License ............................................... |dracula-license|
6. Bugs ..................................................... |dracula-bugs|
7. Contributing ..................................... |dracula-contributing|
8. Credits ............................................... |dracula-credits|
==============================================================================
INTRO *dracula-intro*
Dracula is a vim plugin that contains
- a dark colorscheme for vim
- a similarly-themed colorscheme for the vim plugin airline
(https://github.com/vim-airline/vim-airline)
==============================================================================
USAGE *dracula-usage*
Install it with your favorite plugin manager, and then >
colorscheme dracula
in your vimrc! See also |dracula_runtimepath|.
If you are an airline user, you can also do >
let g:airline_theme='dracula'
to have airline use Dracula.
*dracula_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 >
packadd! dracula
colorscheme dracula
in your vimrc. {name} Should be replaced by the directory you put the code in.
For example, if you use ~/.vim/pack/themes/start/my-dracula-theme, you would
do >
packadd! my-dracula-theme
For users of other plugin managers, consult your documentation
to make sure you put dracula on the 'runtimepath' before loading it.
==============================================================================
CONFIGURATION *dracula-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-customization*
Like all colorschemes, Dracula 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 hi CursorLine cterm=underline term=underline
<
==============================================================================
LICENSE *dracula-license*
MIT License. Copyright © 2016 Dracula Theme.
Full text available at
https://github.com/dracula/vim/blob/master/LICENSE
==============================================================================
BUGS *dracula-bugs*
At the time of this writing, no major bugs have been found.
If you find one and wish to report it, you can do so at
https://github.com/dracula/vim/issues
==============================================================================
CONTRIBUTING *dracula-contributing*
Want to submit a new feature, bugfix, or hack on Dracula?
Submit pull requests to
https://github.com/dracula/vim/pulls
Existing code determines style guidelines.
==============================================================================
CREDITS *dracula-credits*
Proudly built by the Dracula Theme organization
https://github.com/dracula
Dracula for other applications available at
https://draculatheme.com
Further information available at
https://draculatheme.com/vim
Maintained by:
- Derek S. (https://github.com/dsifford)
- D. Ben Knoble (https://github.com/benknoble)
Git repository:
https://github.com/dracula/vim
vim:tw=78:ts=8:ft=help:norl:

Binary file not shown.

After

Width:  |  Height:  |  Size: 526 KiB

View file

@ -6,6 +6,7 @@ except ImportError:
except ImportError: except ImportError:
futures = None futures = None
import re
import zipfile import zipfile
import shutil import shutil
import tempfile import tempfile
@ -60,6 +61,7 @@ vim-python-pep8-indent https://github.com/Vimjas/vim-python-pep8-indent
vim-indent-guides https://github.com/nathanaelkane/vim-indent-guides vim-indent-guides https://github.com/nathanaelkane/vim-indent-guides
mru.vim https://github.com/vim-scripts/mru.vim mru.vim https://github.com/vim-scripts/mru.vim
editorconfig-vim https://github.com/editorconfig/editorconfig-vim editorconfig-vim https://github.com/editorconfig/editorconfig-vim
dracula https://github.com/dracula/vim
""".strip() """.strip()
GITHUB_ZIP = "%s/archive/master.zip" GITHUB_ZIP = "%s/archive/master.zip"
@ -77,9 +79,9 @@ def download_extract_replace(plugin_name, zip_path, temp_dir, source_dir):
zip_f = zipfile.ZipFile(temp_zip_path) zip_f = zipfile.ZipFile(temp_zip_path)
zip_f.extractall(temp_dir) zip_f.extractall(temp_dir)
plugin_temp_path = path.join( content_disp = req.headers.get("Content-Disposition")
temp_dir, path.join(temp_dir, "%s-master" % plugin_name) filename = re.findall("filename=(.+).zip", content_disp)[0]
) plugin_temp_path = path.join(temp_dir, path.join(temp_dir, filename))
# Remove the current plugin and replace it with the extracted # Remove the current plugin and replace it with the extracted
plugin_dest_path = path.join(source_dir, plugin_name) plugin_dest_path = path.join(source_dir, plugin_name)
@ -96,7 +98,10 @@ def download_extract_replace(plugin_name, zip_path, temp_dir, source_dir):
def update(plugin): def update(plugin):
name, github_url = plugin.split(" ") name, github_url = plugin.split(" ")
zip_path = GITHUB_ZIP % github_url zip_path = GITHUB_ZIP % github_url
download_extract_replace(name, zip_path, temp_directory, SOURCE_DIR) try:
download_extract_replace(name, zip_path, temp_directory, SOURCE_DIR)
except Exception as exp:
print("Could not update {}. Error was: {}".format(name, str(exp)))
if __name__ == "__main__": if __name__ == "__main__":

View file

@ -29,7 +29,7 @@ set guioptions-=L
" Colorscheme " Colorscheme
set background=dark set background=dark
colorscheme peaksea colorscheme dracula
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""