├── .mailmap ├── CONTRIBUTING.md ├── LICENSE.md ├── README.md ├── colors ├── 3024-day.lua ├── 3024-night.lua ├── 3024.lua ├── adventure-time.lua ├── alien-blood.lua ├── apathy.lua ├── apprentice.lua ├── argonaut.lua ├── arthur.lua ├── ashes.lua ├── atelier-cave-light.lua ├── atelier-cave.lua ├── atelier-dune-light.lua ├── atelier-dune.lua ├── atelier-estuary-light.lua ├── atelier-estuary.lua ├── atelier-forest-light.lua ├── atelier-forest.lua ├── atelier-heath-light.lua ├── atelier-heath.lua ├── atelier-lakeside-light.lua ├── atelier-lakeside.lua ├── atelier-plateau-light.lua ├── atelier-plateau.lua ├── atelier-savanna-light.lua ├── atelier-savanna.lua ├── atelier-seaside-light.lua ├── atelier-seaside.lua ├── atelier-sulphurpool-light.lua ├── atelier-sulphurpool.lua ├── atlas.lua ├── ayu-dark.lua ├── ayu-light.lua ├── ayu-mirage.lua ├── ayu.lua ├── aztec.lua ├── banana-blueberry.lua ├── batman.lua ├── bespin.lua ├── birds-of-paradise.lua ├── black-metal-bathory.lua ├── black-metal-burzum.lua ├── black-metal-dark-funeral.lua ├── black-metal-gorgoroth.lua ├── black-metal-immortal.lua ├── black-metal-khold.lua ├── black-metal-marduk.lua ├── black-metal-mayhem.lua ├── black-metal-nile.lua ├── black-metal-venom.lua ├── black-metal.lua ├── blazer.lua ├── blue-berry-pie.lua ├── blue-matrix.lua ├── blueforest.lua ├── blueish.lua ├── bluloco-dark.lua ├── bluloco-light.lua ├── borland.lua ├── breeze.lua ├── brewer.lua ├── bright.lua ├── broadcast.lua ├── brogrammer.lua ├── brushtrees-dark.lua ├── brushtrees.lua ├── builtin-dark.lua ├── builtin-light.lua ├── builtin-pastel-dark.lua ├── builtin-solarized-dark.lua ├── builtin-solarized-light.lua ├── builtin-tango-dark.lua ├── builtin-tango-light.lua ├── caroline.lua ├── catppuccin-frappe.lua ├── catppuccin-latte.lua ├── catppuccin-macchiato.lua ├── catppuccin-mocha.lua ├── chalk.lua ├── chalkboard.lua ├── challenger-deep.lua ├── chicago-day.lua ├── chicago-night.lua ├── ciapre.lua ├── circus.lua ├── classic-dark.lua ├── classic-light.lua ├── clrs.lua ├── cobalt-neon.lua ├── cobalt2.lua ├── codeschool.lua ├── colors.lua ├── crayon-pony-fish.lua ├── cupcake.lua ├── cupertino.lua ├── cyberdyne.lua ├── da-one-black.lua ├── da-one-gray.lua ├── da-one-ocean.lua ├── da-one-paper.lua ├── da-one-sea.lua ├── da-one-white.lua ├── danqing-light.lua ├── danqing.lua ├── darcula.lua ├── dark-plus.lua ├── darkmoss.lua ├── darktooth.lua ├── darkviolet.lua ├── decaf.lua ├── deep-oceanic-next.lua ├── deep.lua ├── default-dark.lua ├── default-light.lua ├── desert.lua ├── digital-rain.lua ├── dimmed-monokai.lua ├── dirtysea.lua ├── dracula.lua ├── earthsong.lua ├── edge-dark.lua ├── edge-light.lua ├── eighties.lua ├── elemental.lua ├── elementary.lua ├── embarcadero.lua ├── embers-light.lua ├── embers.lua ├── emil.lua ├── encom.lua ├── equilibrium-dark.lua ├── equilibrium-gray-dark.lua ├── equilibrium-gray-light.lua ├── equilibrium-light.lua ├── eris.lua ├── espresso-libre.lua ├── espresso.lua ├── eva-dim.lua ├── eva.lua ├── evenok-dark.lua ├── everforest-dark-hard.lua ├── everforest-dark-soft.lua ├── everforest.lua ├── fideloper.lua ├── firefox-dev.lua ├── fish-tank.lua ├── flat.lua ├── flatland.lua ├── floraverse.lua ├── forest-blue.lua ├── framer.lua ├── front-end-delight.lua ├── fruit-soda.lua ├── fun-forrest.lua ├── galaxy.lua ├── gigavolt.lua ├── github-dark.lua ├── github.lua ├── google-dark.lua ├── google-light.lua ├── gotham.lua ├── grape.lua ├── grayscale-dark.lua ├── grayscale-light.lua ├── greenscreen.lua ├── gruber.lua ├── gruvbox-dark-hard.lua ├── gruvbox-dark-medium.lua ├── gruvbox-dark-pale.lua ├── gruvbox-dark-soft.lua ├── gruvbox-dark.lua ├── gruvbox-light-hard.lua ├── gruvbox-light-medium.lua ├── gruvbox-light-soft.lua ├── gruvbox-light.lua ├── gruvbox-material-dark-hard.lua ├── gruvbox-material-dark-medium.lua ├── gruvbox-material-dark-soft.lua ├── gruvbox-material-light-hard.lua ├── gruvbox-material-light-medium.lua ├── gruvbox-material-light-soft.lua ├── hacktober.lua ├── hardcore.lua ├── harmonic16-dark.lua ├── harmonic16-light.lua ├── heetch-light.lua ├── heetch.lua ├── helios.lua ├── highway.lua ├── hipster-green.lua ├── hivacruz.lua ├── homebrew.lua ├── hopscotch.lua ├── horizon-dark.lua ├── horizon-light.lua ├── horizon-terminal-dark.lua ├── horizon-terminal-light.lua ├── humanoid-dark.lua ├── humanoid-light.lua ├── hurtado.lua ├── hybrid.lua ├── ia-dark.lua ├── ia-light.lua ├── ic-green-ppl.lua ├── ic-orange-ppl.lua ├── icy.lua ├── idea.lua ├── idle-toes.lua ├── irblack.lua ├── isotope.lua ├── jabuti.lua ├── jackie-brown.lua ├── japanesque.lua ├── jellybeans.lua ├── jet-brains-darcula.lua ├── kanagawa-dragon.lua ├── kanagawa.lua ├── katy.lua ├── kibble.lua ├── kimber.lua ├── lab-fox.lua ├── laser.lua ├── later-this-evening.lua ├── lavandula.lua ├── lime.lua ├── lovelace.lua ├── macintosh.lua ├── man-page.lua ├── marrakesh.lua ├── materia.lua ├── material-dark.lua ├── material-darker.lua ├── material-lighter.lua ├── material-palenight.lua ├── material-vivid.lua ├── material.lua ├── mathias.lua ├── measured-dark.lua ├── measured-light.lua ├── medallion.lua ├── mellow-purple.lua ├── mexico-light.lua ├── mission-brogue.lua ├── misterioso.lua ├── mocha.lua ├── molokai.lua ├── mona-lisa.lua ├── monokai-vivid.lua ├── monokai.lua ├── moonlight.lua ├── mountain.lua ├── nebula.lua ├── night-lion-v1.lua ├── night-lion-v2.lua ├── night-owlish-light.lua ├── nocturnal-winter.lua ├── nord-light.lua ├── nord.lua ├── nova.lua ├── obsidian.lua ├── ocean.lua ├── oceanic-material.lua ├── oceanicnext.lua ├── ollie.lua ├── one-black.lua ├── one-dark.lua ├── one-half-light.lua ├── one-light.lua ├── onedark-dark.lua ├── onedark.lua ├── operator-mono-dark.lua ├── outrun-dark.lua ├── oxocarbon-dark.lua ├── oxocarbon-light.lua ├── pandora.lua ├── papercolor-dark.lua ├── papercolor-light.lua ├── paraiso.lua ├── pasque.lua ├── paul-millr.lua ├── pencil-dark.lua ├── pencil-light.lua ├── phd.lua ├── piatto-light.lua ├── pico.lua ├── pinky.lua ├── pnevma.lua ├── pop.lua ├── porple.lua ├── precious-dark-eleven.lua ├── precious-dark-fifteen.lua ├── precious-light-warm.lua ├── precious-light-white.lua ├── primer-dark-dimmed.lua ├── primer-dark.lua ├── primer-light.lua ├── pro-light.lua ├── pro.lua ├── purple-rain.lua ├── purpledream.lua ├── purplepeter.lua ├── qualia.lua ├── railscasts.lua ├── rebecca.lua ├── red-alert.lua ├── red-planet.lua ├── red-sands.lua ├── rippedcasts.lua ├── rose-pine-dawn.lua ├── rose-pine-moon.lua ├── rose-pine.lua ├── royal.lua ├── saga.lua ├── sagelight.lua ├── sakura.lua ├── sandcastle.lua ├── scarlet-protocol.lua ├── sea-shells.lua ├── seafoam-pastel.lua ├── selenized-black.lua ├── selenized-dark.lua ├── selenized-light.lua ├── selenized-white.lua ├── seti.lua ├── shades-of-purple.lua ├── shadesmear-dark.lua ├── shadesmear-light.lua ├── shaman.lua ├── shapeshifter.lua ├── silk-dark.lua ├── silk-light.lua ├── slate.lua ├── sleepy-hollow.lua ├── smyck.lua ├── snazzy.lua ├── soft-server.lua ├── solarflare-light.lua ├── solarflare.lua ├── solarized-dark-higher-contrast.lua ├── solarized-dark-patched.lua ├── solarized-dark.lua ├── solarized-light.lua ├── space-gray-eighties-dull.lua ├── space-gray-eighties.lua ├── spaceduck.lua ├── spacedust.lua ├── spacemacs.lua ├── sparky.lua ├── spiderman.lua ├── square.lua ├── standardized-dark.lua ├── standardized-light.lua ├── stella.lua ├── still-alive.lua ├── summercamp.lua ├── summerfruit-dark.lua ├── summerfruit-light.lua ├── sundried.lua ├── synth-midnight-dark.lua ├── synth-midnight-light.lua ├── tango-adapted.lua ├── tango-half-adapted.lua ├── tango.lua ├── tarot.lua ├── tender.lua ├── terminal-basic.lua ├── terracotta-dark.lua ├── terracotta.lua ├── thayer-bright.lua ├── the-hulk.lua ├── tokyo-city-dark.lua ├── tokyo-city-light.lua ├── tokyo-city-terminal-dark.lua ├── tokyo-city-terminal-light.lua ├── tokyo-night-dark.lua ├── tokyo-night-light.lua ├── tokyo-night-moon.lua ├── tokyo-night-storm.lua ├── tokyo-night-terminal-dark.lua ├── tokyo-night-terminal-light.lua ├── tokyo-night-terminal-storm.lua ├── tokyodark-terminal.lua ├── tokyodark.lua ├── tomorrow-night-eighties.lua ├── tomorrow-night.lua ├── tomorrow.lua ├── toy-chest.lua ├── treehouse.lua ├── tube.lua ├── twilight.lua ├── ubuntu.lua ├── ultra-violet.lua ├── under-the-sea.lua ├── unikitty-dark.lua ├── unikitty-light.lua ├── unikitty-reversible.lua ├── unikitty.lua ├── uwunicorn.lua ├── valua.lua ├── vesper.lua ├── vibrant-ink.lua ├── vice.lua ├── violet-dark.lua ├── violet-light.lua ├── vulcan.lua ├── warm-neon.lua ├── wez.lua ├── wild-cherry.lua ├── windows-10-light.lua ├── windows-10.lua ├── windows-95-light.lua ├── windows-95.lua ├── windows-highcontrast-light.lua ├── windows-highcontrast.lua ├── windows-nt-light.lua ├── windows-nt.lua ├── wombat.lua ├── woodland.lua ├── wryan.lua ├── xcode-dusk.lua ├── zenbones.lua └── zenburn.lua └── templates ├── config.yaml └── default.mustache /.mailmap: -------------------------------------------------------------------------------- 1 | Greg Hurrell 2 | Greg Hurrell 3 | -------------------------------------------------------------------------------- /CONTRIBUTING.md: -------------------------------------------------------------------------------- 1 | # Contributing 2 | 3 | ## Update procedure 4 | 5 | In order to always be testing the latest and greatest version of these color schemes, I add this repo as a submodule to [my dotfiles repository](https://github.com/wincent/wincent), and work out of there. [The script for actually rebuilding schemes](https://github.com/wincent/wincent/blob/main/bin/update-themes) is stored in the superproject. 6 | 7 | ### Tracking upstream template updates 8 | 9 | Examples of "backports" of changes made in [base16-vim](https://github.com/chriskempson/base16-vim): 10 | 11 | - [d2b7bbadebf666c2](https://github.com/wincent/base16-nvim/commit/d2b7bbadebf666c2a2e9e9410c009774554f5249). 12 | - [e17c89c913d5ef91](https://github.com/wincent/base16-nvim/commit/e17c89c913d5ef9177452636e0b81311a8481a99). 13 | - [3e732be2af2b6282](https://github.com/wincent/base16-nvim/commit/3e732be2af2b62822826aa95a9e2d77a735356be). 14 | 15 | The basic pattern is: 16 | 17 | 1. Make the changes to [the `templates/default.mustache` template](templates/default.mustache) in this repo (ie. in the submodule). This requires a decision for how to port the Vimscript of each upstream change into Lua. 18 | 19 | 2. Run `bin/update-themes` in the superproject. 20 | 21 | 3. Commit the changes in the base16-nvim submodule: 22 | 23 | ``` 24 | cd aspects/nvim/files/.config/nvim/pack/bundle/opt/base16-nvim 25 | git commit -p 26 | git push 27 | cd - 28 | ``` 29 | 30 | 4. Produce a dotfiles commit (example: [d0da206692f96e19](https://github.com/wincent/wincent/commit/d0da206692f96e19552343a938f1686b37b1f36d)): 31 | 32 | ``` 33 | git add aspects/nvim/files/.config/nvim/pack/bundle/opt/base16-nvim 34 | git commit 35 | ``` 36 | -------------------------------------------------------------------------------- /LICENSE.md: -------------------------------------------------------------------------------- 1 | Copyright (c) 2012-present Chris Kempson (https://github.com/chriskempson) 2 | Copyright (c) 2021-present Greg Hurrell 3 | Copyright (c) 2021-present base16-nvim contributors 4 | 5 | # MIT License 6 | 7 | Permission is hereby granted, free of charge, to any person obtaining 8 | a copy of this software and associated documentation files (the 9 | "Software"), to deal in the Software without restriction, including 10 | without limitation the rights to use, copy, modify, merge, publish, 11 | distribute, sublicense, and/or sell copies of the Software, and to 12 | permit persons to whom the Software is furnished to do so, subject to 13 | the following conditions: 14 | 15 | The above copyright notice and this permission notice shall be 16 | included in all copies or substantial portions of the Software. 17 | 18 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 19 | EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 20 | MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 21 | NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE 22 | LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION 23 | OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION 24 | WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 25 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # base16-nvim 2 | 3 | Originally, this was a Lua port of [chriskempson/base16-vim](https://github.com/chriskempson/base16-vim) for [Neovim](https://github.com/neovim/neovim). As base16-vim now appears to be abandonware, the new upstream is considered to be [tinted-vim](https://github.com/tinted-theming/tinted-vim) (itself, a fork of base16-vim). 4 | 5 | ## Why? 6 | 7 | These schemes are implemented in pure Lua, using the lowest-level API for creating highlight groups ([`vim.api.nvim_set_hl`](https://neovim.io/doc/user/api.html#nvim_set_hl())), so as to have the minimum possible impact on startup time. 8 | 9 | ## base16 or base24? 10 | 11 | Originally, this was a [base16](https://github.com/tinted-theming/home/blob/main/styling.md) theme, but is now a [base24](https://github.com/tinted-theming/base24/blob/main/styling.md) theme (ie. with seven additional colors corresponding to the ANSI "bright" colors). For now, there are no plans to change the name. 12 | -------------------------------------------------------------------------------- /colors/bespin.lua: -------------------------------------------------------------------------------- 1 | -- Bespin scheme by Jan T. Sott 2 | -- 3 | -- Generated from this template: 4 | -- 5 | -- - base16-nvim (https://github.com/wincent/base16-nvim) 6 | -- by Greg Hurrell (https://github.com/wincent) 7 | -- 8 | -- Template based on: 9 | -- 10 | -- - base16-vim (https://github.com/chriskempson/base16-vim) 11 | -- by Chris Kempson (https://github.com/chriskempson); and its fork: 12 | -- - tinted-vim (https://github.com/tinted-theming/tinted-vim) 13 | -- by the Tinted Theming contributors. 14 | 15 | -- Base16 colors. 16 | local gui00 = "#28211c" 17 | local gui01 = "#36312e" 18 | local gui02 = "#5e5d5c" 19 | local gui03 = "#666666" 20 | local gui04 = "#797977" 21 | local gui05 = "#8a8986" 22 | local gui06 = "#9d9b97" 23 | local gui07 = "#baae9e" 24 | local gui08 = "#cf6a4c" 25 | local gui09 = "#cf7d34" 26 | local gui0A = "#f9ee98" 27 | local gui0B = "#54be0d" 28 | local gui0C = "#afc4db" 29 | local gui0D = "#5ea6ea" 30 | local gui0E = "#9b859d" 31 | local gui0F = "#937121" 32 | 33 | -- Base24 colors. 34 | local gui10 = "#28211c" 35 | local gui11 = "#28211c" 36 | local gui12 = "#cf6a4c" 37 | local gui13 = "#f9ee98" 38 | local gui14 = "#54be0d" 39 | local gui15 = "#afc4db" 40 | local gui16 = "#5ea6ea" 41 | local gui17 = "#9b859d" 42 | 43 | -- Base16 colors. 44 | local cterm00 = 0 45 | local cterm03 = 8 46 | local cterm05 = 7 47 | local cterm07 = 15 48 | local cterm08 = 1 49 | local cterm0A = 3 50 | local cterm0B = 2 51 | local cterm0C = 6 52 | local cterm0D = 4 53 | local cterm0E = 5 54 | local cterm01 = 10 55 | local cterm02 = 11 56 | local cterm04 = 12 57 | local cterm06 = 13 58 | local cterm09 = 9 59 | local cterm0F = 14 60 | 61 | -- Base24 colors. 62 | local cterm10 = cterm00 63 | local cterm11 = cterm00 64 | local cterm12 = 9 65 | local cterm13 = 11 66 | local cterm14 = 10 67 | local cterm15 = 14 68 | local cterm16 = 12 69 | local cterm17 = 13 70 | 71 | vim.cmd [[ 72 | highlight clear 73 | syntax reset 74 | ]] 75 | vim.g.colors_name = "bespin" 76 | 77 | -- Vim editor colors 78 | vim.api.nvim_set_hl(0, 'Normal', { fg = gui05, bg = gui00, ctermfg = cterm05, ctermbg = cterm00 }) 79 | vim.api.nvim_set_hl(0, 'Bold', { bold = true }) 80 | vim.api.nvim_set_hl(0, 'Debug', { fg = gui08, ctermfg = cterm08 }) 81 | vim.api.nvim_set_hl(0, 'Directory', { fg = gui0D, ctermfg = cterm0D }) 82 | vim.api.nvim_set_hl(0, 'Error', { fg = gui00, bg = gui08, ctermfg = cterm00, ctermbg = cterm08 }) 83 | vim.api.nvim_set_hl(0, 'ErrorMsg', { fg = gui08, bg = gui00, ctermfg = cterm08, ctermbg = cterm00 }) 84 | vim.api.nvim_set_hl(0, 'Exception', { fg = gui08, ctermfg = cterm08 }) 85 | vim.api.nvim_set_hl(0, 'FoldColumn', { fg = gui0C, bg = gui01, ctermfg = cterm0C, ctermbg = cterm01 }) 86 | vim.api.nvim_set_hl(0, 'Folded', { fg = gui03, bg = gui01, ctermfg = cterm03, ctermbg = cterm01 }) 87 | vim.api.nvim_set_hl(0, 'IncSearch', { fg = gui01, bg = gui09, ctermfg = cterm01, ctermbg = cterm09 }) 88 | vim.api.nvim_set_hl(0, 'Italic', {}) 89 | vim.api.nvim_set_hl(0, 'Macro', { fg = gui08, ctermfg = cterm08 }) 90 | vim.api.nvim_set_hl(0, 'MatchParen', { bg = gui03, ctermbg = cterm03 }) 91 | vim.api.nvim_set_hl(0, 'ModeMsg', { fg = gui0B, ctermfg = cterm0B }) 92 | vim.api.nvim_set_hl(0, 'MoreMsg', { fg = gui0B, ctermfg = cterm0B }) 93 | vim.api.nvim_set_hl(0, 'Question', { fg = gui0D, ctermfg = cterm0D }) 94 | vim.api.nvim_set_hl(0, 'Search', { fg = gui01, bg = gui0A, ctermfg = cterm01, ctermbg = cterm0A }) 95 | vim.api.nvim_set_hl(0, 'Substitute', { fg = gui01, bg = gui0A, ctermfg = cterm01, ctermbg = cterm0A }) 96 | vim.api.nvim_set_hl(0, 'SpecialKey', { fg = gui03, ctermfg = cterm03 }) 97 | vim.api.nvim_set_hl(0, 'TooLong', { fg = gui08, ctermfg = cterm08 }) 98 | vim.api.nvim_set_hl(0, 'Underlined', { fg = gui08, ctermfg = cterm08 }) 99 | vim.api.nvim_set_hl(0, 'Visual', { bg = gui02, ctermbg = cterm02 }) 100 | vim.api.nvim_set_hl(0, 'VisualNOS', { fg = gui08, ctermfg = cterm08 }) 101 | vim.api.nvim_set_hl(0, 'WarningMsg', { fg = gui08, ctermfg = cterm08 }) 102 | vim.api.nvim_set_hl(0, 'WildMenu', { fg = gui08, bg = gui0A, ctermfg = cterm08 }) 103 | vim.api.nvim_set_hl(0, 'Title', { fg = gui0D, ctermfg = cterm0D }) 104 | vim.api.nvim_set_hl(0, 'Conceal', { fg = gui0D, bg = gui00, ctermfg = cterm0D, ctermbg = cterm00 }) 105 | vim.api.nvim_set_hl(0, 'Cursor', { fg = gui00, bg = gui05, ctermfg = cterm00, ctermbg = cterm05 }) 106 | vim.api.nvim_set_hl(0, 'NonText', { fg = gui03, ctermfg = cterm03 }) 107 | vim.api.nvim_set_hl(0, 'LineNr', { fg = gui03, bg = gui01, ctermfg = cterm03, ctermbg = cterm01 }) 108 | vim.api.nvim_set_hl(0, 'SignColumn', { fg = gui03, bg = gui01, ctermfg = cterm03, ctermbg = cterm01 }) 109 | vim.api.nvim_set_hl(0, 'StatusLine', { fg = gui04, bg = gui02, ctermfg = cterm04, ctermbg = cterm02 }) 110 | vim.api.nvim_set_hl(0, 'StatusLineNC', { fg = gui03, bg = gui01, ctermfg = cterm03, ctermbg = cterm01 }) 111 | vim.api.nvim_set_hl(0, 'VertSplit', { fg = gui02, bg = gui02, ctermfg = cterm02, ctermbg = cterm02 }) 112 | vim.api.nvim_set_hl(0, 'ColorColumn', { bg = gui01, ctermbg = cterm01 }) 113 | vim.api.nvim_set_hl(0, 'CursorColumn', { bg = gui01, ctermbg = cterm01 }) 114 | vim.api.nvim_set_hl(0, 'CursorLine', { bg = gui01, ctermbg = cterm01 }) 115 | vim.api.nvim_set_hl(0, 'CursorLineNr', { fg = gui04, bg = gui01, ctermfg = cterm04, ctermbg = cterm01 }) 116 | vim.api.nvim_set_hl(0, 'QuickFixLine', { bg = gui01, ctermbg = cterm01 }) 117 | vim.api.nvim_set_hl(0, 'PMenu', { fg = gui05, bg = gui01, ctermfg = cterm05, ctermbg = cterm01 }) 118 | vim.api.nvim_set_hl(0, 'PMenuSel', { fg = gui01, bg = gui05, ctermfg = cterm01, ctermbg = cterm05 }) 119 | vim.api.nvim_set_hl(0, 'TabLine', { fg = gui03, bg = gui01, ctermfg = cterm03, ctermbg = cterm01 }) 120 | vim.api.nvim_set_hl(0, 'TabLineFill', { fg = gui03, bg = gui01, ctermfg = cterm03, ctermbg = cterm01 }) 121 | vim.api.nvim_set_hl(0, 'TabLineSel', { fg = gui0B, bg = gui01, ctermfg = cterm0B, ctermbg = cterm01 }) 122 | 123 | -- Standard syntax highlighting 124 | vim.api.nvim_set_hl(0, 'Boolean', { fg = gui09, ctermfg = cterm09 }) 125 | vim.api.nvim_set_hl(0, 'Character', { fg = gui08, ctermfg = cterm08 }) 126 | vim.api.nvim_set_hl(0, 'Comment', { fg = gui03, ctermfg = cterm03 }) 127 | vim.api.nvim_set_hl(0, 'Conditional', { fg = gui0E, ctermfg = cterm0E }) 128 | vim.api.nvim_set_hl(0, 'Constant', { fg = gui09, ctermfg = cterm09 }) 129 | vim.api.nvim_set_hl(0, 'Define', { fg = gui0E, ctermfg = cterm0E }) 130 | vim.api.nvim_set_hl(0, 'Delimiter', { fg = gui0F, ctermfg = cterm0F }) 131 | vim.api.nvim_set_hl(0, 'Float', { fg = gui09, ctermfg = cterm09 }) 132 | vim.api.nvim_set_hl(0, 'Function', { fg = gui0D, ctermfg = cterm0D }) 133 | vim.api.nvim_set_hl(0, 'Identifier', { fg = gui08, ctermfg = cterm08 }) 134 | vim.api.nvim_set_hl(0, 'Include', { fg = gui0D, ctermfg = cterm0D }) 135 | vim.api.nvim_set_hl(0, 'Keyword', { fg = gui0E, ctermfg = cterm0E }) 136 | vim.api.nvim_set_hl(0, 'Label', { fg = gui0A, ctermfg = cterm0A }) 137 | vim.api.nvim_set_hl(0, 'Number', { fg = gui09, ctermfg = cterm09 }) 138 | vim.api.nvim_set_hl(0, 'Operator', { fg = gui05, ctermfg = cterm05 }) 139 | vim.api.nvim_set_hl(0, 'PreProc', { fg = gui0A, ctermfg = cterm0A }) 140 | vim.api.nvim_set_hl(0, 'Repeat', { fg = gui0A, ctermfg = cterm0A }) 141 | vim.api.nvim_set_hl(0, 'Special', { fg = gui0C, ctermfg = cterm0C }) 142 | vim.api.nvim_set_hl(0, 'SpecialChar', { fg = gui0F, ctermfg = cterm0F }) 143 | vim.api.nvim_set_hl(0, 'Statement', { fg = gui0E, ctermfg = cterm0E }) 144 | vim.api.nvim_set_hl(0, 'StorageClass', { fg = gui0A, ctermfg = cterm0A }) 145 | vim.api.nvim_set_hl(0, 'String', { fg = gui0B, ctermfg = cterm0B }) 146 | vim.api.nvim_set_hl(0, 'Structure', { fg = gui0E, ctermfg = cterm0E }) 147 | vim.api.nvim_set_hl(0, 'Tag', { fg = gui0A, ctermfg = cterm0A }) 148 | vim.api.nvim_set_hl(0, 'Todo', { fg = gui0A, bg = gui01, ctermfg = cterm0A, ctermbg = cterm01 }) 149 | vim.api.nvim_set_hl(0, 'Type', { fg = gui0A, ctermfg = cterm0A }) 150 | vim.api.nvim_set_hl(0, 'Typedef', { fg = gui0A, ctermfg = cterm0A }) 151 | 152 | -- C highlighting 153 | vim.api.nvim_set_hl(0, 'cOperator', { fg = gui0C, ctermfg = cterm0C }) 154 | vim.api.nvim_set_hl(0, 'cPreCondit', { fg = gui0E, ctermfg = cterm0E }) 155 | 156 | -- C# highlighting 157 | vim.api.nvim_set_hl(0, 'csClass', { fg = gui0A, ctermfg = cterm0A }) 158 | vim.api.nvim_set_hl(0, 'csAttribute', { fg = gui0A, ctermfg = cterm0A }) 159 | vim.api.nvim_set_hl(0, 'csModifier', { fg = gui0E, ctermfg = cterm0E }) 160 | vim.api.nvim_set_hl(0, 'csType', { fg = gui08, ctermfg = cterm08 }) 161 | vim.api.nvim_set_hl(0, 'csUnspecifiedStatement', { fg = gui0D, ctermfg = cterm0D }) 162 | vim.api.nvim_set_hl(0, 'csContextualStatement', { fg = gui0E, ctermfg = cterm0E }) 163 | vim.api.nvim_set_hl(0, 'csNewDecleration', { fg = gui08, ctermfg = cterm08 }) 164 | 165 | -- CSS highlighting 166 | vim.api.nvim_set_hl(0, 'cssBraces', { fg = gui05, ctermfg = cterm05 }) 167 | vim.api.nvim_set_hl(0, 'cssClassName', { fg = gui0E, ctermfg = cterm0E }) 168 | vim.api.nvim_set_hl(0, 'cssColor', { fg = gui0C, ctermfg = cterm0C }) 169 | 170 | -- Diff highlighting 171 | vim.api.nvim_set_hl(0, 'DiffAdd', { fg = gui0B, bg = gui01, ctermfg = cterm0B, ctermbg = cterm01 }) 172 | vim.api.nvim_set_hl(0, 'DiffChange', { fg = gui03, bg = gui01, ctermfg = cterm03, ctermbg = cterm01 }) 173 | vim.api.nvim_set_hl(0, 'DiffDelete', { fg = gui08, bg = gui01, ctermfg = cterm08, ctermbg = cterm01 }) 174 | vim.api.nvim_set_hl(0, 'DiffText', { fg = gui0D, bg = gui01, ctermfg = cterm0D, ctermbg = cterm01 }) 175 | vim.api.nvim_set_hl(0, 'DiffAdded', { fg = gui0B, bg = gui00, ctermfg = cterm0B, ctermbg = cterm00 }) 176 | vim.api.nvim_set_hl(0, 'DiffFile', { fg = gui08, bg = gui00, ctermfg = cterm08, ctermbg = cterm00 }) 177 | vim.api.nvim_set_hl(0, 'DiffNewFile', { fg = gui0B, bg = gui00, ctermfg = cterm0B, ctermbg = cterm00 }) 178 | vim.api.nvim_set_hl(0, 'DiffLine', { fg = gui0D, bg = gui00, ctermfg = cterm0D, ctermbg = cterm00 }) 179 | vim.api.nvim_set_hl(0, 'DiffRemoved', { fg = gui08, bg = gui00, ctermfg = cterm08, ctermbg = cterm00 }) 180 | 181 | -- Git highlighting 182 | vim.api.nvim_set_hl(0, 'gitcommitOverflow', { fg = gui08, ctermfg = cterm08 }) 183 | vim.api.nvim_set_hl(0, 'gitcommitSummary', { fg = gui0B, ctermfg = cterm0B }) 184 | vim.api.nvim_set_hl(0, 'gitcommitComment', { fg = gui03, ctermfg = cterm03 }) 185 | vim.api.nvim_set_hl(0, 'gitcommitUntracked', { fg = gui03, ctermfg = cterm03 }) 186 | vim.api.nvim_set_hl(0, 'gitcommitDiscarded', { fg = gui03, ctermfg = cterm03 }) 187 | vim.api.nvim_set_hl(0, 'gitcommitSelected', { fg = gui03, ctermfg = cterm03 }) 188 | vim.api.nvim_set_hl(0, 'gitcommitHeader', { fg = gui0E, ctermfg = cterm0E }) 189 | vim.api.nvim_set_hl(0, 'gitcommitSelectedType', { fg = gui0D, ctermfg = cterm0D }) 190 | vim.api.nvim_set_hl(0, 'gitcommitUnmergedType', { fg = gui0D, ctermfg = cterm0D }) 191 | vim.api.nvim_set_hl(0, 'gitcommitDiscardedType', { fg = gui0D, ctermfg = cterm0D }) 192 | vim.api.nvim_set_hl(0, 'gitcommitBranch', { fg = gui09, ctermfg = cterm09, bold = true }) 193 | vim.api.nvim_set_hl(0, 'gitcommitUntrackedFile', { fg = gui0A, ctermfg = cterm0A }) 194 | vim.api.nvim_set_hl(0, 'gitcommitUnmergedFile', { fg = gui08, ctermfg = cterm08, bold = true }) 195 | vim.api.nvim_set_hl(0, 'gitcommitDiscardedFile', { fg = gui08, ctermfg = cterm08, bold = true }) 196 | vim.api.nvim_set_hl(0, 'gitcommitSelectedFile', { fg = gui0B, ctermfg = cterm0B, bold = true }) 197 | 198 | -- GitGutter highlighting 199 | vim.api.nvim_set_hl(0, 'GitGutterAdd', { fg = gui0B, bg = gui01, ctermfg = cterm0B, ctermbg = cterm01 }) 200 | vim.api.nvim_set_hl(0, 'GitGutterChange', { fg = gui0D, bg = gui01, ctermfg = cterm0D, ctermbg = cterm01 }) 201 | vim.api.nvim_set_hl(0, 'GitGutterDelete', { fg = gui08, bg = gui01, ctermfg = cterm08, ctermbg = cterm01 }) 202 | vim.api.nvim_set_hl(0, 'GitGutterChangeDelete', { fg = gui0E, bg = gui01, ctermfg = cterm0E, ctermbg = cterm01 }) 203 | 204 | -- HTML highlighting 205 | vim.api.nvim_set_hl(0, 'htmlBold', { fg = gui0A, ctermfg = cterm0A }) 206 | vim.api.nvim_set_hl(0, 'htmlItalic', { fg = gui0E, ctermfg = cterm0E }) 207 | vim.api.nvim_set_hl(0, 'htmlEndTag', { fg = gui05, ctermfg = cterm05 }) 208 | vim.api.nvim_set_hl(0, 'htmlTag', { fg = gui05, ctermfg = cterm05 }) 209 | 210 | -- JavaScript highlighting 211 | vim.api.nvim_set_hl(0, 'javaScript', { fg = gui05, ctermfg = cterm05 }) 212 | vim.api.nvim_set_hl(0, 'javaScriptBraces', { fg = gui05, ctermfg = cterm05 }) 213 | vim.api.nvim_set_hl(0, 'javaScriptNumber', { fg = gui09, ctermfg = cterm09 }) 214 | 215 | -- pangloss/vim-javascript highlighting 216 | vim.api.nvim_set_hl(0, 'jsOperator', { fg = gui0D, ctermfg = cterm0D }) 217 | vim.api.nvim_set_hl(0, 'jsStatement', { fg = gui0E, ctermfg = cterm0E }) 218 | vim.api.nvim_set_hl(0, 'jsReturn', { fg = gui0E, ctermfg = cterm0E }) 219 | vim.api.nvim_set_hl(0, 'jsThis', { fg = gui08, ctermfg = cterm08 }) 220 | vim.api.nvim_set_hl(0, 'jsClassDefinition', { fg = gui0A, ctermfg = cterm0A }) 221 | vim.api.nvim_set_hl(0, 'jsFunction', { fg = gui0E, ctermfg = cterm0E }) 222 | vim.api.nvim_set_hl(0, 'jsFuncName', { fg = gui0D, ctermfg = cterm0D }) 223 | vim.api.nvim_set_hl(0, 'jsFuncCall', { fg = gui0D, ctermfg = cterm0D }) 224 | vim.api.nvim_set_hl(0, 'jsClassFuncName', { fg = gui0D, ctermfg = cterm0D }) 225 | vim.api.nvim_set_hl(0, 'jsClassMethodType', { fg = gui0E, ctermfg = cterm0E }) 226 | vim.api.nvim_set_hl(0, 'jsRegexpString', { fg = gui0C, ctermfg = cterm0C }) 227 | vim.api.nvim_set_hl(0, 'jsGlobalObjects', { fg = gui0A, ctermfg = cterm0A }) 228 | vim.api.nvim_set_hl(0, 'jsGlobalNodeObjects', { fg = gui0A, ctermfg = cterm0A }) 229 | vim.api.nvim_set_hl(0, 'jsExceptions', { fg = gui0A, ctermfg = cterm0A }) 230 | vim.api.nvim_set_hl(0, 'jsBuiltins', { fg = gui0A, ctermfg = cterm0A }) 231 | 232 | -- Diagnostics (legacy). 233 | vim.api.nvim_set_hl(0, 'LspDiagnosticsDefaultError', { fg = gui08, ctermfg = cterm08 }) 234 | vim.api.nvim_set_hl(0, 'LspDiagnosticsDefaultWarning', { fg = gui09, ctermfg = cterm09 }) 235 | vim.api.nvim_set_hl(0, 'LspDiagnosticsDefaultInformation', { fg = gui0C, ctermfg = cterm0C }) 236 | vim.api.nvim_set_hl(0, 'LspDiagnosticsDefaultHint', { fg = gui0D, ctermfg = cterm0D }) 237 | 238 | -- Diagnostics (modern). 239 | vim.api.nvim_set_hl(0, 'DiagnosticError', { fg = gui08, ctermfg = cterm08 }) 240 | vim.api.nvim_set_hl(0, 'DiagnosticWarn', { fg = gui09, ctermfg = cterm09 }) 241 | vim.api.nvim_set_hl(0, 'DiagnosticInfo', { fg = gui0C, ctermfg = cterm0C }) 242 | vim.api.nvim_set_hl(0, 'DiagnosticHint', { fg = gui0D, ctermfg = cterm0D }) 243 | vim.api.nvim_set_hl(0, 'DiagnosticOk', { fg = gui0B, ctermfg = cterm0B }) 244 | vim.api.nvim_set_hl(0, 'DiagnosticUnderlineError', { ctermfg = cterm00, ctermbg = cterm08, underline = true, sp = gui08 }) 245 | vim.api.nvim_set_hl(0, 'DiagnosticUnderlineWarn', { ctermfg = cterm00, ctermbg = cterm09, underline = true, sp = gui09 }) 246 | vim.api.nvim_set_hl(0, 'DiagnosticUnderlineInfo', { ctermfg = cterm00, ctermbg = cterm0C, underline = true, sp = gui0C }) 247 | vim.api.nvim_set_hl(0, 'DiagnosticUnderlineHint', { ctermfg = cterm00, ctermbg = cterm0D, underline = true, sp = gui0D }) 248 | vim.api.nvim_set_hl(0, 'DiagnosticUnderlineOk', { ctermfg = cterm00, ctermbg = cterm0B, underline = true, sp = gui0B }) 249 | vim.api.nvim_set_hl(0, 'DiagnosticFloatingError', { fg = gui08, bg = gui01, ctermfg = cterm08, ctermbg = cterm01 }) 250 | vim.api.nvim_set_hl(0, 'DiagnosticFloatingWarn', { fg = gui09, bg = gui01, ctermfg = cterm09, ctermbg = cterm01 }) 251 | vim.api.nvim_set_hl(0, 'DiagnosticFloatingInfo', { fg = gui0C, bg = gui01, ctermfg = cterm0C, ctermbg = cterm01 }) 252 | vim.api.nvim_set_hl(0, 'DiagnosticFloatingHint', { fg = gui0D, bg = gui01, ctermfg = cterm0D, ctermbg = cterm01 }) 253 | vim.api.nvim_set_hl(0, 'DiagnosticFloatingOk', { fg = gui0B, bg = gui01, ctermfg = cterm0B, ctermbg = cterm01 }) 254 | vim.api.nvim_set_hl(0, 'DiagnosticDeprecated', { ctermfg = cterm0F, ctermbg = cterm0F, strikethrough = true }) 255 | vim.api.nvim_set_hl(0, 'DiagnosticUnnecessary', { link = 'Comment' }) 256 | 257 | -- Mail highlighting 258 | vim.api.nvim_set_hl(0, 'mailQuoted1', { fg = gui0A, ctermfg = cterm0A }) 259 | vim.api.nvim_set_hl(0, 'mailQuoted2', { fg = gui0B, ctermfg = cterm0B }) 260 | vim.api.nvim_set_hl(0, 'mailQuoted3', { fg = gui0E, ctermfg = cterm0E }) 261 | vim.api.nvim_set_hl(0, 'mailQuoted4', { fg = gui0C, ctermfg = cterm0C }) 262 | vim.api.nvim_set_hl(0, 'mailQuoted5', { fg = gui0D, ctermfg = cterm0D }) 263 | vim.api.nvim_set_hl(0, 'mailQuoted6', { fg = gui0A, ctermfg = cterm0A }) 264 | vim.api.nvim_set_hl(0, 'mailURL', { fg = gui0D, ctermfg = cterm0D }) 265 | vim.api.nvim_set_hl(0, 'mailEmail', { fg = gui0D, ctermfg = cterm0D }) 266 | 267 | -- Markdown highlighting 268 | vim.api.nvim_set_hl(0, 'markdownCode', { fg = gui0B, ctermfg = cterm0B }) 269 | vim.api.nvim_set_hl(0, 'markdownError', { fg = gui05, bg = gui00, ctermfg = cterm05, ctermbg = cterm00 }) 270 | vim.api.nvim_set_hl(0, 'markdownCodeBlock', { fg = gui0B, ctermfg = cterm0B }) 271 | vim.api.nvim_set_hl(0, 'markdownHeadingDelimiter', { fg = gui0D, ctermfg = cterm0D }) 272 | 273 | -- NERDTree highlighting 274 | vim.api.nvim_set_hl(0, 'NERDTreeDirSlash', { fg = gui0D, ctermfg = cterm0D }) 275 | vim.api.nvim_set_hl(0, 'NERDTreeExecFile', { fg = gui05, ctermfg = cterm05 }) 276 | 277 | -- PHP highlighting 278 | vim.api.nvim_set_hl(0, 'phpMemberSelector', { fg = gui05, ctermfg = cterm05 }) 279 | vim.api.nvim_set_hl(0, 'phpComparison', { fg = gui05, ctermfg = cterm05 }) 280 | vim.api.nvim_set_hl(0, 'phpParent', { fg = gui05, ctermfg = cterm05 }) 281 | vim.api.nvim_set_hl(0, 'phpMethodsVar', { fg = gui0C, ctermfg = cterm0C }) 282 | 283 | -- Python highlighting 284 | vim.api.nvim_set_hl(0, 'pythonOperator', { fg = gui0E, ctermfg = cterm0E }) 285 | vim.api.nvim_set_hl(0, 'pythonRepeat', { fg = gui0E, ctermfg = cterm0E }) 286 | vim.api.nvim_set_hl(0, 'pythonInclude', { fg = gui0E, ctermfg = cterm0E }) 287 | vim.api.nvim_set_hl(0, 'pythonStatement', { fg = gui0E, ctermfg = cterm0E }) 288 | 289 | -- Ruby highlighting 290 | vim.api.nvim_set_hl(0, 'rubyAttribute', { fg = gui0D, ctermfg = cterm0D }) 291 | vim.api.nvim_set_hl(0, 'rubyConstant', { fg = gui0A, ctermfg = cterm0A }) 292 | vim.api.nvim_set_hl(0, 'rubyInterpolationDelimiter', { fg = gui0F, ctermfg = cterm0F }) 293 | vim.api.nvim_set_hl(0, 'rubyRegexp', { fg = gui0C, ctermfg = cterm0C }) 294 | vim.api.nvim_set_hl(0, 'rubySymbol', { fg = gui0B, ctermfg = cterm0B }) 295 | vim.api.nvim_set_hl(0, 'rubyStringDelimiter', { fg = gui0B, ctermfg = cterm0B }) 296 | 297 | -- SASS highlighting 298 | vim.api.nvim_set_hl(0, 'sassidChar', { fg = gui08, ctermfg = cterm08 }) 299 | vim.api.nvim_set_hl(0, 'sassClassChar', { fg = gui09, ctermfg = cterm09 }) 300 | vim.api.nvim_set_hl(0, 'sassInclude', { fg = gui0E, ctermfg = cterm0E }) 301 | vim.api.nvim_set_hl(0, 'sassMixing', { fg = gui0E, ctermfg = cterm0E }) 302 | vim.api.nvim_set_hl(0, 'sassMixinName', { fg = gui0D, ctermfg = cterm0D }) 303 | 304 | -- Signify highlighting 305 | vim.api.nvim_set_hl(0, 'SignifySignAdd', { fg = gui0B, bg = gui01, ctermfg = cterm0B, ctermbg = cterm01 }) 306 | vim.api.nvim_set_hl(0, 'SignifySignChange', { fg = gui0D, bg = gui01, ctermfg = cterm0D, ctermbg = cterm01 }) 307 | vim.api.nvim_set_hl(0, 'SignifySignDelete', { fg = gui08, bg = gui01, ctermfg = cterm08, ctermbg = cterm01 }) 308 | 309 | -- Spelling highlighting 310 | vim.api.nvim_set_hl(0, 'SpellBad', { undercurl = true }) 311 | vim.api.nvim_set_hl(0, 'SpellLocal', { undercurl = true }) 312 | vim.api.nvim_set_hl(0, 'SpellCap', { undercurl = true }) 313 | vim.api.nvim_set_hl(0, 'SpellRare', { undercurl = true }) 314 | 315 | -- Startify highlighting 316 | vim.api.nvim_set_hl(0, 'StartifyBracket', { fg = gui03, ctermfg = cterm03 }) 317 | vim.api.nvim_set_hl(0, 'StartifyFile', { fg = gui07, ctermfg = cterm07 }) 318 | vim.api.nvim_set_hl(0, 'StartifyFooter', { fg = gui03, ctermfg = cterm03 }) 319 | vim.api.nvim_set_hl(0, 'StartifyHeader', { fg = gui0B, ctermfg = cterm0B }) 320 | vim.api.nvim_set_hl(0, 'StartifyNumber', { fg = gui09, ctermfg = cterm09 }) 321 | vim.api.nvim_set_hl(0, 'StartifyPath', { fg = gui03, ctermfg = cterm03 }) 322 | vim.api.nvim_set_hl(0, 'StartifySection', { fg = gui0E, ctermfg = cterm0E }) 323 | vim.api.nvim_set_hl(0, 'StartifySelect', { fg = gui0C, ctermfg = cterm0C }) 324 | vim.api.nvim_set_hl(0, 'StartifySlash', { fg = gui03, ctermfg = cterm03 }) 325 | vim.api.nvim_set_hl(0, 'StartifySpecial', { fg = gui03, ctermfg = cterm03 }) 326 | 327 | -- Java highlighting 328 | vim.api.nvim_set_hl(0, 'javaOperator', { fg = gui0D, ctermfg = cterm0D }) 329 | 330 | -- Treesitter 331 | vim.api.nvim_set_hl(0, '@variable', { link = 'Identifier' }) 332 | vim.api.nvim_set_hl(0, '@variable.builtin', { fg = gui05, ctermfg = cterm05, italic = true }) 333 | vim.api.nvim_set_hl(0, '@variable.parameter', { link = 'Identifier' }) 334 | vim.api.nvim_set_hl(0, '@variable.parameter.builtin', { link = '@variable.builtin' }) 335 | vim.api.nvim_set_hl(0, '@variable.member', { fg = gui04, ctermfg = cterm04 }) 336 | vim.api.nvim_set_hl(0, '@constant', { link = 'Constant' }) 337 | vim.api.nvim_set_hl(0, '@constant.builtin', { fg = gui09, ctermfg = cterm09, italic = true }) 338 | vim.api.nvim_set_hl(0, '@constant.macro', { link = 'Constant' }) 339 | vim.api.nvim_set_hl(0, '@module', { link = 'Identifier' }) 340 | vim.api.nvim_set_hl(0, '@module.builtin', { fg = gui05, ctermfg = cterm05, italic = true }) 341 | vim.api.nvim_set_hl(0, '@label', { link = 'Tag' }) 342 | vim.api.nvim_set_hl(0, '@string', { link = 'String' }) 343 | vim.api.nvim_set_hl(0, '@string.documentation', { link = 'String' }) 344 | vim.api.nvim_set_hl(0, '@string.regexp', { link = 'SpecialComment' }) 345 | vim.api.nvim_set_hl(0, '@string.escape', { link = 'SpecialComment' }) 346 | vim.api.nvim_set_hl(0, '@string.special', { link = 'SpecialComment' }) 347 | vim.api.nvim_set_hl(0, '@string.special.symbol', { link = 'SpecialComment' }) 348 | vim.api.nvim_set_hl(0, '@string.special.path', { fg = gui0D, ctermfg = cterm0D, italic = true }) 349 | vim.api.nvim_set_hl(0, '@string.special.url', { fg = gui08, ctermfg = cterm08, italic = true }) 350 | vim.api.nvim_set_hl(0, '@character', { link = 'Character' }) 351 | vim.api.nvim_set_hl(0, '@character.special', { link = 'SpecialChar' }) 352 | vim.api.nvim_set_hl(0, '@boolean', { link = 'Boolean' }) 353 | vim.api.nvim_set_hl(0, '@number', { link = 'Number' }) 354 | vim.api.nvim_set_hl(0, '@number.float', { link = 'Float' }) 355 | vim.api.nvim_set_hl(0, '@type', { link = 'Type' }) 356 | vim.api.nvim_set_hl(0, '@type.builtin', { fg = gui0A, ctermfg = cterm0A, italic = true }) 357 | vim.api.nvim_set_hl(0, '@type.definition', { link = 'Typedef' }) 358 | vim.api.nvim_set_hl(0, '@attribute', { link = 'Special' }) 359 | vim.api.nvim_set_hl(0, '@attribute.builtin', { fg = gui0C, ctermfg = cterm0C, italic = true }) 360 | vim.api.nvim_set_hl(0, '@property', { link = '@variable.member' }) 361 | vim.api.nvim_set_hl(0, '@function', { fg = gui16, ctermfg = cterm16 }) 362 | vim.api.nvim_set_hl(0, '@function.builtin', { fg = gui16, ctermfg = cterm16, italic = true }) 363 | vim.api.nvim_set_hl(0, '@function.call', { link = '@function' }) 364 | vim.api.nvim_set_hl(0, '@function.macro', { link = 'Macro' }) 365 | vim.api.nvim_set_hl(0, '@function.method', { link = 'Function' }) 366 | vim.api.nvim_set_hl(0, '@function.method.call', { link = '@function.method' }) 367 | vim.api.nvim_set_hl(0, '@constructor', { fg = gui0D, ctermfg = cterm0D, bold = true }) 368 | vim.api.nvim_set_hl(0, '@operator', { link = 'Operator' }) 369 | vim.api.nvim_set_hl(0, '@keyword', { link = 'Keyword' }) 370 | vim.api.nvim_set_hl(0, '@keyword.coroutine', { link = 'Repeat' }) 371 | vim.api.nvim_set_hl(0, '@keyword.function', { link = 'Keyword' }) 372 | vim.api.nvim_set_hl(0, '@keyword.operator', { link = 'Operator' }) 373 | vim.api.nvim_set_hl(0, '@keyword.import', { fg = gui0E, ctermfg = cterm0E, italic = true }) 374 | vim.api.nvim_set_hl(0, '@keyword.type', { link = 'Keyword' }) 375 | vim.api.nvim_set_hl(0, '@keyword.modifier', { link = 'Repeat' }) 376 | vim.api.nvim_set_hl(0, '@keyword.repeat', { link = 'Repeat' }) 377 | vim.api.nvim_set_hl(0, '@keyword.return', { link = 'Keyword' }) 378 | vim.api.nvim_set_hl(0, '@keyword.debug', { link = 'Debug' }) 379 | vim.api.nvim_set_hl(0, '@keyword.exception', { link = 'Exception' }) 380 | vim.api.nvim_set_hl(0, '@keyword.conditional', { link = 'Conditional' }) 381 | vim.api.nvim_set_hl(0, '@keyword.ternary', { link = 'Conditional' }) 382 | vim.api.nvim_set_hl(0, '@keyword.directive', { link = 'PreProc' }) 383 | vim.api.nvim_set_hl(0, '@keyword.directive.define', { link = 'Define' }) 384 | vim.api.nvim_set_hl(0, '@punctuation.delimiter', { link = 'Delimiter' }) 385 | vim.api.nvim_set_hl(0, '@punctuation.bracket', { link = 'Delimiter' }) 386 | vim.api.nvim_set_hl(0, '@punctuation.special', { link = 'Special' }) 387 | vim.api.nvim_set_hl(0, '@comment', { link = 'Comment' }) 388 | vim.api.nvim_set_hl(0, '@comment.documentation', { link = 'Comment' }) 389 | vim.api.nvim_set_hl(0, '@comment.error', { fg = gui08, ctermfg = cterm08, italic = true }) 390 | vim.api.nvim_set_hl(0, '@comment.warning', { fg = gui09, ctermfg = cterm09, italic = true }) 391 | vim.api.nvim_set_hl(0, '@comment.note', { fg = gui0D, ctermfg = cterm0D, italic = true }) 392 | vim.api.nvim_set_hl(0, '@comment.todo', { fg = gui0C, ctermfg = cterm0C, italic = true }) 393 | vim.api.nvim_set_hl(0, '@markup.strong', { bold = true }) 394 | vim.api.nvim_set_hl(0, '@markup.italic', { italic = true }) 395 | vim.api.nvim_set_hl(0, '@markup.strikethrough', { strikethrough = true }) 396 | vim.api.nvim_set_hl(0, '@markup.underline', { underline = true }) 397 | vim.api.nvim_set_hl(0, '@markup.heading', { link = 'Title' }) 398 | vim.api.nvim_set_hl(0, '@markup.quote', { fg = gui0C, ctermfg = cterm0C }) 399 | vim.api.nvim_set_hl(0, '@markup.math', { link = 'Special' }) 400 | vim.api.nvim_set_hl(0, '@markup.link', { fg = gui08, ctermfg = cterm08 }) 401 | vim.api.nvim_set_hl(0, '@markup.link.label', { link = '@markup.link' }) 402 | vim.api.nvim_set_hl(0, '@markup.link.url', { fg = gui09, ctermfg = cterm09 }) 403 | vim.api.nvim_set_hl(0, '@markup.raw', { fg = gui0B, ctermfg = cterm0B }) 404 | vim.api.nvim_set_hl(0, '@markup.raw.block', { link = '@markup.raw' }) 405 | vim.api.nvim_set_hl(0, '@markup.list', { link = 'SpecialChar' }) 406 | vim.api.nvim_set_hl(0, '@markup.list.checked', { link = 'DiagnosticOk' }) 407 | vim.api.nvim_set_hl(0, '@markup.list.unchecked', { link = 'DiagnosticError' }) 408 | vim.api.nvim_set_hl(0, '@diff.plus', { link = 'Added' }) 409 | vim.api.nvim_set_hl(0, '@diff.minus', { link = 'Removed' }) 410 | vim.api.nvim_set_hl(0, '@diff.delta', { link = 'Changed' }) 411 | vim.api.nvim_set_hl(0, '@tag', { link = 'Tag' }) 412 | vim.api.nvim_set_hl(0, '@tag.builtin', { fg = gui09, ctermfg = cterm09, italic = true }) 413 | vim.api.nvim_set_hl(0, '@tag.attribute', { link = 'Special' }) 414 | vim.api.nvim_set_hl(0, '@tag.delimiter', { link = 'Delimiter' }) 415 | 416 | -- LSP 417 | vim.api.nvim_set_hl(0, '@lsp.type.class', { link = '@type' }) 418 | vim.api.nvim_set_hl(0, '@lsp.type.comment', { link = '@comment' }) 419 | vim.api.nvim_set_hl(0, '@lsp.type.decorator', { link = '@attribute' }) 420 | vim.api.nvim_set_hl(0, '@lsp.type.enum', { link = '@type' }) 421 | vim.api.nvim_set_hl(0, '@lsp.type.enumMember', { link = '@constant' }) 422 | vim.api.nvim_set_hl(0, '@lsp.type.event', { link = '@type' }) 423 | vim.api.nvim_set_hl(0, '@lsp.type.function', { link = '@function' }) 424 | vim.api.nvim_set_hl(0, '@lsp.type.interface', { link = '@type' }) 425 | vim.api.nvim_set_hl(0, '@lsp.type.keyword', { link = '@keyword' }) 426 | vim.api.nvim_set_hl(0, '@lsp.type.macro', { link = '@function.macro' }) 427 | vim.api.nvim_set_hl(0, '@lsp.type.method', { link = '@function.method' }) 428 | vim.api.nvim_set_hl(0, '@lsp.type.modifier', { link = '@type.modifier' }) 429 | vim.api.nvim_set_hl(0, '@lsp.type.namespace', { link = '@module' }) 430 | vim.api.nvim_set_hl(0, '@lsp.type.number', { link = '@number' }) 431 | vim.api.nvim_set_hl(0, '@lsp.type.operator', { link = '@operator' }) 432 | vim.api.nvim_set_hl(0, '@lsp.type.parameter', { link = '@variable.parameter' }) 433 | vim.api.nvim_set_hl(0, '@lsp.type.property', { link = '@property' }) 434 | vim.api.nvim_set_hl(0, '@lsp.type.regexp', { link = '@string.regexp' }) 435 | vim.api.nvim_set_hl(0, '@lsp.type.string', { link = '@string' }) 436 | vim.api.nvim_set_hl(0, '@lsp.type.struct', { link = '@type' }) 437 | vim.api.nvim_set_hl(0, '@lsp.type.type', { link = '@type' }) 438 | vim.api.nvim_set_hl(0, '@lsp.type.typeParameter', { link = '@variable.parameter' }) 439 | vim.api.nvim_set_hl(0, '@lsp.type.variable', { link = '@variable' }) 440 | 441 | -- LSP: Rust 442 | vim.api.nvim_set_hl(0, '@lsp.type.builtinType.rust', { link = '@type.builtin' }) 443 | vim.api.nvim_set_hl(0, '@lsp.type.escapeSequence.rust', { link = '@string.escape' }) 444 | vim.api.nvim_set_hl(0, '@lsp.type.formatSpecifier.rust', { link = '@operator' }) 445 | vim.api.nvim_set_hl(0, '@lsp.type.lifetime.rust', { link = '@attribute' }) 446 | vim.api.nvim_set_hl(0, '@lsp.type.punctuation.rust', { link = '@punctuation.delimiter' }) 447 | vim.api.nvim_set_hl(0, '@lsp.type.selfKeyword.rust', { link = '@variable.builtin' }) 448 | vim.api.nvim_set_hl(0, '@lsp.type.selfTypeKeyword.rust', { link = '@type.builtin' }) 449 | vim.api.nvim_set_hl(0, '@lsp.mod.attribute', { italic = true }) 450 | vim.api.nvim_set_hl(0, '@lsp.mod.controlFlow', { link = '@keyword.repeat' }) 451 | vim.api.nvim_set_hl(0, '@lsp.mod.intraDocLink.rust', { link = '@markup.link' }) 452 | vim.api.nvim_set_hl(0, '@lsp.typemod.generic.injected.rust', { link = '@variable' }) 453 | vim.api.nvim_set_hl(0, '@lsp.typemod.operator.controlFlow.rust', { link = '@operator' }) 454 | vim.api.nvim_set_hl(0, '@lsp.typemod.function.associated.rust', { link = '@function.method' }) 455 | 456 | -- LSP: Lua 457 | vim.api.nvim_set_hl(0, '@lsp.typemod.keyword.documentation.lua', { link = '@tag' }) 458 | 459 | -- LSP: Markdown 460 | vim.api.nvim_set_hl(0, '@lsp.type.class.markdown', { link = '@lsp' }) 461 | 462 | -- LSP (non-syntax) 463 | vim.api.nvim_set_hl(0, 'LspReferenceText', { link = 'Search' }) 464 | vim.api.nvim_set_hl(0, 'LspReferenceRead', { fg = gui01, bg = gui14, ctermfg = cterm01, ctermbg = cterm14 }) 465 | vim.api.nvim_set_hl(0, 'LspReferenceWrite', { fg = gui01, bg = gui12, ctermfg = cterm01, ctermbg = cterm12 }) 466 | vim.api.nvim_set_hl(0, 'LspCodeLens', { link = 'NonText' }) 467 | vim.api.nvim_set_hl(0, 'LspCodeLensSeparator', { link = 'LspCodeLens' }) 468 | vim.api.nvim_set_hl(0, 'LspInlayHint', { link = 'NonText' }) 469 | vim.api.nvim_set_hl(0, 'LspSignatureActiveParameter', { link = 'Visual' }) 470 | 471 | -- vim: filetype=lua 472 | -------------------------------------------------------------------------------- /colors/emil.lua: -------------------------------------------------------------------------------- 1 | -- emil scheme by limelier 2 | -- 3 | -- Generated from this template: 4 | -- 5 | -- - base16-nvim (https://github.com/wincent/base16-nvim) 6 | -- by Greg Hurrell (https://github.com/wincent) 7 | -- 8 | -- Template based on: 9 | -- 10 | -- - base16-vim (https://github.com/chriskempson/base16-vim) 11 | -- by Chris Kempson (https://github.com/chriskempson); and its fork: 12 | -- - tinted-vim (https://github.com/tinted-theming/tinted-vim) 13 | -- by the Tinted Theming contributors. 14 | 15 | -- Base16 colors. 16 | local gui00 = "#efefef" 17 | local gui01 = "#bebed2" 18 | local gui02 = "#9e9eaf" 19 | local gui03 = "#7c7c98" 20 | local gui04 = "#505063" 21 | local gui05 = "#313145" 22 | local gui06 = "#22223a" 23 | local gui07 = "#1a1a2f" 24 | local gui08 = "#f43979" 25 | local gui09 = "#d22a8b" 26 | local gui0A = "#ff669b" 27 | local gui0B = "#0073a8" 28 | local gui0C = "#2155d6" 29 | local gui0D = "#471397" 30 | local gui0E = "#6916b6" 31 | local gui0F = "#8d17a5" 32 | 33 | -- Base24 colors. 34 | local gui10 = "#efefef" 35 | local gui11 = "#efefef" 36 | local gui12 = "#f43979" 37 | local gui13 = "#ff669b" 38 | local gui14 = "#0073a8" 39 | local gui15 = "#2155d6" 40 | local gui16 = "#471397" 41 | local gui17 = "#6916b6" 42 | 43 | -- Base16 colors. 44 | local cterm00 = 0 45 | local cterm03 = 8 46 | local cterm05 = 7 47 | local cterm07 = 15 48 | local cterm08 = 1 49 | local cterm0A = 3 50 | local cterm0B = 2 51 | local cterm0C = 6 52 | local cterm0D = 4 53 | local cterm0E = 5 54 | local cterm01 = 10 55 | local cterm02 = 11 56 | local cterm04 = 12 57 | local cterm06 = 13 58 | local cterm09 = 9 59 | local cterm0F = 14 60 | 61 | -- Base24 colors. 62 | local cterm10 = cterm00 63 | local cterm11 = cterm00 64 | local cterm12 = 9 65 | local cterm13 = 11 66 | local cterm14 = 10 67 | local cterm15 = 14 68 | local cterm16 = 12 69 | local cterm17 = 13 70 | 71 | vim.cmd [[ 72 | highlight clear 73 | syntax reset 74 | ]] 75 | vim.g.colors_name = "emil" 76 | 77 | -- Vim editor colors 78 | vim.api.nvim_set_hl(0, 'Normal', { fg = gui05, bg = gui00, ctermfg = cterm05, ctermbg = cterm00 }) 79 | vim.api.nvim_set_hl(0, 'Bold', { bold = true }) 80 | vim.api.nvim_set_hl(0, 'Debug', { fg = gui08, ctermfg = cterm08 }) 81 | vim.api.nvim_set_hl(0, 'Directory', { fg = gui0D, ctermfg = cterm0D }) 82 | vim.api.nvim_set_hl(0, 'Error', { fg = gui00, bg = gui08, ctermfg = cterm00, ctermbg = cterm08 }) 83 | vim.api.nvim_set_hl(0, 'ErrorMsg', { fg = gui08, bg = gui00, ctermfg = cterm08, ctermbg = cterm00 }) 84 | vim.api.nvim_set_hl(0, 'Exception', { fg = gui08, ctermfg = cterm08 }) 85 | vim.api.nvim_set_hl(0, 'FoldColumn', { fg = gui0C, bg = gui01, ctermfg = cterm0C, ctermbg = cterm01 }) 86 | vim.api.nvim_set_hl(0, 'Folded', { fg = gui03, bg = gui01, ctermfg = cterm03, ctermbg = cterm01 }) 87 | vim.api.nvim_set_hl(0, 'IncSearch', { fg = gui01, bg = gui09, ctermfg = cterm01, ctermbg = cterm09 }) 88 | vim.api.nvim_set_hl(0, 'Italic', {}) 89 | vim.api.nvim_set_hl(0, 'Macro', { fg = gui08, ctermfg = cterm08 }) 90 | vim.api.nvim_set_hl(0, 'MatchParen', { bg = gui03, ctermbg = cterm03 }) 91 | vim.api.nvim_set_hl(0, 'ModeMsg', { fg = gui0B, ctermfg = cterm0B }) 92 | vim.api.nvim_set_hl(0, 'MoreMsg', { fg = gui0B, ctermfg = cterm0B }) 93 | vim.api.nvim_set_hl(0, 'Question', { fg = gui0D, ctermfg = cterm0D }) 94 | vim.api.nvim_set_hl(0, 'Search', { fg = gui01, bg = gui0A, ctermfg = cterm01, ctermbg = cterm0A }) 95 | vim.api.nvim_set_hl(0, 'Substitute', { fg = gui01, bg = gui0A, ctermfg = cterm01, ctermbg = cterm0A }) 96 | vim.api.nvim_set_hl(0, 'SpecialKey', { fg = gui03, ctermfg = cterm03 }) 97 | vim.api.nvim_set_hl(0, 'TooLong', { fg = gui08, ctermfg = cterm08 }) 98 | vim.api.nvim_set_hl(0, 'Underlined', { fg = gui08, ctermfg = cterm08 }) 99 | vim.api.nvim_set_hl(0, 'Visual', { bg = gui02, ctermbg = cterm02 }) 100 | vim.api.nvim_set_hl(0, 'VisualNOS', { fg = gui08, ctermfg = cterm08 }) 101 | vim.api.nvim_set_hl(0, 'WarningMsg', { fg = gui08, ctermfg = cterm08 }) 102 | vim.api.nvim_set_hl(0, 'WildMenu', { fg = gui08, bg = gui0A, ctermfg = cterm08 }) 103 | vim.api.nvim_set_hl(0, 'Title', { fg = gui0D, ctermfg = cterm0D }) 104 | vim.api.nvim_set_hl(0, 'Conceal', { fg = gui0D, bg = gui00, ctermfg = cterm0D, ctermbg = cterm00 }) 105 | vim.api.nvim_set_hl(0, 'Cursor', { fg = gui00, bg = gui05, ctermfg = cterm00, ctermbg = cterm05 }) 106 | vim.api.nvim_set_hl(0, 'NonText', { fg = gui03, ctermfg = cterm03 }) 107 | vim.api.nvim_set_hl(0, 'LineNr', { fg = gui03, bg = gui01, ctermfg = cterm03, ctermbg = cterm01 }) 108 | vim.api.nvim_set_hl(0, 'SignColumn', { fg = gui03, bg = gui01, ctermfg = cterm03, ctermbg = cterm01 }) 109 | vim.api.nvim_set_hl(0, 'StatusLine', { fg = gui04, bg = gui02, ctermfg = cterm04, ctermbg = cterm02 }) 110 | vim.api.nvim_set_hl(0, 'StatusLineNC', { fg = gui03, bg = gui01, ctermfg = cterm03, ctermbg = cterm01 }) 111 | vim.api.nvim_set_hl(0, 'VertSplit', { fg = gui02, bg = gui02, ctermfg = cterm02, ctermbg = cterm02 }) 112 | vim.api.nvim_set_hl(0, 'ColorColumn', { bg = gui01, ctermbg = cterm01 }) 113 | vim.api.nvim_set_hl(0, 'CursorColumn', { bg = gui01, ctermbg = cterm01 }) 114 | vim.api.nvim_set_hl(0, 'CursorLine', { bg = gui01, ctermbg = cterm01 }) 115 | vim.api.nvim_set_hl(0, 'CursorLineNr', { fg = gui04, bg = gui01, ctermfg = cterm04, ctermbg = cterm01 }) 116 | vim.api.nvim_set_hl(0, 'QuickFixLine', { bg = gui01, ctermbg = cterm01 }) 117 | vim.api.nvim_set_hl(0, 'PMenu', { fg = gui05, bg = gui01, ctermfg = cterm05, ctermbg = cterm01 }) 118 | vim.api.nvim_set_hl(0, 'PMenuSel', { fg = gui01, bg = gui05, ctermfg = cterm01, ctermbg = cterm05 }) 119 | vim.api.nvim_set_hl(0, 'TabLine', { fg = gui03, bg = gui01, ctermfg = cterm03, ctermbg = cterm01 }) 120 | vim.api.nvim_set_hl(0, 'TabLineFill', { fg = gui03, bg = gui01, ctermfg = cterm03, ctermbg = cterm01 }) 121 | vim.api.nvim_set_hl(0, 'TabLineSel', { fg = gui0B, bg = gui01, ctermfg = cterm0B, ctermbg = cterm01 }) 122 | 123 | -- Standard syntax highlighting 124 | vim.api.nvim_set_hl(0, 'Boolean', { fg = gui09, ctermfg = cterm09 }) 125 | vim.api.nvim_set_hl(0, 'Character', { fg = gui08, ctermfg = cterm08 }) 126 | vim.api.nvim_set_hl(0, 'Comment', { fg = gui03, ctermfg = cterm03 }) 127 | vim.api.nvim_set_hl(0, 'Conditional', { fg = gui0E, ctermfg = cterm0E }) 128 | vim.api.nvim_set_hl(0, 'Constant', { fg = gui09, ctermfg = cterm09 }) 129 | vim.api.nvim_set_hl(0, 'Define', { fg = gui0E, ctermfg = cterm0E }) 130 | vim.api.nvim_set_hl(0, 'Delimiter', { fg = gui0F, ctermfg = cterm0F }) 131 | vim.api.nvim_set_hl(0, 'Float', { fg = gui09, ctermfg = cterm09 }) 132 | vim.api.nvim_set_hl(0, 'Function', { fg = gui0D, ctermfg = cterm0D }) 133 | vim.api.nvim_set_hl(0, 'Identifier', { fg = gui08, ctermfg = cterm08 }) 134 | vim.api.nvim_set_hl(0, 'Include', { fg = gui0D, ctermfg = cterm0D }) 135 | vim.api.nvim_set_hl(0, 'Keyword', { fg = gui0E, ctermfg = cterm0E }) 136 | vim.api.nvim_set_hl(0, 'Label', { fg = gui0A, ctermfg = cterm0A }) 137 | vim.api.nvim_set_hl(0, 'Number', { fg = gui09, ctermfg = cterm09 }) 138 | vim.api.nvim_set_hl(0, 'Operator', { fg = gui05, ctermfg = cterm05 }) 139 | vim.api.nvim_set_hl(0, 'PreProc', { fg = gui0A, ctermfg = cterm0A }) 140 | vim.api.nvim_set_hl(0, 'Repeat', { fg = gui0A, ctermfg = cterm0A }) 141 | vim.api.nvim_set_hl(0, 'Special', { fg = gui0C, ctermfg = cterm0C }) 142 | vim.api.nvim_set_hl(0, 'SpecialChar', { fg = gui0F, ctermfg = cterm0F }) 143 | vim.api.nvim_set_hl(0, 'Statement', { fg = gui0E, ctermfg = cterm0E }) 144 | vim.api.nvim_set_hl(0, 'StorageClass', { fg = gui0A, ctermfg = cterm0A }) 145 | vim.api.nvim_set_hl(0, 'String', { fg = gui0B, ctermfg = cterm0B }) 146 | vim.api.nvim_set_hl(0, 'Structure', { fg = gui0E, ctermfg = cterm0E }) 147 | vim.api.nvim_set_hl(0, 'Tag', { fg = gui0A, ctermfg = cterm0A }) 148 | vim.api.nvim_set_hl(0, 'Todo', { fg = gui0A, bg = gui01, ctermfg = cterm0A, ctermbg = cterm01 }) 149 | vim.api.nvim_set_hl(0, 'Type', { fg = gui0A, ctermfg = cterm0A }) 150 | vim.api.nvim_set_hl(0, 'Typedef', { fg = gui0A, ctermfg = cterm0A }) 151 | 152 | -- C highlighting 153 | vim.api.nvim_set_hl(0, 'cOperator', { fg = gui0C, ctermfg = cterm0C }) 154 | vim.api.nvim_set_hl(0, 'cPreCondit', { fg = gui0E, ctermfg = cterm0E }) 155 | 156 | -- C# highlighting 157 | vim.api.nvim_set_hl(0, 'csClass', { fg = gui0A, ctermfg = cterm0A }) 158 | vim.api.nvim_set_hl(0, 'csAttribute', { fg = gui0A, ctermfg = cterm0A }) 159 | vim.api.nvim_set_hl(0, 'csModifier', { fg = gui0E, ctermfg = cterm0E }) 160 | vim.api.nvim_set_hl(0, 'csType', { fg = gui08, ctermfg = cterm08 }) 161 | vim.api.nvim_set_hl(0, 'csUnspecifiedStatement', { fg = gui0D, ctermfg = cterm0D }) 162 | vim.api.nvim_set_hl(0, 'csContextualStatement', { fg = gui0E, ctermfg = cterm0E }) 163 | vim.api.nvim_set_hl(0, 'csNewDecleration', { fg = gui08, ctermfg = cterm08 }) 164 | 165 | -- CSS highlighting 166 | vim.api.nvim_set_hl(0, 'cssBraces', { fg = gui05, ctermfg = cterm05 }) 167 | vim.api.nvim_set_hl(0, 'cssClassName', { fg = gui0E, ctermfg = cterm0E }) 168 | vim.api.nvim_set_hl(0, 'cssColor', { fg = gui0C, ctermfg = cterm0C }) 169 | 170 | -- Diff highlighting 171 | vim.api.nvim_set_hl(0, 'DiffAdd', { fg = gui0B, bg = gui01, ctermfg = cterm0B, ctermbg = cterm01 }) 172 | vim.api.nvim_set_hl(0, 'DiffChange', { fg = gui03, bg = gui01, ctermfg = cterm03, ctermbg = cterm01 }) 173 | vim.api.nvim_set_hl(0, 'DiffDelete', { fg = gui08, bg = gui01, ctermfg = cterm08, ctermbg = cterm01 }) 174 | vim.api.nvim_set_hl(0, 'DiffText', { fg = gui0D, bg = gui01, ctermfg = cterm0D, ctermbg = cterm01 }) 175 | vim.api.nvim_set_hl(0, 'DiffAdded', { fg = gui0B, bg = gui00, ctermfg = cterm0B, ctermbg = cterm00 }) 176 | vim.api.nvim_set_hl(0, 'DiffFile', { fg = gui08, bg = gui00, ctermfg = cterm08, ctermbg = cterm00 }) 177 | vim.api.nvim_set_hl(0, 'DiffNewFile', { fg = gui0B, bg = gui00, ctermfg = cterm0B, ctermbg = cterm00 }) 178 | vim.api.nvim_set_hl(0, 'DiffLine', { fg = gui0D, bg = gui00, ctermfg = cterm0D, ctermbg = cterm00 }) 179 | vim.api.nvim_set_hl(0, 'DiffRemoved', { fg = gui08, bg = gui00, ctermfg = cterm08, ctermbg = cterm00 }) 180 | 181 | -- Git highlighting 182 | vim.api.nvim_set_hl(0, 'gitcommitOverflow', { fg = gui08, ctermfg = cterm08 }) 183 | vim.api.nvim_set_hl(0, 'gitcommitSummary', { fg = gui0B, ctermfg = cterm0B }) 184 | vim.api.nvim_set_hl(0, 'gitcommitComment', { fg = gui03, ctermfg = cterm03 }) 185 | vim.api.nvim_set_hl(0, 'gitcommitUntracked', { fg = gui03, ctermfg = cterm03 }) 186 | vim.api.nvim_set_hl(0, 'gitcommitDiscarded', { fg = gui03, ctermfg = cterm03 }) 187 | vim.api.nvim_set_hl(0, 'gitcommitSelected', { fg = gui03, ctermfg = cterm03 }) 188 | vim.api.nvim_set_hl(0, 'gitcommitHeader', { fg = gui0E, ctermfg = cterm0E }) 189 | vim.api.nvim_set_hl(0, 'gitcommitSelectedType', { fg = gui0D, ctermfg = cterm0D }) 190 | vim.api.nvim_set_hl(0, 'gitcommitUnmergedType', { fg = gui0D, ctermfg = cterm0D }) 191 | vim.api.nvim_set_hl(0, 'gitcommitDiscardedType', { fg = gui0D, ctermfg = cterm0D }) 192 | vim.api.nvim_set_hl(0, 'gitcommitBranch', { fg = gui09, ctermfg = cterm09, bold = true }) 193 | vim.api.nvim_set_hl(0, 'gitcommitUntrackedFile', { fg = gui0A, ctermfg = cterm0A }) 194 | vim.api.nvim_set_hl(0, 'gitcommitUnmergedFile', { fg = gui08, ctermfg = cterm08, bold = true }) 195 | vim.api.nvim_set_hl(0, 'gitcommitDiscardedFile', { fg = gui08, ctermfg = cterm08, bold = true }) 196 | vim.api.nvim_set_hl(0, 'gitcommitSelectedFile', { fg = gui0B, ctermfg = cterm0B, bold = true }) 197 | 198 | -- GitGutter highlighting 199 | vim.api.nvim_set_hl(0, 'GitGutterAdd', { fg = gui0B, bg = gui01, ctermfg = cterm0B, ctermbg = cterm01 }) 200 | vim.api.nvim_set_hl(0, 'GitGutterChange', { fg = gui0D, bg = gui01, ctermfg = cterm0D, ctermbg = cterm01 }) 201 | vim.api.nvim_set_hl(0, 'GitGutterDelete', { fg = gui08, bg = gui01, ctermfg = cterm08, ctermbg = cterm01 }) 202 | vim.api.nvim_set_hl(0, 'GitGutterChangeDelete', { fg = gui0E, bg = gui01, ctermfg = cterm0E, ctermbg = cterm01 }) 203 | 204 | -- HTML highlighting 205 | vim.api.nvim_set_hl(0, 'htmlBold', { fg = gui0A, ctermfg = cterm0A }) 206 | vim.api.nvim_set_hl(0, 'htmlItalic', { fg = gui0E, ctermfg = cterm0E }) 207 | vim.api.nvim_set_hl(0, 'htmlEndTag', { fg = gui05, ctermfg = cterm05 }) 208 | vim.api.nvim_set_hl(0, 'htmlTag', { fg = gui05, ctermfg = cterm05 }) 209 | 210 | -- JavaScript highlighting 211 | vim.api.nvim_set_hl(0, 'javaScript', { fg = gui05, ctermfg = cterm05 }) 212 | vim.api.nvim_set_hl(0, 'javaScriptBraces', { fg = gui05, ctermfg = cterm05 }) 213 | vim.api.nvim_set_hl(0, 'javaScriptNumber', { fg = gui09, ctermfg = cterm09 }) 214 | 215 | -- pangloss/vim-javascript highlighting 216 | vim.api.nvim_set_hl(0, 'jsOperator', { fg = gui0D, ctermfg = cterm0D }) 217 | vim.api.nvim_set_hl(0, 'jsStatement', { fg = gui0E, ctermfg = cterm0E }) 218 | vim.api.nvim_set_hl(0, 'jsReturn', { fg = gui0E, ctermfg = cterm0E }) 219 | vim.api.nvim_set_hl(0, 'jsThis', { fg = gui08, ctermfg = cterm08 }) 220 | vim.api.nvim_set_hl(0, 'jsClassDefinition', { fg = gui0A, ctermfg = cterm0A }) 221 | vim.api.nvim_set_hl(0, 'jsFunction', { fg = gui0E, ctermfg = cterm0E }) 222 | vim.api.nvim_set_hl(0, 'jsFuncName', { fg = gui0D, ctermfg = cterm0D }) 223 | vim.api.nvim_set_hl(0, 'jsFuncCall', { fg = gui0D, ctermfg = cterm0D }) 224 | vim.api.nvim_set_hl(0, 'jsClassFuncName', { fg = gui0D, ctermfg = cterm0D }) 225 | vim.api.nvim_set_hl(0, 'jsClassMethodType', { fg = gui0E, ctermfg = cterm0E }) 226 | vim.api.nvim_set_hl(0, 'jsRegexpString', { fg = gui0C, ctermfg = cterm0C }) 227 | vim.api.nvim_set_hl(0, 'jsGlobalObjects', { fg = gui0A, ctermfg = cterm0A }) 228 | vim.api.nvim_set_hl(0, 'jsGlobalNodeObjects', { fg = gui0A, ctermfg = cterm0A }) 229 | vim.api.nvim_set_hl(0, 'jsExceptions', { fg = gui0A, ctermfg = cterm0A }) 230 | vim.api.nvim_set_hl(0, 'jsBuiltins', { fg = gui0A, ctermfg = cterm0A }) 231 | 232 | -- Diagnostics (legacy). 233 | vim.api.nvim_set_hl(0, 'LspDiagnosticsDefaultError', { fg = gui08, ctermfg = cterm08 }) 234 | vim.api.nvim_set_hl(0, 'LspDiagnosticsDefaultWarning', { fg = gui09, ctermfg = cterm09 }) 235 | vim.api.nvim_set_hl(0, 'LspDiagnosticsDefaultInformation', { fg = gui0C, ctermfg = cterm0C }) 236 | vim.api.nvim_set_hl(0, 'LspDiagnosticsDefaultHint', { fg = gui0D, ctermfg = cterm0D }) 237 | 238 | -- Diagnostics (modern). 239 | vim.api.nvim_set_hl(0, 'DiagnosticError', { fg = gui08, ctermfg = cterm08 }) 240 | vim.api.nvim_set_hl(0, 'DiagnosticWarn', { fg = gui09, ctermfg = cterm09 }) 241 | vim.api.nvim_set_hl(0, 'DiagnosticInfo', { fg = gui0C, ctermfg = cterm0C }) 242 | vim.api.nvim_set_hl(0, 'DiagnosticHint', { fg = gui0D, ctermfg = cterm0D }) 243 | vim.api.nvim_set_hl(0, 'DiagnosticOk', { fg = gui0B, ctermfg = cterm0B }) 244 | vim.api.nvim_set_hl(0, 'DiagnosticUnderlineError', { ctermfg = cterm00, ctermbg = cterm08, underline = true, sp = gui08 }) 245 | vim.api.nvim_set_hl(0, 'DiagnosticUnderlineWarn', { ctermfg = cterm00, ctermbg = cterm09, underline = true, sp = gui09 }) 246 | vim.api.nvim_set_hl(0, 'DiagnosticUnderlineInfo', { ctermfg = cterm00, ctermbg = cterm0C, underline = true, sp = gui0C }) 247 | vim.api.nvim_set_hl(0, 'DiagnosticUnderlineHint', { ctermfg = cterm00, ctermbg = cterm0D, underline = true, sp = gui0D }) 248 | vim.api.nvim_set_hl(0, 'DiagnosticUnderlineOk', { ctermfg = cterm00, ctermbg = cterm0B, underline = true, sp = gui0B }) 249 | vim.api.nvim_set_hl(0, 'DiagnosticFloatingError', { fg = gui08, bg = gui01, ctermfg = cterm08, ctermbg = cterm01 }) 250 | vim.api.nvim_set_hl(0, 'DiagnosticFloatingWarn', { fg = gui09, bg = gui01, ctermfg = cterm09, ctermbg = cterm01 }) 251 | vim.api.nvim_set_hl(0, 'DiagnosticFloatingInfo', { fg = gui0C, bg = gui01, ctermfg = cterm0C, ctermbg = cterm01 }) 252 | vim.api.nvim_set_hl(0, 'DiagnosticFloatingHint', { fg = gui0D, bg = gui01, ctermfg = cterm0D, ctermbg = cterm01 }) 253 | vim.api.nvim_set_hl(0, 'DiagnosticFloatingOk', { fg = gui0B, bg = gui01, ctermfg = cterm0B, ctermbg = cterm01 }) 254 | vim.api.nvim_set_hl(0, 'DiagnosticDeprecated', { ctermfg = cterm0F, ctermbg = cterm0F, strikethrough = true }) 255 | vim.api.nvim_set_hl(0, 'DiagnosticUnnecessary', { link = 'Comment' }) 256 | 257 | -- Mail highlighting 258 | vim.api.nvim_set_hl(0, 'mailQuoted1', { fg = gui0A, ctermfg = cterm0A }) 259 | vim.api.nvim_set_hl(0, 'mailQuoted2', { fg = gui0B, ctermfg = cterm0B }) 260 | vim.api.nvim_set_hl(0, 'mailQuoted3', { fg = gui0E, ctermfg = cterm0E }) 261 | vim.api.nvim_set_hl(0, 'mailQuoted4', { fg = gui0C, ctermfg = cterm0C }) 262 | vim.api.nvim_set_hl(0, 'mailQuoted5', { fg = gui0D, ctermfg = cterm0D }) 263 | vim.api.nvim_set_hl(0, 'mailQuoted6', { fg = gui0A, ctermfg = cterm0A }) 264 | vim.api.nvim_set_hl(0, 'mailURL', { fg = gui0D, ctermfg = cterm0D }) 265 | vim.api.nvim_set_hl(0, 'mailEmail', { fg = gui0D, ctermfg = cterm0D }) 266 | 267 | -- Markdown highlighting 268 | vim.api.nvim_set_hl(0, 'markdownCode', { fg = gui0B, ctermfg = cterm0B }) 269 | vim.api.nvim_set_hl(0, 'markdownError', { fg = gui05, bg = gui00, ctermfg = cterm05, ctermbg = cterm00 }) 270 | vim.api.nvim_set_hl(0, 'markdownCodeBlock', { fg = gui0B, ctermfg = cterm0B }) 271 | vim.api.nvim_set_hl(0, 'markdownHeadingDelimiter', { fg = gui0D, ctermfg = cterm0D }) 272 | 273 | -- NERDTree highlighting 274 | vim.api.nvim_set_hl(0, 'NERDTreeDirSlash', { fg = gui0D, ctermfg = cterm0D }) 275 | vim.api.nvim_set_hl(0, 'NERDTreeExecFile', { fg = gui05, ctermfg = cterm05 }) 276 | 277 | -- PHP highlighting 278 | vim.api.nvim_set_hl(0, 'phpMemberSelector', { fg = gui05, ctermfg = cterm05 }) 279 | vim.api.nvim_set_hl(0, 'phpComparison', { fg = gui05, ctermfg = cterm05 }) 280 | vim.api.nvim_set_hl(0, 'phpParent', { fg = gui05, ctermfg = cterm05 }) 281 | vim.api.nvim_set_hl(0, 'phpMethodsVar', { fg = gui0C, ctermfg = cterm0C }) 282 | 283 | -- Python highlighting 284 | vim.api.nvim_set_hl(0, 'pythonOperator', { fg = gui0E, ctermfg = cterm0E }) 285 | vim.api.nvim_set_hl(0, 'pythonRepeat', { fg = gui0E, ctermfg = cterm0E }) 286 | vim.api.nvim_set_hl(0, 'pythonInclude', { fg = gui0E, ctermfg = cterm0E }) 287 | vim.api.nvim_set_hl(0, 'pythonStatement', { fg = gui0E, ctermfg = cterm0E }) 288 | 289 | -- Ruby highlighting 290 | vim.api.nvim_set_hl(0, 'rubyAttribute', { fg = gui0D, ctermfg = cterm0D }) 291 | vim.api.nvim_set_hl(0, 'rubyConstant', { fg = gui0A, ctermfg = cterm0A }) 292 | vim.api.nvim_set_hl(0, 'rubyInterpolationDelimiter', { fg = gui0F, ctermfg = cterm0F }) 293 | vim.api.nvim_set_hl(0, 'rubyRegexp', { fg = gui0C, ctermfg = cterm0C }) 294 | vim.api.nvim_set_hl(0, 'rubySymbol', { fg = gui0B, ctermfg = cterm0B }) 295 | vim.api.nvim_set_hl(0, 'rubyStringDelimiter', { fg = gui0B, ctermfg = cterm0B }) 296 | 297 | -- SASS highlighting 298 | vim.api.nvim_set_hl(0, 'sassidChar', { fg = gui08, ctermfg = cterm08 }) 299 | vim.api.nvim_set_hl(0, 'sassClassChar', { fg = gui09, ctermfg = cterm09 }) 300 | vim.api.nvim_set_hl(0, 'sassInclude', { fg = gui0E, ctermfg = cterm0E }) 301 | vim.api.nvim_set_hl(0, 'sassMixing', { fg = gui0E, ctermfg = cterm0E }) 302 | vim.api.nvim_set_hl(0, 'sassMixinName', { fg = gui0D, ctermfg = cterm0D }) 303 | 304 | -- Signify highlighting 305 | vim.api.nvim_set_hl(0, 'SignifySignAdd', { fg = gui0B, bg = gui01, ctermfg = cterm0B, ctermbg = cterm01 }) 306 | vim.api.nvim_set_hl(0, 'SignifySignChange', { fg = gui0D, bg = gui01, ctermfg = cterm0D, ctermbg = cterm01 }) 307 | vim.api.nvim_set_hl(0, 'SignifySignDelete', { fg = gui08, bg = gui01, ctermfg = cterm08, ctermbg = cterm01 }) 308 | 309 | -- Spelling highlighting 310 | vim.api.nvim_set_hl(0, 'SpellBad', { undercurl = true }) 311 | vim.api.nvim_set_hl(0, 'SpellLocal', { undercurl = true }) 312 | vim.api.nvim_set_hl(0, 'SpellCap', { undercurl = true }) 313 | vim.api.nvim_set_hl(0, 'SpellRare', { undercurl = true }) 314 | 315 | -- Startify highlighting 316 | vim.api.nvim_set_hl(0, 'StartifyBracket', { fg = gui03, ctermfg = cterm03 }) 317 | vim.api.nvim_set_hl(0, 'StartifyFile', { fg = gui07, ctermfg = cterm07 }) 318 | vim.api.nvim_set_hl(0, 'StartifyFooter', { fg = gui03, ctermfg = cterm03 }) 319 | vim.api.nvim_set_hl(0, 'StartifyHeader', { fg = gui0B, ctermfg = cterm0B }) 320 | vim.api.nvim_set_hl(0, 'StartifyNumber', { fg = gui09, ctermfg = cterm09 }) 321 | vim.api.nvim_set_hl(0, 'StartifyPath', { fg = gui03, ctermfg = cterm03 }) 322 | vim.api.nvim_set_hl(0, 'StartifySection', { fg = gui0E, ctermfg = cterm0E }) 323 | vim.api.nvim_set_hl(0, 'StartifySelect', { fg = gui0C, ctermfg = cterm0C }) 324 | vim.api.nvim_set_hl(0, 'StartifySlash', { fg = gui03, ctermfg = cterm03 }) 325 | vim.api.nvim_set_hl(0, 'StartifySpecial', { fg = gui03, ctermfg = cterm03 }) 326 | 327 | -- Java highlighting 328 | vim.api.nvim_set_hl(0, 'javaOperator', { fg = gui0D, ctermfg = cterm0D }) 329 | 330 | -- Treesitter 331 | vim.api.nvim_set_hl(0, '@variable', { link = 'Identifier' }) 332 | vim.api.nvim_set_hl(0, '@variable.builtin', { fg = gui05, ctermfg = cterm05, italic = true }) 333 | vim.api.nvim_set_hl(0, '@variable.parameter', { link = 'Identifier' }) 334 | vim.api.nvim_set_hl(0, '@variable.parameter.builtin', { link = '@variable.builtin' }) 335 | vim.api.nvim_set_hl(0, '@variable.member', { fg = gui04, ctermfg = cterm04 }) 336 | vim.api.nvim_set_hl(0, '@constant', { link = 'Constant' }) 337 | vim.api.nvim_set_hl(0, '@constant.builtin', { fg = gui09, ctermfg = cterm09, italic = true }) 338 | vim.api.nvim_set_hl(0, '@constant.macro', { link = 'Constant' }) 339 | vim.api.nvim_set_hl(0, '@module', { link = 'Identifier' }) 340 | vim.api.nvim_set_hl(0, '@module.builtin', { fg = gui05, ctermfg = cterm05, italic = true }) 341 | vim.api.nvim_set_hl(0, '@label', { link = 'Tag' }) 342 | vim.api.nvim_set_hl(0, '@string', { link = 'String' }) 343 | vim.api.nvim_set_hl(0, '@string.documentation', { link = 'String' }) 344 | vim.api.nvim_set_hl(0, '@string.regexp', { link = 'SpecialComment' }) 345 | vim.api.nvim_set_hl(0, '@string.escape', { link = 'SpecialComment' }) 346 | vim.api.nvim_set_hl(0, '@string.special', { link = 'SpecialComment' }) 347 | vim.api.nvim_set_hl(0, '@string.special.symbol', { link = 'SpecialComment' }) 348 | vim.api.nvim_set_hl(0, '@string.special.path', { fg = gui0D, ctermfg = cterm0D, italic = true }) 349 | vim.api.nvim_set_hl(0, '@string.special.url', { fg = gui08, ctermfg = cterm08, italic = true }) 350 | vim.api.nvim_set_hl(0, '@character', { link = 'Character' }) 351 | vim.api.nvim_set_hl(0, '@character.special', { link = 'SpecialChar' }) 352 | vim.api.nvim_set_hl(0, '@boolean', { link = 'Boolean' }) 353 | vim.api.nvim_set_hl(0, '@number', { link = 'Number' }) 354 | vim.api.nvim_set_hl(0, '@number.float', { link = 'Float' }) 355 | vim.api.nvim_set_hl(0, '@type', { link = 'Type' }) 356 | vim.api.nvim_set_hl(0, '@type.builtin', { fg = gui0A, ctermfg = cterm0A, italic = true }) 357 | vim.api.nvim_set_hl(0, '@type.definition', { link = 'Typedef' }) 358 | vim.api.nvim_set_hl(0, '@attribute', { link = 'Special' }) 359 | vim.api.nvim_set_hl(0, '@attribute.builtin', { fg = gui0C, ctermfg = cterm0C, italic = true }) 360 | vim.api.nvim_set_hl(0, '@property', { link = '@variable.member' }) 361 | vim.api.nvim_set_hl(0, '@function', { fg = gui16, ctermfg = cterm16 }) 362 | vim.api.nvim_set_hl(0, '@function.builtin', { fg = gui16, ctermfg = cterm16, italic = true }) 363 | vim.api.nvim_set_hl(0, '@function.call', { link = '@function' }) 364 | vim.api.nvim_set_hl(0, '@function.macro', { link = 'Macro' }) 365 | vim.api.nvim_set_hl(0, '@function.method', { link = 'Function' }) 366 | vim.api.nvim_set_hl(0, '@function.method.call', { link = '@function.method' }) 367 | vim.api.nvim_set_hl(0, '@constructor', { fg = gui0D, ctermfg = cterm0D, bold = true }) 368 | vim.api.nvim_set_hl(0, '@operator', { link = 'Operator' }) 369 | vim.api.nvim_set_hl(0, '@keyword', { link = 'Keyword' }) 370 | vim.api.nvim_set_hl(0, '@keyword.coroutine', { link = 'Repeat' }) 371 | vim.api.nvim_set_hl(0, '@keyword.function', { link = 'Keyword' }) 372 | vim.api.nvim_set_hl(0, '@keyword.operator', { link = 'Operator' }) 373 | vim.api.nvim_set_hl(0, '@keyword.import', { fg = gui0E, ctermfg = cterm0E, italic = true }) 374 | vim.api.nvim_set_hl(0, '@keyword.type', { link = 'Keyword' }) 375 | vim.api.nvim_set_hl(0, '@keyword.modifier', { link = 'Repeat' }) 376 | vim.api.nvim_set_hl(0, '@keyword.repeat', { link = 'Repeat' }) 377 | vim.api.nvim_set_hl(0, '@keyword.return', { link = 'Keyword' }) 378 | vim.api.nvim_set_hl(0, '@keyword.debug', { link = 'Debug' }) 379 | vim.api.nvim_set_hl(0, '@keyword.exception', { link = 'Exception' }) 380 | vim.api.nvim_set_hl(0, '@keyword.conditional', { link = 'Conditional' }) 381 | vim.api.nvim_set_hl(0, '@keyword.ternary', { link = 'Conditional' }) 382 | vim.api.nvim_set_hl(0, '@keyword.directive', { link = 'PreProc' }) 383 | vim.api.nvim_set_hl(0, '@keyword.directive.define', { link = 'Define' }) 384 | vim.api.nvim_set_hl(0, '@punctuation.delimiter', { link = 'Delimiter' }) 385 | vim.api.nvim_set_hl(0, '@punctuation.bracket', { link = 'Delimiter' }) 386 | vim.api.nvim_set_hl(0, '@punctuation.special', { link = 'Special' }) 387 | vim.api.nvim_set_hl(0, '@comment', { link = 'Comment' }) 388 | vim.api.nvim_set_hl(0, '@comment.documentation', { link = 'Comment' }) 389 | vim.api.nvim_set_hl(0, '@comment.error', { fg = gui08, ctermfg = cterm08, italic = true }) 390 | vim.api.nvim_set_hl(0, '@comment.warning', { fg = gui09, ctermfg = cterm09, italic = true }) 391 | vim.api.nvim_set_hl(0, '@comment.note', { fg = gui0D, ctermfg = cterm0D, italic = true }) 392 | vim.api.nvim_set_hl(0, '@comment.todo', { fg = gui0C, ctermfg = cterm0C, italic = true }) 393 | vim.api.nvim_set_hl(0, '@markup.strong', { bold = true }) 394 | vim.api.nvim_set_hl(0, '@markup.italic', { italic = true }) 395 | vim.api.nvim_set_hl(0, '@markup.strikethrough', { strikethrough = true }) 396 | vim.api.nvim_set_hl(0, '@markup.underline', { underline = true }) 397 | vim.api.nvim_set_hl(0, '@markup.heading', { link = 'Title' }) 398 | vim.api.nvim_set_hl(0, '@markup.quote', { fg = gui0C, ctermfg = cterm0C }) 399 | vim.api.nvim_set_hl(0, '@markup.math', { link = 'Special' }) 400 | vim.api.nvim_set_hl(0, '@markup.link', { fg = gui08, ctermfg = cterm08 }) 401 | vim.api.nvim_set_hl(0, '@markup.link.label', { link = '@markup.link' }) 402 | vim.api.nvim_set_hl(0, '@markup.link.url', { fg = gui09, ctermfg = cterm09 }) 403 | vim.api.nvim_set_hl(0, '@markup.raw', { fg = gui0B, ctermfg = cterm0B }) 404 | vim.api.nvim_set_hl(0, '@markup.raw.block', { link = '@markup.raw' }) 405 | vim.api.nvim_set_hl(0, '@markup.list', { link = 'SpecialChar' }) 406 | vim.api.nvim_set_hl(0, '@markup.list.checked', { link = 'DiagnosticOk' }) 407 | vim.api.nvim_set_hl(0, '@markup.list.unchecked', { link = 'DiagnosticError' }) 408 | vim.api.nvim_set_hl(0, '@diff.plus', { link = 'Added' }) 409 | vim.api.nvim_set_hl(0, '@diff.minus', { link = 'Removed' }) 410 | vim.api.nvim_set_hl(0, '@diff.delta', { link = 'Changed' }) 411 | vim.api.nvim_set_hl(0, '@tag', { link = 'Tag' }) 412 | vim.api.nvim_set_hl(0, '@tag.builtin', { fg = gui09, ctermfg = cterm09, italic = true }) 413 | vim.api.nvim_set_hl(0, '@tag.attribute', { link = 'Special' }) 414 | vim.api.nvim_set_hl(0, '@tag.delimiter', { link = 'Delimiter' }) 415 | 416 | -- LSP 417 | vim.api.nvim_set_hl(0, '@lsp.type.class', { link = '@type' }) 418 | vim.api.nvim_set_hl(0, '@lsp.type.comment', { link = '@comment' }) 419 | vim.api.nvim_set_hl(0, '@lsp.type.decorator', { link = '@attribute' }) 420 | vim.api.nvim_set_hl(0, '@lsp.type.enum', { link = '@type' }) 421 | vim.api.nvim_set_hl(0, '@lsp.type.enumMember', { link = '@constant' }) 422 | vim.api.nvim_set_hl(0, '@lsp.type.event', { link = '@type' }) 423 | vim.api.nvim_set_hl(0, '@lsp.type.function', { link = '@function' }) 424 | vim.api.nvim_set_hl(0, '@lsp.type.interface', { link = '@type' }) 425 | vim.api.nvim_set_hl(0, '@lsp.type.keyword', { link = '@keyword' }) 426 | vim.api.nvim_set_hl(0, '@lsp.type.macro', { link = '@function.macro' }) 427 | vim.api.nvim_set_hl(0, '@lsp.type.method', { link = '@function.method' }) 428 | vim.api.nvim_set_hl(0, '@lsp.type.modifier', { link = '@type.modifier' }) 429 | vim.api.nvim_set_hl(0, '@lsp.type.namespace', { link = '@module' }) 430 | vim.api.nvim_set_hl(0, '@lsp.type.number', { link = '@number' }) 431 | vim.api.nvim_set_hl(0, '@lsp.type.operator', { link = '@operator' }) 432 | vim.api.nvim_set_hl(0, '@lsp.type.parameter', { link = '@variable.parameter' }) 433 | vim.api.nvim_set_hl(0, '@lsp.type.property', { link = '@property' }) 434 | vim.api.nvim_set_hl(0, '@lsp.type.regexp', { link = '@string.regexp' }) 435 | vim.api.nvim_set_hl(0, '@lsp.type.string', { link = '@string' }) 436 | vim.api.nvim_set_hl(0, '@lsp.type.struct', { link = '@type' }) 437 | vim.api.nvim_set_hl(0, '@lsp.type.type', { link = '@type' }) 438 | vim.api.nvim_set_hl(0, '@lsp.type.typeParameter', { link = '@variable.parameter' }) 439 | vim.api.nvim_set_hl(0, '@lsp.type.variable', { link = '@variable' }) 440 | 441 | -- LSP: Rust 442 | vim.api.nvim_set_hl(0, '@lsp.type.builtinType.rust', { link = '@type.builtin' }) 443 | vim.api.nvim_set_hl(0, '@lsp.type.escapeSequence.rust', { link = '@string.escape' }) 444 | vim.api.nvim_set_hl(0, '@lsp.type.formatSpecifier.rust', { link = '@operator' }) 445 | vim.api.nvim_set_hl(0, '@lsp.type.lifetime.rust', { link = '@attribute' }) 446 | vim.api.nvim_set_hl(0, '@lsp.type.punctuation.rust', { link = '@punctuation.delimiter' }) 447 | vim.api.nvim_set_hl(0, '@lsp.type.selfKeyword.rust', { link = '@variable.builtin' }) 448 | vim.api.nvim_set_hl(0, '@lsp.type.selfTypeKeyword.rust', { link = '@type.builtin' }) 449 | vim.api.nvim_set_hl(0, '@lsp.mod.attribute', { italic = true }) 450 | vim.api.nvim_set_hl(0, '@lsp.mod.controlFlow', { link = '@keyword.repeat' }) 451 | vim.api.nvim_set_hl(0, '@lsp.mod.intraDocLink.rust', { link = '@markup.link' }) 452 | vim.api.nvim_set_hl(0, '@lsp.typemod.generic.injected.rust', { link = '@variable' }) 453 | vim.api.nvim_set_hl(0, '@lsp.typemod.operator.controlFlow.rust', { link = '@operator' }) 454 | vim.api.nvim_set_hl(0, '@lsp.typemod.function.associated.rust', { link = '@function.method' }) 455 | 456 | -- LSP: Lua 457 | vim.api.nvim_set_hl(0, '@lsp.typemod.keyword.documentation.lua', { link = '@tag' }) 458 | 459 | -- LSP: Markdown 460 | vim.api.nvim_set_hl(0, '@lsp.type.class.markdown', { link = '@lsp' }) 461 | 462 | -- LSP (non-syntax) 463 | vim.api.nvim_set_hl(0, 'LspReferenceText', { link = 'Search' }) 464 | vim.api.nvim_set_hl(0, 'LspReferenceRead', { fg = gui01, bg = gui14, ctermfg = cterm01, ctermbg = cterm14 }) 465 | vim.api.nvim_set_hl(0, 'LspReferenceWrite', { fg = gui01, bg = gui12, ctermfg = cterm01, ctermbg = cterm12 }) 466 | vim.api.nvim_set_hl(0, 'LspCodeLens', { link = 'NonText' }) 467 | vim.api.nvim_set_hl(0, 'LspCodeLensSeparator', { link = 'LspCodeLens' }) 468 | vim.api.nvim_set_hl(0, 'LspInlayHint', { link = 'NonText' }) 469 | vim.api.nvim_set_hl(0, 'LspSignatureActiveParameter', { link = 'Visual' }) 470 | 471 | -- vim: filetype=lua 472 | -------------------------------------------------------------------------------- /colors/lime.lua: -------------------------------------------------------------------------------- 1 | -- lime scheme by limelier 2 | -- 3 | -- Generated from this template: 4 | -- 5 | -- - base16-nvim (https://github.com/wincent/base16-nvim) 6 | -- by Greg Hurrell (https://github.com/wincent) 7 | -- 8 | -- Template based on: 9 | -- 10 | -- - base16-vim (https://github.com/chriskempson/base16-vim) 11 | -- by Chris Kempson (https://github.com/chriskempson); and its fork: 12 | -- - tinted-vim (https://github.com/tinted-theming/tinted-vim) 13 | -- by the Tinted Theming contributors. 14 | 15 | -- Base16 colors. 16 | local gui00 = "#1a1a2f" 17 | local gui01 = "#202030" 18 | local gui02 = "#2a2a3f" 19 | local gui03 = "#313140" 20 | local gui04 = "#515155" 21 | local gui05 = "#818175" 22 | local gui06 = "#fff2d1" 23 | local gui07 = "#fff8e1" 24 | local gui08 = "#ff662a" 25 | local gui09 = "#ff773a" 26 | local gui0A = "#ffd15e" 27 | local gui0B = "#8cd97c" 28 | local gui0C = "#4cad83" 29 | local gui0D = "#2b926f" 30 | local gui0E = "#1b825f" 31 | local gui0F = "#b4d97c" 32 | 33 | -- Base24 colors. 34 | local gui10 = "#1a1a2f" 35 | local gui11 = "#1a1a2f" 36 | local gui12 = "#ff662a" 37 | local gui13 = "#ffd15e" 38 | local gui14 = "#8cd97c" 39 | local gui15 = "#4cad83" 40 | local gui16 = "#2b926f" 41 | local gui17 = "#1b825f" 42 | 43 | -- Base16 colors. 44 | local cterm00 = 0 45 | local cterm03 = 8 46 | local cterm05 = 7 47 | local cterm07 = 15 48 | local cterm08 = 1 49 | local cterm0A = 3 50 | local cterm0B = 2 51 | local cterm0C = 6 52 | local cterm0D = 4 53 | local cterm0E = 5 54 | local cterm01 = 10 55 | local cterm02 = 11 56 | local cterm04 = 12 57 | local cterm06 = 13 58 | local cterm09 = 9 59 | local cterm0F = 14 60 | 61 | -- Base24 colors. 62 | local cterm10 = cterm00 63 | local cterm11 = cterm00 64 | local cterm12 = 9 65 | local cterm13 = 11 66 | local cterm14 = 10 67 | local cterm15 = 14 68 | local cterm16 = 12 69 | local cterm17 = 13 70 | 71 | vim.cmd [[ 72 | highlight clear 73 | syntax reset 74 | ]] 75 | vim.g.colors_name = "lime" 76 | 77 | -- Vim editor colors 78 | vim.api.nvim_set_hl(0, 'Normal', { fg = gui05, bg = gui00, ctermfg = cterm05, ctermbg = cterm00 }) 79 | vim.api.nvim_set_hl(0, 'Bold', { bold = true }) 80 | vim.api.nvim_set_hl(0, 'Debug', { fg = gui08, ctermfg = cterm08 }) 81 | vim.api.nvim_set_hl(0, 'Directory', { fg = gui0D, ctermfg = cterm0D }) 82 | vim.api.nvim_set_hl(0, 'Error', { fg = gui00, bg = gui08, ctermfg = cterm00, ctermbg = cterm08 }) 83 | vim.api.nvim_set_hl(0, 'ErrorMsg', { fg = gui08, bg = gui00, ctermfg = cterm08, ctermbg = cterm00 }) 84 | vim.api.nvim_set_hl(0, 'Exception', { fg = gui08, ctermfg = cterm08 }) 85 | vim.api.nvim_set_hl(0, 'FoldColumn', { fg = gui0C, bg = gui01, ctermfg = cterm0C, ctermbg = cterm01 }) 86 | vim.api.nvim_set_hl(0, 'Folded', { fg = gui03, bg = gui01, ctermfg = cterm03, ctermbg = cterm01 }) 87 | vim.api.nvim_set_hl(0, 'IncSearch', { fg = gui01, bg = gui09, ctermfg = cterm01, ctermbg = cterm09 }) 88 | vim.api.nvim_set_hl(0, 'Italic', {}) 89 | vim.api.nvim_set_hl(0, 'Macro', { fg = gui08, ctermfg = cterm08 }) 90 | vim.api.nvim_set_hl(0, 'MatchParen', { bg = gui03, ctermbg = cterm03 }) 91 | vim.api.nvim_set_hl(0, 'ModeMsg', { fg = gui0B, ctermfg = cterm0B }) 92 | vim.api.nvim_set_hl(0, 'MoreMsg', { fg = gui0B, ctermfg = cterm0B }) 93 | vim.api.nvim_set_hl(0, 'Question', { fg = gui0D, ctermfg = cterm0D }) 94 | vim.api.nvim_set_hl(0, 'Search', { fg = gui01, bg = gui0A, ctermfg = cterm01, ctermbg = cterm0A }) 95 | vim.api.nvim_set_hl(0, 'Substitute', { fg = gui01, bg = gui0A, ctermfg = cterm01, ctermbg = cterm0A }) 96 | vim.api.nvim_set_hl(0, 'SpecialKey', { fg = gui03, ctermfg = cterm03 }) 97 | vim.api.nvim_set_hl(0, 'TooLong', { fg = gui08, ctermfg = cterm08 }) 98 | vim.api.nvim_set_hl(0, 'Underlined', { fg = gui08, ctermfg = cterm08 }) 99 | vim.api.nvim_set_hl(0, 'Visual', { bg = gui02, ctermbg = cterm02 }) 100 | vim.api.nvim_set_hl(0, 'VisualNOS', { fg = gui08, ctermfg = cterm08 }) 101 | vim.api.nvim_set_hl(0, 'WarningMsg', { fg = gui08, ctermfg = cterm08 }) 102 | vim.api.nvim_set_hl(0, 'WildMenu', { fg = gui08, bg = gui0A, ctermfg = cterm08 }) 103 | vim.api.nvim_set_hl(0, 'Title', { fg = gui0D, ctermfg = cterm0D }) 104 | vim.api.nvim_set_hl(0, 'Conceal', { fg = gui0D, bg = gui00, ctermfg = cterm0D, ctermbg = cterm00 }) 105 | vim.api.nvim_set_hl(0, 'Cursor', { fg = gui00, bg = gui05, ctermfg = cterm00, ctermbg = cterm05 }) 106 | vim.api.nvim_set_hl(0, 'NonText', { fg = gui03, ctermfg = cterm03 }) 107 | vim.api.nvim_set_hl(0, 'LineNr', { fg = gui03, bg = gui01, ctermfg = cterm03, ctermbg = cterm01 }) 108 | vim.api.nvim_set_hl(0, 'SignColumn', { fg = gui03, bg = gui01, ctermfg = cterm03, ctermbg = cterm01 }) 109 | vim.api.nvim_set_hl(0, 'StatusLine', { fg = gui04, bg = gui02, ctermfg = cterm04, ctermbg = cterm02 }) 110 | vim.api.nvim_set_hl(0, 'StatusLineNC', { fg = gui03, bg = gui01, ctermfg = cterm03, ctermbg = cterm01 }) 111 | vim.api.nvim_set_hl(0, 'VertSplit', { fg = gui02, bg = gui02, ctermfg = cterm02, ctermbg = cterm02 }) 112 | vim.api.nvim_set_hl(0, 'ColorColumn', { bg = gui01, ctermbg = cterm01 }) 113 | vim.api.nvim_set_hl(0, 'CursorColumn', { bg = gui01, ctermbg = cterm01 }) 114 | vim.api.nvim_set_hl(0, 'CursorLine', { bg = gui01, ctermbg = cterm01 }) 115 | vim.api.nvim_set_hl(0, 'CursorLineNr', { fg = gui04, bg = gui01, ctermfg = cterm04, ctermbg = cterm01 }) 116 | vim.api.nvim_set_hl(0, 'QuickFixLine', { bg = gui01, ctermbg = cterm01 }) 117 | vim.api.nvim_set_hl(0, 'PMenu', { fg = gui05, bg = gui01, ctermfg = cterm05, ctermbg = cterm01 }) 118 | vim.api.nvim_set_hl(0, 'PMenuSel', { fg = gui01, bg = gui05, ctermfg = cterm01, ctermbg = cterm05 }) 119 | vim.api.nvim_set_hl(0, 'TabLine', { fg = gui03, bg = gui01, ctermfg = cterm03, ctermbg = cterm01 }) 120 | vim.api.nvim_set_hl(0, 'TabLineFill', { fg = gui03, bg = gui01, ctermfg = cterm03, ctermbg = cterm01 }) 121 | vim.api.nvim_set_hl(0, 'TabLineSel', { fg = gui0B, bg = gui01, ctermfg = cterm0B, ctermbg = cterm01 }) 122 | 123 | -- Standard syntax highlighting 124 | vim.api.nvim_set_hl(0, 'Boolean', { fg = gui09, ctermfg = cterm09 }) 125 | vim.api.nvim_set_hl(0, 'Character', { fg = gui08, ctermfg = cterm08 }) 126 | vim.api.nvim_set_hl(0, 'Comment', { fg = gui03, ctermfg = cterm03 }) 127 | vim.api.nvim_set_hl(0, 'Conditional', { fg = gui0E, ctermfg = cterm0E }) 128 | vim.api.nvim_set_hl(0, 'Constant', { fg = gui09, ctermfg = cterm09 }) 129 | vim.api.nvim_set_hl(0, 'Define', { fg = gui0E, ctermfg = cterm0E }) 130 | vim.api.nvim_set_hl(0, 'Delimiter', { fg = gui0F, ctermfg = cterm0F }) 131 | vim.api.nvim_set_hl(0, 'Float', { fg = gui09, ctermfg = cterm09 }) 132 | vim.api.nvim_set_hl(0, 'Function', { fg = gui0D, ctermfg = cterm0D }) 133 | vim.api.nvim_set_hl(0, 'Identifier', { fg = gui08, ctermfg = cterm08 }) 134 | vim.api.nvim_set_hl(0, 'Include', { fg = gui0D, ctermfg = cterm0D }) 135 | vim.api.nvim_set_hl(0, 'Keyword', { fg = gui0E, ctermfg = cterm0E }) 136 | vim.api.nvim_set_hl(0, 'Label', { fg = gui0A, ctermfg = cterm0A }) 137 | vim.api.nvim_set_hl(0, 'Number', { fg = gui09, ctermfg = cterm09 }) 138 | vim.api.nvim_set_hl(0, 'Operator', { fg = gui05, ctermfg = cterm05 }) 139 | vim.api.nvim_set_hl(0, 'PreProc', { fg = gui0A, ctermfg = cterm0A }) 140 | vim.api.nvim_set_hl(0, 'Repeat', { fg = gui0A, ctermfg = cterm0A }) 141 | vim.api.nvim_set_hl(0, 'Special', { fg = gui0C, ctermfg = cterm0C }) 142 | vim.api.nvim_set_hl(0, 'SpecialChar', { fg = gui0F, ctermfg = cterm0F }) 143 | vim.api.nvim_set_hl(0, 'Statement', { fg = gui0E, ctermfg = cterm0E }) 144 | vim.api.nvim_set_hl(0, 'StorageClass', { fg = gui0A, ctermfg = cterm0A }) 145 | vim.api.nvim_set_hl(0, 'String', { fg = gui0B, ctermfg = cterm0B }) 146 | vim.api.nvim_set_hl(0, 'Structure', { fg = gui0E, ctermfg = cterm0E }) 147 | vim.api.nvim_set_hl(0, 'Tag', { fg = gui0A, ctermfg = cterm0A }) 148 | vim.api.nvim_set_hl(0, 'Todo', { fg = gui0A, bg = gui01, ctermfg = cterm0A, ctermbg = cterm01 }) 149 | vim.api.nvim_set_hl(0, 'Type', { fg = gui0A, ctermfg = cterm0A }) 150 | vim.api.nvim_set_hl(0, 'Typedef', { fg = gui0A, ctermfg = cterm0A }) 151 | 152 | -- C highlighting 153 | vim.api.nvim_set_hl(0, 'cOperator', { fg = gui0C, ctermfg = cterm0C }) 154 | vim.api.nvim_set_hl(0, 'cPreCondit', { fg = gui0E, ctermfg = cterm0E }) 155 | 156 | -- C# highlighting 157 | vim.api.nvim_set_hl(0, 'csClass', { fg = gui0A, ctermfg = cterm0A }) 158 | vim.api.nvim_set_hl(0, 'csAttribute', { fg = gui0A, ctermfg = cterm0A }) 159 | vim.api.nvim_set_hl(0, 'csModifier', { fg = gui0E, ctermfg = cterm0E }) 160 | vim.api.nvim_set_hl(0, 'csType', { fg = gui08, ctermfg = cterm08 }) 161 | vim.api.nvim_set_hl(0, 'csUnspecifiedStatement', { fg = gui0D, ctermfg = cterm0D }) 162 | vim.api.nvim_set_hl(0, 'csContextualStatement', { fg = gui0E, ctermfg = cterm0E }) 163 | vim.api.nvim_set_hl(0, 'csNewDecleration', { fg = gui08, ctermfg = cterm08 }) 164 | 165 | -- CSS highlighting 166 | vim.api.nvim_set_hl(0, 'cssBraces', { fg = gui05, ctermfg = cterm05 }) 167 | vim.api.nvim_set_hl(0, 'cssClassName', { fg = gui0E, ctermfg = cterm0E }) 168 | vim.api.nvim_set_hl(0, 'cssColor', { fg = gui0C, ctermfg = cterm0C }) 169 | 170 | -- Diff highlighting 171 | vim.api.nvim_set_hl(0, 'DiffAdd', { fg = gui0B, bg = gui01, ctermfg = cterm0B, ctermbg = cterm01 }) 172 | vim.api.nvim_set_hl(0, 'DiffChange', { fg = gui03, bg = gui01, ctermfg = cterm03, ctermbg = cterm01 }) 173 | vim.api.nvim_set_hl(0, 'DiffDelete', { fg = gui08, bg = gui01, ctermfg = cterm08, ctermbg = cterm01 }) 174 | vim.api.nvim_set_hl(0, 'DiffText', { fg = gui0D, bg = gui01, ctermfg = cterm0D, ctermbg = cterm01 }) 175 | vim.api.nvim_set_hl(0, 'DiffAdded', { fg = gui0B, bg = gui00, ctermfg = cterm0B, ctermbg = cterm00 }) 176 | vim.api.nvim_set_hl(0, 'DiffFile', { fg = gui08, bg = gui00, ctermfg = cterm08, ctermbg = cterm00 }) 177 | vim.api.nvim_set_hl(0, 'DiffNewFile', { fg = gui0B, bg = gui00, ctermfg = cterm0B, ctermbg = cterm00 }) 178 | vim.api.nvim_set_hl(0, 'DiffLine', { fg = gui0D, bg = gui00, ctermfg = cterm0D, ctermbg = cterm00 }) 179 | vim.api.nvim_set_hl(0, 'DiffRemoved', { fg = gui08, bg = gui00, ctermfg = cterm08, ctermbg = cterm00 }) 180 | 181 | -- Git highlighting 182 | vim.api.nvim_set_hl(0, 'gitcommitOverflow', { fg = gui08, ctermfg = cterm08 }) 183 | vim.api.nvim_set_hl(0, 'gitcommitSummary', { fg = gui0B, ctermfg = cterm0B }) 184 | vim.api.nvim_set_hl(0, 'gitcommitComment', { fg = gui03, ctermfg = cterm03 }) 185 | vim.api.nvim_set_hl(0, 'gitcommitUntracked', { fg = gui03, ctermfg = cterm03 }) 186 | vim.api.nvim_set_hl(0, 'gitcommitDiscarded', { fg = gui03, ctermfg = cterm03 }) 187 | vim.api.nvim_set_hl(0, 'gitcommitSelected', { fg = gui03, ctermfg = cterm03 }) 188 | vim.api.nvim_set_hl(0, 'gitcommitHeader', { fg = gui0E, ctermfg = cterm0E }) 189 | vim.api.nvim_set_hl(0, 'gitcommitSelectedType', { fg = gui0D, ctermfg = cterm0D }) 190 | vim.api.nvim_set_hl(0, 'gitcommitUnmergedType', { fg = gui0D, ctermfg = cterm0D }) 191 | vim.api.nvim_set_hl(0, 'gitcommitDiscardedType', { fg = gui0D, ctermfg = cterm0D }) 192 | vim.api.nvim_set_hl(0, 'gitcommitBranch', { fg = gui09, ctermfg = cterm09, bold = true }) 193 | vim.api.nvim_set_hl(0, 'gitcommitUntrackedFile', { fg = gui0A, ctermfg = cterm0A }) 194 | vim.api.nvim_set_hl(0, 'gitcommitUnmergedFile', { fg = gui08, ctermfg = cterm08, bold = true }) 195 | vim.api.nvim_set_hl(0, 'gitcommitDiscardedFile', { fg = gui08, ctermfg = cterm08, bold = true }) 196 | vim.api.nvim_set_hl(0, 'gitcommitSelectedFile', { fg = gui0B, ctermfg = cterm0B, bold = true }) 197 | 198 | -- GitGutter highlighting 199 | vim.api.nvim_set_hl(0, 'GitGutterAdd', { fg = gui0B, bg = gui01, ctermfg = cterm0B, ctermbg = cterm01 }) 200 | vim.api.nvim_set_hl(0, 'GitGutterChange', { fg = gui0D, bg = gui01, ctermfg = cterm0D, ctermbg = cterm01 }) 201 | vim.api.nvim_set_hl(0, 'GitGutterDelete', { fg = gui08, bg = gui01, ctermfg = cterm08, ctermbg = cterm01 }) 202 | vim.api.nvim_set_hl(0, 'GitGutterChangeDelete', { fg = gui0E, bg = gui01, ctermfg = cterm0E, ctermbg = cterm01 }) 203 | 204 | -- HTML highlighting 205 | vim.api.nvim_set_hl(0, 'htmlBold', { fg = gui0A, ctermfg = cterm0A }) 206 | vim.api.nvim_set_hl(0, 'htmlItalic', { fg = gui0E, ctermfg = cterm0E }) 207 | vim.api.nvim_set_hl(0, 'htmlEndTag', { fg = gui05, ctermfg = cterm05 }) 208 | vim.api.nvim_set_hl(0, 'htmlTag', { fg = gui05, ctermfg = cterm05 }) 209 | 210 | -- JavaScript highlighting 211 | vim.api.nvim_set_hl(0, 'javaScript', { fg = gui05, ctermfg = cterm05 }) 212 | vim.api.nvim_set_hl(0, 'javaScriptBraces', { fg = gui05, ctermfg = cterm05 }) 213 | vim.api.nvim_set_hl(0, 'javaScriptNumber', { fg = gui09, ctermfg = cterm09 }) 214 | 215 | -- pangloss/vim-javascript highlighting 216 | vim.api.nvim_set_hl(0, 'jsOperator', { fg = gui0D, ctermfg = cterm0D }) 217 | vim.api.nvim_set_hl(0, 'jsStatement', { fg = gui0E, ctermfg = cterm0E }) 218 | vim.api.nvim_set_hl(0, 'jsReturn', { fg = gui0E, ctermfg = cterm0E }) 219 | vim.api.nvim_set_hl(0, 'jsThis', { fg = gui08, ctermfg = cterm08 }) 220 | vim.api.nvim_set_hl(0, 'jsClassDefinition', { fg = gui0A, ctermfg = cterm0A }) 221 | vim.api.nvim_set_hl(0, 'jsFunction', { fg = gui0E, ctermfg = cterm0E }) 222 | vim.api.nvim_set_hl(0, 'jsFuncName', { fg = gui0D, ctermfg = cterm0D }) 223 | vim.api.nvim_set_hl(0, 'jsFuncCall', { fg = gui0D, ctermfg = cterm0D }) 224 | vim.api.nvim_set_hl(0, 'jsClassFuncName', { fg = gui0D, ctermfg = cterm0D }) 225 | vim.api.nvim_set_hl(0, 'jsClassMethodType', { fg = gui0E, ctermfg = cterm0E }) 226 | vim.api.nvim_set_hl(0, 'jsRegexpString', { fg = gui0C, ctermfg = cterm0C }) 227 | vim.api.nvim_set_hl(0, 'jsGlobalObjects', { fg = gui0A, ctermfg = cterm0A }) 228 | vim.api.nvim_set_hl(0, 'jsGlobalNodeObjects', { fg = gui0A, ctermfg = cterm0A }) 229 | vim.api.nvim_set_hl(0, 'jsExceptions', { fg = gui0A, ctermfg = cterm0A }) 230 | vim.api.nvim_set_hl(0, 'jsBuiltins', { fg = gui0A, ctermfg = cterm0A }) 231 | 232 | -- Diagnostics (legacy). 233 | vim.api.nvim_set_hl(0, 'LspDiagnosticsDefaultError', { fg = gui08, ctermfg = cterm08 }) 234 | vim.api.nvim_set_hl(0, 'LspDiagnosticsDefaultWarning', { fg = gui09, ctermfg = cterm09 }) 235 | vim.api.nvim_set_hl(0, 'LspDiagnosticsDefaultInformation', { fg = gui0C, ctermfg = cterm0C }) 236 | vim.api.nvim_set_hl(0, 'LspDiagnosticsDefaultHint', { fg = gui0D, ctermfg = cterm0D }) 237 | 238 | -- Diagnostics (modern). 239 | vim.api.nvim_set_hl(0, 'DiagnosticError', { fg = gui08, ctermfg = cterm08 }) 240 | vim.api.nvim_set_hl(0, 'DiagnosticWarn', { fg = gui09, ctermfg = cterm09 }) 241 | vim.api.nvim_set_hl(0, 'DiagnosticInfo', { fg = gui0C, ctermfg = cterm0C }) 242 | vim.api.nvim_set_hl(0, 'DiagnosticHint', { fg = gui0D, ctermfg = cterm0D }) 243 | vim.api.nvim_set_hl(0, 'DiagnosticOk', { fg = gui0B, ctermfg = cterm0B }) 244 | vim.api.nvim_set_hl(0, 'DiagnosticUnderlineError', { ctermfg = cterm00, ctermbg = cterm08, underline = true, sp = gui08 }) 245 | vim.api.nvim_set_hl(0, 'DiagnosticUnderlineWarn', { ctermfg = cterm00, ctermbg = cterm09, underline = true, sp = gui09 }) 246 | vim.api.nvim_set_hl(0, 'DiagnosticUnderlineInfo', { ctermfg = cterm00, ctermbg = cterm0C, underline = true, sp = gui0C }) 247 | vim.api.nvim_set_hl(0, 'DiagnosticUnderlineHint', { ctermfg = cterm00, ctermbg = cterm0D, underline = true, sp = gui0D }) 248 | vim.api.nvim_set_hl(0, 'DiagnosticUnderlineOk', { ctermfg = cterm00, ctermbg = cterm0B, underline = true, sp = gui0B }) 249 | vim.api.nvim_set_hl(0, 'DiagnosticFloatingError', { fg = gui08, bg = gui01, ctermfg = cterm08, ctermbg = cterm01 }) 250 | vim.api.nvim_set_hl(0, 'DiagnosticFloatingWarn', { fg = gui09, bg = gui01, ctermfg = cterm09, ctermbg = cterm01 }) 251 | vim.api.nvim_set_hl(0, 'DiagnosticFloatingInfo', { fg = gui0C, bg = gui01, ctermfg = cterm0C, ctermbg = cterm01 }) 252 | vim.api.nvim_set_hl(0, 'DiagnosticFloatingHint', { fg = gui0D, bg = gui01, ctermfg = cterm0D, ctermbg = cterm01 }) 253 | vim.api.nvim_set_hl(0, 'DiagnosticFloatingOk', { fg = gui0B, bg = gui01, ctermfg = cterm0B, ctermbg = cterm01 }) 254 | vim.api.nvim_set_hl(0, 'DiagnosticDeprecated', { ctermfg = cterm0F, ctermbg = cterm0F, strikethrough = true }) 255 | vim.api.nvim_set_hl(0, 'DiagnosticUnnecessary', { link = 'Comment' }) 256 | 257 | -- Mail highlighting 258 | vim.api.nvim_set_hl(0, 'mailQuoted1', { fg = gui0A, ctermfg = cterm0A }) 259 | vim.api.nvim_set_hl(0, 'mailQuoted2', { fg = gui0B, ctermfg = cterm0B }) 260 | vim.api.nvim_set_hl(0, 'mailQuoted3', { fg = gui0E, ctermfg = cterm0E }) 261 | vim.api.nvim_set_hl(0, 'mailQuoted4', { fg = gui0C, ctermfg = cterm0C }) 262 | vim.api.nvim_set_hl(0, 'mailQuoted5', { fg = gui0D, ctermfg = cterm0D }) 263 | vim.api.nvim_set_hl(0, 'mailQuoted6', { fg = gui0A, ctermfg = cterm0A }) 264 | vim.api.nvim_set_hl(0, 'mailURL', { fg = gui0D, ctermfg = cterm0D }) 265 | vim.api.nvim_set_hl(0, 'mailEmail', { fg = gui0D, ctermfg = cterm0D }) 266 | 267 | -- Markdown highlighting 268 | vim.api.nvim_set_hl(0, 'markdownCode', { fg = gui0B, ctermfg = cterm0B }) 269 | vim.api.nvim_set_hl(0, 'markdownError', { fg = gui05, bg = gui00, ctermfg = cterm05, ctermbg = cterm00 }) 270 | vim.api.nvim_set_hl(0, 'markdownCodeBlock', { fg = gui0B, ctermfg = cterm0B }) 271 | vim.api.nvim_set_hl(0, 'markdownHeadingDelimiter', { fg = gui0D, ctermfg = cterm0D }) 272 | 273 | -- NERDTree highlighting 274 | vim.api.nvim_set_hl(0, 'NERDTreeDirSlash', { fg = gui0D, ctermfg = cterm0D }) 275 | vim.api.nvim_set_hl(0, 'NERDTreeExecFile', { fg = gui05, ctermfg = cterm05 }) 276 | 277 | -- PHP highlighting 278 | vim.api.nvim_set_hl(0, 'phpMemberSelector', { fg = gui05, ctermfg = cterm05 }) 279 | vim.api.nvim_set_hl(0, 'phpComparison', { fg = gui05, ctermfg = cterm05 }) 280 | vim.api.nvim_set_hl(0, 'phpParent', { fg = gui05, ctermfg = cterm05 }) 281 | vim.api.nvim_set_hl(0, 'phpMethodsVar', { fg = gui0C, ctermfg = cterm0C }) 282 | 283 | -- Python highlighting 284 | vim.api.nvim_set_hl(0, 'pythonOperator', { fg = gui0E, ctermfg = cterm0E }) 285 | vim.api.nvim_set_hl(0, 'pythonRepeat', { fg = gui0E, ctermfg = cterm0E }) 286 | vim.api.nvim_set_hl(0, 'pythonInclude', { fg = gui0E, ctermfg = cterm0E }) 287 | vim.api.nvim_set_hl(0, 'pythonStatement', { fg = gui0E, ctermfg = cterm0E }) 288 | 289 | -- Ruby highlighting 290 | vim.api.nvim_set_hl(0, 'rubyAttribute', { fg = gui0D, ctermfg = cterm0D }) 291 | vim.api.nvim_set_hl(0, 'rubyConstant', { fg = gui0A, ctermfg = cterm0A }) 292 | vim.api.nvim_set_hl(0, 'rubyInterpolationDelimiter', { fg = gui0F, ctermfg = cterm0F }) 293 | vim.api.nvim_set_hl(0, 'rubyRegexp', { fg = gui0C, ctermfg = cterm0C }) 294 | vim.api.nvim_set_hl(0, 'rubySymbol', { fg = gui0B, ctermfg = cterm0B }) 295 | vim.api.nvim_set_hl(0, 'rubyStringDelimiter', { fg = gui0B, ctermfg = cterm0B }) 296 | 297 | -- SASS highlighting 298 | vim.api.nvim_set_hl(0, 'sassidChar', { fg = gui08, ctermfg = cterm08 }) 299 | vim.api.nvim_set_hl(0, 'sassClassChar', { fg = gui09, ctermfg = cterm09 }) 300 | vim.api.nvim_set_hl(0, 'sassInclude', { fg = gui0E, ctermfg = cterm0E }) 301 | vim.api.nvim_set_hl(0, 'sassMixing', { fg = gui0E, ctermfg = cterm0E }) 302 | vim.api.nvim_set_hl(0, 'sassMixinName', { fg = gui0D, ctermfg = cterm0D }) 303 | 304 | -- Signify highlighting 305 | vim.api.nvim_set_hl(0, 'SignifySignAdd', { fg = gui0B, bg = gui01, ctermfg = cterm0B, ctermbg = cterm01 }) 306 | vim.api.nvim_set_hl(0, 'SignifySignChange', { fg = gui0D, bg = gui01, ctermfg = cterm0D, ctermbg = cterm01 }) 307 | vim.api.nvim_set_hl(0, 'SignifySignDelete', { fg = gui08, bg = gui01, ctermfg = cterm08, ctermbg = cterm01 }) 308 | 309 | -- Spelling highlighting 310 | vim.api.nvim_set_hl(0, 'SpellBad', { undercurl = true }) 311 | vim.api.nvim_set_hl(0, 'SpellLocal', { undercurl = true }) 312 | vim.api.nvim_set_hl(0, 'SpellCap', { undercurl = true }) 313 | vim.api.nvim_set_hl(0, 'SpellRare', { undercurl = true }) 314 | 315 | -- Startify highlighting 316 | vim.api.nvim_set_hl(0, 'StartifyBracket', { fg = gui03, ctermfg = cterm03 }) 317 | vim.api.nvim_set_hl(0, 'StartifyFile', { fg = gui07, ctermfg = cterm07 }) 318 | vim.api.nvim_set_hl(0, 'StartifyFooter', { fg = gui03, ctermfg = cterm03 }) 319 | vim.api.nvim_set_hl(0, 'StartifyHeader', { fg = gui0B, ctermfg = cterm0B }) 320 | vim.api.nvim_set_hl(0, 'StartifyNumber', { fg = gui09, ctermfg = cterm09 }) 321 | vim.api.nvim_set_hl(0, 'StartifyPath', { fg = gui03, ctermfg = cterm03 }) 322 | vim.api.nvim_set_hl(0, 'StartifySection', { fg = gui0E, ctermfg = cterm0E }) 323 | vim.api.nvim_set_hl(0, 'StartifySelect', { fg = gui0C, ctermfg = cterm0C }) 324 | vim.api.nvim_set_hl(0, 'StartifySlash', { fg = gui03, ctermfg = cterm03 }) 325 | vim.api.nvim_set_hl(0, 'StartifySpecial', { fg = gui03, ctermfg = cterm03 }) 326 | 327 | -- Java highlighting 328 | vim.api.nvim_set_hl(0, 'javaOperator', { fg = gui0D, ctermfg = cterm0D }) 329 | 330 | -- Treesitter 331 | vim.api.nvim_set_hl(0, '@variable', { link = 'Identifier' }) 332 | vim.api.nvim_set_hl(0, '@variable.builtin', { fg = gui05, ctermfg = cterm05, italic = true }) 333 | vim.api.nvim_set_hl(0, '@variable.parameter', { link = 'Identifier' }) 334 | vim.api.nvim_set_hl(0, '@variable.parameter.builtin', { link = '@variable.builtin' }) 335 | vim.api.nvim_set_hl(0, '@variable.member', { fg = gui04, ctermfg = cterm04 }) 336 | vim.api.nvim_set_hl(0, '@constant', { link = 'Constant' }) 337 | vim.api.nvim_set_hl(0, '@constant.builtin', { fg = gui09, ctermfg = cterm09, italic = true }) 338 | vim.api.nvim_set_hl(0, '@constant.macro', { link = 'Constant' }) 339 | vim.api.nvim_set_hl(0, '@module', { link = 'Identifier' }) 340 | vim.api.nvim_set_hl(0, '@module.builtin', { fg = gui05, ctermfg = cterm05, italic = true }) 341 | vim.api.nvim_set_hl(0, '@label', { link = 'Tag' }) 342 | vim.api.nvim_set_hl(0, '@string', { link = 'String' }) 343 | vim.api.nvim_set_hl(0, '@string.documentation', { link = 'String' }) 344 | vim.api.nvim_set_hl(0, '@string.regexp', { link = 'SpecialComment' }) 345 | vim.api.nvim_set_hl(0, '@string.escape', { link = 'SpecialComment' }) 346 | vim.api.nvim_set_hl(0, '@string.special', { link = 'SpecialComment' }) 347 | vim.api.nvim_set_hl(0, '@string.special.symbol', { link = 'SpecialComment' }) 348 | vim.api.nvim_set_hl(0, '@string.special.path', { fg = gui0D, ctermfg = cterm0D, italic = true }) 349 | vim.api.nvim_set_hl(0, '@string.special.url', { fg = gui08, ctermfg = cterm08, italic = true }) 350 | vim.api.nvim_set_hl(0, '@character', { link = 'Character' }) 351 | vim.api.nvim_set_hl(0, '@character.special', { link = 'SpecialChar' }) 352 | vim.api.nvim_set_hl(0, '@boolean', { link = 'Boolean' }) 353 | vim.api.nvim_set_hl(0, '@number', { link = 'Number' }) 354 | vim.api.nvim_set_hl(0, '@number.float', { link = 'Float' }) 355 | vim.api.nvim_set_hl(0, '@type', { link = 'Type' }) 356 | vim.api.nvim_set_hl(0, '@type.builtin', { fg = gui0A, ctermfg = cterm0A, italic = true }) 357 | vim.api.nvim_set_hl(0, '@type.definition', { link = 'Typedef' }) 358 | vim.api.nvim_set_hl(0, '@attribute', { link = 'Special' }) 359 | vim.api.nvim_set_hl(0, '@attribute.builtin', { fg = gui0C, ctermfg = cterm0C, italic = true }) 360 | vim.api.nvim_set_hl(0, '@property', { link = '@variable.member' }) 361 | vim.api.nvim_set_hl(0, '@function', { fg = gui16, ctermfg = cterm16 }) 362 | vim.api.nvim_set_hl(0, '@function.builtin', { fg = gui16, ctermfg = cterm16, italic = true }) 363 | vim.api.nvim_set_hl(0, '@function.call', { link = '@function' }) 364 | vim.api.nvim_set_hl(0, '@function.macro', { link = 'Macro' }) 365 | vim.api.nvim_set_hl(0, '@function.method', { link = 'Function' }) 366 | vim.api.nvim_set_hl(0, '@function.method.call', { link = '@function.method' }) 367 | vim.api.nvim_set_hl(0, '@constructor', { fg = gui0D, ctermfg = cterm0D, bold = true }) 368 | vim.api.nvim_set_hl(0, '@operator', { link = 'Operator' }) 369 | vim.api.nvim_set_hl(0, '@keyword', { link = 'Keyword' }) 370 | vim.api.nvim_set_hl(0, '@keyword.coroutine', { link = 'Repeat' }) 371 | vim.api.nvim_set_hl(0, '@keyword.function', { link = 'Keyword' }) 372 | vim.api.nvim_set_hl(0, '@keyword.operator', { link = 'Operator' }) 373 | vim.api.nvim_set_hl(0, '@keyword.import', { fg = gui0E, ctermfg = cterm0E, italic = true }) 374 | vim.api.nvim_set_hl(0, '@keyword.type', { link = 'Keyword' }) 375 | vim.api.nvim_set_hl(0, '@keyword.modifier', { link = 'Repeat' }) 376 | vim.api.nvim_set_hl(0, '@keyword.repeat', { link = 'Repeat' }) 377 | vim.api.nvim_set_hl(0, '@keyword.return', { link = 'Keyword' }) 378 | vim.api.nvim_set_hl(0, '@keyword.debug', { link = 'Debug' }) 379 | vim.api.nvim_set_hl(0, '@keyword.exception', { link = 'Exception' }) 380 | vim.api.nvim_set_hl(0, '@keyword.conditional', { link = 'Conditional' }) 381 | vim.api.nvim_set_hl(0, '@keyword.ternary', { link = 'Conditional' }) 382 | vim.api.nvim_set_hl(0, '@keyword.directive', { link = 'PreProc' }) 383 | vim.api.nvim_set_hl(0, '@keyword.directive.define', { link = 'Define' }) 384 | vim.api.nvim_set_hl(0, '@punctuation.delimiter', { link = 'Delimiter' }) 385 | vim.api.nvim_set_hl(0, '@punctuation.bracket', { link = 'Delimiter' }) 386 | vim.api.nvim_set_hl(0, '@punctuation.special', { link = 'Special' }) 387 | vim.api.nvim_set_hl(0, '@comment', { link = 'Comment' }) 388 | vim.api.nvim_set_hl(0, '@comment.documentation', { link = 'Comment' }) 389 | vim.api.nvim_set_hl(0, '@comment.error', { fg = gui08, ctermfg = cterm08, italic = true }) 390 | vim.api.nvim_set_hl(0, '@comment.warning', { fg = gui09, ctermfg = cterm09, italic = true }) 391 | vim.api.nvim_set_hl(0, '@comment.note', { fg = gui0D, ctermfg = cterm0D, italic = true }) 392 | vim.api.nvim_set_hl(0, '@comment.todo', { fg = gui0C, ctermfg = cterm0C, italic = true }) 393 | vim.api.nvim_set_hl(0, '@markup.strong', { bold = true }) 394 | vim.api.nvim_set_hl(0, '@markup.italic', { italic = true }) 395 | vim.api.nvim_set_hl(0, '@markup.strikethrough', { strikethrough = true }) 396 | vim.api.nvim_set_hl(0, '@markup.underline', { underline = true }) 397 | vim.api.nvim_set_hl(0, '@markup.heading', { link = 'Title' }) 398 | vim.api.nvim_set_hl(0, '@markup.quote', { fg = gui0C, ctermfg = cterm0C }) 399 | vim.api.nvim_set_hl(0, '@markup.math', { link = 'Special' }) 400 | vim.api.nvim_set_hl(0, '@markup.link', { fg = gui08, ctermfg = cterm08 }) 401 | vim.api.nvim_set_hl(0, '@markup.link.label', { link = '@markup.link' }) 402 | vim.api.nvim_set_hl(0, '@markup.link.url', { fg = gui09, ctermfg = cterm09 }) 403 | vim.api.nvim_set_hl(0, '@markup.raw', { fg = gui0B, ctermfg = cterm0B }) 404 | vim.api.nvim_set_hl(0, '@markup.raw.block', { link = '@markup.raw' }) 405 | vim.api.nvim_set_hl(0, '@markup.list', { link = 'SpecialChar' }) 406 | vim.api.nvim_set_hl(0, '@markup.list.checked', { link = 'DiagnosticOk' }) 407 | vim.api.nvim_set_hl(0, '@markup.list.unchecked', { link = 'DiagnosticError' }) 408 | vim.api.nvim_set_hl(0, '@diff.plus', { link = 'Added' }) 409 | vim.api.nvim_set_hl(0, '@diff.minus', { link = 'Removed' }) 410 | vim.api.nvim_set_hl(0, '@diff.delta', { link = 'Changed' }) 411 | vim.api.nvim_set_hl(0, '@tag', { link = 'Tag' }) 412 | vim.api.nvim_set_hl(0, '@tag.builtin', { fg = gui09, ctermfg = cterm09, italic = true }) 413 | vim.api.nvim_set_hl(0, '@tag.attribute', { link = 'Special' }) 414 | vim.api.nvim_set_hl(0, '@tag.delimiter', { link = 'Delimiter' }) 415 | 416 | -- LSP 417 | vim.api.nvim_set_hl(0, '@lsp.type.class', { link = '@type' }) 418 | vim.api.nvim_set_hl(0, '@lsp.type.comment', { link = '@comment' }) 419 | vim.api.nvim_set_hl(0, '@lsp.type.decorator', { link = '@attribute' }) 420 | vim.api.nvim_set_hl(0, '@lsp.type.enum', { link = '@type' }) 421 | vim.api.nvim_set_hl(0, '@lsp.type.enumMember', { link = '@constant' }) 422 | vim.api.nvim_set_hl(0, '@lsp.type.event', { link = '@type' }) 423 | vim.api.nvim_set_hl(0, '@lsp.type.function', { link = '@function' }) 424 | vim.api.nvim_set_hl(0, '@lsp.type.interface', { link = '@type' }) 425 | vim.api.nvim_set_hl(0, '@lsp.type.keyword', { link = '@keyword' }) 426 | vim.api.nvim_set_hl(0, '@lsp.type.macro', { link = '@function.macro' }) 427 | vim.api.nvim_set_hl(0, '@lsp.type.method', { link = '@function.method' }) 428 | vim.api.nvim_set_hl(0, '@lsp.type.modifier', { link = '@type.modifier' }) 429 | vim.api.nvim_set_hl(0, '@lsp.type.namespace', { link = '@module' }) 430 | vim.api.nvim_set_hl(0, '@lsp.type.number', { link = '@number' }) 431 | vim.api.nvim_set_hl(0, '@lsp.type.operator', { link = '@operator' }) 432 | vim.api.nvim_set_hl(0, '@lsp.type.parameter', { link = '@variable.parameter' }) 433 | vim.api.nvim_set_hl(0, '@lsp.type.property', { link = '@property' }) 434 | vim.api.nvim_set_hl(0, '@lsp.type.regexp', { link = '@string.regexp' }) 435 | vim.api.nvim_set_hl(0, '@lsp.type.string', { link = '@string' }) 436 | vim.api.nvim_set_hl(0, '@lsp.type.struct', { link = '@type' }) 437 | vim.api.nvim_set_hl(0, '@lsp.type.type', { link = '@type' }) 438 | vim.api.nvim_set_hl(0, '@lsp.type.typeParameter', { link = '@variable.parameter' }) 439 | vim.api.nvim_set_hl(0, '@lsp.type.variable', { link = '@variable' }) 440 | 441 | -- LSP: Rust 442 | vim.api.nvim_set_hl(0, '@lsp.type.builtinType.rust', { link = '@type.builtin' }) 443 | vim.api.nvim_set_hl(0, '@lsp.type.escapeSequence.rust', { link = '@string.escape' }) 444 | vim.api.nvim_set_hl(0, '@lsp.type.formatSpecifier.rust', { link = '@operator' }) 445 | vim.api.nvim_set_hl(0, '@lsp.type.lifetime.rust', { link = '@attribute' }) 446 | vim.api.nvim_set_hl(0, '@lsp.type.punctuation.rust', { link = '@punctuation.delimiter' }) 447 | vim.api.nvim_set_hl(0, '@lsp.type.selfKeyword.rust', { link = '@variable.builtin' }) 448 | vim.api.nvim_set_hl(0, '@lsp.type.selfTypeKeyword.rust', { link = '@type.builtin' }) 449 | vim.api.nvim_set_hl(0, '@lsp.mod.attribute', { italic = true }) 450 | vim.api.nvim_set_hl(0, '@lsp.mod.controlFlow', { link = '@keyword.repeat' }) 451 | vim.api.nvim_set_hl(0, '@lsp.mod.intraDocLink.rust', { link = '@markup.link' }) 452 | vim.api.nvim_set_hl(0, '@lsp.typemod.generic.injected.rust', { link = '@variable' }) 453 | vim.api.nvim_set_hl(0, '@lsp.typemod.operator.controlFlow.rust', { link = '@operator' }) 454 | vim.api.nvim_set_hl(0, '@lsp.typemod.function.associated.rust', { link = '@function.method' }) 455 | 456 | -- LSP: Lua 457 | vim.api.nvim_set_hl(0, '@lsp.typemod.keyword.documentation.lua', { link = '@tag' }) 458 | 459 | -- LSP: Markdown 460 | vim.api.nvim_set_hl(0, '@lsp.type.class.markdown', { link = '@lsp' }) 461 | 462 | -- LSP (non-syntax) 463 | vim.api.nvim_set_hl(0, 'LspReferenceText', { link = 'Search' }) 464 | vim.api.nvim_set_hl(0, 'LspReferenceRead', { fg = gui01, bg = gui14, ctermfg = cterm01, ctermbg = cterm14 }) 465 | vim.api.nvim_set_hl(0, 'LspReferenceWrite', { fg = gui01, bg = gui12, ctermfg = cterm01, ctermbg = cterm12 }) 466 | vim.api.nvim_set_hl(0, 'LspCodeLens', { link = 'NonText' }) 467 | vim.api.nvim_set_hl(0, 'LspCodeLensSeparator', { link = 'LspCodeLens' }) 468 | vim.api.nvim_set_hl(0, 'LspInlayHint', { link = 'NonText' }) 469 | vim.api.nvim_set_hl(0, 'LspSignatureActiveParameter', { link = 'Visual' }) 470 | 471 | -- vim: filetype=lua 472 | -------------------------------------------------------------------------------- /colors/materia.lua: -------------------------------------------------------------------------------- 1 | -- Materia scheme by Defman21 2 | -- 3 | -- Generated from this template: 4 | -- 5 | -- - base16-nvim (https://github.com/wincent/base16-nvim) 6 | -- by Greg Hurrell (https://github.com/wincent) 7 | -- 8 | -- Template based on: 9 | -- 10 | -- - base16-vim (https://github.com/chriskempson/base16-vim) 11 | -- by Chris Kempson (https://github.com/chriskempson); and its fork: 12 | -- - tinted-vim (https://github.com/tinted-theming/tinted-vim) 13 | -- by the Tinted Theming contributors. 14 | 15 | -- Base16 colors. 16 | local gui00 = "#263238" 17 | local gui01 = "#2C393F" 18 | local gui02 = "#37474F" 19 | local gui03 = "#707880" 20 | local gui04 = "#C9CCD3" 21 | local gui05 = "#CDD3DE" 22 | local gui06 = "#D5DBE5" 23 | local gui07 = "#FFFFFF" 24 | local gui08 = "#EC5F67" 25 | local gui09 = "#EA9560" 26 | local gui0A = "#FFCC00" 27 | local gui0B = "#8BD649" 28 | local gui0C = "#80CBC4" 29 | local gui0D = "#89DDFF" 30 | local gui0E = "#82AAFF" 31 | local gui0F = "#EC5F67" 32 | 33 | -- Base24 colors. 34 | local gui10 = "#263238" 35 | local gui11 = "#263238" 36 | local gui12 = "#EC5F67" 37 | local gui13 = "#FFCC00" 38 | local gui14 = "#8BD649" 39 | local gui15 = "#80CBC4" 40 | local gui16 = "#89DDFF" 41 | local gui17 = "#82AAFF" 42 | 43 | -- Base16 colors. 44 | local cterm00 = 0 45 | local cterm03 = 8 46 | local cterm05 = 7 47 | local cterm07 = 15 48 | local cterm08 = 1 49 | local cterm0A = 3 50 | local cterm0B = 2 51 | local cterm0C = 6 52 | local cterm0D = 4 53 | local cterm0E = 5 54 | local cterm01 = 10 55 | local cterm02 = 11 56 | local cterm04 = 12 57 | local cterm06 = 13 58 | local cterm09 = 9 59 | local cterm0F = 14 60 | 61 | -- Base24 colors. 62 | local cterm10 = cterm00 63 | local cterm11 = cterm00 64 | local cterm12 = 9 65 | local cterm13 = 11 66 | local cterm14 = 10 67 | local cterm15 = 14 68 | local cterm16 = 12 69 | local cterm17 = 13 70 | 71 | vim.cmd [[ 72 | highlight clear 73 | syntax reset 74 | ]] 75 | vim.g.colors_name = "materia" 76 | 77 | -- Vim editor colors 78 | vim.api.nvim_set_hl(0, 'Normal', { fg = gui05, bg = gui00, ctermfg = cterm05, ctermbg = cterm00 }) 79 | vim.api.nvim_set_hl(0, 'Bold', { bold = true }) 80 | vim.api.nvim_set_hl(0, 'Debug', { fg = gui08, ctermfg = cterm08 }) 81 | vim.api.nvim_set_hl(0, 'Directory', { fg = gui0D, ctermfg = cterm0D }) 82 | vim.api.nvim_set_hl(0, 'Error', { fg = gui00, bg = gui08, ctermfg = cterm00, ctermbg = cterm08 }) 83 | vim.api.nvim_set_hl(0, 'ErrorMsg', { fg = gui08, bg = gui00, ctermfg = cterm08, ctermbg = cterm00 }) 84 | vim.api.nvim_set_hl(0, 'Exception', { fg = gui08, ctermfg = cterm08 }) 85 | vim.api.nvim_set_hl(0, 'FoldColumn', { fg = gui0C, bg = gui01, ctermfg = cterm0C, ctermbg = cterm01 }) 86 | vim.api.nvim_set_hl(0, 'Folded', { fg = gui03, bg = gui01, ctermfg = cterm03, ctermbg = cterm01 }) 87 | vim.api.nvim_set_hl(0, 'IncSearch', { fg = gui01, bg = gui09, ctermfg = cterm01, ctermbg = cterm09 }) 88 | vim.api.nvim_set_hl(0, 'Italic', {}) 89 | vim.api.nvim_set_hl(0, 'Macro', { fg = gui08, ctermfg = cterm08 }) 90 | vim.api.nvim_set_hl(0, 'MatchParen', { bg = gui03, ctermbg = cterm03 }) 91 | vim.api.nvim_set_hl(0, 'ModeMsg', { fg = gui0B, ctermfg = cterm0B }) 92 | vim.api.nvim_set_hl(0, 'MoreMsg', { fg = gui0B, ctermfg = cterm0B }) 93 | vim.api.nvim_set_hl(0, 'Question', { fg = gui0D, ctermfg = cterm0D }) 94 | vim.api.nvim_set_hl(0, 'Search', { fg = gui01, bg = gui0A, ctermfg = cterm01, ctermbg = cterm0A }) 95 | vim.api.nvim_set_hl(0, 'Substitute', { fg = gui01, bg = gui0A, ctermfg = cterm01, ctermbg = cterm0A }) 96 | vim.api.nvim_set_hl(0, 'SpecialKey', { fg = gui03, ctermfg = cterm03 }) 97 | vim.api.nvim_set_hl(0, 'TooLong', { fg = gui08, ctermfg = cterm08 }) 98 | vim.api.nvim_set_hl(0, 'Underlined', { fg = gui08, ctermfg = cterm08 }) 99 | vim.api.nvim_set_hl(0, 'Visual', { bg = gui02, ctermbg = cterm02 }) 100 | vim.api.nvim_set_hl(0, 'VisualNOS', { fg = gui08, ctermfg = cterm08 }) 101 | vim.api.nvim_set_hl(0, 'WarningMsg', { fg = gui08, ctermfg = cterm08 }) 102 | vim.api.nvim_set_hl(0, 'WildMenu', { fg = gui08, bg = gui0A, ctermfg = cterm08 }) 103 | vim.api.nvim_set_hl(0, 'Title', { fg = gui0D, ctermfg = cterm0D }) 104 | vim.api.nvim_set_hl(0, 'Conceal', { fg = gui0D, bg = gui00, ctermfg = cterm0D, ctermbg = cterm00 }) 105 | vim.api.nvim_set_hl(0, 'Cursor', { fg = gui00, bg = gui05, ctermfg = cterm00, ctermbg = cterm05 }) 106 | vim.api.nvim_set_hl(0, 'NonText', { fg = gui03, ctermfg = cterm03 }) 107 | vim.api.nvim_set_hl(0, 'LineNr', { fg = gui03, bg = gui01, ctermfg = cterm03, ctermbg = cterm01 }) 108 | vim.api.nvim_set_hl(0, 'SignColumn', { fg = gui03, bg = gui01, ctermfg = cterm03, ctermbg = cterm01 }) 109 | vim.api.nvim_set_hl(0, 'StatusLine', { fg = gui04, bg = gui02, ctermfg = cterm04, ctermbg = cterm02 }) 110 | vim.api.nvim_set_hl(0, 'StatusLineNC', { fg = gui03, bg = gui01, ctermfg = cterm03, ctermbg = cterm01 }) 111 | vim.api.nvim_set_hl(0, 'VertSplit', { fg = gui02, bg = gui02, ctermfg = cterm02, ctermbg = cterm02 }) 112 | vim.api.nvim_set_hl(0, 'ColorColumn', { bg = gui01, ctermbg = cterm01 }) 113 | vim.api.nvim_set_hl(0, 'CursorColumn', { bg = gui01, ctermbg = cterm01 }) 114 | vim.api.nvim_set_hl(0, 'CursorLine', { bg = gui01, ctermbg = cterm01 }) 115 | vim.api.nvim_set_hl(0, 'CursorLineNr', { fg = gui04, bg = gui01, ctermfg = cterm04, ctermbg = cterm01 }) 116 | vim.api.nvim_set_hl(0, 'QuickFixLine', { bg = gui01, ctermbg = cterm01 }) 117 | vim.api.nvim_set_hl(0, 'PMenu', { fg = gui05, bg = gui01, ctermfg = cterm05, ctermbg = cterm01 }) 118 | vim.api.nvim_set_hl(0, 'PMenuSel', { fg = gui01, bg = gui05, ctermfg = cterm01, ctermbg = cterm05 }) 119 | vim.api.nvim_set_hl(0, 'TabLine', { fg = gui03, bg = gui01, ctermfg = cterm03, ctermbg = cterm01 }) 120 | vim.api.nvim_set_hl(0, 'TabLineFill', { fg = gui03, bg = gui01, ctermfg = cterm03, ctermbg = cterm01 }) 121 | vim.api.nvim_set_hl(0, 'TabLineSel', { fg = gui0B, bg = gui01, ctermfg = cterm0B, ctermbg = cterm01 }) 122 | 123 | -- Standard syntax highlighting 124 | vim.api.nvim_set_hl(0, 'Boolean', { fg = gui09, ctermfg = cterm09 }) 125 | vim.api.nvim_set_hl(0, 'Character', { fg = gui08, ctermfg = cterm08 }) 126 | vim.api.nvim_set_hl(0, 'Comment', { fg = gui03, ctermfg = cterm03 }) 127 | vim.api.nvim_set_hl(0, 'Conditional', { fg = gui0E, ctermfg = cterm0E }) 128 | vim.api.nvim_set_hl(0, 'Constant', { fg = gui09, ctermfg = cterm09 }) 129 | vim.api.nvim_set_hl(0, 'Define', { fg = gui0E, ctermfg = cterm0E }) 130 | vim.api.nvim_set_hl(0, 'Delimiter', { fg = gui0F, ctermfg = cterm0F }) 131 | vim.api.nvim_set_hl(0, 'Float', { fg = gui09, ctermfg = cterm09 }) 132 | vim.api.nvim_set_hl(0, 'Function', { fg = gui0D, ctermfg = cterm0D }) 133 | vim.api.nvim_set_hl(0, 'Identifier', { fg = gui08, ctermfg = cterm08 }) 134 | vim.api.nvim_set_hl(0, 'Include', { fg = gui0D, ctermfg = cterm0D }) 135 | vim.api.nvim_set_hl(0, 'Keyword', { fg = gui0E, ctermfg = cterm0E }) 136 | vim.api.nvim_set_hl(0, 'Label', { fg = gui0A, ctermfg = cterm0A }) 137 | vim.api.nvim_set_hl(0, 'Number', { fg = gui09, ctermfg = cterm09 }) 138 | vim.api.nvim_set_hl(0, 'Operator', { fg = gui05, ctermfg = cterm05 }) 139 | vim.api.nvim_set_hl(0, 'PreProc', { fg = gui0A, ctermfg = cterm0A }) 140 | vim.api.nvim_set_hl(0, 'Repeat', { fg = gui0A, ctermfg = cterm0A }) 141 | vim.api.nvim_set_hl(0, 'Special', { fg = gui0C, ctermfg = cterm0C }) 142 | vim.api.nvim_set_hl(0, 'SpecialChar', { fg = gui0F, ctermfg = cterm0F }) 143 | vim.api.nvim_set_hl(0, 'Statement', { fg = gui0E, ctermfg = cterm0E }) 144 | vim.api.nvim_set_hl(0, 'StorageClass', { fg = gui0A, ctermfg = cterm0A }) 145 | vim.api.nvim_set_hl(0, 'String', { fg = gui0B, ctermfg = cterm0B }) 146 | vim.api.nvim_set_hl(0, 'Structure', { fg = gui0E, ctermfg = cterm0E }) 147 | vim.api.nvim_set_hl(0, 'Tag', { fg = gui0A, ctermfg = cterm0A }) 148 | vim.api.nvim_set_hl(0, 'Todo', { fg = gui0A, bg = gui01, ctermfg = cterm0A, ctermbg = cterm01 }) 149 | vim.api.nvim_set_hl(0, 'Type', { fg = gui0A, ctermfg = cterm0A }) 150 | vim.api.nvim_set_hl(0, 'Typedef', { fg = gui0A, ctermfg = cterm0A }) 151 | 152 | -- C highlighting 153 | vim.api.nvim_set_hl(0, 'cOperator', { fg = gui0C, ctermfg = cterm0C }) 154 | vim.api.nvim_set_hl(0, 'cPreCondit', { fg = gui0E, ctermfg = cterm0E }) 155 | 156 | -- C# highlighting 157 | vim.api.nvim_set_hl(0, 'csClass', { fg = gui0A, ctermfg = cterm0A }) 158 | vim.api.nvim_set_hl(0, 'csAttribute', { fg = gui0A, ctermfg = cterm0A }) 159 | vim.api.nvim_set_hl(0, 'csModifier', { fg = gui0E, ctermfg = cterm0E }) 160 | vim.api.nvim_set_hl(0, 'csType', { fg = gui08, ctermfg = cterm08 }) 161 | vim.api.nvim_set_hl(0, 'csUnspecifiedStatement', { fg = gui0D, ctermfg = cterm0D }) 162 | vim.api.nvim_set_hl(0, 'csContextualStatement', { fg = gui0E, ctermfg = cterm0E }) 163 | vim.api.nvim_set_hl(0, 'csNewDecleration', { fg = gui08, ctermfg = cterm08 }) 164 | 165 | -- CSS highlighting 166 | vim.api.nvim_set_hl(0, 'cssBraces', { fg = gui05, ctermfg = cterm05 }) 167 | vim.api.nvim_set_hl(0, 'cssClassName', { fg = gui0E, ctermfg = cterm0E }) 168 | vim.api.nvim_set_hl(0, 'cssColor', { fg = gui0C, ctermfg = cterm0C }) 169 | 170 | -- Diff highlighting 171 | vim.api.nvim_set_hl(0, 'DiffAdd', { fg = gui0B, bg = gui01, ctermfg = cterm0B, ctermbg = cterm01 }) 172 | vim.api.nvim_set_hl(0, 'DiffChange', { fg = gui03, bg = gui01, ctermfg = cterm03, ctermbg = cterm01 }) 173 | vim.api.nvim_set_hl(0, 'DiffDelete', { fg = gui08, bg = gui01, ctermfg = cterm08, ctermbg = cterm01 }) 174 | vim.api.nvim_set_hl(0, 'DiffText', { fg = gui0D, bg = gui01, ctermfg = cterm0D, ctermbg = cterm01 }) 175 | vim.api.nvim_set_hl(0, 'DiffAdded', { fg = gui0B, bg = gui00, ctermfg = cterm0B, ctermbg = cterm00 }) 176 | vim.api.nvim_set_hl(0, 'DiffFile', { fg = gui08, bg = gui00, ctermfg = cterm08, ctermbg = cterm00 }) 177 | vim.api.nvim_set_hl(0, 'DiffNewFile', { fg = gui0B, bg = gui00, ctermfg = cterm0B, ctermbg = cterm00 }) 178 | vim.api.nvim_set_hl(0, 'DiffLine', { fg = gui0D, bg = gui00, ctermfg = cterm0D, ctermbg = cterm00 }) 179 | vim.api.nvim_set_hl(0, 'DiffRemoved', { fg = gui08, bg = gui00, ctermfg = cterm08, ctermbg = cterm00 }) 180 | 181 | -- Git highlighting 182 | vim.api.nvim_set_hl(0, 'gitcommitOverflow', { fg = gui08, ctermfg = cterm08 }) 183 | vim.api.nvim_set_hl(0, 'gitcommitSummary', { fg = gui0B, ctermfg = cterm0B }) 184 | vim.api.nvim_set_hl(0, 'gitcommitComment', { fg = gui03, ctermfg = cterm03 }) 185 | vim.api.nvim_set_hl(0, 'gitcommitUntracked', { fg = gui03, ctermfg = cterm03 }) 186 | vim.api.nvim_set_hl(0, 'gitcommitDiscarded', { fg = gui03, ctermfg = cterm03 }) 187 | vim.api.nvim_set_hl(0, 'gitcommitSelected', { fg = gui03, ctermfg = cterm03 }) 188 | vim.api.nvim_set_hl(0, 'gitcommitHeader', { fg = gui0E, ctermfg = cterm0E }) 189 | vim.api.nvim_set_hl(0, 'gitcommitSelectedType', { fg = gui0D, ctermfg = cterm0D }) 190 | vim.api.nvim_set_hl(0, 'gitcommitUnmergedType', { fg = gui0D, ctermfg = cterm0D }) 191 | vim.api.nvim_set_hl(0, 'gitcommitDiscardedType', { fg = gui0D, ctermfg = cterm0D }) 192 | vim.api.nvim_set_hl(0, 'gitcommitBranch', { fg = gui09, ctermfg = cterm09, bold = true }) 193 | vim.api.nvim_set_hl(0, 'gitcommitUntrackedFile', { fg = gui0A, ctermfg = cterm0A }) 194 | vim.api.nvim_set_hl(0, 'gitcommitUnmergedFile', { fg = gui08, ctermfg = cterm08, bold = true }) 195 | vim.api.nvim_set_hl(0, 'gitcommitDiscardedFile', { fg = gui08, ctermfg = cterm08, bold = true }) 196 | vim.api.nvim_set_hl(0, 'gitcommitSelectedFile', { fg = gui0B, ctermfg = cterm0B, bold = true }) 197 | 198 | -- GitGutter highlighting 199 | vim.api.nvim_set_hl(0, 'GitGutterAdd', { fg = gui0B, bg = gui01, ctermfg = cterm0B, ctermbg = cterm01 }) 200 | vim.api.nvim_set_hl(0, 'GitGutterChange', { fg = gui0D, bg = gui01, ctermfg = cterm0D, ctermbg = cterm01 }) 201 | vim.api.nvim_set_hl(0, 'GitGutterDelete', { fg = gui08, bg = gui01, ctermfg = cterm08, ctermbg = cterm01 }) 202 | vim.api.nvim_set_hl(0, 'GitGutterChangeDelete', { fg = gui0E, bg = gui01, ctermfg = cterm0E, ctermbg = cterm01 }) 203 | 204 | -- HTML highlighting 205 | vim.api.nvim_set_hl(0, 'htmlBold', { fg = gui0A, ctermfg = cterm0A }) 206 | vim.api.nvim_set_hl(0, 'htmlItalic', { fg = gui0E, ctermfg = cterm0E }) 207 | vim.api.nvim_set_hl(0, 'htmlEndTag', { fg = gui05, ctermfg = cterm05 }) 208 | vim.api.nvim_set_hl(0, 'htmlTag', { fg = gui05, ctermfg = cterm05 }) 209 | 210 | -- JavaScript highlighting 211 | vim.api.nvim_set_hl(0, 'javaScript', { fg = gui05, ctermfg = cterm05 }) 212 | vim.api.nvim_set_hl(0, 'javaScriptBraces', { fg = gui05, ctermfg = cterm05 }) 213 | vim.api.nvim_set_hl(0, 'javaScriptNumber', { fg = gui09, ctermfg = cterm09 }) 214 | 215 | -- pangloss/vim-javascript highlighting 216 | vim.api.nvim_set_hl(0, 'jsOperator', { fg = gui0D, ctermfg = cterm0D }) 217 | vim.api.nvim_set_hl(0, 'jsStatement', { fg = gui0E, ctermfg = cterm0E }) 218 | vim.api.nvim_set_hl(0, 'jsReturn', { fg = gui0E, ctermfg = cterm0E }) 219 | vim.api.nvim_set_hl(0, 'jsThis', { fg = gui08, ctermfg = cterm08 }) 220 | vim.api.nvim_set_hl(0, 'jsClassDefinition', { fg = gui0A, ctermfg = cterm0A }) 221 | vim.api.nvim_set_hl(0, 'jsFunction', { fg = gui0E, ctermfg = cterm0E }) 222 | vim.api.nvim_set_hl(0, 'jsFuncName', { fg = gui0D, ctermfg = cterm0D }) 223 | vim.api.nvim_set_hl(0, 'jsFuncCall', { fg = gui0D, ctermfg = cterm0D }) 224 | vim.api.nvim_set_hl(0, 'jsClassFuncName', { fg = gui0D, ctermfg = cterm0D }) 225 | vim.api.nvim_set_hl(0, 'jsClassMethodType', { fg = gui0E, ctermfg = cterm0E }) 226 | vim.api.nvim_set_hl(0, 'jsRegexpString', { fg = gui0C, ctermfg = cterm0C }) 227 | vim.api.nvim_set_hl(0, 'jsGlobalObjects', { fg = gui0A, ctermfg = cterm0A }) 228 | vim.api.nvim_set_hl(0, 'jsGlobalNodeObjects', { fg = gui0A, ctermfg = cterm0A }) 229 | vim.api.nvim_set_hl(0, 'jsExceptions', { fg = gui0A, ctermfg = cterm0A }) 230 | vim.api.nvim_set_hl(0, 'jsBuiltins', { fg = gui0A, ctermfg = cterm0A }) 231 | 232 | -- Diagnostics (legacy). 233 | vim.api.nvim_set_hl(0, 'LspDiagnosticsDefaultError', { fg = gui08, ctermfg = cterm08 }) 234 | vim.api.nvim_set_hl(0, 'LspDiagnosticsDefaultWarning', { fg = gui09, ctermfg = cterm09 }) 235 | vim.api.nvim_set_hl(0, 'LspDiagnosticsDefaultInformation', { fg = gui0C, ctermfg = cterm0C }) 236 | vim.api.nvim_set_hl(0, 'LspDiagnosticsDefaultHint', { fg = gui0D, ctermfg = cterm0D }) 237 | 238 | -- Diagnostics (modern). 239 | vim.api.nvim_set_hl(0, 'DiagnosticError', { fg = gui08, ctermfg = cterm08 }) 240 | vim.api.nvim_set_hl(0, 'DiagnosticWarn', { fg = gui09, ctermfg = cterm09 }) 241 | vim.api.nvim_set_hl(0, 'DiagnosticInfo', { fg = gui0C, ctermfg = cterm0C }) 242 | vim.api.nvim_set_hl(0, 'DiagnosticHint', { fg = gui0D, ctermfg = cterm0D }) 243 | vim.api.nvim_set_hl(0, 'DiagnosticOk', { fg = gui0B, ctermfg = cterm0B }) 244 | vim.api.nvim_set_hl(0, 'DiagnosticUnderlineError', { ctermfg = cterm00, ctermbg = cterm08, underline = true, sp = gui08 }) 245 | vim.api.nvim_set_hl(0, 'DiagnosticUnderlineWarn', { ctermfg = cterm00, ctermbg = cterm09, underline = true, sp = gui09 }) 246 | vim.api.nvim_set_hl(0, 'DiagnosticUnderlineInfo', { ctermfg = cterm00, ctermbg = cterm0C, underline = true, sp = gui0C }) 247 | vim.api.nvim_set_hl(0, 'DiagnosticUnderlineHint', { ctermfg = cterm00, ctermbg = cterm0D, underline = true, sp = gui0D }) 248 | vim.api.nvim_set_hl(0, 'DiagnosticUnderlineOk', { ctermfg = cterm00, ctermbg = cterm0B, underline = true, sp = gui0B }) 249 | vim.api.nvim_set_hl(0, 'DiagnosticFloatingError', { fg = gui08, bg = gui01, ctermfg = cterm08, ctermbg = cterm01 }) 250 | vim.api.nvim_set_hl(0, 'DiagnosticFloatingWarn', { fg = gui09, bg = gui01, ctermfg = cterm09, ctermbg = cterm01 }) 251 | vim.api.nvim_set_hl(0, 'DiagnosticFloatingInfo', { fg = gui0C, bg = gui01, ctermfg = cterm0C, ctermbg = cterm01 }) 252 | vim.api.nvim_set_hl(0, 'DiagnosticFloatingHint', { fg = gui0D, bg = gui01, ctermfg = cterm0D, ctermbg = cterm01 }) 253 | vim.api.nvim_set_hl(0, 'DiagnosticFloatingOk', { fg = gui0B, bg = gui01, ctermfg = cterm0B, ctermbg = cterm01 }) 254 | vim.api.nvim_set_hl(0, 'DiagnosticDeprecated', { ctermfg = cterm0F, ctermbg = cterm0F, strikethrough = true }) 255 | vim.api.nvim_set_hl(0, 'DiagnosticUnnecessary', { link = 'Comment' }) 256 | 257 | -- Mail highlighting 258 | vim.api.nvim_set_hl(0, 'mailQuoted1', { fg = gui0A, ctermfg = cterm0A }) 259 | vim.api.nvim_set_hl(0, 'mailQuoted2', { fg = gui0B, ctermfg = cterm0B }) 260 | vim.api.nvim_set_hl(0, 'mailQuoted3', { fg = gui0E, ctermfg = cterm0E }) 261 | vim.api.nvim_set_hl(0, 'mailQuoted4', { fg = gui0C, ctermfg = cterm0C }) 262 | vim.api.nvim_set_hl(0, 'mailQuoted5', { fg = gui0D, ctermfg = cterm0D }) 263 | vim.api.nvim_set_hl(0, 'mailQuoted6', { fg = gui0A, ctermfg = cterm0A }) 264 | vim.api.nvim_set_hl(0, 'mailURL', { fg = gui0D, ctermfg = cterm0D }) 265 | vim.api.nvim_set_hl(0, 'mailEmail', { fg = gui0D, ctermfg = cterm0D }) 266 | 267 | -- Markdown highlighting 268 | vim.api.nvim_set_hl(0, 'markdownCode', { fg = gui0B, ctermfg = cterm0B }) 269 | vim.api.nvim_set_hl(0, 'markdownError', { fg = gui05, bg = gui00, ctermfg = cterm05, ctermbg = cterm00 }) 270 | vim.api.nvim_set_hl(0, 'markdownCodeBlock', { fg = gui0B, ctermfg = cterm0B }) 271 | vim.api.nvim_set_hl(0, 'markdownHeadingDelimiter', { fg = gui0D, ctermfg = cterm0D }) 272 | 273 | -- NERDTree highlighting 274 | vim.api.nvim_set_hl(0, 'NERDTreeDirSlash', { fg = gui0D, ctermfg = cterm0D }) 275 | vim.api.nvim_set_hl(0, 'NERDTreeExecFile', { fg = gui05, ctermfg = cterm05 }) 276 | 277 | -- PHP highlighting 278 | vim.api.nvim_set_hl(0, 'phpMemberSelector', { fg = gui05, ctermfg = cterm05 }) 279 | vim.api.nvim_set_hl(0, 'phpComparison', { fg = gui05, ctermfg = cterm05 }) 280 | vim.api.nvim_set_hl(0, 'phpParent', { fg = gui05, ctermfg = cterm05 }) 281 | vim.api.nvim_set_hl(0, 'phpMethodsVar', { fg = gui0C, ctermfg = cterm0C }) 282 | 283 | -- Python highlighting 284 | vim.api.nvim_set_hl(0, 'pythonOperator', { fg = gui0E, ctermfg = cterm0E }) 285 | vim.api.nvim_set_hl(0, 'pythonRepeat', { fg = gui0E, ctermfg = cterm0E }) 286 | vim.api.nvim_set_hl(0, 'pythonInclude', { fg = gui0E, ctermfg = cterm0E }) 287 | vim.api.nvim_set_hl(0, 'pythonStatement', { fg = gui0E, ctermfg = cterm0E }) 288 | 289 | -- Ruby highlighting 290 | vim.api.nvim_set_hl(0, 'rubyAttribute', { fg = gui0D, ctermfg = cterm0D }) 291 | vim.api.nvim_set_hl(0, 'rubyConstant', { fg = gui0A, ctermfg = cterm0A }) 292 | vim.api.nvim_set_hl(0, 'rubyInterpolationDelimiter', { fg = gui0F, ctermfg = cterm0F }) 293 | vim.api.nvim_set_hl(0, 'rubyRegexp', { fg = gui0C, ctermfg = cterm0C }) 294 | vim.api.nvim_set_hl(0, 'rubySymbol', { fg = gui0B, ctermfg = cterm0B }) 295 | vim.api.nvim_set_hl(0, 'rubyStringDelimiter', { fg = gui0B, ctermfg = cterm0B }) 296 | 297 | -- SASS highlighting 298 | vim.api.nvim_set_hl(0, 'sassidChar', { fg = gui08, ctermfg = cterm08 }) 299 | vim.api.nvim_set_hl(0, 'sassClassChar', { fg = gui09, ctermfg = cterm09 }) 300 | vim.api.nvim_set_hl(0, 'sassInclude', { fg = gui0E, ctermfg = cterm0E }) 301 | vim.api.nvim_set_hl(0, 'sassMixing', { fg = gui0E, ctermfg = cterm0E }) 302 | vim.api.nvim_set_hl(0, 'sassMixinName', { fg = gui0D, ctermfg = cterm0D }) 303 | 304 | -- Signify highlighting 305 | vim.api.nvim_set_hl(0, 'SignifySignAdd', { fg = gui0B, bg = gui01, ctermfg = cterm0B, ctermbg = cterm01 }) 306 | vim.api.nvim_set_hl(0, 'SignifySignChange', { fg = gui0D, bg = gui01, ctermfg = cterm0D, ctermbg = cterm01 }) 307 | vim.api.nvim_set_hl(0, 'SignifySignDelete', { fg = gui08, bg = gui01, ctermfg = cterm08, ctermbg = cterm01 }) 308 | 309 | -- Spelling highlighting 310 | vim.api.nvim_set_hl(0, 'SpellBad', { undercurl = true }) 311 | vim.api.nvim_set_hl(0, 'SpellLocal', { undercurl = true }) 312 | vim.api.nvim_set_hl(0, 'SpellCap', { undercurl = true }) 313 | vim.api.nvim_set_hl(0, 'SpellRare', { undercurl = true }) 314 | 315 | -- Startify highlighting 316 | vim.api.nvim_set_hl(0, 'StartifyBracket', { fg = gui03, ctermfg = cterm03 }) 317 | vim.api.nvim_set_hl(0, 'StartifyFile', { fg = gui07, ctermfg = cterm07 }) 318 | vim.api.nvim_set_hl(0, 'StartifyFooter', { fg = gui03, ctermfg = cterm03 }) 319 | vim.api.nvim_set_hl(0, 'StartifyHeader', { fg = gui0B, ctermfg = cterm0B }) 320 | vim.api.nvim_set_hl(0, 'StartifyNumber', { fg = gui09, ctermfg = cterm09 }) 321 | vim.api.nvim_set_hl(0, 'StartifyPath', { fg = gui03, ctermfg = cterm03 }) 322 | vim.api.nvim_set_hl(0, 'StartifySection', { fg = gui0E, ctermfg = cterm0E }) 323 | vim.api.nvim_set_hl(0, 'StartifySelect', { fg = gui0C, ctermfg = cterm0C }) 324 | vim.api.nvim_set_hl(0, 'StartifySlash', { fg = gui03, ctermfg = cterm03 }) 325 | vim.api.nvim_set_hl(0, 'StartifySpecial', { fg = gui03, ctermfg = cterm03 }) 326 | 327 | -- Java highlighting 328 | vim.api.nvim_set_hl(0, 'javaOperator', { fg = gui0D, ctermfg = cterm0D }) 329 | 330 | -- Treesitter 331 | vim.api.nvim_set_hl(0, '@variable', { link = 'Identifier' }) 332 | vim.api.nvim_set_hl(0, '@variable.builtin', { fg = gui05, ctermfg = cterm05, italic = true }) 333 | vim.api.nvim_set_hl(0, '@variable.parameter', { link = 'Identifier' }) 334 | vim.api.nvim_set_hl(0, '@variable.parameter.builtin', { link = '@variable.builtin' }) 335 | vim.api.nvim_set_hl(0, '@variable.member', { fg = gui04, ctermfg = cterm04 }) 336 | vim.api.nvim_set_hl(0, '@constant', { link = 'Constant' }) 337 | vim.api.nvim_set_hl(0, '@constant.builtin', { fg = gui09, ctermfg = cterm09, italic = true }) 338 | vim.api.nvim_set_hl(0, '@constant.macro', { link = 'Constant' }) 339 | vim.api.nvim_set_hl(0, '@module', { link = 'Identifier' }) 340 | vim.api.nvim_set_hl(0, '@module.builtin', { fg = gui05, ctermfg = cterm05, italic = true }) 341 | vim.api.nvim_set_hl(0, '@label', { link = 'Tag' }) 342 | vim.api.nvim_set_hl(0, '@string', { link = 'String' }) 343 | vim.api.nvim_set_hl(0, '@string.documentation', { link = 'String' }) 344 | vim.api.nvim_set_hl(0, '@string.regexp', { link = 'SpecialComment' }) 345 | vim.api.nvim_set_hl(0, '@string.escape', { link = 'SpecialComment' }) 346 | vim.api.nvim_set_hl(0, '@string.special', { link = 'SpecialComment' }) 347 | vim.api.nvim_set_hl(0, '@string.special.symbol', { link = 'SpecialComment' }) 348 | vim.api.nvim_set_hl(0, '@string.special.path', { fg = gui0D, ctermfg = cterm0D, italic = true }) 349 | vim.api.nvim_set_hl(0, '@string.special.url', { fg = gui08, ctermfg = cterm08, italic = true }) 350 | vim.api.nvim_set_hl(0, '@character', { link = 'Character' }) 351 | vim.api.nvim_set_hl(0, '@character.special', { link = 'SpecialChar' }) 352 | vim.api.nvim_set_hl(0, '@boolean', { link = 'Boolean' }) 353 | vim.api.nvim_set_hl(0, '@number', { link = 'Number' }) 354 | vim.api.nvim_set_hl(0, '@number.float', { link = 'Float' }) 355 | vim.api.nvim_set_hl(0, '@type', { link = 'Type' }) 356 | vim.api.nvim_set_hl(0, '@type.builtin', { fg = gui0A, ctermfg = cterm0A, italic = true }) 357 | vim.api.nvim_set_hl(0, '@type.definition', { link = 'Typedef' }) 358 | vim.api.nvim_set_hl(0, '@attribute', { link = 'Special' }) 359 | vim.api.nvim_set_hl(0, '@attribute.builtin', { fg = gui0C, ctermfg = cterm0C, italic = true }) 360 | vim.api.nvim_set_hl(0, '@property', { link = '@variable.member' }) 361 | vim.api.nvim_set_hl(0, '@function', { fg = gui16, ctermfg = cterm16 }) 362 | vim.api.nvim_set_hl(0, '@function.builtin', { fg = gui16, ctermfg = cterm16, italic = true }) 363 | vim.api.nvim_set_hl(0, '@function.call', { link = '@function' }) 364 | vim.api.nvim_set_hl(0, '@function.macro', { link = 'Macro' }) 365 | vim.api.nvim_set_hl(0, '@function.method', { link = 'Function' }) 366 | vim.api.nvim_set_hl(0, '@function.method.call', { link = '@function.method' }) 367 | vim.api.nvim_set_hl(0, '@constructor', { fg = gui0D, ctermfg = cterm0D, bold = true }) 368 | vim.api.nvim_set_hl(0, '@operator', { link = 'Operator' }) 369 | vim.api.nvim_set_hl(0, '@keyword', { link = 'Keyword' }) 370 | vim.api.nvim_set_hl(0, '@keyword.coroutine', { link = 'Repeat' }) 371 | vim.api.nvim_set_hl(0, '@keyword.function', { link = 'Keyword' }) 372 | vim.api.nvim_set_hl(0, '@keyword.operator', { link = 'Operator' }) 373 | vim.api.nvim_set_hl(0, '@keyword.import', { fg = gui0E, ctermfg = cterm0E, italic = true }) 374 | vim.api.nvim_set_hl(0, '@keyword.type', { link = 'Keyword' }) 375 | vim.api.nvim_set_hl(0, '@keyword.modifier', { link = 'Repeat' }) 376 | vim.api.nvim_set_hl(0, '@keyword.repeat', { link = 'Repeat' }) 377 | vim.api.nvim_set_hl(0, '@keyword.return', { link = 'Keyword' }) 378 | vim.api.nvim_set_hl(0, '@keyword.debug', { link = 'Debug' }) 379 | vim.api.nvim_set_hl(0, '@keyword.exception', { link = 'Exception' }) 380 | vim.api.nvim_set_hl(0, '@keyword.conditional', { link = 'Conditional' }) 381 | vim.api.nvim_set_hl(0, '@keyword.ternary', { link = 'Conditional' }) 382 | vim.api.nvim_set_hl(0, '@keyword.directive', { link = 'PreProc' }) 383 | vim.api.nvim_set_hl(0, '@keyword.directive.define', { link = 'Define' }) 384 | vim.api.nvim_set_hl(0, '@punctuation.delimiter', { link = 'Delimiter' }) 385 | vim.api.nvim_set_hl(0, '@punctuation.bracket', { link = 'Delimiter' }) 386 | vim.api.nvim_set_hl(0, '@punctuation.special', { link = 'Special' }) 387 | vim.api.nvim_set_hl(0, '@comment', { link = 'Comment' }) 388 | vim.api.nvim_set_hl(0, '@comment.documentation', { link = 'Comment' }) 389 | vim.api.nvim_set_hl(0, '@comment.error', { fg = gui08, ctermfg = cterm08, italic = true }) 390 | vim.api.nvim_set_hl(0, '@comment.warning', { fg = gui09, ctermfg = cterm09, italic = true }) 391 | vim.api.nvim_set_hl(0, '@comment.note', { fg = gui0D, ctermfg = cterm0D, italic = true }) 392 | vim.api.nvim_set_hl(0, '@comment.todo', { fg = gui0C, ctermfg = cterm0C, italic = true }) 393 | vim.api.nvim_set_hl(0, '@markup.strong', { bold = true }) 394 | vim.api.nvim_set_hl(0, '@markup.italic', { italic = true }) 395 | vim.api.nvim_set_hl(0, '@markup.strikethrough', { strikethrough = true }) 396 | vim.api.nvim_set_hl(0, '@markup.underline', { underline = true }) 397 | vim.api.nvim_set_hl(0, '@markup.heading', { link = 'Title' }) 398 | vim.api.nvim_set_hl(0, '@markup.quote', { fg = gui0C, ctermfg = cterm0C }) 399 | vim.api.nvim_set_hl(0, '@markup.math', { link = 'Special' }) 400 | vim.api.nvim_set_hl(0, '@markup.link', { fg = gui08, ctermfg = cterm08 }) 401 | vim.api.nvim_set_hl(0, '@markup.link.label', { link = '@markup.link' }) 402 | vim.api.nvim_set_hl(0, '@markup.link.url', { fg = gui09, ctermfg = cterm09 }) 403 | vim.api.nvim_set_hl(0, '@markup.raw', { fg = gui0B, ctermfg = cterm0B }) 404 | vim.api.nvim_set_hl(0, '@markup.raw.block', { link = '@markup.raw' }) 405 | vim.api.nvim_set_hl(0, '@markup.list', { link = 'SpecialChar' }) 406 | vim.api.nvim_set_hl(0, '@markup.list.checked', { link = 'DiagnosticOk' }) 407 | vim.api.nvim_set_hl(0, '@markup.list.unchecked', { link = 'DiagnosticError' }) 408 | vim.api.nvim_set_hl(0, '@diff.plus', { link = 'Added' }) 409 | vim.api.nvim_set_hl(0, '@diff.minus', { link = 'Removed' }) 410 | vim.api.nvim_set_hl(0, '@diff.delta', { link = 'Changed' }) 411 | vim.api.nvim_set_hl(0, '@tag', { link = 'Tag' }) 412 | vim.api.nvim_set_hl(0, '@tag.builtin', { fg = gui09, ctermfg = cterm09, italic = true }) 413 | vim.api.nvim_set_hl(0, '@tag.attribute', { link = 'Special' }) 414 | vim.api.nvim_set_hl(0, '@tag.delimiter', { link = 'Delimiter' }) 415 | 416 | -- LSP 417 | vim.api.nvim_set_hl(0, '@lsp.type.class', { link = '@type' }) 418 | vim.api.nvim_set_hl(0, '@lsp.type.comment', { link = '@comment' }) 419 | vim.api.nvim_set_hl(0, '@lsp.type.decorator', { link = '@attribute' }) 420 | vim.api.nvim_set_hl(0, '@lsp.type.enum', { link = '@type' }) 421 | vim.api.nvim_set_hl(0, '@lsp.type.enumMember', { link = '@constant' }) 422 | vim.api.nvim_set_hl(0, '@lsp.type.event', { link = '@type' }) 423 | vim.api.nvim_set_hl(0, '@lsp.type.function', { link = '@function' }) 424 | vim.api.nvim_set_hl(0, '@lsp.type.interface', { link = '@type' }) 425 | vim.api.nvim_set_hl(0, '@lsp.type.keyword', { link = '@keyword' }) 426 | vim.api.nvim_set_hl(0, '@lsp.type.macro', { link = '@function.macro' }) 427 | vim.api.nvim_set_hl(0, '@lsp.type.method', { link = '@function.method' }) 428 | vim.api.nvim_set_hl(0, '@lsp.type.modifier', { link = '@type.modifier' }) 429 | vim.api.nvim_set_hl(0, '@lsp.type.namespace', { link = '@module' }) 430 | vim.api.nvim_set_hl(0, '@lsp.type.number', { link = '@number' }) 431 | vim.api.nvim_set_hl(0, '@lsp.type.operator', { link = '@operator' }) 432 | vim.api.nvim_set_hl(0, '@lsp.type.parameter', { link = '@variable.parameter' }) 433 | vim.api.nvim_set_hl(0, '@lsp.type.property', { link = '@property' }) 434 | vim.api.nvim_set_hl(0, '@lsp.type.regexp', { link = '@string.regexp' }) 435 | vim.api.nvim_set_hl(0, '@lsp.type.string', { link = '@string' }) 436 | vim.api.nvim_set_hl(0, '@lsp.type.struct', { link = '@type' }) 437 | vim.api.nvim_set_hl(0, '@lsp.type.type', { link = '@type' }) 438 | vim.api.nvim_set_hl(0, '@lsp.type.typeParameter', { link = '@variable.parameter' }) 439 | vim.api.nvim_set_hl(0, '@lsp.type.variable', { link = '@variable' }) 440 | 441 | -- LSP: Rust 442 | vim.api.nvim_set_hl(0, '@lsp.type.builtinType.rust', { link = '@type.builtin' }) 443 | vim.api.nvim_set_hl(0, '@lsp.type.escapeSequence.rust', { link = '@string.escape' }) 444 | vim.api.nvim_set_hl(0, '@lsp.type.formatSpecifier.rust', { link = '@operator' }) 445 | vim.api.nvim_set_hl(0, '@lsp.type.lifetime.rust', { link = '@attribute' }) 446 | vim.api.nvim_set_hl(0, '@lsp.type.punctuation.rust', { link = '@punctuation.delimiter' }) 447 | vim.api.nvim_set_hl(0, '@lsp.type.selfKeyword.rust', { link = '@variable.builtin' }) 448 | vim.api.nvim_set_hl(0, '@lsp.type.selfTypeKeyword.rust', { link = '@type.builtin' }) 449 | vim.api.nvim_set_hl(0, '@lsp.mod.attribute', { italic = true }) 450 | vim.api.nvim_set_hl(0, '@lsp.mod.controlFlow', { link = '@keyword.repeat' }) 451 | vim.api.nvim_set_hl(0, '@lsp.mod.intraDocLink.rust', { link = '@markup.link' }) 452 | vim.api.nvim_set_hl(0, '@lsp.typemod.generic.injected.rust', { link = '@variable' }) 453 | vim.api.nvim_set_hl(0, '@lsp.typemod.operator.controlFlow.rust', { link = '@operator' }) 454 | vim.api.nvim_set_hl(0, '@lsp.typemod.function.associated.rust', { link = '@function.method' }) 455 | 456 | -- LSP: Lua 457 | vim.api.nvim_set_hl(0, '@lsp.typemod.keyword.documentation.lua', { link = '@tag' }) 458 | 459 | -- LSP: Markdown 460 | vim.api.nvim_set_hl(0, '@lsp.type.class.markdown', { link = '@lsp' }) 461 | 462 | -- LSP (non-syntax) 463 | vim.api.nvim_set_hl(0, 'LspReferenceText', { link = 'Search' }) 464 | vim.api.nvim_set_hl(0, 'LspReferenceRead', { fg = gui01, bg = gui14, ctermfg = cterm01, ctermbg = cterm14 }) 465 | vim.api.nvim_set_hl(0, 'LspReferenceWrite', { fg = gui01, bg = gui12, ctermfg = cterm01, ctermbg = cterm12 }) 466 | vim.api.nvim_set_hl(0, 'LspCodeLens', { link = 'NonText' }) 467 | vim.api.nvim_set_hl(0, 'LspCodeLensSeparator', { link = 'LspCodeLens' }) 468 | vim.api.nvim_set_hl(0, 'LspInlayHint', { link = 'NonText' }) 469 | vim.api.nvim_set_hl(0, 'LspSignatureActiveParameter', { link = 'Visual' }) 470 | 471 | -- vim: filetype=lua 472 | -------------------------------------------------------------------------------- /colors/nord.lua: -------------------------------------------------------------------------------- 1 | -- Nord scheme by arcticicestudio 2 | -- 3 | -- Generated from this template: 4 | -- 5 | -- - base16-nvim (https://github.com/wincent/base16-nvim) 6 | -- by Greg Hurrell (https://github.com/wincent) 7 | -- 8 | -- Template based on: 9 | -- 10 | -- - base16-vim (https://github.com/chriskempson/base16-vim) 11 | -- by Chris Kempson (https://github.com/chriskempson); and its fork: 12 | -- - tinted-vim (https://github.com/tinted-theming/tinted-vim) 13 | -- by the Tinted Theming contributors. 14 | 15 | -- Base16 colors. 16 | local gui00 = "#2E3440" 17 | local gui01 = "#3B4252" 18 | local gui02 = "#434C5E" 19 | local gui03 = "#4C566A" 20 | local gui04 = "#D8DEE9" 21 | local gui05 = "#E5E9F0" 22 | local gui06 = "#ECEFF4" 23 | local gui07 = "#8FBCBB" 24 | local gui08 = "#BF616A" 25 | local gui09 = "#D08770" 26 | local gui0A = "#EBCB8B" 27 | local gui0B = "#A3BE8C" 28 | local gui0C = "#88C0D0" 29 | local gui0D = "#81A1C1" 30 | local gui0E = "#B48EAD" 31 | local gui0F = "#5E81AC" 32 | 33 | -- Base24 colors. 34 | local gui10 = "#2E3440" 35 | local gui11 = "#2E3440" 36 | local gui12 = "#BF616A" 37 | local gui13 = "#EBCB8B" 38 | local gui14 = "#A3BE8C" 39 | local gui15 = "#88C0D0" 40 | local gui16 = "#81A1C1" 41 | local gui17 = "#B48EAD" 42 | 43 | -- Base16 colors. 44 | local cterm00 = 0 45 | local cterm03 = 8 46 | local cterm05 = 7 47 | local cterm07 = 15 48 | local cterm08 = 1 49 | local cterm0A = 3 50 | local cterm0B = 2 51 | local cterm0C = 6 52 | local cterm0D = 4 53 | local cterm0E = 5 54 | local cterm01 = 10 55 | local cterm02 = 11 56 | local cterm04 = 12 57 | local cterm06 = 13 58 | local cterm09 = 9 59 | local cterm0F = 14 60 | 61 | -- Base24 colors. 62 | local cterm10 = cterm00 63 | local cterm11 = cterm00 64 | local cterm12 = 9 65 | local cterm13 = 11 66 | local cterm14 = 10 67 | local cterm15 = 14 68 | local cterm16 = 12 69 | local cterm17 = 13 70 | 71 | vim.cmd [[ 72 | highlight clear 73 | syntax reset 74 | ]] 75 | vim.g.colors_name = "nord" 76 | 77 | -- Vim editor colors 78 | vim.api.nvim_set_hl(0, 'Normal', { fg = gui05, bg = gui00, ctermfg = cterm05, ctermbg = cterm00 }) 79 | vim.api.nvim_set_hl(0, 'Bold', { bold = true }) 80 | vim.api.nvim_set_hl(0, 'Debug', { fg = gui08, ctermfg = cterm08 }) 81 | vim.api.nvim_set_hl(0, 'Directory', { fg = gui0D, ctermfg = cterm0D }) 82 | vim.api.nvim_set_hl(0, 'Error', { fg = gui00, bg = gui08, ctermfg = cterm00, ctermbg = cterm08 }) 83 | vim.api.nvim_set_hl(0, 'ErrorMsg', { fg = gui08, bg = gui00, ctermfg = cterm08, ctermbg = cterm00 }) 84 | vim.api.nvim_set_hl(0, 'Exception', { fg = gui08, ctermfg = cterm08 }) 85 | vim.api.nvim_set_hl(0, 'FoldColumn', { fg = gui0C, bg = gui01, ctermfg = cterm0C, ctermbg = cterm01 }) 86 | vim.api.nvim_set_hl(0, 'Folded', { fg = gui03, bg = gui01, ctermfg = cterm03, ctermbg = cterm01 }) 87 | vim.api.nvim_set_hl(0, 'IncSearch', { fg = gui01, bg = gui09, ctermfg = cterm01, ctermbg = cterm09 }) 88 | vim.api.nvim_set_hl(0, 'Italic', {}) 89 | vim.api.nvim_set_hl(0, 'Macro', { fg = gui08, ctermfg = cterm08 }) 90 | vim.api.nvim_set_hl(0, 'MatchParen', { bg = gui03, ctermbg = cterm03 }) 91 | vim.api.nvim_set_hl(0, 'ModeMsg', { fg = gui0B, ctermfg = cterm0B }) 92 | vim.api.nvim_set_hl(0, 'MoreMsg', { fg = gui0B, ctermfg = cterm0B }) 93 | vim.api.nvim_set_hl(0, 'Question', { fg = gui0D, ctermfg = cterm0D }) 94 | vim.api.nvim_set_hl(0, 'Search', { fg = gui01, bg = gui0A, ctermfg = cterm01, ctermbg = cterm0A }) 95 | vim.api.nvim_set_hl(0, 'Substitute', { fg = gui01, bg = gui0A, ctermfg = cterm01, ctermbg = cterm0A }) 96 | vim.api.nvim_set_hl(0, 'SpecialKey', { fg = gui03, ctermfg = cterm03 }) 97 | vim.api.nvim_set_hl(0, 'TooLong', { fg = gui08, ctermfg = cterm08 }) 98 | vim.api.nvim_set_hl(0, 'Underlined', { fg = gui08, ctermfg = cterm08 }) 99 | vim.api.nvim_set_hl(0, 'Visual', { bg = gui02, ctermbg = cterm02 }) 100 | vim.api.nvim_set_hl(0, 'VisualNOS', { fg = gui08, ctermfg = cterm08 }) 101 | vim.api.nvim_set_hl(0, 'WarningMsg', { fg = gui08, ctermfg = cterm08 }) 102 | vim.api.nvim_set_hl(0, 'WildMenu', { fg = gui08, bg = gui0A, ctermfg = cterm08 }) 103 | vim.api.nvim_set_hl(0, 'Title', { fg = gui0D, ctermfg = cterm0D }) 104 | vim.api.nvim_set_hl(0, 'Conceal', { fg = gui0D, bg = gui00, ctermfg = cterm0D, ctermbg = cterm00 }) 105 | vim.api.nvim_set_hl(0, 'Cursor', { fg = gui00, bg = gui05, ctermfg = cterm00, ctermbg = cterm05 }) 106 | vim.api.nvim_set_hl(0, 'NonText', { fg = gui03, ctermfg = cterm03 }) 107 | vim.api.nvim_set_hl(0, 'LineNr', { fg = gui03, bg = gui01, ctermfg = cterm03, ctermbg = cterm01 }) 108 | vim.api.nvim_set_hl(0, 'SignColumn', { fg = gui03, bg = gui01, ctermfg = cterm03, ctermbg = cterm01 }) 109 | vim.api.nvim_set_hl(0, 'StatusLine', { fg = gui04, bg = gui02, ctermfg = cterm04, ctermbg = cterm02 }) 110 | vim.api.nvim_set_hl(0, 'StatusLineNC', { fg = gui03, bg = gui01, ctermfg = cterm03, ctermbg = cterm01 }) 111 | vim.api.nvim_set_hl(0, 'VertSplit', { fg = gui02, bg = gui02, ctermfg = cterm02, ctermbg = cterm02 }) 112 | vim.api.nvim_set_hl(0, 'ColorColumn', { bg = gui01, ctermbg = cterm01 }) 113 | vim.api.nvim_set_hl(0, 'CursorColumn', { bg = gui01, ctermbg = cterm01 }) 114 | vim.api.nvim_set_hl(0, 'CursorLine', { bg = gui01, ctermbg = cterm01 }) 115 | vim.api.nvim_set_hl(0, 'CursorLineNr', { fg = gui04, bg = gui01, ctermfg = cterm04, ctermbg = cterm01 }) 116 | vim.api.nvim_set_hl(0, 'QuickFixLine', { bg = gui01, ctermbg = cterm01 }) 117 | vim.api.nvim_set_hl(0, 'PMenu', { fg = gui05, bg = gui01, ctermfg = cterm05, ctermbg = cterm01 }) 118 | vim.api.nvim_set_hl(0, 'PMenuSel', { fg = gui01, bg = gui05, ctermfg = cterm01, ctermbg = cterm05 }) 119 | vim.api.nvim_set_hl(0, 'TabLine', { fg = gui03, bg = gui01, ctermfg = cterm03, ctermbg = cterm01 }) 120 | vim.api.nvim_set_hl(0, 'TabLineFill', { fg = gui03, bg = gui01, ctermfg = cterm03, ctermbg = cterm01 }) 121 | vim.api.nvim_set_hl(0, 'TabLineSel', { fg = gui0B, bg = gui01, ctermfg = cterm0B, ctermbg = cterm01 }) 122 | 123 | -- Standard syntax highlighting 124 | vim.api.nvim_set_hl(0, 'Boolean', { fg = gui09, ctermfg = cterm09 }) 125 | vim.api.nvim_set_hl(0, 'Character', { fg = gui08, ctermfg = cterm08 }) 126 | vim.api.nvim_set_hl(0, 'Comment', { fg = gui03, ctermfg = cterm03 }) 127 | vim.api.nvim_set_hl(0, 'Conditional', { fg = gui0E, ctermfg = cterm0E }) 128 | vim.api.nvim_set_hl(0, 'Constant', { fg = gui09, ctermfg = cterm09 }) 129 | vim.api.nvim_set_hl(0, 'Define', { fg = gui0E, ctermfg = cterm0E }) 130 | vim.api.nvim_set_hl(0, 'Delimiter', { fg = gui0F, ctermfg = cterm0F }) 131 | vim.api.nvim_set_hl(0, 'Float', { fg = gui09, ctermfg = cterm09 }) 132 | vim.api.nvim_set_hl(0, 'Function', { fg = gui0D, ctermfg = cterm0D }) 133 | vim.api.nvim_set_hl(0, 'Identifier', { fg = gui08, ctermfg = cterm08 }) 134 | vim.api.nvim_set_hl(0, 'Include', { fg = gui0D, ctermfg = cterm0D }) 135 | vim.api.nvim_set_hl(0, 'Keyword', { fg = gui0E, ctermfg = cterm0E }) 136 | vim.api.nvim_set_hl(0, 'Label', { fg = gui0A, ctermfg = cterm0A }) 137 | vim.api.nvim_set_hl(0, 'Number', { fg = gui09, ctermfg = cterm09 }) 138 | vim.api.nvim_set_hl(0, 'Operator', { fg = gui05, ctermfg = cterm05 }) 139 | vim.api.nvim_set_hl(0, 'PreProc', { fg = gui0A, ctermfg = cterm0A }) 140 | vim.api.nvim_set_hl(0, 'Repeat', { fg = gui0A, ctermfg = cterm0A }) 141 | vim.api.nvim_set_hl(0, 'Special', { fg = gui0C, ctermfg = cterm0C }) 142 | vim.api.nvim_set_hl(0, 'SpecialChar', { fg = gui0F, ctermfg = cterm0F }) 143 | vim.api.nvim_set_hl(0, 'Statement', { fg = gui0E, ctermfg = cterm0E }) 144 | vim.api.nvim_set_hl(0, 'StorageClass', { fg = gui0A, ctermfg = cterm0A }) 145 | vim.api.nvim_set_hl(0, 'String', { fg = gui0B, ctermfg = cterm0B }) 146 | vim.api.nvim_set_hl(0, 'Structure', { fg = gui0E, ctermfg = cterm0E }) 147 | vim.api.nvim_set_hl(0, 'Tag', { fg = gui0A, ctermfg = cterm0A }) 148 | vim.api.nvim_set_hl(0, 'Todo', { fg = gui0A, bg = gui01, ctermfg = cterm0A, ctermbg = cterm01 }) 149 | vim.api.nvim_set_hl(0, 'Type', { fg = gui0A, ctermfg = cterm0A }) 150 | vim.api.nvim_set_hl(0, 'Typedef', { fg = gui0A, ctermfg = cterm0A }) 151 | 152 | -- C highlighting 153 | vim.api.nvim_set_hl(0, 'cOperator', { fg = gui0C, ctermfg = cterm0C }) 154 | vim.api.nvim_set_hl(0, 'cPreCondit', { fg = gui0E, ctermfg = cterm0E }) 155 | 156 | -- C# highlighting 157 | vim.api.nvim_set_hl(0, 'csClass', { fg = gui0A, ctermfg = cterm0A }) 158 | vim.api.nvim_set_hl(0, 'csAttribute', { fg = gui0A, ctermfg = cterm0A }) 159 | vim.api.nvim_set_hl(0, 'csModifier', { fg = gui0E, ctermfg = cterm0E }) 160 | vim.api.nvim_set_hl(0, 'csType', { fg = gui08, ctermfg = cterm08 }) 161 | vim.api.nvim_set_hl(0, 'csUnspecifiedStatement', { fg = gui0D, ctermfg = cterm0D }) 162 | vim.api.nvim_set_hl(0, 'csContextualStatement', { fg = gui0E, ctermfg = cterm0E }) 163 | vim.api.nvim_set_hl(0, 'csNewDecleration', { fg = gui08, ctermfg = cterm08 }) 164 | 165 | -- CSS highlighting 166 | vim.api.nvim_set_hl(0, 'cssBraces', { fg = gui05, ctermfg = cterm05 }) 167 | vim.api.nvim_set_hl(0, 'cssClassName', { fg = gui0E, ctermfg = cterm0E }) 168 | vim.api.nvim_set_hl(0, 'cssColor', { fg = gui0C, ctermfg = cterm0C }) 169 | 170 | -- Diff highlighting 171 | vim.api.nvim_set_hl(0, 'DiffAdd', { fg = gui0B, bg = gui01, ctermfg = cterm0B, ctermbg = cterm01 }) 172 | vim.api.nvim_set_hl(0, 'DiffChange', { fg = gui03, bg = gui01, ctermfg = cterm03, ctermbg = cterm01 }) 173 | vim.api.nvim_set_hl(0, 'DiffDelete', { fg = gui08, bg = gui01, ctermfg = cterm08, ctermbg = cterm01 }) 174 | vim.api.nvim_set_hl(0, 'DiffText', { fg = gui0D, bg = gui01, ctermfg = cterm0D, ctermbg = cterm01 }) 175 | vim.api.nvim_set_hl(0, 'DiffAdded', { fg = gui0B, bg = gui00, ctermfg = cterm0B, ctermbg = cterm00 }) 176 | vim.api.nvim_set_hl(0, 'DiffFile', { fg = gui08, bg = gui00, ctermfg = cterm08, ctermbg = cterm00 }) 177 | vim.api.nvim_set_hl(0, 'DiffNewFile', { fg = gui0B, bg = gui00, ctermfg = cterm0B, ctermbg = cterm00 }) 178 | vim.api.nvim_set_hl(0, 'DiffLine', { fg = gui0D, bg = gui00, ctermfg = cterm0D, ctermbg = cterm00 }) 179 | vim.api.nvim_set_hl(0, 'DiffRemoved', { fg = gui08, bg = gui00, ctermfg = cterm08, ctermbg = cterm00 }) 180 | 181 | -- Git highlighting 182 | vim.api.nvim_set_hl(0, 'gitcommitOverflow', { fg = gui08, ctermfg = cterm08 }) 183 | vim.api.nvim_set_hl(0, 'gitcommitSummary', { fg = gui0B, ctermfg = cterm0B }) 184 | vim.api.nvim_set_hl(0, 'gitcommitComment', { fg = gui03, ctermfg = cterm03 }) 185 | vim.api.nvim_set_hl(0, 'gitcommitUntracked', { fg = gui03, ctermfg = cterm03 }) 186 | vim.api.nvim_set_hl(0, 'gitcommitDiscarded', { fg = gui03, ctermfg = cterm03 }) 187 | vim.api.nvim_set_hl(0, 'gitcommitSelected', { fg = gui03, ctermfg = cterm03 }) 188 | vim.api.nvim_set_hl(0, 'gitcommitHeader', { fg = gui0E, ctermfg = cterm0E }) 189 | vim.api.nvim_set_hl(0, 'gitcommitSelectedType', { fg = gui0D, ctermfg = cterm0D }) 190 | vim.api.nvim_set_hl(0, 'gitcommitUnmergedType', { fg = gui0D, ctermfg = cterm0D }) 191 | vim.api.nvim_set_hl(0, 'gitcommitDiscardedType', { fg = gui0D, ctermfg = cterm0D }) 192 | vim.api.nvim_set_hl(0, 'gitcommitBranch', { fg = gui09, ctermfg = cterm09, bold = true }) 193 | vim.api.nvim_set_hl(0, 'gitcommitUntrackedFile', { fg = gui0A, ctermfg = cterm0A }) 194 | vim.api.nvim_set_hl(0, 'gitcommitUnmergedFile', { fg = gui08, ctermfg = cterm08, bold = true }) 195 | vim.api.nvim_set_hl(0, 'gitcommitDiscardedFile', { fg = gui08, ctermfg = cterm08, bold = true }) 196 | vim.api.nvim_set_hl(0, 'gitcommitSelectedFile', { fg = gui0B, ctermfg = cterm0B, bold = true }) 197 | 198 | -- GitGutter highlighting 199 | vim.api.nvim_set_hl(0, 'GitGutterAdd', { fg = gui0B, bg = gui01, ctermfg = cterm0B, ctermbg = cterm01 }) 200 | vim.api.nvim_set_hl(0, 'GitGutterChange', { fg = gui0D, bg = gui01, ctermfg = cterm0D, ctermbg = cterm01 }) 201 | vim.api.nvim_set_hl(0, 'GitGutterDelete', { fg = gui08, bg = gui01, ctermfg = cterm08, ctermbg = cterm01 }) 202 | vim.api.nvim_set_hl(0, 'GitGutterChangeDelete', { fg = gui0E, bg = gui01, ctermfg = cterm0E, ctermbg = cterm01 }) 203 | 204 | -- HTML highlighting 205 | vim.api.nvim_set_hl(0, 'htmlBold', { fg = gui0A, ctermfg = cterm0A }) 206 | vim.api.nvim_set_hl(0, 'htmlItalic', { fg = gui0E, ctermfg = cterm0E }) 207 | vim.api.nvim_set_hl(0, 'htmlEndTag', { fg = gui05, ctermfg = cterm05 }) 208 | vim.api.nvim_set_hl(0, 'htmlTag', { fg = gui05, ctermfg = cterm05 }) 209 | 210 | -- JavaScript highlighting 211 | vim.api.nvim_set_hl(0, 'javaScript', { fg = gui05, ctermfg = cterm05 }) 212 | vim.api.nvim_set_hl(0, 'javaScriptBraces', { fg = gui05, ctermfg = cterm05 }) 213 | vim.api.nvim_set_hl(0, 'javaScriptNumber', { fg = gui09, ctermfg = cterm09 }) 214 | 215 | -- pangloss/vim-javascript highlighting 216 | vim.api.nvim_set_hl(0, 'jsOperator', { fg = gui0D, ctermfg = cterm0D }) 217 | vim.api.nvim_set_hl(0, 'jsStatement', { fg = gui0E, ctermfg = cterm0E }) 218 | vim.api.nvim_set_hl(0, 'jsReturn', { fg = gui0E, ctermfg = cterm0E }) 219 | vim.api.nvim_set_hl(0, 'jsThis', { fg = gui08, ctermfg = cterm08 }) 220 | vim.api.nvim_set_hl(0, 'jsClassDefinition', { fg = gui0A, ctermfg = cterm0A }) 221 | vim.api.nvim_set_hl(0, 'jsFunction', { fg = gui0E, ctermfg = cterm0E }) 222 | vim.api.nvim_set_hl(0, 'jsFuncName', { fg = gui0D, ctermfg = cterm0D }) 223 | vim.api.nvim_set_hl(0, 'jsFuncCall', { fg = gui0D, ctermfg = cterm0D }) 224 | vim.api.nvim_set_hl(0, 'jsClassFuncName', { fg = gui0D, ctermfg = cterm0D }) 225 | vim.api.nvim_set_hl(0, 'jsClassMethodType', { fg = gui0E, ctermfg = cterm0E }) 226 | vim.api.nvim_set_hl(0, 'jsRegexpString', { fg = gui0C, ctermfg = cterm0C }) 227 | vim.api.nvim_set_hl(0, 'jsGlobalObjects', { fg = gui0A, ctermfg = cterm0A }) 228 | vim.api.nvim_set_hl(0, 'jsGlobalNodeObjects', { fg = gui0A, ctermfg = cterm0A }) 229 | vim.api.nvim_set_hl(0, 'jsExceptions', { fg = gui0A, ctermfg = cterm0A }) 230 | vim.api.nvim_set_hl(0, 'jsBuiltins', { fg = gui0A, ctermfg = cterm0A }) 231 | 232 | -- Diagnostics (legacy). 233 | vim.api.nvim_set_hl(0, 'LspDiagnosticsDefaultError', { fg = gui08, ctermfg = cterm08 }) 234 | vim.api.nvim_set_hl(0, 'LspDiagnosticsDefaultWarning', { fg = gui09, ctermfg = cterm09 }) 235 | vim.api.nvim_set_hl(0, 'LspDiagnosticsDefaultInformation', { fg = gui0C, ctermfg = cterm0C }) 236 | vim.api.nvim_set_hl(0, 'LspDiagnosticsDefaultHint', { fg = gui0D, ctermfg = cterm0D }) 237 | 238 | -- Diagnostics (modern). 239 | vim.api.nvim_set_hl(0, 'DiagnosticError', { fg = gui08, ctermfg = cterm08 }) 240 | vim.api.nvim_set_hl(0, 'DiagnosticWarn', { fg = gui09, ctermfg = cterm09 }) 241 | vim.api.nvim_set_hl(0, 'DiagnosticInfo', { fg = gui0C, ctermfg = cterm0C }) 242 | vim.api.nvim_set_hl(0, 'DiagnosticHint', { fg = gui0D, ctermfg = cterm0D }) 243 | vim.api.nvim_set_hl(0, 'DiagnosticOk', { fg = gui0B, ctermfg = cterm0B }) 244 | vim.api.nvim_set_hl(0, 'DiagnosticUnderlineError', { ctermfg = cterm00, ctermbg = cterm08, underline = true, sp = gui08 }) 245 | vim.api.nvim_set_hl(0, 'DiagnosticUnderlineWarn', { ctermfg = cterm00, ctermbg = cterm09, underline = true, sp = gui09 }) 246 | vim.api.nvim_set_hl(0, 'DiagnosticUnderlineInfo', { ctermfg = cterm00, ctermbg = cterm0C, underline = true, sp = gui0C }) 247 | vim.api.nvim_set_hl(0, 'DiagnosticUnderlineHint', { ctermfg = cterm00, ctermbg = cterm0D, underline = true, sp = gui0D }) 248 | vim.api.nvim_set_hl(0, 'DiagnosticUnderlineOk', { ctermfg = cterm00, ctermbg = cterm0B, underline = true, sp = gui0B }) 249 | vim.api.nvim_set_hl(0, 'DiagnosticFloatingError', { fg = gui08, bg = gui01, ctermfg = cterm08, ctermbg = cterm01 }) 250 | vim.api.nvim_set_hl(0, 'DiagnosticFloatingWarn', { fg = gui09, bg = gui01, ctermfg = cterm09, ctermbg = cterm01 }) 251 | vim.api.nvim_set_hl(0, 'DiagnosticFloatingInfo', { fg = gui0C, bg = gui01, ctermfg = cterm0C, ctermbg = cterm01 }) 252 | vim.api.nvim_set_hl(0, 'DiagnosticFloatingHint', { fg = gui0D, bg = gui01, ctermfg = cterm0D, ctermbg = cterm01 }) 253 | vim.api.nvim_set_hl(0, 'DiagnosticFloatingOk', { fg = gui0B, bg = gui01, ctermfg = cterm0B, ctermbg = cterm01 }) 254 | vim.api.nvim_set_hl(0, 'DiagnosticDeprecated', { ctermfg = cterm0F, ctermbg = cterm0F, strikethrough = true }) 255 | vim.api.nvim_set_hl(0, 'DiagnosticUnnecessary', { link = 'Comment' }) 256 | 257 | -- Mail highlighting 258 | vim.api.nvim_set_hl(0, 'mailQuoted1', { fg = gui0A, ctermfg = cterm0A }) 259 | vim.api.nvim_set_hl(0, 'mailQuoted2', { fg = gui0B, ctermfg = cterm0B }) 260 | vim.api.nvim_set_hl(0, 'mailQuoted3', { fg = gui0E, ctermfg = cterm0E }) 261 | vim.api.nvim_set_hl(0, 'mailQuoted4', { fg = gui0C, ctermfg = cterm0C }) 262 | vim.api.nvim_set_hl(0, 'mailQuoted5', { fg = gui0D, ctermfg = cterm0D }) 263 | vim.api.nvim_set_hl(0, 'mailQuoted6', { fg = gui0A, ctermfg = cterm0A }) 264 | vim.api.nvim_set_hl(0, 'mailURL', { fg = gui0D, ctermfg = cterm0D }) 265 | vim.api.nvim_set_hl(0, 'mailEmail', { fg = gui0D, ctermfg = cterm0D }) 266 | 267 | -- Markdown highlighting 268 | vim.api.nvim_set_hl(0, 'markdownCode', { fg = gui0B, ctermfg = cterm0B }) 269 | vim.api.nvim_set_hl(0, 'markdownError', { fg = gui05, bg = gui00, ctermfg = cterm05, ctermbg = cterm00 }) 270 | vim.api.nvim_set_hl(0, 'markdownCodeBlock', { fg = gui0B, ctermfg = cterm0B }) 271 | vim.api.nvim_set_hl(0, 'markdownHeadingDelimiter', { fg = gui0D, ctermfg = cterm0D }) 272 | 273 | -- NERDTree highlighting 274 | vim.api.nvim_set_hl(0, 'NERDTreeDirSlash', { fg = gui0D, ctermfg = cterm0D }) 275 | vim.api.nvim_set_hl(0, 'NERDTreeExecFile', { fg = gui05, ctermfg = cterm05 }) 276 | 277 | -- PHP highlighting 278 | vim.api.nvim_set_hl(0, 'phpMemberSelector', { fg = gui05, ctermfg = cterm05 }) 279 | vim.api.nvim_set_hl(0, 'phpComparison', { fg = gui05, ctermfg = cterm05 }) 280 | vim.api.nvim_set_hl(0, 'phpParent', { fg = gui05, ctermfg = cterm05 }) 281 | vim.api.nvim_set_hl(0, 'phpMethodsVar', { fg = gui0C, ctermfg = cterm0C }) 282 | 283 | -- Python highlighting 284 | vim.api.nvim_set_hl(0, 'pythonOperator', { fg = gui0E, ctermfg = cterm0E }) 285 | vim.api.nvim_set_hl(0, 'pythonRepeat', { fg = gui0E, ctermfg = cterm0E }) 286 | vim.api.nvim_set_hl(0, 'pythonInclude', { fg = gui0E, ctermfg = cterm0E }) 287 | vim.api.nvim_set_hl(0, 'pythonStatement', { fg = gui0E, ctermfg = cterm0E }) 288 | 289 | -- Ruby highlighting 290 | vim.api.nvim_set_hl(0, 'rubyAttribute', { fg = gui0D, ctermfg = cterm0D }) 291 | vim.api.nvim_set_hl(0, 'rubyConstant', { fg = gui0A, ctermfg = cterm0A }) 292 | vim.api.nvim_set_hl(0, 'rubyInterpolationDelimiter', { fg = gui0F, ctermfg = cterm0F }) 293 | vim.api.nvim_set_hl(0, 'rubyRegexp', { fg = gui0C, ctermfg = cterm0C }) 294 | vim.api.nvim_set_hl(0, 'rubySymbol', { fg = gui0B, ctermfg = cterm0B }) 295 | vim.api.nvim_set_hl(0, 'rubyStringDelimiter', { fg = gui0B, ctermfg = cterm0B }) 296 | 297 | -- SASS highlighting 298 | vim.api.nvim_set_hl(0, 'sassidChar', { fg = gui08, ctermfg = cterm08 }) 299 | vim.api.nvim_set_hl(0, 'sassClassChar', { fg = gui09, ctermfg = cterm09 }) 300 | vim.api.nvim_set_hl(0, 'sassInclude', { fg = gui0E, ctermfg = cterm0E }) 301 | vim.api.nvim_set_hl(0, 'sassMixing', { fg = gui0E, ctermfg = cterm0E }) 302 | vim.api.nvim_set_hl(0, 'sassMixinName', { fg = gui0D, ctermfg = cterm0D }) 303 | 304 | -- Signify highlighting 305 | vim.api.nvim_set_hl(0, 'SignifySignAdd', { fg = gui0B, bg = gui01, ctermfg = cterm0B, ctermbg = cterm01 }) 306 | vim.api.nvim_set_hl(0, 'SignifySignChange', { fg = gui0D, bg = gui01, ctermfg = cterm0D, ctermbg = cterm01 }) 307 | vim.api.nvim_set_hl(0, 'SignifySignDelete', { fg = gui08, bg = gui01, ctermfg = cterm08, ctermbg = cterm01 }) 308 | 309 | -- Spelling highlighting 310 | vim.api.nvim_set_hl(0, 'SpellBad', { undercurl = true }) 311 | vim.api.nvim_set_hl(0, 'SpellLocal', { undercurl = true }) 312 | vim.api.nvim_set_hl(0, 'SpellCap', { undercurl = true }) 313 | vim.api.nvim_set_hl(0, 'SpellRare', { undercurl = true }) 314 | 315 | -- Startify highlighting 316 | vim.api.nvim_set_hl(0, 'StartifyBracket', { fg = gui03, ctermfg = cterm03 }) 317 | vim.api.nvim_set_hl(0, 'StartifyFile', { fg = gui07, ctermfg = cterm07 }) 318 | vim.api.nvim_set_hl(0, 'StartifyFooter', { fg = gui03, ctermfg = cterm03 }) 319 | vim.api.nvim_set_hl(0, 'StartifyHeader', { fg = gui0B, ctermfg = cterm0B }) 320 | vim.api.nvim_set_hl(0, 'StartifyNumber', { fg = gui09, ctermfg = cterm09 }) 321 | vim.api.nvim_set_hl(0, 'StartifyPath', { fg = gui03, ctermfg = cterm03 }) 322 | vim.api.nvim_set_hl(0, 'StartifySection', { fg = gui0E, ctermfg = cterm0E }) 323 | vim.api.nvim_set_hl(0, 'StartifySelect', { fg = gui0C, ctermfg = cterm0C }) 324 | vim.api.nvim_set_hl(0, 'StartifySlash', { fg = gui03, ctermfg = cterm03 }) 325 | vim.api.nvim_set_hl(0, 'StartifySpecial', { fg = gui03, ctermfg = cterm03 }) 326 | 327 | -- Java highlighting 328 | vim.api.nvim_set_hl(0, 'javaOperator', { fg = gui0D, ctermfg = cterm0D }) 329 | 330 | -- Treesitter 331 | vim.api.nvim_set_hl(0, '@variable', { link = 'Identifier' }) 332 | vim.api.nvim_set_hl(0, '@variable.builtin', { fg = gui05, ctermfg = cterm05, italic = true }) 333 | vim.api.nvim_set_hl(0, '@variable.parameter', { link = 'Identifier' }) 334 | vim.api.nvim_set_hl(0, '@variable.parameter.builtin', { link = '@variable.builtin' }) 335 | vim.api.nvim_set_hl(0, '@variable.member', { fg = gui04, ctermfg = cterm04 }) 336 | vim.api.nvim_set_hl(0, '@constant', { link = 'Constant' }) 337 | vim.api.nvim_set_hl(0, '@constant.builtin', { fg = gui09, ctermfg = cterm09, italic = true }) 338 | vim.api.nvim_set_hl(0, '@constant.macro', { link = 'Constant' }) 339 | vim.api.nvim_set_hl(0, '@module', { link = 'Identifier' }) 340 | vim.api.nvim_set_hl(0, '@module.builtin', { fg = gui05, ctermfg = cterm05, italic = true }) 341 | vim.api.nvim_set_hl(0, '@label', { link = 'Tag' }) 342 | vim.api.nvim_set_hl(0, '@string', { link = 'String' }) 343 | vim.api.nvim_set_hl(0, '@string.documentation', { link = 'String' }) 344 | vim.api.nvim_set_hl(0, '@string.regexp', { link = 'SpecialComment' }) 345 | vim.api.nvim_set_hl(0, '@string.escape', { link = 'SpecialComment' }) 346 | vim.api.nvim_set_hl(0, '@string.special', { link = 'SpecialComment' }) 347 | vim.api.nvim_set_hl(0, '@string.special.symbol', { link = 'SpecialComment' }) 348 | vim.api.nvim_set_hl(0, '@string.special.path', { fg = gui0D, ctermfg = cterm0D, italic = true }) 349 | vim.api.nvim_set_hl(0, '@string.special.url', { fg = gui08, ctermfg = cterm08, italic = true }) 350 | vim.api.nvim_set_hl(0, '@character', { link = 'Character' }) 351 | vim.api.nvim_set_hl(0, '@character.special', { link = 'SpecialChar' }) 352 | vim.api.nvim_set_hl(0, '@boolean', { link = 'Boolean' }) 353 | vim.api.nvim_set_hl(0, '@number', { link = 'Number' }) 354 | vim.api.nvim_set_hl(0, '@number.float', { link = 'Float' }) 355 | vim.api.nvim_set_hl(0, '@type', { link = 'Type' }) 356 | vim.api.nvim_set_hl(0, '@type.builtin', { fg = gui0A, ctermfg = cterm0A, italic = true }) 357 | vim.api.nvim_set_hl(0, '@type.definition', { link = 'Typedef' }) 358 | vim.api.nvim_set_hl(0, '@attribute', { link = 'Special' }) 359 | vim.api.nvim_set_hl(0, '@attribute.builtin', { fg = gui0C, ctermfg = cterm0C, italic = true }) 360 | vim.api.nvim_set_hl(0, '@property', { link = '@variable.member' }) 361 | vim.api.nvim_set_hl(0, '@function', { fg = gui16, ctermfg = cterm16 }) 362 | vim.api.nvim_set_hl(0, '@function.builtin', { fg = gui16, ctermfg = cterm16, italic = true }) 363 | vim.api.nvim_set_hl(0, '@function.call', { link = '@function' }) 364 | vim.api.nvim_set_hl(0, '@function.macro', { link = 'Macro' }) 365 | vim.api.nvim_set_hl(0, '@function.method', { link = 'Function' }) 366 | vim.api.nvim_set_hl(0, '@function.method.call', { link = '@function.method' }) 367 | vim.api.nvim_set_hl(0, '@constructor', { fg = gui0D, ctermfg = cterm0D, bold = true }) 368 | vim.api.nvim_set_hl(0, '@operator', { link = 'Operator' }) 369 | vim.api.nvim_set_hl(0, '@keyword', { link = 'Keyword' }) 370 | vim.api.nvim_set_hl(0, '@keyword.coroutine', { link = 'Repeat' }) 371 | vim.api.nvim_set_hl(0, '@keyword.function', { link = 'Keyword' }) 372 | vim.api.nvim_set_hl(0, '@keyword.operator', { link = 'Operator' }) 373 | vim.api.nvim_set_hl(0, '@keyword.import', { fg = gui0E, ctermfg = cterm0E, italic = true }) 374 | vim.api.nvim_set_hl(0, '@keyword.type', { link = 'Keyword' }) 375 | vim.api.nvim_set_hl(0, '@keyword.modifier', { link = 'Repeat' }) 376 | vim.api.nvim_set_hl(0, '@keyword.repeat', { link = 'Repeat' }) 377 | vim.api.nvim_set_hl(0, '@keyword.return', { link = 'Keyword' }) 378 | vim.api.nvim_set_hl(0, '@keyword.debug', { link = 'Debug' }) 379 | vim.api.nvim_set_hl(0, '@keyword.exception', { link = 'Exception' }) 380 | vim.api.nvim_set_hl(0, '@keyword.conditional', { link = 'Conditional' }) 381 | vim.api.nvim_set_hl(0, '@keyword.ternary', { link = 'Conditional' }) 382 | vim.api.nvim_set_hl(0, '@keyword.directive', { link = 'PreProc' }) 383 | vim.api.nvim_set_hl(0, '@keyword.directive.define', { link = 'Define' }) 384 | vim.api.nvim_set_hl(0, '@punctuation.delimiter', { link = 'Delimiter' }) 385 | vim.api.nvim_set_hl(0, '@punctuation.bracket', { link = 'Delimiter' }) 386 | vim.api.nvim_set_hl(0, '@punctuation.special', { link = 'Special' }) 387 | vim.api.nvim_set_hl(0, '@comment', { link = 'Comment' }) 388 | vim.api.nvim_set_hl(0, '@comment.documentation', { link = 'Comment' }) 389 | vim.api.nvim_set_hl(0, '@comment.error', { fg = gui08, ctermfg = cterm08, italic = true }) 390 | vim.api.nvim_set_hl(0, '@comment.warning', { fg = gui09, ctermfg = cterm09, italic = true }) 391 | vim.api.nvim_set_hl(0, '@comment.note', { fg = gui0D, ctermfg = cterm0D, italic = true }) 392 | vim.api.nvim_set_hl(0, '@comment.todo', { fg = gui0C, ctermfg = cterm0C, italic = true }) 393 | vim.api.nvim_set_hl(0, '@markup.strong', { bold = true }) 394 | vim.api.nvim_set_hl(0, '@markup.italic', { italic = true }) 395 | vim.api.nvim_set_hl(0, '@markup.strikethrough', { strikethrough = true }) 396 | vim.api.nvim_set_hl(0, '@markup.underline', { underline = true }) 397 | vim.api.nvim_set_hl(0, '@markup.heading', { link = 'Title' }) 398 | vim.api.nvim_set_hl(0, '@markup.quote', { fg = gui0C, ctermfg = cterm0C }) 399 | vim.api.nvim_set_hl(0, '@markup.math', { link = 'Special' }) 400 | vim.api.nvim_set_hl(0, '@markup.link', { fg = gui08, ctermfg = cterm08 }) 401 | vim.api.nvim_set_hl(0, '@markup.link.label', { link = '@markup.link' }) 402 | vim.api.nvim_set_hl(0, '@markup.link.url', { fg = gui09, ctermfg = cterm09 }) 403 | vim.api.nvim_set_hl(0, '@markup.raw', { fg = gui0B, ctermfg = cterm0B }) 404 | vim.api.nvim_set_hl(0, '@markup.raw.block', { link = '@markup.raw' }) 405 | vim.api.nvim_set_hl(0, '@markup.list', { link = 'SpecialChar' }) 406 | vim.api.nvim_set_hl(0, '@markup.list.checked', { link = 'DiagnosticOk' }) 407 | vim.api.nvim_set_hl(0, '@markup.list.unchecked', { link = 'DiagnosticError' }) 408 | vim.api.nvim_set_hl(0, '@diff.plus', { link = 'Added' }) 409 | vim.api.nvim_set_hl(0, '@diff.minus', { link = 'Removed' }) 410 | vim.api.nvim_set_hl(0, '@diff.delta', { link = 'Changed' }) 411 | vim.api.nvim_set_hl(0, '@tag', { link = 'Tag' }) 412 | vim.api.nvim_set_hl(0, '@tag.builtin', { fg = gui09, ctermfg = cterm09, italic = true }) 413 | vim.api.nvim_set_hl(0, '@tag.attribute', { link = 'Special' }) 414 | vim.api.nvim_set_hl(0, '@tag.delimiter', { link = 'Delimiter' }) 415 | 416 | -- LSP 417 | vim.api.nvim_set_hl(0, '@lsp.type.class', { link = '@type' }) 418 | vim.api.nvim_set_hl(0, '@lsp.type.comment', { link = '@comment' }) 419 | vim.api.nvim_set_hl(0, '@lsp.type.decorator', { link = '@attribute' }) 420 | vim.api.nvim_set_hl(0, '@lsp.type.enum', { link = '@type' }) 421 | vim.api.nvim_set_hl(0, '@lsp.type.enumMember', { link = '@constant' }) 422 | vim.api.nvim_set_hl(0, '@lsp.type.event', { link = '@type' }) 423 | vim.api.nvim_set_hl(0, '@lsp.type.function', { link = '@function' }) 424 | vim.api.nvim_set_hl(0, '@lsp.type.interface', { link = '@type' }) 425 | vim.api.nvim_set_hl(0, '@lsp.type.keyword', { link = '@keyword' }) 426 | vim.api.nvim_set_hl(0, '@lsp.type.macro', { link = '@function.macro' }) 427 | vim.api.nvim_set_hl(0, '@lsp.type.method', { link = '@function.method' }) 428 | vim.api.nvim_set_hl(0, '@lsp.type.modifier', { link = '@type.modifier' }) 429 | vim.api.nvim_set_hl(0, '@lsp.type.namespace', { link = '@module' }) 430 | vim.api.nvim_set_hl(0, '@lsp.type.number', { link = '@number' }) 431 | vim.api.nvim_set_hl(0, '@lsp.type.operator', { link = '@operator' }) 432 | vim.api.nvim_set_hl(0, '@lsp.type.parameter', { link = '@variable.parameter' }) 433 | vim.api.nvim_set_hl(0, '@lsp.type.property', { link = '@property' }) 434 | vim.api.nvim_set_hl(0, '@lsp.type.regexp', { link = '@string.regexp' }) 435 | vim.api.nvim_set_hl(0, '@lsp.type.string', { link = '@string' }) 436 | vim.api.nvim_set_hl(0, '@lsp.type.struct', { link = '@type' }) 437 | vim.api.nvim_set_hl(0, '@lsp.type.type', { link = '@type' }) 438 | vim.api.nvim_set_hl(0, '@lsp.type.typeParameter', { link = '@variable.parameter' }) 439 | vim.api.nvim_set_hl(0, '@lsp.type.variable', { link = '@variable' }) 440 | 441 | -- LSP: Rust 442 | vim.api.nvim_set_hl(0, '@lsp.type.builtinType.rust', { link = '@type.builtin' }) 443 | vim.api.nvim_set_hl(0, '@lsp.type.escapeSequence.rust', { link = '@string.escape' }) 444 | vim.api.nvim_set_hl(0, '@lsp.type.formatSpecifier.rust', { link = '@operator' }) 445 | vim.api.nvim_set_hl(0, '@lsp.type.lifetime.rust', { link = '@attribute' }) 446 | vim.api.nvim_set_hl(0, '@lsp.type.punctuation.rust', { link = '@punctuation.delimiter' }) 447 | vim.api.nvim_set_hl(0, '@lsp.type.selfKeyword.rust', { link = '@variable.builtin' }) 448 | vim.api.nvim_set_hl(0, '@lsp.type.selfTypeKeyword.rust', { link = '@type.builtin' }) 449 | vim.api.nvim_set_hl(0, '@lsp.mod.attribute', { italic = true }) 450 | vim.api.nvim_set_hl(0, '@lsp.mod.controlFlow', { link = '@keyword.repeat' }) 451 | vim.api.nvim_set_hl(0, '@lsp.mod.intraDocLink.rust', { link = '@markup.link' }) 452 | vim.api.nvim_set_hl(0, '@lsp.typemod.generic.injected.rust', { link = '@variable' }) 453 | vim.api.nvim_set_hl(0, '@lsp.typemod.operator.controlFlow.rust', { link = '@operator' }) 454 | vim.api.nvim_set_hl(0, '@lsp.typemod.function.associated.rust', { link = '@function.method' }) 455 | 456 | -- LSP: Lua 457 | vim.api.nvim_set_hl(0, '@lsp.typemod.keyword.documentation.lua', { link = '@tag' }) 458 | 459 | -- LSP: Markdown 460 | vim.api.nvim_set_hl(0, '@lsp.type.class.markdown', { link = '@lsp' }) 461 | 462 | -- LSP (non-syntax) 463 | vim.api.nvim_set_hl(0, 'LspReferenceText', { link = 'Search' }) 464 | vim.api.nvim_set_hl(0, 'LspReferenceRead', { fg = gui01, bg = gui14, ctermfg = cterm01, ctermbg = cterm14 }) 465 | vim.api.nvim_set_hl(0, 'LspReferenceWrite', { fg = gui01, bg = gui12, ctermfg = cterm01, ctermbg = cterm12 }) 466 | vim.api.nvim_set_hl(0, 'LspCodeLens', { link = 'NonText' }) 467 | vim.api.nvim_set_hl(0, 'LspCodeLensSeparator', { link = 'LspCodeLens' }) 468 | vim.api.nvim_set_hl(0, 'LspInlayHint', { link = 'NonText' }) 469 | vim.api.nvim_set_hl(0, 'LspSignatureActiveParameter', { link = 'Visual' }) 470 | 471 | -- vim: filetype=lua 472 | -------------------------------------------------------------------------------- /colors/seti.lua: -------------------------------------------------------------------------------- 1 | -- Seti UI scheme by 2 | -- 3 | -- Generated from this template: 4 | -- 5 | -- - base16-nvim (https://github.com/wincent/base16-nvim) 6 | -- by Greg Hurrell (https://github.com/wincent) 7 | -- 8 | -- Template based on: 9 | -- 10 | -- - base16-vim (https://github.com/chriskempson/base16-vim) 11 | -- by Chris Kempson (https://github.com/chriskempson); and its fork: 12 | -- - tinted-vim (https://github.com/tinted-theming/tinted-vim) 13 | -- by the Tinted Theming contributors. 14 | 15 | -- Base16 colors. 16 | local gui00 = "#151718" 17 | local gui01 = "#282a2b" 18 | local gui02 = "#3B758C" 19 | local gui03 = "#41535B" 20 | local gui04 = "#43a5d5" 21 | local gui05 = "#d6d6d6" 22 | local gui06 = "#eeeeee" 23 | local gui07 = "#ffffff" 24 | local gui08 = "#Cd3f45" 25 | local gui09 = "#db7b55" 26 | local gui0A = "#e6cd69" 27 | local gui0B = "#9fca56" 28 | local gui0C = "#55dbbe" 29 | local gui0D = "#55b5db" 30 | local gui0E = "#a074c4" 31 | local gui0F = "#8a553f" 32 | 33 | -- Base24 colors. 34 | local gui10 = "#151718" 35 | local gui11 = "#151718" 36 | local gui12 = "#Cd3f45" 37 | local gui13 = "#e6cd69" 38 | local gui14 = "#9fca56" 39 | local gui15 = "#55dbbe" 40 | local gui16 = "#55b5db" 41 | local gui17 = "#a074c4" 42 | 43 | -- Base16 colors. 44 | local cterm00 = 0 45 | local cterm03 = 8 46 | local cterm05 = 7 47 | local cterm07 = 15 48 | local cterm08 = 1 49 | local cterm0A = 3 50 | local cterm0B = 2 51 | local cterm0C = 6 52 | local cterm0D = 4 53 | local cterm0E = 5 54 | local cterm01 = 10 55 | local cterm02 = 11 56 | local cterm04 = 12 57 | local cterm06 = 13 58 | local cterm09 = 9 59 | local cterm0F = 14 60 | 61 | -- Base24 colors. 62 | local cterm10 = cterm00 63 | local cterm11 = cterm00 64 | local cterm12 = 9 65 | local cterm13 = 11 66 | local cterm14 = 10 67 | local cterm15 = 14 68 | local cterm16 = 12 69 | local cterm17 = 13 70 | 71 | vim.cmd [[ 72 | highlight clear 73 | syntax reset 74 | ]] 75 | vim.g.colors_name = "seti" 76 | 77 | -- Vim editor colors 78 | vim.api.nvim_set_hl(0, 'Normal', { fg = gui05, bg = gui00, ctermfg = cterm05, ctermbg = cterm00 }) 79 | vim.api.nvim_set_hl(0, 'Bold', { bold = true }) 80 | vim.api.nvim_set_hl(0, 'Debug', { fg = gui08, ctermfg = cterm08 }) 81 | vim.api.nvim_set_hl(0, 'Directory', { fg = gui0D, ctermfg = cterm0D }) 82 | vim.api.nvim_set_hl(0, 'Error', { fg = gui00, bg = gui08, ctermfg = cterm00, ctermbg = cterm08 }) 83 | vim.api.nvim_set_hl(0, 'ErrorMsg', { fg = gui08, bg = gui00, ctermfg = cterm08, ctermbg = cterm00 }) 84 | vim.api.nvim_set_hl(0, 'Exception', { fg = gui08, ctermfg = cterm08 }) 85 | vim.api.nvim_set_hl(0, 'FoldColumn', { fg = gui0C, bg = gui01, ctermfg = cterm0C, ctermbg = cterm01 }) 86 | vim.api.nvim_set_hl(0, 'Folded', { fg = gui03, bg = gui01, ctermfg = cterm03, ctermbg = cterm01 }) 87 | vim.api.nvim_set_hl(0, 'IncSearch', { fg = gui01, bg = gui09, ctermfg = cterm01, ctermbg = cterm09 }) 88 | vim.api.nvim_set_hl(0, 'Italic', {}) 89 | vim.api.nvim_set_hl(0, 'Macro', { fg = gui08, ctermfg = cterm08 }) 90 | vim.api.nvim_set_hl(0, 'MatchParen', { bg = gui03, ctermbg = cterm03 }) 91 | vim.api.nvim_set_hl(0, 'ModeMsg', { fg = gui0B, ctermfg = cterm0B }) 92 | vim.api.nvim_set_hl(0, 'MoreMsg', { fg = gui0B, ctermfg = cterm0B }) 93 | vim.api.nvim_set_hl(0, 'Question', { fg = gui0D, ctermfg = cterm0D }) 94 | vim.api.nvim_set_hl(0, 'Search', { fg = gui01, bg = gui0A, ctermfg = cterm01, ctermbg = cterm0A }) 95 | vim.api.nvim_set_hl(0, 'Substitute', { fg = gui01, bg = gui0A, ctermfg = cterm01, ctermbg = cterm0A }) 96 | vim.api.nvim_set_hl(0, 'SpecialKey', { fg = gui03, ctermfg = cterm03 }) 97 | vim.api.nvim_set_hl(0, 'TooLong', { fg = gui08, ctermfg = cterm08 }) 98 | vim.api.nvim_set_hl(0, 'Underlined', { fg = gui08, ctermfg = cterm08 }) 99 | vim.api.nvim_set_hl(0, 'Visual', { bg = gui02, ctermbg = cterm02 }) 100 | vim.api.nvim_set_hl(0, 'VisualNOS', { fg = gui08, ctermfg = cterm08 }) 101 | vim.api.nvim_set_hl(0, 'WarningMsg', { fg = gui08, ctermfg = cterm08 }) 102 | vim.api.nvim_set_hl(0, 'WildMenu', { fg = gui08, bg = gui0A, ctermfg = cterm08 }) 103 | vim.api.nvim_set_hl(0, 'Title', { fg = gui0D, ctermfg = cterm0D }) 104 | vim.api.nvim_set_hl(0, 'Conceal', { fg = gui0D, bg = gui00, ctermfg = cterm0D, ctermbg = cterm00 }) 105 | vim.api.nvim_set_hl(0, 'Cursor', { fg = gui00, bg = gui05, ctermfg = cterm00, ctermbg = cterm05 }) 106 | vim.api.nvim_set_hl(0, 'NonText', { fg = gui03, ctermfg = cterm03 }) 107 | vim.api.nvim_set_hl(0, 'LineNr', { fg = gui03, bg = gui01, ctermfg = cterm03, ctermbg = cterm01 }) 108 | vim.api.nvim_set_hl(0, 'SignColumn', { fg = gui03, bg = gui01, ctermfg = cterm03, ctermbg = cterm01 }) 109 | vim.api.nvim_set_hl(0, 'StatusLine', { fg = gui04, bg = gui02, ctermfg = cterm04, ctermbg = cterm02 }) 110 | vim.api.nvim_set_hl(0, 'StatusLineNC', { fg = gui03, bg = gui01, ctermfg = cterm03, ctermbg = cterm01 }) 111 | vim.api.nvim_set_hl(0, 'VertSplit', { fg = gui02, bg = gui02, ctermfg = cterm02, ctermbg = cterm02 }) 112 | vim.api.nvim_set_hl(0, 'ColorColumn', { bg = gui01, ctermbg = cterm01 }) 113 | vim.api.nvim_set_hl(0, 'CursorColumn', { bg = gui01, ctermbg = cterm01 }) 114 | vim.api.nvim_set_hl(0, 'CursorLine', { bg = gui01, ctermbg = cterm01 }) 115 | vim.api.nvim_set_hl(0, 'CursorLineNr', { fg = gui04, bg = gui01, ctermfg = cterm04, ctermbg = cterm01 }) 116 | vim.api.nvim_set_hl(0, 'QuickFixLine', { bg = gui01, ctermbg = cterm01 }) 117 | vim.api.nvim_set_hl(0, 'PMenu', { fg = gui05, bg = gui01, ctermfg = cterm05, ctermbg = cterm01 }) 118 | vim.api.nvim_set_hl(0, 'PMenuSel', { fg = gui01, bg = gui05, ctermfg = cterm01, ctermbg = cterm05 }) 119 | vim.api.nvim_set_hl(0, 'TabLine', { fg = gui03, bg = gui01, ctermfg = cterm03, ctermbg = cterm01 }) 120 | vim.api.nvim_set_hl(0, 'TabLineFill', { fg = gui03, bg = gui01, ctermfg = cterm03, ctermbg = cterm01 }) 121 | vim.api.nvim_set_hl(0, 'TabLineSel', { fg = gui0B, bg = gui01, ctermfg = cterm0B, ctermbg = cterm01 }) 122 | 123 | -- Standard syntax highlighting 124 | vim.api.nvim_set_hl(0, 'Boolean', { fg = gui09, ctermfg = cterm09 }) 125 | vim.api.nvim_set_hl(0, 'Character', { fg = gui08, ctermfg = cterm08 }) 126 | vim.api.nvim_set_hl(0, 'Comment', { fg = gui03, ctermfg = cterm03 }) 127 | vim.api.nvim_set_hl(0, 'Conditional', { fg = gui0E, ctermfg = cterm0E }) 128 | vim.api.nvim_set_hl(0, 'Constant', { fg = gui09, ctermfg = cterm09 }) 129 | vim.api.nvim_set_hl(0, 'Define', { fg = gui0E, ctermfg = cterm0E }) 130 | vim.api.nvim_set_hl(0, 'Delimiter', { fg = gui0F, ctermfg = cterm0F }) 131 | vim.api.nvim_set_hl(0, 'Float', { fg = gui09, ctermfg = cterm09 }) 132 | vim.api.nvim_set_hl(0, 'Function', { fg = gui0D, ctermfg = cterm0D }) 133 | vim.api.nvim_set_hl(0, 'Identifier', { fg = gui08, ctermfg = cterm08 }) 134 | vim.api.nvim_set_hl(0, 'Include', { fg = gui0D, ctermfg = cterm0D }) 135 | vim.api.nvim_set_hl(0, 'Keyword', { fg = gui0E, ctermfg = cterm0E }) 136 | vim.api.nvim_set_hl(0, 'Label', { fg = gui0A, ctermfg = cterm0A }) 137 | vim.api.nvim_set_hl(0, 'Number', { fg = gui09, ctermfg = cterm09 }) 138 | vim.api.nvim_set_hl(0, 'Operator', { fg = gui05, ctermfg = cterm05 }) 139 | vim.api.nvim_set_hl(0, 'PreProc', { fg = gui0A, ctermfg = cterm0A }) 140 | vim.api.nvim_set_hl(0, 'Repeat', { fg = gui0A, ctermfg = cterm0A }) 141 | vim.api.nvim_set_hl(0, 'Special', { fg = gui0C, ctermfg = cterm0C }) 142 | vim.api.nvim_set_hl(0, 'SpecialChar', { fg = gui0F, ctermfg = cterm0F }) 143 | vim.api.nvim_set_hl(0, 'Statement', { fg = gui0E, ctermfg = cterm0E }) 144 | vim.api.nvim_set_hl(0, 'StorageClass', { fg = gui0A, ctermfg = cterm0A }) 145 | vim.api.nvim_set_hl(0, 'String', { fg = gui0B, ctermfg = cterm0B }) 146 | vim.api.nvim_set_hl(0, 'Structure', { fg = gui0E, ctermfg = cterm0E }) 147 | vim.api.nvim_set_hl(0, 'Tag', { fg = gui0A, ctermfg = cterm0A }) 148 | vim.api.nvim_set_hl(0, 'Todo', { fg = gui0A, bg = gui01, ctermfg = cterm0A, ctermbg = cterm01 }) 149 | vim.api.nvim_set_hl(0, 'Type', { fg = gui0A, ctermfg = cterm0A }) 150 | vim.api.nvim_set_hl(0, 'Typedef', { fg = gui0A, ctermfg = cterm0A }) 151 | 152 | -- C highlighting 153 | vim.api.nvim_set_hl(0, 'cOperator', { fg = gui0C, ctermfg = cterm0C }) 154 | vim.api.nvim_set_hl(0, 'cPreCondit', { fg = gui0E, ctermfg = cterm0E }) 155 | 156 | -- C# highlighting 157 | vim.api.nvim_set_hl(0, 'csClass', { fg = gui0A, ctermfg = cterm0A }) 158 | vim.api.nvim_set_hl(0, 'csAttribute', { fg = gui0A, ctermfg = cterm0A }) 159 | vim.api.nvim_set_hl(0, 'csModifier', { fg = gui0E, ctermfg = cterm0E }) 160 | vim.api.nvim_set_hl(0, 'csType', { fg = gui08, ctermfg = cterm08 }) 161 | vim.api.nvim_set_hl(0, 'csUnspecifiedStatement', { fg = gui0D, ctermfg = cterm0D }) 162 | vim.api.nvim_set_hl(0, 'csContextualStatement', { fg = gui0E, ctermfg = cterm0E }) 163 | vim.api.nvim_set_hl(0, 'csNewDecleration', { fg = gui08, ctermfg = cterm08 }) 164 | 165 | -- CSS highlighting 166 | vim.api.nvim_set_hl(0, 'cssBraces', { fg = gui05, ctermfg = cterm05 }) 167 | vim.api.nvim_set_hl(0, 'cssClassName', { fg = gui0E, ctermfg = cterm0E }) 168 | vim.api.nvim_set_hl(0, 'cssColor', { fg = gui0C, ctermfg = cterm0C }) 169 | 170 | -- Diff highlighting 171 | vim.api.nvim_set_hl(0, 'DiffAdd', { fg = gui0B, bg = gui01, ctermfg = cterm0B, ctermbg = cterm01 }) 172 | vim.api.nvim_set_hl(0, 'DiffChange', { fg = gui03, bg = gui01, ctermfg = cterm03, ctermbg = cterm01 }) 173 | vim.api.nvim_set_hl(0, 'DiffDelete', { fg = gui08, bg = gui01, ctermfg = cterm08, ctermbg = cterm01 }) 174 | vim.api.nvim_set_hl(0, 'DiffText', { fg = gui0D, bg = gui01, ctermfg = cterm0D, ctermbg = cterm01 }) 175 | vim.api.nvim_set_hl(0, 'DiffAdded', { fg = gui0B, bg = gui00, ctermfg = cterm0B, ctermbg = cterm00 }) 176 | vim.api.nvim_set_hl(0, 'DiffFile', { fg = gui08, bg = gui00, ctermfg = cterm08, ctermbg = cterm00 }) 177 | vim.api.nvim_set_hl(0, 'DiffNewFile', { fg = gui0B, bg = gui00, ctermfg = cterm0B, ctermbg = cterm00 }) 178 | vim.api.nvim_set_hl(0, 'DiffLine', { fg = gui0D, bg = gui00, ctermfg = cterm0D, ctermbg = cterm00 }) 179 | vim.api.nvim_set_hl(0, 'DiffRemoved', { fg = gui08, bg = gui00, ctermfg = cterm08, ctermbg = cterm00 }) 180 | 181 | -- Git highlighting 182 | vim.api.nvim_set_hl(0, 'gitcommitOverflow', { fg = gui08, ctermfg = cterm08 }) 183 | vim.api.nvim_set_hl(0, 'gitcommitSummary', { fg = gui0B, ctermfg = cterm0B }) 184 | vim.api.nvim_set_hl(0, 'gitcommitComment', { fg = gui03, ctermfg = cterm03 }) 185 | vim.api.nvim_set_hl(0, 'gitcommitUntracked', { fg = gui03, ctermfg = cterm03 }) 186 | vim.api.nvim_set_hl(0, 'gitcommitDiscarded', { fg = gui03, ctermfg = cterm03 }) 187 | vim.api.nvim_set_hl(0, 'gitcommitSelected', { fg = gui03, ctermfg = cterm03 }) 188 | vim.api.nvim_set_hl(0, 'gitcommitHeader', { fg = gui0E, ctermfg = cterm0E }) 189 | vim.api.nvim_set_hl(0, 'gitcommitSelectedType', { fg = gui0D, ctermfg = cterm0D }) 190 | vim.api.nvim_set_hl(0, 'gitcommitUnmergedType', { fg = gui0D, ctermfg = cterm0D }) 191 | vim.api.nvim_set_hl(0, 'gitcommitDiscardedType', { fg = gui0D, ctermfg = cterm0D }) 192 | vim.api.nvim_set_hl(0, 'gitcommitBranch', { fg = gui09, ctermfg = cterm09, bold = true }) 193 | vim.api.nvim_set_hl(0, 'gitcommitUntrackedFile', { fg = gui0A, ctermfg = cterm0A }) 194 | vim.api.nvim_set_hl(0, 'gitcommitUnmergedFile', { fg = gui08, ctermfg = cterm08, bold = true }) 195 | vim.api.nvim_set_hl(0, 'gitcommitDiscardedFile', { fg = gui08, ctermfg = cterm08, bold = true }) 196 | vim.api.nvim_set_hl(0, 'gitcommitSelectedFile', { fg = gui0B, ctermfg = cterm0B, bold = true }) 197 | 198 | -- GitGutter highlighting 199 | vim.api.nvim_set_hl(0, 'GitGutterAdd', { fg = gui0B, bg = gui01, ctermfg = cterm0B, ctermbg = cterm01 }) 200 | vim.api.nvim_set_hl(0, 'GitGutterChange', { fg = gui0D, bg = gui01, ctermfg = cterm0D, ctermbg = cterm01 }) 201 | vim.api.nvim_set_hl(0, 'GitGutterDelete', { fg = gui08, bg = gui01, ctermfg = cterm08, ctermbg = cterm01 }) 202 | vim.api.nvim_set_hl(0, 'GitGutterChangeDelete', { fg = gui0E, bg = gui01, ctermfg = cterm0E, ctermbg = cterm01 }) 203 | 204 | -- HTML highlighting 205 | vim.api.nvim_set_hl(0, 'htmlBold', { fg = gui0A, ctermfg = cterm0A }) 206 | vim.api.nvim_set_hl(0, 'htmlItalic', { fg = gui0E, ctermfg = cterm0E }) 207 | vim.api.nvim_set_hl(0, 'htmlEndTag', { fg = gui05, ctermfg = cterm05 }) 208 | vim.api.nvim_set_hl(0, 'htmlTag', { fg = gui05, ctermfg = cterm05 }) 209 | 210 | -- JavaScript highlighting 211 | vim.api.nvim_set_hl(0, 'javaScript', { fg = gui05, ctermfg = cterm05 }) 212 | vim.api.nvim_set_hl(0, 'javaScriptBraces', { fg = gui05, ctermfg = cterm05 }) 213 | vim.api.nvim_set_hl(0, 'javaScriptNumber', { fg = gui09, ctermfg = cterm09 }) 214 | 215 | -- pangloss/vim-javascript highlighting 216 | vim.api.nvim_set_hl(0, 'jsOperator', { fg = gui0D, ctermfg = cterm0D }) 217 | vim.api.nvim_set_hl(0, 'jsStatement', { fg = gui0E, ctermfg = cterm0E }) 218 | vim.api.nvim_set_hl(0, 'jsReturn', { fg = gui0E, ctermfg = cterm0E }) 219 | vim.api.nvim_set_hl(0, 'jsThis', { fg = gui08, ctermfg = cterm08 }) 220 | vim.api.nvim_set_hl(0, 'jsClassDefinition', { fg = gui0A, ctermfg = cterm0A }) 221 | vim.api.nvim_set_hl(0, 'jsFunction', { fg = gui0E, ctermfg = cterm0E }) 222 | vim.api.nvim_set_hl(0, 'jsFuncName', { fg = gui0D, ctermfg = cterm0D }) 223 | vim.api.nvim_set_hl(0, 'jsFuncCall', { fg = gui0D, ctermfg = cterm0D }) 224 | vim.api.nvim_set_hl(0, 'jsClassFuncName', { fg = gui0D, ctermfg = cterm0D }) 225 | vim.api.nvim_set_hl(0, 'jsClassMethodType', { fg = gui0E, ctermfg = cterm0E }) 226 | vim.api.nvim_set_hl(0, 'jsRegexpString', { fg = gui0C, ctermfg = cterm0C }) 227 | vim.api.nvim_set_hl(0, 'jsGlobalObjects', { fg = gui0A, ctermfg = cterm0A }) 228 | vim.api.nvim_set_hl(0, 'jsGlobalNodeObjects', { fg = gui0A, ctermfg = cterm0A }) 229 | vim.api.nvim_set_hl(0, 'jsExceptions', { fg = gui0A, ctermfg = cterm0A }) 230 | vim.api.nvim_set_hl(0, 'jsBuiltins', { fg = gui0A, ctermfg = cterm0A }) 231 | 232 | -- Diagnostics (legacy). 233 | vim.api.nvim_set_hl(0, 'LspDiagnosticsDefaultError', { fg = gui08, ctermfg = cterm08 }) 234 | vim.api.nvim_set_hl(0, 'LspDiagnosticsDefaultWarning', { fg = gui09, ctermfg = cterm09 }) 235 | vim.api.nvim_set_hl(0, 'LspDiagnosticsDefaultInformation', { fg = gui0C, ctermfg = cterm0C }) 236 | vim.api.nvim_set_hl(0, 'LspDiagnosticsDefaultHint', { fg = gui0D, ctermfg = cterm0D }) 237 | 238 | -- Diagnostics (modern). 239 | vim.api.nvim_set_hl(0, 'DiagnosticError', { fg = gui08, ctermfg = cterm08 }) 240 | vim.api.nvim_set_hl(0, 'DiagnosticWarn', { fg = gui09, ctermfg = cterm09 }) 241 | vim.api.nvim_set_hl(0, 'DiagnosticInfo', { fg = gui0C, ctermfg = cterm0C }) 242 | vim.api.nvim_set_hl(0, 'DiagnosticHint', { fg = gui0D, ctermfg = cterm0D }) 243 | vim.api.nvim_set_hl(0, 'DiagnosticOk', { fg = gui0B, ctermfg = cterm0B }) 244 | vim.api.nvim_set_hl(0, 'DiagnosticUnderlineError', { ctermfg = cterm00, ctermbg = cterm08, underline = true, sp = gui08 }) 245 | vim.api.nvim_set_hl(0, 'DiagnosticUnderlineWarn', { ctermfg = cterm00, ctermbg = cterm09, underline = true, sp = gui09 }) 246 | vim.api.nvim_set_hl(0, 'DiagnosticUnderlineInfo', { ctermfg = cterm00, ctermbg = cterm0C, underline = true, sp = gui0C }) 247 | vim.api.nvim_set_hl(0, 'DiagnosticUnderlineHint', { ctermfg = cterm00, ctermbg = cterm0D, underline = true, sp = gui0D }) 248 | vim.api.nvim_set_hl(0, 'DiagnosticUnderlineOk', { ctermfg = cterm00, ctermbg = cterm0B, underline = true, sp = gui0B }) 249 | vim.api.nvim_set_hl(0, 'DiagnosticFloatingError', { fg = gui08, bg = gui01, ctermfg = cterm08, ctermbg = cterm01 }) 250 | vim.api.nvim_set_hl(0, 'DiagnosticFloatingWarn', { fg = gui09, bg = gui01, ctermfg = cterm09, ctermbg = cterm01 }) 251 | vim.api.nvim_set_hl(0, 'DiagnosticFloatingInfo', { fg = gui0C, bg = gui01, ctermfg = cterm0C, ctermbg = cterm01 }) 252 | vim.api.nvim_set_hl(0, 'DiagnosticFloatingHint', { fg = gui0D, bg = gui01, ctermfg = cterm0D, ctermbg = cterm01 }) 253 | vim.api.nvim_set_hl(0, 'DiagnosticFloatingOk', { fg = gui0B, bg = gui01, ctermfg = cterm0B, ctermbg = cterm01 }) 254 | vim.api.nvim_set_hl(0, 'DiagnosticDeprecated', { ctermfg = cterm0F, ctermbg = cterm0F, strikethrough = true }) 255 | vim.api.nvim_set_hl(0, 'DiagnosticUnnecessary', { link = 'Comment' }) 256 | 257 | -- Mail highlighting 258 | vim.api.nvim_set_hl(0, 'mailQuoted1', { fg = gui0A, ctermfg = cterm0A }) 259 | vim.api.nvim_set_hl(0, 'mailQuoted2', { fg = gui0B, ctermfg = cterm0B }) 260 | vim.api.nvim_set_hl(0, 'mailQuoted3', { fg = gui0E, ctermfg = cterm0E }) 261 | vim.api.nvim_set_hl(0, 'mailQuoted4', { fg = gui0C, ctermfg = cterm0C }) 262 | vim.api.nvim_set_hl(0, 'mailQuoted5', { fg = gui0D, ctermfg = cterm0D }) 263 | vim.api.nvim_set_hl(0, 'mailQuoted6', { fg = gui0A, ctermfg = cterm0A }) 264 | vim.api.nvim_set_hl(0, 'mailURL', { fg = gui0D, ctermfg = cterm0D }) 265 | vim.api.nvim_set_hl(0, 'mailEmail', { fg = gui0D, ctermfg = cterm0D }) 266 | 267 | -- Markdown highlighting 268 | vim.api.nvim_set_hl(0, 'markdownCode', { fg = gui0B, ctermfg = cterm0B }) 269 | vim.api.nvim_set_hl(0, 'markdownError', { fg = gui05, bg = gui00, ctermfg = cterm05, ctermbg = cterm00 }) 270 | vim.api.nvim_set_hl(0, 'markdownCodeBlock', { fg = gui0B, ctermfg = cterm0B }) 271 | vim.api.nvim_set_hl(0, 'markdownHeadingDelimiter', { fg = gui0D, ctermfg = cterm0D }) 272 | 273 | -- NERDTree highlighting 274 | vim.api.nvim_set_hl(0, 'NERDTreeDirSlash', { fg = gui0D, ctermfg = cterm0D }) 275 | vim.api.nvim_set_hl(0, 'NERDTreeExecFile', { fg = gui05, ctermfg = cterm05 }) 276 | 277 | -- PHP highlighting 278 | vim.api.nvim_set_hl(0, 'phpMemberSelector', { fg = gui05, ctermfg = cterm05 }) 279 | vim.api.nvim_set_hl(0, 'phpComparison', { fg = gui05, ctermfg = cterm05 }) 280 | vim.api.nvim_set_hl(0, 'phpParent', { fg = gui05, ctermfg = cterm05 }) 281 | vim.api.nvim_set_hl(0, 'phpMethodsVar', { fg = gui0C, ctermfg = cterm0C }) 282 | 283 | -- Python highlighting 284 | vim.api.nvim_set_hl(0, 'pythonOperator', { fg = gui0E, ctermfg = cterm0E }) 285 | vim.api.nvim_set_hl(0, 'pythonRepeat', { fg = gui0E, ctermfg = cterm0E }) 286 | vim.api.nvim_set_hl(0, 'pythonInclude', { fg = gui0E, ctermfg = cterm0E }) 287 | vim.api.nvim_set_hl(0, 'pythonStatement', { fg = gui0E, ctermfg = cterm0E }) 288 | 289 | -- Ruby highlighting 290 | vim.api.nvim_set_hl(0, 'rubyAttribute', { fg = gui0D, ctermfg = cterm0D }) 291 | vim.api.nvim_set_hl(0, 'rubyConstant', { fg = gui0A, ctermfg = cterm0A }) 292 | vim.api.nvim_set_hl(0, 'rubyInterpolationDelimiter', { fg = gui0F, ctermfg = cterm0F }) 293 | vim.api.nvim_set_hl(0, 'rubyRegexp', { fg = gui0C, ctermfg = cterm0C }) 294 | vim.api.nvim_set_hl(0, 'rubySymbol', { fg = gui0B, ctermfg = cterm0B }) 295 | vim.api.nvim_set_hl(0, 'rubyStringDelimiter', { fg = gui0B, ctermfg = cterm0B }) 296 | 297 | -- SASS highlighting 298 | vim.api.nvim_set_hl(0, 'sassidChar', { fg = gui08, ctermfg = cterm08 }) 299 | vim.api.nvim_set_hl(0, 'sassClassChar', { fg = gui09, ctermfg = cterm09 }) 300 | vim.api.nvim_set_hl(0, 'sassInclude', { fg = gui0E, ctermfg = cterm0E }) 301 | vim.api.nvim_set_hl(0, 'sassMixing', { fg = gui0E, ctermfg = cterm0E }) 302 | vim.api.nvim_set_hl(0, 'sassMixinName', { fg = gui0D, ctermfg = cterm0D }) 303 | 304 | -- Signify highlighting 305 | vim.api.nvim_set_hl(0, 'SignifySignAdd', { fg = gui0B, bg = gui01, ctermfg = cterm0B, ctermbg = cterm01 }) 306 | vim.api.nvim_set_hl(0, 'SignifySignChange', { fg = gui0D, bg = gui01, ctermfg = cterm0D, ctermbg = cterm01 }) 307 | vim.api.nvim_set_hl(0, 'SignifySignDelete', { fg = gui08, bg = gui01, ctermfg = cterm08, ctermbg = cterm01 }) 308 | 309 | -- Spelling highlighting 310 | vim.api.nvim_set_hl(0, 'SpellBad', { undercurl = true }) 311 | vim.api.nvim_set_hl(0, 'SpellLocal', { undercurl = true }) 312 | vim.api.nvim_set_hl(0, 'SpellCap', { undercurl = true }) 313 | vim.api.nvim_set_hl(0, 'SpellRare', { undercurl = true }) 314 | 315 | -- Startify highlighting 316 | vim.api.nvim_set_hl(0, 'StartifyBracket', { fg = gui03, ctermfg = cterm03 }) 317 | vim.api.nvim_set_hl(0, 'StartifyFile', { fg = gui07, ctermfg = cterm07 }) 318 | vim.api.nvim_set_hl(0, 'StartifyFooter', { fg = gui03, ctermfg = cterm03 }) 319 | vim.api.nvim_set_hl(0, 'StartifyHeader', { fg = gui0B, ctermfg = cterm0B }) 320 | vim.api.nvim_set_hl(0, 'StartifyNumber', { fg = gui09, ctermfg = cterm09 }) 321 | vim.api.nvim_set_hl(0, 'StartifyPath', { fg = gui03, ctermfg = cterm03 }) 322 | vim.api.nvim_set_hl(0, 'StartifySection', { fg = gui0E, ctermfg = cterm0E }) 323 | vim.api.nvim_set_hl(0, 'StartifySelect', { fg = gui0C, ctermfg = cterm0C }) 324 | vim.api.nvim_set_hl(0, 'StartifySlash', { fg = gui03, ctermfg = cterm03 }) 325 | vim.api.nvim_set_hl(0, 'StartifySpecial', { fg = gui03, ctermfg = cterm03 }) 326 | 327 | -- Java highlighting 328 | vim.api.nvim_set_hl(0, 'javaOperator', { fg = gui0D, ctermfg = cterm0D }) 329 | 330 | -- Treesitter 331 | vim.api.nvim_set_hl(0, '@variable', { link = 'Identifier' }) 332 | vim.api.nvim_set_hl(0, '@variable.builtin', { fg = gui05, ctermfg = cterm05, italic = true }) 333 | vim.api.nvim_set_hl(0, '@variable.parameter', { link = 'Identifier' }) 334 | vim.api.nvim_set_hl(0, '@variable.parameter.builtin', { link = '@variable.builtin' }) 335 | vim.api.nvim_set_hl(0, '@variable.member', { fg = gui04, ctermfg = cterm04 }) 336 | vim.api.nvim_set_hl(0, '@constant', { link = 'Constant' }) 337 | vim.api.nvim_set_hl(0, '@constant.builtin', { fg = gui09, ctermfg = cterm09, italic = true }) 338 | vim.api.nvim_set_hl(0, '@constant.macro', { link = 'Constant' }) 339 | vim.api.nvim_set_hl(0, '@module', { link = 'Identifier' }) 340 | vim.api.nvim_set_hl(0, '@module.builtin', { fg = gui05, ctermfg = cterm05, italic = true }) 341 | vim.api.nvim_set_hl(0, '@label', { link = 'Tag' }) 342 | vim.api.nvim_set_hl(0, '@string', { link = 'String' }) 343 | vim.api.nvim_set_hl(0, '@string.documentation', { link = 'String' }) 344 | vim.api.nvim_set_hl(0, '@string.regexp', { link = 'SpecialComment' }) 345 | vim.api.nvim_set_hl(0, '@string.escape', { link = 'SpecialComment' }) 346 | vim.api.nvim_set_hl(0, '@string.special', { link = 'SpecialComment' }) 347 | vim.api.nvim_set_hl(0, '@string.special.symbol', { link = 'SpecialComment' }) 348 | vim.api.nvim_set_hl(0, '@string.special.path', { fg = gui0D, ctermfg = cterm0D, italic = true }) 349 | vim.api.nvim_set_hl(0, '@string.special.url', { fg = gui08, ctermfg = cterm08, italic = true }) 350 | vim.api.nvim_set_hl(0, '@character', { link = 'Character' }) 351 | vim.api.nvim_set_hl(0, '@character.special', { link = 'SpecialChar' }) 352 | vim.api.nvim_set_hl(0, '@boolean', { link = 'Boolean' }) 353 | vim.api.nvim_set_hl(0, '@number', { link = 'Number' }) 354 | vim.api.nvim_set_hl(0, '@number.float', { link = 'Float' }) 355 | vim.api.nvim_set_hl(0, '@type', { link = 'Type' }) 356 | vim.api.nvim_set_hl(0, '@type.builtin', { fg = gui0A, ctermfg = cterm0A, italic = true }) 357 | vim.api.nvim_set_hl(0, '@type.definition', { link = 'Typedef' }) 358 | vim.api.nvim_set_hl(0, '@attribute', { link = 'Special' }) 359 | vim.api.nvim_set_hl(0, '@attribute.builtin', { fg = gui0C, ctermfg = cterm0C, italic = true }) 360 | vim.api.nvim_set_hl(0, '@property', { link = '@variable.member' }) 361 | vim.api.nvim_set_hl(0, '@function', { fg = gui16, ctermfg = cterm16 }) 362 | vim.api.nvim_set_hl(0, '@function.builtin', { fg = gui16, ctermfg = cterm16, italic = true }) 363 | vim.api.nvim_set_hl(0, '@function.call', { link = '@function' }) 364 | vim.api.nvim_set_hl(0, '@function.macro', { link = 'Macro' }) 365 | vim.api.nvim_set_hl(0, '@function.method', { link = 'Function' }) 366 | vim.api.nvim_set_hl(0, '@function.method.call', { link = '@function.method' }) 367 | vim.api.nvim_set_hl(0, '@constructor', { fg = gui0D, ctermfg = cterm0D, bold = true }) 368 | vim.api.nvim_set_hl(0, '@operator', { link = 'Operator' }) 369 | vim.api.nvim_set_hl(0, '@keyword', { link = 'Keyword' }) 370 | vim.api.nvim_set_hl(0, '@keyword.coroutine', { link = 'Repeat' }) 371 | vim.api.nvim_set_hl(0, '@keyword.function', { link = 'Keyword' }) 372 | vim.api.nvim_set_hl(0, '@keyword.operator', { link = 'Operator' }) 373 | vim.api.nvim_set_hl(0, '@keyword.import', { fg = gui0E, ctermfg = cterm0E, italic = true }) 374 | vim.api.nvim_set_hl(0, '@keyword.type', { link = 'Keyword' }) 375 | vim.api.nvim_set_hl(0, '@keyword.modifier', { link = 'Repeat' }) 376 | vim.api.nvim_set_hl(0, '@keyword.repeat', { link = 'Repeat' }) 377 | vim.api.nvim_set_hl(0, '@keyword.return', { link = 'Keyword' }) 378 | vim.api.nvim_set_hl(0, '@keyword.debug', { link = 'Debug' }) 379 | vim.api.nvim_set_hl(0, '@keyword.exception', { link = 'Exception' }) 380 | vim.api.nvim_set_hl(0, '@keyword.conditional', { link = 'Conditional' }) 381 | vim.api.nvim_set_hl(0, '@keyword.ternary', { link = 'Conditional' }) 382 | vim.api.nvim_set_hl(0, '@keyword.directive', { link = 'PreProc' }) 383 | vim.api.nvim_set_hl(0, '@keyword.directive.define', { link = 'Define' }) 384 | vim.api.nvim_set_hl(0, '@punctuation.delimiter', { link = 'Delimiter' }) 385 | vim.api.nvim_set_hl(0, '@punctuation.bracket', { link = 'Delimiter' }) 386 | vim.api.nvim_set_hl(0, '@punctuation.special', { link = 'Special' }) 387 | vim.api.nvim_set_hl(0, '@comment', { link = 'Comment' }) 388 | vim.api.nvim_set_hl(0, '@comment.documentation', { link = 'Comment' }) 389 | vim.api.nvim_set_hl(0, '@comment.error', { fg = gui08, ctermfg = cterm08, italic = true }) 390 | vim.api.nvim_set_hl(0, '@comment.warning', { fg = gui09, ctermfg = cterm09, italic = true }) 391 | vim.api.nvim_set_hl(0, '@comment.note', { fg = gui0D, ctermfg = cterm0D, italic = true }) 392 | vim.api.nvim_set_hl(0, '@comment.todo', { fg = gui0C, ctermfg = cterm0C, italic = true }) 393 | vim.api.nvim_set_hl(0, '@markup.strong', { bold = true }) 394 | vim.api.nvim_set_hl(0, '@markup.italic', { italic = true }) 395 | vim.api.nvim_set_hl(0, '@markup.strikethrough', { strikethrough = true }) 396 | vim.api.nvim_set_hl(0, '@markup.underline', { underline = true }) 397 | vim.api.nvim_set_hl(0, '@markup.heading', { link = 'Title' }) 398 | vim.api.nvim_set_hl(0, '@markup.quote', { fg = gui0C, ctermfg = cterm0C }) 399 | vim.api.nvim_set_hl(0, '@markup.math', { link = 'Special' }) 400 | vim.api.nvim_set_hl(0, '@markup.link', { fg = gui08, ctermfg = cterm08 }) 401 | vim.api.nvim_set_hl(0, '@markup.link.label', { link = '@markup.link' }) 402 | vim.api.nvim_set_hl(0, '@markup.link.url', { fg = gui09, ctermfg = cterm09 }) 403 | vim.api.nvim_set_hl(0, '@markup.raw', { fg = gui0B, ctermfg = cterm0B }) 404 | vim.api.nvim_set_hl(0, '@markup.raw.block', { link = '@markup.raw' }) 405 | vim.api.nvim_set_hl(0, '@markup.list', { link = 'SpecialChar' }) 406 | vim.api.nvim_set_hl(0, '@markup.list.checked', { link = 'DiagnosticOk' }) 407 | vim.api.nvim_set_hl(0, '@markup.list.unchecked', { link = 'DiagnosticError' }) 408 | vim.api.nvim_set_hl(0, '@diff.plus', { link = 'Added' }) 409 | vim.api.nvim_set_hl(0, '@diff.minus', { link = 'Removed' }) 410 | vim.api.nvim_set_hl(0, '@diff.delta', { link = 'Changed' }) 411 | vim.api.nvim_set_hl(0, '@tag', { link = 'Tag' }) 412 | vim.api.nvim_set_hl(0, '@tag.builtin', { fg = gui09, ctermfg = cterm09, italic = true }) 413 | vim.api.nvim_set_hl(0, '@tag.attribute', { link = 'Special' }) 414 | vim.api.nvim_set_hl(0, '@tag.delimiter', { link = 'Delimiter' }) 415 | 416 | -- LSP 417 | vim.api.nvim_set_hl(0, '@lsp.type.class', { link = '@type' }) 418 | vim.api.nvim_set_hl(0, '@lsp.type.comment', { link = '@comment' }) 419 | vim.api.nvim_set_hl(0, '@lsp.type.decorator', { link = '@attribute' }) 420 | vim.api.nvim_set_hl(0, '@lsp.type.enum', { link = '@type' }) 421 | vim.api.nvim_set_hl(0, '@lsp.type.enumMember', { link = '@constant' }) 422 | vim.api.nvim_set_hl(0, '@lsp.type.event', { link = '@type' }) 423 | vim.api.nvim_set_hl(0, '@lsp.type.function', { link = '@function' }) 424 | vim.api.nvim_set_hl(0, '@lsp.type.interface', { link = '@type' }) 425 | vim.api.nvim_set_hl(0, '@lsp.type.keyword', { link = '@keyword' }) 426 | vim.api.nvim_set_hl(0, '@lsp.type.macro', { link = '@function.macro' }) 427 | vim.api.nvim_set_hl(0, '@lsp.type.method', { link = '@function.method' }) 428 | vim.api.nvim_set_hl(0, '@lsp.type.modifier', { link = '@type.modifier' }) 429 | vim.api.nvim_set_hl(0, '@lsp.type.namespace', { link = '@module' }) 430 | vim.api.nvim_set_hl(0, '@lsp.type.number', { link = '@number' }) 431 | vim.api.nvim_set_hl(0, '@lsp.type.operator', { link = '@operator' }) 432 | vim.api.nvim_set_hl(0, '@lsp.type.parameter', { link = '@variable.parameter' }) 433 | vim.api.nvim_set_hl(0, '@lsp.type.property', { link = '@property' }) 434 | vim.api.nvim_set_hl(0, '@lsp.type.regexp', { link = '@string.regexp' }) 435 | vim.api.nvim_set_hl(0, '@lsp.type.string', { link = '@string' }) 436 | vim.api.nvim_set_hl(0, '@lsp.type.struct', { link = '@type' }) 437 | vim.api.nvim_set_hl(0, '@lsp.type.type', { link = '@type' }) 438 | vim.api.nvim_set_hl(0, '@lsp.type.typeParameter', { link = '@variable.parameter' }) 439 | vim.api.nvim_set_hl(0, '@lsp.type.variable', { link = '@variable' }) 440 | 441 | -- LSP: Rust 442 | vim.api.nvim_set_hl(0, '@lsp.type.builtinType.rust', { link = '@type.builtin' }) 443 | vim.api.nvim_set_hl(0, '@lsp.type.escapeSequence.rust', { link = '@string.escape' }) 444 | vim.api.nvim_set_hl(0, '@lsp.type.formatSpecifier.rust', { link = '@operator' }) 445 | vim.api.nvim_set_hl(0, '@lsp.type.lifetime.rust', { link = '@attribute' }) 446 | vim.api.nvim_set_hl(0, '@lsp.type.punctuation.rust', { link = '@punctuation.delimiter' }) 447 | vim.api.nvim_set_hl(0, '@lsp.type.selfKeyword.rust', { link = '@variable.builtin' }) 448 | vim.api.nvim_set_hl(0, '@lsp.type.selfTypeKeyword.rust', { link = '@type.builtin' }) 449 | vim.api.nvim_set_hl(0, '@lsp.mod.attribute', { italic = true }) 450 | vim.api.nvim_set_hl(0, '@lsp.mod.controlFlow', { link = '@keyword.repeat' }) 451 | vim.api.nvim_set_hl(0, '@lsp.mod.intraDocLink.rust', { link = '@markup.link' }) 452 | vim.api.nvim_set_hl(0, '@lsp.typemod.generic.injected.rust', { link = '@variable' }) 453 | vim.api.nvim_set_hl(0, '@lsp.typemod.operator.controlFlow.rust', { link = '@operator' }) 454 | vim.api.nvim_set_hl(0, '@lsp.typemod.function.associated.rust', { link = '@function.method' }) 455 | 456 | -- LSP: Lua 457 | vim.api.nvim_set_hl(0, '@lsp.typemod.keyword.documentation.lua', { link = '@tag' }) 458 | 459 | -- LSP: Markdown 460 | vim.api.nvim_set_hl(0, '@lsp.type.class.markdown', { link = '@lsp' }) 461 | 462 | -- LSP (non-syntax) 463 | vim.api.nvim_set_hl(0, 'LspReferenceText', { link = 'Search' }) 464 | vim.api.nvim_set_hl(0, 'LspReferenceRead', { fg = gui01, bg = gui14, ctermfg = cterm01, ctermbg = cterm14 }) 465 | vim.api.nvim_set_hl(0, 'LspReferenceWrite', { fg = gui01, bg = gui12, ctermfg = cterm01, ctermbg = cterm12 }) 466 | vim.api.nvim_set_hl(0, 'LspCodeLens', { link = 'NonText' }) 467 | vim.api.nvim_set_hl(0, 'LspCodeLensSeparator', { link = 'LspCodeLens' }) 468 | vim.api.nvim_set_hl(0, 'LspInlayHint', { link = 'NonText' }) 469 | vim.api.nvim_set_hl(0, 'LspSignatureActiveParameter', { link = 'Visual' }) 470 | 471 | -- vim: filetype=lua 472 | -------------------------------------------------------------------------------- /colors/stella.lua: -------------------------------------------------------------------------------- 1 | -- Stella scheme by Shrimpram 2 | -- 3 | -- Generated from this template: 4 | -- 5 | -- - base16-nvim (https://github.com/wincent/base16-nvim) 6 | -- by Greg Hurrell (https://github.com/wincent) 7 | -- 8 | -- Template based on: 9 | -- 10 | -- - base16-vim (https://github.com/chriskempson/base16-vim) 11 | -- by Chris Kempson (https://github.com/chriskempson); and its fork: 12 | -- - tinted-vim (https://github.com/tinted-theming/tinted-vim) 13 | -- by the Tinted Theming contributors. 14 | 15 | -- Base16 colors. 16 | local gui00 = "#2B213C" 17 | local gui01 = "#362B48" 18 | local gui02 = "#4D4160" 19 | local gui03 = "#655978" 20 | local gui04 = "#7F7192" 21 | local gui05 = "#998BAD" 22 | local gui06 = "#B4A5C8" 23 | local gui07 = "#EBDCFF" 24 | local gui08 = "#C79987" 25 | local gui09 = "#8865C6" 26 | local gui0A = "#C7C691" 27 | local gui0B = "#ACC79B" 28 | local gui0C = "#9BC7BF" 29 | local gui0D = "#A5AAD4" 30 | local gui0E = "#C594FF" 31 | local gui0F = "#C7AB87" 32 | 33 | -- Base24 colors. 34 | local gui10 = "#2B213C" 35 | local gui11 = "#2B213C" 36 | local gui12 = "#C79987" 37 | local gui13 = "#C7C691" 38 | local gui14 = "#ACC79B" 39 | local gui15 = "#9BC7BF" 40 | local gui16 = "#A5AAD4" 41 | local gui17 = "#C594FF" 42 | 43 | -- Base16 colors. 44 | local cterm00 = 0 45 | local cterm03 = 8 46 | local cterm05 = 7 47 | local cterm07 = 15 48 | local cterm08 = 1 49 | local cterm0A = 3 50 | local cterm0B = 2 51 | local cterm0C = 6 52 | local cterm0D = 4 53 | local cterm0E = 5 54 | local cterm01 = 10 55 | local cterm02 = 11 56 | local cterm04 = 12 57 | local cterm06 = 13 58 | local cterm09 = 9 59 | local cterm0F = 14 60 | 61 | -- Base24 colors. 62 | local cterm10 = cterm00 63 | local cterm11 = cterm00 64 | local cterm12 = 9 65 | local cterm13 = 11 66 | local cterm14 = 10 67 | local cterm15 = 14 68 | local cterm16 = 12 69 | local cterm17 = 13 70 | 71 | vim.cmd [[ 72 | highlight clear 73 | syntax reset 74 | ]] 75 | vim.g.colors_name = "stella" 76 | 77 | -- Vim editor colors 78 | vim.api.nvim_set_hl(0, 'Normal', { fg = gui05, bg = gui00, ctermfg = cterm05, ctermbg = cterm00 }) 79 | vim.api.nvim_set_hl(0, 'Bold', { bold = true }) 80 | vim.api.nvim_set_hl(0, 'Debug', { fg = gui08, ctermfg = cterm08 }) 81 | vim.api.nvim_set_hl(0, 'Directory', { fg = gui0D, ctermfg = cterm0D }) 82 | vim.api.nvim_set_hl(0, 'Error', { fg = gui00, bg = gui08, ctermfg = cterm00, ctermbg = cterm08 }) 83 | vim.api.nvim_set_hl(0, 'ErrorMsg', { fg = gui08, bg = gui00, ctermfg = cterm08, ctermbg = cterm00 }) 84 | vim.api.nvim_set_hl(0, 'Exception', { fg = gui08, ctermfg = cterm08 }) 85 | vim.api.nvim_set_hl(0, 'FoldColumn', { fg = gui0C, bg = gui01, ctermfg = cterm0C, ctermbg = cterm01 }) 86 | vim.api.nvim_set_hl(0, 'Folded', { fg = gui03, bg = gui01, ctermfg = cterm03, ctermbg = cterm01 }) 87 | vim.api.nvim_set_hl(0, 'IncSearch', { fg = gui01, bg = gui09, ctermfg = cterm01, ctermbg = cterm09 }) 88 | vim.api.nvim_set_hl(0, 'Italic', {}) 89 | vim.api.nvim_set_hl(0, 'Macro', { fg = gui08, ctermfg = cterm08 }) 90 | vim.api.nvim_set_hl(0, 'MatchParen', { bg = gui03, ctermbg = cterm03 }) 91 | vim.api.nvim_set_hl(0, 'ModeMsg', { fg = gui0B, ctermfg = cterm0B }) 92 | vim.api.nvim_set_hl(0, 'MoreMsg', { fg = gui0B, ctermfg = cterm0B }) 93 | vim.api.nvim_set_hl(0, 'Question', { fg = gui0D, ctermfg = cterm0D }) 94 | vim.api.nvim_set_hl(0, 'Search', { fg = gui01, bg = gui0A, ctermfg = cterm01, ctermbg = cterm0A }) 95 | vim.api.nvim_set_hl(0, 'Substitute', { fg = gui01, bg = gui0A, ctermfg = cterm01, ctermbg = cterm0A }) 96 | vim.api.nvim_set_hl(0, 'SpecialKey', { fg = gui03, ctermfg = cterm03 }) 97 | vim.api.nvim_set_hl(0, 'TooLong', { fg = gui08, ctermfg = cterm08 }) 98 | vim.api.nvim_set_hl(0, 'Underlined', { fg = gui08, ctermfg = cterm08 }) 99 | vim.api.nvim_set_hl(0, 'Visual', { bg = gui02, ctermbg = cterm02 }) 100 | vim.api.nvim_set_hl(0, 'VisualNOS', { fg = gui08, ctermfg = cterm08 }) 101 | vim.api.nvim_set_hl(0, 'WarningMsg', { fg = gui08, ctermfg = cterm08 }) 102 | vim.api.nvim_set_hl(0, 'WildMenu', { fg = gui08, bg = gui0A, ctermfg = cterm08 }) 103 | vim.api.nvim_set_hl(0, 'Title', { fg = gui0D, ctermfg = cterm0D }) 104 | vim.api.nvim_set_hl(0, 'Conceal', { fg = gui0D, bg = gui00, ctermfg = cterm0D, ctermbg = cterm00 }) 105 | vim.api.nvim_set_hl(0, 'Cursor', { fg = gui00, bg = gui05, ctermfg = cterm00, ctermbg = cterm05 }) 106 | vim.api.nvim_set_hl(0, 'NonText', { fg = gui03, ctermfg = cterm03 }) 107 | vim.api.nvim_set_hl(0, 'LineNr', { fg = gui03, bg = gui01, ctermfg = cterm03, ctermbg = cterm01 }) 108 | vim.api.nvim_set_hl(0, 'SignColumn', { fg = gui03, bg = gui01, ctermfg = cterm03, ctermbg = cterm01 }) 109 | vim.api.nvim_set_hl(0, 'StatusLine', { fg = gui04, bg = gui02, ctermfg = cterm04, ctermbg = cterm02 }) 110 | vim.api.nvim_set_hl(0, 'StatusLineNC', { fg = gui03, bg = gui01, ctermfg = cterm03, ctermbg = cterm01 }) 111 | vim.api.nvim_set_hl(0, 'VertSplit', { fg = gui02, bg = gui02, ctermfg = cterm02, ctermbg = cterm02 }) 112 | vim.api.nvim_set_hl(0, 'ColorColumn', { bg = gui01, ctermbg = cterm01 }) 113 | vim.api.nvim_set_hl(0, 'CursorColumn', { bg = gui01, ctermbg = cterm01 }) 114 | vim.api.nvim_set_hl(0, 'CursorLine', { bg = gui01, ctermbg = cterm01 }) 115 | vim.api.nvim_set_hl(0, 'CursorLineNr', { fg = gui04, bg = gui01, ctermfg = cterm04, ctermbg = cterm01 }) 116 | vim.api.nvim_set_hl(0, 'QuickFixLine', { bg = gui01, ctermbg = cterm01 }) 117 | vim.api.nvim_set_hl(0, 'PMenu', { fg = gui05, bg = gui01, ctermfg = cterm05, ctermbg = cterm01 }) 118 | vim.api.nvim_set_hl(0, 'PMenuSel', { fg = gui01, bg = gui05, ctermfg = cterm01, ctermbg = cterm05 }) 119 | vim.api.nvim_set_hl(0, 'TabLine', { fg = gui03, bg = gui01, ctermfg = cterm03, ctermbg = cterm01 }) 120 | vim.api.nvim_set_hl(0, 'TabLineFill', { fg = gui03, bg = gui01, ctermfg = cterm03, ctermbg = cterm01 }) 121 | vim.api.nvim_set_hl(0, 'TabLineSel', { fg = gui0B, bg = gui01, ctermfg = cterm0B, ctermbg = cterm01 }) 122 | 123 | -- Standard syntax highlighting 124 | vim.api.nvim_set_hl(0, 'Boolean', { fg = gui09, ctermfg = cterm09 }) 125 | vim.api.nvim_set_hl(0, 'Character', { fg = gui08, ctermfg = cterm08 }) 126 | vim.api.nvim_set_hl(0, 'Comment', { fg = gui03, ctermfg = cterm03 }) 127 | vim.api.nvim_set_hl(0, 'Conditional', { fg = gui0E, ctermfg = cterm0E }) 128 | vim.api.nvim_set_hl(0, 'Constant', { fg = gui09, ctermfg = cterm09 }) 129 | vim.api.nvim_set_hl(0, 'Define', { fg = gui0E, ctermfg = cterm0E }) 130 | vim.api.nvim_set_hl(0, 'Delimiter', { fg = gui0F, ctermfg = cterm0F }) 131 | vim.api.nvim_set_hl(0, 'Float', { fg = gui09, ctermfg = cterm09 }) 132 | vim.api.nvim_set_hl(0, 'Function', { fg = gui0D, ctermfg = cterm0D }) 133 | vim.api.nvim_set_hl(0, 'Identifier', { fg = gui08, ctermfg = cterm08 }) 134 | vim.api.nvim_set_hl(0, 'Include', { fg = gui0D, ctermfg = cterm0D }) 135 | vim.api.nvim_set_hl(0, 'Keyword', { fg = gui0E, ctermfg = cterm0E }) 136 | vim.api.nvim_set_hl(0, 'Label', { fg = gui0A, ctermfg = cterm0A }) 137 | vim.api.nvim_set_hl(0, 'Number', { fg = gui09, ctermfg = cterm09 }) 138 | vim.api.nvim_set_hl(0, 'Operator', { fg = gui05, ctermfg = cterm05 }) 139 | vim.api.nvim_set_hl(0, 'PreProc', { fg = gui0A, ctermfg = cterm0A }) 140 | vim.api.nvim_set_hl(0, 'Repeat', { fg = gui0A, ctermfg = cterm0A }) 141 | vim.api.nvim_set_hl(0, 'Special', { fg = gui0C, ctermfg = cterm0C }) 142 | vim.api.nvim_set_hl(0, 'SpecialChar', { fg = gui0F, ctermfg = cterm0F }) 143 | vim.api.nvim_set_hl(0, 'Statement', { fg = gui0E, ctermfg = cterm0E }) 144 | vim.api.nvim_set_hl(0, 'StorageClass', { fg = gui0A, ctermfg = cterm0A }) 145 | vim.api.nvim_set_hl(0, 'String', { fg = gui0B, ctermfg = cterm0B }) 146 | vim.api.nvim_set_hl(0, 'Structure', { fg = gui0E, ctermfg = cterm0E }) 147 | vim.api.nvim_set_hl(0, 'Tag', { fg = gui0A, ctermfg = cterm0A }) 148 | vim.api.nvim_set_hl(0, 'Todo', { fg = gui0A, bg = gui01, ctermfg = cterm0A, ctermbg = cterm01 }) 149 | vim.api.nvim_set_hl(0, 'Type', { fg = gui0A, ctermfg = cterm0A }) 150 | vim.api.nvim_set_hl(0, 'Typedef', { fg = gui0A, ctermfg = cterm0A }) 151 | 152 | -- C highlighting 153 | vim.api.nvim_set_hl(0, 'cOperator', { fg = gui0C, ctermfg = cterm0C }) 154 | vim.api.nvim_set_hl(0, 'cPreCondit', { fg = gui0E, ctermfg = cterm0E }) 155 | 156 | -- C# highlighting 157 | vim.api.nvim_set_hl(0, 'csClass', { fg = gui0A, ctermfg = cterm0A }) 158 | vim.api.nvim_set_hl(0, 'csAttribute', { fg = gui0A, ctermfg = cterm0A }) 159 | vim.api.nvim_set_hl(0, 'csModifier', { fg = gui0E, ctermfg = cterm0E }) 160 | vim.api.nvim_set_hl(0, 'csType', { fg = gui08, ctermfg = cterm08 }) 161 | vim.api.nvim_set_hl(0, 'csUnspecifiedStatement', { fg = gui0D, ctermfg = cterm0D }) 162 | vim.api.nvim_set_hl(0, 'csContextualStatement', { fg = gui0E, ctermfg = cterm0E }) 163 | vim.api.nvim_set_hl(0, 'csNewDecleration', { fg = gui08, ctermfg = cterm08 }) 164 | 165 | -- CSS highlighting 166 | vim.api.nvim_set_hl(0, 'cssBraces', { fg = gui05, ctermfg = cterm05 }) 167 | vim.api.nvim_set_hl(0, 'cssClassName', { fg = gui0E, ctermfg = cterm0E }) 168 | vim.api.nvim_set_hl(0, 'cssColor', { fg = gui0C, ctermfg = cterm0C }) 169 | 170 | -- Diff highlighting 171 | vim.api.nvim_set_hl(0, 'DiffAdd', { fg = gui0B, bg = gui01, ctermfg = cterm0B, ctermbg = cterm01 }) 172 | vim.api.nvim_set_hl(0, 'DiffChange', { fg = gui03, bg = gui01, ctermfg = cterm03, ctermbg = cterm01 }) 173 | vim.api.nvim_set_hl(0, 'DiffDelete', { fg = gui08, bg = gui01, ctermfg = cterm08, ctermbg = cterm01 }) 174 | vim.api.nvim_set_hl(0, 'DiffText', { fg = gui0D, bg = gui01, ctermfg = cterm0D, ctermbg = cterm01 }) 175 | vim.api.nvim_set_hl(0, 'DiffAdded', { fg = gui0B, bg = gui00, ctermfg = cterm0B, ctermbg = cterm00 }) 176 | vim.api.nvim_set_hl(0, 'DiffFile', { fg = gui08, bg = gui00, ctermfg = cterm08, ctermbg = cterm00 }) 177 | vim.api.nvim_set_hl(0, 'DiffNewFile', { fg = gui0B, bg = gui00, ctermfg = cterm0B, ctermbg = cterm00 }) 178 | vim.api.nvim_set_hl(0, 'DiffLine', { fg = gui0D, bg = gui00, ctermfg = cterm0D, ctermbg = cterm00 }) 179 | vim.api.nvim_set_hl(0, 'DiffRemoved', { fg = gui08, bg = gui00, ctermfg = cterm08, ctermbg = cterm00 }) 180 | 181 | -- Git highlighting 182 | vim.api.nvim_set_hl(0, 'gitcommitOverflow', { fg = gui08, ctermfg = cterm08 }) 183 | vim.api.nvim_set_hl(0, 'gitcommitSummary', { fg = gui0B, ctermfg = cterm0B }) 184 | vim.api.nvim_set_hl(0, 'gitcommitComment', { fg = gui03, ctermfg = cterm03 }) 185 | vim.api.nvim_set_hl(0, 'gitcommitUntracked', { fg = gui03, ctermfg = cterm03 }) 186 | vim.api.nvim_set_hl(0, 'gitcommitDiscarded', { fg = gui03, ctermfg = cterm03 }) 187 | vim.api.nvim_set_hl(0, 'gitcommitSelected', { fg = gui03, ctermfg = cterm03 }) 188 | vim.api.nvim_set_hl(0, 'gitcommitHeader', { fg = gui0E, ctermfg = cterm0E }) 189 | vim.api.nvim_set_hl(0, 'gitcommitSelectedType', { fg = gui0D, ctermfg = cterm0D }) 190 | vim.api.nvim_set_hl(0, 'gitcommitUnmergedType', { fg = gui0D, ctermfg = cterm0D }) 191 | vim.api.nvim_set_hl(0, 'gitcommitDiscardedType', { fg = gui0D, ctermfg = cterm0D }) 192 | vim.api.nvim_set_hl(0, 'gitcommitBranch', { fg = gui09, ctermfg = cterm09, bold = true }) 193 | vim.api.nvim_set_hl(0, 'gitcommitUntrackedFile', { fg = gui0A, ctermfg = cterm0A }) 194 | vim.api.nvim_set_hl(0, 'gitcommitUnmergedFile', { fg = gui08, ctermfg = cterm08, bold = true }) 195 | vim.api.nvim_set_hl(0, 'gitcommitDiscardedFile', { fg = gui08, ctermfg = cterm08, bold = true }) 196 | vim.api.nvim_set_hl(0, 'gitcommitSelectedFile', { fg = gui0B, ctermfg = cterm0B, bold = true }) 197 | 198 | -- GitGutter highlighting 199 | vim.api.nvim_set_hl(0, 'GitGutterAdd', { fg = gui0B, bg = gui01, ctermfg = cterm0B, ctermbg = cterm01 }) 200 | vim.api.nvim_set_hl(0, 'GitGutterChange', { fg = gui0D, bg = gui01, ctermfg = cterm0D, ctermbg = cterm01 }) 201 | vim.api.nvim_set_hl(0, 'GitGutterDelete', { fg = gui08, bg = gui01, ctermfg = cterm08, ctermbg = cterm01 }) 202 | vim.api.nvim_set_hl(0, 'GitGutterChangeDelete', { fg = gui0E, bg = gui01, ctermfg = cterm0E, ctermbg = cterm01 }) 203 | 204 | -- HTML highlighting 205 | vim.api.nvim_set_hl(0, 'htmlBold', { fg = gui0A, ctermfg = cterm0A }) 206 | vim.api.nvim_set_hl(0, 'htmlItalic', { fg = gui0E, ctermfg = cterm0E }) 207 | vim.api.nvim_set_hl(0, 'htmlEndTag', { fg = gui05, ctermfg = cterm05 }) 208 | vim.api.nvim_set_hl(0, 'htmlTag', { fg = gui05, ctermfg = cterm05 }) 209 | 210 | -- JavaScript highlighting 211 | vim.api.nvim_set_hl(0, 'javaScript', { fg = gui05, ctermfg = cterm05 }) 212 | vim.api.nvim_set_hl(0, 'javaScriptBraces', { fg = gui05, ctermfg = cterm05 }) 213 | vim.api.nvim_set_hl(0, 'javaScriptNumber', { fg = gui09, ctermfg = cterm09 }) 214 | 215 | -- pangloss/vim-javascript highlighting 216 | vim.api.nvim_set_hl(0, 'jsOperator', { fg = gui0D, ctermfg = cterm0D }) 217 | vim.api.nvim_set_hl(0, 'jsStatement', { fg = gui0E, ctermfg = cterm0E }) 218 | vim.api.nvim_set_hl(0, 'jsReturn', { fg = gui0E, ctermfg = cterm0E }) 219 | vim.api.nvim_set_hl(0, 'jsThis', { fg = gui08, ctermfg = cterm08 }) 220 | vim.api.nvim_set_hl(0, 'jsClassDefinition', { fg = gui0A, ctermfg = cterm0A }) 221 | vim.api.nvim_set_hl(0, 'jsFunction', { fg = gui0E, ctermfg = cterm0E }) 222 | vim.api.nvim_set_hl(0, 'jsFuncName', { fg = gui0D, ctermfg = cterm0D }) 223 | vim.api.nvim_set_hl(0, 'jsFuncCall', { fg = gui0D, ctermfg = cterm0D }) 224 | vim.api.nvim_set_hl(0, 'jsClassFuncName', { fg = gui0D, ctermfg = cterm0D }) 225 | vim.api.nvim_set_hl(0, 'jsClassMethodType', { fg = gui0E, ctermfg = cterm0E }) 226 | vim.api.nvim_set_hl(0, 'jsRegexpString', { fg = gui0C, ctermfg = cterm0C }) 227 | vim.api.nvim_set_hl(0, 'jsGlobalObjects', { fg = gui0A, ctermfg = cterm0A }) 228 | vim.api.nvim_set_hl(0, 'jsGlobalNodeObjects', { fg = gui0A, ctermfg = cterm0A }) 229 | vim.api.nvim_set_hl(0, 'jsExceptions', { fg = gui0A, ctermfg = cterm0A }) 230 | vim.api.nvim_set_hl(0, 'jsBuiltins', { fg = gui0A, ctermfg = cterm0A }) 231 | 232 | -- Diagnostics (legacy). 233 | vim.api.nvim_set_hl(0, 'LspDiagnosticsDefaultError', { fg = gui08, ctermfg = cterm08 }) 234 | vim.api.nvim_set_hl(0, 'LspDiagnosticsDefaultWarning', { fg = gui09, ctermfg = cterm09 }) 235 | vim.api.nvim_set_hl(0, 'LspDiagnosticsDefaultInformation', { fg = gui0C, ctermfg = cterm0C }) 236 | vim.api.nvim_set_hl(0, 'LspDiagnosticsDefaultHint', { fg = gui0D, ctermfg = cterm0D }) 237 | 238 | -- Diagnostics (modern). 239 | vim.api.nvim_set_hl(0, 'DiagnosticError', { fg = gui08, ctermfg = cterm08 }) 240 | vim.api.nvim_set_hl(0, 'DiagnosticWarn', { fg = gui09, ctermfg = cterm09 }) 241 | vim.api.nvim_set_hl(0, 'DiagnosticInfo', { fg = gui0C, ctermfg = cterm0C }) 242 | vim.api.nvim_set_hl(0, 'DiagnosticHint', { fg = gui0D, ctermfg = cterm0D }) 243 | vim.api.nvim_set_hl(0, 'DiagnosticOk', { fg = gui0B, ctermfg = cterm0B }) 244 | vim.api.nvim_set_hl(0, 'DiagnosticUnderlineError', { ctermfg = cterm00, ctermbg = cterm08, underline = true, sp = gui08 }) 245 | vim.api.nvim_set_hl(0, 'DiagnosticUnderlineWarn', { ctermfg = cterm00, ctermbg = cterm09, underline = true, sp = gui09 }) 246 | vim.api.nvim_set_hl(0, 'DiagnosticUnderlineInfo', { ctermfg = cterm00, ctermbg = cterm0C, underline = true, sp = gui0C }) 247 | vim.api.nvim_set_hl(0, 'DiagnosticUnderlineHint', { ctermfg = cterm00, ctermbg = cterm0D, underline = true, sp = gui0D }) 248 | vim.api.nvim_set_hl(0, 'DiagnosticUnderlineOk', { ctermfg = cterm00, ctermbg = cterm0B, underline = true, sp = gui0B }) 249 | vim.api.nvim_set_hl(0, 'DiagnosticFloatingError', { fg = gui08, bg = gui01, ctermfg = cterm08, ctermbg = cterm01 }) 250 | vim.api.nvim_set_hl(0, 'DiagnosticFloatingWarn', { fg = gui09, bg = gui01, ctermfg = cterm09, ctermbg = cterm01 }) 251 | vim.api.nvim_set_hl(0, 'DiagnosticFloatingInfo', { fg = gui0C, bg = gui01, ctermfg = cterm0C, ctermbg = cterm01 }) 252 | vim.api.nvim_set_hl(0, 'DiagnosticFloatingHint', { fg = gui0D, bg = gui01, ctermfg = cterm0D, ctermbg = cterm01 }) 253 | vim.api.nvim_set_hl(0, 'DiagnosticFloatingOk', { fg = gui0B, bg = gui01, ctermfg = cterm0B, ctermbg = cterm01 }) 254 | vim.api.nvim_set_hl(0, 'DiagnosticDeprecated', { ctermfg = cterm0F, ctermbg = cterm0F, strikethrough = true }) 255 | vim.api.nvim_set_hl(0, 'DiagnosticUnnecessary', { link = 'Comment' }) 256 | 257 | -- Mail highlighting 258 | vim.api.nvim_set_hl(0, 'mailQuoted1', { fg = gui0A, ctermfg = cterm0A }) 259 | vim.api.nvim_set_hl(0, 'mailQuoted2', { fg = gui0B, ctermfg = cterm0B }) 260 | vim.api.nvim_set_hl(0, 'mailQuoted3', { fg = gui0E, ctermfg = cterm0E }) 261 | vim.api.nvim_set_hl(0, 'mailQuoted4', { fg = gui0C, ctermfg = cterm0C }) 262 | vim.api.nvim_set_hl(0, 'mailQuoted5', { fg = gui0D, ctermfg = cterm0D }) 263 | vim.api.nvim_set_hl(0, 'mailQuoted6', { fg = gui0A, ctermfg = cterm0A }) 264 | vim.api.nvim_set_hl(0, 'mailURL', { fg = gui0D, ctermfg = cterm0D }) 265 | vim.api.nvim_set_hl(0, 'mailEmail', { fg = gui0D, ctermfg = cterm0D }) 266 | 267 | -- Markdown highlighting 268 | vim.api.nvim_set_hl(0, 'markdownCode', { fg = gui0B, ctermfg = cterm0B }) 269 | vim.api.nvim_set_hl(0, 'markdownError', { fg = gui05, bg = gui00, ctermfg = cterm05, ctermbg = cterm00 }) 270 | vim.api.nvim_set_hl(0, 'markdownCodeBlock', { fg = gui0B, ctermfg = cterm0B }) 271 | vim.api.nvim_set_hl(0, 'markdownHeadingDelimiter', { fg = gui0D, ctermfg = cterm0D }) 272 | 273 | -- NERDTree highlighting 274 | vim.api.nvim_set_hl(0, 'NERDTreeDirSlash', { fg = gui0D, ctermfg = cterm0D }) 275 | vim.api.nvim_set_hl(0, 'NERDTreeExecFile', { fg = gui05, ctermfg = cterm05 }) 276 | 277 | -- PHP highlighting 278 | vim.api.nvim_set_hl(0, 'phpMemberSelector', { fg = gui05, ctermfg = cterm05 }) 279 | vim.api.nvim_set_hl(0, 'phpComparison', { fg = gui05, ctermfg = cterm05 }) 280 | vim.api.nvim_set_hl(0, 'phpParent', { fg = gui05, ctermfg = cterm05 }) 281 | vim.api.nvim_set_hl(0, 'phpMethodsVar', { fg = gui0C, ctermfg = cterm0C }) 282 | 283 | -- Python highlighting 284 | vim.api.nvim_set_hl(0, 'pythonOperator', { fg = gui0E, ctermfg = cterm0E }) 285 | vim.api.nvim_set_hl(0, 'pythonRepeat', { fg = gui0E, ctermfg = cterm0E }) 286 | vim.api.nvim_set_hl(0, 'pythonInclude', { fg = gui0E, ctermfg = cterm0E }) 287 | vim.api.nvim_set_hl(0, 'pythonStatement', { fg = gui0E, ctermfg = cterm0E }) 288 | 289 | -- Ruby highlighting 290 | vim.api.nvim_set_hl(0, 'rubyAttribute', { fg = gui0D, ctermfg = cterm0D }) 291 | vim.api.nvim_set_hl(0, 'rubyConstant', { fg = gui0A, ctermfg = cterm0A }) 292 | vim.api.nvim_set_hl(0, 'rubyInterpolationDelimiter', { fg = gui0F, ctermfg = cterm0F }) 293 | vim.api.nvim_set_hl(0, 'rubyRegexp', { fg = gui0C, ctermfg = cterm0C }) 294 | vim.api.nvim_set_hl(0, 'rubySymbol', { fg = gui0B, ctermfg = cterm0B }) 295 | vim.api.nvim_set_hl(0, 'rubyStringDelimiter', { fg = gui0B, ctermfg = cterm0B }) 296 | 297 | -- SASS highlighting 298 | vim.api.nvim_set_hl(0, 'sassidChar', { fg = gui08, ctermfg = cterm08 }) 299 | vim.api.nvim_set_hl(0, 'sassClassChar', { fg = gui09, ctermfg = cterm09 }) 300 | vim.api.nvim_set_hl(0, 'sassInclude', { fg = gui0E, ctermfg = cterm0E }) 301 | vim.api.nvim_set_hl(0, 'sassMixing', { fg = gui0E, ctermfg = cterm0E }) 302 | vim.api.nvim_set_hl(0, 'sassMixinName', { fg = gui0D, ctermfg = cterm0D }) 303 | 304 | -- Signify highlighting 305 | vim.api.nvim_set_hl(0, 'SignifySignAdd', { fg = gui0B, bg = gui01, ctermfg = cterm0B, ctermbg = cterm01 }) 306 | vim.api.nvim_set_hl(0, 'SignifySignChange', { fg = gui0D, bg = gui01, ctermfg = cterm0D, ctermbg = cterm01 }) 307 | vim.api.nvim_set_hl(0, 'SignifySignDelete', { fg = gui08, bg = gui01, ctermfg = cterm08, ctermbg = cterm01 }) 308 | 309 | -- Spelling highlighting 310 | vim.api.nvim_set_hl(0, 'SpellBad', { undercurl = true }) 311 | vim.api.nvim_set_hl(0, 'SpellLocal', { undercurl = true }) 312 | vim.api.nvim_set_hl(0, 'SpellCap', { undercurl = true }) 313 | vim.api.nvim_set_hl(0, 'SpellRare', { undercurl = true }) 314 | 315 | -- Startify highlighting 316 | vim.api.nvim_set_hl(0, 'StartifyBracket', { fg = gui03, ctermfg = cterm03 }) 317 | vim.api.nvim_set_hl(0, 'StartifyFile', { fg = gui07, ctermfg = cterm07 }) 318 | vim.api.nvim_set_hl(0, 'StartifyFooter', { fg = gui03, ctermfg = cterm03 }) 319 | vim.api.nvim_set_hl(0, 'StartifyHeader', { fg = gui0B, ctermfg = cterm0B }) 320 | vim.api.nvim_set_hl(0, 'StartifyNumber', { fg = gui09, ctermfg = cterm09 }) 321 | vim.api.nvim_set_hl(0, 'StartifyPath', { fg = gui03, ctermfg = cterm03 }) 322 | vim.api.nvim_set_hl(0, 'StartifySection', { fg = gui0E, ctermfg = cterm0E }) 323 | vim.api.nvim_set_hl(0, 'StartifySelect', { fg = gui0C, ctermfg = cterm0C }) 324 | vim.api.nvim_set_hl(0, 'StartifySlash', { fg = gui03, ctermfg = cterm03 }) 325 | vim.api.nvim_set_hl(0, 'StartifySpecial', { fg = gui03, ctermfg = cterm03 }) 326 | 327 | -- Java highlighting 328 | vim.api.nvim_set_hl(0, 'javaOperator', { fg = gui0D, ctermfg = cterm0D }) 329 | 330 | -- Treesitter 331 | vim.api.nvim_set_hl(0, '@variable', { link = 'Identifier' }) 332 | vim.api.nvim_set_hl(0, '@variable.builtin', { fg = gui05, ctermfg = cterm05, italic = true }) 333 | vim.api.nvim_set_hl(0, '@variable.parameter', { link = 'Identifier' }) 334 | vim.api.nvim_set_hl(0, '@variable.parameter.builtin', { link = '@variable.builtin' }) 335 | vim.api.nvim_set_hl(0, '@variable.member', { fg = gui04, ctermfg = cterm04 }) 336 | vim.api.nvim_set_hl(0, '@constant', { link = 'Constant' }) 337 | vim.api.nvim_set_hl(0, '@constant.builtin', { fg = gui09, ctermfg = cterm09, italic = true }) 338 | vim.api.nvim_set_hl(0, '@constant.macro', { link = 'Constant' }) 339 | vim.api.nvim_set_hl(0, '@module', { link = 'Identifier' }) 340 | vim.api.nvim_set_hl(0, '@module.builtin', { fg = gui05, ctermfg = cterm05, italic = true }) 341 | vim.api.nvim_set_hl(0, '@label', { link = 'Tag' }) 342 | vim.api.nvim_set_hl(0, '@string', { link = 'String' }) 343 | vim.api.nvim_set_hl(0, '@string.documentation', { link = 'String' }) 344 | vim.api.nvim_set_hl(0, '@string.regexp', { link = 'SpecialComment' }) 345 | vim.api.nvim_set_hl(0, '@string.escape', { link = 'SpecialComment' }) 346 | vim.api.nvim_set_hl(0, '@string.special', { link = 'SpecialComment' }) 347 | vim.api.nvim_set_hl(0, '@string.special.symbol', { link = 'SpecialComment' }) 348 | vim.api.nvim_set_hl(0, '@string.special.path', { fg = gui0D, ctermfg = cterm0D, italic = true }) 349 | vim.api.nvim_set_hl(0, '@string.special.url', { fg = gui08, ctermfg = cterm08, italic = true }) 350 | vim.api.nvim_set_hl(0, '@character', { link = 'Character' }) 351 | vim.api.nvim_set_hl(0, '@character.special', { link = 'SpecialChar' }) 352 | vim.api.nvim_set_hl(0, '@boolean', { link = 'Boolean' }) 353 | vim.api.nvim_set_hl(0, '@number', { link = 'Number' }) 354 | vim.api.nvim_set_hl(0, '@number.float', { link = 'Float' }) 355 | vim.api.nvim_set_hl(0, '@type', { link = 'Type' }) 356 | vim.api.nvim_set_hl(0, '@type.builtin', { fg = gui0A, ctermfg = cterm0A, italic = true }) 357 | vim.api.nvim_set_hl(0, '@type.definition', { link = 'Typedef' }) 358 | vim.api.nvim_set_hl(0, '@attribute', { link = 'Special' }) 359 | vim.api.nvim_set_hl(0, '@attribute.builtin', { fg = gui0C, ctermfg = cterm0C, italic = true }) 360 | vim.api.nvim_set_hl(0, '@property', { link = '@variable.member' }) 361 | vim.api.nvim_set_hl(0, '@function', { fg = gui16, ctermfg = cterm16 }) 362 | vim.api.nvim_set_hl(0, '@function.builtin', { fg = gui16, ctermfg = cterm16, italic = true }) 363 | vim.api.nvim_set_hl(0, '@function.call', { link = '@function' }) 364 | vim.api.nvim_set_hl(0, '@function.macro', { link = 'Macro' }) 365 | vim.api.nvim_set_hl(0, '@function.method', { link = 'Function' }) 366 | vim.api.nvim_set_hl(0, '@function.method.call', { link = '@function.method' }) 367 | vim.api.nvim_set_hl(0, '@constructor', { fg = gui0D, ctermfg = cterm0D, bold = true }) 368 | vim.api.nvim_set_hl(0, '@operator', { link = 'Operator' }) 369 | vim.api.nvim_set_hl(0, '@keyword', { link = 'Keyword' }) 370 | vim.api.nvim_set_hl(0, '@keyword.coroutine', { link = 'Repeat' }) 371 | vim.api.nvim_set_hl(0, '@keyword.function', { link = 'Keyword' }) 372 | vim.api.nvim_set_hl(0, '@keyword.operator', { link = 'Operator' }) 373 | vim.api.nvim_set_hl(0, '@keyword.import', { fg = gui0E, ctermfg = cterm0E, italic = true }) 374 | vim.api.nvim_set_hl(0, '@keyword.type', { link = 'Keyword' }) 375 | vim.api.nvim_set_hl(0, '@keyword.modifier', { link = 'Repeat' }) 376 | vim.api.nvim_set_hl(0, '@keyword.repeat', { link = 'Repeat' }) 377 | vim.api.nvim_set_hl(0, '@keyword.return', { link = 'Keyword' }) 378 | vim.api.nvim_set_hl(0, '@keyword.debug', { link = 'Debug' }) 379 | vim.api.nvim_set_hl(0, '@keyword.exception', { link = 'Exception' }) 380 | vim.api.nvim_set_hl(0, '@keyword.conditional', { link = 'Conditional' }) 381 | vim.api.nvim_set_hl(0, '@keyword.ternary', { link = 'Conditional' }) 382 | vim.api.nvim_set_hl(0, '@keyword.directive', { link = 'PreProc' }) 383 | vim.api.nvim_set_hl(0, '@keyword.directive.define', { link = 'Define' }) 384 | vim.api.nvim_set_hl(0, '@punctuation.delimiter', { link = 'Delimiter' }) 385 | vim.api.nvim_set_hl(0, '@punctuation.bracket', { link = 'Delimiter' }) 386 | vim.api.nvim_set_hl(0, '@punctuation.special', { link = 'Special' }) 387 | vim.api.nvim_set_hl(0, '@comment', { link = 'Comment' }) 388 | vim.api.nvim_set_hl(0, '@comment.documentation', { link = 'Comment' }) 389 | vim.api.nvim_set_hl(0, '@comment.error', { fg = gui08, ctermfg = cterm08, italic = true }) 390 | vim.api.nvim_set_hl(0, '@comment.warning', { fg = gui09, ctermfg = cterm09, italic = true }) 391 | vim.api.nvim_set_hl(0, '@comment.note', { fg = gui0D, ctermfg = cterm0D, italic = true }) 392 | vim.api.nvim_set_hl(0, '@comment.todo', { fg = gui0C, ctermfg = cterm0C, italic = true }) 393 | vim.api.nvim_set_hl(0, '@markup.strong', { bold = true }) 394 | vim.api.nvim_set_hl(0, '@markup.italic', { italic = true }) 395 | vim.api.nvim_set_hl(0, '@markup.strikethrough', { strikethrough = true }) 396 | vim.api.nvim_set_hl(0, '@markup.underline', { underline = true }) 397 | vim.api.nvim_set_hl(0, '@markup.heading', { link = 'Title' }) 398 | vim.api.nvim_set_hl(0, '@markup.quote', { fg = gui0C, ctermfg = cterm0C }) 399 | vim.api.nvim_set_hl(0, '@markup.math', { link = 'Special' }) 400 | vim.api.nvim_set_hl(0, '@markup.link', { fg = gui08, ctermfg = cterm08 }) 401 | vim.api.nvim_set_hl(0, '@markup.link.label', { link = '@markup.link' }) 402 | vim.api.nvim_set_hl(0, '@markup.link.url', { fg = gui09, ctermfg = cterm09 }) 403 | vim.api.nvim_set_hl(0, '@markup.raw', { fg = gui0B, ctermfg = cterm0B }) 404 | vim.api.nvim_set_hl(0, '@markup.raw.block', { link = '@markup.raw' }) 405 | vim.api.nvim_set_hl(0, '@markup.list', { link = 'SpecialChar' }) 406 | vim.api.nvim_set_hl(0, '@markup.list.checked', { link = 'DiagnosticOk' }) 407 | vim.api.nvim_set_hl(0, '@markup.list.unchecked', { link = 'DiagnosticError' }) 408 | vim.api.nvim_set_hl(0, '@diff.plus', { link = 'Added' }) 409 | vim.api.nvim_set_hl(0, '@diff.minus', { link = 'Removed' }) 410 | vim.api.nvim_set_hl(0, '@diff.delta', { link = 'Changed' }) 411 | vim.api.nvim_set_hl(0, '@tag', { link = 'Tag' }) 412 | vim.api.nvim_set_hl(0, '@tag.builtin', { fg = gui09, ctermfg = cterm09, italic = true }) 413 | vim.api.nvim_set_hl(0, '@tag.attribute', { link = 'Special' }) 414 | vim.api.nvim_set_hl(0, '@tag.delimiter', { link = 'Delimiter' }) 415 | 416 | -- LSP 417 | vim.api.nvim_set_hl(0, '@lsp.type.class', { link = '@type' }) 418 | vim.api.nvim_set_hl(0, '@lsp.type.comment', { link = '@comment' }) 419 | vim.api.nvim_set_hl(0, '@lsp.type.decorator', { link = '@attribute' }) 420 | vim.api.nvim_set_hl(0, '@lsp.type.enum', { link = '@type' }) 421 | vim.api.nvim_set_hl(0, '@lsp.type.enumMember', { link = '@constant' }) 422 | vim.api.nvim_set_hl(0, '@lsp.type.event', { link = '@type' }) 423 | vim.api.nvim_set_hl(0, '@lsp.type.function', { link = '@function' }) 424 | vim.api.nvim_set_hl(0, '@lsp.type.interface', { link = '@type' }) 425 | vim.api.nvim_set_hl(0, '@lsp.type.keyword', { link = '@keyword' }) 426 | vim.api.nvim_set_hl(0, '@lsp.type.macro', { link = '@function.macro' }) 427 | vim.api.nvim_set_hl(0, '@lsp.type.method', { link = '@function.method' }) 428 | vim.api.nvim_set_hl(0, '@lsp.type.modifier', { link = '@type.modifier' }) 429 | vim.api.nvim_set_hl(0, '@lsp.type.namespace', { link = '@module' }) 430 | vim.api.nvim_set_hl(0, '@lsp.type.number', { link = '@number' }) 431 | vim.api.nvim_set_hl(0, '@lsp.type.operator', { link = '@operator' }) 432 | vim.api.nvim_set_hl(0, '@lsp.type.parameter', { link = '@variable.parameter' }) 433 | vim.api.nvim_set_hl(0, '@lsp.type.property', { link = '@property' }) 434 | vim.api.nvim_set_hl(0, '@lsp.type.regexp', { link = '@string.regexp' }) 435 | vim.api.nvim_set_hl(0, '@lsp.type.string', { link = '@string' }) 436 | vim.api.nvim_set_hl(0, '@lsp.type.struct', { link = '@type' }) 437 | vim.api.nvim_set_hl(0, '@lsp.type.type', { link = '@type' }) 438 | vim.api.nvim_set_hl(0, '@lsp.type.typeParameter', { link = '@variable.parameter' }) 439 | vim.api.nvim_set_hl(0, '@lsp.type.variable', { link = '@variable' }) 440 | 441 | -- LSP: Rust 442 | vim.api.nvim_set_hl(0, '@lsp.type.builtinType.rust', { link = '@type.builtin' }) 443 | vim.api.nvim_set_hl(0, '@lsp.type.escapeSequence.rust', { link = '@string.escape' }) 444 | vim.api.nvim_set_hl(0, '@lsp.type.formatSpecifier.rust', { link = '@operator' }) 445 | vim.api.nvim_set_hl(0, '@lsp.type.lifetime.rust', { link = '@attribute' }) 446 | vim.api.nvim_set_hl(0, '@lsp.type.punctuation.rust', { link = '@punctuation.delimiter' }) 447 | vim.api.nvim_set_hl(0, '@lsp.type.selfKeyword.rust', { link = '@variable.builtin' }) 448 | vim.api.nvim_set_hl(0, '@lsp.type.selfTypeKeyword.rust', { link = '@type.builtin' }) 449 | vim.api.nvim_set_hl(0, '@lsp.mod.attribute', { italic = true }) 450 | vim.api.nvim_set_hl(0, '@lsp.mod.controlFlow', { link = '@keyword.repeat' }) 451 | vim.api.nvim_set_hl(0, '@lsp.mod.intraDocLink.rust', { link = '@markup.link' }) 452 | vim.api.nvim_set_hl(0, '@lsp.typemod.generic.injected.rust', { link = '@variable' }) 453 | vim.api.nvim_set_hl(0, '@lsp.typemod.operator.controlFlow.rust', { link = '@operator' }) 454 | vim.api.nvim_set_hl(0, '@lsp.typemod.function.associated.rust', { link = '@function.method' }) 455 | 456 | -- LSP: Lua 457 | vim.api.nvim_set_hl(0, '@lsp.typemod.keyword.documentation.lua', { link = '@tag' }) 458 | 459 | -- LSP: Markdown 460 | vim.api.nvim_set_hl(0, '@lsp.type.class.markdown', { link = '@lsp' }) 461 | 462 | -- LSP (non-syntax) 463 | vim.api.nvim_set_hl(0, 'LspReferenceText', { link = 'Search' }) 464 | vim.api.nvim_set_hl(0, 'LspReferenceRead', { fg = gui01, bg = gui14, ctermfg = cterm01, ctermbg = cterm14 }) 465 | vim.api.nvim_set_hl(0, 'LspReferenceWrite', { fg = gui01, bg = gui12, ctermfg = cterm01, ctermbg = cterm12 }) 466 | vim.api.nvim_set_hl(0, 'LspCodeLens', { link = 'NonText' }) 467 | vim.api.nvim_set_hl(0, 'LspCodeLensSeparator', { link = 'LspCodeLens' }) 468 | vim.api.nvim_set_hl(0, 'LspInlayHint', { link = 'NonText' }) 469 | vim.api.nvim_set_hl(0, 'LspSignatureActiveParameter', { link = 'Visual' }) 470 | 471 | -- vim: filetype=lua 472 | -------------------------------------------------------------------------------- /templates/config.yaml: -------------------------------------------------------------------------------- 1 | default: 2 | extension: .lua 3 | output: colors 4 | supported-systems: [base16, base24] 5 | --------------------------------------------------------------------------------