mirror of
https://github.com/maxmx03/dracula.nvim.git
synced 2026-09-10 15:36:25 -04:00
Compare commits
No commits in common. "master" and "v1.3.0" have entirely different histories.
61
.github/workflows/test.yml
vendored
Normal file
61
.github/workflows/test.yml
vendored
Normal file
|
|
@ -0,0 +1,61 @@
|
|||
name: Test
|
||||
|
||||
on: [push]
|
||||
|
||||
jobs:
|
||||
lint:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- name: Stylua
|
||||
uses: JohnnyMorganz/stylua-action@v3
|
||||
with:
|
||||
token: ${{ secrets.GITHUB_TOKEN }}
|
||||
version: latest
|
||||
args: --check .
|
||||
|
||||
|
||||
docs:
|
||||
runs-on: ubuntu-latest
|
||||
name: pandoc to vimdoc
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- name: panvimdoc
|
||||
uses: kdheepak/panvimdoc@main
|
||||
with:
|
||||
vimdoc: dracula
|
||||
treesitter: true
|
||||
version: "NVIM v0.9.4"
|
||||
- uses: stefanzweifel/git-auto-commit-action@v4
|
||||
with:
|
||||
commit_message: 'chore(doc): auto generate docs'
|
||||
commit_user_name: "github-actions[bot]"
|
||||
commit_user_email: "github-actions[bot]@users.noreply.github.com"
|
||||
commit_author: "github-actions[bot] <github-actions[bot]@users.noreply.github.com>"
|
||||
|
||||
test:
|
||||
name: Run Test
|
||||
runs-on: ${{ matrix.os }}
|
||||
strategy:
|
||||
matrix:
|
||||
os: [ubuntu-latest, macos-latest]
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: rhysd/action-setup-vim@v1
|
||||
with:
|
||||
neovim: true
|
||||
|
||||
- name: luajit
|
||||
uses: leafo/gh-actions-lua@v10
|
||||
with:
|
||||
luaVersion: "luajit-2.1.0-beta3"
|
||||
|
||||
- name: luarocks
|
||||
uses: leafo/gh-actions-luarocks@v4
|
||||
|
||||
- name: run test
|
||||
shell: bash
|
||||
run: |
|
||||
luarocks install luacheck
|
||||
luarocks install vusted
|
||||
vusted ./tests
|
||||
|
|
@ -1,9 +1,3 @@
|
|||
{
|
||||
"diagnostics.disable": ["undefined-field", "duplicate-doc-field"],
|
||||
"workspace.library": [
|
||||
"/usr/share/nvim/runtime",
|
||||
"${3rd}/luv/library",
|
||||
"${3rd}/busted/library",
|
||||
"${3rd}/luassert/library"
|
||||
]
|
||||
"diagnostics.disable": ["undefined-field"]
|
||||
}
|
||||
|
|
|
|||
53
CHANGELOG.md
53
CHANGELOG.md
|
|
@ -1,58 +1,5 @@
|
|||
# Changelog
|
||||
|
||||
## [1.7.1](https://github.com/maxmx03/dracula.nvim/compare/v1.7.0...v1.7.1) (2024-10-30)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* css highlights ([b7d73e2](https://github.com/maxmx03/dracula.nvim/commit/b7d73e212c0d384808f78e2bd2477f854d338171))
|
||||
* html tags and attributes ([0e7156e](https://github.com/maxmx03/dracula.nvim/commit/0e7156e20c0af9cbc9aa751132b0bd9578fb1fb0))
|
||||
|
||||
## [1.7.0](https://github.com/maxmx03/dracula.nvim/compare/v1.6.0...v1.7.0) (2024-10-29)
|
||||
|
||||
|
||||
### Features
|
||||
|
||||
* dracula-soft termcolors ([dd68058](https://github.com/maxmx03/dracula.nvim/commit/dd6805825c359d44a8faa036954eeb792faf9b39))
|
||||
|
||||
## [1.6.0](https://github.com/maxmx03/dracula.nvim/compare/v1.5.1...v1.6.0) (2024-10-29)
|
||||
|
||||
|
||||
### Features
|
||||
|
||||
* load_spec removed ([be281db](https://github.com/maxmx03/dracula.nvim/commit/be281db5bafbc707eec472207541786e1af3af56))
|
||||
* queries removed ([350f629](https://github.com/maxmx03/dracula.nvim/commit/350f6298c038e92f31d6f89a9bb08aab2941146f))
|
||||
|
||||
## [1.5.1](https://github.com/maxmx03/dracula.nvim/compare/v1.5.0...v1.5.1) (2024-08-23)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* rainbow delimiter blue color ([1804d3e](https://github.com/maxmx03/dracula.nvim/commit/1804d3e6de135f88e57ea328376d71449add3496))
|
||||
* rainbow-delimiter violet color ([0b0ff4f](https://github.com/maxmx03/dracula.nvim/commit/0b0ff4faa9ec19350226b85cde2ca8355d9375ea))
|
||||
|
||||
## [1.5.0](https://github.com/maxmx03/dracula.nvim/compare/v1.4.0...v1.5.0) (2024-08-23)
|
||||
|
||||
|
||||
### Features
|
||||
|
||||
* **plugin:** Add support for `rainbow-delimiters` ([ef689e5](https://github.com/maxmx03/dracula.nvim/commit/ef689e56aa5ef3f9711cc38180bc0c2c3c9eabf8))
|
||||
|
||||
## [1.4.0](https://github.com/maxmx03/dracula.nvim/compare/v1.3.1...v1.4.0) (2024-08-03)
|
||||
|
||||
|
||||
### Features
|
||||
|
||||
* bufferline.nvim ([bb74938](https://github.com/maxmx03/dracula.nvim/commit/bb7493845daa9eedb1a86022f1119319c0af2fad))
|
||||
* config styles ([7bdaaff](https://github.com/maxmx03/dracula.nvim/commit/7bdaaffec92eabe57951988d96a403347db45369))
|
||||
|
||||
## [1.3.1](https://github.com/maxmx03/dracula.nvim/compare/v1.3.0...v1.3.1) (2024-04-20)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* css psudo_class_selector ([f6552f5](https://github.com/maxmx03/dracula.nvim/commit/f6552f53428b58c082eada492d4de6efba8d1f18))
|
||||
|
||||
## [1.3.0](https://github.com/maxmx03/dracula.nvim/compare/v1.2.0...v1.3.0) (2024-02-26)
|
||||
|
||||
|
||||
|
|
|
|||
35
README.md
35
README.md
|
|
@ -19,14 +19,22 @@ Below is an example of how to enable them.
|
|||
lspconfig.lua_ls.setup {
|
||||
settings = {
|
||||
Lua = {
|
||||
runtime = {
|
||||
version = 'LuaJIT',
|
||||
},
|
||||
workspace = {
|
||||
checkThirdParty = true,
|
||||
checkThirdParty = false,
|
||||
library = {
|
||||
vim.env.VIMRUNTIME,
|
||||
'~/.local/share/nvim/lazy/dracula.nvim',
|
||||
'~/.local/share/nvim/lazy/dracula',
|
||||
},
|
||||
},
|
||||
-- other settings ...
|
||||
hint = {
|
||||
enable = true,
|
||||
},
|
||||
completion = {
|
||||
callSnippet = 'Replace',
|
||||
},
|
||||
},
|
||||
},
|
||||
capabilities = capabilities,
|
||||
|
|
@ -44,24 +52,12 @@ return {
|
|||
local dracula = require "dracula"
|
||||
|
||||
dracula.setup({
|
||||
styles = {
|
||||
Type = {},
|
||||
Function = {},
|
||||
Parameter = {},
|
||||
Property = {},
|
||||
Comment = {},
|
||||
String = {},
|
||||
Keyword = {},
|
||||
Identifier = {},
|
||||
Constant = {},
|
||||
},
|
||||
transparent = false,
|
||||
on_colors = function (colors, color)
|
||||
---@type dracula.palette
|
||||
return {
|
||||
-- override or create new colors
|
||||
mycolor = "#ffffff",
|
||||
-- mycolor = 0xffffff,
|
||||
}
|
||||
end,
|
||||
on_highlights = function (colors, color)
|
||||
|
|
@ -73,7 +69,6 @@ return {
|
|||
end,
|
||||
plugins = {
|
||||
["nvim-treesitter"] = true,
|
||||
["rainbow-delimiters"] = true,
|
||||
["nvim-lspconfig"] = true,
|
||||
["nvim-navic"] = true,
|
||||
["nvim-cmp"] = true,
|
||||
|
|
@ -93,7 +88,6 @@ return {
|
|||
["mini.tabline"] = true,
|
||||
["mini.starter"] = true,
|
||||
["mini.cursorword"] = true,
|
||||
['bufferline.nvim'] = true,
|
||||
}
|
||||
})
|
||||
vim.cmd.colorscheme 'dracula'
|
||||
|
|
@ -116,8 +110,11 @@ return {
|
|||
|
||||
### Vim
|
||||
|
||||
- [vim-docs](https://github.com/maxmx03/dracula.nvim/tree/vim)
|
||||
- [vim9-docs](https://github.com/maxmx03/dracula.nvim/tree/vim9)
|
||||
```vim
|
||||
Plug 'maxmx03/dracula.nvim', { 'branch': 'vim' }
|
||||
colorscheme dracula
|
||||
colorscheme dracula-soft
|
||||
```
|
||||
|
||||
## Api
|
||||
|
||||
|
|
|
|||
3
after/queries/astro/highlights.scm
Normal file
3
after/queries/astro/highlights.scm
Normal file
|
|
@ -0,0 +1,3 @@
|
|||
; extends
|
||||
(start_tag (tag_name) @tag (#set! "priority" 127))
|
||||
(end_tag (tag_name) @tag (#set! "priority" 127))
|
||||
|
|
@ -1,8 +1,7 @@
|
|||
; extends
|
||||
((pseudo_class_selector) @type (#set! "priority" 125))
|
||||
((class_selector) @variable.parameter (#set! "priority" 125))
|
||||
((plain_value) @constant (#set! "priority" 125))
|
||||
((id_selector) @variable.parameter (#set! "priority" 125))
|
||||
(tag_name) @tag
|
||||
(unit) @keyword
|
||||
(keyframes_name) @variable.parameter
|
||||
(rule_set
|
||||
(selectors
|
||||
(id_selector
|
||||
(id_name) @function)))
|
||||
|
|
|
|||
5
after/queries/javascript/highlights.scm
Normal file
5
after/queries/javascript/highlights.scm
Normal file
|
|
@ -0,0 +1,5 @@
|
|||
; extends
|
||||
|
||||
(jsx_self_closing_element (identifier) @tag (#set! "priority" 127))
|
||||
(jsx_opening_element (identifier) @tag (#set! "priority" 127))
|
||||
(jsx_closing_element (identifier) @tag (#set! "priority" 127))
|
||||
3
after/queries/lua/highlights.scm
Normal file
3
after/queries/lua/highlights.scm
Normal file
|
|
@ -0,0 +1,3 @@
|
|||
; extends
|
||||
|
||||
(function_call (identifier) @function (#set! "priority" 130))
|
||||
2
after/queries/markdown/highlights.scm
Normal file
2
after/queries/markdown/highlights.scm
Normal file
|
|
@ -0,0 +1,2 @@
|
|||
; extends
|
||||
((block_quote) @comment (#set! "priority" 125))
|
||||
2
after/queries/markdown_inline/highlights.scm
Normal file
2
after/queries/markdown_inline/highlights.scm
Normal file
|
|
@ -0,0 +1,2 @@
|
|||
; extends
|
||||
((strong_emphasis) @markup.strong (#set! "priority" 125))
|
||||
2
after/queries/scss/highlights.scm
Normal file
2
after/queries/scss/highlights.scm
Normal file
|
|
@ -0,0 +1,2 @@
|
|||
; extends
|
||||
((nesting_selector) @keyword (#set! "priority" 125))
|
||||
5
after/queries/tsx/highlights.scm
Normal file
5
after/queries/tsx/highlights.scm
Normal file
|
|
@ -0,0 +1,5 @@
|
|||
; extends
|
||||
|
||||
(jsx_self_closing_element (identifier) @tag (#set! "priority" 127))
|
||||
(jsx_opening_element (identifier) @tag (#set! "priority" 127))
|
||||
(jsx_closing_element (identifier) @tag (#set! "priority" 127))
|
||||
|
|
@ -2,603 +2,4 @@
|
|||
-- Repo: maxmx03/dracula.nvim
|
||||
-- Maintainer: Max Del Canto <github.com/maxmx03>
|
||||
-- License: MIT License
|
||||
|
||||
if vim.g.colors_name then
|
||||
vim.cmd 'hi clear'
|
||||
end
|
||||
|
||||
if vim.fn.exists 'syntax_on' then
|
||||
vim.cmd 'syntax reset'
|
||||
end
|
||||
|
||||
vim.g.colors_name = 'dracula'
|
||||
|
||||
local colors = require 'dracula.palette.dracula-soft'
|
||||
local dracula = require 'dracula'
|
||||
---@type dracula.config
|
||||
local config = dracula.config
|
||||
local api = vim.api
|
||||
|
||||
if config.on_colors then
|
||||
local color = require 'dracula.color'
|
||||
colors = vim.tbl_extend('force', colors, config.on_colors(colors, color))
|
||||
end
|
||||
|
||||
local term = {
|
||||
'base04',
|
||||
'red',
|
||||
'green',
|
||||
'yellow',
|
||||
'pink',
|
||||
'purple',
|
||||
'cyan',
|
||||
'base01',
|
||||
'base01',
|
||||
'orange',
|
||||
'green',
|
||||
'yellow',
|
||||
'cyan',
|
||||
'pink',
|
||||
'green',
|
||||
'base01',
|
||||
}
|
||||
for index, key in ipairs(term) do
|
||||
vim.g['terminal_color_' .. index - 1] = colors[key]
|
||||
end
|
||||
|
||||
local hl = vim.api.nvim_set_hl
|
||||
local none = 'NONE'
|
||||
|
||||
if config.transparent then
|
||||
hl(0, 'WinSeparator', { fg = colors.base01, bg = none })
|
||||
hl(0, 'IncSearch', { fg = colors.red, bg = none })
|
||||
hl(0, 'LineNr', { fg = colors.base01, bg = none })
|
||||
hl(0, 'CursorLineNr', { fg = colors.purple, bg = none })
|
||||
hl(0, 'CursorLineNr', { fg = colors.purple, bg = none })
|
||||
hl(0, 'Normal', { fg = colors.base0, bg = none })
|
||||
hl(0, 'Pmenu', { fg = colors.base0, bg = none })
|
||||
hl(0, 'TelescopeNormal', { fg = colors.base0, bg = none })
|
||||
hl(0, 'TelescopeBorder', { fg = colors.purple, bg = none })
|
||||
hl(0, 'WhichKeyNormal', { fg = colors.green, bg = none })
|
||||
hl(0, 'NvimTreeNormal', { fg = colors.base0, bg = none })
|
||||
hl(0, 'NeoTreeNormal', { fg = colors.base0, bg = none })
|
||||
else
|
||||
hl(0, 'WinSeparator', { fg = colors.base01, bg = colors.base04 })
|
||||
hl(0, 'IncSearch', { fg = colors.red, bg = colors.shade_red, bold = true })
|
||||
hl(0, 'LineNr', { fg = colors.base01, bg = colors.base03 })
|
||||
hl(0, 'CursorLineNr', { fg = colors.purple, bg = colors.base03 })
|
||||
hl(0, 'CursorLineNr', { fg = colors.purple, bg = colors.base03 })
|
||||
hl(0, 'Normal', { fg = colors.base0, bg = colors.base03 })
|
||||
hl(0, 'Pmenu', { fg = colors.base0, bg = colors.base04 })
|
||||
hl(0, 'TelescopeNormal', { fg = colors.base0, bg = colors.base04 })
|
||||
hl(0, 'WhichKeyNormal', { fg = colors.green, bg = colors.base04 })
|
||||
hl(0, 'TelescopeBorder', { fg = colors.purple, bg = colors.base04 })
|
||||
hl(0, 'NvimTreeNormal', { fg = colors.base0, bg = colors.base04 })
|
||||
hl(0, 'NeoTreeNormal', { fg = colors.base0, bg = colors.base04 })
|
||||
end
|
||||
|
||||
-- EDITOR :h highlight-groups
|
||||
hl(0, 'ColorColumn', { bg = colors.base04 })
|
||||
hl(0, 'Conceal', { fg = colors.base02 })
|
||||
hl(0, 'CurSearch', { fg = colors.red, bg = colors.shade_red })
|
||||
hl(0, 'Cursor', { fg = colors.base03, bg = colors.purple })
|
||||
hl(0, 'lCursor', { link = 'Cursor' })
|
||||
hl(0, 'CursorIM', { link = 'Cursor' })
|
||||
hl(0, 'CursorColumn', { link = 'ColorColumn' })
|
||||
hl(0, 'CursorLine', { bg = colors.base02 })
|
||||
hl(0, 'Directory', { fg = colors.purple })
|
||||
hl(0, 'DiffAdd', { fg = colors.git_added })
|
||||
hl(0, 'DiffChange', { fg = colors.git_modified })
|
||||
hl(0, 'DiffDelete', { fg = colors.git_removed, reverse = true })
|
||||
hl(0, 'DiffText', { fg = colors.cyan, reverse = true })
|
||||
hl(0, 'EndOfBuffer', { fg = colors.base03 })
|
||||
hl(0, 'TermCursor', { link = 'Cursor' })
|
||||
hl(0, 'TermCursorNC', { link = 'Cursor' })
|
||||
hl(0, 'ErrorMsg', { fg = colors.diag_error })
|
||||
|
||||
hl(0, 'Folded', { fg = colors.base0, bg = colors.base02 })
|
||||
hl(0, 'FoldColumn', { fg = colors.base0, bg = colors.base04 })
|
||||
hl(0, 'SignColumn', { link = 'Normal' })
|
||||
hl(0, 'Substitute', { link = 'IncSearch' })
|
||||
hl(0, 'LineNrAbove', { link = 'LineNr' })
|
||||
hl(0, 'LineNrBelow', { link = 'LineNr' })
|
||||
hl(0, 'CursorLineFold', { link = 'FoldColumn' })
|
||||
hl(0, 'CursorLineSign', { link = 'SignColumn' })
|
||||
hl(0, 'MatchParen', { fg = colors.cyan })
|
||||
hl(0, 'ModeMsg', { fg = colors.purple })
|
||||
hl(0, 'MsgArea', { link = 'Normal' })
|
||||
hl(0, 'MsgSeparator', { link = 'Normal' })
|
||||
hl(0, 'MoreMsg', { link = 'ModeMsg' })
|
||||
hl(0, 'NonText', { fg = colors.base01 })
|
||||
hl(0, 'NormalFloat', { fg = colors.base0, bg = colors.base04 })
|
||||
hl(0, 'FloatBorder', { link = 'WinSeparator' })
|
||||
hl(0, 'FloatTitle', { fg = colors.purple, bold = true })
|
||||
hl(0, 'NormalNC', { link = 'Normal' })
|
||||
hl(0, 'PmenuSel', { fg = colors.cyan, reverse = true })
|
||||
hl(0, 'PmenuKind', { link = 'Pmenu' })
|
||||
hl(0, 'PmenuKindSel', { link = 'PmenuSel' })
|
||||
hl(0, 'PmenuExtra', { link = 'Pmenu' })
|
||||
hl(0, 'PmenuExtraSel', { link = 'PmenuSel' })
|
||||
hl(0, 'PmenuSbar', { bg = colors.base04 })
|
||||
hl(0, 'PmenuThumb', { bg = colors.cyan })
|
||||
hl(0, 'Question', { fg = colors.diag_info })
|
||||
hl(0, 'QuickFixLine', { fg = colors.base0, bg = colors.base03 })
|
||||
hl(0, 'Search', { bg = colors.base02 })
|
||||
hl(0, 'SpecialKey', { link = 'NonText' })
|
||||
hl(0, 'SpellBad', { underline = true, strikethrough = true })
|
||||
hl(0, 'SpellCap', { fg = colors.diag_hint })
|
||||
hl(0, 'SpellLocal', { link = 'SpellCap' })
|
||||
hl(0, 'SpellRare', { fg = colors.diag_warning })
|
||||
hl(0, 'StatusLine', { fg = colors.base0, bg = colors.base04 })
|
||||
hl(0, 'StatusLineNC', { fg = colors.base01, bg = colors.base04 })
|
||||
hl(0, 'TabLine', { fg = colors.base01, bg = colors.base04 })
|
||||
hl(0, 'TabLineFill', { fg = colors.base0, bg = colors.base04 })
|
||||
hl(0, 'TabLineSel', { fg = colors.base0, bg = colors.base03 })
|
||||
hl(0, 'Title', { fg = colors.purple, bold = true })
|
||||
hl(0, 'Visual', { bg = colors.base02 })
|
||||
hl(0, 'VisualNOS', { link = 'Visual' })
|
||||
hl(0, 'warningMsg', { fg = colors.diag_warning })
|
||||
hl(0, 'Whitespace', { fg = colors.base01 })
|
||||
hl(0, 'WildMenu', { fg = colors.base02 })
|
||||
hl(0, 'WinBar', { link = 'Pmenu' })
|
||||
hl(0, 'WinBarNC', { link = 'WinBar' })
|
||||
|
||||
-- SYNTAX :h group-name
|
||||
hl(0, 'Comment', { fg = colors.base01 })
|
||||
hl(0, 'Constant', { fg = colors.purple })
|
||||
hl(0, 'String', { fg = colors.yellow })
|
||||
hl(0, 'Character', { link = 'String' })
|
||||
hl(0, 'Number', { link = 'Constant' })
|
||||
hl(0, 'Boolean', { link = 'Constant' })
|
||||
hl(0, 'Float', { link = 'Constant' })
|
||||
hl(0, 'Identifier', { fg = colors.base0 })
|
||||
hl(0, 'Parameter', { fg = colors.orange })
|
||||
hl(0, 'Property', { fg = colors.base0 })
|
||||
hl(0, 'Function', { fg = colors.green })
|
||||
hl(0, 'Statement', { fg = colors.pink })
|
||||
hl(0, 'Conditional', { link = 'Statement' })
|
||||
hl(0, 'Repeat', { link = 'Statement' })
|
||||
hl(0, 'Label', { link = 'Statement' })
|
||||
hl(0, 'Operator', { link = 'Statement' })
|
||||
hl(0, 'Keyword', { link = 'Statement' })
|
||||
hl(0, 'Exception', { link = 'Statement' })
|
||||
hl(0, 'PreProc', { link = 'Statement' })
|
||||
hl(0, 'Include', { link = 'Statement' })
|
||||
hl(0, 'Define', { link = 'Statement' })
|
||||
hl(0, 'Macro', { link = 'Statement' })
|
||||
hl(0, 'PreCondit', { fg = colors.pink })
|
||||
hl(0, 'Type', { fg = colors.cyan })
|
||||
hl(0, 'StorageClass', { link = 'Statement' })
|
||||
hl(0, 'Structure', { link = 'Type' })
|
||||
hl(0, 'Typedef', { link = 'Statement' })
|
||||
hl(0, 'Special', { fg = colors.red })
|
||||
hl(0, 'SpecialChar', { fg = colors.purple })
|
||||
hl(0, 'Tag', { fg = colors.pink })
|
||||
hl(0, 'TagAttribute', { fg = colors.green })
|
||||
hl(0, 'TagDelimiter', { fg = colors.base0 })
|
||||
hl(0, 'Delimiter', { fg = colors.base0 })
|
||||
hl(0, 'SpecialComment', { fg = colors.pink })
|
||||
hl(0, 'Debug', { fg = colors.pink })
|
||||
hl(0, 'Underlined', { fg = colors.cyan, underline = true })
|
||||
hl(0, 'Ignore', {})
|
||||
hl(0, 'Error', { fg = colors.diag_error, bold = true })
|
||||
hl(0, 'Todo', { fg = colors.purple, bold = true })
|
||||
|
||||
if config.plugins['nvim-treesitter'] then
|
||||
hl(0, '@variable', { link = 'Identifier' })
|
||||
hl(0, '@variable.builtin', { link = 'Constant' })
|
||||
hl(0, '@variable.parameter', { link = 'Parameter' })
|
||||
hl(0, '@variable.member', { link = 'Property' })
|
||||
hl(0, '@property', { link = 'Property' })
|
||||
hl(0, '@property.json', { fg = colors.cyan })
|
||||
hl(0, '@property.yaml', { fg = colors.cyan })
|
||||
hl(0, '@property.css', { fg = colors.cyan })
|
||||
hl(0, '@property.scss', { fg = colors.cyan })
|
||||
hl(0, '@constant', { link = 'Constant' })
|
||||
hl(0, '@constant.builtin', { link = 'Constant' })
|
||||
hl(0, '@constant.macro', { link = 'Constant' })
|
||||
hl(0, '@constant.html', { link = 'Tag' })
|
||||
hl(0, '@module', { link = 'Type' })
|
||||
hl(0, '@module.builtin', { link = 'Constant' })
|
||||
hl(0, '@label', { link = 'Statement' })
|
||||
hl(0, '@string', { link = 'String' })
|
||||
hl(0, '@string.documentation', { link = 'Statement' })
|
||||
hl(0, '@string.regexp', { link = 'Special' })
|
||||
hl(0, '@string.escape', { link = 'Statement' })
|
||||
hl(0, '@string.special', { link = 'Special' })
|
||||
hl(0, '@string.special.symbol', { link = 'Identifier' })
|
||||
hl(0, '@string.special.url', { link = 'Underlined' })
|
||||
hl(0, '@character', { link = 'Constant' })
|
||||
hl(0, '@character.special', { link = 'Constant' })
|
||||
hl(0, '@character.special.scss', { link = 'Keyword' })
|
||||
hl(0, '@character.printf', { link = 'Keyword' })
|
||||
hl(0, '@type', { link = 'Type' })
|
||||
hl(0, '@type.css', { fg = colors.green })
|
||||
hl(0, '@type.scss', { fg = colors.green })
|
||||
hl(0, '@type.builtin', { link = 'Keyword' })
|
||||
hl(0, '@type.definition', { link = 'Type' })
|
||||
hl(0, '@type.qualifier', { link = 'Type' })
|
||||
hl(0, '@attribute', { link = 'Keyword' })
|
||||
hl(0, '@function', { link = 'Function' })
|
||||
hl(0, '@function.builtin', { link = 'Function' })
|
||||
hl(0, '@function.call', { link = 'Function' })
|
||||
hl(0, '@function.macro', { link = 'Function' })
|
||||
hl(0, '@function.method', { link = 'Function' })
|
||||
hl(0, '@function.method.call', { link = 'Function' })
|
||||
hl(0, '@constructor', { link = 'Type' })
|
||||
hl(0, '@constructor.lua', { link = 'Delimiter' })
|
||||
hl(0, '@operator', { link = 'Operator' })
|
||||
hl(0, '@keyword', { link = 'Keyword' })
|
||||
hl(0, '@keyword.coroutine', { link = 'Statement' })
|
||||
hl(0, '@keyword.function', { link = 'Keyword' })
|
||||
hl(0, '@keyword.type', { link = 'Keyword' })
|
||||
hl(0, '@keyword.operator', { link = 'Statement' })
|
||||
hl(0, '@keyword.import', { link = 'Include' })
|
||||
hl(0, '@keyword.repeat', { link = 'Statement' })
|
||||
hl(0, '@keyword.return', { link = 'Statement' })
|
||||
hl(0, '@keyword.debug', { link = 'Keyword' })
|
||||
hl(0, '@keyword.exception', { link = 'Statement' })
|
||||
hl(0, '@keyword.conditional', { link = 'Statement' })
|
||||
hl(0, '@keyword.conditional.ternary', { link = 'Statement' })
|
||||
hl(0, '@keyword.directive', { link = 'Statement' })
|
||||
hl(0, '@keyword.directive.define', { link = 'Statement' })
|
||||
hl(0, '@punctuation.delimiter', { link = 'Delimiter' })
|
||||
hl(0, '@punctuation.bracket', { link = 'Delimiter' })
|
||||
hl(0, '@punctuation.special', { link = 'Keyword' })
|
||||
hl(0, '@comment', { link = 'Comment' })
|
||||
hl(0, '@comment.documentation', { link = 'Comment' })
|
||||
hl(0, '@comment.error', { fg = colors.diag_error, bg = colors.shade_error })
|
||||
hl(0, '@comment.warning', { fg = colors.diag_warning, bg = colors.shade_warning })
|
||||
hl(0, '@comment.todo', { fg = colors.purple, bg = colors.shade_purple })
|
||||
hl(0, '@comment.note', { fg = colors.diag_hint, bg = colors.shade_hint })
|
||||
hl(0, '@markup.strong', { fg = colors.orange, bold = true })
|
||||
hl(0, '@markup.italic', { fg = colors.yellow, italic = true })
|
||||
hl(0, '@markup.strikethrough', { fg = colors.base01 })
|
||||
hl(0, '@markup.underline', { fg = colors.cyan, underline = true })
|
||||
hl(0, '@markup.heading.1', { fg = colors.purple, bold = true })
|
||||
hl(0, '@markup.heading.2', { fg = colors.red, bold = true })
|
||||
hl(0, '@markup.heading.3', { fg = colors.orange, bold = true })
|
||||
hl(0, '@markup.heading.4', { fg = colors.yellow, bold = true })
|
||||
hl(0, '@markup.heading.5', { fg = colors.cyan, bold = true })
|
||||
hl(0, '@markup.heading.6', { fg = colors.green, bold = true })
|
||||
hl(0, '@markup.quote', { fg = colors.base01 })
|
||||
hl(0, '@markup.math', { fg = colors.purple })
|
||||
hl(0, '@markup.environment', { fg = colors.base01 })
|
||||
hl(0, '@markup.link', { fg = colors.orange, bold = true })
|
||||
hl(0, '@markup.link.label', { fg = colors.cyan, underline = true })
|
||||
hl(0, '@markup.link.url', { fg = colors.cyan, underline = true })
|
||||
hl(0, '@markup.raw', { fg = colors.base01 })
|
||||
hl(0, '@markup.raw.block', { fg = colors.base0 })
|
||||
hl(0, '@markup.list', { fg = colors.purple })
|
||||
hl(0, '@markup.list.checked', { fg = colors.git_added })
|
||||
hl(0, '@markup.list.unchecked', { fg = colors.git_modified })
|
||||
hl(0, '@diff.plus', { fg = colors.git_added })
|
||||
hl(0, '@diff.minus', { fg = colors.git_removed })
|
||||
hl(0, '@diff.delta', { fg = colors.git_modified })
|
||||
hl(0, '@tag', { link = 'Tag' })
|
||||
hl(0, '@tag.builtin', { link = 'Tag' })
|
||||
hl(0, '@tag.attribute', { link = 'TagAttribute' })
|
||||
hl(0, '@tag.delimiter', { link = 'TagDelimiter' })
|
||||
end
|
||||
|
||||
if config.plugins['rainbow-delimiters'] then
|
||||
hl(0, 'RainbowDelimiterRed', { fg = colors.red })
|
||||
hl(0, 'RainbowDelimiteYellow', { fg = colors.yellow })
|
||||
hl(0, 'RainbowDelimiterBlue', { fg = colors.pink })
|
||||
hl(0, 'RainbowDelimiterOrange', { fg = colors.orange })
|
||||
hl(0, 'RainbowDelimiterGreen', { fg = colors.green })
|
||||
hl(0, 'RainbowDelimiterViolet', { fg = colors.purple })
|
||||
hl(0, 'RainbowDelimiterCyan', { fg = colors.cyan })
|
||||
end
|
||||
|
||||
if config.plugins['nvim-lspconfig'] then
|
||||
hl(0, '@lsp.type.class', { link = 'Type' })
|
||||
hl(0, '@lsp.type.comment', {})
|
||||
hl(0, '@lsp.type.decorator', { link = 'Function' })
|
||||
hl(0, '@lsp.type.enum', { link = 'Type' })
|
||||
hl(0, '@lsp.type.enumMember', { link = 'Constant' })
|
||||
hl(0, '@lsp.type.event', { link = 'Function' })
|
||||
hl(0, '@lsp.type.function', { link = 'Function' })
|
||||
hl(0, '@lsp.type.interface', { link = 'Type' })
|
||||
hl(0, '@lsp.type.keyword', { link = 'Keyword' })
|
||||
hl(0, '@lsp.type.macro', { link = 'Constant' })
|
||||
hl(0, '@lsp.type.method', { link = 'Function' })
|
||||
-- hl(0,'@lsp.type.modifier')
|
||||
hl(0, '@lsp.type.namespace', { link = 'Type' })
|
||||
hl(0, '@lsp.type.number', { link = 'Number' })
|
||||
hl(0, '@lsp.type.operator', { link = 'Operator' })
|
||||
hl(0, '@lsp.type.parameter', { link = 'Parameter' })
|
||||
hl(0, '@lsp.type.property', { link = 'Property' })
|
||||
hl(0, '@lsp.type.regexp', { link = 'Special' })
|
||||
hl(0, '@lsp.type.string', { link = 'String' })
|
||||
hl(0, '@lsp.type.struct', { link = 'Type' })
|
||||
hl(0, '@lsp.type.type', { link = 'Type' })
|
||||
hl(0, '@lsp.type.typeParameter', { link = 'Type' })
|
||||
hl(0, '@lsp.type.variable', { link = 'Identifier' })
|
||||
hl(0, '@lsp.mod.readonly', { link = 'Constant' })
|
||||
hl(0, '@lsp.mod.global', { link = 'Constant' })
|
||||
hl(0, 'DiagnosticError', { fg = colors.diag_error })
|
||||
hl(0, 'DiagnosticWarn', { fg = colors.diag_warning })
|
||||
hl(0, 'DiagnosticInfo', { fg = colors.diag_info })
|
||||
hl(0, 'DiagnosticHint', { fg = colors.diag_hint })
|
||||
hl(0, 'DiagnosticOk', { fg = colors.diag_ok })
|
||||
hl(0, 'DiagnosticVirtualTextError', { fg = colors.diag_error, bg = colors.shade_error })
|
||||
hl(0, 'DiagnosticVirtualTextWarn', { fg = colors.diag_warning, bg = colors.shade_warning })
|
||||
hl(0, 'DiagnosticVirtualTextInfo', { fg = colors.diag_info, bg = colors.shade_info })
|
||||
hl(0, 'DiagnosticVirtualTextHint', { fg = colors.diag_hint, bg = colors.shade_hint })
|
||||
hl(0, 'DiagnosticVirtualTextOk', { fg = colors.diag_ok, bg = colors.shade_ok })
|
||||
hl(0, 'DiagnosticUnderlineError', { fg = colors.diag_error, underline = true })
|
||||
hl(0, 'DiagnosticUnderlineWarn', { fg = colors.diag_warning, underline = true })
|
||||
hl(0, 'DiagnosticUnderlineInfo', { fg = colors.diag_info, underline = true })
|
||||
hl(0, 'DiagnosticUnderlineHint', { fg = colors.diag_hint, underline = true })
|
||||
hl(0, 'DiagnosticUnderlineOk', { fg = colors.diag_ok, underline = true })
|
||||
hl(0, 'LspReferenceText', { link = 'Visual' })
|
||||
hl(0, 'LspReferenceRead', { link = 'Visual' })
|
||||
hl(0, 'LspReferenceWrite', { link = 'Visual' })
|
||||
hl(0, 'LspInlayHint', { fg = colors.inlay_hint })
|
||||
end
|
||||
|
||||
if config.plugins['nvim-navic'] then
|
||||
hl(0, 'NavicText', { fg = colors.base0 })
|
||||
hl(0, 'NavicSeparator', { link = 'Statement' })
|
||||
hl(0, 'NavicIconsMethod', { link = 'Function' })
|
||||
hl(0, 'NavicIconsFunction', { link = 'Function' })
|
||||
hl(0, 'NavicIconsField', { link = 'Identifier' })
|
||||
hl(0, 'NavicIconsVariable', { link = 'Identifier' })
|
||||
hl(0, 'NavicIconsClass', { link = 'Type' })
|
||||
hl(0, 'NavicIconsInterface', { link = 'Type' })
|
||||
hl(0, 'NavicIconsModule', { link = 'Type' })
|
||||
hl(0, 'NavicIconsNamespace', { link = 'Type' })
|
||||
hl(0, 'NavicIconsProperty', { link = 'Identifier' })
|
||||
hl(0, 'NavicIconsUnit', { link = 'Number' })
|
||||
hl(0, 'NavicIconsEnum', { link = 'Type' })
|
||||
hl(0, 'NavicIconsKeyword', { link = 'Statement' })
|
||||
hl(0, 'NavicIconsSnippet', { link = 'Tag' })
|
||||
hl(0, 'NavicIconsColor', { fg = colors.orange })
|
||||
hl(0, 'NavicIconsFile', { link = 'Identifier' })
|
||||
hl(0, 'NavicIconsReference', { link = 'Underlined' })
|
||||
hl(0, 'NavicIconsFolder', { link = 'Directory' })
|
||||
hl(0, 'NavicIconsEnumMember', { link = 'Constant' })
|
||||
hl(0, 'NavicIconsConstant', { link = 'Constant' })
|
||||
hl(0, 'NavicIconsStruct', { link = 'Identifier' })
|
||||
hl(0, 'NavicIconsEvent', { link = 'Function' })
|
||||
hl(0, 'NavicIconsOperator', { link = 'Operator' })
|
||||
hl(0, 'NavicIconsTypeParameter', { link = 'Type' })
|
||||
end
|
||||
|
||||
if config.plugins['nvim-cmp'] then
|
||||
hl(0, 'CmpItemKindText', { link = 'String' })
|
||||
hl(0, 'CmpItemKindMethod', { link = 'Function' })
|
||||
hl(0, 'CmpItemKindFunction', { link = 'Function' })
|
||||
hl(0, 'CmpItemKindField', { link = 'Identifier' })
|
||||
hl(0, 'CmpItemKindVariable', { link = 'Identifier' })
|
||||
hl(0, 'CmpItemKindClass', { link = 'Type' })
|
||||
hl(0, 'CmpItemKindInterface', { link = 'Type' })
|
||||
hl(0, 'CmpItemKindModule', { link = 'Type' })
|
||||
hl(0, 'CmpItemKindProperty', { link = 'Identifier' })
|
||||
hl(0, 'CmpItemKindUnit', { link = 'Number' })
|
||||
hl(0, 'CmpItemKindEnum', { link = 'Type' })
|
||||
hl(0, 'CmpItemKindKeyword', { link = 'Statement' })
|
||||
hl(0, 'CmpItemKindSnippet', { link = 'Tag' })
|
||||
hl(0, 'CmpItemKindColor', { fg = colors.orange })
|
||||
hl(0, 'CmpItemKindFile', { link = 'Identifier' })
|
||||
hl(0, 'CmpItemKindReference', { link = 'Underlined' })
|
||||
hl(0, 'CmpItemKindFolder', { link = 'Directory' })
|
||||
hl(0, 'CmpItemKindEnumMember', { link = 'Constant' })
|
||||
hl(0, 'CmpItemKindConstant', { link = 'Constant' })
|
||||
hl(0, 'CmpItemKindStruct', { link = 'Identifier' })
|
||||
hl(0, 'CmpItemKindEvent', { link = 'Function' })
|
||||
hl(0, 'CmpItemKindOperator', { link = 'Operator' })
|
||||
hl(0, 'CmpItemKindTypeParameter', { link = 'Type' })
|
||||
end
|
||||
|
||||
if config.plugins['indent-blankline.nvim'] then
|
||||
hl(0, 'IblIndent', { fg = colors.shade_purple, nocombine = true })
|
||||
hl(0, 'IblScope', { fg = colors.purple, nocombine = true })
|
||||
end
|
||||
|
||||
if config.plugins['neo-tree.nvim'] then
|
||||
hl(0, 'NeoTreeNormalNC', { link = 'NeoTreeNormal' })
|
||||
hl(0, 'NeoTreeDotFile', { fg = colors.base01 })
|
||||
hl(0, 'NeoTreeFileNameOpened', { link = 'Directory' })
|
||||
hl(0, 'NeoTreeFloatBorder', { link = 'WinSeparator' })
|
||||
hl(0, 'NeoTreeFloatTitle', { link = 'Title' })
|
||||
hl(0, 'NeoTreeGitAdded', { fg = colors.git_added })
|
||||
hl(0, 'NeoTreeGitConflict', { fg = colors.git_modified })
|
||||
hl(0, 'NeoTreeGitDeleted', { fg = colors.git_removed })
|
||||
hl(0, 'NeoTreeGitIgnored', { fg = colors.base01 })
|
||||
hl(0, 'NeoTreeGitModified', { fg = colors.git_modified })
|
||||
hl(0, 'NeoTreeGitUnstaged', { fg = colors.git_modified })
|
||||
hl(0, 'NeoTreeGitUntracked', { fg = colors.git_modified })
|
||||
hl(0, 'NeoTreeGitStaged', { fg = colors.git_added })
|
||||
end
|
||||
|
||||
if config.plugins['nvim-tree.lua'] then
|
||||
hl(0, 'NvimTreeSymlink', { link = 'Underlined' })
|
||||
hl(0, 'NvimTreeSymlinkIcon', { link = 'Directory' })
|
||||
hl(0, 'NvimTreeFolderName', { fg = colors.base0 })
|
||||
hl(0, 'NvimTreeRootFolder', { fg = colors.purple, bold = true })
|
||||
hl(0, 'NvimTreeFolderIcon', { link = 'Directory' })
|
||||
hl(0, 'NvimTreeEmptyFolderName', { fg = colors.base0 })
|
||||
hl(0, 'NvimTreeExecFile', { fg = colors.green })
|
||||
hl(0, 'NvimTreeOpenedFile', { fg = colors.purple, bold = true })
|
||||
hl(0, 'NvimTreeModifiedFile', { fg = colors.git_modified })
|
||||
hl(0, 'NvimTreeSpecialFile', { link = 'Special' })
|
||||
hl(0, 'NvimTreeIndentMarker', { fg = colors.shade_purple })
|
||||
hl(0, 'NvimTreeGitDirty', { fg = colors.git_modified })
|
||||
hl(0, 'NvimTreeGitStaged', { fg = colors.git_added })
|
||||
hl(0, 'NvimTreeGitMerge', { fg = colors.git_modified })
|
||||
hl(0, 'NvimTreeGitRenamed', { fg = colors.git_modified })
|
||||
hl(0, 'NvimTreeGitNew', { fg = colors.git_added })
|
||||
hl(0, 'NvimTreeGitDeleted', { fg = colors.git_removed })
|
||||
hl(0, 'NvimTreeNormalFloat', { link = 'NvimTreeNormal' })
|
||||
hl(0, 'NvimTreeEndOfBuffer', { fg = colors.base04 })
|
||||
hl(0, 'NvimTreeWinSeparator', { fg = colors.base04, bg = colors.base04 })
|
||||
end
|
||||
|
||||
if config.plugins['which-key.nvim'] then
|
||||
hl(0, 'WhichKey', { fg = colors.green })
|
||||
hl(0, 'WhichKeyDesc', { fg = colors.orange, italic = true })
|
||||
hl(0, 'WhichKeySeparator', { fg = colors.pink })
|
||||
hl(0, 'WhichKeyGroup', { fg = colors.purple })
|
||||
end
|
||||
|
||||
if config.plugins['dashboard-nvim'] then
|
||||
hl(0, 'DashboardHeader', { fg = colors.red })
|
||||
hl(0, 'DashboardFooter', { fg = colors.base01 })
|
||||
hl(0, 'DashboardDesc', { link = 'Directory' })
|
||||
hl(0, 'DashboardKey', { fg = colors.pink })
|
||||
hl(0, 'DashboardIcon', { link = 'Directory' })
|
||||
hl(0, 'DashboardShotCut', { fg = colors.base0 })
|
||||
end
|
||||
|
||||
if config.plugins['gitsigns.nvim'] then
|
||||
hl(0, 'GitSignsAdd', { fg = colors.git_added })
|
||||
hl(0, 'GitSignsChange', { fg = colors.git_modified })
|
||||
hl(0, 'GitSignsDelete', { fg = colors.git_removed })
|
||||
end
|
||||
|
||||
if config.plugins['neogit'] then
|
||||
hl(0, 'NeogitCursorLine', { link = 'CursorLine' })
|
||||
hl(0, 'NeogitBranch', { fg = colors.purple })
|
||||
hl(0, 'NeogitRemote', { fg = colors.cyan })
|
||||
hl(0, 'NeogitHunkHeader', { fg = colors.purple, bg = colors.shade_purple })
|
||||
hl(0, 'NeogitHunkHeaderHighlight', { link = 'Title' })
|
||||
hl(0, 'NeogitDiffContextHighlight', { fg = colors.base0, bg = colors.base03 })
|
||||
hl(0, 'NeogitDiffContext', { fg = colors.base0, bg = colors.base04 })
|
||||
hl(0, 'NeogitDiffDeleteHighlight', { fg = colors.git_removed, bg = colors.shade_red })
|
||||
hl(0, 'NeogitDiffDelete', { fg = colors.git_removed })
|
||||
hl(0, 'NeogitDiffAddHighlight', { fg = colors.git_added, bg = colors.shade_green })
|
||||
hl(0, 'NeogitDiffAdd', { fg = colors.git_added })
|
||||
end
|
||||
|
||||
if config.plugins['todo-comments.nvim'] then
|
||||
hl(0, 'TodoFgTODO', { fg = colors.purple })
|
||||
hl(0, 'TodoFgWARN', { fg = colors.diag_warning })
|
||||
hl(0, 'TodoFgTEST', { fg = colors.diag_ok })
|
||||
hl(0, 'TodoFgPERF', { fg = colors.yellow })
|
||||
hl(0, 'TodoFgNOTE', { fg = colors.cyan })
|
||||
hl(0, 'TodoFgHACK', { fg = colors.pink })
|
||||
hl(0, 'TodoFgFIX', { fg = colors.diag_error })
|
||||
hl(0, 'TodoSignTODO', { fg = colors.purple })
|
||||
hl(0, 'TodoSignWARN', { fg = colors.diag_warning })
|
||||
hl(0, 'TodoSignTEST', { fg = colors.diag_ok })
|
||||
hl(0, 'TodoSignPERF', { fg = colors.yellow })
|
||||
hl(0, 'TodoSignNOTE', { fg = colors.cyan })
|
||||
hl(0, 'TodoSignHACK', { fg = colors.pink })
|
||||
hl(0, 'TodoSignFIX', { fg = colors.diag_error })
|
||||
hl(0, 'TodoBgTODO', { fg = colors.purple, reverse = true })
|
||||
hl(0, 'TodoBgWARN', { fg = colors.diag_warning, reverse = true })
|
||||
hl(0, 'TodoBgTEST', { fg = colors.diag_ok, reverse = true })
|
||||
hl(0, 'TodoBgPERF', { fg = colors.yellow, reverse = true })
|
||||
hl(0, 'TodoBgNOTE', { fg = colors.cyan, reverse = true })
|
||||
hl(0, 'TodoBgHACK', { fg = colors.pink, reverse = true })
|
||||
hl(0, 'TodoBgFIX', { fg = colors.diag_error, reverse = true })
|
||||
end
|
||||
|
||||
if config.plugins['lazy.nvim'] then
|
||||
hl(0, 'LazyH1', { fg = colors.purple, bg = colors.base04 })
|
||||
hl(0, 'LazyButton', { fg = colors.base0, bg = colors.base02 })
|
||||
hl(0, 'LazyButtonActive', { bg = colors.base02, reverse = true })
|
||||
hl(0, 'LazyReasonStart', { fg = colors.cyan })
|
||||
end
|
||||
|
||||
if config.plugins['telescope.nvim'] then
|
||||
hl(0, 'TelescopeSelection', { link = 'CursorLine' })
|
||||
hl(0, 'TelescopeSelectionCaret', { fg = colors.purple })
|
||||
hl(0, 'TelescopeMultiIcon', { fg = colors.purple })
|
||||
hl(0, 'TelescopePreviewNormal', { link = 'TelescopeNormal' })
|
||||
hl(0, 'TelescopePromptNormal', { link = 'TelescopeNormal' })
|
||||
hl(0, 'TelescopeResultsNormal', { link = 'TelescopeNormal' })
|
||||
hl(0, 'TelescopePromptBorder', { link = 'TelescopeBorder' })
|
||||
hl(0, 'TelescopeResultsBorder', { link = 'TelescopeBorder' })
|
||||
hl(0, 'TelescopePreviewBorder', { link = 'TelescopeBorder' })
|
||||
hl(0, 'TelescopeTitle', { fg = colors.purple, bg = colors.shade_purple })
|
||||
hl(0, 'TelescopePromptTitle', { link = 'TelescopeTitle' })
|
||||
hl(0, 'TelescopeResultsTitle', { link = 'TelescopeTitle' })
|
||||
hl(0, 'TelescopePreviewTitle', { link = 'TelescopeTitle' })
|
||||
hl(0, 'TelescopeMatching', { fg = colors.purple, bg = colors.shade_purple })
|
||||
hl(0, 'TelescopePreviewMatch', { link = 'TelescopeMatching' })
|
||||
hl(0, 'TelescopePromptCounter', { link = 'NonText' })
|
||||
hl(0, 'TelescopePromptPrefix', { fg = colors.purple })
|
||||
end
|
||||
|
||||
if config.plugins['noice.nvim'] then
|
||||
hl(0, 'NoiceFormatProgressTodo', { fg = colors.diag_ok, bg = colors.shade_ok })
|
||||
hl(0, 'NoiceFormatProgressDone', { fg = colors.diag_ok, reverse = true })
|
||||
hl(0, 'NoiceLspProgressSpinner', { fg = colors.diag_ok })
|
||||
hl(0, 'NoiceLspProgressClient', { fg = colors.diag_ok })
|
||||
hl(0, 'NoiceLspProgressTitle', { link = 'Title' })
|
||||
end
|
||||
|
||||
if config.plugins['hop.nvim'] then
|
||||
hl(0, 'HopNextKey', { fg = colors.red })
|
||||
hl(0, 'HopNextKey1', { fg = colors.cyan })
|
||||
hl(0, 'HopUnmatched', { fg = colors.base01 })
|
||||
end
|
||||
|
||||
if config.plugins['mini.statusline'] then
|
||||
hl(0, 'MiniStatuslineModeNormal', { fg = colors.base03, bg = colors.purple })
|
||||
hl(0, 'MiniStatuslineModeInsert', { fg = colors.base03, bg = colors.green })
|
||||
hl(0, 'MiniStatuslineModeVisual', { fg = colors.yellow, bg = colors.base03 })
|
||||
hl(0, 'MiniStatuslineModeReplace', { fg = colors.red, bg = colors.base03 })
|
||||
hl(0, 'MiniStatuslineModeCommand', { fg = colors.orange, bg = colors.base03 })
|
||||
hl(0, 'MinistatusLineFileName', { fg = colors.base0, bg = colors.base04 })
|
||||
hl(0, 'MiniStatuslineDevinfo', { fg = colors.base0, bg = colors.base02 })
|
||||
hl(0, 'MiniStatuslineFileinfo', { fg = colors.base0, bg = colors.base02 })
|
||||
hl(0, 'MiniStatuslineInactive', { fg = colors.base01, bg = colors.base03 })
|
||||
end
|
||||
|
||||
if config.plugins['mini.tabline'] then
|
||||
hl(0, 'MiniTablineCurrent', { fg = colors.base0, bg = colors.base03 })
|
||||
hl(0, 'MiniTablineVisible', { fg = colors.base0, bg = colors.base03 })
|
||||
hl(0, 'MiniTablineHidden', { fg = colors.base01, bg = colors.base03 })
|
||||
hl(0, 'MiniTablineModifiedCurrent', { link = 'MiniTabLineCurrent' })
|
||||
hl(0, 'MiniTablineModifiedVisible', { link = 'MiniTablineVisible' })
|
||||
hl(0, 'MiniTablineModifiedHidden', { link = 'MiniTablineHidden' })
|
||||
hl(0, 'MiniTablineFill', { fg = colors.base0, bg = colors.base04 })
|
||||
hl(0, 'MiniTablineTabpagesection', { fg = colors.base0, bg = colors.base04 })
|
||||
end
|
||||
|
||||
if config.plugins['mini.starter'] then
|
||||
hl(0, 'MiniStarterCurrent', { link = 'CursorLine' })
|
||||
hl(0, 'MiniStarterHeader', { fg = colors.red })
|
||||
hl(0, 'MiniStarterFooter', { fg = colors.base01 })
|
||||
hl(0, 'MiniStarterItem', { fg = colors.base0 })
|
||||
hl(0, 'MiniStarterItemBullet', { fg = colors.pink })
|
||||
hl(0, 'MiniStarterItemPrefix', { fg = colors.pink })
|
||||
hl(0, 'MiniStarterSection', { link = 'Title' })
|
||||
hl(0, 'MiniStarterQuery', { fg = colors.pink, bold = true })
|
||||
end
|
||||
|
||||
if config.plugins['mini.cursorword'] then
|
||||
hl(0, 'MiniCursorword', { link = 'Visual' })
|
||||
end
|
||||
|
||||
if config.plugins['bufferline.nvim'] and config.transparent then
|
||||
local color = require 'dracula.color'
|
||||
local background = color.shade(colors.base02, 2)
|
||||
hl(0, 'BufferLineFill', { bg = background })
|
||||
hl(0, 'BufferLineBufferSelected', { fg = colors.base0 })
|
||||
hl(0, 'BufferLineSeparator', { fg = background })
|
||||
hl(0, 'BufferLineSeparatorSelected', { fg = background })
|
||||
hl(0, 'BufferLineSeparatorVisible', { fg = background })
|
||||
end
|
||||
|
||||
if config.styles then
|
||||
for group_name, group_val in pairs(config.styles) do
|
||||
local group = api.nvim_get_hl(0, { name = group_name, link = false })
|
||||
---@diagnostic disable-next-line: param-type-mismatch
|
||||
hl(0, group_name, vim.tbl_deep_extend('force', group, group_val))
|
||||
end
|
||||
end
|
||||
|
||||
if config.on_highlights then
|
||||
local color = require 'dracula.color'
|
||||
local highlights = config.on_highlights(colors, color)
|
||||
for group_name, group_val in pairs(highlights) do
|
||||
local group = api.nvim_get_hl(0, { name = group_name, link = false })
|
||||
---@diagnostic disable-next-line: param-type-mismatch
|
||||
hl(0, group_name, vim.tbl_deep_extend('force', group, group_val))
|
||||
end
|
||||
end
|
||||
require('dracula').load 'dracula-soft'
|
||||
|
|
|
|||
|
|
@ -2,603 +2,4 @@
|
|||
-- Repo: maxmx03/dracula.nvim
|
||||
-- Maintainer: Max Del Canto <github.com/maxmx03>
|
||||
-- License: MIT License
|
||||
|
||||
if vim.g.colors_name then
|
||||
vim.cmd 'hi clear'
|
||||
end
|
||||
|
||||
if vim.fn.exists 'syntax_on' then
|
||||
vim.cmd 'syntax reset'
|
||||
end
|
||||
|
||||
vim.g.colors_name = 'dracula'
|
||||
|
||||
local colors = require 'dracula.palette'
|
||||
local dracula = require 'dracula'
|
||||
---@type dracula.config
|
||||
local config = dracula.config
|
||||
local api = vim.api
|
||||
|
||||
if config.on_colors then
|
||||
local color = require 'dracula.color'
|
||||
colors = vim.tbl_extend('force', colors, config.on_colors(colors, color))
|
||||
end
|
||||
|
||||
local hl = vim.api.nvim_set_hl
|
||||
local none = 'NONE'
|
||||
|
||||
local term = {
|
||||
'base04',
|
||||
'red',
|
||||
'green',
|
||||
'yellow',
|
||||
'pink',
|
||||
'purple',
|
||||
'cyan',
|
||||
'base01',
|
||||
'base01',
|
||||
'orange',
|
||||
'green',
|
||||
'yellow',
|
||||
'cyan',
|
||||
'pink',
|
||||
'green',
|
||||
'base01',
|
||||
}
|
||||
for index, key in ipairs(term) do
|
||||
vim.g['terminal_color_' .. index - 1] = colors[key]
|
||||
end
|
||||
|
||||
if config.transparent then
|
||||
hl(0, 'WinSeparator', { fg = colors.base01, bg = none })
|
||||
hl(0, 'IncSearch', { fg = colors.red, bg = none })
|
||||
hl(0, 'LineNr', { fg = colors.base01, bg = none })
|
||||
hl(0, 'CursorLineNr', { fg = colors.purple, bg = none })
|
||||
hl(0, 'CursorLineNr', { fg = colors.purple, bg = none })
|
||||
hl(0, 'Normal', { fg = colors.base0, bg = none })
|
||||
hl(0, 'Pmenu', { fg = colors.base0, bg = none })
|
||||
hl(0, 'TelescopeNormal', { fg = colors.base0, bg = none })
|
||||
hl(0, 'TelescopeBorder', { fg = colors.purple, bg = none })
|
||||
hl(0, 'WhichKeyNormal', { fg = colors.green, bg = none })
|
||||
hl(0, 'NvimTreeNormal', { fg = colors.base0, bg = none })
|
||||
hl(0, 'NeoTreeNormal', { fg = colors.base0, bg = none })
|
||||
else
|
||||
hl(0, 'WinSeparator', { fg = colors.base01, bg = colors.base04 })
|
||||
hl(0, 'IncSearch', { fg = colors.red, bg = colors.shade_red, bold = true })
|
||||
hl(0, 'LineNr', { fg = colors.base01, bg = colors.base03 })
|
||||
hl(0, 'CursorLineNr', { fg = colors.purple, bg = colors.base03 })
|
||||
hl(0, 'CursorLineNr', { fg = colors.purple, bg = colors.base03 })
|
||||
hl(0, 'Normal', { fg = colors.base0, bg = colors.base03 })
|
||||
hl(0, 'Pmenu', { fg = colors.base0, bg = colors.base04 })
|
||||
hl(0, 'TelescopeNormal', { fg = colors.base0, bg = colors.base04 })
|
||||
hl(0, 'WhichKeyNormal', { fg = colors.green, bg = colors.base04 })
|
||||
hl(0, 'TelescopeBorder', { fg = colors.purple, bg = colors.base04 })
|
||||
hl(0, 'NvimTreeNormal', { fg = colors.base0, bg = colors.base04 })
|
||||
hl(0, 'NeoTreeNormal', { fg = colors.base0, bg = colors.base04 })
|
||||
end
|
||||
|
||||
-- EDITOR :h highlight-groups
|
||||
hl(0, 'ColorColumn', { bg = colors.base04 })
|
||||
hl(0, 'Conceal', { fg = colors.base02 })
|
||||
hl(0, 'CurSearch', { fg = colors.red, bg = colors.shade_red })
|
||||
hl(0, 'Cursor', { fg = colors.base03, bg = colors.purple })
|
||||
hl(0, 'lCursor', { link = 'Cursor' })
|
||||
hl(0, 'CursorIM', { link = 'Cursor' })
|
||||
hl(0, 'CursorColumn', { link = 'ColorColumn' })
|
||||
hl(0, 'CursorLine', { bg = colors.base02 })
|
||||
hl(0, 'Directory', { fg = colors.purple })
|
||||
hl(0, 'DiffAdd', { fg = colors.git_added })
|
||||
hl(0, 'DiffChange', { fg = colors.git_modified })
|
||||
hl(0, 'DiffDelete', { fg = colors.git_removed, reverse = true })
|
||||
hl(0, 'DiffText', { fg = colors.cyan, reverse = true })
|
||||
hl(0, 'EndOfBuffer', { fg = colors.base03 })
|
||||
hl(0, 'TermCursor', { link = 'Cursor' })
|
||||
hl(0, 'TermCursorNC', { link = 'Cursor' })
|
||||
hl(0, 'ErrorMsg', { fg = colors.diag_error })
|
||||
|
||||
hl(0, 'Folded', { fg = colors.base0, bg = colors.base02 })
|
||||
hl(0, 'FoldColumn', { fg = colors.base0, bg = colors.base04 })
|
||||
hl(0, 'SignColumn', { link = 'Normal' })
|
||||
hl(0, 'Substitute', { link = 'IncSearch' })
|
||||
hl(0, 'LineNrAbove', { link = 'LineNr' })
|
||||
hl(0, 'LineNrBelow', { link = 'LineNr' })
|
||||
hl(0, 'CursorLineFold', { link = 'FoldColumn' })
|
||||
hl(0, 'CursorLineSign', { link = 'SignColumn' })
|
||||
hl(0, 'MatchParen', { fg = colors.cyan })
|
||||
hl(0, 'ModeMsg', { fg = colors.purple })
|
||||
hl(0, 'MsgArea', { link = 'Normal' })
|
||||
hl(0, 'MsgSeparator', { link = 'Normal' })
|
||||
hl(0, 'MoreMsg', { link = 'ModeMsg' })
|
||||
hl(0, 'NonText', { fg = colors.base01 })
|
||||
hl(0, 'NormalFloat', { fg = colors.base0, bg = colors.base04 })
|
||||
hl(0, 'FloatBorder', { link = 'WinSeparator' })
|
||||
hl(0, 'FloatTitle', { fg = colors.purple, bold = true })
|
||||
hl(0, 'NormalNC', { link = 'Normal' })
|
||||
hl(0, 'PmenuSel', { fg = colors.cyan, reverse = true })
|
||||
hl(0, 'PmenuKind', { link = 'Pmenu' })
|
||||
hl(0, 'PmenuKindSel', { link = 'PmenuSel' })
|
||||
hl(0, 'PmenuExtra', { link = 'Pmenu' })
|
||||
hl(0, 'PmenuExtraSel', { link = 'PmenuSel' })
|
||||
hl(0, 'PmenuSbar', { bg = colors.base04 })
|
||||
hl(0, 'PmenuThumb', { bg = colors.cyan })
|
||||
hl(0, 'Question', { fg = colors.diag_info })
|
||||
hl(0, 'QuickFixLine', { fg = colors.base0, bg = colors.base03 })
|
||||
hl(0, 'Search', { bg = colors.base02 })
|
||||
hl(0, 'SpecialKey', { link = 'NonText' })
|
||||
hl(0, 'SpellBad', { underline = true, strikethrough = true })
|
||||
hl(0, 'SpellCap', { fg = colors.diag_hint })
|
||||
hl(0, 'SpellLocal', { link = 'SpellCap' })
|
||||
hl(0, 'SpellRare', { fg = colors.diag_warning })
|
||||
hl(0, 'StatusLine', { fg = colors.base0, bg = colors.base04 })
|
||||
hl(0, 'StatusLineNC', { fg = colors.base01, bg = colors.base04 })
|
||||
hl(0, 'TabLine', { fg = colors.base01, bg = colors.base04 })
|
||||
hl(0, 'TabLineFill', { fg = colors.base0, bg = colors.base04 })
|
||||
hl(0, 'TabLineSel', { fg = colors.base0, bg = colors.base03 })
|
||||
hl(0, 'Title', { fg = colors.purple, bold = true })
|
||||
hl(0, 'Visual', { bg = colors.base02 })
|
||||
hl(0, 'VisualNOS', { link = 'Visual' })
|
||||
hl(0, 'warningMsg', { fg = colors.diag_warning })
|
||||
hl(0, 'Whitespace', { fg = colors.base01 })
|
||||
hl(0, 'WildMenu', { fg = colors.base02 })
|
||||
hl(0, 'WinBar', { link = 'Pmenu' })
|
||||
hl(0, 'WinBarNC', { link = 'WinBar' })
|
||||
|
||||
-- SYNTAX :h group-name
|
||||
hl(0, 'Comment', { fg = colors.base01 })
|
||||
hl(0, 'Constant', { fg = colors.purple })
|
||||
hl(0, 'String', { fg = colors.yellow })
|
||||
hl(0, 'Character', { link = 'String' })
|
||||
hl(0, 'Number', { link = 'Constant' })
|
||||
hl(0, 'Boolean', { link = 'Constant' })
|
||||
hl(0, 'Float', { link = 'Constant' })
|
||||
hl(0, 'Identifier', { fg = colors.base0 })
|
||||
hl(0, 'Parameter', { fg = colors.orange })
|
||||
hl(0, 'Property', { fg = colors.base0 })
|
||||
hl(0, 'Function', { fg = colors.green })
|
||||
hl(0, 'Statement', { fg = colors.pink })
|
||||
hl(0, 'Conditional', { link = 'Statement' })
|
||||
hl(0, 'Repeat', { link = 'Statement' })
|
||||
hl(0, 'Label', { link = 'Statement' })
|
||||
hl(0, 'Operator', { link = 'Statement' })
|
||||
hl(0, 'Keyword', { link = 'Statement' })
|
||||
hl(0, 'Exception', { link = 'Statement' })
|
||||
hl(0, 'PreProc', { link = 'Statement' })
|
||||
hl(0, 'Include', { link = 'Statement' })
|
||||
hl(0, 'Define', { link = 'Statement' })
|
||||
hl(0, 'Macro', { link = 'Statement' })
|
||||
hl(0, 'PreCondit', { fg = colors.pink })
|
||||
hl(0, 'Type', { fg = colors.cyan })
|
||||
hl(0, 'StorageClass', { link = 'Statement' })
|
||||
hl(0, 'Structure', { link = 'Type' })
|
||||
hl(0, 'Typedef', { link = 'Statement' })
|
||||
hl(0, 'Special', { fg = colors.red })
|
||||
hl(0, 'SpecialChar', { fg = colors.purple })
|
||||
hl(0, 'Tag', { fg = colors.pink })
|
||||
hl(0, 'TagAttribute', { fg = colors.green })
|
||||
hl(0, 'TagDelimiter', { fg = colors.base0 })
|
||||
hl(0, 'Delimiter', { fg = colors.base0 })
|
||||
hl(0, 'SpecialComment', { fg = colors.pink })
|
||||
hl(0, 'Debug', { fg = colors.pink })
|
||||
hl(0, 'Underlined', { fg = colors.cyan, underline = true })
|
||||
hl(0, 'Ignore', {})
|
||||
hl(0, 'Error', { fg = colors.diag_error, bold = true })
|
||||
hl(0, 'Todo', { fg = colors.purple, bold = true })
|
||||
|
||||
if config.plugins['nvim-treesitter'] then
|
||||
hl(0, '@variable', { link = 'Identifier' })
|
||||
hl(0, '@variable.builtin', { link = 'Constant' })
|
||||
hl(0, '@variable.parameter', { link = 'Parameter' })
|
||||
hl(0, '@variable.member', { link = 'Property' })
|
||||
hl(0, '@property', { link = 'Property' })
|
||||
hl(0, '@property.json', { fg = colors.cyan })
|
||||
hl(0, '@property.yaml', { fg = colors.cyan })
|
||||
hl(0, '@property.css', { fg = colors.cyan })
|
||||
hl(0, '@property.scss', { fg = colors.cyan })
|
||||
hl(0, '@constant', { link = 'Constant' })
|
||||
hl(0, '@constant.builtin', { link = 'Constant' })
|
||||
hl(0, '@constant.macro', { link = 'Constant' })
|
||||
hl(0, '@constant.html', { link = 'Tag' })
|
||||
hl(0, '@module', { link = 'Type' })
|
||||
hl(0, '@module.builtin', { link = 'Constant' })
|
||||
hl(0, '@label', { link = 'Statement' })
|
||||
hl(0, '@string', { link = 'String' })
|
||||
hl(0, '@string.documentation', { link = 'Statement' })
|
||||
hl(0, '@string.regexp', { link = 'Special' })
|
||||
hl(0, '@string.escape', { link = 'Statement' })
|
||||
hl(0, '@string.special', { link = 'Special' })
|
||||
hl(0, '@string.special.symbol', { link = 'Identifier' })
|
||||
hl(0, '@string.special.url', { link = 'Underlined' })
|
||||
hl(0, '@character', { link = 'Constant' })
|
||||
hl(0, '@character.special', { link = 'Constant' })
|
||||
hl(0, '@character.special.scss', { link = 'Keyword' })
|
||||
hl(0, '@character.printf', { link = 'Keyword' })
|
||||
hl(0, '@type', { link = 'Type' })
|
||||
hl(0, '@type.css', { fg = colors.green })
|
||||
hl(0, '@type.scss', { fg = colors.green })
|
||||
hl(0, '@type.builtin', { link = 'Keyword' })
|
||||
hl(0, '@type.definition', { link = 'Type' })
|
||||
hl(0, '@type.qualifier', { link = 'Type' })
|
||||
hl(0, '@attribute', { link = 'Keyword' })
|
||||
hl(0, '@function', { link = 'Function' })
|
||||
hl(0, '@function.builtin', { link = 'Function' })
|
||||
hl(0, '@function.call', { link = 'Function' })
|
||||
hl(0, '@function.macro', { link = 'Function' })
|
||||
hl(0, '@function.method', { link = 'Function' })
|
||||
hl(0, '@function.method.call', { link = 'Function' })
|
||||
hl(0, '@constructor', { link = 'Type' })
|
||||
hl(0, '@constructor.lua', { link = 'Delimiter' })
|
||||
hl(0, '@operator', { link = 'Operator' })
|
||||
hl(0, '@keyword', { link = 'Keyword' })
|
||||
hl(0, '@keyword.coroutine', { link = 'Statement' })
|
||||
hl(0, '@keyword.function', { link = 'Keyword' })
|
||||
hl(0, '@keyword.type', { link = 'Keyword' })
|
||||
hl(0, '@keyword.operator', { link = 'Statement' })
|
||||
hl(0, '@keyword.import', { link = 'Include' })
|
||||
hl(0, '@keyword.repeat', { link = 'Statement' })
|
||||
hl(0, '@keyword.return', { link = 'Statement' })
|
||||
hl(0, '@keyword.debug', { link = 'Keyword' })
|
||||
hl(0, '@keyword.exception', { link = 'Statement' })
|
||||
hl(0, '@keyword.conditional', { link = 'Statement' })
|
||||
hl(0, '@keyword.conditional.ternary', { link = 'Statement' })
|
||||
hl(0, '@keyword.directive', { link = 'Statement' })
|
||||
hl(0, '@keyword.directive.define', { link = 'Statement' })
|
||||
hl(0, '@punctuation.delimiter', { link = 'Delimiter' })
|
||||
hl(0, '@punctuation.bracket', { link = 'Delimiter' })
|
||||
hl(0, '@punctuation.special', { link = 'Keyword' })
|
||||
hl(0, '@comment', { link = 'Comment' })
|
||||
hl(0, '@comment.documentation', { link = 'Comment' })
|
||||
hl(0, '@comment.error', { fg = colors.diag_error, bg = colors.shade_error })
|
||||
hl(0, '@comment.warning', { fg = colors.diag_warning, bg = colors.shade_warning })
|
||||
hl(0, '@comment.todo', { fg = colors.purple, bg = colors.shade_purple })
|
||||
hl(0, '@comment.note', { fg = colors.diag_hint, bg = colors.shade_hint })
|
||||
hl(0, '@markup.strong', { fg = colors.orange, bold = true })
|
||||
hl(0, '@markup.italic', { fg = colors.yellow, italic = true })
|
||||
hl(0, '@markup.strikethrough', { fg = colors.base01 })
|
||||
hl(0, '@markup.underline', { fg = colors.cyan, underline = true })
|
||||
hl(0, '@markup.heading.1', { fg = colors.purple, bold = true })
|
||||
hl(0, '@markup.heading.2', { fg = colors.red, bold = true })
|
||||
hl(0, '@markup.heading.3', { fg = colors.orange, bold = true })
|
||||
hl(0, '@markup.heading.4', { fg = colors.yellow, bold = true })
|
||||
hl(0, '@markup.heading.5', { fg = colors.cyan, bold = true })
|
||||
hl(0, '@markup.heading.6', { fg = colors.green, bold = true })
|
||||
hl(0, '@markup.quote', { fg = colors.base01 })
|
||||
hl(0, '@markup.math', { fg = colors.purple })
|
||||
hl(0, '@markup.environment', { fg = colors.base01 })
|
||||
hl(0, '@markup.link', { fg = colors.orange, bold = true })
|
||||
hl(0, '@markup.link.label', { fg = colors.cyan, underline = true })
|
||||
hl(0, '@markup.link.url', { fg = colors.cyan, underline = true })
|
||||
hl(0, '@markup.raw', { fg = colors.base01 })
|
||||
hl(0, '@markup.raw.block', { fg = colors.base0 })
|
||||
hl(0, '@markup.list', { fg = colors.purple })
|
||||
hl(0, '@markup.list.checked', { fg = colors.git_added })
|
||||
hl(0, '@markup.list.unchecked', { fg = colors.git_modified })
|
||||
hl(0, '@diff.plus', { fg = colors.git_added })
|
||||
hl(0, '@diff.minus', { fg = colors.git_removed })
|
||||
hl(0, '@diff.delta', { fg = colors.git_modified })
|
||||
hl(0, '@tag', { link = 'Tag' })
|
||||
hl(0, '@tag.builtin', { link = 'Tag' })
|
||||
hl(0, '@tag.attribute', { link = 'TagAttribute' })
|
||||
hl(0, '@tag.delimiter', { link = 'TagDelimiter' })
|
||||
end
|
||||
|
||||
if config.plugins['rainbow-delimiters'] then
|
||||
hl(0, 'RainbowDelimiterRed', { fg = colors.red })
|
||||
hl(0, 'RainbowDelimiteYellow', { fg = colors.yellow })
|
||||
hl(0, 'RainbowDelimiterBlue', { fg = colors.pink })
|
||||
hl(0, 'RainbowDelimiterOrange', { fg = colors.orange })
|
||||
hl(0, 'RainbowDelimiterGreen', { fg = colors.green })
|
||||
hl(0, 'RainbowDelimiterViolet', { fg = colors.purple })
|
||||
hl(0, 'RainbowDelimiterCyan', { fg = colors.cyan })
|
||||
end
|
||||
|
||||
if config.plugins['nvim-lspconfig'] then
|
||||
hl(0, '@lsp.type.class', { link = 'Type' })
|
||||
hl(0, '@lsp.type.comment', {})
|
||||
hl(0, '@lsp.type.decorator', { link = 'Function' })
|
||||
hl(0, '@lsp.type.enum', { link = 'Type' })
|
||||
hl(0, '@lsp.type.enumMember', { link = 'Constant' })
|
||||
hl(0, '@lsp.type.event', { link = 'Function' })
|
||||
hl(0, '@lsp.type.function', { link = 'Function' })
|
||||
hl(0, '@lsp.type.interface', { link = 'Type' })
|
||||
hl(0, '@lsp.type.keyword', { link = 'Keyword' })
|
||||
hl(0, '@lsp.type.macro', { link = 'Constant' })
|
||||
hl(0, '@lsp.type.method', { link = 'Function' })
|
||||
-- hl(0,'@lsp.type.modifier')
|
||||
hl(0, '@lsp.type.namespace', { link = 'Type' })
|
||||
hl(0, '@lsp.type.number', { link = 'Number' })
|
||||
hl(0, '@lsp.type.operator', { link = 'Operator' })
|
||||
hl(0, '@lsp.type.parameter', { link = 'Parameter' })
|
||||
hl(0, '@lsp.type.property', { link = 'Property' })
|
||||
hl(0, '@lsp.type.regexp', { link = 'Special' })
|
||||
hl(0, '@lsp.type.string', { link = 'String' })
|
||||
hl(0, '@lsp.type.struct', { link = 'Type' })
|
||||
hl(0, '@lsp.type.type', { link = 'Type' })
|
||||
hl(0, '@lsp.type.typeParameter', { link = 'Type' })
|
||||
hl(0, '@lsp.type.variable', { link = 'Identifier' })
|
||||
hl(0, '@lsp.mod.readonly', { link = 'Constant' })
|
||||
hl(0, '@lsp.mod.global', { link = 'Constant' })
|
||||
hl(0, 'DiagnosticError', { fg = colors.diag_error })
|
||||
hl(0, 'DiagnosticWarn', { fg = colors.diag_warning })
|
||||
hl(0, 'DiagnosticInfo', { fg = colors.diag_info })
|
||||
hl(0, 'DiagnosticHint', { fg = colors.diag_hint })
|
||||
hl(0, 'DiagnosticOk', { fg = colors.diag_ok })
|
||||
hl(0, 'DiagnosticVirtualTextError', { fg = colors.diag_error, bg = colors.shade_error })
|
||||
hl(0, 'DiagnosticVirtualTextWarn', { fg = colors.diag_warning, bg = colors.shade_warning })
|
||||
hl(0, 'DiagnosticVirtualTextInfo', { fg = colors.diag_info, bg = colors.shade_info })
|
||||
hl(0, 'DiagnosticVirtualTextHint', { fg = colors.diag_hint, bg = colors.shade_hint })
|
||||
hl(0, 'DiagnosticVirtualTextOk', { fg = colors.diag_ok, bg = colors.shade_ok })
|
||||
hl(0, 'DiagnosticUnderlineError', { fg = colors.diag_error, underline = true })
|
||||
hl(0, 'DiagnosticUnderlineWarn', { fg = colors.diag_warning, underline = true })
|
||||
hl(0, 'DiagnosticUnderlineInfo', { fg = colors.diag_info, underline = true })
|
||||
hl(0, 'DiagnosticUnderlineHint', { fg = colors.diag_hint, underline = true })
|
||||
hl(0, 'DiagnosticUnderlineOk', { fg = colors.diag_ok, underline = true })
|
||||
hl(0, 'LspReferenceText', { link = 'Visual' })
|
||||
hl(0, 'LspReferenceRead', { link = 'Visual' })
|
||||
hl(0, 'LspReferenceWrite', { link = 'Visual' })
|
||||
hl(0, 'LspInlayHint', { fg = colors.inlay_hint })
|
||||
end
|
||||
|
||||
if config.plugins['nvim-navic'] then
|
||||
hl(0, 'NavicText', { fg = colors.base0 })
|
||||
hl(0, 'NavicSeparator', { link = 'Statement' })
|
||||
hl(0, 'NavicIconsMethod', { link = 'Function' })
|
||||
hl(0, 'NavicIconsFunction', { link = 'Function' })
|
||||
hl(0, 'NavicIconsField', { link = 'Identifier' })
|
||||
hl(0, 'NavicIconsVariable', { link = 'Identifier' })
|
||||
hl(0, 'NavicIconsClass', { link = 'Type' })
|
||||
hl(0, 'NavicIconsInterface', { link = 'Type' })
|
||||
hl(0, 'NavicIconsModule', { link = 'Type' })
|
||||
hl(0, 'NavicIconsNamespace', { link = 'Type' })
|
||||
hl(0, 'NavicIconsProperty', { link = 'Identifier' })
|
||||
hl(0, 'NavicIconsUnit', { link = 'Number' })
|
||||
hl(0, 'NavicIconsEnum', { link = 'Type' })
|
||||
hl(0, 'NavicIconsKeyword', { link = 'Statement' })
|
||||
hl(0, 'NavicIconsSnippet', { link = 'Tag' })
|
||||
hl(0, 'NavicIconsColor', { fg = colors.orange })
|
||||
hl(0, 'NavicIconsFile', { link = 'Identifier' })
|
||||
hl(0, 'NavicIconsReference', { link = 'Underlined' })
|
||||
hl(0, 'NavicIconsFolder', { link = 'Directory' })
|
||||
hl(0, 'NavicIconsEnumMember', { link = 'Constant' })
|
||||
hl(0, 'NavicIconsConstant', { link = 'Constant' })
|
||||
hl(0, 'NavicIconsStruct', { link = 'Identifier' })
|
||||
hl(0, 'NavicIconsEvent', { link = 'Function' })
|
||||
hl(0, 'NavicIconsOperator', { link = 'Operator' })
|
||||
hl(0, 'NavicIconsTypeParameter', { link = 'Type' })
|
||||
end
|
||||
|
||||
if config.plugins['nvim-cmp'] then
|
||||
hl(0, 'CmpItemKindText', { link = 'String' })
|
||||
hl(0, 'CmpItemKindMethod', { link = 'Function' })
|
||||
hl(0, 'CmpItemKindFunction', { link = 'Function' })
|
||||
hl(0, 'CmpItemKindField', { link = 'Identifier' })
|
||||
hl(0, 'CmpItemKindVariable', { link = 'Identifier' })
|
||||
hl(0, 'CmpItemKindClass', { link = 'Type' })
|
||||
hl(0, 'CmpItemKindInterface', { link = 'Type' })
|
||||
hl(0, 'CmpItemKindModule', { link = 'Type' })
|
||||
hl(0, 'CmpItemKindProperty', { link = 'Identifier' })
|
||||
hl(0, 'CmpItemKindUnit', { link = 'Number' })
|
||||
hl(0, 'CmpItemKindEnum', { link = 'Type' })
|
||||
hl(0, 'CmpItemKindKeyword', { link = 'Statement' })
|
||||
hl(0, 'CmpItemKindSnippet', { link = 'Tag' })
|
||||
hl(0, 'CmpItemKindColor', { fg = colors.orange })
|
||||
hl(0, 'CmpItemKindFile', { link = 'Identifier' })
|
||||
hl(0, 'CmpItemKindReference', { link = 'Underlined' })
|
||||
hl(0, 'CmpItemKindFolder', { link = 'Directory' })
|
||||
hl(0, 'CmpItemKindEnumMember', { link = 'Constant' })
|
||||
hl(0, 'CmpItemKindConstant', { link = 'Constant' })
|
||||
hl(0, 'CmpItemKindStruct', { link = 'Identifier' })
|
||||
hl(0, 'CmpItemKindEvent', { link = 'Function' })
|
||||
hl(0, 'CmpItemKindOperator', { link = 'Operator' })
|
||||
hl(0, 'CmpItemKindTypeParameter', { link = 'Type' })
|
||||
end
|
||||
|
||||
if config.plugins['indent-blankline.nvim'] then
|
||||
hl(0, 'IblIndent', { fg = colors.shade_purple, nocombine = true })
|
||||
hl(0, 'IblScope', { fg = colors.purple, nocombine = true })
|
||||
end
|
||||
|
||||
if config.plugins['neo-tree.nvim'] then
|
||||
hl(0, 'NeoTreeNormalNC', { link = 'NeoTreeNormal' })
|
||||
hl(0, 'NeoTreeDotFile', { fg = colors.base01 })
|
||||
hl(0, 'NeoTreeFileNameOpened', { link = 'Directory' })
|
||||
hl(0, 'NeoTreeFloatBorder', { link = 'WinSeparator' })
|
||||
hl(0, 'NeoTreeFloatTitle', { link = 'Title' })
|
||||
hl(0, 'NeoTreeGitAdded', { fg = colors.git_added })
|
||||
hl(0, 'NeoTreeGitConflict', { fg = colors.git_modified })
|
||||
hl(0, 'NeoTreeGitDeleted', { fg = colors.git_removed })
|
||||
hl(0, 'NeoTreeGitIgnored', { fg = colors.base01 })
|
||||
hl(0, 'NeoTreeGitModified', { fg = colors.git_modified })
|
||||
hl(0, 'NeoTreeGitUnstaged', { fg = colors.git_modified })
|
||||
hl(0, 'NeoTreeGitUntracked', { fg = colors.git_modified })
|
||||
hl(0, 'NeoTreeGitStaged', { fg = colors.git_added })
|
||||
end
|
||||
|
||||
if config.plugins['nvim-tree.lua'] then
|
||||
hl(0, 'NvimTreeSymlink', { link = 'Underlined' })
|
||||
hl(0, 'NvimTreeSymlinkIcon', { link = 'Directory' })
|
||||
hl(0, 'NvimTreeFolderName', { fg = colors.base0 })
|
||||
hl(0, 'NvimTreeRootFolder', { fg = colors.purple, bold = true })
|
||||
hl(0, 'NvimTreeFolderIcon', { link = 'Directory' })
|
||||
hl(0, 'NvimTreeEmptyFolderName', { fg = colors.base0 })
|
||||
hl(0, 'NvimTreeExecFile', { fg = colors.green })
|
||||
hl(0, 'NvimTreeOpenedFile', { fg = colors.purple, bold = true })
|
||||
hl(0, 'NvimTreeModifiedFile', { fg = colors.git_modified })
|
||||
hl(0, 'NvimTreeSpecialFile', { link = 'Special' })
|
||||
hl(0, 'NvimTreeIndentMarker', { fg = colors.shade_purple })
|
||||
hl(0, 'NvimTreeGitDirty', { fg = colors.git_modified })
|
||||
hl(0, 'NvimTreeGitStaged', { fg = colors.git_added })
|
||||
hl(0, 'NvimTreeGitMerge', { fg = colors.git_modified })
|
||||
hl(0, 'NvimTreeGitRenamed', { fg = colors.git_modified })
|
||||
hl(0, 'NvimTreeGitNew', { fg = colors.git_added })
|
||||
hl(0, 'NvimTreeGitDeleted', { fg = colors.git_removed })
|
||||
hl(0, 'NvimTreeNormalFloat', { link = 'NvimTreeNormal' })
|
||||
hl(0, 'NvimTreeEndOfBuffer', { fg = colors.base04 })
|
||||
hl(0, 'NvimTreeWinSeparator', { fg = colors.base04, bg = colors.base04 })
|
||||
end
|
||||
|
||||
if config.plugins['which-key.nvim'] then
|
||||
hl(0, 'WhichKey', { fg = colors.green })
|
||||
hl(0, 'WhichKeyDesc', { fg = colors.orange, italic = true })
|
||||
hl(0, 'WhichKeySeparator', { fg = colors.pink })
|
||||
hl(0, 'WhichKeyGroup', { fg = colors.purple })
|
||||
end
|
||||
|
||||
if config.plugins['dashboard-nvim'] then
|
||||
hl(0, 'DashboardHeader', { fg = colors.red })
|
||||
hl(0, 'DashboardFooter', { fg = colors.base01 })
|
||||
hl(0, 'DashboardDesc', { link = 'Directory' })
|
||||
hl(0, 'DashboardKey', { fg = colors.pink })
|
||||
hl(0, 'DashboardIcon', { link = 'Directory' })
|
||||
hl(0, 'DashboardShotCut', { fg = colors.base0 })
|
||||
end
|
||||
|
||||
if config.plugins['gitsigns.nvim'] then
|
||||
hl(0, 'GitSignsAdd', { fg = colors.git_added })
|
||||
hl(0, 'GitSignsChange', { fg = colors.git_modified })
|
||||
hl(0, 'GitSignsDelete', { fg = colors.git_removed })
|
||||
end
|
||||
|
||||
if config.plugins['neogit'] then
|
||||
hl(0, 'NeogitCursorLine', { link = 'CursorLine' })
|
||||
hl(0, 'NeogitBranch', { fg = colors.purple })
|
||||
hl(0, 'NeogitRemote', { fg = colors.cyan })
|
||||
hl(0, 'NeogitHunkHeader', { fg = colors.purple, bg = colors.shade_purple })
|
||||
hl(0, 'NeogitHunkHeaderHighlight', { link = 'Title' })
|
||||
hl(0, 'NeogitDiffContextHighlight', { fg = colors.base0, bg = colors.base03 })
|
||||
hl(0, 'NeogitDiffContext', { fg = colors.base0, bg = colors.base04 })
|
||||
hl(0, 'NeogitDiffDeleteHighlight', { fg = colors.git_removed, bg = colors.shade_red })
|
||||
hl(0, 'NeogitDiffDelete', { fg = colors.git_removed })
|
||||
hl(0, 'NeogitDiffAddHighlight', { fg = colors.git_added, bg = colors.shade_green })
|
||||
hl(0, 'NeogitDiffAdd', { fg = colors.git_added })
|
||||
end
|
||||
|
||||
if config.plugins['todo-comments.nvim'] then
|
||||
hl(0, 'TodoFgTODO', { fg = colors.purple })
|
||||
hl(0, 'TodoFgWARN', { fg = colors.diag_warning })
|
||||
hl(0, 'TodoFgTEST', { fg = colors.diag_ok })
|
||||
hl(0, 'TodoFgPERF', { fg = colors.yellow })
|
||||
hl(0, 'TodoFgNOTE', { fg = colors.cyan })
|
||||
hl(0, 'TodoFgHACK', { fg = colors.pink })
|
||||
hl(0, 'TodoFgFIX', { fg = colors.diag_error })
|
||||
hl(0, 'TodoSignTODO', { fg = colors.purple })
|
||||
hl(0, 'TodoSignWARN', { fg = colors.diag_warning })
|
||||
hl(0, 'TodoSignTEST', { fg = colors.diag_ok })
|
||||
hl(0, 'TodoSignPERF', { fg = colors.yellow })
|
||||
hl(0, 'TodoSignNOTE', { fg = colors.cyan })
|
||||
hl(0, 'TodoSignHACK', { fg = colors.pink })
|
||||
hl(0, 'TodoSignFIX', { fg = colors.diag_error })
|
||||
hl(0, 'TodoBgTODO', { fg = colors.purple, reverse = true })
|
||||
hl(0, 'TodoBgWARN', { fg = colors.diag_warning, reverse = true })
|
||||
hl(0, 'TodoBgTEST', { fg = colors.diag_ok, reverse = true })
|
||||
hl(0, 'TodoBgPERF', { fg = colors.yellow, reverse = true })
|
||||
hl(0, 'TodoBgNOTE', { fg = colors.cyan, reverse = true })
|
||||
hl(0, 'TodoBgHACK', { fg = colors.pink, reverse = true })
|
||||
hl(0, 'TodoBgFIX', { fg = colors.diag_error, reverse = true })
|
||||
end
|
||||
|
||||
if config.plugins['lazy.nvim'] then
|
||||
hl(0, 'LazyH1', { fg = colors.purple, bg = colors.base04 })
|
||||
hl(0, 'LazyButton', { fg = colors.base0, bg = colors.base02 })
|
||||
hl(0, 'LazyButtonActive', { bg = colors.base02, reverse = true })
|
||||
hl(0, 'LazyReasonStart', { fg = colors.cyan })
|
||||
end
|
||||
|
||||
if config.plugins['telescope.nvim'] then
|
||||
hl(0, 'TelescopeSelection', { link = 'CursorLine' })
|
||||
hl(0, 'TelescopeSelectionCaret', { fg = colors.purple })
|
||||
hl(0, 'TelescopeMultiIcon', { fg = colors.purple })
|
||||
hl(0, 'TelescopePreviewNormal', { link = 'TelescopeNormal' })
|
||||
hl(0, 'TelescopePromptNormal', { link = 'TelescopeNormal' })
|
||||
hl(0, 'TelescopeResultsNormal', { link = 'TelescopeNormal' })
|
||||
hl(0, 'TelescopePromptBorder', { link = 'TelescopeBorder' })
|
||||
hl(0, 'TelescopeResultsBorder', { link = 'TelescopeBorder' })
|
||||
hl(0, 'TelescopePreviewBorder', { link = 'TelescopeBorder' })
|
||||
hl(0, 'TelescopeTitle', { fg = colors.purple, bg = colors.shade_purple })
|
||||
hl(0, 'TelescopePromptTitle', { link = 'TelescopeTitle' })
|
||||
hl(0, 'TelescopeResultsTitle', { link = 'TelescopeTitle' })
|
||||
hl(0, 'TelescopePreviewTitle', { link = 'TelescopeTitle' })
|
||||
hl(0, 'TelescopeMatching', { fg = colors.purple, bg = colors.shade_purple })
|
||||
hl(0, 'TelescopePreviewMatch', { link = 'TelescopeMatching' })
|
||||
hl(0, 'TelescopePromptCounter', { link = 'NonText' })
|
||||
hl(0, 'TelescopePromptPrefix', { fg = colors.purple })
|
||||
end
|
||||
|
||||
if config.plugins['noice.nvim'] then
|
||||
hl(0, 'NoiceFormatProgressTodo', { fg = colors.diag_ok, bg = colors.shade_ok })
|
||||
hl(0, 'NoiceFormatProgressDone', { fg = colors.diag_ok, reverse = true })
|
||||
hl(0, 'NoiceLspProgressSpinner', { fg = colors.diag_ok })
|
||||
hl(0, 'NoiceLspProgressClient', { fg = colors.diag_ok })
|
||||
hl(0, 'NoiceLspProgressTitle', { link = 'Title' })
|
||||
end
|
||||
|
||||
if config.plugins['hop.nvim'] then
|
||||
hl(0, 'HopNextKey', { fg = colors.red })
|
||||
hl(0, 'HopNextKey1', { fg = colors.cyan })
|
||||
hl(0, 'HopUnmatched', { fg = colors.base01 })
|
||||
end
|
||||
|
||||
if config.plugins['mini.statusline'] then
|
||||
hl(0, 'MiniStatuslineModeNormal', { fg = colors.base03, bg = colors.purple })
|
||||
hl(0, 'MiniStatuslineModeInsert', { fg = colors.base03, bg = colors.green })
|
||||
hl(0, 'MiniStatuslineModeVisual', { fg = colors.yellow, bg = colors.base03 })
|
||||
hl(0, 'MiniStatuslineModeReplace', { fg = colors.red, bg = colors.base03 })
|
||||
hl(0, 'MiniStatuslineModeCommand', { fg = colors.orange, bg = colors.base03 })
|
||||
hl(0, 'MinistatusLineFileName', { fg = colors.base0, bg = colors.base04 })
|
||||
hl(0, 'MiniStatuslineDevinfo', { fg = colors.base0, bg = colors.base02 })
|
||||
hl(0, 'MiniStatuslineFileinfo', { fg = colors.base0, bg = colors.base02 })
|
||||
hl(0, 'MiniStatuslineInactive', { fg = colors.base01, bg = colors.base03 })
|
||||
end
|
||||
|
||||
if config.plugins['mini.tabline'] then
|
||||
hl(0, 'MiniTablineCurrent', { fg = colors.base0, bg = colors.base03 })
|
||||
hl(0, 'MiniTablineVisible', { fg = colors.base0, bg = colors.base03 })
|
||||
hl(0, 'MiniTablineHidden', { fg = colors.base01, bg = colors.base03 })
|
||||
hl(0, 'MiniTablineModifiedCurrent', { link = 'MiniTabLineCurrent' })
|
||||
hl(0, 'MiniTablineModifiedVisible', { link = 'MiniTablineVisible' })
|
||||
hl(0, 'MiniTablineModifiedHidden', { link = 'MiniTablineHidden' })
|
||||
hl(0, 'MiniTablineFill', { fg = colors.base0, bg = colors.base04 })
|
||||
hl(0, 'MiniTablineTabpagesection', { fg = colors.base0, bg = colors.base04 })
|
||||
end
|
||||
|
||||
if config.plugins['mini.starter'] then
|
||||
hl(0, 'MiniStarterCurrent', { link = 'CursorLine' })
|
||||
hl(0, 'MiniStarterHeader', { fg = colors.red })
|
||||
hl(0, 'MiniStarterFooter', { fg = colors.base01 })
|
||||
hl(0, 'MiniStarterItem', { fg = colors.base0 })
|
||||
hl(0, 'MiniStarterItemBullet', { fg = colors.pink })
|
||||
hl(0, 'MiniStarterItemPrefix', { fg = colors.pink })
|
||||
hl(0, 'MiniStarterSection', { link = 'Title' })
|
||||
hl(0, 'MiniStarterQuery', { fg = colors.pink, bold = true })
|
||||
end
|
||||
|
||||
if config.plugins['mini.cursorword'] then
|
||||
hl(0, 'MiniCursorword', { link = 'Visual' })
|
||||
end
|
||||
|
||||
if config.plugins['bufferline.nvim'] and config.transparent then
|
||||
local color = require 'dracula.color'
|
||||
local background = color.shade(colors.base02, 2)
|
||||
hl(0, 'BufferLineFill', { bg = background })
|
||||
hl(0, 'BufferLineBufferSelected', { fg = colors.base0 })
|
||||
hl(0, 'BufferLineSeparator', { fg = background })
|
||||
hl(0, 'BufferLineSeparatorSelected', { fg = background })
|
||||
hl(0, 'BufferLineSeparatorVisible', { fg = background })
|
||||
end
|
||||
|
||||
if config.styles then
|
||||
for group_name, group_val in pairs(config.styles) do
|
||||
local group = api.nvim_get_hl(0, { name = group_name, link = false })
|
||||
---@diagnostic disable-next-line: param-type-mismatch
|
||||
hl(0, group_name, vim.tbl_deep_extend('force', group, group_val))
|
||||
end
|
||||
end
|
||||
|
||||
if config.on_highlights then
|
||||
local color = require 'dracula.color'
|
||||
local highlights = config.on_highlights(colors, color)
|
||||
for group_name, group_val in pairs(highlights) do
|
||||
local group = api.nvim_get_hl(0, { name = group_name, link = false })
|
||||
---@diagnostic disable-next-line: param-type-mismatch
|
||||
hl(0, group_name, vim.tbl_deep_extend('force', group, group_val))
|
||||
end
|
||||
end
|
||||
require('dracula').load 'dracula'
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
*dracula.txt* For NVIM v0.9.4 Last change: 2024 August 23
|
||||
*dracula.txt* For NVIM v0.9.4 Last change: 2024 February 26
|
||||
|
||||
==============================================================================
|
||||
Table of Contents *dracula-table-of-contents*
|
||||
|
|
@ -6,7 +6,6 @@ Table of Contents *dracula-table-of-contents*
|
|||
1. Dracula |dracula-dracula|
|
||||
- Installation |dracula-dracula-installation|
|
||||
- Api |dracula-dracula-api|
|
||||
2. Links |dracula-links|
|
||||
|
||||
==============================================================================
|
||||
1. Dracula *dracula-dracula*
|
||||
|
|
@ -28,14 +27,22 @@ Annotations can be enabled. Below is an example of how to enable them.
|
|||
lspconfig.lua_ls.setup {
|
||||
settings = {
|
||||
Lua = {
|
||||
runtime = {
|
||||
version = 'LuaJIT',
|
||||
},
|
||||
workspace = {
|
||||
checkThirdParty = true,
|
||||
checkThirdParty = false,
|
||||
library = {
|
||||
vim.env.VIMRUNTIME,
|
||||
'~/.local/share/nvim/lazy/dracula.nvim',
|
||||
'~/.local/share/nvim/lazy/dracula',
|
||||
},
|
||||
},
|
||||
-- other settings ...
|
||||
hint = {
|
||||
enable = true,
|
||||
},
|
||||
completion = {
|
||||
callSnippet = 'Replace',
|
||||
},
|
||||
},
|
||||
},
|
||||
capabilities = capabilities,
|
||||
|
|
@ -53,17 +60,6 @@ Annotations can be enabled. Below is an example of how to enable them.
|
|||
local dracula = require "dracula"
|
||||
|
||||
dracula.setup({
|
||||
styles = {
|
||||
Type = {},
|
||||
Function = {},
|
||||
Parameter = {},
|
||||
Property = {},
|
||||
Comment = {},
|
||||
String = {},
|
||||
Keyword = {},
|
||||
Identifier = {},
|
||||
Constant = {},
|
||||
},
|
||||
transparent = false,
|
||||
on_colors = function (colors, color)
|
||||
---@type dracula.palette
|
||||
|
|
@ -81,7 +77,6 @@ Annotations can be enabled. Below is an example of how to enable them.
|
|||
end,
|
||||
plugins = {
|
||||
["nvim-treesitter"] = true,
|
||||
["rainbow-delimiters"] = true,
|
||||
["nvim-lspconfig"] = true,
|
||||
["nvim-navic"] = true,
|
||||
["nvim-cmp"] = true,
|
||||
|
|
@ -101,7 +96,6 @@ Annotations can be enabled. Below is an example of how to enable them.
|
|||
["mini.tabline"] = true,
|
||||
["mini.starter"] = true,
|
||||
["mini.cursorword"] = true,
|
||||
['bufferline.nvim'] = true,
|
||||
}
|
||||
})
|
||||
vim.cmd.colorscheme 'dracula'
|
||||
|
|
|
|||
1106
dracula-soft.yml
Normal file
1106
dracula-soft.yml
Normal file
File diff suppressed because it is too large
Load diff
1105
dracula.yml
Normal file
1105
dracula.yml
Normal file
File diff suppressed because it is too large
Load diff
|
|
@ -7,13 +7,13 @@ local M = {
|
|||
basename = { link = 'Identifier' },
|
||||
context = { link = 'Identifier' },
|
||||
context_file = { link = 'Identifier' },
|
||||
context_module = { link = 'Type' },
|
||||
context_namespace = { link = 'Type' },
|
||||
context_module = { link = 'Identifier' },
|
||||
context_namespace = { link = 'Identifier' },
|
||||
context_package = { link = 'Directory' },
|
||||
context_class = { link = 'Type' },
|
||||
context_method = { link = 'Function' },
|
||||
context_property = { link = 'Property' },
|
||||
context_field = { link = 'Property' },
|
||||
context_property = { link = 'Identifier' },
|
||||
context_field = { link = 'Identifier' },
|
||||
context_constructor = { link = 'Type' },
|
||||
context_enum = { link = 'Type' },
|
||||
context_interface = { link = 'Type' },
|
||||
|
|
|
|||
|
|
@ -1,39 +1,13 @@
|
|||
---@class dracula.styles
|
||||
---@field Type? vim.api.keyset.highlight
|
||||
---@field Function? vim.api.keyset.highlight
|
||||
---@field Parameter? vim.api.keyset.highlight
|
||||
---@field Property? vim.api.keyset.highlight
|
||||
---@field Comment? vim.api.keyset.highlight
|
||||
---@field String? vim.api.keyset.highlight
|
||||
---@field Keyword? vim.api.keyset.highlight
|
||||
---@field Identifier? vim.api.keyset.highlight
|
||||
---@field Constant? vim.api.keyset.highlight
|
||||
|
||||
---@class dracula.config
|
||||
---@field styles? dracula.styles
|
||||
---@field transparent? boolean
|
||||
---@field on_highlights? fun(colors: dracula.palette, color: dracula.color): dracula.highlights
|
||||
---@field on_colors? fun(colors: dracula.palette, color: dracula.color): dracula.palette
|
||||
return {
|
||||
styles = {
|
||||
Type = {},
|
||||
Function = {},
|
||||
Parameter = {},
|
||||
Property = {},
|
||||
Comment = {
|
||||
italic = true,
|
||||
},
|
||||
String = {},
|
||||
Keyword = {},
|
||||
Identifier = {},
|
||||
Constant = {},
|
||||
},
|
||||
transparent = false,
|
||||
on_highlights = nil,
|
||||
on_colors = nil,
|
||||
plugins = {
|
||||
['nvim-treesitter'] = true,
|
||||
['rainbow-delimiters'] = true,
|
||||
['nvim-lspconfig'] = true,
|
||||
['nvim-navic'] = true,
|
||||
['nvim-cmp'] = true,
|
||||
|
|
@ -53,6 +27,5 @@ return {
|
|||
['mini.tabline'] = true,
|
||||
['mini.starter'] = true,
|
||||
['mini.cursorword'] = true,
|
||||
['bufferline.nvim'] = true,
|
||||
},
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,323 +0,0 @@
|
|||
---@class dracula.highlights
|
||||
---@field ColorColumn? vim.api.keyset.highlight
|
||||
---@field Conceal? vim.api.keyset.highlight
|
||||
---@field CurSearch? vim.api.keyset.highlight
|
||||
---@field Cursor? vim.api.keyset.highlight
|
||||
---@field lCursor? vim.api.keyset.highlight
|
||||
---@field CursorIM? vim.api.keyset.highlight
|
||||
---@field CursorColumn? vim.api.keyset.highlight
|
||||
---@field CursorLine? vim.api.keyset.highlight
|
||||
---@field Directory? vim.api.keyset.highlight
|
||||
---@field DiffAdd? vim.api.keyset.highlight
|
||||
---@field DiffChange? vim.api.keyset.highlight
|
||||
---@field DiffDelete? vim.api.keyset.highlight
|
||||
---@field DiffText? vim.api.keyset.highlight
|
||||
---@field EndOfBuffer? vim.api.keyset.highlight
|
||||
---@field TermCursor? vim.api.keyset.highlight
|
||||
---@field TermCursorNC? vim.api.keyset.highlight
|
||||
---@field ErrorMsg? vim.api.keyset.highlight
|
||||
---@field WinSeparator? vim.api.keyset.highlight
|
||||
---@field Folded? vim.api.keyset.highlight
|
||||
---@field FoldColumn? vim.api.keyset.highlight
|
||||
---@field SignColumn? vim.api.keyset.highlight
|
||||
---@field IncSearch? vim.api.keyset.highlight
|
||||
---@field Substitute? vim.api.keyset.highlight
|
||||
---@field LineNr? vim.api.keyset.highlight
|
||||
---@field LineNrAbove? vim.api.keyset.highlight
|
||||
---@field LineNrBelow? vim.api.keyset.highlight
|
||||
---@field CursorLineNr? vim.api.keyset.highlight
|
||||
---@field CursorLineFold? vim.api.keyset.highlight
|
||||
---@field CursorLineSign? vim.api.keyset.highlight
|
||||
---@field MatchParen? vim.api.keyset.highlight
|
||||
---@field ModeMsg? vim.api.keyset.highlight
|
||||
---@field MsgArea? vim.api.keyset.highlight
|
||||
---@field MsgSeparator? vim.api.keyset.highlight
|
||||
---@field MoreMsg? vim.api.keyset.highlight
|
||||
---@field NonText? vim.api.keyset.highlight
|
||||
---@field Normal? vim.api.keyset.highlight
|
||||
---@field NormalFloat? vim.api.keyset.highlight
|
||||
---@field FloatBorder? vim.api.keyset.highlight
|
||||
---@field FloatTitle? vim.api.keyset.highlight
|
||||
---@field NormalNC? vim.api.keyset.highlight
|
||||
---@field Pmenu? vim.api.keyset.highlight
|
||||
---@field PmenuSel? vim.api.keyset.highlight
|
||||
---@field PmenuKind? vim.api.keyset.highlight
|
||||
---@field PmenuKindSel? vim.api.keyset.highlight
|
||||
---@field PmenuExtra? vim.api.keyset.highlight
|
||||
---@field PmenuExtraSel? vim.api.keyset.highlight
|
||||
---@field PmenuSbar? vim.api.keyset.highlight
|
||||
---@field PmenuThumb? vim.api.keyset.highlight
|
||||
---@field Question? vim.api.keyset.highlight
|
||||
---@field QuickFixLine? vim.api.keyset.highlight
|
||||
---@field Search? vim.api.keyset.highlight
|
||||
---@field SpecialKey? vim.api.keyset.highlight
|
||||
---@field SpellBad? vim.api.keyset.highlight
|
||||
---@field SpellCap? vim.api.keyset.highlight
|
||||
---@field SpellLocal? vim.api.keyset.highlight
|
||||
---@field SpellRare? vim.api.keyset.highlight
|
||||
---@field StatusLine? vim.api.keyset.highlight
|
||||
---@field StatusLineNC? vim.api.keyset.highlight
|
||||
---@field TabLine? vim.api.keyset.highlight
|
||||
---@field TabLineFill? vim.api.keyset.highlight
|
||||
---@field TabLineSel? vim.api.keyset.highlight
|
||||
---@field Title? vim.api.keyset.highlight
|
||||
---@field Visual? vim.api.keyset.highlight
|
||||
---@field VisualNOS? vim.api.keyset.highlight
|
||||
---@field warningMsg? vim.api.keyset.highlight
|
||||
---@field Whitespace? vim.api.keyset.highlight
|
||||
---@field WildMenu? vim.api.keyset.highlight
|
||||
---@field WinBar? vim.api.keyset.highlight
|
||||
---@field WinBarNC? vim.api.keyset.highlight
|
||||
---@field Comment? vim.api.keyset.highlight
|
||||
---@field Constant? vim.api.keyset.highlight
|
||||
---@field String? vim.api.keyset.highlight
|
||||
---@field Character? vim.api.keyset.highlight
|
||||
---@field Number? vim.api.keyset.highlight
|
||||
---@field Boolean? vim.api.keyset.highlight
|
||||
---@field Float? vim.api.keyset.highlight
|
||||
---@field Identifier? vim.api.keyset.highlight
|
||||
---@field Property? vim.api.keyset.highlight
|
||||
---@field Parameter? vim.api.keyset.highlight
|
||||
---@field Function? vim.api.keyset.highlight
|
||||
---@field Statement? vim.api.keyset.highlight
|
||||
---@field Conditional? vim.api.keyset.highlight
|
||||
---@field Repeat? vim.api.keyset.highlight
|
||||
---@field Label? vim.api.keyset.highlight
|
||||
---@field Operator? vim.api.keyset.highlight
|
||||
---@field Keyword? vim.api.keyset.highlight
|
||||
---@field Exception? vim.api.keyset.highlight
|
||||
---@field PreProc? vim.api.keyset.highlight
|
||||
---@field Include? vim.api.keyset.highlight
|
||||
---@field Define? vim.api.keyset.highlight
|
||||
---@field Macro? vim.api.keyset.highlight
|
||||
---@field PreCondit? vim.api.keyset.highlight
|
||||
---@field Type? vim.api.keyset.highlight
|
||||
---@field StorageClass? vim.api.keyset.highlight
|
||||
---@field Structure? vim.api.keyset.highlight
|
||||
---@field Typedef? vim.api.keyset.highlight
|
||||
---@field Special? vim.api.keyset.highlight
|
||||
---@field SpecialChar? vim.api.keyset.highlight
|
||||
---@field Tag? vim.api.keyset.highlight
|
||||
---@field TagAttribute? vim.api.keyset.highlight
|
||||
---@field TagDelimiter? vim.api.keyset.highlight
|
||||
---@field Delimiter? vim.api.keyset.highlight
|
||||
---@field SpecialComment? vim.api.keyset.highlight
|
||||
---@field Debug? vim.api.keyset.highlight
|
||||
---@field Underlined? vim.api.keyset.highlight
|
||||
---@field Ignore? vim.api.keyset.highlight
|
||||
---@field Error? vim.api.keyset.highlight
|
||||
---@field Todo? vim.api.keyset.highlight
|
||||
---@field DiagnosticError? vim.api.keyset.highlight
|
||||
---@field DiagnosticWarn? vim.api.keyset.highlight
|
||||
---@field DiagnosticInfo? vim.api.keyset.highlight
|
||||
---@field DiagnosticHint? vim.api.keyset.highlight
|
||||
---@field DiagnosticOk? vim.api.keyset.highlight
|
||||
---@field DiagnosticVirtualTextError? vim.api.keyset.highlight
|
||||
---@field DiagnosticVirtualTextWarn? vim.api.keyset.highlight
|
||||
---@field DiagnosticVirtualTextInfo? vim.api.keyset.highlight
|
||||
---@field DiagnosticVirtualTextHint? vim.api.keyset.highlight
|
||||
---@field DiagnosticVirtualTextOk? vim.api.keyset.highlight
|
||||
---@field DiagnosticUnderlineError? vim.api.keyset.highlight
|
||||
---@field DiagnosticUnderlineWarn? vim.api.keyset.highlight
|
||||
---@field DiagnosticUnderlineInfo? vim.api.keyset.highlight
|
||||
---@field DiagnosticUnderlineHint? vim.api.keyset.highlight
|
||||
---@field DiagnosticUnderlineOk? vim.api.keyset.highlight
|
||||
---@field LspReferenceText? vim.api.keyset.highlight
|
||||
---@field LspReferenceRead? vim.api.keyset.highlight
|
||||
---@field LspReferenceWrite? vim.api.keyset.highlight
|
||||
---@field LspInlayHint? vim.api.keyset.highlight
|
||||
---@field NavicText? vim.api.keyset.highlight
|
||||
---@field NavicSeparator? vim.api.keyset.highlight
|
||||
---@field NavicIconsMethod? vim.api.keyset.highlight
|
||||
---@field NavicIconsFunction? vim.api.keyset.highlight
|
||||
---@field NavicIconsField? vim.api.keyset.highlight
|
||||
---@field NavicIconsVariable? vim.api.keyset.highlight
|
||||
---@field NavicIconsClass? vim.api.keyset.highlight
|
||||
---@field NavicIconsInterface? vim.api.keyset.highlight
|
||||
---@field NavicIconsModule? vim.api.keyset.highlight
|
||||
---@field NavicIconsNamespace? vim.api.keyset.highlight
|
||||
---@field NavicIconsProperty? vim.api.keyset.highlight
|
||||
---@field NavicIconsUnit? vim.api.keyset.highlight
|
||||
---@field NavicIconsEnum? vim.api.keyset.highlight
|
||||
---@field NavicIconsKeyword? vim.api.keyset.highlight
|
||||
---@field NavicIconsSnippet? vim.api.keyset.highlight
|
||||
---@field NavicIconsColor? vim.api.keyset.highlight
|
||||
---@field NavicIconsFile? vim.api.keyset.highlight
|
||||
---@field NavicIconsReference? vim.api.keyset.highlight
|
||||
---@field NavicIconsFolder? vim.api.keyset.highlight
|
||||
---@field NavicIconsEnumMember? vim.api.keyset.highlight
|
||||
---@field NavicIconsConstant? vim.api.keyset.highlight
|
||||
---@field NavicIconsStruct? vim.api.keyset.highlight
|
||||
---@field NavicIconsEvent? vim.api.keyset.highlight
|
||||
---@field NavicIconsOperator? vim.api.keyset.highlight
|
||||
---@field NavicIconsTypeParameter? vim.api.keyset.highlight
|
||||
---@field CmpItemKindText? vim.api.keyset.highlight
|
||||
---@field CmpItemKindMethod? vim.api.keyset.highlight
|
||||
---@field CmpItemKindFunction? vim.api.keyset.highlight
|
||||
---@field CmpItemKindField? vim.api.keyset.highlight
|
||||
---@field CmpItemKindVariable? vim.api.keyset.highlight
|
||||
---@field CmpItemKindClass? vim.api.keyset.highlight
|
||||
---@field CmpItemKindInterface? vim.api.keyset.highlight
|
||||
---@field CmpItemKindModule? vim.api.keyset.highlight
|
||||
---@field CmpItemKindProperty? vim.api.keyset.highlight
|
||||
---@field CmpItemKindUnit? vim.api.keyset.highlight
|
||||
---@field CmpItemKindEnum? vim.api.keyset.highlight
|
||||
---@field CmpItemKindKeyword? vim.api.keyset.highlight
|
||||
---@field CmpItemKindSnippet? vim.api.keyset.highlight
|
||||
---@field CmpItemKindColor? vim.api.keyset.highlight
|
||||
---@field CmpItemKindFile? vim.api.keyset.highlight
|
||||
---@field CmpItemKindReference? vim.api.keyset.highlight
|
||||
---@field CmpItemKindFolder? vim.api.keyset.highlight
|
||||
---@field CmpItemKindEnumMember? vim.api.keyset.highlight
|
||||
---@field CmpItemKindConstant? vim.api.keyset.highlight
|
||||
---@field CmpItemKindStruct? vim.api.keyset.highlight
|
||||
---@field CmpItemKindEvent? vim.api.keyset.highlight
|
||||
---@field CmpItemKindOperator? vim.api.keyset.highlight
|
||||
---@field CmpItemKindTypeParameter? vim.api.keyset.highlight
|
||||
---@field IblIndent? vim.api.keyset.highlight
|
||||
---@field IblScope? vim.api.keyset.highlight
|
||||
---@field NeoTreeNormal? vim.api.keyset.highlight
|
||||
---@field NeoTreeNormalNC? vim.api.keyset.highlight
|
||||
---@field NeoTreeDotFile? vim.api.keyset.highlight
|
||||
---@field NeoTreeFileNameOpened? vim.api.keyset.highlight
|
||||
---@field NeoTreeFloatBorder? vim.api.keyset.highlight
|
||||
---@field NeoTreeFloatTitle? vim.api.keyset.highlight
|
||||
---@field NeoTreeGitAdded? vim.api.keyset.highlight
|
||||
---@field NeoTreeGitConflict? vim.api.keyset.highlight
|
||||
---@field NeoTreeGitDeleted? vim.api.keyset.highlight
|
||||
---@field NeoTreeGitIgnored? vim.api.keyset.highlight
|
||||
---@field NeoTreeGitModified? vim.api.keyset.highlight
|
||||
---@field NeoTreeGitUnstaged? vim.api.keyset.highlight
|
||||
---@field NeoTreeGitUntracked? vim.api.keyset.highlight
|
||||
---@field NeoTreeGitStaged? vim.api.keyset.highlight
|
||||
---@field NvimTreeSymlink? vim.api.keyset.highlight
|
||||
---@field NvimTreeSymlinkIcon? vim.api.keyset.highlight
|
||||
---@field NvimTreeFolderName? vim.api.keyset.highlight
|
||||
---@field NvimTreeRootFolder? vim.api.keyset.highlight
|
||||
---@field NvimTreeFolderIcon? vim.api.keyset.highlight
|
||||
---@field NvimTreeEmptyFolderName? vim.api.keyset.highlight
|
||||
---@field NvimTreeExecFile? vim.api.keyset.highlight
|
||||
---@field NvimTreeOpenedFile? vim.api.keyset.highlight
|
||||
---@field NvimTreeModifiedFile? vim.api.keyset.highlight
|
||||
---@field NvimTreeSpecialFile? vim.api.keyset.highlight
|
||||
---@field NvimTreeIndentMarker? vim.api.keyset.highlight
|
||||
---@field NvimTreeGitDirty? vim.api.keyset.highlight
|
||||
---@field NvimTreeGitStaged? vim.api.keyset.highlight
|
||||
---@field NvimTreeGitMerge? vim.api.keyset.highlight
|
||||
---@field NvimTreeGitRenamed? vim.api.keyset.highlight
|
||||
---@field NvimTreeGitNew? vim.api.keyset.highlight
|
||||
---@field NvimTreeGitDeleted? vim.api.keyset.highlight
|
||||
---@field NvimTreeNormal? vim.api.keyset.highlight
|
||||
---@field NvimTreeNormalFloat? vim.api.keyset.highlight
|
||||
---@field NvimTreeEndOfBuffer? vim.api.keyset.highlight
|
||||
---@field NvimTreeWinSeparator? vim.api.keyset.highlight
|
||||
---@field WhichKey? vim.api.keyset.highlight
|
||||
---@field WhichKeyNormal? vim.api.keyset.highlight
|
||||
---@field WhichKeyDesc? vim.api.keyset.highlight
|
||||
---@field WhichKeySeparator? vim.api.keyset.highlight
|
||||
---@field WhichKeyGroup? vim.api.keyset.highlight
|
||||
---@field DashboardHeader? vim.api.keyset.highlight
|
||||
---@field DashboardFooter? vim.api.keyset.highlight
|
||||
---@field DashboardDesc? vim.api.keyset.highlight
|
||||
---@field DashboardKey? vim.api.keyset.highlight
|
||||
---@field DashboardIcon? vim.api.keyset.highlight
|
||||
---@field DashboardShotCut? vim.api.keyset.highlight
|
||||
---@field GitSignsAdd? vim.api.keyset.highlight
|
||||
---@field GitSignsChange? vim.api.keyset.highlight
|
||||
---@field GitSignsDelete? vim.api.keyset.highlight
|
||||
---@field NeogitCursorLine? vim.api.keyset.highlight
|
||||
---@field NeogitBranch? vim.api.keyset.highlight
|
||||
---@field NeogitRemote? vim.api.keyset.highlight
|
||||
---@field NeogitHunkHeader? vim.api.keyset.highlight
|
||||
---@field NeogitHunkHeaderHighlight? vim.api.keyset.highlight
|
||||
---@field NeogitDiffContextHighlight? vim.api.keyset.highlight
|
||||
---@field NeogitDiffContext? vim.api.keyset.highlight
|
||||
---@field NeogitDiffDeleteHighlight? vim.api.keyset.highlight
|
||||
---@field NeogitDiffDelete? vim.api.keyset.highlight
|
||||
---@field NeogitDiffAddHighlight? vim.api.keyset.highlight
|
||||
---@field NeogitDiffAdd? vim.api.keyset.highlight
|
||||
---@field TodoFgTODO? vim.api.keyset.highlight
|
||||
---@field TodoFgWARN? vim.api.keyset.highlight
|
||||
---@field TodoFgTEST? vim.api.keyset.highlight
|
||||
---@field TodoFgPERF? vim.api.keyset.highlight
|
||||
---@field TodoFgNOTE? vim.api.keyset.highlight
|
||||
---@field TodoFgHACK? vim.api.keyset.highlight
|
||||
---@field TodoFgFIX? vim.api.keyset.highlight
|
||||
---@field TodoSignTODO? vim.api.keyset.highlight
|
||||
---@field TodoSignWARN? vim.api.keyset.highlight
|
||||
---@field TodoSignTEST? vim.api.keyset.highlight
|
||||
---@field TodoSignPERF? vim.api.keyset.highlight
|
||||
---@field TodoSignNOTE? vim.api.keyset.highlight
|
||||
---@field TodoSignHACK? vim.api.keyset.highlight
|
||||
---@field TodoSignFIX? vim.api.keyset.highlight
|
||||
---@field TodoBgTODO? vim.api.keyset.highlight
|
||||
---@field TodoBgWARN? vim.api.keyset.highlight
|
||||
---@field TodoBgTEST? vim.api.keyset.highlight
|
||||
---@field TodoBgPERF? vim.api.keyset.highlight
|
||||
---@field TodoBgNOTE? vim.api.keyset.highlight
|
||||
---@field TodoBgHACK? vim.api.keyset.highlight
|
||||
---@field TodoBgFIX? vim.api.keyset.highlight
|
||||
---@field LazyH1? vim.api.keyset.highlight
|
||||
---@field LazyButton? vim.api.keyset.highlight
|
||||
---@field LazyButtonActive? vim.api.keyset.highlight
|
||||
---@field LazyReasonStart? vim.api.keyset.highlight
|
||||
---@field TelescopeSelection? vim.api.keyset.highlight
|
||||
---@field TelescopeSelectionCaret? vim.api.keyset.highlight
|
||||
---@field TelescopeMultiIcon? vim.api.keyset.highlight
|
||||
---@field TelescopeNormal? vim.api.keyset.highlight
|
||||
---@field TelescopePreviewNormal? vim.api.keyset.highlight
|
||||
---@field TelescopePromptNormal? vim.api.keyset.highlight
|
||||
---@field TelescopeResultsNormal? vim.api.keyset.highlight
|
||||
---@field TelescopeBorder? vim.api.keyset.highlight
|
||||
---@field TelescopePromptBorder? vim.api.keyset.highlight
|
||||
---@field TelescopeResultsBorder? vim.api.keyset.highlight
|
||||
---@field TelescopePreviewBorder? vim.api.keyset.highlight
|
||||
---@field TelescopeTitle? vim.api.keyset.highlight
|
||||
---@field TelescopePromptTitle? vim.api.keyset.highlight
|
||||
---@field TelescopeResultsTitle? vim.api.keyset.highlight
|
||||
---@field TelescopePreviewTitle? vim.api.keyset.highlight
|
||||
---@field TelescopeMatching? vim.api.keyset.highlight
|
||||
---@field TelescopePreviewMatch? vim.api.keyset.highlight
|
||||
---@field TelescopePromptCounter? vim.api.keyset.highlight
|
||||
---@field TelescopePromptPrefix? vim.api.keyset.highlight
|
||||
---@field NoiceFormatProgressTodo? vim.api.keyset.highlight
|
||||
---@field NoiceFormatProgressDone? vim.api.keyset.highlight
|
||||
---@field NoiceLspProgressSpinner? vim.api.keyset.highlight
|
||||
---@field NoiceLspProgressClient? vim.api.keyset.highlight
|
||||
---@field NoiceLspProgressTitle? vim.api.keyset.highlight
|
||||
---@field HopNextKey? vim.api.keyset.highlight
|
||||
---@field HopNextKey1? vim.api.keyset.highlight
|
||||
---@field HopUnmatched? vim.api.keyset.highlight
|
||||
---@field MiniStatuslineModeNormal? vim.api.keyset.highlight
|
||||
---@field MiniStatuslineModeInsert? vim.api.keyset.highlight
|
||||
---@field MiniStatuslineModeVisual? vim.api.keyset.highlight
|
||||
---@field MiniStatuslineModeReplace? vim.api.keyset.highlight
|
||||
---@field MiniStatuslineModeCommand? vim.api.keyset.highlight
|
||||
---@field MinistatusLineFileName? vim.api.keyset.highlight
|
||||
---@field MiniStatuslineDevinfo? vim.api.keyset.highlight
|
||||
---@field MiniStatuslineFileinfo? vim.api.keyset.highlight
|
||||
---@field MiniStatuslineInactive? vim.api.keyset.highlight
|
||||
---@field MiniTablineCurrent? vim.api.keyset.highlight
|
||||
---@field MiniTablineVisible? vim.api.keyset.highlight
|
||||
---@field MiniTablineHidden? vim.api.keyset.highlight
|
||||
---@field MiniTablineModifiedCurrent? vim.api.keyset.highlight
|
||||
---@field MiniTablineModifiedVisible? vim.api.keyset.highlight
|
||||
---@field MiniTablineModifiedHidden? vim.api.keyset.highlight
|
||||
---@field MiniTablineFill? vim.api.keyset.highlight
|
||||
---@field MiniTablineTabpagesection? vim.api.keyset.highlight
|
||||
---@field MiniStarterCurrent? vim.api.keyset.highlight
|
||||
---@field MiniStarterHeader? vim.api.keyset.highlight
|
||||
---@field MiniStarterFooter? vim.api.keyset.highlight
|
||||
---@field MiniStarterItem? vim.api.keyset.highlight
|
||||
---@field MiniStarterItemBullet? vim.api.keyset.highlight
|
||||
---@field MiniStarterItemPrefix? vim.api.keyset.highlight
|
||||
---@field MiniStarterSection? vim.api.keyset.highlight
|
||||
---@field MiniStarterQuery? vim.api.keyset.highlight
|
||||
---@field MiniCursorword? vim.api.keyset.highlight
|
||||
---@field RainbowDelimiterRed? vim.api.keyset.highlight
|
||||
---@field RainbowDelimiteYellow? vim.api.keyset.highlight
|
||||
---@field RainbowDelimiterBlue? vim.api.keyset.highlight
|
||||
---@field RainbowDelimiterOrange? vim.api.keyset.highlight
|
||||
---@field RainbowDelimiterGreen? vim.api.keyset.highlight
|
||||
---@field RainbowDelimiterViolet? vim.api.keyset.highlight
|
||||
---@field RainbowDelimiterCyan? vim.api.keyset.highlight
|
||||
826
lua/dracula/highlights/dracula-soft.lua
Normal file
826
lua/dracula/highlights/dracula-soft.lua
Normal file
|
|
@ -0,0 +1,826 @@
|
|||
---@class dracula.highlights
|
||||
---@field ColorColumn? table
|
||||
---@field Conceal? table
|
||||
---@field CurSearch? table
|
||||
---@field Cursor? table
|
||||
---@field lCursor? table
|
||||
---@field CursorIM? table
|
||||
---@field CursorColumn? table
|
||||
---@field CursorLine? table
|
||||
---@field Directory? table
|
||||
---@field DiffAdd? table
|
||||
---@field DiffChange? table
|
||||
---@field DiffDelete? table
|
||||
---@field DiffText? table
|
||||
---@field EndOfBuffer? table
|
||||
---@field TermCursor? table
|
||||
---@field TermCursorNC? table
|
||||
---@field ErrorMsg? table
|
||||
---@field WinSeparator? table
|
||||
---@field Folded? table
|
||||
---@field FoldColumn? table
|
||||
---@field SignColumn? table
|
||||
---@field IncSearch? table
|
||||
---@field Substitute? table
|
||||
---@field LineNr? table
|
||||
---@field LineNrAbove? table
|
||||
---@field LineNrBelow? table
|
||||
---@field CursorLineNr? table
|
||||
---@field CursorLineFold? table
|
||||
---@field CursorLineSign? table
|
||||
---@field MatchParen? table
|
||||
---@field ModeMsg? table
|
||||
---@field MsgArea? table
|
||||
---@field MsgSeparator? table
|
||||
---@field MoreMsg? table
|
||||
---@field NonText? table
|
||||
---@field Normal? table
|
||||
---@field NormalFloat? table
|
||||
---@field FloatBorder? table
|
||||
---@field FloatTitle? table
|
||||
---@field NormalNC? table
|
||||
---@field Pmenu? table
|
||||
---@field PmenuSel? table
|
||||
---@field PmenuKind? table
|
||||
---@field PmenuKindSel? table
|
||||
---@field PmenuExtra? table
|
||||
---@field PmenuExtraSel? table
|
||||
---@field PmenuSbar? table
|
||||
---@field PmenuThumb? table
|
||||
---@field Question? table
|
||||
---@field QuickFixLine? table
|
||||
---@field Search? table
|
||||
---@field SpecialKey? table
|
||||
---@field SpellBad? table
|
||||
---@field SpellCap? table
|
||||
---@field SpellLocal? table
|
||||
---@field SpellRare? table
|
||||
---@field StatusLine? table
|
||||
---@field StatusLineNC? table
|
||||
---@field TabLine? table
|
||||
---@field TabLineFill? table
|
||||
---@field TabLineSel? table
|
||||
---@field Title? table
|
||||
---@field Visual? table
|
||||
---@field VisualNOS? table
|
||||
---@field warningMsg? table
|
||||
---@field Whitespace? table
|
||||
---@field WildMenu? table
|
||||
---@field WinBar? table
|
||||
---@field WinBarNC? table
|
||||
---@field Comment? table
|
||||
---@field Constant? table
|
||||
---@field String? table
|
||||
---@field Character? table
|
||||
---@field Number? table
|
||||
---@field Boolean? table
|
||||
---@field Float? table
|
||||
---@field Identifier? table
|
||||
---@field Function? table
|
||||
---@field Statement? table
|
||||
---@field Conditional? table
|
||||
---@field Repeat? table
|
||||
---@field Label? table
|
||||
---@field Operator? table
|
||||
---@field Keyword? table
|
||||
---@field Exception? table
|
||||
---@field PreProc? table
|
||||
---@field Include? table
|
||||
---@field Define? table
|
||||
---@field Macro? table
|
||||
---@field PreCondit? table
|
||||
---@field Type? table
|
||||
---@field StorageClass? table
|
||||
---@field Structure? table
|
||||
---@field Typedef? table
|
||||
---@field Special? table
|
||||
---@field SpecialChar? table
|
||||
---@field Tag? table
|
||||
---@field Delimiter? table
|
||||
---@field SpecialComment? table
|
||||
---@field Debug? table
|
||||
---@field Underlined? table
|
||||
---@field Ignore? table
|
||||
---@field Error? table
|
||||
---@field Todo? table
|
||||
---@field DiagnosticError? table
|
||||
---@field DiagnosticWarn? table
|
||||
---@field DiagnosticInfo? table
|
||||
---@field DiagnosticHint? table
|
||||
---@field DiagnosticOk? table
|
||||
---@field DiagnosticVirtualTextError? table
|
||||
---@field DiagnosticVirtualTextWarn? table
|
||||
---@field DiagnosticVirtualTextInfo? table
|
||||
---@field DiagnosticVirtualTextHint? table
|
||||
---@field DiagnosticVirtualTextOk? table
|
||||
---@field DiagnosticUnderlineError? table
|
||||
---@field DiagnosticUnderlineWarn? table
|
||||
---@field DiagnosticUnderlineInfo? table
|
||||
---@field DiagnosticUnderlineHint? table
|
||||
---@field DiagnosticUnderlineOk? table
|
||||
---@field LspReferenceText? table
|
||||
---@field LspReferenceRead? table
|
||||
---@field LspReferenceWrite? table
|
||||
---@field LspInlayHint? table
|
||||
---@field NavicText? table
|
||||
---@field NavicSeparator? table
|
||||
---@field NavicIconsMethod? table
|
||||
---@field NavicIconsFunction? table
|
||||
---@field NavicIconsField? table
|
||||
---@field NavicIconsVariable? table
|
||||
---@field NavicIconsClass? table
|
||||
---@field NavicIconsInterface? table
|
||||
---@field NavicIconsModule? table
|
||||
---@field NavicIconsNamespace? table
|
||||
---@field NavicIconsProperty? table
|
||||
---@field NavicIconsUnit? table
|
||||
---@field NavicIconsEnum? table
|
||||
---@field NavicIconsKeyword? table
|
||||
---@field NavicIconsSnippet? table
|
||||
---@field NavicIconsColor? table
|
||||
---@field NavicIconsFile? table
|
||||
---@field NavicIconsReference? table
|
||||
---@field NavicIconsFolder? table
|
||||
---@field NavicIconsEnumMember? table
|
||||
---@field NavicIconsConstant? table
|
||||
---@field NavicIconsStruct? table
|
||||
---@field NavicIconsEvent? table
|
||||
---@field NavicIconsOperator? table
|
||||
---@field NavicIconsTypeParameter? table
|
||||
---@field CmpItemKindText? table
|
||||
---@field CmpItemKindMethod? table
|
||||
---@field CmpItemKindFunction? table
|
||||
---@field CmpItemKindField? table
|
||||
---@field CmpItemKindVariable? table
|
||||
---@field CmpItemKindClass? table
|
||||
---@field CmpItemKindInterface? table
|
||||
---@field CmpItemKindModule? table
|
||||
---@field CmpItemKindProperty? table
|
||||
---@field CmpItemKindUnit? table
|
||||
---@field CmpItemKindEnum? table
|
||||
---@field CmpItemKindKeyword? table
|
||||
---@field CmpItemKindSnippet? table
|
||||
---@field CmpItemKindColor? table
|
||||
---@field CmpItemKindFile? table
|
||||
---@field CmpItemKindReference? table
|
||||
---@field CmpItemKindFolder? table
|
||||
---@field CmpItemKindEnumMember? table
|
||||
---@field CmpItemKindConstant? table
|
||||
---@field CmpItemKindStruct? table
|
||||
---@field CmpItemKindEvent? table
|
||||
---@field CmpItemKindOperator? table
|
||||
---@field CmpItemKindTypeParameter? table
|
||||
---@field IblIndent? table
|
||||
---@field IblScope? table
|
||||
---@field NeoTreeNormal? table
|
||||
---@field NeoTreeNormalNC? table
|
||||
---@field NeoTreeDotFile? table
|
||||
---@field NeoTreeFileNameOpened? table
|
||||
---@field NeoTreeFloatBorder? table
|
||||
---@field NeoTreeFloatTitle? table
|
||||
---@field NeoTreeGitAdded? table
|
||||
---@field NeoTreeGitConflict? table
|
||||
---@field NeoTreeGitDeleted? table
|
||||
---@field NeoTreeGitIgnored? table
|
||||
---@field NeoTreeGitModified? table
|
||||
---@field NeoTreeGitUnstaged? table
|
||||
---@field NeoTreeGitUntracked? table
|
||||
---@field NeoTreeGitStaged? table
|
||||
---@field NvimTreeSymlink? table
|
||||
---@field NvimTreeSymlinkIcon? table
|
||||
---@field NvimTreeFolderName? table
|
||||
---@field NvimTreeRootFolder? table
|
||||
---@field NvimTreeFolderIcon? table
|
||||
---@field NvimTreeEmptyFolderName? table
|
||||
---@field NvimTreeExecFile? table
|
||||
---@field NvimTreeOpenedFile? table
|
||||
---@field NvimTreeModifiedFile? table
|
||||
---@field NvimTreeSpecialFile? table
|
||||
---@field NvimTreeIndentMarker? table
|
||||
---@field NvimTreeGitDirty? table
|
||||
---@field NvimTreeGitStaged? table
|
||||
---@field NvimTreeGitMerge? table
|
||||
---@field NvimTreeGitRenamed? table
|
||||
---@field NvimTreeGitNew? table
|
||||
---@field NvimTreeGitDeleted? table
|
||||
---@field NvimTreeNormal? table
|
||||
---@field NvimTreeNormalFloat? table
|
||||
---@field NvimTreeEndOfBuffer? table
|
||||
---@field NvimTreeWinSeparator? table
|
||||
---@field WhichKey? table
|
||||
---@field WhichKeyDesc? table
|
||||
---@field WhichKeySeparator? table
|
||||
---@field WhichKeyGroup? table
|
||||
---@field DashboardHeader? table
|
||||
---@field DashboardFooter? table
|
||||
---@field DashboardDesc? table
|
||||
---@field DashboardKey? table
|
||||
---@field DashboardIcon? table
|
||||
---@field DashboardShotCut? table
|
||||
---@field GitSignsAdd? table
|
||||
---@field GitSignsChange? table
|
||||
---@field GitSignsDelete? table
|
||||
---@field NeogitCursorLine? table
|
||||
---@field NeogitBranch? table
|
||||
---@field NeogitRemote? table
|
||||
---@field NeogitHunkHeader? table
|
||||
---@field NeogitHunkHeaderHighlight? table
|
||||
---@field NeogitDiffContextHighlight? table
|
||||
---@field NeogitDiffContext? table
|
||||
---@field NeogitDiffDeleteHighlight? table
|
||||
---@field NeogitDiffDelete? table
|
||||
---@field NeogitDiffAddHighlight? table
|
||||
---@field NeogitDiffAdd? table
|
||||
---@field TodoFgTODO? table
|
||||
---@field TodoFgWARN? table
|
||||
---@field TodoFgTEST? table
|
||||
---@field TodoFgPERF? table
|
||||
---@field TodoFgNOTE? table
|
||||
---@field TodoFgHACK? table
|
||||
---@field TodoFgFIX? table
|
||||
---@field TodoSignTODO? table
|
||||
---@field TodoSignWARN? table
|
||||
---@field TodoSignTEST? table
|
||||
---@field TodoSignPERF? table
|
||||
---@field TodoSignNOTE? table
|
||||
---@field TodoSignHACK? table
|
||||
---@field TodoSignFIX? table
|
||||
---@field TodoBgTODO? table
|
||||
---@field TodoBgWARN? table
|
||||
---@field TodoBgTEST? table
|
||||
---@field TodoBgPERF? table
|
||||
---@field TodoBgNOTE? table
|
||||
---@field TodoBgHACK? table
|
||||
---@field TodoBgFIX? table
|
||||
---@field LazyH1? table
|
||||
---@field LazyButton? table
|
||||
---@field LazyButtonActive? table
|
||||
---@field LazyReasonStart? table
|
||||
---@field TelescopeSelection? table
|
||||
---@field TelescopeSelectionCaret? table
|
||||
---@field TelescopeMultiIcon? table
|
||||
---@field TelescopeNormal? table
|
||||
---@field TelescopePreviewNormal? table
|
||||
---@field TelescopePromptNormal? table
|
||||
---@field TelescopeResultsNormal? table
|
||||
---@field TelescopeBorder? table
|
||||
---@field TelescopePromptBorder? table
|
||||
---@field TelescopeResultsBorder? table
|
||||
---@field TelescopePreviewBorder? table
|
||||
---@field TelescopeTitle? table
|
||||
---@field TelescopePromptTitle? table
|
||||
---@field TelescopeResultsTitle? table
|
||||
---@field TelescopePreviewTitle? table
|
||||
---@field TelescopeMatching? table
|
||||
---@field TelescopePreviewMatch? table
|
||||
---@field TelescopePromptCounter? table
|
||||
---@field TelescopePromptPrefix? table
|
||||
---@field NoiceFormatProgressTodo? table
|
||||
---@field NoiceFormatProgressDone? table
|
||||
---@field NoiceLspProgressSpinner? table
|
||||
---@field NoiceLspProgressClient? table
|
||||
---@field NoiceLspProgressTitle? table
|
||||
---@field HopNextKey? table
|
||||
---@field HopNextKey1? table
|
||||
---@field HopUnmatched? table
|
||||
---@field MiniStatuslineModeNormal? table
|
||||
---@field MiniStatuslineModeInsert? table
|
||||
---@field MiniStatuslineModeVisual? table
|
||||
---@field MiniStatuslineModeReplace? table
|
||||
---@field MiniStatuslineModeCommand? table
|
||||
---@field MinistatusLineFileName? table
|
||||
---@field MiniStatuslineDevinfo? table
|
||||
---@field MiniStatuslineFileinfo? table
|
||||
---@field MiniStatuslineInactive? table
|
||||
---@field MiniTablineCurrent? table
|
||||
---@field MiniTablineVisible? table
|
||||
---@field MiniTablineHidden? table
|
||||
---@field MiniTablineModifiedCurrent? table
|
||||
---@field MiniTablineModifiedVisible? table
|
||||
---@field MiniTablineModifiedHidden? table
|
||||
---@field MiniTablineFill? table
|
||||
---@field MiniTablineTabpagesection? table
|
||||
---@field MiniStarterCurrent? table
|
||||
---@field MiniStarterHeader? table
|
||||
---@field MiniStarterFooter? table
|
||||
---@field MiniStarterItem? table
|
||||
---@field MiniStarterItemBullet? table
|
||||
---@field MiniStarterItemPrefix? table
|
||||
---@field MiniStarterSection? table
|
||||
---@field MiniStarterQuery? table
|
||||
---@field MiniCursorword? table
|
||||
|
||||
local M = {}
|
||||
|
||||
local function nvim_get_hl(opts)
|
||||
local hl = vim.api.nvim_get_hl(0, opts)
|
||||
|
||||
if hl.link then
|
||||
return nvim_get_hl { name = hl.link }
|
||||
end
|
||||
|
||||
return hl
|
||||
end
|
||||
|
||||
local nvim_set_hl = function(group_name, group_val, config)
|
||||
local val = { fg = 'NONE', bg = 'NONE' }
|
||||
|
||||
if not group_val.link then
|
||||
if config and config.transparent then
|
||||
group_val.bg = 'NONE'
|
||||
end
|
||||
val = vim.tbl_extend('force', val, group_val)
|
||||
vim.api.nvim_set_hl(0, group_name, val)
|
||||
else
|
||||
vim.api.nvim_set_hl(0, group_name, group_val)
|
||||
end
|
||||
end
|
||||
|
||||
M.set_highlight = function(colors, config)
|
||||
if config.on_colors then
|
||||
local color = require 'dracula.color'
|
||||
colors = vim.tbl_extend('force', colors, config.on_colors(colors, color))
|
||||
end
|
||||
-- EDITOR :h highlight-groups
|
||||
nvim_set_hl('ColorColumn', { bg = colors.base04 })
|
||||
nvim_set_hl('Conceal', { fg = colors.base02 })
|
||||
nvim_set_hl('CurSearch', { fg = colors.cyan, bg = colors.shade_cyan })
|
||||
nvim_set_hl('Cursor', { fg = colors.base03, bg = colors.cyan })
|
||||
nvim_set_hl('lCursor', { link = 'Cursor' })
|
||||
nvim_set_hl('CursorIM', { link = 'Cursor' })
|
||||
nvim_set_hl('CursorColumn', { link = 'ColorColumn' })
|
||||
nvim_set_hl('CursorLine', { bg = colors.base02 })
|
||||
nvim_set_hl('Directory', { fg = colors.purple })
|
||||
nvim_set_hl('DiffAdd', { fg = colors.git_added })
|
||||
nvim_set_hl('DiffChange', { fg = colors.git_modified })
|
||||
nvim_set_hl('DiffDelete', { fg = colors.git_removed, reverse = true })
|
||||
nvim_set_hl('DiffText', { fg = colors.cyan, reverse = true })
|
||||
nvim_set_hl('EndOfBuffer', { fg = colors.base03 })
|
||||
nvim_set_hl('TermCursor', { link = 'Cursor' })
|
||||
nvim_set_hl('TermCursorNC', { fg = colors.base0, reverse = true })
|
||||
nvim_set_hl('ErrorMsg', { fg = colors.diag_error })
|
||||
nvim_set_hl('WinSeparator', { fg = colors.base01, bg = colors.base04 })
|
||||
nvim_set_hl('Folded', { fg = colors.base0, bg = colors.base02 })
|
||||
nvim_set_hl('FoldColumn', { fg = colors.base0, bg = colors.base04 })
|
||||
nvim_set_hl('SignColumn', { link = 'Normal' })
|
||||
nvim_set_hl('IncSearch', { fg = colors.cyan, bg = colors.shade_cyan, bold = true }, config)
|
||||
nvim_set_hl('Substitute', { link = 'IncSearch' })
|
||||
nvim_set_hl('LineNr', { fg = colors.base01, bg = colors.base03 }, config)
|
||||
nvim_set_hl('LineNrAbove', { link = 'LineNr' })
|
||||
nvim_set_hl('LineNrBelow', { link = 'LineNr' })
|
||||
nvim_set_hl('CursorLineNr', { fg = colors.purple, bg = colors.base03 }, config)
|
||||
nvim_set_hl('CursorLineFold', { link = 'FoldColumn' })
|
||||
nvim_set_hl('CursorLineSign', { link = 'SignColumn' })
|
||||
nvim_set_hl('MatchParen', { fg = colors.cyan })
|
||||
nvim_set_hl('ModeMsg', { fg = colors.purple })
|
||||
nvim_set_hl('MsgArea', { link = 'Normal' })
|
||||
nvim_set_hl('MsgSeparator', { link = 'Normal' })
|
||||
nvim_set_hl('MoreMsg', { link = 'ModeMsg' })
|
||||
nvim_set_hl('NonText', { fg = colors.base01 })
|
||||
nvim_set_hl('Normal', { fg = colors.base0, bg = colors.base03 }, config)
|
||||
nvim_set_hl('NormalFloat', { fg = colors.base0, bg = colors.base04 })
|
||||
nvim_set_hl('FloatBorder', { link = 'WinSeparator' })
|
||||
nvim_set_hl('FloatTitle', { fg = colors.purple, bold = true })
|
||||
nvim_set_hl('NormalNC', { link = 'Normal' })
|
||||
nvim_set_hl('Pmenu', { fg = colors.base0, bg = colors.base04 })
|
||||
nvim_set_hl('PmenuSel', { fg = colors.cyan, reverse = true })
|
||||
nvim_set_hl('PmenuKind', { link = 'Pmenu' })
|
||||
nvim_set_hl('PmenuKindSel', { link = 'PmenuSel' })
|
||||
nvim_set_hl('PmenuExtra', { link = 'Pmenu' })
|
||||
nvim_set_hl('PmenuExtraSel', { link = 'PmenuSel' })
|
||||
nvim_set_hl('PmenuSbar', { bg = colors.base04 })
|
||||
nvim_set_hl('PmenuThumb', { bg = colors.cyan })
|
||||
nvim_set_hl('Question', { fg = colors.diag_info })
|
||||
nvim_set_hl('QuickFixLine', { fg = colors.base0, bg = colors.base03 })
|
||||
nvim_set_hl('Search', { bg = colors.base02 })
|
||||
nvim_set_hl('SpecialKey', { link = 'NonText' })
|
||||
nvim_set_hl('SpellBad', { underline = true, strikethrough = true })
|
||||
nvim_set_hl('SpellCap', { fg = colors.diag_hint })
|
||||
nvim_set_hl('SpellLocal', { link = 'SpellCap' })
|
||||
nvim_set_hl('SpellRare', { fg = colors.diag_warning })
|
||||
nvim_set_hl('StatusLine', { fg = colors.base0, bg = colors.base04 })
|
||||
nvim_set_hl('StatusLineNC', { fg = colors.base01, bg = colors.base04 })
|
||||
nvim_set_hl('TabLine', { fg = colors.base01, bg = colors.base04 })
|
||||
nvim_set_hl('TabLineFill', { fg = colors.base0, bg = colors.base04 })
|
||||
nvim_set_hl('TabLineSel', { fg = colors.base0, bg = colors.base03 })
|
||||
nvim_set_hl('Title', { fg = colors.purple, bold = true })
|
||||
nvim_set_hl('Visual', { bg = colors.base02 })
|
||||
nvim_set_hl('VisualNOS', { link = 'Visual' })
|
||||
nvim_set_hl('warningMsg', { fg = colors.diag_warning })
|
||||
nvim_set_hl('Whitespace', { fg = colors.base01 })
|
||||
nvim_set_hl('WildMenu', { fg = colors.base02 })
|
||||
nvim_set_hl('WinBar', { link = 'Pmenu' })
|
||||
nvim_set_hl('WinBarNC', { link = 'WinBar' }) -- SYNTAX :h group-name
|
||||
nvim_set_hl('Comment', { fg = colors.base01 })
|
||||
nvim_set_hl('Constant', { fg = colors.purple })
|
||||
nvim_set_hl('String', { fg = colors.yellow })
|
||||
nvim_set_hl('Character', { fg = colors.yellow })
|
||||
nvim_set_hl('Number', { fg = colors.purple })
|
||||
nvim_set_hl('Boolean', { fg = colors.purple })
|
||||
nvim_set_hl('Float', { fg = colors.purple })
|
||||
nvim_set_hl('Identifier', { fg = colors.base0 })
|
||||
nvim_set_hl('Function', { fg = colors.green })
|
||||
nvim_set_hl('Statement', { fg = colors.pink })
|
||||
nvim_set_hl('Conditional', { fg = colors.pink })
|
||||
nvim_set_hl('Repeat', { fg = colors.pink })
|
||||
nvim_set_hl('Label', { fg = colors.pink })
|
||||
nvim_set_hl('Operator', { fg = colors.pink })
|
||||
nvim_set_hl('Keyword', { fg = colors.pink })
|
||||
nvim_set_hl('Exception', { fg = colors.pink })
|
||||
nvim_set_hl('PreProc', { fg = colors.pink })
|
||||
nvim_set_hl('Include', { fg = colors.pink })
|
||||
nvim_set_hl('Define', { fg = colors.pink })
|
||||
nvim_set_hl('Macro', { fg = colors.pink })
|
||||
nvim_set_hl('PreCondit', { fg = colors.pink })
|
||||
nvim_set_hl('Type', { fg = colors.cyan })
|
||||
nvim_set_hl('StorageClass', { fg = colors.pink })
|
||||
nvim_set_hl('Structure', { fg = colors.cyan })
|
||||
nvim_set_hl('Typedef', { fg = colors.pink })
|
||||
nvim_set_hl('Special', { fg = colors.red })
|
||||
nvim_set_hl('SpecialChar', { fg = colors.purple })
|
||||
nvim_set_hl('Tag', { fg = colors.pink })
|
||||
nvim_set_hl('Delimiter', { fg = colors.base0 })
|
||||
nvim_set_hl('SpecialComment', { fg = colors.pink })
|
||||
nvim_set_hl('Debug', { fg = colors.pink })
|
||||
nvim_set_hl('Underlined', { fg = colors.cyan, underline = true })
|
||||
nvim_set_hl('Ignore', {})
|
||||
nvim_set_hl('Error', { fg = colors.diag_error, bold = true })
|
||||
nvim_set_hl('Todo', { fg = colors.purple, bold = true }) -- PLUGINS
|
||||
if config.plugins['nvim-treesitter'] then
|
||||
nvim_set_hl('@variable', { fg = colors.base0 })
|
||||
nvim_set_hl('@variable.builtin', { fg = colors.purple })
|
||||
nvim_set_hl('@variable.parameter', { fg = colors.orange, italic = true })
|
||||
nvim_set_hl('@variable.member', { fg = colors.base0 })
|
||||
nvim_set_hl('@constant', { fg = colors.purple })
|
||||
nvim_set_hl('@constant.builtin', { fg = colors.purple })
|
||||
nvim_set_hl('@constant.macro', { fg = colors.purple })
|
||||
nvim_set_hl('@module', { fg = colors.base0 })
|
||||
nvim_set_hl('@module.builtin', { fg = colors.purple })
|
||||
nvim_set_hl('@label', { fg = colors.pink })
|
||||
nvim_set_hl('@string', { fg = colors.yellow })
|
||||
nvim_set_hl('@string.documentation', { fg = colors.pink })
|
||||
nvim_set_hl('@string.regexp', { fg = colors.red })
|
||||
nvim_set_hl('@string.escape', { fg = colors.pink })
|
||||
nvim_set_hl('@string.special', { fg = colors.yellow })
|
||||
nvim_set_hl('@string.special.symbol', { fg = colors.base0 })
|
||||
nvim_set_hl('@string.special.url', { link = 'Underlined' })
|
||||
nvim_set_hl('@character', { fg = colors.yellow })
|
||||
nvim_set_hl('@character.special', { fg = colors.yellow })
|
||||
nvim_set_hl('@character.printf', { fg = colors.red })
|
||||
nvim_set_hl('@type', { fg = colors.cyan })
|
||||
nvim_set_hl('@type.builtin', { fg = colors.pink })
|
||||
nvim_set_hl('@type.definition', { fg = colors.cyan })
|
||||
nvim_set_hl('@type.qualifier', { fg = colors.pink })
|
||||
nvim_set_hl('@function', { fg = colors.green })
|
||||
nvim_set_hl('@function.builtin', { fg = colors.cyan })
|
||||
nvim_set_hl('@function.call', { fg = colors.green })
|
||||
nvim_set_hl('@function.macro', { fg = colors.green })
|
||||
nvim_set_hl('@function.method', { fg = colors.green })
|
||||
nvim_set_hl('@function.method.call', { fg = colors.green })
|
||||
nvim_set_hl('@constructor', { fg = colors.cyan })
|
||||
nvim_set_hl('@constructor.lua', { fg = colors.base0 })
|
||||
nvim_set_hl('@operator', { fg = colors.pink })
|
||||
nvim_set_hl('@keyword', { fg = colors.pink })
|
||||
nvim_set_hl('@keyword.coroutine', { fg = colors.pink })
|
||||
nvim_set_hl('@keyword.function', { fg = colors.pink })
|
||||
nvim_set_hl('@keyword.operator', { fg = colors.pink })
|
||||
nvim_set_hl('@keyword.import', { fg = colors.pink })
|
||||
nvim_set_hl('@keyword.repeat', { fg = colors.pink })
|
||||
nvim_set_hl('@keyword.return', { fg = colors.pink })
|
||||
nvim_set_hl('@keyword.debug', { fg = colors.pink })
|
||||
nvim_set_hl('@keyword.exception', { fg = colors.pink })
|
||||
nvim_set_hl('@keyword.conditional', { fg = colors.pink })
|
||||
nvim_set_hl('@keyword.conditional.ternary', { fg = colors.pink })
|
||||
nvim_set_hl('@keyword.directive', { fg = colors.pink })
|
||||
nvim_set_hl('@keyword.directive.define', { fg = colors.pink })
|
||||
nvim_set_hl('@punctuation.delimiter', { fg = colors.base0 })
|
||||
nvim_set_hl('@punctuation.bracket', { fg = colors.base0 })
|
||||
nvim_set_hl('@punctuation.special', { fg = colors.pink })
|
||||
nvim_set_hl('@comment', { fg = colors.base01 })
|
||||
nvim_set_hl('@comment.documentation', { fg = colors.base01 })
|
||||
nvim_set_hl('@comment.error', { fg = colors.diag_error, bg = colors.shade_error })
|
||||
nvim_set_hl('@comment.warning', { fg = colors.diag_warning, bg = colors.shade_warning })
|
||||
nvim_set_hl('@comment.todo', { fg = colors.purple, bg = colors.shade_purple })
|
||||
nvim_set_hl('@comment.note', { fg = colors.diag_hint, bg = colors.shade_hint })
|
||||
nvim_set_hl('@markup.strong', { fg = colors.orange, bold = true })
|
||||
nvim_set_hl('@markup.italic', { fg = colors.yellow, italic = true })
|
||||
nvim_set_hl('@markup.strikethrough', { fg = colors.base01 })
|
||||
nvim_set_hl('@markup.underline', { fg = colors.cyan, underline = true })
|
||||
nvim_set_hl('@markup.heading', { fg = colors.purple, bold = true })
|
||||
nvim_set_hl('@markup.quote', { fg = colors.base01 })
|
||||
nvim_set_hl('@markup.math', { fg = colors.purple })
|
||||
nvim_set_hl('@markup.environment', { fg = colors.base01 })
|
||||
nvim_set_hl('@markup.link', { fg = colors.orange, bold = true })
|
||||
nvim_set_hl('@markup.link.label', { fg = colors.cyan, underline = true })
|
||||
nvim_set_hl('@markup.link.url', { fg = colors.cyan, underline = true })
|
||||
nvim_set_hl('@markup.raw', { fg = colors.base01 })
|
||||
nvim_set_hl('@markup.raw.block', { fg = colors.base0 })
|
||||
nvim_set_hl('@markup.list', { fg = colors.purple })
|
||||
nvim_set_hl('@markup.list.checked', { fg = colors.git_added })
|
||||
nvim_set_hl('@markup.list.unchecked', { fg = colors.git_modified })
|
||||
nvim_set_hl('@diff.plus', { fg = colors.git_added })
|
||||
nvim_set_hl('@diff.minus', { fg = colors.git_removed })
|
||||
nvim_set_hl('@diff.delta', { fg = colors.git_modified })
|
||||
nvim_set_hl('@tag', { fg = colors.pink })
|
||||
nvim_set_hl('@tag.attribute', { fg = colors.green })
|
||||
nvim_set_hl('@tag.delimiter', { fg = colors.base0 })
|
||||
nvim_set_hl('@property.yaml', { fg = colors.cyan })
|
||||
nvim_set_hl('@property.json', { fg = colors.cyan })
|
||||
nvim_set_hl('@property.css', { fg = colors.cyan })
|
||||
nvim_set_hl('@property.scss', { fg = colors.cyan })
|
||||
end
|
||||
|
||||
if config.plugins['nvim-lspconfig'] then
|
||||
nvim_set_hl('@lsp.type.class', { fg = colors.cyan })
|
||||
nvim_set_hl('@lsp.type.decorator', { fg = colors.green })
|
||||
nvim_set_hl('@lsp.type.enum', { fg = colors.cyan })
|
||||
nvim_set_hl('@lsp.type.enumMember', { fg = colors.purple })
|
||||
nvim_set_hl('@lsp.type.interface', { fg = colors.cyan })
|
||||
nvim_set_hl('@lsp.type.macro', { fg = colors.pink })
|
||||
nvim_set_hl('@lsp.type.namespace', { fg = colors.base0 })
|
||||
nvim_set_hl('@lsp.type.parameter', { fg = colors.orange, italic = true })
|
||||
nvim_set_hl('@lsp.type.property', { fg = colors.base0 })
|
||||
nvim_set_hl('@lsp.type.struct', { fg = colors.cyan })
|
||||
nvim_set_hl('@lsp.type.type', { fg = colors.cyan })
|
||||
nvim_set_hl('@lsp.type.typeParameter', { fg = colors.cyan, italic = true })
|
||||
nvim_set_hl('@lsp.type.variable', { fg = colors.base0 })
|
||||
nvim_set_hl('@lsp.typemod.variable.defaultLibrary', { fg = colors.purple })
|
||||
nvim_set_hl('@lsp.typemod.variable.readonly', { fg = colors.purple })
|
||||
nvim_set_hl('@lsp.typemod.variable.global', { fg = colors.purple })
|
||||
nvim_set_hl('@lsp.typemod.keyword.documentation', { fg = colors.pink })
|
||||
nvim_set_hl('@lsp.typemod.class.documentation', { fg = colors.cyan })
|
||||
nvim_set_hl('@lsp.typemod.property.readonly', { fg = colors.purple })
|
||||
nvim_set_hl('DiagnosticError', { fg = colors.diag_error })
|
||||
nvim_set_hl('DiagnosticWarn', { fg = colors.diag_warning })
|
||||
nvim_set_hl('DiagnosticInfo', { fg = colors.diag_info })
|
||||
nvim_set_hl('DiagnosticHint', { fg = colors.diag_hint })
|
||||
nvim_set_hl('DiagnosticOk', { fg = colors.diag_ok })
|
||||
nvim_set_hl('DiagnosticVirtualTextError', { fg = colors.diag_error, bg = colors.shade_error })
|
||||
nvim_set_hl('DiagnosticVirtualTextWarn', { fg = colors.diag_warning, bg = colors.shade_warning })
|
||||
nvim_set_hl('DiagnosticVirtualTextInfo', { fg = colors.diag_info, bg = colors.shade_info })
|
||||
nvim_set_hl('DiagnosticVirtualTextHint', { fg = colors.diag_hint, bg = colors.shade_hint })
|
||||
nvim_set_hl('DiagnosticVirtualTextOk', { fg = colors.diag_ok, bg = colors.shade_ok })
|
||||
nvim_set_hl('DiagnosticUnderlineError', { fg = colors.diag_error, underline = true })
|
||||
nvim_set_hl('DiagnosticUnderlineWarn', { fg = colors.diag_warning, underline = true })
|
||||
nvim_set_hl('DiagnosticUnderlineInfo', { fg = colors.diag_info, underline = true })
|
||||
nvim_set_hl('DiagnosticUnderlineHint', { fg = colors.diag_hint, underline = true })
|
||||
nvim_set_hl('DiagnosticUnderlineOk', { fg = colors.diag_ok, underline = true })
|
||||
nvim_set_hl('LspReferenceText', { link = 'Visual' })
|
||||
nvim_set_hl('LspReferenceRead', { link = 'Visual' })
|
||||
nvim_set_hl('LspReferenceWrite', { link = 'Visual' })
|
||||
nvim_set_hl('LspInlayHint', { fg = colors.inlay_hint })
|
||||
end
|
||||
|
||||
if config.plugins['nvim-navic'] then
|
||||
nvim_set_hl('NavicText', { fg = colors.base0 })
|
||||
nvim_set_hl('NavicSeparator', { link = 'Statement' })
|
||||
nvim_set_hl('NavicIconsMethod', { link = 'Function' })
|
||||
nvim_set_hl('NavicIconsFunction', { link = 'Function' })
|
||||
nvim_set_hl('NavicIconsField', { link = 'Identifier' })
|
||||
nvim_set_hl('NavicIconsVariable', { link = 'Identifier' })
|
||||
nvim_set_hl('NavicIconsClass', { link = 'Type' })
|
||||
nvim_set_hl('NavicIconsInterface', { link = 'Type' })
|
||||
nvim_set_hl('NavicIconsModule', { link = 'Type' })
|
||||
nvim_set_hl('NavicIconsNamespace', { link = 'Type' })
|
||||
nvim_set_hl('NavicIconsProperty', { link = 'Identifier' })
|
||||
nvim_set_hl('NavicIconsUnit', { link = 'Number' })
|
||||
nvim_set_hl('NavicIconsEnum', { link = 'Type' })
|
||||
nvim_set_hl('NavicIconsKeyword', { link = 'Statement' })
|
||||
nvim_set_hl('NavicIconsSnippet', { link = 'Tag' })
|
||||
nvim_set_hl('NavicIconsColor', { fg = colors.orange })
|
||||
nvim_set_hl('NavicIconsFile', { link = 'Identifier' })
|
||||
nvim_set_hl('NavicIconsReference', { link = 'Underlined' })
|
||||
nvim_set_hl('NavicIconsFolder', { link = 'Directory' })
|
||||
nvim_set_hl('NavicIconsEnumMember', { link = 'Constant' })
|
||||
nvim_set_hl('NavicIconsConstant', { link = 'Constant' })
|
||||
nvim_set_hl('NavicIconsStruct', { link = 'Identifier' })
|
||||
nvim_set_hl('NavicIconsEvent', { link = 'Function' })
|
||||
nvim_set_hl('NavicIconsOperator', { link = 'Operator' })
|
||||
nvim_set_hl('NavicIconsTypeParameter', { link = 'Type' })
|
||||
end
|
||||
|
||||
if config.plugins['nvim-cmp'] then
|
||||
nvim_set_hl('CmpItemKindText', { link = 'String' })
|
||||
nvim_set_hl('CmpItemKindMethod', { link = 'Function' })
|
||||
nvim_set_hl('CmpItemKindFunction', { link = 'Function' })
|
||||
nvim_set_hl('CmpItemKindField', { link = 'Identifier' })
|
||||
nvim_set_hl('CmpItemKindVariable', { link = 'Identifier' })
|
||||
nvim_set_hl('CmpItemKindClass', { link = 'Type' })
|
||||
nvim_set_hl('CmpItemKindInterface', { link = 'Type' })
|
||||
nvim_set_hl('CmpItemKindModule', { link = 'Type' })
|
||||
nvim_set_hl('CmpItemKindProperty', { link = 'Identifier' })
|
||||
nvim_set_hl('CmpItemKindUnit', { link = 'Number' })
|
||||
nvim_set_hl('CmpItemKindEnum', { link = 'Type' })
|
||||
nvim_set_hl('CmpItemKindKeyword', { link = 'Statement' })
|
||||
nvim_set_hl('CmpItemKindSnippet', { link = 'Tag' })
|
||||
nvim_set_hl('CmpItemKindColor', { fg = colors.orange })
|
||||
nvim_set_hl('CmpItemKindFile', { link = 'Identifier' })
|
||||
nvim_set_hl('CmpItemKindReference', { link = 'Underlined' })
|
||||
nvim_set_hl('CmpItemKindFolder', { link = 'Directory' })
|
||||
nvim_set_hl('CmpItemKindEnumMember', { link = 'Constant' })
|
||||
nvim_set_hl('CmpItemKindConstant', { link = 'Constant' })
|
||||
nvim_set_hl('CmpItemKindStruct', { link = 'Identifier' })
|
||||
nvim_set_hl('CmpItemKindEvent', { link = 'Function' })
|
||||
nvim_set_hl('CmpItemKindOperator', { link = 'Operator' })
|
||||
nvim_set_hl('CmpItemKindTypeParameter', { link = 'Type' })
|
||||
end
|
||||
|
||||
if config.plugins['indent-blankline.nvim'] then
|
||||
nvim_set_hl('IblIndent', { fg = colors.shade_purple, nocombine = true })
|
||||
nvim_set_hl('IblScope', { fg = colors.purple, nocombine = true })
|
||||
end
|
||||
|
||||
if config.plugins['neo-tree.nvim'] then
|
||||
nvim_set_hl('NeoTreeNormal', { fg = colors.base0, bg = colors.base04 })
|
||||
nvim_set_hl('NeoTreeNormalNC', { link = 'NeoTreeNormal' })
|
||||
nvim_set_hl('NeoTreeDotFile', { fg = colors.base01 })
|
||||
nvim_set_hl('NeoTreeFileNameOpened', { link = 'Directory' })
|
||||
nvim_set_hl('NeoTreeFloatBorder', { link = 'WinSeparator' })
|
||||
nvim_set_hl('NeoTreeFloatTitle', { link = 'Title' })
|
||||
nvim_set_hl('NeoTreeGitAdded', { fg = colors.git_added })
|
||||
nvim_set_hl('NeoTreeGitConflict', { fg = colors.git_modified })
|
||||
nvim_set_hl('NeoTreeGitDeleted', { fg = colors.git_removed })
|
||||
nvim_set_hl('NeoTreeGitIgnored', { fg = colors.base01 })
|
||||
nvim_set_hl('NeoTreeGitModified', { fg = colors.git_modified })
|
||||
nvim_set_hl('NeoTreeGitUnstaged', { fg = colors.git_modified })
|
||||
nvim_set_hl('NeoTreeGitUntracked', { fg = colors.git_modified })
|
||||
nvim_set_hl('NeoTreeGitStaged', { fg = colors.git_added })
|
||||
end
|
||||
|
||||
if config.plugins['nvim-tree.lua'] then
|
||||
nvim_set_hl('NvimTreeSymlink', { link = 'Underlined' })
|
||||
nvim_set_hl('NvimTreeSymlinkIcon', { link = 'Directory' })
|
||||
nvim_set_hl('NvimTreeFolderName', { fg = colors.base0 })
|
||||
nvim_set_hl('NvimTreeRootFolder', { fg = colors.purple, bold = true })
|
||||
nvim_set_hl('NvimTreeFolderIcon', { link = 'Directory' })
|
||||
nvim_set_hl('NvimTreeEmptyFolderName', { fg = colors.base0 })
|
||||
nvim_set_hl('NvimTreeExecFile', { fg = colors.green })
|
||||
nvim_set_hl('NvimTreeOpenedFile', { fg = colors.purple, bold = true })
|
||||
nvim_set_hl('NvimTreeModifiedFile', { fg = colors.git_modified })
|
||||
nvim_set_hl('NvimTreeSpecialFile', { link = 'Special' })
|
||||
nvim_set_hl('NvimTreeIndentMarker', { fg = colors.shade_purple })
|
||||
nvim_set_hl('NvimTreeGitDirty', { fg = colors.git_modified })
|
||||
nvim_set_hl('NvimTreeGitStaged', { fg = colors.git_added })
|
||||
nvim_set_hl('NvimTreeGitMerge', { fg = colors.git_modified })
|
||||
nvim_set_hl('NvimTreeGitRenamed', { fg = colors.git_modified })
|
||||
nvim_set_hl('NvimTreeGitNew', { fg = colors.git_added })
|
||||
nvim_set_hl('NvimTreeGitDeleted', { fg = colors.git_removed })
|
||||
nvim_set_hl('NvimTreeNormal', { fg = colors.base0, bg = colors.base04 })
|
||||
nvim_set_hl('NvimTreeNormalFloat', { link = 'NvimTreeNormal' })
|
||||
nvim_set_hl('NvimTreeEndOfBuffer', { fg = colors.base04 })
|
||||
nvim_set_hl('NvimTreeWinSeparator', { fg = colors.base04, bg = colors.base04 })
|
||||
end
|
||||
|
||||
if config.plugins['which-key.nvim'] then
|
||||
nvim_set_hl('WhichKey', { fg = colors.green })
|
||||
nvim_set_hl('WhichKeyDesc', { fg = colors.orange, italic = true })
|
||||
nvim_set_hl('WhichKeySeparator', { fg = colors.pink })
|
||||
nvim_set_hl('WhichKeyGroup', { fg = colors.purple })
|
||||
end
|
||||
|
||||
if config.plugins['dashboard-nvim'] then
|
||||
nvim_set_hl('DashboardHeader', { fg = colors.red })
|
||||
nvim_set_hl('DashboardFooter', { fg = colors.base01 })
|
||||
nvim_set_hl('DashboardDesc', { link = 'Directory' })
|
||||
nvim_set_hl('DashboardKey', { fg = colors.pink })
|
||||
nvim_set_hl('DashboardIcon', { link = 'Directory' })
|
||||
nvim_set_hl('DashboardShotCut', { fg = colors.base0 })
|
||||
end
|
||||
|
||||
if config.plugins['gitsigns.nvim'] then
|
||||
nvim_set_hl('GitSignsAdd', { fg = colors.git_added })
|
||||
nvim_set_hl('GitSignsChange', { fg = colors.git_modified })
|
||||
nvim_set_hl('GitSignsDelete', { fg = colors.git_removed })
|
||||
end
|
||||
|
||||
if config.plugins['neogit'] then
|
||||
nvim_set_hl('NeogitCursorLine', { link = 'CursorLine' })
|
||||
nvim_set_hl('NeogitBranch', { fg = colors.purple })
|
||||
nvim_set_hl('NeogitRemote', { fg = colors.cyan })
|
||||
nvim_set_hl('NeogitHunkHeader', { fg = colors.purple, bg = colors.shade_purple })
|
||||
nvim_set_hl('NeogitHunkHeaderHighlight', { link = 'Title' })
|
||||
nvim_set_hl('NeogitDiffContextHighlight', { fg = colors.base0, bg = colors.base03 })
|
||||
nvim_set_hl('NeogitDiffContext', { fg = colors.base0, bg = colors.base04 })
|
||||
nvim_set_hl('NeogitDiffDeleteHighlight', { fg = colors.git_removed, bg = colors.shade_red })
|
||||
nvim_set_hl('NeogitDiffDelete', { fg = colors.git_removed })
|
||||
nvim_set_hl('NeogitDiffAddHighlight', { fg = colors.git_added, bg = colors.shade_green })
|
||||
nvim_set_hl('NeogitDiffAdd', { fg = colors.git_added })
|
||||
end
|
||||
|
||||
if config.plugins['todo-comments.nvim'] then
|
||||
nvim_set_hl('TodoFgTODO', { fg = colors.purple })
|
||||
nvim_set_hl('TodoFgWARN', { fg = colors.diag_warning })
|
||||
nvim_set_hl('TodoFgTEST', { fg = colors.diag_ok })
|
||||
nvim_set_hl('TodoFgPERF', { fg = colors.yellow })
|
||||
nvim_set_hl('TodoFgNOTE', { fg = colors.cyan })
|
||||
nvim_set_hl('TodoFgHACK', { fg = colors.pink })
|
||||
nvim_set_hl('TodoFgFIX', { fg = colors.diag_error })
|
||||
nvim_set_hl('TodoSignTODO', { fg = colors.purple })
|
||||
nvim_set_hl('TodoSignWARN', { fg = colors.diag_warning })
|
||||
nvim_set_hl('TodoSignTEST', { fg = colors.diag_ok })
|
||||
nvim_set_hl('TodoSignPERF', { fg = colors.yellow })
|
||||
nvim_set_hl('TodoSignNOTE', { fg = colors.cyan })
|
||||
nvim_set_hl('TodoSignHACK', { fg = colors.pink })
|
||||
nvim_set_hl('TodoSignFIX', { fg = colors.diag_error })
|
||||
nvim_set_hl('TodoBgTODO', { fg = colors.purple, reverse = true })
|
||||
nvim_set_hl('TodoBgWARN', { fg = colors.diag_warning, reverse = true })
|
||||
nvim_set_hl('TodoBgTEST', { fg = colors.diag_ok, reverse = true })
|
||||
nvim_set_hl('TodoBgPERF', { fg = colors.yellow, reverse = true })
|
||||
nvim_set_hl('TodoBgNOTE', { fg = colors.cyan, reverse = true })
|
||||
nvim_set_hl('TodoBgHACK', { fg = colors.pink, reverse = true })
|
||||
nvim_set_hl('TodoBgFIX', { fg = colors.diag_error, reverse = true })
|
||||
end
|
||||
|
||||
if config.plugins['lazy.nvim'] then
|
||||
nvim_set_hl('LazyH1', { fg = colors.purple, bg = colors.base04 })
|
||||
nvim_set_hl('LazyButton', { fg = colors.base0, bg = colors.base02 })
|
||||
nvim_set_hl('LazyButtonActive', { bg = colors.base02, reverse = true })
|
||||
nvim_set_hl('LazyReasonStart', { fg = colors.cyan })
|
||||
end
|
||||
|
||||
if config.plugins['telescope.nvim'] then
|
||||
nvim_set_hl('TelescopeSelection', { link = 'CursorLine' })
|
||||
nvim_set_hl('TelescopeSelectionCaret', { fg = colors.purple })
|
||||
nvim_set_hl('TelescopeMultiIcon', { fg = colors.purple })
|
||||
nvim_set_hl('TelescopeNormal', { fg = colors.base0, bg = colors.base04 }, config)
|
||||
nvim_set_hl('TelescopePreviewNormal', { link = 'TelescopeNormal' })
|
||||
nvim_set_hl('TelescopePromptNormal', { link = 'TelescopeNormal' })
|
||||
nvim_set_hl('TelescopeResultsNormal', { link = 'TelescopeNormal' })
|
||||
nvim_set_hl('TelescopeBorder', { fg = colors.purple, bg = colors.base04 }, config)
|
||||
nvim_set_hl('TelescopePromptBorder', { link = 'TelescopeBorder' })
|
||||
nvim_set_hl('TelescopeResultsBorder', { link = 'TelescopeBorder' })
|
||||
nvim_set_hl('TelescopePreviewBorder', { link = 'TelescopeBorder' })
|
||||
nvim_set_hl('TelescopeTitle', { fg = colors.purple, bg = colors.shade_purple })
|
||||
nvim_set_hl('TelescopePromptTitle', { link = 'TelescopeTitle' })
|
||||
nvim_set_hl('TelescopeResultsTitle', { link = 'TelescopeTitle' })
|
||||
nvim_set_hl('TelescopePreviewTitle', { link = 'TelescopeTitle' })
|
||||
nvim_set_hl('TelescopeMatching', { fg = colors.purple, bg = colors.shade_purple })
|
||||
nvim_set_hl('TelescopePreviewMatch', { link = 'TelescopeMatching' })
|
||||
nvim_set_hl('TelescopePromptCounter', { link = 'NonText' })
|
||||
nvim_set_hl('TelescopePromptPrefix', { fg = colors.purple })
|
||||
end
|
||||
|
||||
if config.plugins['noice.nvim'] then
|
||||
nvim_set_hl('NoiceFormatProgressTodo', { fg = colors.diag_ok, bg = colors.shade_ok })
|
||||
nvim_set_hl('NoiceFormatProgressDone', { fg = colors.diag_ok, reverse = true })
|
||||
nvim_set_hl('NoiceLspProgressSpinner', { fg = colors.diag_ok })
|
||||
nvim_set_hl('NoiceLspProgressClient', { fg = colors.diag_ok })
|
||||
nvim_set_hl('NoiceLspProgressTitle', { link = 'Title' })
|
||||
end
|
||||
|
||||
if config.plugins['hop.nvim'] then
|
||||
nvim_set_hl('HopNextKey', { fg = colors.red })
|
||||
nvim_set_hl('HopNextKey1', { fg = colors.cyan })
|
||||
nvim_set_hl('HopUnmatched', { fg = colors.base01 })
|
||||
end
|
||||
|
||||
if config.plugins['mini.statusline'] then
|
||||
nvim_set_hl('MiniStatuslineModeNormal', { fg = colors.base03, bg = colors.purple })
|
||||
nvim_set_hl('MiniStatuslineModeInsert', { fg = colors.base03, bg = colors.green })
|
||||
nvim_set_hl('MiniStatuslineModeVisual', { fg = colors.yellow, bg = colors.base03 })
|
||||
nvim_set_hl('MiniStatuslineModeReplace', { fg = colors.red, bg = colors.base03 })
|
||||
nvim_set_hl('MiniStatuslineModeCommand', { fg = colors.orange, bg = colors.base03 })
|
||||
nvim_set_hl('MinistatusLineFileName', { fg = colors.base0, bg = colors.base04 })
|
||||
nvim_set_hl('MiniStatuslineDevinfo', { fg = colors.base0, bg = colors.base02 })
|
||||
nvim_set_hl('MiniStatuslineFileinfo', { fg = colors.base0, bg = colors.base02 })
|
||||
nvim_set_hl('MiniStatuslineInactive', { fg = colors.base01, bg = colors.base03 })
|
||||
end
|
||||
|
||||
if config.plugins['mini.tabline'] then
|
||||
nvim_set_hl('MiniTablineCurrent', { fg = colors.base0, bg = colors.base03 })
|
||||
nvim_set_hl('MiniTablineVisible', { fg = colors.base0, bg = colors.base03 })
|
||||
nvim_set_hl('MiniTablineHidden', { fg = colors.base01, bg = colors.base03 })
|
||||
nvim_set_hl('MiniTablineModifiedCurrent', { link = 'MiniTabLineCurrent' })
|
||||
nvim_set_hl('MiniTablineModifiedVisible', { link = 'MiniTablineVisible' })
|
||||
nvim_set_hl('MiniTablineModifiedHidden', { link = 'MiniTablineHidden' })
|
||||
nvim_set_hl('MiniTablineFill', { fg = colors.base0, bg = colors.base04 })
|
||||
nvim_set_hl('MiniTablineTabpagesection', { fg = colors.base0, bg = colors.base04 })
|
||||
end
|
||||
|
||||
if config.plugins['mini.starter'] then
|
||||
nvim_set_hl('MiniStarterCurrent', { link = 'CursorLine' })
|
||||
nvim_set_hl('MiniStarterHeader', { fg = colors.red })
|
||||
nvim_set_hl('MiniStarterFooter', { fg = colors.base01 })
|
||||
nvim_set_hl('MiniStarterItem', { fg = colors.base0 })
|
||||
nvim_set_hl('MiniStarterItemBullet', { fg = colors.pink })
|
||||
nvim_set_hl('MiniStarterItemPrefix', { fg = colors.pink })
|
||||
nvim_set_hl('MiniStarterSection', { link = 'Title' })
|
||||
nvim_set_hl('MiniStarterQuery', { fg = colors.pink, bold = true })
|
||||
end
|
||||
|
||||
if config.plugins['mini.cursorword'] then
|
||||
nvim_set_hl('MiniCursorword', { link = 'Visual' })
|
||||
end
|
||||
if config.on_highlights then
|
||||
local color = require 'dracula.color'
|
||||
local highlights = config.on_highlights(colors, color)
|
||||
|
||||
for group_name, group_val in pairs(highlights) do
|
||||
local hl = nvim_get_hl { name = group_name, link = true }
|
||||
local val = vim.tbl_extend('force', hl, group_val)
|
||||
vim.api.nvim_set_hl(0, group_name, val)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
return M
|
||||
826
lua/dracula/highlights/init.lua
Normal file
826
lua/dracula/highlights/init.lua
Normal file
|
|
@ -0,0 +1,826 @@
|
|||
---@class dracula.highlights
|
||||
---@field ColorColumn? table
|
||||
---@field Conceal? table
|
||||
---@field CurSearch? table
|
||||
---@field Cursor? table
|
||||
---@field lCursor? table
|
||||
---@field CursorIM? table
|
||||
---@field CursorColumn? table
|
||||
---@field CursorLine? table
|
||||
---@field Directory? table
|
||||
---@field DiffAdd? table
|
||||
---@field DiffChange? table
|
||||
---@field DiffDelete? table
|
||||
---@field DiffText? table
|
||||
---@field EndOfBuffer? table
|
||||
---@field TermCursor? table
|
||||
---@field TermCursorNC? table
|
||||
---@field ErrorMsg? table
|
||||
---@field WinSeparator? table
|
||||
---@field Folded? table
|
||||
---@field FoldColumn? table
|
||||
---@field SignColumn? table
|
||||
---@field IncSearch? table
|
||||
---@field Substitute? table
|
||||
---@field LineNr? table
|
||||
---@field LineNrAbove? table
|
||||
---@field LineNrBelow? table
|
||||
---@field CursorLineNr? table
|
||||
---@field CursorLineFold? table
|
||||
---@field CursorLineSign? table
|
||||
---@field MatchParen? table
|
||||
---@field ModeMsg? table
|
||||
---@field MsgArea? table
|
||||
---@field MsgSeparator? table
|
||||
---@field MoreMsg? table
|
||||
---@field NonText? table
|
||||
---@field Normal? table
|
||||
---@field NormalFloat? table
|
||||
---@field FloatBorder? table
|
||||
---@field FloatTitle? table
|
||||
---@field NormalNC? table
|
||||
---@field Pmenu? table
|
||||
---@field PmenuSel? table
|
||||
---@field PmenuKind? table
|
||||
---@field PmenuKindSel? table
|
||||
---@field PmenuExtra? table
|
||||
---@field PmenuExtraSel? table
|
||||
---@field PmenuSbar? table
|
||||
---@field PmenuThumb? table
|
||||
---@field Question? table
|
||||
---@field QuickFixLine? table
|
||||
---@field Search? table
|
||||
---@field SpecialKey? table
|
||||
---@field SpellBad? table
|
||||
---@field SpellCap? table
|
||||
---@field SpellLocal? table
|
||||
---@field SpellRare? table
|
||||
---@field StatusLine? table
|
||||
---@field StatusLineNC? table
|
||||
---@field TabLine? table
|
||||
---@field TabLineFill? table
|
||||
---@field TabLineSel? table
|
||||
---@field Title? table
|
||||
---@field Visual? table
|
||||
---@field VisualNOS? table
|
||||
---@field warningMsg? table
|
||||
---@field Whitespace? table
|
||||
---@field WildMenu? table
|
||||
---@field WinBar? table
|
||||
---@field WinBarNC? table
|
||||
---@field Comment? table
|
||||
---@field Constant? table
|
||||
---@field String? table
|
||||
---@field Character? table
|
||||
---@field Number? table
|
||||
---@field Boolean? table
|
||||
---@field Float? table
|
||||
---@field Identifier? table
|
||||
---@field Function? table
|
||||
---@field Statement? table
|
||||
---@field Conditional? table
|
||||
---@field Repeat? table
|
||||
---@field Label? table
|
||||
---@field Operator? table
|
||||
---@field Keyword? table
|
||||
---@field Exception? table
|
||||
---@field PreProc? table
|
||||
---@field Include? table
|
||||
---@field Define? table
|
||||
---@field Macro? table
|
||||
---@field PreCondit? table
|
||||
---@field Type? table
|
||||
---@field StorageClass? table
|
||||
---@field Structure? table
|
||||
---@field Typedef? table
|
||||
---@field Special? table
|
||||
---@field SpecialChar? table
|
||||
---@field Tag? table
|
||||
---@field Delimiter? table
|
||||
---@field SpecialComment? table
|
||||
---@field Debug? table
|
||||
---@field Underlined? table
|
||||
---@field Ignore? table
|
||||
---@field Error? table
|
||||
---@field Todo? table
|
||||
---@field DiagnosticError? table
|
||||
---@field DiagnosticWarn? table
|
||||
---@field DiagnosticInfo? table
|
||||
---@field DiagnosticHint? table
|
||||
---@field DiagnosticOk? table
|
||||
---@field DiagnosticVirtualTextError? table
|
||||
---@field DiagnosticVirtualTextWarn? table
|
||||
---@field DiagnosticVirtualTextInfo? table
|
||||
---@field DiagnosticVirtualTextHint? table
|
||||
---@field DiagnosticVirtualTextOk? table
|
||||
---@field DiagnosticUnderlineError? table
|
||||
---@field DiagnosticUnderlineWarn? table
|
||||
---@field DiagnosticUnderlineInfo? table
|
||||
---@field DiagnosticUnderlineHint? table
|
||||
---@field DiagnosticUnderlineOk? table
|
||||
---@field LspReferenceText? table
|
||||
---@field LspReferenceRead? table
|
||||
---@field LspReferenceWrite? table
|
||||
---@field LspInlayHint? table
|
||||
---@field NavicText? table
|
||||
---@field NavicSeparator? table
|
||||
---@field NavicIconsMethod? table
|
||||
---@field NavicIconsFunction? table
|
||||
---@field NavicIconsField? table
|
||||
---@field NavicIconsVariable? table
|
||||
---@field NavicIconsClass? table
|
||||
---@field NavicIconsInterface? table
|
||||
---@field NavicIconsModule? table
|
||||
---@field NavicIconsNamespace? table
|
||||
---@field NavicIconsProperty? table
|
||||
---@field NavicIconsUnit? table
|
||||
---@field NavicIconsEnum? table
|
||||
---@field NavicIconsKeyword? table
|
||||
---@field NavicIconsSnippet? table
|
||||
---@field NavicIconsColor? table
|
||||
---@field NavicIconsFile? table
|
||||
---@field NavicIconsReference? table
|
||||
---@field NavicIconsFolder? table
|
||||
---@field NavicIconsEnumMember? table
|
||||
---@field NavicIconsConstant? table
|
||||
---@field NavicIconsStruct? table
|
||||
---@field NavicIconsEvent? table
|
||||
---@field NavicIconsOperator? table
|
||||
---@field NavicIconsTypeParameter? table
|
||||
---@field CmpItemKindText? table
|
||||
---@field CmpItemKindMethod? table
|
||||
---@field CmpItemKindFunction? table
|
||||
---@field CmpItemKindField? table
|
||||
---@field CmpItemKindVariable? table
|
||||
---@field CmpItemKindClass? table
|
||||
---@field CmpItemKindInterface? table
|
||||
---@field CmpItemKindModule? table
|
||||
---@field CmpItemKindProperty? table
|
||||
---@field CmpItemKindUnit? table
|
||||
---@field CmpItemKindEnum? table
|
||||
---@field CmpItemKindKeyword? table
|
||||
---@field CmpItemKindSnippet? table
|
||||
---@field CmpItemKindColor? table
|
||||
---@field CmpItemKindFile? table
|
||||
---@field CmpItemKindReference? table
|
||||
---@field CmpItemKindFolder? table
|
||||
---@field CmpItemKindEnumMember? table
|
||||
---@field CmpItemKindConstant? table
|
||||
---@field CmpItemKindStruct? table
|
||||
---@field CmpItemKindEvent? table
|
||||
---@field CmpItemKindOperator? table
|
||||
---@field CmpItemKindTypeParameter? table
|
||||
---@field IblIndent? table
|
||||
---@field IblScope? table
|
||||
---@field NeoTreeNormal? table
|
||||
---@field NeoTreeNormalNC? table
|
||||
---@field NeoTreeDotFile? table
|
||||
---@field NeoTreeFileNameOpened? table
|
||||
---@field NeoTreeFloatBorder? table
|
||||
---@field NeoTreeFloatTitle? table
|
||||
---@field NeoTreeGitAdded? table
|
||||
---@field NeoTreeGitConflict? table
|
||||
---@field NeoTreeGitDeleted? table
|
||||
---@field NeoTreeGitIgnored? table
|
||||
---@field NeoTreeGitModified? table
|
||||
---@field NeoTreeGitUnstaged? table
|
||||
---@field NeoTreeGitUntracked? table
|
||||
---@field NeoTreeGitStaged? table
|
||||
---@field NvimTreeSymlink? table
|
||||
---@field NvimTreeSymlinkIcon? table
|
||||
---@field NvimTreeFolderName? table
|
||||
---@field NvimTreeRootFolder? table
|
||||
---@field NvimTreeFolderIcon? table
|
||||
---@field NvimTreeEmptyFolderName? table
|
||||
---@field NvimTreeExecFile? table
|
||||
---@field NvimTreeOpenedFile? table
|
||||
---@field NvimTreeModifiedFile? table
|
||||
---@field NvimTreeSpecialFile? table
|
||||
---@field NvimTreeIndentMarker? table
|
||||
---@field NvimTreeGitDirty? table
|
||||
---@field NvimTreeGitStaged? table
|
||||
---@field NvimTreeGitMerge? table
|
||||
---@field NvimTreeGitRenamed? table
|
||||
---@field NvimTreeGitNew? table
|
||||
---@field NvimTreeGitDeleted? table
|
||||
---@field NvimTreeNormal? table
|
||||
---@field NvimTreeNormalFloat? table
|
||||
---@field NvimTreeEndOfBuffer? table
|
||||
---@field NvimTreeWinSeparator? table
|
||||
---@field WhichKey? table
|
||||
---@field WhichKeyDesc? table
|
||||
---@field WhichKeySeparator? table
|
||||
---@field WhichKeyGroup? table
|
||||
---@field DashboardHeader? table
|
||||
---@field DashboardFooter? table
|
||||
---@field DashboardDesc? table
|
||||
---@field DashboardKey? table
|
||||
---@field DashboardIcon? table
|
||||
---@field DashboardShotCut? table
|
||||
---@field GitSignsAdd? table
|
||||
---@field GitSignsChange? table
|
||||
---@field GitSignsDelete? table
|
||||
---@field NeogitCursorLine? table
|
||||
---@field NeogitBranch? table
|
||||
---@field NeogitRemote? table
|
||||
---@field NeogitHunkHeader? table
|
||||
---@field NeogitHunkHeaderHighlight? table
|
||||
---@field NeogitDiffContextHighlight? table
|
||||
---@field NeogitDiffContext? table
|
||||
---@field NeogitDiffDeleteHighlight? table
|
||||
---@field NeogitDiffDelete? table
|
||||
---@field NeogitDiffAddHighlight? table
|
||||
---@field NeogitDiffAdd? table
|
||||
---@field TodoFgTODO? table
|
||||
---@field TodoFgWARN? table
|
||||
---@field TodoFgTEST? table
|
||||
---@field TodoFgPERF? table
|
||||
---@field TodoFgNOTE? table
|
||||
---@field TodoFgHACK? table
|
||||
---@field TodoFgFIX? table
|
||||
---@field TodoSignTODO? table
|
||||
---@field TodoSignWARN? table
|
||||
---@field TodoSignTEST? table
|
||||
---@field TodoSignPERF? table
|
||||
---@field TodoSignNOTE? table
|
||||
---@field TodoSignHACK? table
|
||||
---@field TodoSignFIX? table
|
||||
---@field TodoBgTODO? table
|
||||
---@field TodoBgWARN? table
|
||||
---@field TodoBgTEST? table
|
||||
---@field TodoBgPERF? table
|
||||
---@field TodoBgNOTE? table
|
||||
---@field TodoBgHACK? table
|
||||
---@field TodoBgFIX? table
|
||||
---@field LazyH1? table
|
||||
---@field LazyButton? table
|
||||
---@field LazyButtonActive? table
|
||||
---@field LazyReasonStart? table
|
||||
---@field TelescopeSelection? table
|
||||
---@field TelescopeSelectionCaret? table
|
||||
---@field TelescopeMultiIcon? table
|
||||
---@field TelescopeNormal? table
|
||||
---@field TelescopePreviewNormal? table
|
||||
---@field TelescopePromptNormal? table
|
||||
---@field TelescopeResultsNormal? table
|
||||
---@field TelescopeBorder? table
|
||||
---@field TelescopePromptBorder? table
|
||||
---@field TelescopeResultsBorder? table
|
||||
---@field TelescopePreviewBorder? table
|
||||
---@field TelescopeTitle? table
|
||||
---@field TelescopePromptTitle? table
|
||||
---@field TelescopeResultsTitle? table
|
||||
---@field TelescopePreviewTitle? table
|
||||
---@field TelescopeMatching? table
|
||||
---@field TelescopePreviewMatch? table
|
||||
---@field TelescopePromptCounter? table
|
||||
---@field TelescopePromptPrefix? table
|
||||
---@field NoiceFormatProgressTodo? table
|
||||
---@field NoiceFormatProgressDone? table
|
||||
---@field NoiceLspProgressSpinner? table
|
||||
---@field NoiceLspProgressClient? table
|
||||
---@field NoiceLspProgressTitle? table
|
||||
---@field HopNextKey? table
|
||||
---@field HopNextKey1? table
|
||||
---@field HopUnmatched? table
|
||||
---@field MiniStatuslineModeNormal? table
|
||||
---@field MiniStatuslineModeInsert? table
|
||||
---@field MiniStatuslineModeVisual? table
|
||||
---@field MiniStatuslineModeReplace? table
|
||||
---@field MiniStatuslineModeCommand? table
|
||||
---@field MinistatusLineFileName? table
|
||||
---@field MiniStatuslineDevinfo? table
|
||||
---@field MiniStatuslineFileinfo? table
|
||||
---@field MiniStatuslineInactive? table
|
||||
---@field MiniTablineCurrent? table
|
||||
---@field MiniTablineVisible? table
|
||||
---@field MiniTablineHidden? table
|
||||
---@field MiniTablineModifiedCurrent? table
|
||||
---@field MiniTablineModifiedVisible? table
|
||||
---@field MiniTablineModifiedHidden? table
|
||||
---@field MiniTablineFill? table
|
||||
---@field MiniTablineTabpagesection? table
|
||||
---@field MiniStarterCurrent? table
|
||||
---@field MiniStarterHeader? table
|
||||
---@field MiniStarterFooter? table
|
||||
---@field MiniStarterItem? table
|
||||
---@field MiniStarterItemBullet? table
|
||||
---@field MiniStarterItemPrefix? table
|
||||
---@field MiniStarterSection? table
|
||||
---@field MiniStarterQuery? table
|
||||
---@field MiniCursorword? table
|
||||
|
||||
local M = {}
|
||||
|
||||
local function nvim_get_hl(opts)
|
||||
local hl = vim.api.nvim_get_hl(0, opts)
|
||||
|
||||
if hl.link then
|
||||
return nvim_get_hl { name = hl.link }
|
||||
end
|
||||
|
||||
return hl
|
||||
end
|
||||
|
||||
local nvim_set_hl = function(group_name, group_val, config)
|
||||
local val = { fg = 'NONE', bg = 'NONE' }
|
||||
|
||||
if not group_val.link then
|
||||
if config and config.transparent then
|
||||
group_val.bg = 'NONE'
|
||||
end
|
||||
val = vim.tbl_extend('force', val, group_val)
|
||||
vim.api.nvim_set_hl(0, group_name, val)
|
||||
else
|
||||
vim.api.nvim_set_hl(0, group_name, group_val)
|
||||
end
|
||||
end
|
||||
|
||||
M.set_highlight = function(colors, config)
|
||||
if config.on_colors then
|
||||
local color = require 'dracula.color'
|
||||
colors = vim.tbl_extend('force', colors, config.on_colors(colors, color))
|
||||
end
|
||||
-- EDITOR :h highlight-groups
|
||||
nvim_set_hl('ColorColumn', { bg = colors.base04 })
|
||||
nvim_set_hl('Conceal', { fg = colors.base02 })
|
||||
nvim_set_hl('CurSearch', { fg = colors.cyan, bg = colors.shade_cyan })
|
||||
nvim_set_hl('Cursor', { fg = colors.base03, bg = colors.cyan })
|
||||
nvim_set_hl('lCursor', { link = 'Cursor' })
|
||||
nvim_set_hl('CursorIM', { link = 'Cursor' })
|
||||
nvim_set_hl('CursorColumn', { link = 'ColorColumn' })
|
||||
nvim_set_hl('CursorLine', { bg = colors.base02 })
|
||||
nvim_set_hl('Directory', { fg = colors.purple })
|
||||
nvim_set_hl('DiffAdd', { fg = colors.git_added })
|
||||
nvim_set_hl('DiffChange', { fg = colors.git_modified })
|
||||
nvim_set_hl('DiffDelete', { fg = colors.git_removed, reverse = true })
|
||||
nvim_set_hl('DiffText', { fg = colors.cyan, reverse = true })
|
||||
nvim_set_hl('EndOfBuffer', { fg = colors.base03 })
|
||||
nvim_set_hl('TermCursor', { link = 'Cursor' })
|
||||
nvim_set_hl('TermCursorNC', { fg = colors.base0, reverse = true })
|
||||
nvim_set_hl('ErrorMsg', { fg = colors.diag_error })
|
||||
nvim_set_hl('WinSeparator', { fg = colors.base01, bg = colors.base04 })
|
||||
nvim_set_hl('Folded', { fg = colors.base0, bg = colors.base02 })
|
||||
nvim_set_hl('FoldColumn', { fg = colors.base0, bg = colors.base04 })
|
||||
nvim_set_hl('SignColumn', { link = 'Normal' })
|
||||
nvim_set_hl('IncSearch', { fg = colors.cyan, bg = colors.shade_cyan, bold = true }, config)
|
||||
nvim_set_hl('Substitute', { link = 'IncSearch' })
|
||||
nvim_set_hl('LineNr', { fg = colors.base01, bg = colors.base03 }, config)
|
||||
nvim_set_hl('LineNrAbove', { link = 'LineNr' })
|
||||
nvim_set_hl('LineNrBelow', { link = 'LineNr' })
|
||||
nvim_set_hl('CursorLineNr', { fg = colors.purple, bg = colors.base03 }, config)
|
||||
nvim_set_hl('CursorLineFold', { link = 'FoldColumn' })
|
||||
nvim_set_hl('CursorLineSign', { link = 'SignColumn' })
|
||||
nvim_set_hl('MatchParen', { fg = colors.cyan })
|
||||
nvim_set_hl('ModeMsg', { fg = colors.purple })
|
||||
nvim_set_hl('MsgArea', { link = 'Normal' })
|
||||
nvim_set_hl('MsgSeparator', { link = 'Normal' })
|
||||
nvim_set_hl('MoreMsg', { link = 'ModeMsg' })
|
||||
nvim_set_hl('NonText', { fg = colors.base01 })
|
||||
nvim_set_hl('Normal', { fg = colors.base0, bg = colors.base03 }, config)
|
||||
nvim_set_hl('NormalFloat', { fg = colors.base0, bg = colors.base04 })
|
||||
nvim_set_hl('FloatBorder', { link = 'WinSeparator' })
|
||||
nvim_set_hl('FloatTitle', { fg = colors.purple, bold = true })
|
||||
nvim_set_hl('NormalNC', { link = 'Normal' })
|
||||
nvim_set_hl('Pmenu', { fg = colors.base0, bg = colors.base04 })
|
||||
nvim_set_hl('PmenuSel', { fg = colors.cyan, reverse = true })
|
||||
nvim_set_hl('PmenuKind', { link = 'Pmenu' })
|
||||
nvim_set_hl('PmenuKindSel', { link = 'PmenuSel' })
|
||||
nvim_set_hl('PmenuExtra', { link = 'Pmenu' })
|
||||
nvim_set_hl('PmenuExtraSel', { link = 'PmenuSel' })
|
||||
nvim_set_hl('PmenuSbar', { bg = colors.base04 })
|
||||
nvim_set_hl('PmenuThumb', { bg = colors.cyan })
|
||||
nvim_set_hl('Question', { fg = colors.diag_info })
|
||||
nvim_set_hl('QuickFixLine', { fg = colors.base0, bg = colors.base03 })
|
||||
nvim_set_hl('Search', { bg = colors.base02 })
|
||||
nvim_set_hl('SpecialKey', { link = 'NonText' })
|
||||
nvim_set_hl('SpellBad', { underline = true, strikethrough = true })
|
||||
nvim_set_hl('SpellCap', { fg = colors.diag_hint })
|
||||
nvim_set_hl('SpellLocal', { link = 'SpellCap' })
|
||||
nvim_set_hl('SpellRare', { fg = colors.diag_warning })
|
||||
nvim_set_hl('StatusLine', { fg = colors.base0, bg = colors.base04 })
|
||||
nvim_set_hl('StatusLineNC', { fg = colors.base01, bg = colors.base04 })
|
||||
nvim_set_hl('TabLine', { fg = colors.base01, bg = colors.base04 })
|
||||
nvim_set_hl('TabLineFill', { fg = colors.base0, bg = colors.base04 })
|
||||
nvim_set_hl('TabLineSel', { fg = colors.base0, bg = colors.base03 })
|
||||
nvim_set_hl('Title', { fg = colors.purple, bold = true })
|
||||
nvim_set_hl('Visual', { bg = colors.base02 })
|
||||
nvim_set_hl('VisualNOS', { link = 'Visual' })
|
||||
nvim_set_hl('warningMsg', { fg = colors.diag_warning })
|
||||
nvim_set_hl('Whitespace', { fg = colors.base01 })
|
||||
nvim_set_hl('WildMenu', { fg = colors.base02 })
|
||||
nvim_set_hl('WinBar', { link = 'Pmenu' })
|
||||
nvim_set_hl('WinBarNC', { link = 'WinBar' }) -- SYNTAX :h group-name
|
||||
nvim_set_hl('Comment', { fg = colors.base01 })
|
||||
nvim_set_hl('Constant', { fg = colors.purple })
|
||||
nvim_set_hl('String', { fg = colors.yellow })
|
||||
nvim_set_hl('Character', { fg = colors.yellow })
|
||||
nvim_set_hl('Number', { fg = colors.purple })
|
||||
nvim_set_hl('Boolean', { fg = colors.purple })
|
||||
nvim_set_hl('Float', { fg = colors.purple })
|
||||
nvim_set_hl('Identifier', { fg = colors.base0 })
|
||||
nvim_set_hl('Function', { fg = colors.green })
|
||||
nvim_set_hl('Statement', { fg = colors.pink })
|
||||
nvim_set_hl('Conditional', { fg = colors.pink })
|
||||
nvim_set_hl('Repeat', { fg = colors.pink })
|
||||
nvim_set_hl('Label', { fg = colors.pink })
|
||||
nvim_set_hl('Operator', { fg = colors.pink })
|
||||
nvim_set_hl('Keyword', { fg = colors.pink })
|
||||
nvim_set_hl('Exception', { fg = colors.pink })
|
||||
nvim_set_hl('PreProc', { fg = colors.pink })
|
||||
nvim_set_hl('Include', { fg = colors.pink })
|
||||
nvim_set_hl('Define', { fg = colors.pink })
|
||||
nvim_set_hl('Macro', { fg = colors.pink })
|
||||
nvim_set_hl('PreCondit', { fg = colors.pink })
|
||||
nvim_set_hl('Type', { fg = colors.cyan })
|
||||
nvim_set_hl('StorageClass', { fg = colors.pink })
|
||||
nvim_set_hl('Structure', { fg = colors.cyan })
|
||||
nvim_set_hl('Typedef', { fg = colors.pink })
|
||||
nvim_set_hl('Special', { fg = colors.red })
|
||||
nvim_set_hl('SpecialChar', { fg = colors.purple })
|
||||
nvim_set_hl('Tag', { fg = colors.pink })
|
||||
nvim_set_hl('Delimiter', { fg = colors.base0 })
|
||||
nvim_set_hl('SpecialComment', { fg = colors.pink })
|
||||
nvim_set_hl('Debug', { fg = colors.pink })
|
||||
nvim_set_hl('Underlined', { fg = colors.cyan, underline = true })
|
||||
nvim_set_hl('Ignore', {})
|
||||
nvim_set_hl('Error', { fg = colors.diag_error, bold = true })
|
||||
nvim_set_hl('Todo', { fg = colors.purple, bold = true }) -- PLUGINS
|
||||
if config.plugins['nvim-treesitter'] then
|
||||
nvim_set_hl('@variable', { fg = colors.base0 })
|
||||
nvim_set_hl('@variable.builtin', { fg = colors.purple })
|
||||
nvim_set_hl('@variable.parameter', { fg = colors.orange, italic = true })
|
||||
nvim_set_hl('@variable.member', { fg = colors.base0 })
|
||||
nvim_set_hl('@constant', { fg = colors.purple })
|
||||
nvim_set_hl('@constant.builtin', { fg = colors.purple })
|
||||
nvim_set_hl('@constant.macro', { fg = colors.purple })
|
||||
nvim_set_hl('@module', { fg = colors.base0 })
|
||||
nvim_set_hl('@module.builtin', { fg = colors.purple })
|
||||
nvim_set_hl('@label', { fg = colors.pink })
|
||||
nvim_set_hl('@string', { fg = colors.yellow })
|
||||
nvim_set_hl('@string.documentation', { fg = colors.pink })
|
||||
nvim_set_hl('@string.regexp', { fg = colors.red })
|
||||
nvim_set_hl('@string.escape', { fg = colors.pink })
|
||||
nvim_set_hl('@string.special', { fg = colors.yellow })
|
||||
nvim_set_hl('@string.special.symbol', { fg = colors.base0 })
|
||||
nvim_set_hl('@string.special.url', { link = 'Underlined' })
|
||||
nvim_set_hl('@character', { fg = colors.yellow })
|
||||
nvim_set_hl('@character.special', { fg = colors.yellow })
|
||||
nvim_set_hl('@character.printf', { fg = colors.red })
|
||||
nvim_set_hl('@type', { fg = colors.cyan })
|
||||
nvim_set_hl('@type.builtin', { fg = colors.pink })
|
||||
nvim_set_hl('@type.definition', { fg = colors.cyan })
|
||||
nvim_set_hl('@type.qualifier', { fg = colors.pink })
|
||||
nvim_set_hl('@function', { fg = colors.green })
|
||||
nvim_set_hl('@function.builtin', { fg = colors.cyan })
|
||||
nvim_set_hl('@function.call', { fg = colors.green })
|
||||
nvim_set_hl('@function.macro', { fg = colors.green })
|
||||
nvim_set_hl('@function.method', { fg = colors.green })
|
||||
nvim_set_hl('@function.method.call', { fg = colors.green })
|
||||
nvim_set_hl('@constructor', { fg = colors.cyan })
|
||||
nvim_set_hl('@constructor.lua', { fg = colors.base0 })
|
||||
nvim_set_hl('@operator', { fg = colors.pink })
|
||||
nvim_set_hl('@keyword', { fg = colors.pink })
|
||||
nvim_set_hl('@keyword.coroutine', { fg = colors.pink })
|
||||
nvim_set_hl('@keyword.function', { fg = colors.pink })
|
||||
nvim_set_hl('@keyword.operator', { fg = colors.pink })
|
||||
nvim_set_hl('@keyword.import', { fg = colors.pink })
|
||||
nvim_set_hl('@keyword.repeat', { fg = colors.pink })
|
||||
nvim_set_hl('@keyword.return', { fg = colors.pink })
|
||||
nvim_set_hl('@keyword.debug', { fg = colors.pink })
|
||||
nvim_set_hl('@keyword.exception', { fg = colors.pink })
|
||||
nvim_set_hl('@keyword.conditional', { fg = colors.pink })
|
||||
nvim_set_hl('@keyword.conditional.ternary', { fg = colors.pink })
|
||||
nvim_set_hl('@keyword.directive', { fg = colors.pink })
|
||||
nvim_set_hl('@keyword.directive.define', { fg = colors.pink })
|
||||
nvim_set_hl('@punctuation.delimiter', { fg = colors.base0 })
|
||||
nvim_set_hl('@punctuation.bracket', { fg = colors.base0 })
|
||||
nvim_set_hl('@punctuation.special', { fg = colors.pink })
|
||||
nvim_set_hl('@comment', { fg = colors.base01 })
|
||||
nvim_set_hl('@comment.documentation', { fg = colors.base01 })
|
||||
nvim_set_hl('@comment.error', { fg = colors.diag_error, bg = colors.shade_error })
|
||||
nvim_set_hl('@comment.warning', { fg = colors.diag_warning, bg = colors.shade_warning })
|
||||
nvim_set_hl('@comment.todo', { fg = colors.purple, bg = colors.shade_purple })
|
||||
nvim_set_hl('@comment.note', { fg = colors.diag_hint, bg = colors.shade_hint })
|
||||
nvim_set_hl('@markup.strong', { fg = colors.orange, bold = true })
|
||||
nvim_set_hl('@markup.italic', { fg = colors.yellow, italic = true })
|
||||
nvim_set_hl('@markup.strikethrough', { fg = colors.base01 })
|
||||
nvim_set_hl('@markup.underline', { fg = colors.cyan, underline = true })
|
||||
nvim_set_hl('@markup.heading', { fg = colors.purple, bold = true })
|
||||
nvim_set_hl('@markup.quote', { fg = colors.base01 })
|
||||
nvim_set_hl('@markup.math', { fg = colors.purple })
|
||||
nvim_set_hl('@markup.environment', { fg = colors.base01 })
|
||||
nvim_set_hl('@markup.link', { fg = colors.orange, bold = true })
|
||||
nvim_set_hl('@markup.link.label', { fg = colors.cyan, underline = true })
|
||||
nvim_set_hl('@markup.link.url', { fg = colors.cyan, underline = true })
|
||||
nvim_set_hl('@markup.raw', { fg = colors.base01 })
|
||||
nvim_set_hl('@markup.raw.block', { fg = colors.base0 })
|
||||
nvim_set_hl('@markup.list', { fg = colors.purple })
|
||||
nvim_set_hl('@markup.list.checked', { fg = colors.git_added })
|
||||
nvim_set_hl('@markup.list.unchecked', { fg = colors.git_modified })
|
||||
nvim_set_hl('@diff.plus', { fg = colors.git_added })
|
||||
nvim_set_hl('@diff.minus', { fg = colors.git_removed })
|
||||
nvim_set_hl('@diff.delta', { fg = colors.git_modified })
|
||||
nvim_set_hl('@tag', { fg = colors.pink })
|
||||
nvim_set_hl('@tag.attribute', { fg = colors.green })
|
||||
nvim_set_hl('@tag.delimiter', { fg = colors.base0 })
|
||||
nvim_set_hl('@property.yaml', { fg = colors.cyan })
|
||||
nvim_set_hl('@property.json', { fg = colors.cyan })
|
||||
nvim_set_hl('@property.css', { fg = colors.cyan })
|
||||
nvim_set_hl('@property.scss', { fg = colors.cyan })
|
||||
end
|
||||
|
||||
if config.plugins['nvim-lspconfig'] then
|
||||
nvim_set_hl('@lsp.type.class', { fg = colors.cyan })
|
||||
nvim_set_hl('@lsp.type.decorator', { fg = colors.green })
|
||||
nvim_set_hl('@lsp.type.enum', { fg = colors.cyan })
|
||||
nvim_set_hl('@lsp.type.enumMember', { fg = colors.purple })
|
||||
nvim_set_hl('@lsp.type.interface', { fg = colors.cyan })
|
||||
nvim_set_hl('@lsp.type.macro', { fg = colors.pink })
|
||||
nvim_set_hl('@lsp.type.namespace', { fg = colors.base0 })
|
||||
nvim_set_hl('@lsp.type.parameter', { fg = colors.orange, italic = true })
|
||||
nvim_set_hl('@lsp.type.property', { fg = colors.base0 })
|
||||
nvim_set_hl('@lsp.type.struct', { fg = colors.cyan })
|
||||
nvim_set_hl('@lsp.type.type', { fg = colors.cyan })
|
||||
nvim_set_hl('@lsp.type.typeParameter', { fg = colors.cyan, italic = true })
|
||||
nvim_set_hl('@lsp.type.variable', { fg = colors.base0 })
|
||||
nvim_set_hl('@lsp.typemod.variable.defaultLibrary', { fg = colors.purple })
|
||||
nvim_set_hl('@lsp.typemod.variable.readonly', { fg = colors.purple })
|
||||
nvim_set_hl('@lsp.typemod.variable.global', { fg = colors.purple })
|
||||
nvim_set_hl('@lsp.typemod.keyword.documentation', { fg = colors.pink })
|
||||
nvim_set_hl('@lsp.typemod.class.documentation', { fg = colors.cyan })
|
||||
nvim_set_hl('@lsp.typemod.property.readonly', { fg = colors.purple })
|
||||
nvim_set_hl('DiagnosticError', { fg = colors.diag_error })
|
||||
nvim_set_hl('DiagnosticWarn', { fg = colors.diag_warning })
|
||||
nvim_set_hl('DiagnosticInfo', { fg = colors.diag_info })
|
||||
nvim_set_hl('DiagnosticHint', { fg = colors.diag_hint })
|
||||
nvim_set_hl('DiagnosticOk', { fg = colors.diag_ok })
|
||||
nvim_set_hl('DiagnosticVirtualTextError', { fg = colors.diag_error, bg = colors.shade_error })
|
||||
nvim_set_hl('DiagnosticVirtualTextWarn', { fg = colors.diag_warning, bg = colors.shade_warning })
|
||||
nvim_set_hl('DiagnosticVirtualTextInfo', { fg = colors.diag_info, bg = colors.shade_info })
|
||||
nvim_set_hl('DiagnosticVirtualTextHint', { fg = colors.diag_hint, bg = colors.shade_hint })
|
||||
nvim_set_hl('DiagnosticVirtualTextOk', { fg = colors.diag_ok, bg = colors.shade_ok })
|
||||
nvim_set_hl('DiagnosticUnderlineError', { fg = colors.diag_error, underline = true })
|
||||
nvim_set_hl('DiagnosticUnderlineWarn', { fg = colors.diag_warning, underline = true })
|
||||
nvim_set_hl('DiagnosticUnderlineInfo', { fg = colors.diag_info, underline = true })
|
||||
nvim_set_hl('DiagnosticUnderlineHint', { fg = colors.diag_hint, underline = true })
|
||||
nvim_set_hl('DiagnosticUnderlineOk', { fg = colors.diag_ok, underline = true })
|
||||
nvim_set_hl('LspReferenceText', { link = 'Visual' })
|
||||
nvim_set_hl('LspReferenceRead', { link = 'Visual' })
|
||||
nvim_set_hl('LspReferenceWrite', { link = 'Visual' })
|
||||
nvim_set_hl('LspInlayHint', { fg = colors.inlay_hint })
|
||||
end
|
||||
|
||||
if config.plugins['nvim-navic'] then
|
||||
nvim_set_hl('NavicText', { fg = colors.base0 })
|
||||
nvim_set_hl('NavicSeparator', { link = 'Statement' })
|
||||
nvim_set_hl('NavicIconsMethod', { link = 'Function' })
|
||||
nvim_set_hl('NavicIconsFunction', { link = 'Function' })
|
||||
nvim_set_hl('NavicIconsField', { link = 'Identifier' })
|
||||
nvim_set_hl('NavicIconsVariable', { link = 'Identifier' })
|
||||
nvim_set_hl('NavicIconsClass', { link = 'Type' })
|
||||
nvim_set_hl('NavicIconsInterface', { link = 'Type' })
|
||||
nvim_set_hl('NavicIconsModule', { link = 'Type' })
|
||||
nvim_set_hl('NavicIconsNamespace', { link = 'Type' })
|
||||
nvim_set_hl('NavicIconsProperty', { link = 'Identifier' })
|
||||
nvim_set_hl('NavicIconsUnit', { link = 'Number' })
|
||||
nvim_set_hl('NavicIconsEnum', { link = 'Type' })
|
||||
nvim_set_hl('NavicIconsKeyword', { link = 'Statement' })
|
||||
nvim_set_hl('NavicIconsSnippet', { link = 'Tag' })
|
||||
nvim_set_hl('NavicIconsColor', { fg = colors.orange })
|
||||
nvim_set_hl('NavicIconsFile', { link = 'Identifier' })
|
||||
nvim_set_hl('NavicIconsReference', { link = 'Underlined' })
|
||||
nvim_set_hl('NavicIconsFolder', { link = 'Directory' })
|
||||
nvim_set_hl('NavicIconsEnumMember', { link = 'Constant' })
|
||||
nvim_set_hl('NavicIconsConstant', { link = 'Constant' })
|
||||
nvim_set_hl('NavicIconsStruct', { link = 'Identifier' })
|
||||
nvim_set_hl('NavicIconsEvent', { link = 'Function' })
|
||||
nvim_set_hl('NavicIconsOperator', { link = 'Operator' })
|
||||
nvim_set_hl('NavicIconsTypeParameter', { link = 'Type' })
|
||||
end
|
||||
|
||||
if config.plugins['nvim-cmp'] then
|
||||
nvim_set_hl('CmpItemKindText', { link = 'String' })
|
||||
nvim_set_hl('CmpItemKindMethod', { link = 'Function' })
|
||||
nvim_set_hl('CmpItemKindFunction', { link = 'Function' })
|
||||
nvim_set_hl('CmpItemKindField', { link = 'Identifier' })
|
||||
nvim_set_hl('CmpItemKindVariable', { link = 'Identifier' })
|
||||
nvim_set_hl('CmpItemKindClass', { link = 'Type' })
|
||||
nvim_set_hl('CmpItemKindInterface', { link = 'Type' })
|
||||
nvim_set_hl('CmpItemKindModule', { link = 'Type' })
|
||||
nvim_set_hl('CmpItemKindProperty', { link = 'Identifier' })
|
||||
nvim_set_hl('CmpItemKindUnit', { link = 'Number' })
|
||||
nvim_set_hl('CmpItemKindEnum', { link = 'Type' })
|
||||
nvim_set_hl('CmpItemKindKeyword', { link = 'Statement' })
|
||||
nvim_set_hl('CmpItemKindSnippet', { link = 'Tag' })
|
||||
nvim_set_hl('CmpItemKindColor', { fg = colors.orange })
|
||||
nvim_set_hl('CmpItemKindFile', { link = 'Identifier' })
|
||||
nvim_set_hl('CmpItemKindReference', { link = 'Underlined' })
|
||||
nvim_set_hl('CmpItemKindFolder', { link = 'Directory' })
|
||||
nvim_set_hl('CmpItemKindEnumMember', { link = 'Constant' })
|
||||
nvim_set_hl('CmpItemKindConstant', { link = 'Constant' })
|
||||
nvim_set_hl('CmpItemKindStruct', { link = 'Identifier' })
|
||||
nvim_set_hl('CmpItemKindEvent', { link = 'Function' })
|
||||
nvim_set_hl('CmpItemKindOperator', { link = 'Operator' })
|
||||
nvim_set_hl('CmpItemKindTypeParameter', { link = 'Type' })
|
||||
end
|
||||
|
||||
if config.plugins['indent-blankline.nvim'] then
|
||||
nvim_set_hl('IblIndent', { fg = colors.shade_purple, nocombine = true })
|
||||
nvim_set_hl('IblScope', { fg = colors.purple, nocombine = true })
|
||||
end
|
||||
|
||||
if config.plugins['neo-tree.nvim'] then
|
||||
nvim_set_hl('NeoTreeNormal', { fg = colors.base0, bg = colors.base04 })
|
||||
nvim_set_hl('NeoTreeNormalNC', { link = 'NeoTreeNormal' })
|
||||
nvim_set_hl('NeoTreeDotFile', { fg = colors.base01 })
|
||||
nvim_set_hl('NeoTreeFileNameOpened', { link = 'Directory' })
|
||||
nvim_set_hl('NeoTreeFloatBorder', { link = 'WinSeparator' })
|
||||
nvim_set_hl('NeoTreeFloatTitle', { link = 'Title' })
|
||||
nvim_set_hl('NeoTreeGitAdded', { fg = colors.git_added })
|
||||
nvim_set_hl('NeoTreeGitConflict', { fg = colors.git_modified })
|
||||
nvim_set_hl('NeoTreeGitDeleted', { fg = colors.git_removed })
|
||||
nvim_set_hl('NeoTreeGitIgnored', { fg = colors.base01 })
|
||||
nvim_set_hl('NeoTreeGitModified', { fg = colors.git_modified })
|
||||
nvim_set_hl('NeoTreeGitUnstaged', { fg = colors.git_modified })
|
||||
nvim_set_hl('NeoTreeGitUntracked', { fg = colors.git_modified })
|
||||
nvim_set_hl('NeoTreeGitStaged', { fg = colors.git_added })
|
||||
end
|
||||
|
||||
if config.plugins['nvim-tree.lua'] then
|
||||
nvim_set_hl('NvimTreeSymlink', { link = 'Underlined' })
|
||||
nvim_set_hl('NvimTreeSymlinkIcon', { link = 'Directory' })
|
||||
nvim_set_hl('NvimTreeFolderName', { fg = colors.base0 })
|
||||
nvim_set_hl('NvimTreeRootFolder', { fg = colors.purple, bold = true })
|
||||
nvim_set_hl('NvimTreeFolderIcon', { link = 'Directory' })
|
||||
nvim_set_hl('NvimTreeEmptyFolderName', { fg = colors.base0 })
|
||||
nvim_set_hl('NvimTreeExecFile', { fg = colors.green })
|
||||
nvim_set_hl('NvimTreeOpenedFile', { fg = colors.purple, bold = true })
|
||||
nvim_set_hl('NvimTreeModifiedFile', { fg = colors.git_modified })
|
||||
nvim_set_hl('NvimTreeSpecialFile', { link = 'Special' })
|
||||
nvim_set_hl('NvimTreeIndentMarker', { fg = colors.shade_purple })
|
||||
nvim_set_hl('NvimTreeGitDirty', { fg = colors.git_modified })
|
||||
nvim_set_hl('NvimTreeGitStaged', { fg = colors.git_added })
|
||||
nvim_set_hl('NvimTreeGitMerge', { fg = colors.git_modified })
|
||||
nvim_set_hl('NvimTreeGitRenamed', { fg = colors.git_modified })
|
||||
nvim_set_hl('NvimTreeGitNew', { fg = colors.git_added })
|
||||
nvim_set_hl('NvimTreeGitDeleted', { fg = colors.git_removed })
|
||||
nvim_set_hl('NvimTreeNormal', { fg = colors.base0, bg = colors.base04 })
|
||||
nvim_set_hl('NvimTreeNormalFloat', { link = 'NvimTreeNormal' })
|
||||
nvim_set_hl('NvimTreeEndOfBuffer', { fg = colors.base04 })
|
||||
nvim_set_hl('NvimTreeWinSeparator', { fg = colors.base04, bg = colors.base04 })
|
||||
end
|
||||
|
||||
if config.plugins['which-key.nvim'] then
|
||||
nvim_set_hl('WhichKey', { fg = colors.green })
|
||||
nvim_set_hl('WhichKeyDesc', { fg = colors.orange, italic = true })
|
||||
nvim_set_hl('WhichKeySeparator', { fg = colors.pink })
|
||||
nvim_set_hl('WhichKeyGroup', { fg = colors.purple })
|
||||
end
|
||||
|
||||
if config.plugins['dashboard-nvim'] then
|
||||
nvim_set_hl('DashboardHeader', { fg = colors.red })
|
||||
nvim_set_hl('DashboardFooter', { fg = colors.base01 })
|
||||
nvim_set_hl('DashboardDesc', { link = 'Directory' })
|
||||
nvim_set_hl('DashboardKey', { fg = colors.pink })
|
||||
nvim_set_hl('DashboardIcon', { link = 'Directory' })
|
||||
nvim_set_hl('DashboardShotCut', { fg = colors.base0 })
|
||||
end
|
||||
|
||||
if config.plugins['gitsigns.nvim'] then
|
||||
nvim_set_hl('GitSignsAdd', { fg = colors.git_added })
|
||||
nvim_set_hl('GitSignsChange', { fg = colors.git_modified })
|
||||
nvim_set_hl('GitSignsDelete', { fg = colors.git_removed })
|
||||
end
|
||||
|
||||
if config.plugins['neogit'] then
|
||||
nvim_set_hl('NeogitCursorLine', { link = 'CursorLine' })
|
||||
nvim_set_hl('NeogitBranch', { fg = colors.purple })
|
||||
nvim_set_hl('NeogitRemote', { fg = colors.cyan })
|
||||
nvim_set_hl('NeogitHunkHeader', { fg = colors.purple, bg = colors.shade_purple })
|
||||
nvim_set_hl('NeogitHunkHeaderHighlight', { link = 'Title' })
|
||||
nvim_set_hl('NeogitDiffContextHighlight', { fg = colors.base0, bg = colors.base03 })
|
||||
nvim_set_hl('NeogitDiffContext', { fg = colors.base0, bg = colors.base04 })
|
||||
nvim_set_hl('NeogitDiffDeleteHighlight', { fg = colors.git_removed, bg = colors.shade_red })
|
||||
nvim_set_hl('NeogitDiffDelete', { fg = colors.git_removed })
|
||||
nvim_set_hl('NeogitDiffAddHighlight', { fg = colors.git_added, bg = colors.shade_green })
|
||||
nvim_set_hl('NeogitDiffAdd', { fg = colors.git_added })
|
||||
end
|
||||
|
||||
if config.plugins['todo-comments.nvim'] then
|
||||
nvim_set_hl('TodoFgTODO', { fg = colors.purple })
|
||||
nvim_set_hl('TodoFgWARN', { fg = colors.diag_warning })
|
||||
nvim_set_hl('TodoFgTEST', { fg = colors.diag_ok })
|
||||
nvim_set_hl('TodoFgPERF', { fg = colors.yellow })
|
||||
nvim_set_hl('TodoFgNOTE', { fg = colors.cyan })
|
||||
nvim_set_hl('TodoFgHACK', { fg = colors.pink })
|
||||
nvim_set_hl('TodoFgFIX', { fg = colors.diag_error })
|
||||
nvim_set_hl('TodoSignTODO', { fg = colors.purple })
|
||||
nvim_set_hl('TodoSignWARN', { fg = colors.diag_warning })
|
||||
nvim_set_hl('TodoSignTEST', { fg = colors.diag_ok })
|
||||
nvim_set_hl('TodoSignPERF', { fg = colors.yellow })
|
||||
nvim_set_hl('TodoSignNOTE', { fg = colors.cyan })
|
||||
nvim_set_hl('TodoSignHACK', { fg = colors.pink })
|
||||
nvim_set_hl('TodoSignFIX', { fg = colors.diag_error })
|
||||
nvim_set_hl('TodoBgTODO', { fg = colors.purple, reverse = true })
|
||||
nvim_set_hl('TodoBgWARN', { fg = colors.diag_warning, reverse = true })
|
||||
nvim_set_hl('TodoBgTEST', { fg = colors.diag_ok, reverse = true })
|
||||
nvim_set_hl('TodoBgPERF', { fg = colors.yellow, reverse = true })
|
||||
nvim_set_hl('TodoBgNOTE', { fg = colors.cyan, reverse = true })
|
||||
nvim_set_hl('TodoBgHACK', { fg = colors.pink, reverse = true })
|
||||
nvim_set_hl('TodoBgFIX', { fg = colors.diag_error, reverse = true })
|
||||
end
|
||||
|
||||
if config.plugins['lazy.nvim'] then
|
||||
nvim_set_hl('LazyH1', { fg = colors.purple, bg = colors.base04 })
|
||||
nvim_set_hl('LazyButton', { fg = colors.base0, bg = colors.base02 })
|
||||
nvim_set_hl('LazyButtonActive', { bg = colors.base02, reverse = true })
|
||||
nvim_set_hl('LazyReasonStart', { fg = colors.cyan })
|
||||
end
|
||||
|
||||
if config.plugins['telescope.nvim'] then
|
||||
nvim_set_hl('TelescopeSelection', { link = 'CursorLine' })
|
||||
nvim_set_hl('TelescopeSelectionCaret', { fg = colors.purple })
|
||||
nvim_set_hl('TelescopeMultiIcon', { fg = colors.purple })
|
||||
nvim_set_hl('TelescopeNormal', { fg = colors.base0, bg = colors.base04 }, config)
|
||||
nvim_set_hl('TelescopePreviewNormal', { link = 'TelescopeNormal' })
|
||||
nvim_set_hl('TelescopePromptNormal', { link = 'TelescopeNormal' })
|
||||
nvim_set_hl('TelescopeResultsNormal', { link = 'TelescopeNormal' })
|
||||
nvim_set_hl('TelescopeBorder', { fg = colors.purple, bg = colors.base04 }, config)
|
||||
nvim_set_hl('TelescopePromptBorder', { link = 'TelescopeBorder' })
|
||||
nvim_set_hl('TelescopeResultsBorder', { link = 'TelescopeBorder' })
|
||||
nvim_set_hl('TelescopePreviewBorder', { link = 'TelescopeBorder' })
|
||||
nvim_set_hl('TelescopeTitle', { fg = colors.purple, bg = colors.shade_purple })
|
||||
nvim_set_hl('TelescopePromptTitle', { link = 'TelescopeTitle' })
|
||||
nvim_set_hl('TelescopeResultsTitle', { link = 'TelescopeTitle' })
|
||||
nvim_set_hl('TelescopePreviewTitle', { link = 'TelescopeTitle' })
|
||||
nvim_set_hl('TelescopeMatching', { fg = colors.purple, bg = colors.shade_purple })
|
||||
nvim_set_hl('TelescopePreviewMatch', { link = 'TelescopeMatching' })
|
||||
nvim_set_hl('TelescopePromptCounter', { link = 'NonText' })
|
||||
nvim_set_hl('TelescopePromptPrefix', { fg = colors.purple })
|
||||
end
|
||||
|
||||
if config.plugins['noice.nvim'] then
|
||||
nvim_set_hl('NoiceFormatProgressTodo', { fg = colors.diag_ok, bg = colors.shade_ok })
|
||||
nvim_set_hl('NoiceFormatProgressDone', { fg = colors.diag_ok, reverse = true })
|
||||
nvim_set_hl('NoiceLspProgressSpinner', { fg = colors.diag_ok })
|
||||
nvim_set_hl('NoiceLspProgressClient', { fg = colors.diag_ok })
|
||||
nvim_set_hl('NoiceLspProgressTitle', { link = 'Title' })
|
||||
end
|
||||
|
||||
if config.plugins['hop.nvim'] then
|
||||
nvim_set_hl('HopNextKey', { fg = colors.red })
|
||||
nvim_set_hl('HopNextKey1', { fg = colors.cyan })
|
||||
nvim_set_hl('HopUnmatched', { fg = colors.base01 })
|
||||
end
|
||||
|
||||
if config.plugins['mini.statusline'] then
|
||||
nvim_set_hl('MiniStatuslineModeNormal', { fg = colors.base03, bg = colors.purple })
|
||||
nvim_set_hl('MiniStatuslineModeInsert', { fg = colors.base03, bg = colors.green })
|
||||
nvim_set_hl('MiniStatuslineModeVisual', { fg = colors.yellow, bg = colors.base03 })
|
||||
nvim_set_hl('MiniStatuslineModeReplace', { fg = colors.red, bg = colors.base03 })
|
||||
nvim_set_hl('MiniStatuslineModeCommand', { fg = colors.orange, bg = colors.base03 })
|
||||
nvim_set_hl('MinistatusLineFileName', { fg = colors.base0, bg = colors.base04 })
|
||||
nvim_set_hl('MiniStatuslineDevinfo', { fg = colors.base0, bg = colors.base02 })
|
||||
nvim_set_hl('MiniStatuslineFileinfo', { fg = colors.base0, bg = colors.base02 })
|
||||
nvim_set_hl('MiniStatuslineInactive', { fg = colors.base01, bg = colors.base03 })
|
||||
end
|
||||
|
||||
if config.plugins['mini.tabline'] then
|
||||
nvim_set_hl('MiniTablineCurrent', { fg = colors.base0, bg = colors.base03 })
|
||||
nvim_set_hl('MiniTablineVisible', { fg = colors.base0, bg = colors.base03 })
|
||||
nvim_set_hl('MiniTablineHidden', { fg = colors.base01, bg = colors.base03 })
|
||||
nvim_set_hl('MiniTablineModifiedCurrent', { link = 'MiniTabLineCurrent' })
|
||||
nvim_set_hl('MiniTablineModifiedVisible', { link = 'MiniTablineVisible' })
|
||||
nvim_set_hl('MiniTablineModifiedHidden', { link = 'MiniTablineHidden' })
|
||||
nvim_set_hl('MiniTablineFill', { fg = colors.base0, bg = colors.base04 })
|
||||
nvim_set_hl('MiniTablineTabpagesection', { fg = colors.base0, bg = colors.base04 })
|
||||
end
|
||||
|
||||
if config.plugins['mini.starter'] then
|
||||
nvim_set_hl('MiniStarterCurrent', { link = 'CursorLine' })
|
||||
nvim_set_hl('MiniStarterHeader', { fg = colors.red })
|
||||
nvim_set_hl('MiniStarterFooter', { fg = colors.base01 })
|
||||
nvim_set_hl('MiniStarterItem', { fg = colors.base0 })
|
||||
nvim_set_hl('MiniStarterItemBullet', { fg = colors.pink })
|
||||
nvim_set_hl('MiniStarterItemPrefix', { fg = colors.pink })
|
||||
nvim_set_hl('MiniStarterSection', { link = 'Title' })
|
||||
nvim_set_hl('MiniStarterQuery', { fg = colors.pink, bold = true })
|
||||
end
|
||||
|
||||
if config.plugins['mini.cursorword'] then
|
||||
nvim_set_hl('MiniCursorword', { link = 'Visual' })
|
||||
end
|
||||
if config.on_highlights then
|
||||
local color = require 'dracula.color'
|
||||
local highlights = config.on_highlights(colors, color)
|
||||
|
||||
for group_name, group_val in pairs(highlights) do
|
||||
local hl = nvim_get_hl { name = group_name, link = true }
|
||||
local val = vim.tbl_extend('force', hl, group_val)
|
||||
vim.api.nvim_set_hl(0, group_name, val)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
return M
|
||||
|
|
@ -6,9 +6,33 @@ local M = {}
|
|||
|
||||
M.config = require 'dracula.config'
|
||||
|
||||
---@param config? dracula.config
|
||||
M.setup = function(config)
|
||||
M.config = vim.tbl_deep_extend('force', M.config, config or {})
|
||||
M.config = vim.tbl_deep_extend('force', M.config, config)
|
||||
end
|
||||
|
||||
M.load = function(theme)
|
||||
theme = theme or ''
|
||||
if vim.g.colors_name then
|
||||
vim.cmd 'hi clear'
|
||||
end
|
||||
|
||||
if vim.fn.exists 'syntax_on' then
|
||||
vim.cmd 'syntax reset'
|
||||
end
|
||||
|
||||
vim.g.colors_name = theme
|
||||
local ok, highlights = pcall(require, 'dracula.highlights.' .. theme)
|
||||
if not ok then
|
||||
highlights = require 'dracula.highlights'
|
||||
end
|
||||
|
||||
local colors = {}
|
||||
ok, colors = pcall(require, 'dracula.palette.' .. theme)
|
||||
if not ok then
|
||||
colors = require 'dracula.palette'
|
||||
end
|
||||
|
||||
highlights.set_highlight(colors, M.config)
|
||||
end
|
||||
|
||||
return M
|
||||
|
|
|
|||
4
shell.nix
Normal file
4
shell.nix
Normal file
|
|
@ -0,0 +1,4 @@
|
|||
{pkgs ? import <nixpkgs> {}}:
|
||||
pkgs.mkShell {
|
||||
nativeBuildInputs = with pkgs.buildPackages; [luajitPackages.vusted stylua];
|
||||
}
|
||||
|
|
@ -1,6 +1,6 @@
|
|||
column_width = 120
|
||||
line_endings = 'Unix'
|
||||
indent_type = 'Spaces'
|
||||
line_endings = "Unix"
|
||||
indent_type = "Spaces"
|
||||
indent_width = 2
|
||||
quote_style = 'AutoPreferSingle'
|
||||
call_parentheses = 'None'
|
||||
quote_style = "AutoPreferSingle"
|
||||
call_parentheses = "None"
|
||||
|
|
|
|||
127
tests/load_spec.lua
Normal file
127
tests/load_spec.lua
Normal file
|
|
@ -0,0 +1,127 @@
|
|||
local nvim_get_hl = require('dracula.utils').nvim_get_hl
|
||||
|
||||
describe('dracula.load', function()
|
||||
setup(function()
|
||||
vim.cmd.colorscheme 'dracula'
|
||||
end)
|
||||
|
||||
test('name', function()
|
||||
local expected = 'dracula'
|
||||
assert.equal(expected, vim.g.colors_name)
|
||||
end)
|
||||
|
||||
test('palette', function()
|
||||
local colors = require 'dracula.palette'
|
||||
assert.True(type(colors) == 'table')
|
||||
end)
|
||||
|
||||
test('default config', function()
|
||||
local config = require 'dracula.config'
|
||||
assert.True(type(config) == 'table')
|
||||
end)
|
||||
|
||||
test('set_highlight', function()
|
||||
local Comment = nvim_get_hl 'Comment'
|
||||
assert.True('#6272A4' == Comment.fg)
|
||||
|
||||
local Constant = nvim_get_hl 'Constant'
|
||||
assert.True('#BD93F9' == Constant.fg)
|
||||
|
||||
local String = nvim_get_hl 'String'
|
||||
assert.True('#F1FA8C' == String.fg)
|
||||
|
||||
local Character = nvim_get_hl 'Character'
|
||||
assert.True('#F1FA8C' == Character.fg)
|
||||
|
||||
local Number = nvim_get_hl 'Number'
|
||||
assert.True('#BD93F9' == Number.fg)
|
||||
|
||||
local Boolean = nvim_get_hl 'Boolean'
|
||||
assert.True('#BD93F9' == Boolean.fg)
|
||||
|
||||
local Float = nvim_get_hl 'Float'
|
||||
assert.True('#BD93F9' == Float.fg)
|
||||
|
||||
local Identifier = nvim_get_hl 'Identifier'
|
||||
assert.True('#F8F8F2' == Identifier.fg)
|
||||
|
||||
local Function = nvim_get_hl 'Function'
|
||||
assert.True('#50FA7A' == Function.fg)
|
||||
|
||||
local Statement = nvim_get_hl 'Statement'
|
||||
assert.True('#FF79C6' == Statement.fg)
|
||||
|
||||
local Conditional = nvim_get_hl 'Conditional'
|
||||
assert.True('#FF79C6' == Conditional.fg)
|
||||
|
||||
local Repeat = nvim_get_hl 'Repeat'
|
||||
assert.True('#FF79C6' == Repeat.fg)
|
||||
|
||||
local Label = nvim_get_hl 'Label'
|
||||
assert.True('#FF79C6' == Label.fg)
|
||||
|
||||
local Operator = nvim_get_hl 'Operator'
|
||||
assert.True('#FF79C6' == Operator.fg)
|
||||
|
||||
local Keyword = nvim_get_hl 'Keyword'
|
||||
assert.True('#FF79C6' == Keyword.fg)
|
||||
|
||||
local Exception = nvim_get_hl 'Exception'
|
||||
assert.True('#FF79C6' == Exception.fg)
|
||||
|
||||
local PreProc = nvim_get_hl 'PreProc'
|
||||
assert.True('#FF79C6' == PreProc.fg)
|
||||
|
||||
local Include = nvim_get_hl 'Include'
|
||||
assert.True('#FF79C6' == Include.fg)
|
||||
|
||||
local Define = nvim_get_hl 'Define'
|
||||
assert.True('#FF79C6' == Define.fg)
|
||||
|
||||
local Macro = nvim_get_hl 'Macro'
|
||||
assert.True('#FF79C6' == Macro.fg)
|
||||
|
||||
local PreCondit = nvim_get_hl 'PreCondit'
|
||||
assert.True('#FF79C6' == PreCondit.fg)
|
||||
|
||||
local Type = nvim_get_hl 'Type'
|
||||
assert.True('#8BE9FD' == Type.fg)
|
||||
|
||||
local StorageClass = nvim_get_hl 'StorageClass'
|
||||
assert.True('#FF79C6' == StorageClass.fg)
|
||||
|
||||
local Structure = nvim_get_hl 'Structure'
|
||||
assert.True('#8BE9FD' == Structure.fg)
|
||||
|
||||
local Typedef = nvim_get_hl 'Typedef'
|
||||
assert.True('#FF79C6' == Typedef.fg)
|
||||
|
||||
local Special = nvim_get_hl 'Special'
|
||||
assert.True('#FF5555' == Special.fg)
|
||||
|
||||
local SpecialChar = nvim_get_hl 'SpecialChar'
|
||||
assert.True('#BD93F9' == SpecialChar.fg)
|
||||
|
||||
local Tag = nvim_get_hl 'Tag'
|
||||
assert.True('#FF79C6' == Tag.fg)
|
||||
|
||||
local Delimiter = nvim_get_hl 'Delimiter'
|
||||
assert.True('#F8F8F2' == Delimiter.fg)
|
||||
|
||||
local SpecialComment = nvim_get_hl 'SpecialComment'
|
||||
assert.True('#FF79C6' == SpecialComment.fg)
|
||||
|
||||
local Debug = nvim_get_hl 'Debug'
|
||||
assert.True('#FF79C6' == Debug.fg)
|
||||
|
||||
local Underlined = nvim_get_hl 'Underlined'
|
||||
assert.True('#8BE9FD' == Underlined.fg)
|
||||
|
||||
local Ignore = nvim_get_hl 'Ignore'
|
||||
local Error = nvim_get_hl 'Error'
|
||||
assert.True('#FF5555' == Error.fg)
|
||||
|
||||
local Todo = nvim_get_hl 'Todo'
|
||||
assert.True('#BD93F9' == Todo.fg)
|
||||
end)
|
||||
end)
|
||||
|
|
@ -2,17 +2,11 @@ local nvim_get_hl = require('dracula.utils').nvim_get_hl
|
|||
|
||||
describe('dracula.setup', function()
|
||||
setup(function()
|
||||
---@type dracula
|
||||
local dracula = require 'dracula'
|
||||
|
||||
dracula.setup {
|
||||
require('dracula').setup {
|
||||
transparent = true,
|
||||
styles = {
|
||||
Comment = { italic = true },
|
||||
},
|
||||
on_colors = function()
|
||||
return {
|
||||
mycolor = 0xffffff,
|
||||
mycolor = '#ffffff',
|
||||
}
|
||||
end,
|
||||
on_highlights = function(colors)
|
||||
|
|
@ -34,11 +28,4 @@ describe('dracula.setup', function()
|
|||
local expected = { fg = '#FFFFFF' }
|
||||
assert.are.same(expected, user_group)
|
||||
end)
|
||||
|
||||
test('styles', function()
|
||||
local comment = nvim_get_hl 'Comment'
|
||||
local colors = require 'dracula.palette'
|
||||
local expected = { italic = true, fg = colors.base01, cterm = { italic = true } }
|
||||
assert.are.same(expected, comment)
|
||||
end)
|
||||
end)
|
||||
|
|
|
|||
Loading…
Reference in a new issue