diff --git a/.github/.release-please-manifest.json b/.github/.release-please-manifest.json new file mode 100644 index 00000000..34a3350a --- /dev/null +++ b/.github/.release-please-manifest.json @@ -0,0 +1,3 @@ +{ + ".": "4.2.0" +} diff --git a/.github/ISSUE_TEMPLATE/bug_report.yml b/.github/ISSUE_TEMPLATE/bug_report.yml index 3e0ad0cc..1c205c97 100644 --- a/.github/ISSUE_TEMPLATE/bug_report.yml +++ b/.github/ISSUE_TEMPLATE/bug_report.yml @@ -57,7 +57,6 @@ body: label: Repro description: Minimal `init.lua` to reproduce this issue. Save as `repro.lua` and run with `nvim -u repro.lua` value: | - -- DO NOT change the paths and don't remove the colorscheme local root = vim.fn.fnamemodify("./.repro", ":p") -- set stdpaths to use .repro @@ -74,9 +73,10 @@ body: -- install plugins local plugins = { - "folke/tokyonight.nvim", - "folke/tokyonight.nvim", - -- add any other plugins here + { + "folke/tokyonight.nvim", + opts = {}, + } } require("lazy").setup(plugins, { root = root .. "/plugins", diff --git a/.github/dependabot.yml b/.github/dependabot.yml new file mode 100644 index 00000000..0d08e261 --- /dev/null +++ b/.github/dependabot.yml @@ -0,0 +1,11 @@ +# To get started with Dependabot version updates, you'll need to specify which +# package ecosystems to update and where the package manifests are located. +# Please see the documentation for all configuration options: +# https://docs.github.com/code-security/dependabot/dependabot-version-updates/configuration-options-for-the-dependabot.yml-file + +version: 2 +updates: + - package-ecosystem: "github-actions" # See documentation for possible values + directory: "/" # Location of package manifests + schedule: + interval: "weekly" diff --git a/.github/labeler.yml b/.github/labeler.yml new file mode 100644 index 00000000..e5efb482 --- /dev/null +++ b/.github/labeler.yml @@ -0,0 +1,28 @@ +core: + - all: + - changed-files: + - any-glob-to-any-file: "lua/tokyonight/**" + - all-globs-to-all-files: + - "!lua/tokyonight/groups/**" + - "!lua/tokyonight/colors/**" + - "!lua/tokyonight/extra/**" + +extras: + - changed-files: + - any-glob-to-any-file: "lua/tokyonight/extra/**" + +groups: + - changed-files: + - any-glob-to-any-file: "lua/tokyonight/groups/**" + +base: + - changed-files: + - any-glob-to-any-file: + - "lua/tokyonight/groups/base.lua" + - "lua/tokyonight/groups/kinds.lua" + - "lua/tokyonight/groups/treesitter.lua" + - "lua/tokyonight/groups/semantic_tokens.lua" + +colors: + - changed-files: + - any-glob-to-any-file: "lua/tokyonight/colors/**" diff --git a/.github/release-please-config.json b/.github/release-please-config.json new file mode 100644 index 00000000..172e5166 --- /dev/null +++ b/.github/release-please-config.json @@ -0,0 +1,9 @@ +{ + "$schema": "https://raw.githubusercontent.com/googleapis/release-please/main/schemas/config.json", + "packages": { + ".": { + "release-type": "simple", + "extra-files": ["lua/tokyonight/config.lua"] + } + } +} diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 002f3c27..4f1102df 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -6,7 +6,6 @@ on: jobs: extras: runs-on: ubuntu-latest - if: ${{ github.ref == 'refs/heads/main' }} steps: - name: Install Neovim shell: bash @@ -17,12 +16,12 @@ jobs: chmod a+x ./nvim.appimage ./nvim.appimage --appimage-extract echo "/tmp/nvim/squashfs-root/usr/bin/" >> $GITHUB_PATH - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - name: Build Extras run: | nvim -u NONE -E -R --headless --cmd "set rtp^=." --cmd "packloadall" --cmd "lua require('tokyonight.extra').setup()" --cmd qa - name: Push changes - uses: stefanzweifel/git-auto-commit-action@v4 + uses: stefanzweifel/git-auto-commit-action@v5 with: commit_message: "chore(build): auto-generate extras" commit_user_name: "github-actions[bot]" @@ -37,7 +36,7 @@ jobs: os: [ubuntu-latest] runs-on: ${{ matrix.os }} steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - name: Install Neovim shell: bash run: | @@ -51,14 +50,27 @@ jobs: run: | nvim --version [ ! -d tests ] && exit 0 - nvim --headless -u tests/init.lua -c "PlenaryBustedDirectory tests/ {minimal_init = 'tests/init.lua', sequential = true}" + ./tests/run docs: runs-on: ubuntu-latest needs: tests - if: ${{ github.ref == 'refs/heads/main' }} + if: ${{ github.ref == 'refs/heads/main' && github.repository_owner == 'folke' }} steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - run: git pull + - name: Install Neovim + shell: bash + run: | + mkdir -p /tmp/nvim + wget -q https://github.com/neovim/neovim/releases/download/nightly/nvim.appimage -O /tmp/nvim/nvim.appimage + cd /tmp/nvim + chmod a+x ./nvim.appimage + ./nvim.appimage --appimage-extract + echo "/tmp/nvim/squashfs-root/usr/bin/" >> $GITHUB_PATH + - name: Generate docs + run: | + nvim --version + nvim -u tests/minit.lua -l lua/tokyonight/docs.lua - name: panvimdoc uses: kdheepak/panvimdoc@main with: @@ -67,7 +79,7 @@ jobs: demojify: true treesitter: true - name: Push changes - uses: stefanzweifel/git-auto-commit-action@v4 + uses: stefanzweifel/git-auto-commit-action@v5 with: commit_message: "chore(build): auto-generate vimdoc" commit_user_name: "github-actions[bot]" @@ -75,18 +87,18 @@ jobs: commit_author: "github-actions[bot] " release: name: release - if: ${{ github.ref == 'refs/heads/main' }} + if: ${{ github.ref == 'refs/heads/main' && github.repository_owner == 'folke' }} needs: - - docs - tests + - docs runs-on: ubuntu-latest steps: - - uses: google-github-actions/release-please-action@v3 + - uses: googleapis/release-please-action@v4 id: release with: - release-type: simple - package-name: tokyonight.nvim - - uses: actions/checkout@v3 + config-file: .github/release-please-config.json + manifest-file: .github/.release-please-manifest.json + - uses: actions/checkout@v4 - name: tag stable versions if: ${{ steps.release.outputs.release_created }} run: | diff --git a/.github/workflows/labeler.yml b/.github/workflows/labeler.yml new file mode 100644 index 00000000..52474c6a --- /dev/null +++ b/.github/workflows/labeler.yml @@ -0,0 +1,12 @@ +name: "Pull Request Labeler" +on: + - pull_request_target + +jobs: + labeler: + permissions: + contents: read + pull-requests: write + runs-on: ubuntu-latest + steps: + - uses: actions/labeler@v5 diff --git a/.github/workflows/pr.yml b/.github/workflows/pr.yml new file mode 100644 index 00000000..0401a4d8 --- /dev/null +++ b/.github/workflows/pr.yml @@ -0,0 +1,41 @@ +name: "Lint PR" + +on: + pull_request_target: + types: + - opened + - edited + - synchronize + +permissions: + pull-requests: read + +jobs: + main: + name: Validate PR title + runs-on: ubuntu-latest + steps: + - uses: amannn/action-semantic-pull-request@v5 + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + with: + requireScope: true + subjectPattern: ^(?![A-Z]).+$ + scopes: | + .+ + types: | + build + chore + ci + docs + feat + fix + merge + perf + refactor + revert + style + test + wip + ignoreLabels: | + autorelease: pending diff --git a/.gitignore b/.gitignore index cc5457ab..06445281 100644 --- a/.gitignore +++ b/.gitignore @@ -1,5 +1,6 @@ tt.* .tests +.docs doc/tags debug .repro diff --git a/.lazy.lua b/.lazy.lua new file mode 100644 index 00000000..3b8ea104 --- /dev/null +++ b/.lazy.lua @@ -0,0 +1,108 @@ +local M = { + module = "tokyonight", + colorscheme = "tokyonight", + opts = { style = "moon", plugins = { all = true } }, + globals = { vim = vim }, + cache = {}, ---@type table +} + +function M.reset() + require("tokyonight.util").cache.clear() + local colors = require("tokyonight.colors").setup() + M.globals.colors = colors + M.globals.c = colors +end + +---@param name string +---@param buf number +function M.hl_group(name, buf) + return vim.api.nvim_buf_get_name(buf):find("kinds") and "LspKind" .. name or name +end + +local function reload() + for k in pairs(package.loaded) do + if k:find("^" .. M.module) then + package.loaded[k] = nil + end + end + M.cache = {} + require(M.module).setup(M.opts) + M.reset() + local colorscheme = vim.g.colors_name or M.colorscheme + colorscheme = colorscheme:find(M.colorscheme) and colorscheme or M.colorscheme + vim.cmd.colorscheme(colorscheme) + local hi = require("mini.hipatterns") + for _, buf in ipairs(require("mini.hipatterns").get_enabled_buffers()) do + hi.update(buf) + end +end +reload = vim.schedule_wrap(reload) + +local augroup = vim.api.nvim_create_augroup("colorscheme_dev", { clear = true }) +vim.api.nvim_create_autocmd("User", { + pattern = "VeryLazy", + group = augroup, + callback = reload, +}) +vim.api.nvim_create_autocmd("BufWritePost", { + group = augroup, + pattern = "*/lua/" .. M.module .. "/**.lua", + callback = reload, +}) + +return { + { + "echasnovski/mini.hipatterns", + opts = function(_, opts) + local hi = require("mini.hipatterns") + + opts.highlighters = opts.highlighters or {} + + opts.highlighters = vim.tbl_extend("keep", opts.highlighters or {}, { + hex_color = hi.gen_highlighter.hex_color({ priority = 2000 }), + + hl_group = { + pattern = function(buf) + return vim.api.nvim_buf_get_name(buf):find("lua/" .. M.module) and '^%s*%[?"?()[%w%.@]+()"?%]?%s*=' + end, + group = function(buf, match) + local group = M.hl_group(match, buf) + if group then + if M.cache[group] == nil then + M.cache[group] = false + local hl = vim.api.nvim_get_hl(0, { name = group, link = false, create = false }) + if not vim.tbl_isempty(hl) then + hl.fg = hl.fg or vim.api.nvim_get_hl(0, { name = "Normal", link = false }).fg + M.cache[group] = true + vim.api.nvim_set_hl(0, group .. "Dev", hl) + end + end + return M.cache[group] and group .. "Dev" or nil + end + end, + extmark_opts = { priority = 2000 }, + }, + + hl_color = { + pattern = { + "%f[%w]()c%.[%w_%.]+()%f[%W]", + "%f[%w]()colors%.[%w_%.]+()%f[%W]", + "%f[%w]()vim%.g%.terminal_color_%d+()%f[%W]", + }, + group = function(_, match) + local parts = vim.split(match, ".", { plain = true }) + local color = vim.tbl_get(M.globals, unpack(parts)) + return type(color) == "string" and require("mini.hipatterns").compute_hex_color_group(color, "fg") + end, + extmark_opts = function(_, _, data) + return { + virt_text = { { "⬤ ", data.hl_group } }, + virt_text_pos = "inline", + priority = 2000, + } + end, + }, + }) + end, + }, +} diff --git a/CHANGELOG.md b/CHANGELOG.md index b259144e..c6373027 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,125 @@ # Changelog +## [4.2.0](https://github.com/folke/tokyonight.nvim/compare/v4.1.3...v4.2.0) (2024-07-04) + + +### Features + +* **extras:** add Slack Theme ([#518](https://github.com/folke/tokyonight.nvim/issues/518)) ([a4ba234](https://github.com/folke/tokyonight.nvim/commit/a4ba234877d2d36a4e3e3c4cc1528ec272ba163b)) +* **extras:** add spotify_player colors ([#498](https://github.com/folke/tokyonight.nvim/issues/498)) ([6c11436](https://github.com/folke/tokyonight.nvim/commit/6c114363ac2b7f72392675c17fa78b1ee7fd7acf)) + + +### Bug Fixes + +* **dev:** refactored to make it easier to use for other colorschemes ([9652b3c](https://github.com/folke/tokyonight.nvim/commit/9652b3ce9e97116fa0fb202059ff9e4d318761d5)) +* **groups:** allow plugin name or group name. Fixes [#562](https://github.com/folke/tokyonight.nvim/issues/562) ([12d8137](https://github.com/folke/tokyonight.nvim/commit/12d813726b2785a3dc3000b1263fc13b90556d13)) +* **indentmini:** add hl group for indentmini plugin ([#570](https://github.com/folke/tokyonight.nvim/issues/570)) ([6a7cd4d](https://github.com/folke/tokyonight.nvim/commit/6a7cd4d97fca90af08f05d0b293cfd77dda3c647)) + +## [4.1.3](https://github.com/folke/tokyonight.nvim/compare/v4.1.2...v4.1.3) (2024-07-03) + + +### Bug Fixes + +* **groups:** fixed enabling/disabling plugins. Closes [#562](https://github.com/folke/tokyonight.nvim/issues/562) ([2b453ba](https://github.com/folke/tokyonight.nvim/commit/2b453ba508796836bc00ac84cc677753bd004226)) +* **mini.icons:** grey back to fg ([8f92c4e](https://github.com/folke/tokyonight.nvim/commit/8f92c4e4c2eb573cb05c21b57a4c52c398f38674)) +* **mini.icons:** use comment color as grey ([c756243](https://github.com/folke/tokyonight.nvim/commit/c75624326a19402bc342e24b443eede33d6fe6e6)) + +## [4.1.2](https://github.com/folke/tokyonight.nvim/compare/v4.1.1...v4.1.2) (2024-07-03) + + +### Bug Fixes + +* fixup ([8c0d9e3](https://github.com/folke/tokyonight.nvim/commit/8c0d9e315f3e992d2eb356525902e042a9eb4eb9)) +* **helix:** fix markup broken generated values ([#560](https://github.com/folke/tokyonight.nvim/issues/560)) ([8ba07a0](https://github.com/folke/tokyonight.nvim/commit/8ba07a059fec7a533c73ae9cee2ffb7e04716757)) +* **mini-satusline:** reverse colors of devinfo and fileinfo with filename to make the colors look like lualine for mini.statusline ([#564](https://github.com/folke/tokyonight.nvim/issues/564)) ([29e9fce](https://github.com/folke/tokyonight.nvim/commit/29e9fce3184c534936897dfae537e9aa10c280b1)) +* **mini:** indent => indentscope ([a30eddd](https://github.com/folke/tokyonight.nvim/commit/a30edddce44fce4018316b5c4ca6c5ae9bc3215f)) +* release-please ([a5c56a5](https://github.com/folke/tokyonight.nvim/commit/a5c56a502bc7e05c8abe46b3ad36fd6ac0ff0057)) +* respect vim.o.background. Fixes [#565](https://github.com/folke/tokyonight.nvim/issues/565) ([a96bfa0](https://github.com/folke/tokyonight.nvim/commit/a96bfa0c04aac61ed731e85e487d18ba38864bc4)) + +## [4.1.1](https://github.com/folke/tokyonight.nvim/compare/v4.1.0...v4.1.1) (2024-07-02) + + +### Bug Fixes + +* correctly deal with background light/dark. Fixes [#554](https://github.com/folke/tokyonight.nvim/issues/554) ([0717599](https://github.com/folke/tokyonight.nvim/commit/07175991c38a5e41ffe8bdb06197a116a46370ae)) +* **lualine:** make lualine work again with just tokyonight. Fixes [#551](https://github.com/folke/tokyonight.nvim/issues/551) ([5d2fc75](https://github.com/folke/tokyonight.nvim/commit/5d2fc752264cbd9cefc668b300d4aa44ef531174)) +* **mini:** hue -> icons ([5808dbe](https://github.com/folke/tokyonight.nvim/commit/5808dbed0682270f0c40ae7a1bc517ad1fbcaede)) +* **util:** bring back lighten/darken. Fixes [#556](https://github.com/folke/tokyonight.nvim/issues/556) ([72a99aa](https://github.com/folke/tokyonight.nvim/commit/72a99aa3dd93e9c1a017c7c972ea597164031ee0)) + +## [4.1.0](https://github.com/folke/tokyonight.nvim/compare/v4.0.0...v4.1.0) (2024-07-02) + + +### Features + +* **dev:** highlight hl_groups and colors using hipatterns ([c05b9f6](https://github.com/folke/tokyonight.nvim/commit/c05b9f60f0ab3cae1ad64976212925b1a898760a)) +* **dev:** show terminal colors ([32100f4](https://github.com/folke/tokyonight.nvim/commit/32100f4dfbffc4997d97de5412a68602ca1e217c)) +* **extras:** added vim colorschemes. Fixes [#256](https://github.com/folke/tokyonight.nvim/issues/256) ([4c89692](https://github.com/folke/tokyonight.nvim/commit/4c896923e2931bb562b17325e2095eb2de8da886)) + + +### Bug Fixes + +* **build:** add additional inputs to check if rebuild is needed ([55e29a1](https://github.com/folke/tokyonight.nvim/commit/55e29a1208946798335924917efbabb0edb21098)) +* **dev:** hipatterns not optional ([4fafe7b](https://github.com/folke/tokyonight.nvim/commit/4fafe7b5600caec7bb226a23debdcf0c8e88cee4)) +* **dev:** make autocmds work with all lua files in tokyonight ([a9851c5](https://github.com/folke/tokyonight.nvim/commit/a9851c5b44fe2fa5757080fd83e8ae4100a27c3e)) +* **extras:** day bg ([5598215](https://github.com/folke/tokyonight.nvim/commit/5598215fa06572048bc857c9c71378a5433ec070)) +* fixed day themes ([4e8e7eb](https://github.com/folke/tokyonight.nvim/commit/4e8e7ebfe906c3cd7527bf2cd11d30238961507b)) +* **helix:** fix some broken generated values ([#519](https://github.com/folke/tokyonight.nvim/issues/519)) ([972d345](https://github.com/folke/tokyonight.nvim/commit/972d345361d8e55f1ce184ca2297cf9b3af53393)) +* **neo-tree:** handle transparent sidebars. Fixes [#551](https://github.com/folke/tokyonight.nvim/issues/551) ([b085271](https://github.com/folke/tokyonight.nvim/commit/b085271cd206db38080ddc43e109b869daa14308)) +* **neo-tree:** tabs. Fixes [#513](https://github.com/folke/tokyonight.nvim/issues/513) ([d25e7b1](https://github.com/folke/tokyonight.nvim/commit/d25e7b1a6dbfbcc9103e092631b0d3f0962aab1c)) +* **terminal:** slightly brighten bright colors ([4052d57](https://github.com/folke/tokyonight.nvim/commit/4052d57beb10affdaf8fe9ffa31c80fa17f6963d)) +* **xfceterm:** colorscheme name fix ([#520](https://github.com/folke/tokyonight.nvim/issues/520)) ([7b7cfeb](https://github.com/folke/tokyonight.nvim/commit/7b7cfeb5df9c09c2f5807b81e21274ba404ed1a3)) + +## [4.0.0](https://github.com/folke/tokyonight.nvim/compare/v3.0.1...v4.0.0) (2024-07-01) + + +### ⚠ BREAKING CHANGES + +* rewrite v4 ([#548](https://github.com/folke/tokyonight.nvim/issues/548)) + +### Features + +* added support for indentmini ([3c19449](https://github.com/folke/tokyonight.nvim/commit/3c194496dd5b640e1aefd9492c34d04ddbb1f136)) +* added support for mini.diff ([9afae4d](https://github.com/folke/tokyonight.nvim/commit/9afae4de8d335a421ee9d2205373b1ad6c854fb2)) +* added support for octo.nvim ([894ee8b](https://github.com/folke/tokyonight.nvim/commit/894ee8bcd5e7fec999c6695cfa353a421b86424b)) +* added support for printf ([41d80ad](https://github.com/folke/tokyonight.nvim/commit/41d80ad2f813b886c1695751e89e599b57d4ed93)) +* better colors for neotree git modified / untracked ([e7ff2f0](https://github.com/folke/tokyonight.nvim/commit/e7ff2f06b0550907afc8243089fda7a478827474)) +* better fzf dir part colors ([a6ce2df](https://github.com/folke/tokyonight.nvim/commit/a6ce2df30ab10e5e213f3f6d6910ea5a5d1f17ea)) +* **extras:** add lazygit ([#537](https://github.com/folke/tokyonight.nvim/issues/537)) ([226a2f1](https://github.com/folke/tokyonight.nvim/commit/226a2f1c388f08df6f75be1bc791d3fac280119c)) +* **extras:** add yazi theme ([#521](https://github.com/folke/tokyonight.nvim/issues/521)) ([2969eb4](https://github.com/folke/tokyonight.nvim/commit/2969eb4e31c23fc0dc98d8b793df10b598aed762)) +* **extras:** edit yazi find_position bg to NoiceVirtualText bg ([#532](https://github.com/folke/tokyonight.nvim/issues/532)) ([1a9dff7](https://github.com/folke/tokyonight.nvim/commit/1a9dff7f18cd21009d0633ee81f80fea36d061ae)) +* fzf-lua ([0f9d161](https://github.com/folke/tokyonight.nvim/commit/0f9d1618f40ce276e6c6be80cfbb24aa049b4880)) +* **fzf:** better colors ([63765c3](https://github.com/folke/tokyonight.nvim/commit/63765c355954142183e3fc02a2fde2c6d8007f85)) +* **fzf:** bring fzf extra in line with fzf-lua tokyonight colorscheme ([0246217](https://github.com/folke/tokyonight.nvim/commit/024621763d91bb48f2b486df529c7aaeb8d6d355)) +* **ibl:** use blue for indent context ([db0a4d4](https://github.com/folke/tokyonight.nvim/commit/db0a4d4c5de8b76f37855f3108a9288a4df1a2cb)) +* **mini:** add new highlight groups ([#545](https://github.com/folke/tokyonight.nvim/issues/545)) ([096543e](https://github.com/folke/tokyonight.nvim/commit/096543e112744eb94947cc3c5a916fff1deea2f0)) +* new style for line nr ([aabb529](https://github.com/folke/tokyonight.nvim/commit/aabb52985c316368c482deb10e1529852f7feddd)) +* noice cmdline colors ([8f72b06](https://github.com/folke/tokyonight.nvim/commit/8f72b0600f157141b0c9bb3a9df73d75345a9341)) +* octo status column ([34b37c8](https://github.com/folke/tokyonight.nvim/commit/34b37c89afafaf4e4b9c4a2d9f1c72aad75472cb)) +* rewrite v4 ([#548](https://github.com/folke/tokyonight.nvim/issues/548)) ([766be08](https://github.com/folke/tokyonight.nvim/commit/766be08803922a5761551500c09d4be4c3366b71)) +* **sublime:** added support for highlighting errors/warnings for sublime (bat etc) ([d088b15](https://github.com/folke/tokyonight.nvim/commit/d088b15433ee3db97fcdad615a0d4196157c4745)) +* **sublime:** highlights for info ([371220d](https://github.com/folke/tokyonight.nvim/commit/371220dfee2172fed6c216dc1dc1b4732044afcf)) +* **telescope:** better hl for telescope result comments ([34a0572](https://github.com/folke/tokyonight.nvim/commit/34a05722312423e21c2c929076c4b3d212a1538a)) +* **telescope:** prompt border in different color ([7ea04d5](https://github.com/folke/tokyonight.nvim/commit/7ea04d5c257c93d9f1c84ab770f76edc6357a13c)) + + +### Bug Fixes + +* extras ([c1aa4b8](https://github.com/folke/tokyonight.nvim/commit/c1aa4b8814add70085819e5dc5c39b9ffa894cb3)) +* **extras:** correct lazygit extension ([#538](https://github.com/folke/tokyonight.nvim/issues/538)) ([9601653](https://github.com/folke/tokyonight.nvim/commit/9601653f6c98b7b83479b5098b5c7f60183bb66a)) +* fzf groups ([7aee12f](https://github.com/folke/tokyonight.nvim/commit/7aee12f6b07f5f432efb2587f3f37346f88243f7)) +* fzf-lua ([9d84e0b](https://github.com/folke/tokyonight.nvim/commit/9d84e0b3a424dc94061c57b88f365f490f6bf443)) +* **fzf-lua:** color updates ([14461b6](https://github.com/folke/tokyonight.nvim/commit/14461b678bb7fbff281254a5059a3a3013e493aa)) +* **gitui:** support color format breaking change ([#539](https://github.com/folke/tokyonight.nvim/issues/539)) ([c3a3e89](https://github.com/folke/tokyonight.nvim/commit/c3a3e892d5cf11762c1b6bf5b0dfb4ceb1e27558)) +* **gitui:** wrap values in Some ([#508](https://github.com/folke/tokyonight.nvim/issues/508)) ([1372569](https://github.com/folke/tokyonight.nvim/commit/1372569c9f318305bbe90abc4af6dc9dfd5cd8a4)) +* lualine ([0c511d7](https://github.com/folke/tokyonight.nvim/commit/0c511d7cac30407f52223b0816a8697c1fcccca6)) +* **markdown:** added [@markup](https://github.com/markup).italic ([8885b75](https://github.com/folke/tokyonight.nvim/commit/8885b75288de659c14ec9ae6782a79a2056030b9)) +* **neo-tree:** slightly better colors ([f4fdf24](https://github.com/folke/tokyonight.nvim/commit/f4fdf247c30087e31085ba797b44a671a43718c2)) +* **python:** import name from semantic tokens from basedpyright ([2983390](https://github.com/folke/tokyonight.nvim/commit/2983390e0ee59a40c02bb90df9bad860f251534a)) +* re-add `[@punctuation](https://github.com/punctuation).special` ([#484](https://github.com/folke/tokyonight.nvim/issues/484)) ([b37bc55](https://github.com/folke/tokyonight.nvim/commit/b37bc55d10fd575e9b7b713c59e07c85cb810f67)) +* **treesitter:** correctly link up delimiters again ([8c11d30](https://github.com/folke/tokyonight.nvim/commit/8c11d30a24c5ac8b719048ea4282466e9575b10f)) +* use regular fg for Bold/Italic ([710f901](https://github.com/folke/tokyonight.nvim/commit/710f901c175087c5eeaa77f91dbef4845f3a192f)) +* zellij invisible selecting text ([#535](https://github.com/folke/tokyonight.nvim/issues/535)) ([20bb1b1](https://github.com/folke/tokyonight.nvim/commit/20bb1b10cb0759b9540ca6a4eca5f38eb4cc2233)) + ## [3.0.1](https://github.com/folke/tokyonight.nvim/compare/v3.0.0...v3.0.1) (2024-01-21) @@ -387,14 +507,14 @@ ### ⚠ BREAKING CHANGES -* move extras in seperate directories +* move extras in separate directories * new `moon` style for TokyoNight, based on the Moonlight theme * added docs for the new settings ### Features * "day" variant ([8889ad8](https://github.com/folke/tokyonight.nvim/commit/8889ad88481cd07b9f32eab2879ab6a32a6cc75a)) -* add bg hightlight on NvimTreeOpenedFile ([#163](https://github.com/folke/tokyonight.nvim/issues/163)) ([a1d1c0f](https://github.com/folke/tokyonight.nvim/commit/a1d1c0fb19702f597cb16ef628baddff64ac2585)) +* add bg highlight on NvimTreeOpenedFile ([#163](https://github.com/folke/tokyonight.nvim/issues/163)) ([a1d1c0f](https://github.com/folke/tokyonight.nvim/commit/a1d1c0fb19702f597cb16ef628baddff64ac2585)) * add color config for foot ([#147](https://github.com/folke/tokyonight.nvim/issues/147)) ([eaf6a76](https://github.com/folke/tokyonight.nvim/commit/eaf6a7607e2ce949fe53981ddbde92dd45af3d06)) * add color for Nvimtree vertsplit ([#215](https://github.com/folke/tokyonight.nvim/issues/215)) ([2a74abd](https://github.com/folke/tokyonight.nvim/commit/2a74abdf1206a015a8782e6cf33a94142b5cbdd0)) * Add colors to Neotest ([#229](https://github.com/folke/tokyonight.nvim/issues/229)) ([66bfc2e](https://github.com/folke/tokyonight.nvim/commit/66bfc2e8f754869c7b651f3f47a2ee56ae557764)) @@ -434,7 +554,7 @@ * added sublime themes to use with bat, delta and others ([eeca644](https://github.com/folke/tokyonight.nvim/commit/eeca64401fdadabeba132fb80427ac8c0c0f9d0e)) * added support for ALE signs ([921770e](https://github.com/folke/tokyonight.nvim/commit/921770e89db280888c219a0e24ca8c33ac7d7d9c)) * added support for Alpha ([5eeeb15](https://github.com/folke/tokyonight.nvim/commit/5eeeb15bb6935bed0b77f736fbf5125797927452)) -* added support for CmpKind hilight groups ([0d91764](https://github.com/folke/tokyonight.nvim/commit/0d917649551662f8cd389c26460d70949630353d)) +* added support for CmpKind highlight groups ([0d91764](https://github.com/folke/tokyonight.nvim/commit/0d917649551662f8cd389c26460d70949630353d)) * added support for hlargs and treesitter-context ([413f7d7](https://github.com/folke/tokyonight.nvim/commit/413f7d7b62d7ea5d658554434b236775126ab418)) * added support for illuminate & improvements for which key ([f6f86c5](https://github.com/folke/tokyonight.nvim/commit/f6f86c55e19941a5b663f4840c40cbd274d74b55)) * added support for LspSignatureActiveParameter ([b40cc52](https://github.com/folke/tokyonight.nvim/commit/b40cc528615d093e185ee6d3507f926d9b05392a)) @@ -478,7 +598,7 @@ * nvim tree deleted ([8a759c7](https://github.com/folke/tokyonight.nvim/commit/8a759c75794b17cf29ffa46ce58ee8001a70d150)) * optional italic for variables (fix [#8](https://github.com/folke/tokyonight.nvim/issues/8)) ([fc9adf1](https://github.com/folke/tokyonight.nvim/commit/fc9adf1cfe95f7318763cccc6b48dcca847edd88)) * set TelescopeNormal to default fg and bg colors ([#137](https://github.com/folke/tokyonight.nvim/issues/137)) ([8223c97](https://github.com/folke/tokyonight.nvim/commit/8223c970677e4d88c9b6b6d81bda23daf11062bb)) -* slighlty increase git signs brightness and make them configurable ([49b3b90](https://github.com/folke/tokyonight.nvim/commit/49b3b9079867fb845834068d585deae4858e2fd9)) +* slightly increase git signs brightness and make them configurable ([49b3b90](https://github.com/folke/tokyonight.nvim/commit/49b3b9079867fb845834068d585deae4858e2fd9)) * support for the upcaoming LspTrouble ([b5a42b7](https://github.com/folke/tokyonight.nvim/commit/b5a42b7aee06cfa7347b84c695e19f8bd3277ad0)) * support navic ([#216](https://github.com/folke/tokyonight.nvim/issues/216)) ([e0bdba5](https://github.com/folke/tokyonight.nvim/commit/e0bdba580dc91f4673b499be2919d09f6447227f)) * switch purple with magenta for moon style ([7c7425b](https://github.com/folke/tokyonight.nvim/commit/7c7425b8842a23b944ce50d459ef821a54a7e0da)) @@ -507,7 +627,7 @@ * better highlights for LspTrouble ([fdb9e60](https://github.com/folke/tokyonight.nvim/commit/fdb9e60ce8c49444b726b2cd30190815375a8cf7)) * better markdown styles ([d9ff8c6](https://github.com/folke/tokyonight.nvim/commit/d9ff8c6f9d23c1788c615313a3e1fb073f7d1f52)) * brighter conceal. Fixes [#70](https://github.com/folke/tokyonight.nvim/issues/70) ([b15ab41](https://github.com/folke/tokyonight.nvim/commit/b15ab410a5eda1b955ca3f91447cdcb201a4559a)) -* check expicitely wether new hl group names are supported by checking for [@comment](https://github.com/comment) ([ffa7768](https://github.com/folke/tokyonight.nvim/commit/ffa77681c36755bfc727b759dd4ec17b708ffabf)) +* check explicitly whether new hl group names are supported by checking for [@comment](https://github.com/comment) ([ffa7768](https://github.com/folke/tokyonight.nvim/commit/ffa77681c36755bfc727b759dd4ec17b708ffabf)) * cleanup ([e1cb206](https://github.com/folke/tokyonight.nvim/commit/e1cb2068a8118bcf4b2b0ad81b87dbebcc3eee3b)) * clear config cache when reloading colorscheme. Fixes [#71](https://github.com/folke/tokyonight.nvim/issues/71) ([67d58e2](https://github.com/folke/tokyonight.nvim/commit/67d58e2f4d2a822fb758517d6ce003dbbe9cd36b)) * ColorColumn = black. Fixes [#72](https://github.com/folke/tokyonight.nvim/issues/72) ([1ea6950](https://github.com/folke/tokyonight.nvim/commit/1ea69504b68e252fe346e4ca91a14f5f08852c84)) @@ -523,7 +643,7 @@ * don't use dark fg in floats ([4370d3d](https://github.com/folke/tokyonight.nvim/commit/4370d3de58ba824bb9aeed23e0f45562314e335a)) * dont lazyload lsp colors ([ed89c01](https://github.com/folke/tokyonight.nvim/commit/ed89c01ea0b9a1a6a6c4ae6223f7c178b352ca3f)) * dont set @ hl groups when nvim < 0.8 (fixes [#207](https://github.com/folke/tokyonight.nvim/issues/207)) ([dbf4300](https://github.com/folke/tokyonight.nvim/commit/dbf43002d66eb77d20786a44b6dba21be49fa900)) -* explicitely set variable fg. Fixes issues when winhl has overriden Normal ([50594ee](https://github.com/folke/tokyonight.nvim/commit/50594ee3032d867013fa9c9dc4676a2a96c9b660)) +* explicitly set variable fg. Fixes issues when winhl has overridden Normal ([50594ee](https://github.com/folke/tokyonight.nvim/commit/50594ee3032d867013fa9c9dc4676a2a96c9b660)) * fix bufferline separator bg colors (fixes [#189](https://github.com/folke/tokyonight.nvim/issues/189)) ([e0e9f54](https://github.com/folke/tokyonight.nvim/commit/e0e9f54051b7260b324dad7876021dc6784c8b76)) * fixed defaults linking to TS.. groups ([2a2ce9b](https://github.com/folke/tokyonight.nvim/commit/2a2ce9bdb76d7a2104bbfa5cfbcadcd15de0d7e9)) * fixed extras day styles ([053562c](https://github.com/folke/tokyonight.nvim/commit/053562c9dc5e89b1bacf5cc972ac7cb30aea9497)) @@ -585,4 +705,4 @@ ### Code Refactoring -* move extras in seperate directories ([1d1d172](https://github.com/folke/tokyonight.nvim/commit/1d1d1722e035389dc3bfc2489133fa58533c310f)) +* move extras in separate directories ([1d1d172](https://github.com/folke/tokyonight.nvim/commit/1d1d1722e035389dc3bfc2489133fa58533c310f)) diff --git a/NEWS.md b/NEWS.md new file mode 100644 index 00000000..b9d802d9 --- /dev/null +++ b/NEWS.md @@ -0,0 +1,29 @@ +# What's New? + +## 4.x + +**TokyoNight** creates almost 900 highlight groups, so it was about time to refactor the code :) + +Support for plugins has been split in separate files and can be enabled/disabled via `opts`. + +For `lazy.nvim` users `opts.plugins.auto = true` will automatically enable/disable plugins +based on the plugins you have installed. + +By default `opts.plugins.all = true` for users not using `lazy.nvim`, which will enable all plugins. +Set it to `false` to manually enable/disable plugins. + +- Loading of your customized `toyonight` theme is automatically cached. + **TN** was already quite fast, but now it's even faster (around 2ms on my machine with all lazy plugins enabled). +- The `day` style has been updated and fixed +- removed the option `opts.hide_inactive_statusline` +- removed the option `opts.sidebars` + +--- + +## Bonus: `tokyonight` Dev Environment + +Mostly for my owe use, but I've added a `tokyonight` dev environment to the repo, +that is automatically loaded from `.lazy.lua` when you use `lazy.nvim`. + +It mostly configures [mini.hipatterns](https://github.com/echasnovski/mini.hipatterns) to easily +what the colors and highlight groups look like. diff --git a/README.md b/README.md index d271288d..9669938f 100644 --- a/README.md +++ b/README.md @@ -8,63 +8,158 @@ TokyoNight](https://github.com/enkia/tokyo-night-vscode-theme) theme. Includes [iTerm](https://iterm2.com/) and [Fish](https://fishshell.com/docs/current/index.html). -## Storm - -![image](https://user-images.githubusercontent.com/292349/115295095-3a9e5080-a10e-11eb-9aed-6054488c46ce.png) - -## Night - -![image](https://user-images.githubusercontent.com/292349/115295327-7afdce80-a10e-11eb-89b3-2591262bf95a.png) - -## Moon - -![image](https://user-images.githubusercontent.com/292349/190951628-10ba28a1-57ff-4479-8eab-47400a402242.png) - -## Day - -![image](https://user-images.githubusercontent.com/292349/115996270-78c6c480-a593-11eb-8ed0-7d1400b058f5.png) + + + + + + + + + + + + + + + + + +
MoonStorm
+ + + +
NightDay
+ + + +
## ✨ Features - Supports the latest [Neovim](https://github.com/neovim/neovim) [0.9.0](https://github.com/neovim/neovim/releases/tag/v0.9.0) features. -- Enhances terminal colors. -- Introduces a darker background option for sidebar-like windows. +- Terminal colors. - Supports all major plugins. - Provides [TokyoNight](https://github.com/folke/tokyonight.nvim) [extras](#-extras) for numerous other applications. -### 🍭 Extras +
+🎨 Supported Plugins + + + +| Plugin | Source | +| --- | --- | +| [aerial.nvim](https://github.com/stevearc/aerial.nvim) | [`aerial`](lua/tokyonight/groups/aerial.lua) | +| [ale](https://github.com/dense-analysis/ale) | [`ale`](lua/tokyonight/groups/ale.lua) | +| [alpha-nvim](https://github.com/goolord/alpha-nvim) | [`alpha`](lua/tokyonight/groups/alpha.lua) | +| [barbar.nvim](https://github.com/romgrk/barbar.nvim) | [`barbar`](lua/tokyonight/groups/barbar.lua) | +| [bufferline.nvim](https://github.com/akinsho/bufferline.nvim) | [`bufferline`](lua/tokyonight/groups/bufferline.lua) | +| [nvim-cmp](https://github.com/hrsh7th/nvim-cmp) | [`cmp`](lua/tokyonight/groups/cmp.lua) | +| [nvim-dap](https://github.com/mfussenegger/nvim-dap) | [`dap`](lua/tokyonight/groups/dap.lua) | +| [dashboard-nvim](https://github.com/glepnir/dashboard-nvim) | [`dashboard`](lua/tokyonight/groups/dashboard.lua) | +| [flash.nvim](https://github.com/folke/flash.nvim) | [`flash`](lua/tokyonight/groups/flash.lua) | +| [fzf-lua](https://github.com/ibhagwan/fzf-lua) | [`fzf`](lua/tokyonight/groups/fzf.lua) | +| [vim-gitgutter](https://github.com/airblade/vim-gitgutter) | [`gitgutter`](lua/tokyonight/groups/gitgutter.lua) | +| [gitsigns.nvim](https://github.com/lewis6991/gitsigns.nvim) | [`gitsigns`](lua/tokyonight/groups/gitsigns.lua) | +| [glyph-palette.vim](https://github.com/lambdalisue/glyph-palette.vim) | [`glyph-palette`](lua/tokyonight/groups/glyph-palette.lua) | +| [headlines.nvim](https://github.com/lukas-reineke/headlines.nvim) | [`headlines`](lua/tokyonight/groups/headlines.lua) | +| [hop.nvim](https://github.com/phaazon/hop.nvim) | [`hop`](lua/tokyonight/groups/hop.lua) | +| [vim-illuminate](https://github.com/RRethy/vim-illuminate) | [`illuminate`](lua/tokyonight/groups/illuminate.lua) | +| [indent-blankline.nvim](https://github.com/lukas-reineke/indent-blankline.nvim) | [`indent-blankline`](lua/tokyonight/groups/indent-blankline.lua) | +| [indentmini.nvim](https://github.com/nvimdev/indentmini.nvim) | [`indentmini`](lua/tokyonight/groups/indentmini.lua) | +| [lazy.nvim](https://github.com/folke/lazy.nvim) | [`lazy`](lua/tokyonight/groups/lazy.lua) | +| [leap.nvim](https://github.com/ggandor/leap.nvim) | [`leap`](lua/tokyonight/groups/leap.lua) | +| [lspsaga.nvim](https://github.com/glepnir/lspsaga.nvim) | [`lspsaga`](lua/tokyonight/groups/lspsaga.lua) | +| [mini.animate](https://github.com/echasnovski/mini.animate) | [`mini_animate`](lua/tokyonight/groups/mini_animate.lua) | +| [mini.clue](https://github.com/echasnovski/mini.clue) | [`mini_clue`](lua/tokyonight/groups/mini_clue.lua) | +| [mini.completion](https://github.com/echasnovski/mini.completion) | [`mini_completion`](lua/tokyonight/groups/mini_completion.lua) | +| [mini.cursorword](https://github.com/echasnovski/mini.cursorword) | [`mini_cursorword`](lua/tokyonight/groups/mini_cursorword.lua) | +| [mini.deps](https://github.com/echasnovski/mini.deps) | [`mini_deps`](lua/tokyonight/groups/mini_deps.lua) | +| [mini.diff](https://github.com/echasnovski/mini.diff) | [`mini_diff`](lua/tokyonight/groups/mini_diff.lua) | +| [mini.files](https://github.com/echasnovski/mini.files) | [`mini_files`](lua/tokyonight/groups/mini_files.lua) | +| [mini.hipatterns](https://github.com/echasnovski/mini.hipatterns) | [`mini_hipatterns`](lua/tokyonight/groups/mini_hipatterns.lua) | +| [mini.icons](https://github.com/echasnovski/mini.icons) | [`mini_icons`](lua/tokyonight/groups/mini_icons.lua) | +| [mini.indentscope](https://github.com/echasnovski/mini.indentscope) | [`mini_indentscope`](lua/tokyonight/groups/mini_indentscope.lua) | +| [mini.jump](https://github.com/echasnovski/mini.jump) | [`mini_jump`](lua/tokyonight/groups/mini_jump.lua) | +| [mini.map](https://github.com/echasnovski/mini.map) | [`mini_map`](lua/tokyonight/groups/mini_map.lua) | +| [mini.notify](https://github.com/echasnovski/mini.notify) | [`mini_notify`](lua/tokyonight/groups/mini_notify.lua) | +| [mini.operators](https://github.com/echasnovski/mini.operators) | [`mini_operators`](lua/tokyonight/groups/mini_operators.lua) | +| [mini.pick](https://github.com/echasnovski/mini.pick) | [`mini_pick`](lua/tokyonight/groups/mini_pick.lua) | +| [mini.starter](https://github.com/echasnovski/mini.starter) | [`mini_starter`](lua/tokyonight/groups/mini_starter.lua) | +| [mini.statusline](https://github.com/echasnovski/mini.statusline) | [`mini_statusline`](lua/tokyonight/groups/mini_statusline.lua) | +| [mini.surround](https://github.com/echasnovski/mini.surround) | [`mini_surround`](lua/tokyonight/groups/mini_surround.lua) | +| [mini.tabline](https://github.com/echasnovski/mini.tabline) | [`mini_tabline`](lua/tokyonight/groups/mini_tabline.lua) | +| [mini.test](https://github.com/echasnovski/mini.test) | [`mini_test`](lua/tokyonight/groups/mini_test.lua) | +| [mini.trailspace](https://github.com/echasnovski/mini.trailspace) | [`mini_trailspace`](lua/tokyonight/groups/mini_trailspace.lua) | +| [nvim-navic](https://github.com/SmiteshP/nvim-navic) | [`navic`](lua/tokyonight/groups/navic.lua) | +| [neo-tree.nvim](https://github.com/nvim-neo-tree/neo-tree.nvim) | [`neo-tree`](lua/tokyonight/groups/neo-tree.lua) | +| [neogit](https://github.com/TimUntersberger/neogit) | [`neogit`](lua/tokyonight/groups/neogit.lua) | +| [neotest](https://github.com/nvim-neotest/neotest) | [`neotest`](lua/tokyonight/groups/neotest.lua) | +| [noice.nvim](https://github.com/folke/noice.nvim) | [`noice`](lua/tokyonight/groups/noice.lua) | +| [nvim-notify](https://github.com/rcarriga/nvim-notify) | [`notify`](lua/tokyonight/groups/notify.lua) | +| [nvim-tree.lua](https://github.com/kyazdani42/nvim-tree.lua) | [`nvim-tree`](lua/tokyonight/groups/nvim-tree.lua) | +| [octo.nvim](https://github.com/pwntester/octo.nvim) | [`octo`](lua/tokyonight/groups/octo.lua) | +| [rainbow-delimiters.nvim](https://github.com/HiPhish/rainbow-delimiters.nvim) | [`rainbow`](lua/tokyonight/groups/rainbow.lua) | +| [nvim-scrollbar](https://github.com/petertriho/nvim-scrollbar) | [`scrollbar`](lua/tokyonight/groups/scrollbar.lua) | +| [vim-sneak](https://github.com/justinmk/vim-sneak) | [`sneak`](lua/tokyonight/groups/sneak.lua) | +| [telescope.nvim](https://github.com/nvim-telescope/telescope.nvim) | [`telescope`](lua/tokyonight/groups/telescope.lua) | +| [nvim-treesitter-context](https://github.com/nvim-treesitter/nvim-treesitter-context) | [`treesitter-context`](lua/tokyonight/groups/treesitter-context.lua) | +| [trouble.nvim](https://github.com/folke/trouble.nvim) | [`trouble`](lua/tokyonight/groups/trouble.lua) | +| [headlines.nvim](https://github.com/lukas-reineke/headlines.nvim) | [`vimwiki`](lua/tokyonight/groups/vimwiki.lua) | +| [which-key.nvim](https://github.com/folke/which-key.nvim) | [`which-key`](lua/tokyonight/groups/which-key.lua) | +| [yanky.nvim](https://github.com/gbprod/yanky.nvim) | [`yanky`](lua/tokyonight/groups/yanky.lua) | + + + +
+ +
+🍭 Extras -- [Alacritty](https://github.com/alacritty/alacritty) ([alacritty](extras/alacritty)) -- [Delta](https://github.com/dandavison/delta) ([delta](extras/delta)) -- [Dunst](https://dunst-project.org/) ([dunst](extras/dunst)) -- [Fish](https://fishshell.com/docs/current/index.html) ([fish](extras/fish)) -- [Fish Themes](https://fishshell.com/docs/current/interactive.html#syntax-highlighting) ([fish_themes](extras/fish_themes)) -- [Foot](https://codeberg.org/dnkl/foot) ([foot](extras/foot)) -- [Fzf](https://github.com/junegunn/fzf) ([fzf](extras/fzf)) -- [GitUI](https://github.com/extrawurst/gitui) ([gitui](extras/gitui)) -- [Helix](https://helix-editor.com/) ([helix](extras/helix)) -- [iTerm](https://iterm2.com/) ([iterm](extras/iterm)) -- [Kitty](https://sw.kovidgoyal.net/kitty/conf.html) ([kitty](extras/kitty)) -- [Lua Table for testing](https://www.lua.org) ([lua](extras/lua)) -- [Prism](https://prismjs.com) ([prism](extras/prism)) -- [Sublime Text](https://www.sublimetext.com/docs/themes) ([sublime](extras/sublime)) -- [Terminator](https://gnome-terminator.readthedocs.io/en/latest/config.html) ([terminator](extras/terminator)) -- [Tilix](https://github.com/gnunn1/tilix) ([tilix](extras/tilix)) -- [Tmux](https://github.com/tmux/tmux/wiki) ([tmux](extras/tmux)) -- [WezTerm](https://wezfurlong.org/wezterm/config/files.html) ([wezterm](extras/wezterm)) -- [Windows Terminal](https://aka.ms/terminal-documentation) ([windows_terminal](extras/windows_terminal)) -- [Xfce Terminal](https://docs.xfce.org/apps/terminal/advanced) ([xfceterm](extras/xfceterm)) -- [Xresources](https://wiki.archlinux.org/title/X_resources) ([xresources](extras/xresources)) -- [Zathura](https://pwmt.org/projects/zathura/) ([zathura](extras/zathura)) + +| Tool | Extra | +| --- | --- | +| [Alacritty](https://github.com/alacritty/alacritty) | [extras/alacritty](extras/alacritty) | +| [Delta](https://github.com/dandavison/delta) | [extras/delta](extras/delta) | +| [Dunst](https://dunst-project.org/) | [extras/dunst](extras/dunst) | +| [Fish](https://fishshell.com/docs/current/index.html) | [extras/fish](extras/fish) | +| [Fish Themes](https://fishshell.com/docs/current/interactive.html#syntax-highlighting) | [extras/fish_themes](extras/fish_themes) | +| [Foot](https://codeberg.org/dnkl/foot) | [extras/foot](extras/foot) | +| [Fzf](https://github.com/junegunn/fzf) | [extras/fzf](extras/fzf) | +| [GitUI](https://github.com/extrawurst/gitui) | [extras/gitui](extras/gitui) | +| [GNOME Terminal](https://gitlab.gnome.org/GNOME/gnome-terminal) | [extras/gnome_terminal](extras/gnome_terminal) | +| [Helix](https://helix-editor.com/) | [extras/helix](extras/helix) | +| [iTerm](https://iterm2.com/) | [extras/iterm](extras/iterm) | +| [Kitty](https://sw.kovidgoyal.net/kitty/conf.html) | [extras/kitty](extras/kitty) | +| [Lazygit](https://github.com/jesseduffield/lazygit) | [extras/lazygit](extras/lazygit) | +| [Lua Table for testing](https://www.lua.org) | [extras/lua](extras/lua) | +| [Prism](https://prismjs.com) | [extras/prism](extras/prism) | +| [Slack](https://slack.com) | [extras/slack](extras/slack) | +| [Spotify Player](https://github.com/aome510/spotify-player) | [extras/spotify_player](extras/spotify_player) | +| [Sublime Text](https://www.sublimetext.com/docs/themes) | [extras/sublime](extras/sublime) | +| [Terminator](https://gnome-terminator.readthedocs.io/en/latest/config.html) | [extras/terminator](extras/terminator) | +| [Tilix](https://github.com/gnunn1/tilix) | [extras/tilix](extras/tilix) | +| [Tmux](https://github.com/tmux/tmux/wiki) | [extras/tmux](extras/tmux) | +| [Vim](https://vimhelp.org/) | [extras/vim](extras/vim) | +| [WezTerm](https://wezfurlong.org/wezterm/config/files.html) | [extras/wezterm](extras/wezterm) | +| [Windows Terminal](https://aka.ms/terminal-documentation) | [extras/windows_terminal](extras/windows_terminal) | +| [Xfce Terminal](https://docs.xfce.org/apps/terminal/advanced) | [extras/xfceterm](extras/xfceterm) | +| [Xresources](https://wiki.archlinux.org/title/X_resources) | [extras/xresources](extras/xresources) | +| [Yazi](https://github.com/sxyazi/yazi) | [extras/yazi](extras/yazi) | +| [Zathura](https://pwmt.org/projects/zathura/) | [extras/zathura](extras/zathura) | +| [Zellij](https://zellij.dev/) | [extras/zellij](extras/zellij) | + +
+ ## ⚡️ Requirements - [Neovim](https://github.com/neovim/neovim) >= - [0.7.2](https://github.com/neovim/neovim/releases/tag/v0.7.2) + [0.8.0](https://github.com/neovim/neovim/releases/tag/v0.8.0) ## 📦 Installation @@ -82,7 +177,9 @@ Install the theme with your preferred package manager, such as ## 🚀 Usage -### Vim Script +```lua +vim.cmd[[colorscheme tokyonight]] +``` ```vim colorscheme tokyonight @@ -94,15 +191,12 @@ colorscheme tokyonight-day colorscheme tokyonight-moon ``` -### [Lua](https://www.lua.org) - -```lua -vim.cmd[[colorscheme tokyonight]] -``` +Some plugins need extra configuration to work with **TokyoNight**. -#### External Plugins +
+ Click here for more details -##### [Barbecue](https://github.com/utilyre/barbecue.nvim) +### [Barbecue](https://github.com/utilyre/barbecue.nvim) ```lua -- Lua @@ -113,7 +207,7 @@ require('barbecue').setup { } ``` -##### [Lualine](https://github.com/nvim-lualine/lualine.nvim) +### [Lualine](https://github.com/nvim-lualine/lualine.nvim) ```lua -- Lua @@ -126,16 +220,19 @@ require('lualine').setup { } ``` -##### [Lightline](https://github.com/itchyny/lightline.vim) +### [Lightline](https://github.com/itchyny/lightline.vim) ```vim " Vim Script let g:lightline = {'colorscheme': 'tokyonight'} ``` +
+ ## ⚙️ Configuration -> ❗️ Set the configuration **BEFORE** loading the color scheme with `colorscheme tokyonight`. +> [!IMPORTANT] +> Set the configuration **BEFORE** loading the color scheme with `colorscheme tokyonight`. The theme offers four styles: [storm](#storm), [moon](#moon), [night](#night), and [day](#day). @@ -146,14 +243,20 @@ The [day](#day) style is used when `{ style = "day" }` is passed to [TokyoNight](https://github.com/folke/tokyonight.nvim) uses the default options, unless `setup` is explicitly called. +
+ Default Options + + + ```lua -require("tokyonight").setup({ - -- your configuration comes here - -- or leave it empty to use the default settings - style = "storm", -- The theme comes in three styles, `storm`, `moon`, a darker variant `night` and `day` +---@class tokyonight.Config +---@field on_colors fun(colors: ColorScheme) +---@field on_highlights fun(highlights: tokyonight.Highlights, colors: ColorScheme) +M.defaults = { + style = "moon", -- The theme comes in three styles, `storm`, a darker variant `night` and `day` light_style = "day", -- The theme is used when the background is set to light transparent = false, -- Enable this to disable setting the background color - terminal_colors = true, -- Configure the colors used when opening a `:terminal` in [Neovim](https://github.com/neovim/neovim) + terminal_colors = true, -- Configure the colors used when opening a `:terminal` in Neovim styles = { -- Style to be applied to different syntax groups -- Value is any valid attr-list value for `:help nvim_set_hl` @@ -165,9 +268,7 @@ require("tokyonight").setup({ sidebars = "dark", -- style for sidebars, see below floats = "dark", -- style for floating windows }, - sidebars = { "qf", "help" }, -- Set a darker background on sidebar-like windows. For example: `["qf", "vista_kind", "terminal", "packer"]` day_brightness = 0.3, -- Adjusts the brightness of the colors of the **Day** style. Number between 0 and 1, from dull to vibrant colors - hide_inactive_statusline = false, -- Enabling this option, will hide inactive statuslines and replace them with a thin border instead. Should work with the standard **StatusLine** and **LuaLine**. dim_inactive = false, -- dims inactive windows lualine_bold = false, -- When `true`, section headers in the lualine theme will be bold @@ -178,12 +279,32 @@ require("tokyonight").setup({ --- You can override specific highlights to use other groups or a hex color --- function will be called with a Highlights and ColorScheme table - ---@param highlights Highlights + ---@param highlights tokyonight.Highlights ---@param colors ColorScheme on_highlights = function(highlights, colors) end, -}) + + cache = true, -- When set to true, the theme will be cached for better performance + + ---@type table + plugins = { + -- enable all plugins when not using lazy.nvim + -- set to false to manually enable/disable plugins + all = package.loaded.lazy == nil, + -- uses your plugin manager to automatically enable needed plugins + -- currently only lazy.nvim is supported + auto = true, + -- add any plugins here that you want to enable + -- for all possible plugins, see: + -- * https://github.com/folke/tokyonight.nvim/tree/main/lua/tokyonight/groups + -- telescope = true, + }, +} ``` + + +
+ ## 🪓 Overriding Colors & Highlight Groups How the highlight groups are calculated: @@ -200,7 +321,8 @@ For default values of `colors` and `highlights`, please consult the [night](extras/lua/tokyonight_night.lua), and [day](extras/lua/tokyonight_day.lua) themes. -### Settings and color alteration demonstration +
+ Settings & Changing Colors ```lua require("tokyonight").setup({ @@ -210,7 +332,6 @@ require("tokyonight").setup({ styles = { functions = {} }, - sidebars = { "qf", "vista_kind", "terminal", "packer" }, -- Change the "hint" color to the "orange" color, and make the "error" color bright red on_colors = function(colors) colors.hint = colors.orange @@ -219,7 +340,10 @@ require("tokyonight").setup({ }) ``` -### [Borderless Telescope](https://github.com/nvim-telescope/telescope.nvim/wiki/Gallery#borderless) example +
+ +
+ Borderless Telescope ```lua require("tokyonight").setup({ @@ -256,7 +380,10 @@ require("tokyonight").setup({ }) ``` -### Fix `undercurls` in [Tmux](https://github.com/tmux/tmux) +
+ +
+ Fix undercurls in Tmux To have undercurls show up and in color, add the following to your [Tmux](https://github.com/tmux/tmux) configuration file: @@ -268,6 +395,8 @@ set -as terminal-overrides ',*:Smulx=\E[4::%p1%dm' # undercurl support set -as terminal-overrides ',*:Setulc=\E[58::2::%p1%{65536}%/%d::%p1%{256}%/%{255}%&%d::%p1%{255}%&%d%;m' # underscore colours - needs tmux-3.0 ``` +
+ ## 🍭 Extras Extra color configs for [Kitty](https://sw.kovidgoyal.net/kitty/conf.html), @@ -305,7 +434,7 @@ How to add a new extra template: 3. Run the following command to generate new [extra](#-extras) themes from the tokyonight plugin directory: ```sh - nvim --headless "+lua require('tokyonight.extra').setup()" +qa + ./extras/gen ``` 4. Check the newly created themes in the `extra/` directory. Please **DO NOT** diff --git a/colors/tokyonight-day.lua b/colors/tokyonight-day.lua index 4e30216d..61bf56b0 100644 --- a/colors/tokyonight-day.lua +++ b/colors/tokyonight-day.lua @@ -1 +1 @@ -require("tokyonight")._load("day") +require("tokyonight").load({ style = "day" }) diff --git a/colors/tokyonight-moon.lua b/colors/tokyonight-moon.lua index 4e9e235b..432d7622 100644 --- a/colors/tokyonight-moon.lua +++ b/colors/tokyonight-moon.lua @@ -1 +1 @@ -require("tokyonight")._load("moon") +require("tokyonight").load({ style = "moon" }) diff --git a/colors/tokyonight-night.lua b/colors/tokyonight-night.lua index 3addac31..92f8f26b 100644 --- a/colors/tokyonight-night.lua +++ b/colors/tokyonight-night.lua @@ -1 +1 @@ -require("tokyonight")._load("night") +require("tokyonight").load({ style = "night" }) diff --git a/colors/tokyonight-storm.lua b/colors/tokyonight-storm.lua index 616e7504..40710d93 100644 --- a/colors/tokyonight-storm.lua +++ b/colors/tokyonight-storm.lua @@ -1 +1 @@ -require("tokyonight")._load("storm") +require("tokyonight").load({ style = "storm" }) diff --git a/colors/tokyonight.lua b/colors/tokyonight.lua index 8edb7a64..4e9be0ea 100644 --- a/colors/tokyonight.lua +++ b/colors/tokyonight.lua @@ -1 +1,3 @@ -require("tokyonight")._load() +require("tokyonight").load({ + style = vim.o.background == "light" and "day" or nil, +}) diff --git a/doc/tokyonight.nvim.txt b/doc/tokyonight.nvim.txt index fe95ee10..affd6cfe 100644 --- a/doc/tokyonight.nvim.txt +++ b/doc/tokyonight.nvim.txt @@ -1,13 +1,9 @@ -*tokyonight.nvim.txt* For Neovim >= 0.8.0 Last change: 2024 January 31 +*tokyonight.nvim.txt* For Neovim >= 0.8.0 Last change: 2024 July 04 ============================================================================== Table of Contents *tokyonight.nvim-table-of-contents* 1. Tokyo Night |tokyonight.nvim-tokyo-night| - - Storm |tokyonight.nvim-tokyo-night-storm| - - Night |tokyonight.nvim-tokyo-night-night| - - Moon |tokyonight.nvim-tokyo-night-moon| - - Day |tokyonight.nvim-tokyo-night-day| - Features |tokyonight.nvim-tokyo-night-features| - Requirements |tokyonight.nvim-tokyo-night-requirements| - Installation |tokyonight.nvim-tokyo-night-installation| @@ -16,6 +12,7 @@ Table of Contents *tokyonight.nvim-table-of-contents* - Overriding Colors & Highlight Groups|tokyonight.nvim-tokyo-night-overriding-colors-&-highlight-groups| - Extras |tokyonight.nvim-tokyo-night-extras| - Contributing |tokyonight.nvim-tokyo-night-contributing| +2. Links |tokyonight.nvim-links| ============================================================================== 1. Tokyo Night *tokyonight.nvim-tokyo-night* @@ -28,60 +25,207 @@ A dark and light Neovim theme written in Lua , iTerm and Fish . +MoonStormNightDay +FEATURES *tokyonight.nvim-tokyo-night-features* -STORM *tokyonight.nvim-tokyo-night-storm* +- Supports the latest Neovim + 0.9.0 features. +- Terminal colors. +- Supports all major plugins. +- Provides TokyoNight + |tokyonight.nvim-extras| for numerous other applications. +Supported Plugins ~ -NIGHT *tokyonight.nvim-tokyo-night-night* + ----------------------------------------------------------------------- + Plugin Source + ----------------------------------- ----------------------------------- + aerial.nvim aerial + ale ale -MOON *tokyonight.nvim-tokyo-night-moon* + alpha-nvim alpha + barbar.nvim barbar -DAY *tokyonight.nvim-tokyo-night-day* + bufferline.nvim bufferline + nvim-cmp cmp -FEATURES *tokyonight.nvim-tokyo-night-features* + nvim-dap dap -- Supports the latest Neovim - 0.9.0 features. -- Enhances terminal colors. -- Introduces a darker background option for sidebar-like windows. -- Supports all major plugins. -- Provides TokyoNight - |tokyonight.nvim-extras| for numerous other applications. + dashboard-nvim dashboard + + flash.nvim flash + + fzf-lua fzf + + vim-gitgutter gitgutter + + gitsigns.nvim gitsigns + + glyph-palette.vim glyph-palette + + headlines.nvim headlines + + hop.nvim hop + + vim-illuminate illuminate + + indent-blankline.nvim indent-blankline + + indentmini.nvim indentmini + + lazy.nvim lazy + + leap.nvim leap + + lspsaga.nvim lspsaga + + mini.animate mini_animate + + mini.clue mini_clue + + mini.completion mini_completion + + mini.cursorword mini_cursorword + + mini.deps mini_deps + + mini.diff mini_diff + + mini.files mini_files + + mini.hipatterns mini_hipatterns + + mini.icons mini_icons + + mini.indentscope mini_indentscope + + mini.jump mini_jump + + mini.map mini_map + + mini.notify mini_notify + + mini.operators mini_operators + + mini.pick mini_pick + + mini.starter mini_starter + + mini.statusline mini_statusline + + mini.surround mini_surround + + mini.tabline mini_tabline + + mini.test mini_test + + mini.trailspace mini_trailspace + + nvim-navic navic + + neo-tree.nvim neo-tree + + neogit neogit + + neotest neotest + + noice.nvim noice + + nvim-notify notify + + nvim-tree.lua nvim-tree + + octo.nvim octo + + rainbow-delimiters.nvim rainbow + nvim-scrollbar scrollbar -EXTRAS ~ - -- Alacritty (alacritty ) -- Delta (delta ) -- Dunst (dunst ) -- Fish (fish ) -- Fish Themes (fish_themes ) -- Foot (foot ) -- Fzf (fzf ) -- GitUI (gitui ) -- Helix (helix ) -- iTerm (iterm ) -- Kitty (kitty ) -- Lua Table for testing (lua ) -- Prism (prism ) -- Sublime Text (sublime ) -- Terminator (terminator ) -- Tilix (tilix ) -- Tmux (tmux ) -- WezTerm (wezterm ) -- Windows Terminal (windows_terminal ) -- Xfce Terminal (xfceterm ) -- Xresources (xresources ) -- Zathura (zathura ) + vim-sneak sneak + telescope.nvim telescope + + nvim-treesitter-context treesitter-context + + trouble.nvim trouble + + headlines.nvim vimwiki + + which-key.nvim which-key + + yanky.nvim yanky + ----------------------------------------------------------------------- +Extras ~ + + ----------------------------------------------------------------------- + Tool Extra + ----------------------------------- ----------------------------------- + Alacritty extras/alacritty + + Delta extras/delta + + Dunst extras/dunst + + Fish extras/fish + + Fish Themes extras/fish_themes + + Foot extras/foot + + Fzf extras/fzf + + GitUI extras/gitui + + GNOME Terminal extras/gnome_terminal + + Helix extras/helix + + iTerm extras/iterm + + Kitty extras/kitty + + Lazygit extras/lazygit + + Lua Table for testing extras/lua + + Prism extras/prism + + Slack extras/slack + + Spotify Player extras/spotify_player + + Sublime Text extras/sublime + + Terminator extras/terminator + + Tilix extras/tilix + + Tmux extras/tmux + + Vim extras/vim + + WezTerm extras/wezterm + + Windows Terminal extras/windows_terminal + + Xfce Terminal extras/xfceterm + + Xresources extras/xresources + + Yazi extras/yazi + + Zathura extras/zathura + + Zellij extras/zellij + ----------------------------------------------------------------------- REQUIREMENTS *tokyonight.nvim-tokyo-night-requirements* - Neovim >= - 0.7.2 + 0.8.0 INSTALLATION *tokyonight.nvim-tokyo-night-installation* @@ -101,8 +245,9 @@ Install the theme with your preferred package manager, such as folke/lazy.nvim USAGE *tokyonight.nvim-tokyo-night-usage* - -VIM SCRIPT ~ +>lua + vim.cmd[[colorscheme tokyonight]] +< >vim colorscheme tokyonight @@ -114,18 +259,12 @@ VIM SCRIPT ~ colorscheme tokyonight-moon < +Some plugins need extra configuration to work with **TokyoNight**. -LUA ~ +Click here for more details ~ ->lua - vim.cmd[[colorscheme tokyonight]] -< - -EXTERNAL PLUGINS - - -BARBECUE +BARBECUE ~ >lua -- Lua @@ -137,7 +276,7 @@ BARBECUE < -LUALINE +LUALINE ~ >lua -- Lua @@ -151,7 +290,7 @@ LUALINE < -LIGHTLINE +LIGHTLINE ~ >vim " Vim Script @@ -162,8 +301,8 @@ LIGHTLINE CONFIGURATION *tokyonight.nvim-tokyo-night-configuration* - Set the configuration **BEFORE** loading the color scheme with `colorscheme - tokyonight`. + [!IMPORTANT] Set the configuration **BEFORE** loading the color scheme with + `colorscheme tokyonight`. The theme offers four styles: |tokyonight.nvim-storm|, |tokyonight.nvim-moon|, |tokyonight.nvim-night|, and |tokyonight.nvim-day|. @@ -173,14 +312,17 @@ The |tokyonight.nvim-day| style is used when `{ style = "day" }` is passed to TokyoNight uses the default options, unless `setup` is explicitly called. +Default Options ~ + >lua - require("tokyonight").setup({ - -- your configuration comes here - -- or leave it empty to use the default settings - style = "storm", -- The theme comes in three styles, `storm`, `moon`, a darker variant `night` and `day` + ---@class tokyonight.Config + ---@field on_colors fun(colors: ColorScheme) + ---@field on_highlights fun(highlights: tokyonight.Highlights, colors: ColorScheme) + M.defaults = { + style = "moon", -- The theme comes in three styles, `storm`, a darker variant `night` and `day` light_style = "day", -- The theme is used when the background is set to light transparent = false, -- Enable this to disable setting the background color - terminal_colors = true, -- Configure the colors used when opening a `:terminal` in [Neovim](https://github.com/neovim/neovim) + terminal_colors = true, -- Configure the colors used when opening a `:terminal` in Neovim styles = { -- Style to be applied to different syntax groups -- Value is any valid attr-list value for `:help nvim_set_hl` @@ -192,9 +334,7 @@ unless `setup` is explicitly called. sidebars = "dark", -- style for sidebars, see below floats = "dark", -- style for floating windows }, - sidebars = { "qf", "help" }, -- Set a darker background on sidebar-like windows. For example: `["qf", "vista_kind", "terminal", "packer"]` day_brightness = 0.3, -- Adjusts the brightness of the colors of the **Day** style. Number between 0 and 1, from dull to vibrant colors - hide_inactive_statusline = false, -- Enabling this option, will hide inactive statuslines and replace them with a thin border instead. Should work with the standard **StatusLine** and **LuaLine**. dim_inactive = false, -- dims inactive windows lualine_bold = false, -- When `true`, section headers in the lualine theme will be bold @@ -205,10 +345,26 @@ unless `setup` is explicitly called. --- You can override specific highlights to use other groups or a hex color --- function will be called with a Highlights and ColorScheme table - ---@param highlights Highlights + ---@param highlights tokyonight.Highlights ---@param colors ColorScheme on_highlights = function(highlights, colors) end, - }) + + cache = true, -- When set to true, the theme will be cached for better performance + + ---@type table + plugins = { + -- enable all plugins when not using lazy.nvim + -- set to false to manually enable/disable plugins + all = package.loaded.lazy == nil, + -- uses your plugin manager to automatically enable needed plugins + -- currently only lazy.nvim is supported + auto = true, + -- add any plugins here that you want to enable + -- for all possible plugins, see: + -- * https://github.com/folke/tokyonight.nvim/tree/main/lua/tokyonight/groups + -- telescope = true, + }, + } < @@ -227,8 +383,7 @@ For default values of `colors` and `highlights`, please consult the storm , and day themes. - -SETTINGS AND COLOR ALTERATION DEMONSTRATION ~ +Settings & Changing Colors ~ >lua require("tokyonight").setup({ @@ -238,7 +393,6 @@ SETTINGS AND COLOR ALTERATION DEMONSTRATION ~ styles = { functions = {} }, - sidebars = { "qf", "vista_kind", "terminal", "packer" }, -- Change the "hint" color to the "orange" color, and make the "error" color bright red on_colors = function(colors) colors.hint = colors.orange @@ -247,8 +401,7 @@ SETTINGS AND COLOR ALTERATION DEMONSTRATION ~ }) < - -BORDERLESS TELESCOPE EXAMPLE ~ +Borderless Telescope ~ >lua require("tokyonight").setup({ @@ -285,8 +438,7 @@ BORDERLESS TELESCOPE EXAMPLE ~ }) < - -FIX UNDERCURLS IN TMUX ~ +Fix undercurls in Tmux ~ To have undercurls show up and in color, add the following to your Tmux configuration file: @@ -340,7 +492,7 @@ How to add a new extra template: the tokyonight plugin directory: >sh - nvim --headless "+lua require('tokyonight.extra').setup()" +qa + ./extras/gen < @@ -352,11 +504,7 @@ commit them, as they are already automatically built by the CI. ============================================================================== 2. Links *tokyonight.nvim-links* -1. *image*: https://user-images.githubusercontent.com/292349/115295095-3a9e5080-a10e-11eb-9aed-6054488c46ce.png -2. *image*: https://user-images.githubusercontent.com/292349/115295327-7afdce80-a10e-11eb-89b3-2591262bf95a.png -3. *image*: https://user-images.githubusercontent.com/292349/190951628-10ba28a1-57ff-4479-8eab-47400a402242.png -4. *image*: https://user-images.githubusercontent.com/292349/115996270-78c6c480-a593-11eb-8ed0-7d1400b058f5.png -5. *image*: https://user-images.githubusercontent.com/292349/115395546-d8d6f880-a198-11eb-98fb-a1194787701d.png +1. *image*: https://user-images.githubusercontent.com/292349/115395546-d8d6f880-a198-11eb-98fb-a1194787701d.png Generated by panvimdoc diff --git a/extras/alacritty/tokyonight_day.toml b/extras/alacritty/tokyonight_day.toml index 4a7e1592..3bd7978f 100644 --- a/extras/alacritty/tokyonight_day.toml +++ b/extras/alacritty/tokyonight_day.toml @@ -10,7 +10,7 @@ foreground = '#3760bf' # Normal colors [colors.normal] -black = '#e9e9ed' +black = '#b4b5b9' red = '#f52a65' green = '#587539' yellow = '#8c6c3e' diff --git a/extras/delta/tokyonight_day.gitconfig b/extras/delta/tokyonight_day.gitconfig index 613a02e2..719f1621 100644 --- a/extras/delta/tokyonight_day.gitconfig +++ b/extras/delta/tokyonight_day.gitconfig @@ -1,12 +1,12 @@ [delta] - minus-style = syntax "#dfccd4" - minus-non-emph-style = syntax "#dfccd4" - minus-emph-style = syntax "#d99ea2" - minus-empty-line-marker-style = syntax "#dfccd4" - line-numbers-minus-style = "#c25d64" - plus-style = syntax "#aecde6" - plus-non-emph-style = syntax "#aecde6" - plus-emph-style = syntax "#57a7bc" - plus-empty-line-marker-style = syntax "#aecde6" - line-numbers-plus-style = "#399a96" + minus-style = syntax "#ddcace" + minus-non-emph-style = syntax "#ddcace" + minus-emph-style = syntax "#d59a9d" + minus-empty-line-marker-style = syntax "#ddcace" + line-numbers-minus-style = "#c47981" + plus-style = syntax "#c8d6dc" + plus-non-emph-style = syntax "#c8d6dc" + plus-emph-style = syntax "#95bec7" + plus-empty-line-marker-style = syntax "#c8d6dc" + line-numbers-plus-style = "#4197a4" line-numbers-zero-style = "#a8aecb" diff --git a/extras/delta/tokyonight_moon.gitconfig b/extras/delta/tokyonight_moon.gitconfig index f02b98e1..1357e23c 100644 --- a/extras/delta/tokyonight_moon.gitconfig +++ b/extras/delta/tokyonight_moon.gitconfig @@ -3,10 +3,10 @@ minus-non-emph-style = syntax "#3a273a" minus-emph-style = syntax "#6b2e43" minus-empty-line-marker-style = syntax "#3a273a" - line-numbers-minus-style = "#b55a67" + line-numbers-minus-style = "#e26a75" plus-style = syntax "#273849" plus-non-emph-style = syntax "#273849" plus-emph-style = syntax "#305f6f" plus-empty-line-marker-style = syntax "#273849" - line-numbers-plus-style = "#627259" + line-numbers-plus-style = "#b8db87" line-numbers-zero-style = "#3b4261" diff --git a/extras/delta/tokyonight_night.gitconfig b/extras/delta/tokyonight_night.gitconfig index e7ab506f..468e337c 100644 --- a/extras/delta/tokyonight_night.gitconfig +++ b/extras/delta/tokyonight_night.gitconfig @@ -3,10 +3,10 @@ minus-non-emph-style = syntax "#37222c" minus-emph-style = syntax "#713137" minus-empty-line-marker-style = syntax "#37222c" - line-numbers-minus-style = "#b2555b" + line-numbers-minus-style = "#914c54" plus-style = syntax "#20303b" plus-non-emph-style = syntax "#20303b" plus-emph-style = syntax "#2c5a66" plus-empty-line-marker-style = syntax "#20303b" - line-numbers-plus-style = "#266d6a" + line-numbers-plus-style = "#449dab" line-numbers-zero-style = "#3b4261" diff --git a/extras/delta/tokyonight_storm.gitconfig b/extras/delta/tokyonight_storm.gitconfig index 09be967a..d9c26a10 100644 --- a/extras/delta/tokyonight_storm.gitconfig +++ b/extras/delta/tokyonight_storm.gitconfig @@ -3,10 +3,10 @@ minus-non-emph-style = syntax "#3f2d3d" minus-emph-style = syntax "#763842" minus-empty-line-marker-style = syntax "#3f2d3d" - line-numbers-minus-style = "#b2555b" + line-numbers-minus-style = "#914c54" plus-style = syntax "#283b4d" plus-non-emph-style = syntax "#283b4d" plus-emph-style = syntax "#316172" plus-empty-line-marker-style = syntax "#283b4d" - line-numbers-plus-style = "#266d6a" + line-numbers-plus-style = "#449dab" line-numbers-zero-style = "#3b4261" diff --git a/extras/dunst/tokyonight_day.dunstrc b/extras/dunst/tokyonight_day.dunstrc index 510a2358..dbb4b896 100644 --- a/extras/dunst/tokyonight_day.dunstrc +++ b/extras/dunst/tokyonight_day.dunstrc @@ -1,8 +1,8 @@ # TokyoNight colors for dunst -# For more configuraion options see https://github.com/dunst-project/dunst/blob/master/dunstrc +# For more configuration options see https://github.com/dunst-project/dunst/blob/master/dunstrc [urgency_low] - background = "#e9e9ec" + background = "#d0d5e3" foreground = "#3760bf" frame_color = "#3760bf" diff --git a/extras/dunst/tokyonight_moon.dunstrc b/extras/dunst/tokyonight_moon.dunstrc index 299f1880..b178da82 100644 --- a/extras/dunst/tokyonight_moon.dunstrc +++ b/extras/dunst/tokyonight_moon.dunstrc @@ -1,5 +1,5 @@ # TokyoNight colors for dunst -# For more configuraion options see https://github.com/dunst-project/dunst/blob/master/dunstrc +# For more configuration options see https://github.com/dunst-project/dunst/blob/master/dunstrc [urgency_low] background = "#1e2030" diff --git a/extras/dunst/tokyonight_night.dunstrc b/extras/dunst/tokyonight_night.dunstrc index 22b574b5..ec5e6068 100644 --- a/extras/dunst/tokyonight_night.dunstrc +++ b/extras/dunst/tokyonight_night.dunstrc @@ -1,5 +1,5 @@ # TokyoNight colors for dunst -# For more configuraion options see https://github.com/dunst-project/dunst/blob/master/dunstrc +# For more configuration options see https://github.com/dunst-project/dunst/blob/master/dunstrc [urgency_low] background = "#16161e" diff --git a/extras/dunst/tokyonight_storm.dunstrc b/extras/dunst/tokyonight_storm.dunstrc index d17676dc..fd764ba7 100644 --- a/extras/dunst/tokyonight_storm.dunstrc +++ b/extras/dunst/tokyonight_storm.dunstrc @@ -1,5 +1,5 @@ # TokyoNight colors for dunst -# For more configuraion options see https://github.com/dunst-project/dunst/blob/master/dunstrc +# For more configuration options see https://github.com/dunst-project/dunst/blob/master/dunstrc [urgency_low] background = "#1f2335" diff --git a/extras/fish/tokyonight_day.fish b/extras/fish/tokyonight_day.fish index d41de0f0..7005aaa4 100644 --- a/extras/fish/tokyonight_day.fish +++ b/extras/fish/tokyonight_day.fish @@ -1,6 +1,6 @@ # TokyoNight Color Palette set -l foreground 3760bf - set -l selection b6bfe2 + set -l selection b7c1e3 set -l comment 848cb5 set -l red f52a65 set -l orange b15c00 diff --git a/extras/fish_themes/tokyonight_day.theme b/extras/fish_themes/tokyonight_day.theme index 95c7916e..0fcc86cd 100644 --- a/extras/fish_themes/tokyonight_day.theme +++ b/extras/fish_themes/tokyonight_day.theme @@ -10,8 +10,8 @@ fish_color_error f52a65 fish_color_param 7847bd fish_color_comment 848cb5 - fish_color_selection --background=b6bfe2 - fish_color_search_match --background=b6bfe2 + fish_color_selection --background=b7c1e3 + fish_color_search_match --background=b7c1e3 fish_color_operator 587539 fish_color_escape 9854f1 fish_color_autosuggestion 848cb5 @@ -21,5 +21,5 @@ fish_pager_color_prefix 007197 fish_pager_color_completion 3760bf fish_pager_color_description 848cb5 - fish_pager_color_selected_background --background=b6bfe2 + fish_pager_color_selected_background --background=b7c1e3 \ No newline at end of file diff --git a/extras/foot/tokyonight_day.ini b/extras/foot/tokyonight_day.ini index de757577..81d0178e 100644 --- a/extras/foot/tokyonight_day.ini +++ b/extras/foot/tokyonight_day.ini @@ -1,14 +1,14 @@ [cursor] -color=3760bf b6bfe2 +color=3760bf b7c1e3 [colors] foreground=3760bf background=e1e2e7 selection-foreground=3760bf -selection-background=b6bfe2 +selection-background=b7c1e3 urls=387068 -regular0=e9e9ed +regular0=b4b5b9 regular1=f52a65 regular2=587539 regular3=8c6c3e diff --git a/extras/fzf/tokyonight_day.sh b/extras/fzf/tokyonight_day.sh new file mode 100644 index 00000000..a7002ecb --- /dev/null +++ b/extras/fzf/tokyonight_day.sh @@ -0,0 +1,23 @@ +export FZF_DEFAULT_OPTS="$FZF_DEFAULT_OPTS \ + --highlight-line \ + --info=inline-right \ + --ansi \ + --layout=reverse \ + --border=none + --color=bg+:#b7c1e3 \ + --color=bg:#d0d5e3 \ + --color=border:#4094a3 \ + --color=fg:#3760bf \ + --color=gutter:#d0d5e3 \ + --color=header:#b15c00 \ + --color=hl+:#188092 \ + --color=hl:#188092 \ + --color=info:#8990b3 \ + --color=marker:#d20065 \ + --color=pointer:#d20065 \ + --color=prompt:#188092 \ + --color=query:#3760bf:regular \ + --color=scrollbar:#4094a3 \ + --color=separator:#b15c00 \ + --color=spinner:#d20065 \ +" diff --git a/extras/fzf/tokyonight_day.zsh b/extras/fzf/tokyonight_day.zsh deleted file mode 100644 index 5fb7a029..00000000 --- a/extras/fzf/tokyonight_day.zsh +++ /dev/null @@ -1,5 +0,0 @@ -export FZF_DEFAULT_OPTS="$FZF_DEFAULT_OPTS \ ---color=fg:#3760bf,bg:#e1e2e7,hl:#b15c00 \ ---color=fg+:#3760bf,bg+:#c4c8da,hl+:#b15c00 \ ---color=info:#2e7de9,prompt:#007197,pointer:#007197 \ ---color=marker:#587539,spinner:#587539,header:#587539" diff --git a/extras/fzf/tokyonight_moon.sh b/extras/fzf/tokyonight_moon.sh new file mode 100644 index 00000000..cade5313 --- /dev/null +++ b/extras/fzf/tokyonight_moon.sh @@ -0,0 +1,23 @@ +export FZF_DEFAULT_OPTS="$FZF_DEFAULT_OPTS \ + --highlight-line \ + --info=inline-right \ + --ansi \ + --layout=reverse \ + --border=none + --color=bg+:#2d3f76 \ + --color=bg:#1e2030 \ + --color=border:#589ed7 \ + --color=fg:#c8d3f5 \ + --color=gutter:#1e2030 \ + --color=header:#ff966c \ + --color=hl+:#65bcff \ + --color=hl:#65bcff \ + --color=info:#545c7e \ + --color=marker:#ff007c \ + --color=pointer:#ff007c \ + --color=prompt:#65bcff \ + --color=query:#c8d3f5:regular \ + --color=scrollbar:#589ed7 \ + --color=separator:#ff966c \ + --color=spinner:#ff007c \ +" diff --git a/extras/fzf/tokyonight_moon.zsh b/extras/fzf/tokyonight_moon.zsh deleted file mode 100644 index 1d5f464b..00000000 --- a/extras/fzf/tokyonight_moon.zsh +++ /dev/null @@ -1,5 +0,0 @@ -export FZF_DEFAULT_OPTS="$FZF_DEFAULT_OPTS \ ---color=fg:#c8d3f5,bg:#222436,hl:#ff966c \ ---color=fg+:#c8d3f5,bg+:#2f334d,hl+:#ff966c \ ---color=info:#82aaff,prompt:#86e1fc,pointer:#86e1fc \ ---color=marker:#c3e88d,spinner:#c3e88d,header:#c3e88d" diff --git a/extras/fzf/tokyonight_night.sh b/extras/fzf/tokyonight_night.sh new file mode 100644 index 00000000..8b361c90 --- /dev/null +++ b/extras/fzf/tokyonight_night.sh @@ -0,0 +1,23 @@ +export FZF_DEFAULT_OPTS="$FZF_DEFAULT_OPTS \ + --highlight-line \ + --info=inline-right \ + --ansi \ + --layout=reverse \ + --border=none + --color=bg+:#283457 \ + --color=bg:#16161e \ + --color=border:#27a1b9 \ + --color=fg:#c0caf5 \ + --color=gutter:#16161e \ + --color=header:#ff9e64 \ + --color=hl+:#2ac3de \ + --color=hl:#2ac3de \ + --color=info:#545c7e \ + --color=marker:#ff007c \ + --color=pointer:#ff007c \ + --color=prompt:#2ac3de \ + --color=query:#c0caf5:regular \ + --color=scrollbar:#27a1b9 \ + --color=separator:#ff9e64 \ + --color=spinner:#ff007c \ +" diff --git a/extras/fzf/tokyonight_night.zsh b/extras/fzf/tokyonight_night.zsh deleted file mode 100644 index e92f3bb3..00000000 --- a/extras/fzf/tokyonight_night.zsh +++ /dev/null @@ -1,5 +0,0 @@ -export FZF_DEFAULT_OPTS="$FZF_DEFAULT_OPTS \ ---color=fg:#c0caf5,bg:#1a1b26,hl:#ff9e64 \ ---color=fg+:#c0caf5,bg+:#292e42,hl+:#ff9e64 \ ---color=info:#7aa2f7,prompt:#7dcfff,pointer:#7dcfff \ ---color=marker:#9ece6a,spinner:#9ece6a,header:#9ece6a" diff --git a/extras/fzf/tokyonight_storm.sh b/extras/fzf/tokyonight_storm.sh new file mode 100644 index 00000000..78ccf425 --- /dev/null +++ b/extras/fzf/tokyonight_storm.sh @@ -0,0 +1,23 @@ +export FZF_DEFAULT_OPTS="$FZF_DEFAULT_OPTS \ + --highlight-line \ + --info=inline-right \ + --ansi \ + --layout=reverse \ + --border=none + --color=bg+:#2e3c64 \ + --color=bg:#1f2335 \ + --color=border:#29a4bd \ + --color=fg:#c0caf5 \ + --color=gutter:#1f2335 \ + --color=header:#ff9e64 \ + --color=hl+:#2ac3de \ + --color=hl:#2ac3de \ + --color=info:#545c7e \ + --color=marker:#ff007c \ + --color=pointer:#ff007c \ + --color=prompt:#2ac3de \ + --color=query:#c0caf5:regular \ + --color=scrollbar:#29a4bd \ + --color=separator:#ff9e64 \ + --color=spinner:#ff007c \ +" diff --git a/extras/fzf/tokyonight_storm.zsh b/extras/fzf/tokyonight_storm.zsh deleted file mode 100644 index ed673f45..00000000 --- a/extras/fzf/tokyonight_storm.zsh +++ /dev/null @@ -1,5 +0,0 @@ -export FZF_DEFAULT_OPTS="$FZF_DEFAULT_OPTS \ ---color=fg:#c0caf5,bg:#24283b,hl:#ff9e64 \ ---color=fg+:#c0caf5,bg+:#292e42,hl+:#ff9e64 \ ---color=info:#7aa2f7,prompt:#7dcfff,pointer:#7dcfff \ ---color=marker:#9ece6a,spinner:#9ece6a,header:#9ece6a" diff --git a/extras/gen b/extras/gen new file mode 100755 index 00000000..c964d918 --- /dev/null +++ b/extras/gen @@ -0,0 +1,3 @@ +#!/bin/env bash + +nvim -u NONE -E -R --headless --cmd "set rtp^=." --cmd "packloadall" --cmd "lua require('tokyonight.extra').setup()" --cmd qa diff --git a/extras/gitui/tokyonight_day.ron b/extras/gitui/tokyonight_day.ron index dc896caa..489e1a51 100644 --- a/extras/gitui/tokyonight_day.ron +++ b/extras/gitui/tokyonight_day.ron @@ -1,23 +1,23 @@ ( - selected_tab: Rgb(152,84,241), // magenta #9854f1 - command_fg: Rgb(132,140,181), // comment #848cb5 - selection_bg: Rgb(196,200,218), // bg_highlight #c4c8da - selection_fg: Rgb(0,113,151), // cyan #007197 - cmdbar_bg: Rgb(225,226,231), // bg #e1e2e7 - cmdbar_extra_lines_bg: Rgb(225,226,231), // bg #e1e2e7 - disabled_fg: Rgb(132,140,181), // comment #848cb5 - diff_line_add: Rgb(88,117,57), // green #587539 - diff_line_delete: Rgb(245,42,101), // red #f52a65 - diff_file_added: Rgb(56,112,104), // green1 #387068 - diff_file_removed: Rgb(198,67,67), // red1 #c64343 - diff_file_moved: Rgb(210,0,101), // magenta2 #d20065 - diff_file_modified: Rgb(140,108,62), // yellow #8c6c3e - commit_hash: Rgb(152,84,241), // magenta #9854f1 - commit_time: Rgb(17,140,116), // teal #118c74 - commit_author: Rgb(88,117,57), // green #587539 - danger_fg: Rgb(245,42,101), // red #f52a65 - push_gauge_bg: Rgb(225,226,231), // bg #e1e2e7 - push_gauge_fg: Rgb(55,96,191), // fg #3760bf - tag_fg: Rgb(210,0,101), // magenta2 #d20065 - branch_fg: Rgb(140,108,62), // yellow #8c6c3e + selected_tab: Some("#9854f1"), + command_fg: Some("#848cb5"), + selection_bg: Some("#c4c8da"), + selection_fg: Some("#007197"), + cmdbar_bg: Some("#e1e2e7"), + cmdbar_extra_lines_bg: Some("#e1e2e7"), + disabled_fg: Some("#848cb5"), + diff_line_add: Some("#587539"), + diff_line_delete: Some("#f52a65"), + diff_file_added: Some("#387068"), + diff_file_removed: Some("#c64343"), + diff_file_moved: Some("#d20065"), + diff_file_modified: Some("#8c6c3e"), + commit_hash: Some("#9854f1"), + commit_time: Some("#118c74"), + commit_author: Some("#587539"), + danger_fg: Some("#f52a65"), + push_gauge_bg: Some("#e1e2e7"), + push_gauge_fg: Some("#3760bf"), + tag_fg: Some("#d20065"), + branch_fg: Some("#8c6c3e") ) diff --git a/extras/gitui/tokyonight_moon.ron b/extras/gitui/tokyonight_moon.ron index 50ccd4db..4e324aa8 100644 --- a/extras/gitui/tokyonight_moon.ron +++ b/extras/gitui/tokyonight_moon.ron @@ -1,23 +1,23 @@ ( - selected_tab: Rgb(192,153,255), // magenta #c099ff - command_fg: Rgb(99,109,166), // comment #636da6 - selection_bg: Rgb(47,51,77), // bg_highlight #2f334d - selection_fg: Rgb(134,225,252), // cyan #86e1fc - cmdbar_bg: Rgb(34,36,54), // bg #222436 - cmdbar_extra_lines_bg: Rgb(34,36,54), // bg #222436 - disabled_fg: Rgb(99,109,166), // comment #636da6 - diff_line_add: Rgb(195,232,141), // green #c3e88d - diff_line_delete: Rgb(255,117,127), // red #ff757f - diff_file_added: Rgb(79,214,190), // green1 #4fd6be - diff_file_removed: Rgb(197,59,83), // red1 #c53b53 - diff_file_moved: Rgb(255,0,124), // magenta2 #ff007c - diff_file_modified: Rgb(255,199,119), // yellow #ffc777 - commit_hash: Rgb(192,153,255), // magenta #c099ff - commit_time: Rgb(79,214,190), // teal #4fd6be - commit_author: Rgb(195,232,141), // green #c3e88d - danger_fg: Rgb(255,117,127), // red #ff757f - push_gauge_bg: Rgb(34,36,54), // bg #222436 - push_gauge_fg: Rgb(200,211,245), // fg #c8d3f5 - tag_fg: Rgb(255,0,124), // magenta2 #ff007c - branch_fg: Rgb(255,199,119), // yellow #ffc777 + selected_tab: Some("#c099ff"), + command_fg: Some("#636da6"), + selection_bg: Some("#2f334d"), + selection_fg: Some("#86e1fc"), + cmdbar_bg: Some("#222436"), + cmdbar_extra_lines_bg: Some("#222436"), + disabled_fg: Some("#636da6"), + diff_line_add: Some("#c3e88d"), + diff_line_delete: Some("#ff757f"), + diff_file_added: Some("#4fd6be"), + diff_file_removed: Some("#c53b53"), + diff_file_moved: Some("#ff007c"), + diff_file_modified: Some("#ffc777"), + commit_hash: Some("#c099ff"), + commit_time: Some("#4fd6be"), + commit_author: Some("#c3e88d"), + danger_fg: Some("#ff757f"), + push_gauge_bg: Some("#222436"), + push_gauge_fg: Some("#c8d3f5"), + tag_fg: Some("#ff007c"), + branch_fg: Some("#ffc777") ) diff --git a/extras/gitui/tokyonight_night.ron b/extras/gitui/tokyonight_night.ron index c49ec8b8..73d446a5 100644 --- a/extras/gitui/tokyonight_night.ron +++ b/extras/gitui/tokyonight_night.ron @@ -1,23 +1,23 @@ ( - selected_tab: Rgb(187,154,247), // magenta #bb9af7 - command_fg: Rgb(86,95,137), // comment #565f89 - selection_bg: Rgb(41,46,66), // bg_highlight #292e42 - selection_fg: Rgb(125,207,255), // cyan #7dcfff - cmdbar_bg: Rgb(26,27,38), // bg #1a1b26 - cmdbar_extra_lines_bg: Rgb(26,27,38), // bg #1a1b26 - disabled_fg: Rgb(86,95,137), // comment #565f89 - diff_line_add: Rgb(158,206,106), // green #9ece6a - diff_line_delete: Rgb(247,118,142), // red #f7768e - diff_file_added: Rgb(115,218,202), // green1 #73daca - diff_file_removed: Rgb(219,75,75), // red1 #db4b4b - diff_file_moved: Rgb(255,0,124), // magenta2 #ff007c - diff_file_modified: Rgb(224,175,104), // yellow #e0af68 - commit_hash: Rgb(187,154,247), // magenta #bb9af7 - commit_time: Rgb(26,188,156), // teal #1abc9c - commit_author: Rgb(158,206,106), // green #9ece6a - danger_fg: Rgb(247,118,142), // red #f7768e - push_gauge_bg: Rgb(26,27,38), // bg #1a1b26 - push_gauge_fg: Rgb(192,202,245), // fg #c0caf5 - tag_fg: Rgb(255,0,124), // magenta2 #ff007c - branch_fg: Rgb(224,175,104), // yellow #e0af68 + selected_tab: Some("#bb9af7"), + command_fg: Some("#565f89"), + selection_bg: Some("#292e42"), + selection_fg: Some("#7dcfff"), + cmdbar_bg: Some("#1a1b26"), + cmdbar_extra_lines_bg: Some("#1a1b26"), + disabled_fg: Some("#565f89"), + diff_line_add: Some("#9ece6a"), + diff_line_delete: Some("#f7768e"), + diff_file_added: Some("#73daca"), + diff_file_removed: Some("#db4b4b"), + diff_file_moved: Some("#ff007c"), + diff_file_modified: Some("#e0af68"), + commit_hash: Some("#bb9af7"), + commit_time: Some("#1abc9c"), + commit_author: Some("#9ece6a"), + danger_fg: Some("#f7768e"), + push_gauge_bg: Some("#1a1b26"), + push_gauge_fg: Some("#c0caf5"), + tag_fg: Some("#ff007c"), + branch_fg: Some("#e0af68") ) diff --git a/extras/gitui/tokyonight_storm.ron b/extras/gitui/tokyonight_storm.ron index 2b2d37c3..9baef8bf 100644 --- a/extras/gitui/tokyonight_storm.ron +++ b/extras/gitui/tokyonight_storm.ron @@ -1,23 +1,23 @@ ( - selected_tab: Rgb(187,154,247), // magenta #bb9af7 - command_fg: Rgb(86,95,137), // comment #565f89 - selection_bg: Rgb(41,46,66), // bg_highlight #292e42 - selection_fg: Rgb(125,207,255), // cyan #7dcfff - cmdbar_bg: Rgb(36,40,59), // bg #24283b - cmdbar_extra_lines_bg: Rgb(36,40,59), // bg #24283b - disabled_fg: Rgb(86,95,137), // comment #565f89 - diff_line_add: Rgb(158,206,106), // green #9ece6a - diff_line_delete: Rgb(247,118,142), // red #f7768e - diff_file_added: Rgb(115,218,202), // green1 #73daca - diff_file_removed: Rgb(219,75,75), // red1 #db4b4b - diff_file_moved: Rgb(255,0,124), // magenta2 #ff007c - diff_file_modified: Rgb(224,175,104), // yellow #e0af68 - commit_hash: Rgb(187,154,247), // magenta #bb9af7 - commit_time: Rgb(26,188,156), // teal #1abc9c - commit_author: Rgb(158,206,106), // green #9ece6a - danger_fg: Rgb(247,118,142), // red #f7768e - push_gauge_bg: Rgb(36,40,59), // bg #24283b - push_gauge_fg: Rgb(192,202,245), // fg #c0caf5 - tag_fg: Rgb(255,0,124), // magenta2 #ff007c - branch_fg: Rgb(224,175,104), // yellow #e0af68 + selected_tab: Some("#bb9af7"), + command_fg: Some("#565f89"), + selection_bg: Some("#292e42"), + selection_fg: Some("#7dcfff"), + cmdbar_bg: Some("#24283b"), + cmdbar_extra_lines_bg: Some("#24283b"), + disabled_fg: Some("#565f89"), + diff_line_add: Some("#9ece6a"), + diff_line_delete: Some("#f7768e"), + diff_file_added: Some("#73daca"), + diff_file_removed: Some("#db4b4b"), + diff_file_moved: Some("#ff007c"), + diff_file_modified: Some("#e0af68"), + commit_hash: Some("#bb9af7"), + commit_time: Some("#1abc9c"), + commit_author: Some("#9ece6a"), + danger_fg: Some("#f7768e"), + push_gauge_bg: Some("#24283b"), + push_gauge_fg: Some("#c0caf5"), + tag_fg: Some("#ff007c"), + branch_fg: Some("#e0af68") ) diff --git a/extras/gnome_terminal/tokyonight_day.dconf b/extras/gnome_terminal/tokyonight_day.dconf new file mode 100644 index 00000000..ac5c9189 --- /dev/null +++ b/extras/gnome_terminal/tokyonight_day.dconf @@ -0,0 +1,18 @@ +# Import this theme as follows: +# 1. Create a new profile for GNOME Terminal +# 2. Copy the UUID of the new profile (bottom right corner of the preferences window) +# 3. Replace below with the copied UUID +# 4. Execute `dconf load /org/gnome/terminal/legacy/profiles:/ < tokyonight_day.dconf` + +[:] +background-color='rgb(225, 226, 231)' +cursor-background-color='rgb(55, 96, 191)' +cursor-colors-set=true +cursor-foreground-color='rgb(225, 226, 231)' +foreground-color='rgb(55, 96, 191)' +highlight-background-color='rgb(55, 96, 191)' +highlight-colors-set=true +highlight-foreground-color='rgb(225, 226, 231)' +palette=['rgb(161, 166, 197)', 'rgb(245, 42, 101)', 'rgb(88, 117, 57)', 'rgb(140, 108, 62)', 'rgb(46, 125, 233)', 'rgb(152, 84, 241)', 'rgb(0, 113, 151)', 'rgb(55, 96, 191)', 'rgb(161, 166, 197)', 'rgb(245, 42, 101)', 'rgb(88, 117, 57)', 'rgb(140, 108, 62)', 'rgb(46, 125, 233)', 'rgb(152, 84, 241)', 'rgb(0, 113, 151)', 'rgb(55, 96, 191)'] +use-theme-colors=false +visible-name='Tokyo Night Day' diff --git a/extras/gnome_terminal/tokyonight_moon.dconf b/extras/gnome_terminal/tokyonight_moon.dconf new file mode 100644 index 00000000..cf5ade33 --- /dev/null +++ b/extras/gnome_terminal/tokyonight_moon.dconf @@ -0,0 +1,18 @@ +# Import this theme as follows: +# 1. Create a new profile for GNOME Terminal +# 2. Copy the UUID of the new profile (bottom right corner of the preferences window) +# 3. Replace below with the copied UUID +# 4. Execute `dconf load /org/gnome/terminal/legacy/profiles:/ < tokyonight_moon.dconf` + +[:] +background-color='rgb(34, 36, 54)' +cursor-background-color='rgb(200, 211, 245)' +cursor-colors-set=true +cursor-foreground-color='rgb(34, 36, 54)' +foreground-color='rgb(200, 211, 245)' +highlight-background-color='rgb(200, 211, 245)' +highlight-colors-set=true +highlight-foreground-color='rgb(34, 36, 54)' +palette=['rgb(68, 74, 115)', 'rgb(255, 117, 127)', 'rgb(195, 232, 141)', 'rgb(255, 199, 119)', 'rgb(130, 170, 255)', 'rgb(192, 153, 255)', 'rgb(134, 225, 252)', 'rgb(200, 211, 245)', 'rgb(68, 74, 115)', 'rgb(255, 117, 127)', 'rgb(195, 232, 141)', 'rgb(255, 199, 119)', 'rgb(130, 170, 255)', 'rgb(192, 153, 255)', 'rgb(134, 225, 252)', 'rgb(200, 211, 245)'] +use-theme-colors=false +visible-name='Tokyo Night Moon' diff --git a/extras/gnome_terminal/tokyonight_night.dconf b/extras/gnome_terminal/tokyonight_night.dconf new file mode 100644 index 00000000..dc6ffb48 --- /dev/null +++ b/extras/gnome_terminal/tokyonight_night.dconf @@ -0,0 +1,18 @@ +# Import this theme as follows: +# 1. Create a new profile for GNOME Terminal +# 2. Copy the UUID of the new profile (bottom right corner of the preferences window) +# 3. Replace below with the copied UUID +# 4. Execute `dconf load /org/gnome/terminal/legacy/profiles:/ < tokyonight_night.dconf` + +[:] +background-color='rgb(26, 27, 38)' +cursor-background-color='rgb(192, 202, 245)' +cursor-colors-set=true +cursor-foreground-color='rgb(26, 27, 38)' +foreground-color='rgb(192, 202, 245)' +highlight-background-color='rgb(192, 202, 245)' +highlight-colors-set=true +highlight-foreground-color='rgb(26, 27, 38)' +palette=['rgb(65, 72, 104)', 'rgb(247, 118, 142)', 'rgb(158, 206, 106)', 'rgb(224, 175, 104)', 'rgb(122, 162, 247)', 'rgb(187, 154, 247)', 'rgb(125, 207, 255)', 'rgb(192, 202, 245)', 'rgb(65, 72, 104)', 'rgb(247, 118, 142)', 'rgb(158, 206, 106)', 'rgb(224, 175, 104)', 'rgb(122, 162, 247)', 'rgb(187, 154, 247)', 'rgb(125, 207, 255)', 'rgb(192, 202, 245)'] +use-theme-colors=false +visible-name='Tokyo Night' diff --git a/extras/gnome_terminal/tokyonight_storm.dconf b/extras/gnome_terminal/tokyonight_storm.dconf new file mode 100644 index 00000000..78ff10bf --- /dev/null +++ b/extras/gnome_terminal/tokyonight_storm.dconf @@ -0,0 +1,18 @@ +# Import this theme as follows: +# 1. Create a new profile for GNOME Terminal +# 2. Copy the UUID of the new profile (bottom right corner of the preferences window) +# 3. Replace below with the copied UUID +# 4. Execute `dconf load /org/gnome/terminal/legacy/profiles:/ < tokyonight_storm.dconf` + +[:] +background-color='rgb(36, 40, 59)' +cursor-background-color='rgb(192, 202, 245)' +cursor-colors-set=true +cursor-foreground-color='rgb(36, 40, 59)' +foreground-color='rgb(192, 202, 245)' +highlight-background-color='rgb(192, 202, 245)' +highlight-colors-set=true +highlight-foreground-color='rgb(36, 40, 59)' +palette=['rgb(65, 72, 104)', 'rgb(247, 118, 142)', 'rgb(158, 206, 106)', 'rgb(224, 175, 104)', 'rgb(122, 162, 247)', 'rgb(187, 154, 247)', 'rgb(125, 207, 255)', 'rgb(192, 202, 245)', 'rgb(65, 72, 104)', 'rgb(247, 118, 142)', 'rgb(158, 206, 106)', 'rgb(224, 175, 104)', 'rgb(122, 162, 247)', 'rgb(187, 154, 247)', 'rgb(125, 207, 255)', 'rgb(192, 202, 245)'] +use-theme-colors=false +visible-name='Tokyo Night Storm' diff --git a/extras/helix/tokyonight_day.toml b/extras/helix/tokyonight_day.toml index 42ff220c..a07f7a92 100644 --- a/extras/helix/tokyonight_day.toml +++ b/extras/helix/tokyonight_day.toml @@ -22,7 +22,7 @@ error = { fg = "#c64343" } function = { fg = "#2e7de9" } "function.builtin" = { fg = "#188092" } "function.macro" = { fg = "#007197" } -"function.method" = +"function.method" = { fg = "#2e7de9" } "function.special" = { fg = "#007197" } hint = { fg = "#118c74" } info = { fg = "#07879d" } @@ -36,23 +36,22 @@ keyword = { fg = "#7847bd", modifiers = ["italic"] } "keyword.function" = { fg = "#9854f1" } "keyword.operator" = { fg = "#9854f1" } label = { fg = "#2e7de9" } -"markup.bold" = { modifiers = ["bold"] } -"markup.heading" = -"markup.heading.completion" = { bg = "#e9e9ec", fg = "#3760bf" } +"markup.bold" = { fg = "#3760bf", modifiers = ["bold"] } +"markup.heading" = { fg = "#2e7de9", modifiers = ["bold"] } +"markup.heading.completion" = { bg = "#d0d5e3", fg = "#3760bf" } "markup.heading.hover" = { bg = "#b3b8d1" } -"markup.italic" = { modifiers = ["italic"] } -"markup.link" = { fg = "#2e7de9", underline = { style = "line" } } -"markup.link.label" = { fg = "#118c74" } +"markup.italic" = { fg = "#3760bf", modifiers = ["italic"] } +"markup.link" = { fg = "#118c74" } +"markup.link.label" = { fg = "#188092" } "markup.link.text" = { fg = "#118c74" } "markup.link.url" = { underline = { style = "line" } } -"markup.list" = { fg = "#b15c00", modifiers = ["bold"] } +"markup.list" = { fg = "#006a83" } "markup.normal.completion" = { fg = "#848cb5" } "markup.normal.hover" = { fg = "#6172b0" } -"markup.raw" = { fg = "#118c74" } -"markup.raw.block" = { fg = "#118c74" } +"markup.raw" = { fg = "#587539" } "markup.raw.inline" = { bg = "#a1a6c5", fg = "#2e7de9" } "markup.strikethrough" = { modifiers = ["crossed_out"] } -namespace = +namespace = { fg = "#007197" } operator = { fg = "#006a83" } special = { fg = "#188092" } string = { fg = "#587539" } @@ -60,28 +59,28 @@ string = { fg = "#587539" } "string.special" = { fg = "#188092" } tag = { fg = "#9854f1" } type = { fg = "#188092" } -"type.builtin" = { fg = "#2496ac" } +"type.builtin" = { fg = "#4094a3" } "type.enum" = { fg = "#188092" } "type.enum.variant" = { fg = "#b15c00" } "ui.background" = { bg = "bg" } "ui.cursor" = { bg = "#3760bf", fg = "#e1e2e7" } "ui.cursor.match" = { fg = "#b15c00", modifiers = ["bold"] } "ui.linenr" = { fg = "#a8aecb" } -"ui.linenr.select" = { fg = "#68709a" } -"ui.menu" = { bg = "#e9e9ec", fg = "#3760bf" } -"ui.menu.scroll" = { bg = 14211292, fg = 11054795 } +"ui.linenr.select" = { fg = "#b15c00", modifiers = ["bold"] } +"ui.menu" = { bg = "#d0d5e3", fg = "#3760bf" } +"ui.menu.scroll" = { bg = 13160417, fg = 11054795 } "ui.menu.selected" = { bg = "#b3b8d1" } -"ui.popup" = { bg = "#e9e9ec", fg = "#2496ac" } +"ui.popup" = { bg = "#d0d5e3", fg = "#4094a3" } "ui.selection" = { bg = "bg_highlight" } -"ui.statusline" = { bg = "#e9e9ec", fg = "#6172b0" } -"ui.statusline.inactive" = { bg = "#e9e9ec", fg = "#a8aecb" } +"ui.statusline" = { bg = "#d0d5e3", fg = "#6172b0" } +"ui.statusline.inactive" = { bg = "#d0d5e3", fg = "#a8aecb" } "ui.statusline.normal" = { bg = "blue", fg = "black" } "ui.text" = { bg = "#e1e2e7", fg = "#3760bf" } -"ui.text.focus" = { bg = "#b6bfe2" } +"ui.text.focus" = { bg = "#b7c1e3" } "ui.text.inactive" = { fg = "#848cb5", modifiers = ["italic"] } -"ui.text.info" = { bg = "#e9e9ec", fg = "#3760bf" } -"ui.virtual.inlay-hint" = { bg = "#acd7eb", fg = "#118c74" } -"ui.window" = { fg = "#e9e9ed", modifiers = ["bold"] } +"ui.text.info" = { bg = "#d0d5e3", fg = "#3760bf" } +"ui.virtual.inlay-hint" = { bg = "#ccd9dc", fg = "#118c74" } +"ui.window" = { fg = "#b4b5b9", modifiers = ["bold"] } variable = { fg = "#3760bf" } "variable.builtin" = { fg = "#f52a65" } "variable.other.member" = { fg = "#387068" } @@ -90,15 +89,15 @@ warning = { fg = "#8c6c3e" } [palette] bg = "#e1e2e7" -bg_dark = "#e9e9ec" -bg_float = "#e9e9ec" +bg_dark = "#d0d5e3" +bg_float = "#d0d5e3" bg_highlight = "#c4c8da" -bg_popup = "#e9e9ec" +bg_popup = "#d0d5e3" bg_search = "#7890dd" -bg_sidebar = "#e9e9ec" -bg_statusline = "#e9e9ec" -bg_visual = "#b6bfe2" -black = "#e9e9ed" +bg_sidebar = "#d0d5e3" +bg_statusline = "#d0d5e3" +bg_visual = "#b7c1e3" +black = "#b4b5b9" blue = "#2e7de9" blue0 = "#7890dd" blue1 = "#188092" @@ -106,17 +105,15 @@ blue2 = "#07879d" blue5 = "#006a83" blue6 = "#2e5857" blue7 = "#92a6d5" -border = "#e9e9ed" -border_highlight = "#2496ac" +border = "#b4b5b9" +border_highlight = "#4094a3" comment = "#848cb5" cyan = "#007197" dark3 = "#8990b3" dark5 = "#68709a" -"delta.add" = "#57a7bc" -"delta.delete" = "#d99ea2" -"diff.add" = "#aecde6" -"diff.change" = "#d6d8e3" -"diff.delete" = "#dfccd4" +"diff.add" = "#c8d6dc" +"diff.change" = "#d5d9e4" +"diff.delete" = "#ddcace" "diff.text" = "#92a6d5" error = "#c64343" fg = "#3760bf" @@ -128,9 +125,6 @@ fg_sidebar = "#6172b0" "git.change" = "#506d9c" "git.delete" = "#c47981" "git.ignore" = "#8990b3" -"gitSigns.add" = "#399a96" -"gitSigns.change" = "#6482bd" -"gitSigns.delete" = "#c25d64" green = "#587539" green1 = "#387068" green2 = "#38919f" @@ -140,6 +134,12 @@ magenta = "#9854f1" magenta2 = "#d20065" orange = "#b15c00" purple = "#7847bd" +rainbow = "#2e7de9" +"rainbow.2" = "#8c6c3e" +"rainbow.3" = "#587539" +"rainbow.4" = "#118c74" +"rainbow.5" = "#9854f1" +"rainbow.6" = "#7847bd" red = "#f52a65" red1 = "#c64343" teal = "#118c74" diff --git a/extras/helix/tokyonight_moon.toml b/extras/helix/tokyonight_moon.toml index c7164599..8ef84a95 100644 --- a/extras/helix/tokyonight_moon.toml +++ b/extras/helix/tokyonight_moon.toml @@ -22,7 +22,7 @@ error = { fg = "#c53b53" } function = { fg = "#82aaff" } "function.builtin" = { fg = "#65bcff" } "function.macro" = { fg = "#86e1fc" } -"function.method" = +"function.method" = { fg = "#82aaff" } "function.special" = { fg = "#86e1fc" } hint = { fg = "#4fd6be" } info = { fg = "#0db9d7" } @@ -36,23 +36,22 @@ keyword = { fg = "#fca7ea", modifiers = ["italic"] } "keyword.function" = { fg = "#c099ff" } "keyword.operator" = { fg = "#c099ff" } label = { fg = "#82aaff" } -"markup.bold" = { modifiers = ["bold"] } -"markup.heading" = +"markup.bold" = { fg = "#c8d3f5", modifiers = ["bold"] } +"markup.heading" = { fg = "#82aaff", modifiers = ["bold"] } "markup.heading.completion" = { bg = "#1e2030", fg = "#c8d3f5" } "markup.heading.hover" = { bg = "#363c58" } -"markup.italic" = { modifiers = ["italic"] } -"markup.link" = { fg = "#82aaff", underline = { style = "line" } } -"markup.link.label" = { fg = "#4fd6be" } +"markup.italic" = { fg = "#c8d3f5", modifiers = ["italic"] } +"markup.link" = { fg = "#4fd6be" } +"markup.link.label" = { fg = "#65bcff" } "markup.link.text" = { fg = "#4fd6be" } "markup.link.url" = { underline = { style = "line" } } -"markup.list" = { fg = "#ff966c", modifiers = ["bold"] } +"markup.list" = { fg = "#89ddff" } "markup.normal.completion" = { fg = "#636da6" } "markup.normal.hover" = { fg = "#828bb8" } -"markup.raw" = { fg = "#4fd6be" } -"markup.raw.block" = { fg = "#4fd6be" } +"markup.raw" = { fg = "#c3e88d" } "markup.raw.inline" = { bg = "#444a73", fg = "#82aaff" } "markup.strikethrough" = { modifiers = ["crossed_out"] } -namespace = +namespace = { fg = "#86e1fc" } operator = { fg = "#89ddff" } special = { fg = "#65bcff" } string = { fg = "#c3e88d" } @@ -67,9 +66,9 @@ type = { fg = "#65bcff" } "ui.cursor" = { bg = "#c8d3f5", fg = "#222436" } "ui.cursor.match" = { fg = "#ff966c", modifiers = ["bold"] } "ui.linenr" = { fg = "#3b4261" } -"ui.linenr.select" = { fg = "#737aa2" } +"ui.linenr.select" = { fg = "#ff966c", modifiers = ["bold"] } "ui.menu" = { bg = "#1e2030", fg = "#c8d3f5" } -"ui.menu.scroll" = { bg = 2698042, fg = 3883617 } +"ui.menu.scroll" = { bg = 2566458, fg = 3883617 } "ui.menu.selected" = { bg = "#363c58" } "ui.popup" = { bg = "#1e2030", fg = "#589ed7" } "ui.selection" = { bg = "bg_highlight" } @@ -112,8 +111,6 @@ comment = "#636da6" cyan = "#86e1fc" dark3 = "#545c7e" dark5 = "#737aa2" -"delta.add" = "#305f6f" -"delta.delete" = "#6b2e43" "diff.add" = "#273849" "diff.change" = "#252a3f" "diff.delete" = "#3a273a" @@ -128,9 +125,6 @@ fg_sidebar = "#828bb8" "git.change" = "#7ca1f2" "git.delete" = "#e26a75" "git.ignore" = "#545c7e" -"gitSigns.add" = "#627259" -"gitSigns.change" = "#485a86" -"gitSigns.delete" = "#b55a67" green = "#c3e88d" green1 = "#4fd6be" green2 = "#41a6b5" @@ -140,6 +134,12 @@ magenta = "#c099ff" magenta2 = "#ff007c" orange = "#ff966c" purple = "#fca7ea" +rainbow = "#82aaff" +"rainbow.2" = "#ffc777" +"rainbow.3" = "#c3e88d" +"rainbow.4" = "#4fd6be" +"rainbow.5" = "#c099ff" +"rainbow.6" = "#fca7ea" red = "#ff757f" red1 = "#c53b53" teal = "#4fd6be" diff --git a/extras/helix/tokyonight_night.toml b/extras/helix/tokyonight_night.toml index 476cb4ee..b46c6806 100644 --- a/extras/helix/tokyonight_night.toml +++ b/extras/helix/tokyonight_night.toml @@ -22,7 +22,7 @@ error = { fg = "#db4b4b" } function = { fg = "#7aa2f7" } "function.builtin" = { fg = "#2ac3de" } "function.macro" = { fg = "#7dcfff" } -"function.method" = +"function.method" = { fg = "#7aa2f7" } "function.special" = { fg = "#7dcfff" } hint = { fg = "#1abc9c" } info = { fg = "#0db9d7" } @@ -36,23 +36,22 @@ keyword = { fg = "#9d7cd8", modifiers = ["italic"] } "keyword.function" = { fg = "#bb9af7" } "keyword.operator" = { fg = "#bb9af7" } label = { fg = "#7aa2f7" } -"markup.bold" = { modifiers = ["bold"] } -"markup.heading" = +"markup.bold" = { fg = "#c0caf5", modifiers = ["bold"] } +"markup.heading" = { fg = "#7aa2f7", modifiers = ["bold"] } "markup.heading.completion" = { bg = "#16161e", fg = "#c0caf5" } "markup.heading.hover" = { bg = "#343a55" } -"markup.italic" = { modifiers = ["italic"] } -"markup.link" = { fg = "#7aa2f7", underline = { style = "line" } } -"markup.link.label" = { fg = "#1abc9c" } +"markup.italic" = { fg = "#c0caf5", modifiers = ["italic"] } +"markup.link" = { fg = "#1abc9c" } +"markup.link.label" = { fg = "#2ac3de" } "markup.link.text" = { fg = "#1abc9c" } "markup.link.url" = { underline = { style = "line" } } -"markup.list" = { fg = "#ff9e64", modifiers = ["bold"] } +"markup.list" = { fg = "#89ddff" } "markup.normal.completion" = { fg = "#565f89" } "markup.normal.hover" = { fg = "#a9b1d6" } -"markup.raw" = { fg = "#1abc9c" } -"markup.raw.block" = { fg = "#1abc9c" } +"markup.raw" = { fg = "#9ece6a" } "markup.raw.inline" = { bg = "#414868", fg = "#7aa2f7" } "markup.strikethrough" = { modifiers = ["crossed_out"] } -namespace = +namespace = { fg = "#7dcfff" } operator = { fg = "#89ddff" } special = { fg = "#2ac3de" } string = { fg = "#9ece6a" } @@ -67,9 +66,9 @@ type = { fg = "#2ac3de" } "ui.cursor" = { bg = "#c0caf5", fg = "#1a1b26" } "ui.cursor.match" = { fg = "#ff9e64", modifiers = ["bold"] } "ui.linenr" = { fg = "#3b4261" } -"ui.linenr.select" = { fg = "#737aa2" } +"ui.linenr.select" = { fg = "#ff9e64", modifiers = ["bold"] } "ui.menu" = { bg = "#16161e", fg = "#c0caf5" } -"ui.menu.scroll" = { bg = 2236969, fg = 3883617 } +"ui.menu.scroll" = { bg = 2039593, fg = 3883617 } "ui.menu.selected" = { bg = "#343a55" } "ui.popup" = { bg = "#16161e", fg = "#27a1b9" } "ui.selection" = { bg = "bg_highlight" } @@ -112,8 +111,6 @@ comment = "#565f89" cyan = "#7dcfff" dark3 = "#545c7e" dark5 = "#737aa2" -"delta.add" = "#2c5a66" -"delta.delete" = "#713137" "diff.add" = "#20303b" "diff.change" = "#1f2231" "diff.delete" = "#37222c" @@ -128,9 +125,6 @@ fg_sidebar = "#a9b1d6" "git.change" = "#6183bb" "git.delete" = "#914c54" "git.ignore" = "#545c7e" -"gitSigns.add" = "#266d6a" -"gitSigns.change" = "#536c9e" -"gitSigns.delete" = "#b2555b" green = "#9ece6a" green1 = "#73daca" green2 = "#41a6b5" @@ -140,6 +134,12 @@ magenta = "#bb9af7" magenta2 = "#ff007c" orange = "#ff9e64" purple = "#9d7cd8" +rainbow = "#7aa2f7" +"rainbow.2" = "#e0af68" +"rainbow.3" = "#9ece6a" +"rainbow.4" = "#1abc9c" +"rainbow.5" = "#bb9af7" +"rainbow.6" = "#9d7cd8" red = "#f7768e" red1 = "#db4b4b" teal = "#1abc9c" diff --git a/extras/helix/tokyonight_storm.toml b/extras/helix/tokyonight_storm.toml index 6dcbe6b3..bb719cf2 100644 --- a/extras/helix/tokyonight_storm.toml +++ b/extras/helix/tokyonight_storm.toml @@ -22,7 +22,7 @@ error = { fg = "#db4b4b" } function = { fg = "#7aa2f7" } "function.builtin" = { fg = "#2ac3de" } "function.macro" = { fg = "#7dcfff" } -"function.method" = +"function.method" = { fg = "#7aa2f7" } "function.special" = { fg = "#7dcfff" } hint = { fg = "#1abc9c" } info = { fg = "#0db9d7" } @@ -36,23 +36,22 @@ keyword = { fg = "#9d7cd8", modifiers = ["italic"] } "keyword.function" = { fg = "#bb9af7" } "keyword.operator" = { fg = "#bb9af7" } label = { fg = "#7aa2f7" } -"markup.bold" = { modifiers = ["bold"] } -"markup.heading" = +"markup.bold" = { fg = "#c0caf5", modifiers = ["bold"] } +"markup.heading" = { fg = "#7aa2f7", modifiers = ["bold"] } "markup.heading.completion" = { bg = "#1f2335", fg = "#c0caf5" } "markup.heading.hover" = { bg = "#363d59" } -"markup.italic" = { modifiers = ["italic"] } -"markup.link" = { fg = "#7aa2f7", underline = { style = "line" } } -"markup.link.label" = { fg = "#1abc9c" } +"markup.italic" = { fg = "#c0caf5", modifiers = ["italic"] } +"markup.link" = { fg = "#1abc9c" } +"markup.link.label" = { fg = "#2ac3de" } "markup.link.text" = { fg = "#1abc9c" } "markup.link.url" = { underline = { style = "line" } } -"markup.list" = { fg = "#ff9e64", modifiers = ["bold"] } +"markup.list" = { fg = "#89ddff" } "markup.normal.completion" = { fg = "#565f89" } "markup.normal.hover" = { fg = "#a9b1d6" } -"markup.raw" = { fg = "#1abc9c" } -"markup.raw.block" = { fg = "#1abc9c" } +"markup.raw" = { fg = "#9ece6a" } "markup.raw.inline" = { bg = "#414868", fg = "#7aa2f7" } "markup.strikethrough" = { modifiers = ["crossed_out"] } -namespace = +namespace = { fg = "#7dcfff" } operator = { fg = "#89ddff" } special = { fg = "#2ac3de" } string = { fg = "#9ece6a" } @@ -67,9 +66,9 @@ type = { fg = "#2ac3de" } "ui.cursor" = { bg = "#c0caf5", fg = "#24283b" } "ui.cursor.match" = { fg = "#ff9e64", modifiers = ["bold"] } "ui.linenr" = { fg = "#3b4261" } -"ui.linenr.select" = { fg = "#737aa2" } +"ui.linenr.select" = { fg = "#ff9e64", modifiers = ["bold"] } "ui.menu" = { bg = "#1f2335", fg = "#c0caf5" } -"ui.menu.scroll" = { bg = 2764351, fg = 3883617 } +"ui.menu.scroll" = { bg = 2566975, fg = 3883617 } "ui.menu.selected" = { bg = "#363d59" } "ui.popup" = { bg = "#1f2335", fg = "#29a4bd" } "ui.selection" = { bg = "bg_highlight" } @@ -112,8 +111,6 @@ comment = "#565f89" cyan = "#7dcfff" dark3 = "#545c7e" dark5 = "#737aa2" -"delta.add" = "#316172" -"delta.delete" = "#763842" "diff.add" = "#283b4d" "diff.change" = "#272d43" "diff.delete" = "#3f2d3d" @@ -128,9 +125,6 @@ fg_sidebar = "#a9b1d6" "git.change" = "#6183bb" "git.delete" = "#914c54" "git.ignore" = "#545c7e" -"gitSigns.add" = "#266d6a" -"gitSigns.change" = "#536c9e" -"gitSigns.delete" = "#b2555b" green = "#9ece6a" green1 = "#73daca" green2 = "#41a6b5" @@ -140,6 +134,12 @@ magenta = "#bb9af7" magenta2 = "#ff007c" orange = "#ff9e64" purple = "#9d7cd8" +rainbow = "#7aa2f7" +"rainbow.2" = "#e0af68" +"rainbow.3" = "#9ece6a" +"rainbow.4" = "#1abc9c" +"rainbow.5" = "#bb9af7" +"rainbow.6" = "#9d7cd8" red = "#f7768e" red1 = "#db4b4b" teal = "#1abc9c" diff --git a/extras/iterm/tokyonight_day.itermcolors b/extras/iterm/tokyonight_day.itermcolors index 18b40b6b..5b21e760 100644 --- a/extras/iterm/tokyonight_day.itermcolors +++ b/extras/iterm/tokyonight_day.itermcolors @@ -7,13 +7,13 @@ Alpha Component 1 Blue Component - 0.9294117647058824 + 0.7254901960784313 Color Space sRGB Green Component - 0.9137254901960784 + 0.7098039215686275 Red Component - 0.9137254901960784 + 0.7058823529411765 Ansi 1 Color @@ -332,13 +332,13 @@ Alpha Component 1 Blue Component - 0.8862745098039215 + 0.8901960784313725 Color Space sRGB Green Component - 0.7490196078431373 + 0.7568627450980392 Red Component - 0.7137254901960784 + 0.7176470588235294 \ No newline at end of file diff --git a/extras/kitty/tokyonight_day.conf b/extras/kitty/tokyonight_day.conf index 75f60299..a3fb5ed1 100644 --- a/extras/kitty/tokyonight_day.conf +++ b/extras/kitty/tokyonight_day.conf @@ -8,7 +8,7 @@ background #e1e2e7 foreground #3760bf -selection_background #b6bfe2 +selection_background #b7c1e3 selection_foreground #3760bf url_color #387068 cursor #3760bf @@ -16,17 +16,17 @@ cursor_text_color #e1e2e7 # Tabs active_tab_background #2e7de9 -active_tab_foreground #e9e9ec +active_tab_foreground #d0d5e3 inactive_tab_background #c4c8da inactive_tab_foreground #8990b3 -#tab_bar_background #e9e9ed +#tab_bar_background #b4b5b9 # Windows active_border_color #2e7de9 inactive_border_color #c4c8da # normal -color0 #e9e9ed +color0 #b4b5b9 color1 #f52a65 color2 #587539 color3 #8c6c3e diff --git a/extras/lazygit/tokyonight_day.conf b/extras/lazygit/tokyonight_day.conf new file mode 100644 index 00000000..fca9b9aa --- /dev/null +++ b/extras/lazygit/tokyonight_day.conf @@ -0,0 +1,27 @@ +gui: + nerdFontsVersion: "3" + theme: + activeBorderColor: + - "#b15c00" + - "bold" + inactiveBorderColor: + - "#2496ac" + searchingActiveBorderColor: + - "#b15c00" + - "bold" + optionsTextColor: + - "#2e7de9" + selectedLineBgColor: + - "#b6bfe2" + cherryPickedCommitFgColor: + - "#2e7de9" + cherryPickedCommitBgColor: + - "#9854f1" + markedBaseCommitFgColor: + - "#2e7de9" + markedBaseCommitBgColor: + - "#8c6c3e" + unstagedChangesColor: + - "#c64343" + defaultFgColor: + - "#3760bf" diff --git a/extras/lazygit/tokyonight_day.yml b/extras/lazygit/tokyonight_day.yml new file mode 100644 index 00000000..95f0cad4 --- /dev/null +++ b/extras/lazygit/tokyonight_day.yml @@ -0,0 +1,27 @@ +gui: + nerdFontsVersion: "3" + theme: + activeBorderColor: + - "#b15c00" + - "bold" + inactiveBorderColor: + - "#4094a3" + searchingActiveBorderColor: + - "#b15c00" + - "bold" + optionsTextColor: + - "#2e7de9" + selectedLineBgColor: + - "#b7c1e3" + cherryPickedCommitFgColor: + - "#2e7de9" + cherryPickedCommitBgColor: + - "#9854f1" + markedBaseCommitFgColor: + - "#2e7de9" + markedBaseCommitBgColor: + - "#8c6c3e" + unstagedChangesColor: + - "#c64343" + defaultFgColor: + - "#3760bf" diff --git a/extras/lazygit/tokyonight_moon.conf b/extras/lazygit/tokyonight_moon.conf new file mode 100644 index 00000000..bb5a207f --- /dev/null +++ b/extras/lazygit/tokyonight_moon.conf @@ -0,0 +1,27 @@ +gui: + nerdFontsVersion: "3" + theme: + activeBorderColor: + - "#ff966c" + - "bold" + inactiveBorderColor: + - "#589ed7" + searchingActiveBorderColor: + - "#ff966c" + - "bold" + optionsTextColor: + - "#82aaff" + selectedLineBgColor: + - "#2d3f76" + cherryPickedCommitFgColor: + - "#82aaff" + cherryPickedCommitBgColor: + - "#c099ff" + markedBaseCommitFgColor: + - "#82aaff" + markedBaseCommitBgColor: + - "#ffc777" + unstagedChangesColor: + - "#c53b53" + defaultFgColor: + - "#c8d3f5" diff --git a/extras/lazygit/tokyonight_moon.yml b/extras/lazygit/tokyonight_moon.yml new file mode 100644 index 00000000..bb5a207f --- /dev/null +++ b/extras/lazygit/tokyonight_moon.yml @@ -0,0 +1,27 @@ +gui: + nerdFontsVersion: "3" + theme: + activeBorderColor: + - "#ff966c" + - "bold" + inactiveBorderColor: + - "#589ed7" + searchingActiveBorderColor: + - "#ff966c" + - "bold" + optionsTextColor: + - "#82aaff" + selectedLineBgColor: + - "#2d3f76" + cherryPickedCommitFgColor: + - "#82aaff" + cherryPickedCommitBgColor: + - "#c099ff" + markedBaseCommitFgColor: + - "#82aaff" + markedBaseCommitBgColor: + - "#ffc777" + unstagedChangesColor: + - "#c53b53" + defaultFgColor: + - "#c8d3f5" diff --git a/extras/lazygit/tokyonight_night.conf b/extras/lazygit/tokyonight_night.conf new file mode 100644 index 00000000..97b1f23e --- /dev/null +++ b/extras/lazygit/tokyonight_night.conf @@ -0,0 +1,27 @@ +gui: + nerdFontsVersion: "3" + theme: + activeBorderColor: + - "#ff9e64" + - "bold" + inactiveBorderColor: + - "#27a1b9" + searchingActiveBorderColor: + - "#ff9e64" + - "bold" + optionsTextColor: + - "#7aa2f7" + selectedLineBgColor: + - "#283457" + cherryPickedCommitFgColor: + - "#7aa2f7" + cherryPickedCommitBgColor: + - "#bb9af7" + markedBaseCommitFgColor: + - "#7aa2f7" + markedBaseCommitBgColor: + - "#e0af68" + unstagedChangesColor: + - "#db4b4b" + defaultFgColor: + - "#c0caf5" diff --git a/extras/lazygit/tokyonight_night.yml b/extras/lazygit/tokyonight_night.yml new file mode 100644 index 00000000..97b1f23e --- /dev/null +++ b/extras/lazygit/tokyonight_night.yml @@ -0,0 +1,27 @@ +gui: + nerdFontsVersion: "3" + theme: + activeBorderColor: + - "#ff9e64" + - "bold" + inactiveBorderColor: + - "#27a1b9" + searchingActiveBorderColor: + - "#ff9e64" + - "bold" + optionsTextColor: + - "#7aa2f7" + selectedLineBgColor: + - "#283457" + cherryPickedCommitFgColor: + - "#7aa2f7" + cherryPickedCommitBgColor: + - "#bb9af7" + markedBaseCommitFgColor: + - "#7aa2f7" + markedBaseCommitBgColor: + - "#e0af68" + unstagedChangesColor: + - "#db4b4b" + defaultFgColor: + - "#c0caf5" diff --git a/extras/lazygit/tokyonight_storm.conf b/extras/lazygit/tokyonight_storm.conf new file mode 100644 index 00000000..31bcd2b2 --- /dev/null +++ b/extras/lazygit/tokyonight_storm.conf @@ -0,0 +1,27 @@ +gui: + nerdFontsVersion: "3" + theme: + activeBorderColor: + - "#ff9e64" + - "bold" + inactiveBorderColor: + - "#29a4bd" + searchingActiveBorderColor: + - "#ff9e64" + - "bold" + optionsTextColor: + - "#7aa2f7" + selectedLineBgColor: + - "#2e3c64" + cherryPickedCommitFgColor: + - "#7aa2f7" + cherryPickedCommitBgColor: + - "#bb9af7" + markedBaseCommitFgColor: + - "#7aa2f7" + markedBaseCommitBgColor: + - "#e0af68" + unstagedChangesColor: + - "#db4b4b" + defaultFgColor: + - "#c0caf5" diff --git a/extras/lazygit/tokyonight_storm.yml b/extras/lazygit/tokyonight_storm.yml new file mode 100644 index 00000000..31bcd2b2 --- /dev/null +++ b/extras/lazygit/tokyonight_storm.yml @@ -0,0 +1,27 @@ +gui: + nerdFontsVersion: "3" + theme: + activeBorderColor: + - "#ff9e64" + - "bold" + inactiveBorderColor: + - "#29a4bd" + searchingActiveBorderColor: + - "#ff9e64" + - "bold" + optionsTextColor: + - "#7aa2f7" + selectedLineBgColor: + - "#2e3c64" + cherryPickedCommitFgColor: + - "#7aa2f7" + cherryPickedCommitBgColor: + - "#bb9af7" + markedBaseCommitFgColor: + - "#7aa2f7" + markedBaseCommitBgColor: + - "#e0af68" + unstagedChangesColor: + - "#db4b4b" + defaultFgColor: + - "#c0caf5" diff --git a/extras/lua/tokyonight_day.lua b/extras/lua/tokyonight_day.lua index 1baa44d8..bd12b727 100644 --- a/extras/lua/tokyonight_day.lua +++ b/extras/lua/tokyonight_day.lua @@ -1,15 +1,16 @@ local colors = { _name = "tokyonight_day", + _style = "day", bg = "#e1e2e7", - bg_dark = "#e9e9ec", - bg_float = "#e9e9ec", + bg_dark = "#d0d5e3", + bg_float = "#d0d5e3", bg_highlight = "#c4c8da", - bg_popup = "#e9e9ec", + bg_popup = "#d0d5e3", bg_search = "#7890dd", - bg_sidebar = "#e9e9ec", - bg_statusline = "#e9e9ec", - bg_visual = "#b6bfe2", - black = "#e9e9ed", + bg_sidebar = "#d0d5e3", + bg_statusline = "#d0d5e3", + bg_visual = "#b7c1e3", + black = "#b4b5b9", blue = "#2e7de9", blue0 = "#7890dd", blue1 = "#188092", @@ -17,20 +18,16 @@ local colors = { blue5 = "#006a83", blue6 = "#2e5857", blue7 = "#92a6d5", - border = "#e9e9ed", - border_highlight = "#2496ac", + border = "#b4b5b9", + border_highlight = "#4094a3", comment = "#848cb5", cyan = "#007197", dark3 = "#8990b3", dark5 = "#68709a", - delta = { - add = "#57a7bc", - delete = "#d99ea2" - }, diff = { - add = "#aecde6", - change = "#d6d8e3", - delete = "#dfccd4", + add = "#c8d6dc", + change = "#d5d9e4", + delete = "#ddcace", text = "#92a6d5" }, error = "#c64343", @@ -45,11 +42,6 @@ local colors = { delete = "#c47981", ignore = "#8990b3" }, - gitSigns = { - add = "#399a96", - change = "#6482bd", - delete = "#c25d64" - }, green = "#587539", green1 = "#387068", green2 = "#38919f", @@ -60,6 +52,7 @@ local colors = { none = "NONE", orange = "#b15c00", purple = "#7847bd", + rainbow = { "#2e7de9", "#8c6c3e", "#587539", "#118c74", "#9854f1", "#7847bd" }, red = "#f52a65", red1 = "#c64343", teal = "#118c74", @@ -70,24 +63,13 @@ local colors = { } local highlights = { - ["@annotation"] = { - link = "PreProc" - }, - ["@attribute"] = { - link = "PreProc" - }, - ["@boolean"] = { - link = "Boolean" - }, - ["@character"] = { - link = "Character" - }, - ["@character.special"] = { - link = "SpecialChar" - }, - ["@comment"] = { - link = "Comment" - }, + ["@annotation"] = "PreProc", + ["@attribute"] = "PreProc", + ["@boolean"] = "Boolean", + ["@character"] = "Character", + ["@character.printf"] = "SpecialChar", + ["@character.special"] = "SpecialChar", + ["@comment"] = "Comment", ["@comment.error"] = { fg = "#c64343" }, @@ -106,231 +88,103 @@ local highlights = { ["@comment.warning"] = { fg = "#8c6c3e" }, - ["@constant"] = { - link = "Constant" - }, - ["@constant.builtin"] = { - link = "Special" - }, - ["@constant.macro"] = { - link = "Define" - }, + ["@constant"] = "Constant", + ["@constant.builtin"] = "Special", + ["@constant.macro"] = "Define", ["@constructor"] = { fg = "#9854f1" }, ["@constructor.tsx"] = { fg = "#188092" }, - ["@diff.delta"] = { - link = "DiffChange" - }, - ["@diff.minus"] = { - link = "DiffDelete" - }, - ["@diff.plus"] = { - link = "DiffAdd" - }, - ["@function"] = { - link = "Function" - }, - ["@function.builtin"] = { - link = "Special" - }, - ["@function.call"] = { - link = "@function" - }, - ["@function.macro"] = { - link = "Macro" - }, - ["@function.method"] = { - link = "Function" - }, - ["@function.method.call"] = { - link = "@function.method" - }, + ["@diff.delta"] = "DiffChange", + ["@diff.minus"] = "DiffDelete", + ["@diff.plus"] = "DiffAdd", + ["@function"] = "Function", + ["@function.builtin"] = "Special", + ["@function.call"] = "@function", + ["@function.macro"] = "Macro", + ["@function.method"] = "Function", + ["@function.method.call"] = "@function.method", ["@keyword"] = { fg = "#7847bd", - style = { - italic = true - } - }, - ["@keyword.conditional"] = { - link = "Conditional" - }, - ["@keyword.coroutine"] = { - link = "@keyword" - }, - ["@keyword.debug"] = { - link = "Debug" - }, - ["@keyword.directive"] = { - link = "PreProc" - }, - ["@keyword.directive.define"] = { - link = "Define" - }, - ["@keyword.exception"] = { - link = "Exception" + italic = true }, + ["@keyword.conditional"] = "Conditional", + ["@keyword.coroutine"] = "@keyword", + ["@keyword.debug"] = "Debug", + ["@keyword.directive"] = "PreProc", + ["@keyword.directive.define"] = "Define", + ["@keyword.exception"] = "Exception", ["@keyword.function"] = { - fg = "#9854f1", - style = {} - }, - ["@keyword.import"] = { - link = "Include" - }, - ["@keyword.operator"] = { - link = "@operator" - }, - ["@keyword.repeat"] = { - link = "Repeat" - }, - ["@keyword.return"] = { - link = "@keyword" - }, - ["@keyword.storage"] = { - link = "StorageClass" + fg = "#9854f1" }, + ["@keyword.import"] = "Include", + ["@keyword.operator"] = "@operator", + ["@keyword.repeat"] = "Repeat", + ["@keyword.return"] = "@keyword", + ["@keyword.storage"] = "StorageClass", ["@label"] = { fg = "#2e7de9" }, - ["@lsp.type.boolean"] = { - link = "@boolean" - }, - ["@lsp.type.builtinType"] = { - link = "@type.builtin" - }, - ["@lsp.type.comment"] = { - link = "@comment" - }, - ["@lsp.type.decorator"] = { - link = "@attribute" - }, - ["@lsp.type.deriveHelper"] = { - link = "@attribute" - }, - ["@lsp.type.enum"] = { - link = "@type" - }, - ["@lsp.type.enumMember"] = { - link = "@constant" - }, - ["@lsp.type.escapeSequence"] = { - link = "@string.escape" - }, - ["@lsp.type.formatSpecifier"] = { - link = "@markup.list" - }, - ["@lsp.type.generic"] = { - link = "@variable" - }, + ["@lsp.type.boolean"] = "@boolean", + ["@lsp.type.builtinType"] = "@type.builtin", + ["@lsp.type.comment"] = "@comment", + ["@lsp.type.decorator"] = "@attribute", + ["@lsp.type.deriveHelper"] = "@attribute", + ["@lsp.type.enum"] = "@type", + ["@lsp.type.enumMember"] = "@constant", + ["@lsp.type.escapeSequence"] = "@string.escape", + ["@lsp.type.formatSpecifier"] = "@markup.list", + ["@lsp.type.generic"] = "@variable", ["@lsp.type.interface"] = { - fg = "#35717b" - }, - ["@lsp.type.keyword"] = { - link = "@keyword" - }, - ["@lsp.type.lifetime"] = { - link = "@keyword.storage" - }, - ["@lsp.type.namespace"] = { - link = "@module" - }, - ["@lsp.type.number"] = { - link = "@number" - }, - ["@lsp.type.operator"] = { - link = "@operator" - }, - ["@lsp.type.parameter"] = { - link = "@variable.parameter" - }, - ["@lsp.type.property"] = { - link = "@property" - }, - ["@lsp.type.selfKeyword"] = { - link = "@variable.builtin" - }, - ["@lsp.type.selfTypeKeyword"] = { - link = "@variable.builtin" - }, - ["@lsp.type.string"] = { - link = "@string" - }, - ["@lsp.type.typeAlias"] = { - link = "@type.definition" - }, + fg = "#2176a0" + }, + ["@lsp.type.keyword"] = "@keyword", + ["@lsp.type.lifetime"] = "@keyword.storage", + ["@lsp.type.namespace"] = "@module", + ["@lsp.type.namespace.python"] = "@variable", + ["@lsp.type.number"] = "@number", + ["@lsp.type.operator"] = "@operator", + ["@lsp.type.parameter"] = "@variable.parameter", + ["@lsp.type.property"] = "@property", + ["@lsp.type.selfKeyword"] = "@variable.builtin", + ["@lsp.type.selfTypeKeyword"] = "@variable.builtin", + ["@lsp.type.string"] = "@string", + ["@lsp.type.typeAlias"] = "@type.definition", ["@lsp.type.unresolvedReference"] = { sp = "#c64343", undercurl = true }, ["@lsp.type.variable"] = {}, - ["@lsp.typemod.class.defaultLibrary"] = { - link = "@type.builtin" - }, - ["@lsp.typemod.enum.defaultLibrary"] = { - link = "@type.builtin" - }, - ["@lsp.typemod.enumMember.defaultLibrary"] = { - link = "@constant.builtin" - }, - ["@lsp.typemod.function.defaultLibrary"] = { - link = "@function.builtin" - }, - ["@lsp.typemod.keyword.async"] = { - link = "@keyword.coroutine" - }, - ["@lsp.typemod.keyword.injected"] = { - link = "@keyword" - }, - ["@lsp.typemod.macro.defaultLibrary"] = { - link = "@function.builtin" - }, - ["@lsp.typemod.method.defaultLibrary"] = { - link = "@function.builtin" - }, - ["@lsp.typemod.operator.injected"] = { - link = "@operator" - }, - ["@lsp.typemod.string.injected"] = { - link = "@string" - }, - ["@lsp.typemod.struct.defaultLibrary"] = { - link = "@type.builtin" - }, + ["@lsp.typemod.class.defaultLibrary"] = "@type.builtin", + ["@lsp.typemod.enum.defaultLibrary"] = "@type.builtin", + ["@lsp.typemod.enumMember.defaultLibrary"] = "@constant.builtin", + ["@lsp.typemod.function.defaultLibrary"] = "@function.builtin", + ["@lsp.typemod.keyword.async"] = "@keyword.coroutine", + ["@lsp.typemod.keyword.injected"] = "@keyword", + ["@lsp.typemod.macro.defaultLibrary"] = "@function.builtin", + ["@lsp.typemod.method.defaultLibrary"] = "@function.builtin", + ["@lsp.typemod.operator.injected"] = "@operator", + ["@lsp.typemod.string.injected"] = "@string", + ["@lsp.typemod.struct.defaultLibrary"] = "@type.builtin", ["@lsp.typemod.type.defaultLibrary"] = { - fg = "#2496ac" + fg = "#4094a3" }, ["@lsp.typemod.typeAlias.defaultLibrary"] = { - fg = "#2496ac" - }, - ["@lsp.typemod.variable.callable"] = { - link = "@function" - }, - ["@lsp.typemod.variable.defaultLibrary"] = { - link = "@variable.builtin" - }, - ["@lsp.typemod.variable.injected"] = { - link = "@variable" - }, - ["@lsp.typemod.variable.static"] = { - link = "@constant" - }, - ["@markup"] = { - link = "@none" + fg = "#4094a3" }, + ["@lsp.typemod.variable.callable"] = "@function", + ["@lsp.typemod.variable.defaultLibrary"] = "@variable.builtin", + ["@lsp.typemod.variable.injected"] = "@variable", + ["@lsp.typemod.variable.static"] = "@constant", + ["@markup"] = "@none", ["@markup.emphasis"] = { italic = true }, - ["@markup.environment"] = { - link = "Macro" - }, - ["@markup.environment.name"] = { - link = "Type" - }, - ["@markup.heading"] = { - link = "Title" - }, + ["@markup.environment"] = "Macro", + ["@markup.environment.name"] = "Type", + ["@markup.heading"] = "Title", ["@markup.heading.1.markdown"] = { bold = true, fg = "#2e7de9" @@ -355,18 +209,15 @@ local highlights = { bold = true, fg = "#7847bd" }, + ["@markup.italic"] = { + italic = true + }, ["@markup.link"] = { fg = "#118c74" }, - ["@markup.link.label"] = { - link = "SpecialChar" - }, - ["@markup.link.label.symbol"] = { - link = "Identifier" - }, - ["@markup.link.url"] = { - link = "Underlined" - }, + ["@markup.link.label"] = "SpecialChar", + ["@markup.link.label.symbol"] = "Identifier", + ["@markup.link.url"] = "Underlined", ["@markup.list"] = { fg = "#006a83" }, @@ -380,12 +231,8 @@ local highlights = { ["@markup.list.unchecked"] = { fg = "#2e7de9" }, - ["@markup.math"] = { - link = "Special" - }, - ["@markup.raw"] = { - link = "String" - }, + ["@markup.math"] = "Special", + ["@markup.raw"] = "String", ["@markup.raw.markdown_inline"] = { bg = "#a1a6c5", fg = "#2e7de9" @@ -399,22 +246,14 @@ local highlights = { ["@markup.underline"] = { underline = true }, - ["@module"] = { - link = "Include" - }, + ["@module"] = "Include", ["@module.builtin"] = { fg = "#f52a65" }, - ["@namespace.builtin"] = { - link = "@variable.builtin" - }, + ["@namespace.builtin"] = "@variable.builtin", ["@none"] = {}, - ["@number"] = { - link = "Number" - }, - ["@number.float"] = { - link = "Float" - }, + ["@number"] = "Number", + ["@number.float"] = "Float", ["@operator"] = { fg = "#006a83" }, @@ -430,9 +269,7 @@ local highlights = { ["@punctuation.special"] = { fg = "#006a83" }, - ["@string"] = { - link = "String" - }, + ["@string"] = "String", ["@string.documentation"] = { fg = "#8c6c3e" }, @@ -442,36 +279,23 @@ local highlights = { ["@string.regexp"] = { fg = "#2e5857" }, - ["@tag"] = { - link = "Label" - }, - ["@tag.attribute"] = { - link = "@property" - }, - ["@tag.delimiter"] = { - link = "Delimiter" - }, + ["@tag"] = "Label", + ["@tag.attribute"] = "@property", + ["@tag.delimiter"] = "Delimiter", ["@tag.delimiter.tsx"] = { - fg = "#5772ad" + fg = "#649be8" }, ["@tag.tsx"] = { fg = "#f52a65" }, - ["@type"] = { - link = "Type" - }, + ["@type"] = "Type", ["@type.builtin"] = { - fg = "#2496ac" - }, - ["@type.definition"] = { - link = "Typedef" - }, - ["@type.qualifier"] = { - link = "@keyword" + fg = "#4094a3" }, + ["@type.definition"] = "Typedef", + ["@type.qualifier"] = "@keyword", ["@variable"] = { - fg = "#3760bf", - style = {} + fg = "#3760bf" }, ["@variable.builtin"] = { fg = "#f52a65" @@ -483,7 +307,7 @@ local highlights = { fg = "#8c6c3e" }, ["@variable.parameter.builtin"] = { - fg = "#7b6545" + fg = "#7b6a58" }, ALEErrorSign = { fg = "#c64343" @@ -491,118 +315,48 @@ local highlights = { ALEWarningSign = { fg = "#8c6c3e" }, - AerialArrayIcon = { - link = "LspKindArray" - }, - AerialBooleanIcon = { - link = "LspKindBoolean" - }, - AerialClassIcon = { - link = "LspKindClass" - }, - AerialColorIcon = { - link = "LspKindColor" - }, - AerialConstantIcon = { - link = "LspKindConstant" - }, - AerialConstructorIcon = { - link = "LspKindConstructor" - }, - AerialEnumIcon = { - link = "LspKindEnum" - }, - AerialEnumMemberIcon = { - link = "LspKindEnumMember" - }, - AerialEventIcon = { - link = "LspKindEvent" - }, - AerialFieldIcon = { - link = "LspKindField" - }, - AerialFileIcon = { - link = "LspKindFile" - }, - AerialFolderIcon = { - link = "LspKindFolder" - }, - AerialFunctionIcon = { - link = "LspKindFunction" - }, + AerialArrayIcon = "LspKindArray", + AerialBooleanIcon = "LspKindBoolean", + AerialClassIcon = "LspKindClass", + AerialColorIcon = "LspKindColor", + AerialConstantIcon = "LspKindConstant", + AerialConstructorIcon = "LspKindConstructor", + AerialEnumIcon = "LspKindEnum", + AerialEnumMemberIcon = "LspKindEnumMember", + AerialEventIcon = "LspKindEvent", + AerialFieldIcon = "LspKindField", + AerialFileIcon = "LspKindFile", + AerialFolderIcon = "LspKindFolder", + AerialFunctionIcon = "LspKindFunction", AerialGuide = { fg = "#a8aecb" }, - AerialInterfaceIcon = { - link = "LspKindInterface" - }, - AerialKeyIcon = { - link = "LspKindKey" - }, - AerialKeywordIcon = { - link = "LspKindKeyword" - }, - AerialLine = { - link = "LspInlayHint" - }, - AerialMethodIcon = { - link = "LspKindMethod" - }, - AerialModuleIcon = { - link = "LspKindModule" - }, - AerialNamespaceIcon = { - link = "LspKindNamespace" - }, + AerialInterfaceIcon = "LspKindInterface", + AerialKeyIcon = "LspKindKey", + AerialKeywordIcon = "LspKindKeyword", + AerialLine = "LspInlayHint", + AerialMethodIcon = "LspKindMethod", + AerialModuleIcon = "LspKindModule", + AerialNamespaceIcon = "LspKindNamespace", AerialNormal = { bg = "NONE", fg = "#3760bf" }, - AerialNullIcon = { - link = "LspKindNull" - }, - AerialNumberIcon = { - link = "LspKindNumber" - }, - AerialObjectIcon = { - link = "LspKindObject" - }, - AerialOperatorIcon = { - link = "LspKindOperator" - }, - AerialPackageIcon = { - link = "LspKindPackage" - }, - AerialPropertyIcon = { - link = "LspKindProperty" - }, - AerialReferenceIcon = { - link = "LspKindReference" - }, - AerialSnippetIcon = { - link = "LspKindSnippet" - }, - AerialStringIcon = { - link = "LspKindString" - }, - AerialStructIcon = { - link = "LspKindStruct" - }, - AerialTextIcon = { - link = "LspKindText" - }, - AerialTypeParameterIcon = { - link = "LspKindTypeParameter" - }, - AerialUnitIcon = { - link = "LspKindUnit" - }, - AerialValueIcon = { - link = "LspKindValue" - }, - AerialVariableIcon = { - link = "LspKindVariable" - }, + AerialNullIcon = "LspKindNull", + AerialNumberIcon = "LspKindNumber", + AerialObjectIcon = "LspKindObject", + AerialOperatorIcon = "LspKindOperator", + AerialPackageIcon = "LspKindPackage", + AerialPropertyIcon = "LspKindProperty", + AerialReferenceIcon = "LspKindReference", + AerialSnippetIcon = "LspKindSnippet", + AerialStringIcon = "LspKindString", + AerialStructIcon = "LspKindStruct", + AerialTextIcon = "LspKindText", + AerialTypeParameterIcon = "LspKindTypeParameter", + AerialUnitIcon = "LspKindUnit", + AerialValueIcon = "LspKindValue", + AerialVariableIcon = "LspKindVariable", AlphaButtons = { fg = "#007197" }, @@ -619,7 +373,8 @@ local highlights = { fg = "#b15c00" }, Bold = { - bold = true + bold = true, + fg = "#3760bf" }, BufferAlternate = { bg = "#a8aecb", @@ -694,102 +449,102 @@ local highlights = { fg = "#8c6c3e" }, BufferInactive = { - bg = "#d5d7e1", - fg = "#7f84a4" + bg = "#d5d8e2", + fg = "#8087a9" }, BufferInactiveERROR = { - bg = "#d5d7e1", - fg = "#db5d60" + bg = "#d5d8e2", + fg = "#cb6364" }, BufferInactiveHINT = { - bg = "#d5d7e1", - fg = "#10715f" + bg = "#d5d8e2", + fg = "#3b9d8b" }, BufferInactiveINFO = { - bg = "#d5d7e1", - fg = "#086c80" + bg = "#d5d8e2", + fg = "#3399ac" }, BufferInactiveIndex = { - bg = "#d5d7e1", + bg = "#d5d8e2", fg = "#68709a" }, BufferInactiveMod = { - bg = "#d5d7e1", - fg = "#a48150" + bg = "#d5d8e2", + fg = "#9d8460" }, BufferInactiveSign = { - bg = "#d5d7e1", + bg = "#d5d8e2", fg = "#e1e2e7" }, BufferInactiveTarget = { - bg = "#d5d7e1", + bg = "#d5d8e2", fg = "#f52a65" }, BufferInactiveWARN = { - bg = "#d5d7e1", - fg = "#a48150" + bg = "#d5d8e2", + fg = "#9d8460" }, BufferLineIndicatorSelected = { fg = "#506d9c" }, BufferOffset = { - bg = "#e9e9ec", + bg = "#d0d5e3", fg = "#68709a" }, BufferTabpageFill = { - bg = "#cacddc", + bg = "#cacddd", fg = "#68709a" }, BufferTabpages = { - bg = "#e9e9ec", + bg = "#d0d5e3", fg = "NONE" }, BufferVisible = { - bg = "#e9e9ec", + bg = "#d0d5e3", fg = "#3760bf" }, BufferVisibleERROR = { - bg = "#e9e9ec", + bg = "#d0d5e3", fg = "#c64343" }, BufferVisibleHINT = { - bg = "#e9e9ec", + bg = "#d0d5e3", fg = "#118c74" }, BufferVisibleINFO = { - bg = "#e9e9ec", + bg = "#d0d5e3", fg = "#07879d" }, BufferVisibleIndex = { - bg = "#e9e9ec", + bg = "#d0d5e3", fg = "#07879d" }, BufferVisibleMod = { - bg = "#e9e9ec", + bg = "#d0d5e3", fg = "#8c6c3e" }, BufferVisibleSign = { - bg = "#e9e9ec", + bg = "#d0d5e3", fg = "#07879d" }, BufferVisibleTarget = { - bg = "#e9e9ec", + bg = "#d0d5e3", fg = "#f52a65" }, BufferVisibleWARN = { - bg = "#e9e9ec", + bg = "#d0d5e3", fg = "#8c6c3e" }, Character = { fg = "#587539" }, CmpDocumentation = { - bg = "#e9e9ec", + bg = "#d0d5e3", fg = "#3760bf" }, CmpDocumentationBorder = { - bg = "#e9e9ec", - fg = "#2496ac" + bg = "#d0d5e3", + fg = "#4094a3" }, CmpGhostText = { fg = "#a1a6c5" @@ -811,28 +566,16 @@ local highlights = { bg = "NONE", fg = "#188092" }, - CmpItemKindArray = { - link = "LspKindArray" - }, - CmpItemKindBoolean = { - link = "LspKindBoolean" - }, - CmpItemKindClass = { - link = "LspKindClass" - }, + CmpItemKindArray = "LspKindArray", + CmpItemKindBoolean = "LspKindBoolean", + CmpItemKindClass = "LspKindClass", CmpItemKindCodeium = { bg = "NONE", fg = "#118c74" }, - CmpItemKindColor = { - link = "LspKindColor" - }, - CmpItemKindConstant = { - link = "LspKindConstant" - }, - CmpItemKindConstructor = { - link = "LspKindConstructor" - }, + CmpItemKindColor = "LspKindColor", + CmpItemKindConstant = "LspKindConstant", + CmpItemKindConstructor = "LspKindConstructor", CmpItemKindCopilot = { bg = "NONE", fg = "#118c74" @@ -841,109 +584,51 @@ local highlights = { bg = "NONE", fg = "#6172b0" }, - CmpItemKindEnum = { - link = "LspKindEnum" - }, - CmpItemKindEnumMember = { - link = "LspKindEnumMember" - }, - CmpItemKindEvent = { - link = "LspKindEvent" - }, - CmpItemKindField = { - link = "LspKindField" - }, - CmpItemKindFile = { - link = "LspKindFile" - }, - CmpItemKindFolder = { - link = "LspKindFolder" - }, - CmpItemKindFunction = { - link = "LspKindFunction" - }, - CmpItemKindInterface = { - link = "LspKindInterface" - }, - CmpItemKindKey = { - link = "LspKindKey" - }, - CmpItemKindKeyword = { - link = "LspKindKeyword" - }, - CmpItemKindMethod = { - link = "LspKindMethod" - }, - CmpItemKindModule = { - link = "LspKindModule" - }, - CmpItemKindNamespace = { - link = "LspKindNamespace" - }, - CmpItemKindNull = { - link = "LspKindNull" - }, - CmpItemKindNumber = { - link = "LspKindNumber" - }, - CmpItemKindObject = { - link = "LspKindObject" - }, - CmpItemKindOperator = { - link = "LspKindOperator" - }, - CmpItemKindPackage = { - link = "LspKindPackage" - }, - CmpItemKindProperty = { - link = "LspKindProperty" - }, - CmpItemKindReference = { - link = "LspKindReference" - }, - CmpItemKindSnippet = { - link = "LspKindSnippet" - }, - CmpItemKindString = { - link = "LspKindString" - }, - CmpItemKindStruct = { - link = "LspKindStruct" - }, + CmpItemKindEnum = "LspKindEnum", + CmpItemKindEnumMember = "LspKindEnumMember", + CmpItemKindEvent = "LspKindEvent", + CmpItemKindField = "LspKindField", + CmpItemKindFile = "LspKindFile", + CmpItemKindFolder = "LspKindFolder", + CmpItemKindFunction = "LspKindFunction", + CmpItemKindInterface = "LspKindInterface", + CmpItemKindKey = "LspKindKey", + CmpItemKindKeyword = "LspKindKeyword", + CmpItemKindMethod = "LspKindMethod", + CmpItemKindModule = "LspKindModule", + CmpItemKindNamespace = "LspKindNamespace", + CmpItemKindNull = "LspKindNull", + CmpItemKindNumber = "LspKindNumber", + CmpItemKindObject = "LspKindObject", + CmpItemKindOperator = "LspKindOperator", + CmpItemKindPackage = "LspKindPackage", + CmpItemKindProperty = "LspKindProperty", + CmpItemKindReference = "LspKindReference", + CmpItemKindSnippet = "LspKindSnippet", + CmpItemKindString = "LspKindString", + CmpItemKindStruct = "LspKindStruct", CmpItemKindTabNine = { bg = "NONE", fg = "#118c74" }, - CmpItemKindText = { - link = "LspKindText" - }, - CmpItemKindTypeParameter = { - link = "LspKindTypeParameter" - }, - CmpItemKindUnit = { - link = "LspKindUnit" - }, - CmpItemKindValue = { - link = "LspKindValue" - }, - CmpItemKindVariable = { - link = "LspKindVariable" - }, + CmpItemKindText = "LspKindText", + CmpItemKindTypeParameter = "LspKindTypeParameter", + CmpItemKindUnit = "LspKindUnit", + CmpItemKindValue = "LspKindValue", + CmpItemKindVariable = "LspKindVariable", CmpItemMenu = { bg = "NONE", fg = "#848cb5" }, CodeBlock = { - bg = "#e9e9ec" + bg = "#d0d5e3" }, ColorColumn = { - bg = "#e9e9ed" + bg = "#b4b5b9" }, Comment = { fg = "#848cb5", - style = { - italic = true - } + italic = true }, Conceal = { fg = "#68709a" @@ -951,9 +636,7 @@ local highlights = { Constant = { fg = "#b15c00" }, - CurSearch = { - link = "IncSearch" - }, + CurSearch = "IncSearch", Cursor = { bg = "#3760bf", fg = "#e1e2e7" @@ -969,10 +652,11 @@ local highlights = { bg = "#c4c8da" }, CursorLineNr = { - fg = "#68709a" + bold = true, + fg = "#b15c00" }, DapStoppedLine = { - bg = "#d0cccf" + bg = "#d9d6d6" }, DashboardCenter = { fg = "#9854f1" @@ -1005,9 +689,7 @@ local highlights = { DefinitionIcon = { fg = "#2e7de9" }, - Delimiter = { - link = "Special" - }, + Delimiter = "Special", DiagnosticError = { fg = "#c64343" }, @@ -1017,9 +699,7 @@ local highlights = { DiagnosticInfo = { fg = "#07879d" }, - DiagnosticInformation = { - link = "DiagnosticInfo" - }, + DiagnosticInformation = "DiagnosticInfo", DiagnosticUnderlineError = { sp = "#c64343", undercurl = true @@ -1040,35 +720,33 @@ local highlights = { fg = "#a1a6c5" }, DiagnosticVirtualTextError = { - bg = "#e0d3dd", + bg = "#ded2d7", fg = "#c64343" }, DiagnosticVirtualTextHint = { - bg = "#acd7eb", + bg = "#ccd9dc", fg = "#118c74" }, DiagnosticVirtualTextInfo = { - bg = "#b7d3ed", + bg = "#cbd9e0", fg = "#07879d" }, DiagnosticVirtualTextWarn = { - bg = "#d0cccf", + bg = "#d9d6d6", fg = "#8c6c3e" }, DiagnosticWarn = { fg = "#8c6c3e" }, - DiagnosticWarning = { - link = "DiagnosticWarn" - }, + DiagnosticWarning = "DiagnosticWarn", DiffAdd = { - bg = "#aecde6" + bg = "#c8d6dc" }, DiffChange = { - bg = "#d6d8e3" + bg = "#d5d9e4" }, DiffDelete = { - bg = "#dfccd4" + bg = "#ddcace" }, DiffText = { bg = "#92a6d5" @@ -1085,9 +763,6 @@ local highlights = { ErrorMsg = { fg = "#c64343" }, - FernBranchText = { - fg = "#2e7de9" - }, FlashBackdrop = { fg = "#8990b3" }, @@ -1097,12 +772,12 @@ local highlights = { fg = "#3760bf" }, FloatBorder = { - bg = "#e9e9ec", - fg = "#2496ac" + bg = "#d0d5e3", + fg = "#4094a3" }, FloatTitle = { - bg = "#e9e9ec", - fg = "#2496ac" + bg = "#d0d5e3", + fg = "#4094a3" }, FoldColumn = { bg = "#e1e2e7", @@ -1117,35 +792,69 @@ local highlights = { fg = "#3760bf" }, Function = { - fg = "#2e7de9", - style = {} + fg = "#2e7de9" + }, + FzfLuaBorder = { + bg = "#d0d5e3", + fg = "#4094a3" + }, + FzfLuaCursor = "IncSearch", + FzfLuaDirPart = { + fg = "#6172b0" + }, + FzfLuaFilePart = "FzfLuaFzfNormal", + FzfLuaFzfCursorLine = "Visual", + FzfLuaFzfNormal = { + fg = "#3760bf" + }, + FzfLuaFzfPointer = { + fg = "#d20065" + }, + FzfLuaFzfSeparator = { + bg = "#d0d5e3", + fg = "#b15c00" + }, + FzfLuaHeaderBind = "@punctuation.special", + FzfLuaHeaderText = "Title", + FzfLuaNormal = { + bg = "#d0d5e3", + fg = "#3760bf" + }, + FzfLuaPath = "Directory", + FzfLuaPreviewTitle = { + bg = "#d0d5e3", + fg = "#4094a3" + }, + FzfLuaTitle = { + bg = "#d0d5e3", + fg = "#b15c00" }, GitGutterAdd = { - fg = "#399a96" + fg = "#4197a4" }, GitGutterAddLineNr = { - fg = "#399a96" + fg = "#4197a4" }, GitGutterChange = { - fg = "#6482bd" + fg = "#506d9c" }, GitGutterChangeLineNr = { - fg = "#6482bd" + fg = "#506d9c" }, GitGutterDelete = { - fg = "#c25d64" + fg = "#c47981" }, GitGutterDeleteLineNr = { - fg = "#c25d64" + fg = "#c47981" }, GitSignsAdd = { - fg = "#399a96" + fg = "#4197a4" }, GitSignsChange = { - fg = "#6482bd" + fg = "#506d9c" }, GitSignsDelete = { - fg = "#c25d64" + fg = "#c47981" }, GlyphPalette1 = { fg = "#c64343" @@ -1168,29 +877,24 @@ local highlights = { GlyphPalette9 = { fg = "#f52a65" }, - Headline = { - link = "Headline1" - }, + Headline = "Headline1", Headline1 = { - bg = "#d6d8e3" + bg = "#d8dde7" }, Headline2 = { - bg = "#d8d7dc" + bg = "#dddcdf" }, Headline3 = { - bg = "#d3d7de" + bg = "#daddde" }, Headline4 = { - bg = "#cfdbe9" + bg = "#d7dee1" }, Headline5 = { - bg = "#d8d8df" + bg = "#dddbe8" }, Headline6 = { - bg = "#dad9e1" - }, - Hlargs = { - fg = "#8c6c3e" + bg = "#dcdae5" }, HopNextKey = { bold = true, @@ -1201,7 +905,7 @@ local highlights = { fg = "#07879d" }, HopNextKey2 = { - fg = "#168aa3" + fg = "#5eabbb" }, HopUnmatched = { fg = "#8990b3" @@ -1211,12 +915,11 @@ local highlights = { nocombine = true }, IblScope = { - fg = "#7847bd", + fg = "#188092", nocombine = true }, Identifier = { - fg = "#9854f1", - style = {} + fg = "#9854f1" }, IlluminatedWordRead = { bg = "#a8aecb" @@ -1229,24 +932,31 @@ local highlights = { }, IncSearch = { bg = "#b15c00", - fg = "#e9e9ed" + fg = "#b4b5b9" }, IndentBlanklineChar = { fg = "#a8aecb", nocombine = true }, IndentBlanklineContextChar = { - fg = "#7847bd", + fg = "#188092", + nocombine = true + }, + IndentLine = { + fg = "#a8aecb", + nocombine = true + }, + IndentLineCurrent = { + fg = "#188092", nocombine = true }, Italic = { + fg = "#3760bf", italic = true }, Keyword = { fg = "#007197", - style = { - italic = true - } + italic = true }, LazyProgressDone = { bold = true, @@ -1272,179 +982,74 @@ local highlights = { bold = true, fg = "#3760bf" }, - LightspeedGreyWash = { - fg = "#8990b3" - }, - LightspeedLabel = { - bold = true, - fg = "#d20065", - underline = true - }, - LightspeedLabelDistant = { - bold = true, - fg = "#387068", - underline = true - }, - LightspeedLabelDistantOverlapped = { - fg = "#38919f", - underline = true - }, - LightspeedLabelOverlapped = { - fg = "#d20065", - underline = true - }, - LightspeedMaskedChar = { - fg = "#b15c00" - }, - LightspeedOneCharMatch = { - bg = "#d20065", - bold = true, - fg = "#3760bf" - }, - LightspeedPendingOpArea = { - bg = "#d20065", - fg = "#3760bf" - }, - LightspeedShortcut = { - bg = "#d20065", - bold = true, - fg = "#3760bf", - underline = true + LineNr = { + fg = "#a8aecb" }, - LightspeedUnlabeledMatch = { - bold = true, - fg = "#07879d" + LineNrAbove = { + fg = "#a8aecb" }, - LineNr = { + LineNrBelow = { fg = "#a8aecb" }, LspCodeLens = { fg = "#848cb5" }, LspFloatWinBorder = { - fg = "#2496ac" + fg = "#4094a3" }, LspFloatWinNormal = { - bg = "#e9e9ec" + bg = "#d0d5e3" }, LspInfoBorder = { - bg = "#e9e9ec", - fg = "#2496ac" + bg = "#d0d5e3", + fg = "#4094a3" }, LspInlayHint = { - bg = "#d9dbe5", + bg = "#d9dce5", fg = "#8990b3" }, - LspKindArray = { - link = "@punctuation.bracket" - }, - LspKindBoolean = { - link = "@boolean" + LspKindArray = "@punctuation.bracket", + LspKindBoolean = "@boolean", + LspKindClass = "@type", + LspKindColor = "Special", + LspKindConstant = "@constant", + LspKindConstructor = "@constructor", + LspKindEnum = "@lsp.type.enum", + LspKindEnumMember = "@lsp.type.enumMember", + LspKindEvent = "Special", + LspKindField = "@variable.member", + LspKindFile = "Normal", + LspKindFolder = "Directory", + LspKindFunction = "@function", + LspKindInterface = "@lsp.type.interface", + LspKindKey = "@variable.member", + LspKindKeyword = "@lsp.type.keyword", + LspKindMethod = "@function.method", + LspKindModule = "@module", + LspKindNamespace = "@module", + LspKindNull = "@constant.builtin", + LspKindNumber = "@number", + LspKindObject = "@constant", + LspKindOperator = "@operator", + LspKindPackage = "@module", + LspKindProperty = "@property", + LspKindReference = "@markup.link", + LspKindSnippet = "Conceal", + LspKindString = "@string", + LspKindStruct = "@lsp.type.struct", + LspKindText = "@markup", + LspKindTypeParameter = "@lsp.type.typeParameter", + LspKindUnit = "@lsp.type.struct", + LspKindValue = "@string", + LspKindVariable = "@variable", + LspReferenceRead = { + bg = "#a8aecb" }, - LspKindClass = { - link = "@type" + LspReferenceText = { + bg = "#a8aecb" }, - LspKindColor = { - link = "Special" - }, - LspKindConstant = { - link = "@constant" - }, - LspKindConstructor = { - link = "@constructor" - }, - LspKindEnum = { - link = "@lsp.type.enum" - }, - LspKindEnumMember = { - link = "@lsp.type.enumMember" - }, - LspKindEvent = { - link = "Special" - }, - LspKindField = { - link = "@variable.member" - }, - LspKindFile = { - link = "Normal" - }, - LspKindFolder = { - link = "Directory" - }, - LspKindFunction = { - link = "@function" - }, - LspKindInterface = { - link = "@lsp.type.interface" - }, - LspKindKey = { - link = "@variable.member" - }, - LspKindKeyword = { - link = "@lsp.type.keyword" - }, - LspKindMethod = { - link = "@function.method" - }, - LspKindModule = { - link = "@module" - }, - LspKindNamespace = { - link = "@module" - }, - LspKindNull = { - link = "@constant.builtin" - }, - LspKindNumber = { - link = "@number" - }, - LspKindObject = { - link = "@constant" - }, - LspKindOperator = { - link = "@operator" - }, - LspKindPackage = { - link = "@module" - }, - LspKindProperty = { - link = "@property" - }, - LspKindReference = { - link = "@markup.link" - }, - LspKindSnippet = { - link = "Conceal" - }, - LspKindString = { - link = "@string" - }, - LspKindStruct = { - link = "@lsp.type.struct" - }, - LspKindText = { - link = "@markup" - }, - LspKindTypeParameter = { - link = "@lsp.type.typeParameter" - }, - LspKindUnit = { - link = "@lsp.type.struct" - }, - LspKindValue = { - link = "@string" - }, - LspKindVariable = { - link = "@variable" - }, - LspReferenceRead = { - bg = "#a8aecb" - }, - LspReferenceText = { - bg = "#a8aecb" - }, - LspReferenceWrite = { - bg = "#a8aecb" + LspReferenceWrite = { + bg = "#a8aecb" }, LspSagaBorderTitle = { fg = "#007197" @@ -1462,7 +1067,7 @@ local highlights = { fg = "#587539" }, LspSagaFinderSelection = { - fg = "#b6bfe2" + fg = "#b7c1e3" }, LspSagaHoverBorder = { fg = "#2e7de9" @@ -1474,13 +1079,25 @@ local highlights = { fg = "#f52a65" }, LspSignatureActiveParameter = { - bg = "#d0d3e4", + bg = "#d0d5e5", bold = true }, MatchParen = { bold = true, fg = "#b15c00" }, + MiniAnimateCursor = { + nocombine = true, + reverse = true + }, + MiniAnimateNormalFloat = "NormalFloat", + MiniClueBorder = "FloatBorder", + MiniClueDescGroup = "DiagnosticFloatingWarn", + MiniClueDescSingle = "NormalFloat", + MiniClueNextKey = "DiagnosticFloatingHint", + MiniClueNextKeyWithPostkeys = "DiagnosticFloatingError", + MiniClueSeparator = "DiagnosticFloatingInfo", + MiniClueTitle = "FloatTitle", MiniCompletionActiveParameter = { underline = true }, @@ -1490,6 +1107,96 @@ local highlights = { MiniCursorwordCurrent = { bg = "#a8aecb" }, + MiniDepsChangeAdded = "diffAdded", + MiniDepsChangeRemoved = "diffRemoved", + MiniDepsHint = "DiagnosticHint", + MiniDepsInfo = "DiagnosticInfo", + MiniDepsMsgBreaking = "DiagnosticWarn", + MiniDepsPlaceholder = "Comment", + MiniDepsTitle = "Title", + MiniDepsTitleError = { + bg = "#c47981", + fg = "#b4b5b9" + }, + MiniDepsTitleSame = "Comment", + MiniDepsTitleUpdate = { + bg = "#4197a4", + fg = "#b4b5b9" + }, + MiniDiffOverAdd = "DiffAdd", + MiniDiffOverChange = "DiffText", + MiniDiffOverContext = "DiffChange", + MiniDiffOverDelete = "DiffDelete", + MiniDiffSignAdd = { + fg = "#4197a4" + }, + MiniDiffSignChange = { + fg = "#506d9c" + }, + MiniDiffSignDelete = { + fg = "#c47981" + }, + MiniFilesBorder = "FloatBorder", + MiniFilesBorderModified = "DiagnosticFloatingWarn", + MiniFilesCursorLine = "CursorLine", + MiniFilesDirectory = "Directory", + MiniFilesFile = { + fg = "#3760bf" + }, + MiniFilesNormal = "NormalFloat", + MiniFilesTitle = "FloatTitle", + MiniFilesTitleFocused = { + bg = "#d0d5e3", + bold = true, + fg = "#4094a3" + }, + MiniHipatternsFixme = { + bg = "#c64343", + bold = true, + fg = "#b4b5b9" + }, + MiniHipatternsHack = { + bg = "#8c6c3e", + bold = true, + fg = "#b4b5b9" + }, + MiniHipatternsNote = { + bg = "#118c74", + bold = true, + fg = "#b4b5b9" + }, + MiniHipatternsTodo = { + bg = "#07879d", + bold = true, + fg = "#b4b5b9" + }, + MiniIconsAzure = { + fg = "#07879d" + }, + MiniIconsBlue = { + fg = "#2e7de9" + }, + MiniIconsCyan = { + fg = "#118c74" + }, + MiniIconsGreen = { + fg = "#587539" + }, + MiniIconsGrey = { + fg = "#3760bf" + }, + MiniIconsOrange = { + fg = "#b15c00" + }, + MiniIconsPurple = { + fg = "#7847bd" + }, + MiniIconsRed = { + fg = "#f52a65" + }, + MiniIconsYellow = { + fg = "#8c6c3e" + }, MiniIndentscopePrefix = { nocombine = true }, @@ -1499,13 +1206,51 @@ local highlights = { }, MiniJump = { bg = "#d20065", - fg = "#474747" + fg = "#ffffff" }, + MiniJump2dDim = "Comment", MiniJump2dSpot = { bold = true, fg = "#d20065", nocombine = true }, + MiniJump2dSpotAhead = { + bg = "#d0d5e3", + fg = "#118c74", + nocombine = true + }, + MiniJump2dSpotUnique = { + bold = true, + fg = "#b15c00", + nocombine = true + }, + MiniMapNormal = "NormalFloat", + MiniMapSymbolCount = "Special", + MiniMapSymbolLine = "Title", + MiniMapSymbolView = "Delimiter", + MiniNotifyBorder = "FloatBorder", + MiniNotifyNormal = "NormalFloat", + MiniNotifyTitle = "FloatTitle", + MiniOperatorsExchangeFrom = "IncSearch", + MiniPickBorder = "FloatBorder", + MiniPickBorderBusy = "DiagnosticFloatingWarn", + MiniPickBorderText = { + bg = "#d0d5e3", + fg = "#118c74" + }, + MiniPickHeader = "DiagnosticFloatingHint", + MiniPickIconDirectory = "Directory", + MiniPickIconFile = "MiniPickNormal", + MiniPickMatchCurrent = "CursorLine", + MiniPickMatchMarked = "Visual", + MiniPickMatchRanges = "DiagnosticFloatingHint", + MiniPickNormal = "NormalFloat", + MiniPickPreviewLine = "CursorLine", + MiniPickPreviewRegion = "IncSearch", + MiniPickPrompt = { + bg = "#d0d5e3", + fg = "#07879d" + }, MiniStarterCurrent = { nocombine = true }, @@ -1518,16 +1263,14 @@ local highlights = { }, MiniStarterInactive = { fg = "#848cb5", - style = { - italic = true - } + italic = true }, MiniStarterItem = { bg = "#e1e2e7", fg = "#3760bf" }, MiniStarterItemBullet = { - fg = "#2496ac" + fg = "#4094a3" }, MiniStarterItemPrefix = { fg = "#8c6c3e" @@ -1539,64 +1282,64 @@ local highlights = { fg = "#188092" }, MiniStatuslineDevinfo = { - bg = "#c4c8da", + bg = "#a8aecb", fg = "#6172b0" }, MiniStatuslineFileinfo = { - bg = "#c4c8da", + bg = "#a8aecb", fg = "#6172b0" }, MiniStatuslineFilename = { - bg = "#a8aecb", + bg = "#c4c8da", fg = "#6172b0" }, MiniStatuslineInactive = { - bg = "#e9e9ec", + bg = "#d0d5e3", fg = "#2e7de9" }, MiniStatuslineModeCommand = { bg = "#8c6c3e", bold = true, - fg = "#e9e9ed" + fg = "#b4b5b9" }, MiniStatuslineModeInsert = { bg = "#587539", bold = true, - fg = "#e9e9ed" + fg = "#b4b5b9" }, MiniStatuslineModeNormal = { bg = "#2e7de9", bold = true, - fg = "#e9e9ed" + fg = "#b4b5b9" }, MiniStatuslineModeOther = { bg = "#118c74", bold = true, - fg = "#e9e9ed" + fg = "#b4b5b9" }, MiniStatuslineModeReplace = { bg = "#f52a65", bold = true, - fg = "#e9e9ed" + fg = "#b4b5b9" }, MiniStatuslineModeVisual = { bg = "#9854f1", bold = true, - fg = "#e9e9ed" + fg = "#b4b5b9" }, MiniSurround = { bg = "#b15c00", - fg = "#e9e9ed" + fg = "#b4b5b9" }, MiniTablineCurrent = { bg = "#a8aecb", fg = "#3760bf" }, MiniTablineFill = { - bg = "#e9e9ed" + bg = "#b4b5b9" }, MiniTablineHidden = { - bg = "#e9e9ec", + bg = "#d0d5e3", fg = "#68709a" }, MiniTablineModifiedCurrent = { @@ -1604,19 +1347,19 @@ local highlights = { fg = "#8c6c3e" }, MiniTablineModifiedHidden = { - bg = "#e9e9ec", - fg = "#7b613d" + bg = "#d0d5e3", + fg = "#a68f71" }, MiniTablineModifiedVisible = { - bg = "#e9e9ec", + bg = "#d0d5e3", fg = "#8c6c3e" }, MiniTablineTabpagesection = { - bg = "#e9e9ec", + bg = "#d0d5e3", fg = "NONE" }, MiniTablineVisible = { - bg = "#e9e9ec", + bg = "#d0d5e3", fg = "#3760bf" }, MiniTestEmphasis = { @@ -1643,108 +1386,40 @@ local highlights = { MsgArea = { fg = "#6172b0" }, - NavicIconsArray = { - link = "LspKindArray" - }, - NavicIconsBoolean = { - link = "LspKindBoolean" - }, - NavicIconsClass = { - link = "LspKindClass" - }, - NavicIconsColor = { - link = "LspKindColor" - }, - NavicIconsConstant = { - link = "LspKindConstant" - }, - NavicIconsConstructor = { - link = "LspKindConstructor" - }, - NavicIconsEnum = { - link = "LspKindEnum" - }, - NavicIconsEnumMember = { - link = "LspKindEnumMember" - }, - NavicIconsEvent = { - link = "LspKindEvent" - }, - NavicIconsField = { - link = "LspKindField" - }, - NavicIconsFile = { - link = "LspKindFile" - }, - NavicIconsFolder = { - link = "LspKindFolder" - }, - NavicIconsFunction = { - link = "LspKindFunction" - }, - NavicIconsInterface = { - link = "LspKindInterface" - }, - NavicIconsKey = { - link = "LspKindKey" - }, - NavicIconsKeyword = { - link = "LspKindKeyword" - }, - NavicIconsMethod = { - link = "LspKindMethod" - }, - NavicIconsModule = { - link = "LspKindModule" - }, - NavicIconsNamespace = { - link = "LspKindNamespace" - }, - NavicIconsNull = { - link = "LspKindNull" - }, - NavicIconsNumber = { - link = "LspKindNumber" - }, - NavicIconsObject = { - link = "LspKindObject" - }, - NavicIconsOperator = { - link = "LspKindOperator" - }, - NavicIconsPackage = { - link = "LspKindPackage" - }, - NavicIconsProperty = { - link = "LspKindProperty" - }, - NavicIconsReference = { - link = "LspKindReference" - }, - NavicIconsSnippet = { - link = "LspKindSnippet" - }, - NavicIconsString = { - link = "LspKindString" - }, - NavicIconsStruct = { - link = "LspKindStruct" - }, - NavicIconsText = { - link = "LspKindText" - }, - NavicIconsTypeParameter = { - link = "LspKindTypeParameter" - }, - NavicIconsUnit = { - link = "LspKindUnit" - }, - NavicIconsValue = { - link = "LspKindValue" - }, - NavicIconsVariable = { - link = "LspKindVariable" - }, + NavicIconsArray = "LspKindArray", + NavicIconsBoolean = "LspKindBoolean", + NavicIconsClass = "LspKindClass", + NavicIconsColor = "LspKindColor", + NavicIconsConstant = "LspKindConstant", + NavicIconsConstructor = "LspKindConstructor", + NavicIconsEnum = "LspKindEnum", + NavicIconsEnumMember = "LspKindEnumMember", + NavicIconsEvent = "LspKindEvent", + NavicIconsField = "LspKindField", + NavicIconsFile = "LspKindFile", + NavicIconsFolder = "LspKindFolder", + NavicIconsFunction = "LspKindFunction", + NavicIconsInterface = "LspKindInterface", + NavicIconsKey = "LspKindKey", + NavicIconsKeyword = "LspKindKeyword", + NavicIconsMethod = "LspKindMethod", + NavicIconsModule = "LspKindModule", + NavicIconsNamespace = "LspKindNamespace", + NavicIconsNull = "LspKindNull", + NavicIconsNumber = "LspKindNumber", + NavicIconsObject = "LspKindObject", + NavicIconsOperator = "LspKindOperator", + NavicIconsPackage = "LspKindPackage", + NavicIconsProperty = "LspKindProperty", + NavicIconsReference = "LspKindReference", + NavicIconsSnippet = "LspKindSnippet", + NavicIconsString = "LspKindString", + NavicIconsStruct = "LspKindStruct", + NavicIconsText = "LspKindText", + NavicIconsTypeParameter = "LspKindTypeParameter", + NavicIconsUnit = "LspKindUnit", + NavicIconsValue = "LspKindValue", + NavicIconsVariable = "LspKindVariable", NavicSeparator = { bg = "NONE", fg = "#3760bf" @@ -1756,27 +1431,56 @@ local highlights = { NeoTreeDimText = { fg = "#a8aecb" }, + NeoTreeFileName = { + fg = "#6172b0" + }, + NeoTreeGitModified = { + fg = "#b15c00" + }, + NeoTreeGitStaged = { + fg = "#387068" + }, + NeoTreeGitUntracked = { + fg = "#9854f1" + }, NeoTreeNormal = { - bg = "#e9e9ec", + bg = "#d0d5e3", fg = "#6172b0" }, NeoTreeNormalNC = { - bg = "#e9e9ec", + bg = "#d0d5e3", fg = "#6172b0" }, + NeoTreeTabActive = { + bg = "#d0d5e3", + bold = true, + fg = "#2e7de9" + }, + NeoTreeTabInactive = { + bg = "#b0c3e4", + fg = "#8990b3" + }, + NeoTreeTabSeparatorActive = { + bg = "#d0d5e3", + fg = "#2e7de9" + }, + NeoTreeTabSeparatorInactive = { + bg = "#b0c3e4", + fg = "#e1e2e7" + }, NeogitBranch = { fg = "#9854f1" }, NeogitDiffAddHighlight = { - bg = "#aecde6", + bg = "#c8d6dc", fg = "#4197a4" }, NeogitDiffContextHighlight = { - bg = "#c3c6d8", + bg = "#c5c8d9", fg = "#6172b0" }, NeogitDiffDeleteHighlight = { - bg = "#dfccd4", + bg = "#ddcace", fg = "#c47981" }, NeogitHunkHeader = { @@ -1839,112 +1543,62 @@ local highlights = { NeotestWinSelect = { fg = "#2e7de9" }, - NoiceCompletionItemKindArray = { - link = "LspKindArray" + NoiceCmdlineIconInput = { + fg = "#8c6c3e" }, - NoiceCompletionItemKindBoolean = { - link = "LspKindBoolean" + NoiceCmdlineIconLua = { + fg = "#188092" }, - NoiceCompletionItemKindClass = { - link = "LspKindClass" + NoiceCmdlinePopupBorderInput = { + fg = "#8c6c3e" }, - NoiceCompletionItemKindColor = { - link = "LspKindColor" + NoiceCmdlinePopupBorderLua = { + fg = "#188092" }, - NoiceCompletionItemKindConstant = { - link = "LspKindConstant" + NoiceCmdlinePopupTitleInput = { + fg = "#8c6c3e" }, - NoiceCompletionItemKindConstructor = { - link = "LspKindConstructor" + NoiceCmdlinePopupTitleLua = { + fg = "#188092" }, + NoiceCompletionItemKindArray = "LspKindArray", + NoiceCompletionItemKindBoolean = "LspKindBoolean", + NoiceCompletionItemKindClass = "LspKindClass", + NoiceCompletionItemKindColor = "LspKindColor", + NoiceCompletionItemKindConstant = "LspKindConstant", + NoiceCompletionItemKindConstructor = "LspKindConstructor", NoiceCompletionItemKindDefault = { bg = "NONE", fg = "#6172b0" }, - NoiceCompletionItemKindEnum = { - link = "LspKindEnum" - }, - NoiceCompletionItemKindEnumMember = { - link = "LspKindEnumMember" - }, - NoiceCompletionItemKindEvent = { - link = "LspKindEvent" - }, - NoiceCompletionItemKindField = { - link = "LspKindField" - }, - NoiceCompletionItemKindFile = { - link = "LspKindFile" - }, - NoiceCompletionItemKindFolder = { - link = "LspKindFolder" - }, - NoiceCompletionItemKindFunction = { - link = "LspKindFunction" - }, - NoiceCompletionItemKindInterface = { - link = "LspKindInterface" - }, - NoiceCompletionItemKindKey = { - link = "LspKindKey" - }, - NoiceCompletionItemKindKeyword = { - link = "LspKindKeyword" - }, - NoiceCompletionItemKindMethod = { - link = "LspKindMethod" - }, - NoiceCompletionItemKindModule = { - link = "LspKindModule" - }, - NoiceCompletionItemKindNamespace = { - link = "LspKindNamespace" - }, - NoiceCompletionItemKindNull = { - link = "LspKindNull" - }, - NoiceCompletionItemKindNumber = { - link = "LspKindNumber" - }, - NoiceCompletionItemKindObject = { - link = "LspKindObject" - }, - NoiceCompletionItemKindOperator = { - link = "LspKindOperator" - }, - NoiceCompletionItemKindPackage = { - link = "LspKindPackage" - }, - NoiceCompletionItemKindProperty = { - link = "LspKindProperty" - }, - NoiceCompletionItemKindReference = { - link = "LspKindReference" - }, - NoiceCompletionItemKindSnippet = { - link = "LspKindSnippet" - }, - NoiceCompletionItemKindString = { - link = "LspKindString" - }, - NoiceCompletionItemKindStruct = { - link = "LspKindStruct" - }, - NoiceCompletionItemKindText = { - link = "LspKindText" - }, - NoiceCompletionItemKindTypeParameter = { - link = "LspKindTypeParameter" - }, - NoiceCompletionItemKindUnit = { - link = "LspKindUnit" - }, - NoiceCompletionItemKindValue = { - link = "LspKindValue" - }, - NoiceCompletionItemKindVariable = { - link = "LspKindVariable" - }, + NoiceCompletionItemKindEnum = "LspKindEnum", + NoiceCompletionItemKindEnumMember = "LspKindEnumMember", + NoiceCompletionItemKindEvent = "LspKindEvent", + NoiceCompletionItemKindField = "LspKindField", + NoiceCompletionItemKindFile = "LspKindFile", + NoiceCompletionItemKindFolder = "LspKindFolder", + NoiceCompletionItemKindFunction = "LspKindFunction", + NoiceCompletionItemKindInterface = "LspKindInterface", + NoiceCompletionItemKindKey = "LspKindKey", + NoiceCompletionItemKindKeyword = "LspKindKeyword", + NoiceCompletionItemKindMethod = "LspKindMethod", + NoiceCompletionItemKindModule = "LspKindModule", + NoiceCompletionItemKindNamespace = "LspKindNamespace", + NoiceCompletionItemKindNull = "LspKindNull", + NoiceCompletionItemKindNumber = "LspKindNumber", + NoiceCompletionItemKindObject = "LspKindObject", + NoiceCompletionItemKindOperator = "LspKindOperator", + NoiceCompletionItemKindPackage = "LspKindPackage", + NoiceCompletionItemKindProperty = "LspKindProperty", + NoiceCompletionItemKindReference = "LspKindReference", + NoiceCompletionItemKindSnippet = "LspKindSnippet", + NoiceCompletionItemKindString = "LspKindString", + NoiceCompletionItemKindStruct = "LspKindStruct", + NoiceCompletionItemKindText = "LspKindText", + NoiceCompletionItemKindTypeParameter = "LspKindTypeParameter", + NoiceCompletionItemKindUnit = "LspKindUnit", + NoiceCompletionItemKindValue = "LspKindValue", + NoiceCompletionItemKindVariable = "LspKindVariable", NonText = { fg = "#8990b3" }, @@ -1953,7 +1607,7 @@ local highlights = { fg = "#3760bf" }, NormalFloat = { - bg = "#e9e9ec", + bg = "#d0d5e3", fg = "#3760bf" }, NormalNC = { @@ -1961,7 +1615,7 @@ local highlights = { fg = "#3760bf" }, NormalSB = { - bg = "#e9e9ec", + bg = "#d0d5e3", fg = "#6172b0" }, NotifyBackground = { @@ -1974,7 +1628,7 @@ local highlights = { }, NotifyDEBUGBorder = { bg = "#e1e2e7", - fg = "#c4c6d6" + fg = "#c5c8d8" }, NotifyDEBUGIcon = { fg = "#848cb5" @@ -1988,7 +1642,7 @@ local highlights = { }, NotifyERRORBorder = { bg = "#e1e2e7", - fg = "#dbb6bb" + fg = "#d9b2b6" }, NotifyERRORIcon = { fg = "#c64343" @@ -2002,7 +1656,7 @@ local highlights = { }, NotifyINFOBorder = { bg = "#e1e2e7", - fg = "#44bbe2" + fg = "#a0c7d1" }, NotifyINFOIcon = { fg = "#07879d" @@ -2016,7 +1670,7 @@ local highlights = { }, NotifyTRACEBorder = { bg = "#e1e2e7", - fg = "#b9b3cd" + fg = "#c2b4da" }, NotifyTRACEIcon = { fg = "#7847bd" @@ -2030,7 +1684,7 @@ local highlights = { }, NotifyWARNBorder = { bg = "#e1e2e7", - fg = "#c0a388" + fg = "#c8bfb4" }, NotifyWARNIcon = { fg = "#8c6c3e" @@ -2058,11 +1712,11 @@ local highlights = { fg = "#a8aecb" }, NvimTreeNormal = { - bg = "#e9e9ec", + bg = "#d0d5e3", fg = "#6172b0" }, NvimTreeNormalNC = { - bg = "#e9e9ec", + bg = "#d0d5e3", fg = "#6172b0" }, NvimTreeOpenedFile = { @@ -2080,18 +1734,42 @@ local highlights = { fg = "#2e7de9" }, NvimTreeWinSeparator = { - bg = "#e9e9ec", - fg = "#e9e9ec" + bg = "#d0d5e3", + fg = "#d0d5e3" + }, + OctoDetailsLabel = { + bold = true, + fg = "#188092" + }, + OctoDetailsValue = "@variable.member", + OctoDirty = { + bold = true, + fg = "#b15c00" + }, + OctoIssueTitle = { + bold = true, + fg = "#7847bd" + }, + OctoStateChangesRequested = "DiagnosticVirtualTextWarn", + OctoStateClosed = "DiagnosticVirtualTextError", + OctoStateMerged = { + bg = "#dad4e8", + fg = "#9854f1" + }, + OctoStateOpen = "DiagnosticVirtualTextHint", + OctoStatePending = "DiagnosticVirtualTextWarn", + OctoStatusColumn = { + fg = "#188092" }, Operator = { fg = "#006a83" }, Pmenu = { - bg = "#e9e9ec", + bg = "#d0d5e3", fg = "#3760bf" }, PmenuSbar = { - bg = "#d8d8dc" + bg = "#c8cfe1" }, PmenuSel = { bg = "#b3b8d1" @@ -2106,7 +1784,7 @@ local highlights = { fg = "#2e7de9" }, QuickFixLine = { - bg = "#b6bfe2", + bg = "#b7c1e3", bold = true }, RainbowDelimiterBlue = { @@ -2197,7 +1875,7 @@ local highlights = { fg = "#a8aecb" }, SignColumnSB = { - bg = "#e9e9ec", + bg = "#d0d5e3", fg = "#a8aecb" }, Sneak = { @@ -2205,7 +1883,7 @@ local highlights = { fg = "#c4c8da" }, SneakScope = { - bg = "#b6bfe2" + bg = "#b7c1e3" }, Special = { fg = "#188092" @@ -2233,11 +1911,11 @@ local highlights = { fg = "#9854f1" }, StatusLine = { - bg = "#e9e9ec", + bg = "#d0d5e3", fg = "#6172b0" }, StatusLineNC = { - bg = "#e9e9ec", + bg = "#d0d5e3", fg = "#a8aecb" }, String = { @@ -2245,58 +1923,41 @@ local highlights = { }, Substitute = { bg = "#f52a65", - fg = "#e9e9ed" - }, - TSNodeKey = { - bold = true, - fg = "#d20065" - }, - TSNodeUnmatched = { - fg = "#8990b3" - }, - TSRainbowBlue = { - fg = "#2e7de9" - }, - TSRainbowCyan = { - fg = "#007197" - }, - TSRainbowGreen = { - fg = "#587539" - }, - TSRainbowOrange = { - fg = "#b15c00" - }, - TSRainbowRed = { - fg = "#f52a65" - }, - TSRainbowViolet = { - fg = "#7847bd" - }, - TSRainbowYellow = { - fg = "#8c6c3e" + fg = "#b4b5b9" }, TabLine = { - bg = "#e9e9ec", + bg = "#d0d5e3", fg = "#a8aecb" }, TabLineFill = { - bg = "#e9e9ed" + bg = "#b4b5b9" }, TabLineSel = { bg = "#2e7de9", - fg = "#e9e9ed" + fg = "#b4b5b9" }, TargetWord = { fg = "#007197" }, TelescopeBorder = { - bg = "#e9e9ec", - fg = "#2496ac" + bg = "#d0d5e3", + fg = "#4094a3" }, TelescopeNormal = { - bg = "#e9e9ec", + bg = "#d0d5e3", fg = "#3760bf" }, + TelescopePromptBorder = { + bg = "#d0d5e3", + fg = "#b15c00" + }, + TelescopePromptTitle = { + bg = "#d0d5e3", + fg = "#b15c00" + }, + TelescopeResultsComment = { + fg = "#8990b3" + }, Title = { bold = true, fg = "#2e7de9" @@ -2313,7 +1974,7 @@ local highlights = { fg = "#9854f1" }, TroubleNormal = { - bg = "#e9e9ec", + bg = "#d0d5e3", fg = "#3760bf" }, TroubleText = { @@ -2326,13 +1987,67 @@ local highlights = { underline = true }, VertSplit = { - fg = "#e9e9ed" + fg = "#b4b5b9" + }, + VimwikiHR = { + bg = "NONE", + fg = "#8c6c3e" + }, + VimwikiHeaderChar = { + bg = "NONE", + fg = "#8c6c3e" + }, + VimwikiHeaer1 = { + bg = "NONE", + bold = true, + fg = "#2e7de9" + }, + VimwikiHeaer2 = { + bg = "NONE", + bold = true, + fg = "#8c6c3e" + }, + VimwikiHeaer3 = { + bg = "NONE", + bold = true, + fg = "#587539" + }, + VimwikiHeaer4 = { + bg = "NONE", + bold = true, + fg = "#118c74" + }, + VimwikiHeaer5 = { + bg = "NONE", + bold = true, + fg = "#9854f1" + }, + VimwikiHeaer6 = { + bg = "NONE", + bold = true, + fg = "#7847bd" + }, + VimwikiLink = { + bg = "NONE", + fg = "#2e7de9" + }, + VimwikiList = { + bg = "NONE", + fg = "#b15c00" + }, + VimwikiMarkers = { + bg = "NONE", + fg = "#2e7de9" + }, + VimwikiTag = { + bg = "NONE", + fg = "#587539" }, Visual = { - bg = "#b6bfe2" + bg = "#b7c1e3" }, VisualNOS = { - bg = "#b6bfe2" + bg = "#b7c1e3" }, WarningMsg = { fg = "#8c6c3e" @@ -2344,7 +2059,7 @@ local highlights = { fg = "#9854f1" }, WhichKeyFloat = { - bg = "#e9e9ec" + bg = "#d0d5e3" }, WhichKeyGroup = { fg = "#2e7de9" @@ -2362,30 +2077,22 @@ local highlights = { fg = "#a8aecb" }, WildMenu = { - bg = "#b6bfe2" - }, - WinBar = { - link = "StatusLine" - }, - WinBarNC = { - link = "StatusLineNC" + bg = "#b7c1e3" }, + WinBar = "StatusLine", + WinBarNC = "StatusLineNC", WinSeparator = { bold = true, - fg = "#e9e9ed" - }, - YankyPut = { - link = "IncSearch" - }, - YankyYanked = { - link = "IncSearch" + fg = "#b4b5b9" }, + YankyPut = "Search", + YankyYanked = "IncSearch", debugBreakpoint = { - bg = "#b7d3ed", + bg = "#cbd9e0", fg = "#07879d" }, debugPC = { - bg = "#e9e9ec" + bg = "#d0d5e3" }, diffAdded = { fg = "#4197a4" @@ -2411,9 +2118,7 @@ local highlights = { diffRemoved = { fg = "#c47981" }, - dosIniLabel = { - link = "@property" - }, + dosIniLabel = "@property", healthError = { fg = "#c64343" }, @@ -2445,65 +2150,10 @@ local highlights = { bg = "#3760bf", fg = "#e1e2e7" }, - markdownCode = { - fg = "#118c74" - }, - markdownCodeBlock = { - fg = "#118c74" - }, - markdownH1 = { - bold = true, - fg = "#9854f1" - }, - markdownH2 = { - bold = true, - fg = "#2e7de9" - }, - markdownHeadingDelimiter = { - bold = true, - fg = "#b15c00" - }, - markdownLinkText = { - fg = "#2e7de9", - underline = true - }, - mkdCodeDelimiter = { - bg = "#a1a6c5", - fg = "#3760bf" - }, - mkdCodeEnd = { - bold = true, - fg = "#118c74" - }, - mkdCodeStart = { - bold = true, - fg = "#118c74" - }, qfFileName = { fg = "#2e7de9" }, qfLineNr = { fg = "#68709a" - }, - rainbowcol1 = { - fg = "#f52a65" - }, - rainbowcol2 = { - fg = "#8c6c3e" - }, - rainbowcol3 = { - fg = "#587539" - }, - rainbowcol4 = { - fg = "#118c74" - }, - rainbowcol5 = { - fg = "#2e7de9" - }, - rainbowcol6 = { - fg = "#9854f1" - }, - rainbowcol7 = { - fg = "#7847bd" } } diff --git a/extras/lua/tokyonight_moon.lua b/extras/lua/tokyonight_moon.lua index 6027ef85..23b3800f 100644 --- a/extras/lua/tokyonight_moon.lua +++ b/extras/lua/tokyonight_moon.lua @@ -1,5 +1,6 @@ local colors = { _name = "tokyonight_moon", + _style = "moon", bg = "#222436", bg_dark = "#1e2030", bg_float = "#1e2030", @@ -23,10 +24,6 @@ local colors = { cyan = "#86e1fc", dark3 = "#545c7e", dark5 = "#737aa2", - delta = { - add = "#305f6f", - delete = "#6b2e43" - }, diff = { add = "#273849", change = "#252a3f", @@ -45,11 +42,6 @@ local colors = { delete = "#e26a75", ignore = "#545c7e" }, - gitSigns = { - add = "#627259", - change = "#485a86", - delete = "#b55a67" - }, green = "#c3e88d", green1 = "#4fd6be", green2 = "#41a6b5", @@ -60,6 +52,7 @@ local colors = { none = "NONE", orange = "#ff966c", purple = "#fca7ea", + rainbow = { "#82aaff", "#ffc777", "#c3e88d", "#4fd6be", "#c099ff", "#fca7ea" }, red = "#ff757f", red1 = "#c53b53", teal = "#4fd6be", @@ -70,24 +63,13 @@ local colors = { } local highlights = { - ["@annotation"] = { - link = "PreProc" - }, - ["@attribute"] = { - link = "PreProc" - }, - ["@boolean"] = { - link = "Boolean" - }, - ["@character"] = { - link = "Character" - }, - ["@character.special"] = { - link = "SpecialChar" - }, - ["@comment"] = { - link = "Comment" - }, + ["@annotation"] = "PreProc", + ["@attribute"] = "PreProc", + ["@boolean"] = "Boolean", + ["@character"] = "Character", + ["@character.printf"] = "SpecialChar", + ["@character.special"] = "SpecialChar", + ["@comment"] = "Comment", ["@comment.error"] = { fg = "#c53b53" }, @@ -106,231 +88,103 @@ local highlights = { ["@comment.warning"] = { fg = "#ffc777" }, - ["@constant"] = { - link = "Constant" - }, - ["@constant.builtin"] = { - link = "Special" - }, - ["@constant.macro"] = { - link = "Define" - }, + ["@constant"] = "Constant", + ["@constant.builtin"] = "Special", + ["@constant.macro"] = "Define", ["@constructor"] = { fg = "#c099ff" }, ["@constructor.tsx"] = { fg = "#65bcff" }, - ["@diff.delta"] = { - link = "DiffChange" - }, - ["@diff.minus"] = { - link = "DiffDelete" - }, - ["@diff.plus"] = { - link = "DiffAdd" - }, - ["@function"] = { - link = "Function" - }, - ["@function.builtin"] = { - link = "Special" - }, - ["@function.call"] = { - link = "@function" - }, - ["@function.macro"] = { - link = "Macro" - }, - ["@function.method"] = { - link = "Function" - }, - ["@function.method.call"] = { - link = "@function.method" - }, + ["@diff.delta"] = "DiffChange", + ["@diff.minus"] = "DiffDelete", + ["@diff.plus"] = "DiffAdd", + ["@function"] = "Function", + ["@function.builtin"] = "Special", + ["@function.call"] = "@function", + ["@function.macro"] = "Macro", + ["@function.method"] = "Function", + ["@function.method.call"] = "@function.method", ["@keyword"] = { fg = "#fca7ea", - style = { - italic = true - } - }, - ["@keyword.conditional"] = { - link = "Conditional" - }, - ["@keyword.coroutine"] = { - link = "@keyword" - }, - ["@keyword.debug"] = { - link = "Debug" - }, - ["@keyword.directive"] = { - link = "PreProc" - }, - ["@keyword.directive.define"] = { - link = "Define" - }, - ["@keyword.exception"] = { - link = "Exception" + italic = true }, + ["@keyword.conditional"] = "Conditional", + ["@keyword.coroutine"] = "@keyword", + ["@keyword.debug"] = "Debug", + ["@keyword.directive"] = "PreProc", + ["@keyword.directive.define"] = "Define", + ["@keyword.exception"] = "Exception", ["@keyword.function"] = { - fg = "#c099ff", - style = {} - }, - ["@keyword.import"] = { - link = "Include" - }, - ["@keyword.operator"] = { - link = "@operator" - }, - ["@keyword.repeat"] = { - link = "Repeat" - }, - ["@keyword.return"] = { - link = "@keyword" - }, - ["@keyword.storage"] = { - link = "StorageClass" + fg = "#c099ff" }, + ["@keyword.import"] = "Include", + ["@keyword.operator"] = "@operator", + ["@keyword.repeat"] = "Repeat", + ["@keyword.return"] = "@keyword", + ["@keyword.storage"] = "StorageClass", ["@label"] = { fg = "#82aaff" }, - ["@lsp.type.boolean"] = { - link = "@boolean" - }, - ["@lsp.type.builtinType"] = { - link = "@type.builtin" - }, - ["@lsp.type.comment"] = { - link = "@comment" - }, - ["@lsp.type.decorator"] = { - link = "@attribute" - }, - ["@lsp.type.deriveHelper"] = { - link = "@attribute" - }, - ["@lsp.type.enum"] = { - link = "@type" - }, - ["@lsp.type.enumMember"] = { - link = "@constant" - }, - ["@lsp.type.escapeSequence"] = { - link = "@string.escape" - }, - ["@lsp.type.formatSpecifier"] = { - link = "@markup.list" - }, - ["@lsp.type.generic"] = { - link = "@variable" - }, + ["@lsp.type.boolean"] = "@boolean", + ["@lsp.type.builtinType"] = "@type.builtin", + ["@lsp.type.comment"] = "@comment", + ["@lsp.type.decorator"] = "@attribute", + ["@lsp.type.deriveHelper"] = "@attribute", + ["@lsp.type.enum"] = "@type", + ["@lsp.type.enumMember"] = "@constant", + ["@lsp.type.escapeSequence"] = "@string.escape", + ["@lsp.type.formatSpecifier"] = "@markup.list", + ["@lsp.type.generic"] = "@variable", ["@lsp.type.interface"] = { - fg = "#93d0ff" - }, - ["@lsp.type.keyword"] = { - link = "@keyword" - }, - ["@lsp.type.lifetime"] = { - link = "@keyword.storage" - }, - ["@lsp.type.namespace"] = { - link = "@module" - }, - ["@lsp.type.number"] = { - link = "@number" - }, - ["@lsp.type.operator"] = { - link = "@operator" - }, - ["@lsp.type.parameter"] = { - link = "@variable.parameter" - }, - ["@lsp.type.property"] = { - link = "@property" - }, - ["@lsp.type.selfKeyword"] = { - link = "@variable.builtin" - }, - ["@lsp.type.selfTypeKeyword"] = { - link = "@variable.builtin" - }, - ["@lsp.type.string"] = { - link = "@string" - }, - ["@lsp.type.typeAlias"] = { - link = "@type.definition" - }, + fg = "#83c3fc" + }, + ["@lsp.type.keyword"] = "@keyword", + ["@lsp.type.lifetime"] = "@keyword.storage", + ["@lsp.type.namespace"] = "@module", + ["@lsp.type.namespace.python"] = "@variable", + ["@lsp.type.number"] = "@number", + ["@lsp.type.operator"] = "@operator", + ["@lsp.type.parameter"] = "@variable.parameter", + ["@lsp.type.property"] = "@property", + ["@lsp.type.selfKeyword"] = "@variable.builtin", + ["@lsp.type.selfTypeKeyword"] = "@variable.builtin", + ["@lsp.type.string"] = "@string", + ["@lsp.type.typeAlias"] = "@type.definition", ["@lsp.type.unresolvedReference"] = { sp = "#c53b53", undercurl = true }, ["@lsp.type.variable"] = {}, - ["@lsp.typemod.class.defaultLibrary"] = { - link = "@type.builtin" - }, - ["@lsp.typemod.enum.defaultLibrary"] = { - link = "@type.builtin" - }, - ["@lsp.typemod.enumMember.defaultLibrary"] = { - link = "@constant.builtin" - }, - ["@lsp.typemod.function.defaultLibrary"] = { - link = "@function.builtin" - }, - ["@lsp.typemod.keyword.async"] = { - link = "@keyword.coroutine" - }, - ["@lsp.typemod.keyword.injected"] = { - link = "@keyword" - }, - ["@lsp.typemod.macro.defaultLibrary"] = { - link = "@function.builtin" - }, - ["@lsp.typemod.method.defaultLibrary"] = { - link = "@function.builtin" - }, - ["@lsp.typemod.operator.injected"] = { - link = "@operator" - }, - ["@lsp.typemod.string.injected"] = { - link = "@string" - }, - ["@lsp.typemod.struct.defaultLibrary"] = { - link = "@type.builtin" - }, + ["@lsp.typemod.class.defaultLibrary"] = "@type.builtin", + ["@lsp.typemod.enum.defaultLibrary"] = "@type.builtin", + ["@lsp.typemod.enumMember.defaultLibrary"] = "@constant.builtin", + ["@lsp.typemod.function.defaultLibrary"] = "@function.builtin", + ["@lsp.typemod.keyword.async"] = "@keyword.coroutine", + ["@lsp.typemod.keyword.injected"] = "@keyword", + ["@lsp.typemod.macro.defaultLibrary"] = "@function.builtin", + ["@lsp.typemod.method.defaultLibrary"] = "@function.builtin", + ["@lsp.typemod.operator.injected"] = "@operator", + ["@lsp.typemod.string.injected"] = "@string", + ["@lsp.typemod.struct.defaultLibrary"] = "@type.builtin", ["@lsp.typemod.type.defaultLibrary"] = { fg = "#589ed7" }, ["@lsp.typemod.typeAlias.defaultLibrary"] = { fg = "#589ed7" }, - ["@lsp.typemod.variable.callable"] = { - link = "@function" - }, - ["@lsp.typemod.variable.defaultLibrary"] = { - link = "@variable.builtin" - }, - ["@lsp.typemod.variable.injected"] = { - link = "@variable" - }, - ["@lsp.typemod.variable.static"] = { - link = "@constant" - }, - ["@markup"] = { - link = "@none" - }, + ["@lsp.typemod.variable.callable"] = "@function", + ["@lsp.typemod.variable.defaultLibrary"] = "@variable.builtin", + ["@lsp.typemod.variable.injected"] = "@variable", + ["@lsp.typemod.variable.static"] = "@constant", + ["@markup"] = "@none", ["@markup.emphasis"] = { italic = true }, - ["@markup.environment"] = { - link = "Macro" - }, - ["@markup.environment.name"] = { - link = "Type" - }, - ["@markup.heading"] = { - link = "Title" - }, + ["@markup.environment"] = "Macro", + ["@markup.environment.name"] = "Type", + ["@markup.heading"] = "Title", ["@markup.heading.1.markdown"] = { bold = true, fg = "#82aaff" @@ -355,18 +209,15 @@ local highlights = { bold = true, fg = "#fca7ea" }, + ["@markup.italic"] = { + italic = true + }, ["@markup.link"] = { fg = "#4fd6be" }, - ["@markup.link.label"] = { - link = "SpecialChar" - }, - ["@markup.link.label.symbol"] = { - link = "Identifier" - }, - ["@markup.link.url"] = { - link = "Underlined" - }, + ["@markup.link.label"] = "SpecialChar", + ["@markup.link.label.symbol"] = "Identifier", + ["@markup.link.url"] = "Underlined", ["@markup.list"] = { fg = "#89ddff" }, @@ -380,12 +231,8 @@ local highlights = { ["@markup.list.unchecked"] = { fg = "#82aaff" }, - ["@markup.math"] = { - link = "Special" - }, - ["@markup.raw"] = { - link = "String" - }, + ["@markup.math"] = "Special", + ["@markup.raw"] = "String", ["@markup.raw.markdown_inline"] = { bg = "#444a73", fg = "#82aaff" @@ -399,22 +246,14 @@ local highlights = { ["@markup.underline"] = { underline = true }, - ["@module"] = { - link = "Include" - }, + ["@module"] = "Include", ["@module.builtin"] = { fg = "#ff757f" }, - ["@namespace.builtin"] = { - link = "@variable.builtin" - }, + ["@namespace.builtin"] = "@variable.builtin", ["@none"] = {}, - ["@number"] = { - link = "Number" - }, - ["@number.float"] = { - link = "Float" - }, + ["@number"] = "Number", + ["@number.float"] = "Float", ["@operator"] = { fg = "#89ddff" }, @@ -430,9 +269,7 @@ local highlights = { ["@punctuation.special"] = { fg = "#89ddff" }, - ["@string"] = { - link = "String" - }, + ["@string"] = "String", ["@string.documentation"] = { fg = "#ffc777" }, @@ -442,36 +279,23 @@ local highlights = { ["@string.regexp"] = { fg = "#b4f9f8" }, - ["@tag"] = { - link = "Label" - }, - ["@tag.attribute"] = { - link = "@property" - }, - ["@tag.delimiter"] = { - link = "Delimiter" - }, + ["@tag"] = "Label", + ["@tag.attribute"] = "@property", + ["@tag.delimiter"] = "Delimiter", ["@tag.delimiter.tsx"] = { fg = "#6582c3" }, ["@tag.tsx"] = { fg = "#ff757f" }, - ["@type"] = { - link = "Type" - }, + ["@type"] = "Type", ["@type.builtin"] = { fg = "#589ed7" }, - ["@type.definition"] = { - link = "Typedef" - }, - ["@type.qualifier"] = { - link = "@keyword" - }, + ["@type.definition"] = "Typedef", + ["@type.qualifier"] = "@keyword", ["@variable"] = { - fg = "#c8d3f5", - style = {} + fg = "#c8d3f5" }, ["@variable.builtin"] = { fg = "#ff757f" @@ -483,7 +307,7 @@ local highlights = { fg = "#ffc777" }, ["@variable.parameter.builtin"] = { - fg = "#ffd292" + fg = "#f4c990" }, ALEErrorSign = { fg = "#c53b53" @@ -491,118 +315,48 @@ local highlights = { ALEWarningSign = { fg = "#ffc777" }, - AerialArrayIcon = { - link = "LspKindArray" - }, - AerialBooleanIcon = { - link = "LspKindBoolean" - }, - AerialClassIcon = { - link = "LspKindClass" - }, - AerialColorIcon = { - link = "LspKindColor" - }, - AerialConstantIcon = { - link = "LspKindConstant" - }, - AerialConstructorIcon = { - link = "LspKindConstructor" - }, - AerialEnumIcon = { - link = "LspKindEnum" - }, - AerialEnumMemberIcon = { - link = "LspKindEnumMember" - }, - AerialEventIcon = { - link = "LspKindEvent" - }, - AerialFieldIcon = { - link = "LspKindField" - }, - AerialFileIcon = { - link = "LspKindFile" - }, - AerialFolderIcon = { - link = "LspKindFolder" - }, - AerialFunctionIcon = { - link = "LspKindFunction" - }, + AerialArrayIcon = "LspKindArray", + AerialBooleanIcon = "LspKindBoolean", + AerialClassIcon = "LspKindClass", + AerialColorIcon = "LspKindColor", + AerialConstantIcon = "LspKindConstant", + AerialConstructorIcon = "LspKindConstructor", + AerialEnumIcon = "LspKindEnum", + AerialEnumMemberIcon = "LspKindEnumMember", + AerialEventIcon = "LspKindEvent", + AerialFieldIcon = "LspKindField", + AerialFileIcon = "LspKindFile", + AerialFolderIcon = "LspKindFolder", + AerialFunctionIcon = "LspKindFunction", AerialGuide = { fg = "#3b4261" }, - AerialInterfaceIcon = { - link = "LspKindInterface" - }, - AerialKeyIcon = { - link = "LspKindKey" - }, - AerialKeywordIcon = { - link = "LspKindKeyword" - }, - AerialLine = { - link = "LspInlayHint" - }, - AerialMethodIcon = { - link = "LspKindMethod" - }, - AerialModuleIcon = { - link = "LspKindModule" - }, - AerialNamespaceIcon = { - link = "LspKindNamespace" - }, + AerialInterfaceIcon = "LspKindInterface", + AerialKeyIcon = "LspKindKey", + AerialKeywordIcon = "LspKindKeyword", + AerialLine = "LspInlayHint", + AerialMethodIcon = "LspKindMethod", + AerialModuleIcon = "LspKindModule", + AerialNamespaceIcon = "LspKindNamespace", AerialNormal = { bg = "NONE", fg = "#c8d3f5" }, - AerialNullIcon = { - link = "LspKindNull" - }, - AerialNumberIcon = { - link = "LspKindNumber" - }, - AerialObjectIcon = { - link = "LspKindObject" - }, - AerialOperatorIcon = { - link = "LspKindOperator" - }, - AerialPackageIcon = { - link = "LspKindPackage" - }, - AerialPropertyIcon = { - link = "LspKindProperty" - }, - AerialReferenceIcon = { - link = "LspKindReference" - }, - AerialSnippetIcon = { - link = "LspKindSnippet" - }, - AerialStringIcon = { - link = "LspKindString" - }, - AerialStructIcon = { - link = "LspKindStruct" - }, - AerialTextIcon = { - link = "LspKindText" - }, - AerialTypeParameterIcon = { - link = "LspKindTypeParameter" - }, - AerialUnitIcon = { - link = "LspKindUnit" - }, - AerialValueIcon = { - link = "LspKindValue" - }, - AerialVariableIcon = { - link = "LspKindVariable" - }, + AerialNullIcon = "LspKindNull", + AerialNumberIcon = "LspKindNumber", + AerialObjectIcon = "LspKindObject", + AerialOperatorIcon = "LspKindOperator", + AerialPackageIcon = "LspKindPackage", + AerialPropertyIcon = "LspKindProperty", + AerialReferenceIcon = "LspKindReference", + AerialSnippetIcon = "LspKindSnippet", + AerialStringIcon = "LspKindString", + AerialStructIcon = "LspKindStruct", + AerialTextIcon = "LspKindText", + AerialTypeParameterIcon = "LspKindTypeParameter", + AerialUnitIcon = "LspKindUnit", + AerialValueIcon = "LspKindValue", + AerialVariableIcon = "LspKindVariable", AlphaButtons = { fg = "#86e1fc" }, @@ -619,7 +373,8 @@ local highlights = { fg = "#ff966c" }, Bold = { - bold = true + bold = true, + fg = "#c8d3f5" }, BufferAlternate = { bg = "#3b4261", @@ -811,28 +566,16 @@ local highlights = { bg = "NONE", fg = "#65bcff" }, - CmpItemKindArray = { - link = "LspKindArray" - }, - CmpItemKindBoolean = { - link = "LspKindBoolean" - }, - CmpItemKindClass = { - link = "LspKindClass" - }, + CmpItemKindArray = "LspKindArray", + CmpItemKindBoolean = "LspKindBoolean", + CmpItemKindClass = "LspKindClass", CmpItemKindCodeium = { bg = "NONE", fg = "#4fd6be" }, - CmpItemKindColor = { - link = "LspKindColor" - }, - CmpItemKindConstant = { - link = "LspKindConstant" - }, - CmpItemKindConstructor = { - link = "LspKindConstructor" - }, + CmpItemKindColor = "LspKindColor", + CmpItemKindConstant = "LspKindConstant", + CmpItemKindConstructor = "LspKindConstructor", CmpItemKindCopilot = { bg = "NONE", fg = "#4fd6be" @@ -841,94 +584,38 @@ local highlights = { bg = "NONE", fg = "#828bb8" }, - CmpItemKindEnum = { - link = "LspKindEnum" - }, - CmpItemKindEnumMember = { - link = "LspKindEnumMember" - }, - CmpItemKindEvent = { - link = "LspKindEvent" - }, - CmpItemKindField = { - link = "LspKindField" - }, - CmpItemKindFile = { - link = "LspKindFile" - }, - CmpItemKindFolder = { - link = "LspKindFolder" - }, - CmpItemKindFunction = { - link = "LspKindFunction" - }, - CmpItemKindInterface = { - link = "LspKindInterface" - }, - CmpItemKindKey = { - link = "LspKindKey" - }, - CmpItemKindKeyword = { - link = "LspKindKeyword" - }, - CmpItemKindMethod = { - link = "LspKindMethod" - }, - CmpItemKindModule = { - link = "LspKindModule" - }, - CmpItemKindNamespace = { - link = "LspKindNamespace" - }, - CmpItemKindNull = { - link = "LspKindNull" - }, - CmpItemKindNumber = { - link = "LspKindNumber" - }, - CmpItemKindObject = { - link = "LspKindObject" - }, - CmpItemKindOperator = { - link = "LspKindOperator" - }, - CmpItemKindPackage = { - link = "LspKindPackage" - }, - CmpItemKindProperty = { - link = "LspKindProperty" - }, - CmpItemKindReference = { - link = "LspKindReference" - }, - CmpItemKindSnippet = { - link = "LspKindSnippet" - }, - CmpItemKindString = { - link = "LspKindString" - }, - CmpItemKindStruct = { - link = "LspKindStruct" - }, + CmpItemKindEnum = "LspKindEnum", + CmpItemKindEnumMember = "LspKindEnumMember", + CmpItemKindEvent = "LspKindEvent", + CmpItemKindField = "LspKindField", + CmpItemKindFile = "LspKindFile", + CmpItemKindFolder = "LspKindFolder", + CmpItemKindFunction = "LspKindFunction", + CmpItemKindInterface = "LspKindInterface", + CmpItemKindKey = "LspKindKey", + CmpItemKindKeyword = "LspKindKeyword", + CmpItemKindMethod = "LspKindMethod", + CmpItemKindModule = "LspKindModule", + CmpItemKindNamespace = "LspKindNamespace", + CmpItemKindNull = "LspKindNull", + CmpItemKindNumber = "LspKindNumber", + CmpItemKindObject = "LspKindObject", + CmpItemKindOperator = "LspKindOperator", + CmpItemKindPackage = "LspKindPackage", + CmpItemKindProperty = "LspKindProperty", + CmpItemKindReference = "LspKindReference", + CmpItemKindSnippet = "LspKindSnippet", + CmpItemKindString = "LspKindString", + CmpItemKindStruct = "LspKindStruct", CmpItemKindTabNine = { bg = "NONE", fg = "#4fd6be" }, - CmpItemKindText = { - link = "LspKindText" - }, - CmpItemKindTypeParameter = { - link = "LspKindTypeParameter" - }, - CmpItemKindUnit = { - link = "LspKindUnit" - }, - CmpItemKindValue = { - link = "LspKindValue" - }, - CmpItemKindVariable = { - link = "LspKindVariable" - }, + CmpItemKindText = "LspKindText", + CmpItemKindTypeParameter = "LspKindTypeParameter", + CmpItemKindUnit = "LspKindUnit", + CmpItemKindValue = "LspKindValue", + CmpItemKindVariable = "LspKindVariable", CmpItemMenu = { bg = "NONE", fg = "#636da6" @@ -941,9 +628,7 @@ local highlights = { }, Comment = { fg = "#636da6", - style = { - italic = true - } + italic = true }, Conceal = { fg = "#737aa2" @@ -951,9 +636,7 @@ local highlights = { Constant = { fg = "#ff966c" }, - CurSearch = { - link = "IncSearch" - }, + CurSearch = "IncSearch", Cursor = { bg = "#c8d3f5", fg = "#222436" @@ -969,7 +652,8 @@ local highlights = { bg = "#2f334d" }, CursorLineNr = { - fg = "#737aa2" + bold = true, + fg = "#ff966c" }, DapStoppedLine = { bg = "#38343d" @@ -1005,9 +689,7 @@ local highlights = { DefinitionIcon = { fg = "#82aaff" }, - Delimiter = { - link = "Special" - }, + Delimiter = "Special", DiagnosticError = { fg = "#c53b53" }, @@ -1017,9 +699,7 @@ local highlights = { DiagnosticInfo = { fg = "#0db9d7" }, - DiagnosticInformation = { - link = "DiagnosticInfo" - }, + DiagnosticInformation = "DiagnosticInfo", DiagnosticUnderlineError = { sp = "#c53b53", undercurl = true @@ -1058,9 +738,7 @@ local highlights = { DiagnosticWarn = { fg = "#ffc777" }, - DiagnosticWarning = { - link = "DiagnosticWarn" - }, + DiagnosticWarning = "DiagnosticWarn", DiffAdd = { bg = "#273849" }, @@ -1085,9 +763,6 @@ local highlights = { ErrorMsg = { fg = "#c53b53" }, - FernBranchText = { - fg = "#82aaff" - }, FlashBackdrop = { fg = "#545c7e" }, @@ -1117,35 +792,69 @@ local highlights = { fg = "#c8d3f5" }, Function = { - fg = "#82aaff", - style = {} + fg = "#82aaff" + }, + FzfLuaBorder = { + bg = "#1e2030", + fg = "#589ed7" + }, + FzfLuaCursor = "IncSearch", + FzfLuaDirPart = { + fg = "#828bb8" + }, + FzfLuaFilePart = "FzfLuaFzfNormal", + FzfLuaFzfCursorLine = "Visual", + FzfLuaFzfNormal = { + fg = "#c8d3f5" + }, + FzfLuaFzfPointer = { + fg = "#ff007c" + }, + FzfLuaFzfSeparator = { + bg = "#1e2030", + fg = "#ff966c" + }, + FzfLuaHeaderBind = "@punctuation.special", + FzfLuaHeaderText = "Title", + FzfLuaNormal = { + bg = "#1e2030", + fg = "#c8d3f5" + }, + FzfLuaPath = "Directory", + FzfLuaPreviewTitle = { + bg = "#1e2030", + fg = "#589ed7" + }, + FzfLuaTitle = { + bg = "#1e2030", + fg = "#ff966c" }, GitGutterAdd = { - fg = "#627259" + fg = "#b8db87" }, GitGutterAddLineNr = { - fg = "#627259" + fg = "#b8db87" }, GitGutterChange = { - fg = "#485a86" + fg = "#7ca1f2" }, GitGutterChangeLineNr = { - fg = "#485a86" + fg = "#7ca1f2" }, GitGutterDelete = { - fg = "#b55a67" + fg = "#e26a75" }, GitGutterDeleteLineNr = { - fg = "#b55a67" + fg = "#e26a75" }, GitSignsAdd = { - fg = "#627259" + fg = "#b8db87" }, GitSignsChange = { - fg = "#485a86" + fg = "#7ca1f2" }, GitSignsDelete = { - fg = "#b55a67" + fg = "#e26a75" }, GlyphPalette1 = { fg = "#c53b53" @@ -1168,9 +877,7 @@ local highlights = { GlyphPalette9 = { fg = "#ff757f" }, - Headline = { - link = "Headline1" - }, + Headline = "Headline1", Headline1 = { bg = "#272b40" }, @@ -1189,9 +896,6 @@ local highlights = { Headline6 = { bg = "#2d2b3f" }, - Hlargs = { - fg = "#ffc777" - }, HopNextKey = { bold = true, fg = "#ff007c" @@ -1211,12 +915,11 @@ local highlights = { nocombine = true }, IblScope = { - fg = "#fca7ea", + fg = "#65bcff", nocombine = true }, Identifier = { - fg = "#c099ff", - style = {} + fg = "#c099ff" }, IlluminatedWordRead = { bg = "#3b4261" @@ -1236,17 +939,24 @@ local highlights = { nocombine = true }, IndentBlanklineContextChar = { - fg = "#fca7ea", + fg = "#65bcff", + nocombine = true + }, + IndentLine = { + fg = "#3b4261", + nocombine = true + }, + IndentLineCurrent = { + fg = "#65bcff", nocombine = true }, Italic = { + fg = "#c8d3f5", italic = true }, Keyword = { fg = "#86e1fc", - style = { - italic = true - } + italic = true }, LazyProgressDone = { bold = true, @@ -1272,171 +982,66 @@ local highlights = { bold = true, fg = "#c8d3f5" }, - LightspeedGreyWash = { - fg = "#545c7e" + LineNr = { + fg = "#3b4261" }, - LightspeedLabel = { - bold = true, - fg = "#ff007c", - underline = true + LineNrAbove = { + fg = "#3b4261" }, - LightspeedLabelDistant = { - bold = true, - fg = "#4fd6be", - underline = true + LineNrBelow = { + fg = "#3b4261" }, - LightspeedLabelDistantOverlapped = { - fg = "#41a6b5", - underline = true + LspCodeLens = { + fg = "#636da6" }, - LightspeedLabelOverlapped = { - fg = "#ff007c", - underline = true + LspFloatWinBorder = { + fg = "#589ed7" }, - LightspeedMaskedChar = { - fg = "#ff966c" + LspFloatWinNormal = { + bg = "#1e2030" }, - LightspeedOneCharMatch = { - bg = "#ff007c", - bold = true, - fg = "#c8d3f5" + LspInfoBorder = { + bg = "#1e2030", + fg = "#589ed7" }, - LightspeedPendingOpArea = { - bg = "#ff007c", - fg = "#c8d3f5" - }, - LightspeedShortcut = { - bg = "#ff007c", - bold = true, - fg = "#c8d3f5", - underline = true - }, - LightspeedUnlabeledMatch = { - bold = true, - fg = "#0db9d7" - }, - LineNr = { - fg = "#3b4261" - }, - LspCodeLens = { - fg = "#636da6" - }, - LspFloatWinBorder = { - fg = "#589ed7" - }, - LspFloatWinNormal = { - bg = "#1e2030" - }, - LspInfoBorder = { - bg = "#1e2030", - fg = "#589ed7" - }, - LspInlayHint = { - bg = "#24283c", - fg = "#545c7e" - }, - LspKindArray = { - link = "@punctuation.bracket" - }, - LspKindBoolean = { - link = "@boolean" - }, - LspKindClass = { - link = "@type" - }, - LspKindColor = { - link = "Special" - }, - LspKindConstant = { - link = "@constant" - }, - LspKindConstructor = { - link = "@constructor" - }, - LspKindEnum = { - link = "@lsp.type.enum" - }, - LspKindEnumMember = { - link = "@lsp.type.enumMember" - }, - LspKindEvent = { - link = "Special" - }, - LspKindField = { - link = "@variable.member" - }, - LspKindFile = { - link = "Normal" - }, - LspKindFolder = { - link = "Directory" - }, - LspKindFunction = { - link = "@function" - }, - LspKindInterface = { - link = "@lsp.type.interface" - }, - LspKindKey = { - link = "@variable.member" - }, - LspKindKeyword = { - link = "@lsp.type.keyword" - }, - LspKindMethod = { - link = "@function.method" - }, - LspKindModule = { - link = "@module" - }, - LspKindNamespace = { - link = "@module" - }, - LspKindNull = { - link = "@constant.builtin" - }, - LspKindNumber = { - link = "@number" - }, - LspKindObject = { - link = "@constant" - }, - LspKindOperator = { - link = "@operator" - }, - LspKindPackage = { - link = "@module" - }, - LspKindProperty = { - link = "@property" - }, - LspKindReference = { - link = "@markup.link" - }, - LspKindSnippet = { - link = "Conceal" - }, - LspKindString = { - link = "@string" - }, - LspKindStruct = { - link = "@lsp.type.struct" - }, - LspKindText = { - link = "@markup" - }, - LspKindTypeParameter = { - link = "@lsp.type.typeParameter" - }, - LspKindUnit = { - link = "@lsp.type.struct" - }, - LspKindValue = { - link = "@string" - }, - LspKindVariable = { - link = "@variable" + LspInlayHint = { + bg = "#24283c", + fg = "#545c7e" }, + LspKindArray = "@punctuation.bracket", + LspKindBoolean = "@boolean", + LspKindClass = "@type", + LspKindColor = "Special", + LspKindConstant = "@constant", + LspKindConstructor = "@constructor", + LspKindEnum = "@lsp.type.enum", + LspKindEnumMember = "@lsp.type.enumMember", + LspKindEvent = "Special", + LspKindField = "@variable.member", + LspKindFile = "Normal", + LspKindFolder = "Directory", + LspKindFunction = "@function", + LspKindInterface = "@lsp.type.interface", + LspKindKey = "@variable.member", + LspKindKeyword = "@lsp.type.keyword", + LspKindMethod = "@function.method", + LspKindModule = "@module", + LspKindNamespace = "@module", + LspKindNull = "@constant.builtin", + LspKindNumber = "@number", + LspKindObject = "@constant", + LspKindOperator = "@operator", + LspKindPackage = "@module", + LspKindProperty = "@property", + LspKindReference = "@markup.link", + LspKindSnippet = "Conceal", + LspKindString = "@string", + LspKindStruct = "@lsp.type.struct", + LspKindText = "@markup", + LspKindTypeParameter = "@lsp.type.typeParameter", + LspKindUnit = "@lsp.type.struct", + LspKindValue = "@string", + LspKindVariable = "@variable", LspReferenceRead = { bg = "#3b4261" }, @@ -1481,6 +1086,18 @@ local highlights = { bold = true, fg = "#ff966c" }, + MiniAnimateCursor = { + nocombine = true, + reverse = true + }, + MiniAnimateNormalFloat = "NormalFloat", + MiniClueBorder = "FloatBorder", + MiniClueDescGroup = "DiagnosticFloatingWarn", + MiniClueDescSingle = "NormalFloat", + MiniClueNextKey = "DiagnosticFloatingHint", + MiniClueNextKeyWithPostkeys = "DiagnosticFloatingError", + MiniClueSeparator = "DiagnosticFloatingInfo", + MiniClueTitle = "FloatTitle", MiniCompletionActiveParameter = { underline = true }, @@ -1490,6 +1107,96 @@ local highlights = { MiniCursorwordCurrent = { bg = "#3b4261" }, + MiniDepsChangeAdded = "diffAdded", + MiniDepsChangeRemoved = "diffRemoved", + MiniDepsHint = "DiagnosticHint", + MiniDepsInfo = "DiagnosticInfo", + MiniDepsMsgBreaking = "DiagnosticWarn", + MiniDepsPlaceholder = "Comment", + MiniDepsTitle = "Title", + MiniDepsTitleError = { + bg = "#e26a75", + fg = "#1b1d2b" + }, + MiniDepsTitleSame = "Comment", + MiniDepsTitleUpdate = { + bg = "#b8db87", + fg = "#1b1d2b" + }, + MiniDiffOverAdd = "DiffAdd", + MiniDiffOverChange = "DiffText", + MiniDiffOverContext = "DiffChange", + MiniDiffOverDelete = "DiffDelete", + MiniDiffSignAdd = { + fg = "#b8db87" + }, + MiniDiffSignChange = { + fg = "#7ca1f2" + }, + MiniDiffSignDelete = { + fg = "#e26a75" + }, + MiniFilesBorder = "FloatBorder", + MiniFilesBorderModified = "DiagnosticFloatingWarn", + MiniFilesCursorLine = "CursorLine", + MiniFilesDirectory = "Directory", + MiniFilesFile = { + fg = "#c8d3f5" + }, + MiniFilesNormal = "NormalFloat", + MiniFilesTitle = "FloatTitle", + MiniFilesTitleFocused = { + bg = "#1e2030", + bold = true, + fg = "#589ed7" + }, + MiniHipatternsFixme = { + bg = "#c53b53", + bold = true, + fg = "#1b1d2b" + }, + MiniHipatternsHack = { + bg = "#ffc777", + bold = true, + fg = "#1b1d2b" + }, + MiniHipatternsNote = { + bg = "#4fd6be", + bold = true, + fg = "#1b1d2b" + }, + MiniHipatternsTodo = { + bg = "#0db9d7", + bold = true, + fg = "#1b1d2b" + }, + MiniIconsAzure = { + fg = "#0db9d7" + }, + MiniIconsBlue = { + fg = "#82aaff" + }, + MiniIconsCyan = { + fg = "#4fd6be" + }, + MiniIconsGreen = { + fg = "#c3e88d" + }, + MiniIconsGrey = { + fg = "#c8d3f5" + }, + MiniIconsOrange = { + fg = "#ff966c" + }, + MiniIconsPurple = { + fg = "#fca7ea" + }, + MiniIconsRed = { + fg = "#ff757f" + }, + MiniIconsYellow = { + fg = "#ffc777" + }, MiniIndentscopePrefix = { nocombine = true }, @@ -1501,11 +1208,49 @@ local highlights = { bg = "#ff007c", fg = "#ffffff" }, + MiniJump2dDim = "Comment", MiniJump2dSpot = { bold = true, fg = "#ff007c", nocombine = true }, + MiniJump2dSpotAhead = { + bg = "#1e2030", + fg = "#4fd6be", + nocombine = true + }, + MiniJump2dSpotUnique = { + bold = true, + fg = "#ff966c", + nocombine = true + }, + MiniMapNormal = "NormalFloat", + MiniMapSymbolCount = "Special", + MiniMapSymbolLine = "Title", + MiniMapSymbolView = "Delimiter", + MiniNotifyBorder = "FloatBorder", + MiniNotifyNormal = "NormalFloat", + MiniNotifyTitle = "FloatTitle", + MiniOperatorsExchangeFrom = "IncSearch", + MiniPickBorder = "FloatBorder", + MiniPickBorderBusy = "DiagnosticFloatingWarn", + MiniPickBorderText = { + bg = "#1e2030", + fg = "#4fd6be" + }, + MiniPickHeader = "DiagnosticFloatingHint", + MiniPickIconDirectory = "Directory", + MiniPickIconFile = "MiniPickNormal", + MiniPickMatchCurrent = "CursorLine", + MiniPickMatchMarked = "Visual", + MiniPickMatchRanges = "DiagnosticFloatingHint", + MiniPickNormal = "NormalFloat", + MiniPickPreviewLine = "CursorLine", + MiniPickPreviewRegion = "IncSearch", + MiniPickPrompt = { + bg = "#1e2030", + fg = "#0db9d7" + }, MiniStarterCurrent = { nocombine = true }, @@ -1518,9 +1263,7 @@ local highlights = { }, MiniStarterInactive = { fg = "#636da6", - style = { - italic = true - } + italic = true }, MiniStarterItem = { bg = "#222436", @@ -1539,15 +1282,15 @@ local highlights = { fg = "#65bcff" }, MiniStatuslineDevinfo = { - bg = "#2f334d", + bg = "#3b4261", fg = "#828bb8" }, MiniStatuslineFileinfo = { - bg = "#2f334d", + bg = "#3b4261", fg = "#828bb8" }, MiniStatuslineFilename = { - bg = "#3b4261", + bg = "#2f334d", fg = "#828bb8" }, MiniStatuslineInactive = { @@ -1643,108 +1386,40 @@ local highlights = { MsgArea = { fg = "#828bb8" }, - NavicIconsArray = { - link = "LspKindArray" - }, - NavicIconsBoolean = { - link = "LspKindBoolean" - }, - NavicIconsClass = { - link = "LspKindClass" - }, - NavicIconsColor = { - link = "LspKindColor" - }, - NavicIconsConstant = { - link = "LspKindConstant" - }, - NavicIconsConstructor = { - link = "LspKindConstructor" - }, - NavicIconsEnum = { - link = "LspKindEnum" - }, - NavicIconsEnumMember = { - link = "LspKindEnumMember" - }, - NavicIconsEvent = { - link = "LspKindEvent" - }, - NavicIconsField = { - link = "LspKindField" - }, - NavicIconsFile = { - link = "LspKindFile" - }, - NavicIconsFolder = { - link = "LspKindFolder" - }, - NavicIconsFunction = { - link = "LspKindFunction" - }, - NavicIconsInterface = { - link = "LspKindInterface" - }, - NavicIconsKey = { - link = "LspKindKey" - }, - NavicIconsKeyword = { - link = "LspKindKeyword" - }, - NavicIconsMethod = { - link = "LspKindMethod" - }, - NavicIconsModule = { - link = "LspKindModule" - }, - NavicIconsNamespace = { - link = "LspKindNamespace" - }, - NavicIconsNull = { - link = "LspKindNull" - }, - NavicIconsNumber = { - link = "LspKindNumber" - }, - NavicIconsObject = { - link = "LspKindObject" - }, - NavicIconsOperator = { - link = "LspKindOperator" - }, - NavicIconsPackage = { - link = "LspKindPackage" - }, - NavicIconsProperty = { - link = "LspKindProperty" - }, - NavicIconsReference = { - link = "LspKindReference" - }, - NavicIconsSnippet = { - link = "LspKindSnippet" - }, - NavicIconsString = { - link = "LspKindString" - }, - NavicIconsStruct = { - link = "LspKindStruct" - }, - NavicIconsText = { - link = "LspKindText" - }, - NavicIconsTypeParameter = { - link = "LspKindTypeParameter" - }, - NavicIconsUnit = { - link = "LspKindUnit" - }, - NavicIconsValue = { - link = "LspKindValue" - }, - NavicIconsVariable = { - link = "LspKindVariable" - }, + NavicIconsArray = "LspKindArray", + NavicIconsBoolean = "LspKindBoolean", + NavicIconsClass = "LspKindClass", + NavicIconsColor = "LspKindColor", + NavicIconsConstant = "LspKindConstant", + NavicIconsConstructor = "LspKindConstructor", + NavicIconsEnum = "LspKindEnum", + NavicIconsEnumMember = "LspKindEnumMember", + NavicIconsEvent = "LspKindEvent", + NavicIconsField = "LspKindField", + NavicIconsFile = "LspKindFile", + NavicIconsFolder = "LspKindFolder", + NavicIconsFunction = "LspKindFunction", + NavicIconsInterface = "LspKindInterface", + NavicIconsKey = "LspKindKey", + NavicIconsKeyword = "LspKindKeyword", + NavicIconsMethod = "LspKindMethod", + NavicIconsModule = "LspKindModule", + NavicIconsNamespace = "LspKindNamespace", + NavicIconsNull = "LspKindNull", + NavicIconsNumber = "LspKindNumber", + NavicIconsObject = "LspKindObject", + NavicIconsOperator = "LspKindOperator", + NavicIconsPackage = "LspKindPackage", + NavicIconsProperty = "LspKindProperty", + NavicIconsReference = "LspKindReference", + NavicIconsSnippet = "LspKindSnippet", + NavicIconsString = "LspKindString", + NavicIconsStruct = "LspKindStruct", + NavicIconsText = "LspKindText", + NavicIconsTypeParameter = "LspKindTypeParameter", + NavicIconsUnit = "LspKindUnit", + NavicIconsValue = "LspKindValue", + NavicIconsVariable = "LspKindVariable", NavicSeparator = { bg = "NONE", fg = "#c8d3f5" @@ -1756,6 +1431,18 @@ local highlights = { NeoTreeDimText = { fg = "#3b4261" }, + NeoTreeFileName = { + fg = "#828bb8" + }, + NeoTreeGitModified = { + fg = "#ff966c" + }, + NeoTreeGitStaged = { + fg = "#4fd6be" + }, + NeoTreeGitUntracked = { + fg = "#c099ff" + }, NeoTreeNormal = { bg = "#1e2030", fg = "#828bb8" @@ -1764,6 +1451,23 @@ local highlights = { bg = "#1e2030", fg = "#828bb8" }, + NeoTreeTabActive = { + bg = "#1e2030", + bold = true, + fg = "#82aaff" + }, + NeoTreeTabInactive = { + bg = "#181a26", + fg = "#545c7e" + }, + NeoTreeTabSeparatorActive = { + bg = "#1e2030", + fg = "#82aaff" + }, + NeoTreeTabSeparatorInactive = { + bg = "#181a26", + fg = "#222436" + }, NeogitBranch = { fg = "#c099ff" }, @@ -1839,112 +1543,62 @@ local highlights = { NeotestWinSelect = { fg = "#82aaff" }, - NoiceCompletionItemKindArray = { - link = "LspKindArray" + NoiceCmdlineIconInput = { + fg = "#ffc777" }, - NoiceCompletionItemKindBoolean = { - link = "LspKindBoolean" + NoiceCmdlineIconLua = { + fg = "#65bcff" }, - NoiceCompletionItemKindClass = { - link = "LspKindClass" + NoiceCmdlinePopupBorderInput = { + fg = "#ffc777" }, - NoiceCompletionItemKindColor = { - link = "LspKindColor" + NoiceCmdlinePopupBorderLua = { + fg = "#65bcff" }, - NoiceCompletionItemKindConstant = { - link = "LspKindConstant" + NoiceCmdlinePopupTitleInput = { + fg = "#ffc777" }, - NoiceCompletionItemKindConstructor = { - link = "LspKindConstructor" + NoiceCmdlinePopupTitleLua = { + fg = "#65bcff" }, + NoiceCompletionItemKindArray = "LspKindArray", + NoiceCompletionItemKindBoolean = "LspKindBoolean", + NoiceCompletionItemKindClass = "LspKindClass", + NoiceCompletionItemKindColor = "LspKindColor", + NoiceCompletionItemKindConstant = "LspKindConstant", + NoiceCompletionItemKindConstructor = "LspKindConstructor", NoiceCompletionItemKindDefault = { bg = "NONE", fg = "#828bb8" }, - NoiceCompletionItemKindEnum = { - link = "LspKindEnum" - }, - NoiceCompletionItemKindEnumMember = { - link = "LspKindEnumMember" - }, - NoiceCompletionItemKindEvent = { - link = "LspKindEvent" - }, - NoiceCompletionItemKindField = { - link = "LspKindField" - }, - NoiceCompletionItemKindFile = { - link = "LspKindFile" - }, - NoiceCompletionItemKindFolder = { - link = "LspKindFolder" - }, - NoiceCompletionItemKindFunction = { - link = "LspKindFunction" - }, - NoiceCompletionItemKindInterface = { - link = "LspKindInterface" - }, - NoiceCompletionItemKindKey = { - link = "LspKindKey" - }, - NoiceCompletionItemKindKeyword = { - link = "LspKindKeyword" - }, - NoiceCompletionItemKindMethod = { - link = "LspKindMethod" - }, - NoiceCompletionItemKindModule = { - link = "LspKindModule" - }, - NoiceCompletionItemKindNamespace = { - link = "LspKindNamespace" - }, - NoiceCompletionItemKindNull = { - link = "LspKindNull" - }, - NoiceCompletionItemKindNumber = { - link = "LspKindNumber" - }, - NoiceCompletionItemKindObject = { - link = "LspKindObject" - }, - NoiceCompletionItemKindOperator = { - link = "LspKindOperator" - }, - NoiceCompletionItemKindPackage = { - link = "LspKindPackage" - }, - NoiceCompletionItemKindProperty = { - link = "LspKindProperty" - }, - NoiceCompletionItemKindReference = { - link = "LspKindReference" - }, - NoiceCompletionItemKindSnippet = { - link = "LspKindSnippet" - }, - NoiceCompletionItemKindString = { - link = "LspKindString" - }, - NoiceCompletionItemKindStruct = { - link = "LspKindStruct" - }, - NoiceCompletionItemKindText = { - link = "LspKindText" - }, - NoiceCompletionItemKindTypeParameter = { - link = "LspKindTypeParameter" - }, - NoiceCompletionItemKindUnit = { - link = "LspKindUnit" - }, - NoiceCompletionItemKindValue = { - link = "LspKindValue" - }, - NoiceCompletionItemKindVariable = { - link = "LspKindVariable" - }, + NoiceCompletionItemKindEnum = "LspKindEnum", + NoiceCompletionItemKindEnumMember = "LspKindEnumMember", + NoiceCompletionItemKindEvent = "LspKindEvent", + NoiceCompletionItemKindField = "LspKindField", + NoiceCompletionItemKindFile = "LspKindFile", + NoiceCompletionItemKindFolder = "LspKindFolder", + NoiceCompletionItemKindFunction = "LspKindFunction", + NoiceCompletionItemKindInterface = "LspKindInterface", + NoiceCompletionItemKindKey = "LspKindKey", + NoiceCompletionItemKindKeyword = "LspKindKeyword", + NoiceCompletionItemKindMethod = "LspKindMethod", + NoiceCompletionItemKindModule = "LspKindModule", + NoiceCompletionItemKindNamespace = "LspKindNamespace", + NoiceCompletionItemKindNull = "LspKindNull", + NoiceCompletionItemKindNumber = "LspKindNumber", + NoiceCompletionItemKindObject = "LspKindObject", + NoiceCompletionItemKindOperator = "LspKindOperator", + NoiceCompletionItemKindPackage = "LspKindPackage", + NoiceCompletionItemKindProperty = "LspKindProperty", + NoiceCompletionItemKindReference = "LspKindReference", + NoiceCompletionItemKindSnippet = "LspKindSnippet", + NoiceCompletionItemKindString = "LspKindString", + NoiceCompletionItemKindStruct = "LspKindStruct", + NoiceCompletionItemKindText = "LspKindText", + NoiceCompletionItemKindTypeParameter = "LspKindTypeParameter", + NoiceCompletionItemKindUnit = "LspKindUnit", + NoiceCompletionItemKindValue = "LspKindValue", + NoiceCompletionItemKindVariable = "LspKindVariable", NonText = { fg = "#545c7e" }, @@ -2083,6 +1737,30 @@ local highlights = { bg = "#1e2030", fg = "#1e2030" }, + OctoDetailsLabel = { + bold = true, + fg = "#65bcff" + }, + OctoDetailsValue = "@variable.member", + OctoDirty = { + bold = true, + fg = "#ff966c" + }, + OctoIssueTitle = { + bold = true, + fg = "#fca7ea" + }, + OctoStateChangesRequested = "DiagnosticVirtualTextWarn", + OctoStateClosed = "DiagnosticVirtualTextError", + OctoStateMerged = { + bg = "#32304a", + fg = "#c099ff" + }, + OctoStateOpen = "DiagnosticVirtualTextHint", + OctoStatePending = "DiagnosticVirtualTextWarn", + OctoStatusColumn = { + fg = "#65bcff" + }, Operator = { fg = "#89ddff" }, @@ -2091,7 +1769,7 @@ local highlights = { fg = "#c8d3f5" }, PmenuSbar = { - bg = "#292b3a" + bg = "#27293a" }, PmenuSel = { bg = "#363c58" @@ -2247,34 +1925,6 @@ local highlights = { bg = "#ff757f", fg = "#1b1d2b" }, - TSNodeKey = { - bold = true, - fg = "#ff007c" - }, - TSNodeUnmatched = { - fg = "#545c7e" - }, - TSRainbowBlue = { - fg = "#82aaff" - }, - TSRainbowCyan = { - fg = "#86e1fc" - }, - TSRainbowGreen = { - fg = "#c3e88d" - }, - TSRainbowOrange = { - fg = "#ff966c" - }, - TSRainbowRed = { - fg = "#ff757f" - }, - TSRainbowViolet = { - fg = "#fca7ea" - }, - TSRainbowYellow = { - fg = "#ffc777" - }, TabLine = { bg = "#1e2030", fg = "#3b4261" @@ -2297,6 +1947,17 @@ local highlights = { bg = "#1e2030", fg = "#c8d3f5" }, + TelescopePromptBorder = { + bg = "#1e2030", + fg = "#ff966c" + }, + TelescopePromptTitle = { + bg = "#1e2030", + fg = "#ff966c" + }, + TelescopeResultsComment = { + fg = "#545c7e" + }, Title = { bold = true, fg = "#82aaff" @@ -2328,6 +1989,60 @@ local highlights = { VertSplit = { fg = "#1b1d2b" }, + VimwikiHR = { + bg = "NONE", + fg = "#ffc777" + }, + VimwikiHeaderChar = { + bg = "NONE", + fg = "#ffc777" + }, + VimwikiHeaer1 = { + bg = "NONE", + bold = true, + fg = "#82aaff" + }, + VimwikiHeaer2 = { + bg = "NONE", + bold = true, + fg = "#ffc777" + }, + VimwikiHeaer3 = { + bg = "NONE", + bold = true, + fg = "#c3e88d" + }, + VimwikiHeaer4 = { + bg = "NONE", + bold = true, + fg = "#4fd6be" + }, + VimwikiHeaer5 = { + bg = "NONE", + bold = true, + fg = "#c099ff" + }, + VimwikiHeaer6 = { + bg = "NONE", + bold = true, + fg = "#fca7ea" + }, + VimwikiLink = { + bg = "NONE", + fg = "#82aaff" + }, + VimwikiList = { + bg = "NONE", + fg = "#ff966c" + }, + VimwikiMarkers = { + bg = "NONE", + fg = "#82aaff" + }, + VimwikiTag = { + bg = "NONE", + fg = "#c3e88d" + }, Visual = { bg = "#2d3f76" }, @@ -2364,22 +2079,14 @@ local highlights = { WildMenu = { bg = "#2d3f76" }, - WinBar = { - link = "StatusLine" - }, - WinBarNC = { - link = "StatusLineNC" - }, + WinBar = "StatusLine", + WinBarNC = "StatusLineNC", WinSeparator = { bold = true, fg = "#1b1d2b" }, - YankyPut = { - link = "IncSearch" - }, - YankyYanked = { - link = "IncSearch" - }, + YankyPut = "Search", + YankyYanked = "IncSearch", debugBreakpoint = { bg = "#203346", fg = "#0db9d7" @@ -2411,9 +2118,7 @@ local highlights = { diffRemoved = { fg = "#e26a75" }, - dosIniLabel = { - link = "@property" - }, + dosIniLabel = "@property", healthError = { fg = "#c53b53" }, @@ -2445,65 +2150,10 @@ local highlights = { bg = "#c8d3f5", fg = "#222436" }, - markdownCode = { - fg = "#4fd6be" - }, - markdownCodeBlock = { - fg = "#4fd6be" - }, - markdownH1 = { - bold = true, - fg = "#c099ff" - }, - markdownH2 = { - bold = true, - fg = "#82aaff" - }, - markdownHeadingDelimiter = { - bold = true, - fg = "#ff966c" - }, - markdownLinkText = { - fg = "#82aaff", - underline = true - }, - mkdCodeDelimiter = { - bg = "#444a73", - fg = "#c8d3f5" - }, - mkdCodeEnd = { - bold = true, - fg = "#4fd6be" - }, - mkdCodeStart = { - bold = true, - fg = "#4fd6be" - }, qfFileName = { fg = "#82aaff" }, qfLineNr = { fg = "#737aa2" - }, - rainbowcol1 = { - fg = "#ff757f" - }, - rainbowcol2 = { - fg = "#ffc777" - }, - rainbowcol3 = { - fg = "#c3e88d" - }, - rainbowcol4 = { - fg = "#4fd6be" - }, - rainbowcol5 = { - fg = "#82aaff" - }, - rainbowcol6 = { - fg = "#c099ff" - }, - rainbowcol7 = { - fg = "#fca7ea" } } diff --git a/extras/lua/tokyonight_night.lua b/extras/lua/tokyonight_night.lua index 7256149b..3466af72 100644 --- a/extras/lua/tokyonight_night.lua +++ b/extras/lua/tokyonight_night.lua @@ -1,5 +1,6 @@ local colors = { _name = "tokyonight_night", + _style = "night", bg = "#1a1b26", bg_dark = "#16161e", bg_float = "#16161e", @@ -23,10 +24,6 @@ local colors = { cyan = "#7dcfff", dark3 = "#545c7e", dark5 = "#737aa2", - delta = { - add = "#2c5a66", - delete = "#713137" - }, diff = { add = "#20303b", change = "#1f2231", @@ -45,11 +42,6 @@ local colors = { delete = "#914c54", ignore = "#545c7e" }, - gitSigns = { - add = "#266d6a", - change = "#536c9e", - delete = "#b2555b" - }, green = "#9ece6a", green1 = "#73daca", green2 = "#41a6b5", @@ -60,6 +52,7 @@ local colors = { none = "NONE", orange = "#ff9e64", purple = "#9d7cd8", + rainbow = { "#7aa2f7", "#e0af68", "#9ece6a", "#1abc9c", "#bb9af7", "#9d7cd8" }, red = "#f7768e", red1 = "#db4b4b", teal = "#1abc9c", @@ -70,24 +63,13 @@ local colors = { } local highlights = { - ["@annotation"] = { - link = "PreProc" - }, - ["@attribute"] = { - link = "PreProc" - }, - ["@boolean"] = { - link = "Boolean" - }, - ["@character"] = { - link = "Character" - }, - ["@character.special"] = { - link = "SpecialChar" - }, - ["@comment"] = { - link = "Comment" - }, + ["@annotation"] = "PreProc", + ["@attribute"] = "PreProc", + ["@boolean"] = "Boolean", + ["@character"] = "Character", + ["@character.printf"] = "SpecialChar", + ["@character.special"] = "SpecialChar", + ["@comment"] = "Comment", ["@comment.error"] = { fg = "#db4b4b" }, @@ -106,231 +88,103 @@ local highlights = { ["@comment.warning"] = { fg = "#e0af68" }, - ["@constant"] = { - link = "Constant" - }, - ["@constant.builtin"] = { - link = "Special" - }, - ["@constant.macro"] = { - link = "Define" - }, + ["@constant"] = "Constant", + ["@constant.builtin"] = "Special", + ["@constant.macro"] = "Define", ["@constructor"] = { fg = "#bb9af7" }, ["@constructor.tsx"] = { fg = "#2ac3de" }, - ["@diff.delta"] = { - link = "DiffChange" - }, - ["@diff.minus"] = { - link = "DiffDelete" - }, - ["@diff.plus"] = { - link = "DiffAdd" - }, - ["@function"] = { - link = "Function" - }, - ["@function.builtin"] = { - link = "Special" - }, - ["@function.call"] = { - link = "@function" - }, - ["@function.macro"] = { - link = "Macro" - }, - ["@function.method"] = { - link = "Function" - }, - ["@function.method.call"] = { - link = "@function.method" - }, + ["@diff.delta"] = "DiffChange", + ["@diff.minus"] = "DiffDelete", + ["@diff.plus"] = "DiffAdd", + ["@function"] = "Function", + ["@function.builtin"] = "Special", + ["@function.call"] = "@function", + ["@function.macro"] = "Macro", + ["@function.method"] = "Function", + ["@function.method.call"] = "@function.method", ["@keyword"] = { fg = "#9d7cd8", - style = { - italic = true - } - }, - ["@keyword.conditional"] = { - link = "Conditional" - }, - ["@keyword.coroutine"] = { - link = "@keyword" - }, - ["@keyword.debug"] = { - link = "Debug" - }, - ["@keyword.directive"] = { - link = "PreProc" - }, - ["@keyword.directive.define"] = { - link = "Define" - }, - ["@keyword.exception"] = { - link = "Exception" + italic = true }, + ["@keyword.conditional"] = "Conditional", + ["@keyword.coroutine"] = "@keyword", + ["@keyword.debug"] = "Debug", + ["@keyword.directive"] = "PreProc", + ["@keyword.directive.define"] = "Define", + ["@keyword.exception"] = "Exception", ["@keyword.function"] = { - fg = "#bb9af7", - style = {} - }, - ["@keyword.import"] = { - link = "Include" - }, - ["@keyword.operator"] = { - link = "@operator" - }, - ["@keyword.repeat"] = { - link = "Repeat" - }, - ["@keyword.return"] = { - link = "@keyword" - }, - ["@keyword.storage"] = { - link = "StorageClass" + fg = "#bb9af7" }, + ["@keyword.import"] = "Include", + ["@keyword.operator"] = "@operator", + ["@keyword.repeat"] = "Repeat", + ["@keyword.return"] = "@keyword", + ["@keyword.storage"] = "StorageClass", ["@label"] = { fg = "#7aa2f7" }, - ["@lsp.type.boolean"] = { - link = "@boolean" - }, - ["@lsp.type.builtinType"] = { - link = "@type.builtin" - }, - ["@lsp.type.comment"] = { - link = "@comment" - }, - ["@lsp.type.decorator"] = { - link = "@attribute" - }, - ["@lsp.type.deriveHelper"] = { - link = "@attribute" - }, - ["@lsp.type.enum"] = { - link = "@type" - }, - ["@lsp.type.enumMember"] = { - link = "@constant" - }, - ["@lsp.type.escapeSequence"] = { - link = "@string.escape" - }, - ["@lsp.type.formatSpecifier"] = { - link = "@markup.list" - }, - ["@lsp.type.generic"] = { - link = "@variable" - }, + ["@lsp.type.boolean"] = "@boolean", + ["@lsp.type.builtinType"] = "@type.builtin", + ["@lsp.type.comment"] = "@comment", + ["@lsp.type.decorator"] = "@attribute", + ["@lsp.type.deriveHelper"] = "@attribute", + ["@lsp.type.enum"] = "@type", + ["@lsp.type.enumMember"] = "@constant", + ["@lsp.type.escapeSequence"] = "@string.escape", + ["@lsp.type.formatSpecifier"] = "@markup.list", + ["@lsp.type.generic"] = "@variable", ["@lsp.type.interface"] = { - fg = "#6ad5e8" - }, - ["@lsp.type.keyword"] = { - link = "@keyword" - }, - ["@lsp.type.lifetime"] = { - link = "@keyword.storage" - }, - ["@lsp.type.namespace"] = { - link = "@module" - }, - ["@lsp.type.number"] = { - link = "@number" - }, - ["@lsp.type.operator"] = { - link = "@operator" - }, - ["@lsp.type.parameter"] = { - link = "@variable.parameter" - }, - ["@lsp.type.property"] = { - link = "@property" - }, - ["@lsp.type.selfKeyword"] = { - link = "@variable.builtin" - }, - ["@lsp.type.selfTypeKeyword"] = { - link = "@variable.builtin" - }, - ["@lsp.type.string"] = { - link = "@string" - }, - ["@lsp.type.typeAlias"] = { - link = "@type.definition" - }, + fg = "#57c5e5" + }, + ["@lsp.type.keyword"] = "@keyword", + ["@lsp.type.lifetime"] = "@keyword.storage", + ["@lsp.type.namespace"] = "@module", + ["@lsp.type.namespace.python"] = "@variable", + ["@lsp.type.number"] = "@number", + ["@lsp.type.operator"] = "@operator", + ["@lsp.type.parameter"] = "@variable.parameter", + ["@lsp.type.property"] = "@property", + ["@lsp.type.selfKeyword"] = "@variable.builtin", + ["@lsp.type.selfTypeKeyword"] = "@variable.builtin", + ["@lsp.type.string"] = "@string", + ["@lsp.type.typeAlias"] = "@type.definition", ["@lsp.type.unresolvedReference"] = { sp = "#db4b4b", undercurl = true }, ["@lsp.type.variable"] = {}, - ["@lsp.typemod.class.defaultLibrary"] = { - link = "@type.builtin" - }, - ["@lsp.typemod.enum.defaultLibrary"] = { - link = "@type.builtin" - }, - ["@lsp.typemod.enumMember.defaultLibrary"] = { - link = "@constant.builtin" - }, - ["@lsp.typemod.function.defaultLibrary"] = { - link = "@function.builtin" - }, - ["@lsp.typemod.keyword.async"] = { - link = "@keyword.coroutine" - }, - ["@lsp.typemod.keyword.injected"] = { - link = "@keyword" - }, - ["@lsp.typemod.macro.defaultLibrary"] = { - link = "@function.builtin" - }, - ["@lsp.typemod.method.defaultLibrary"] = { - link = "@function.builtin" - }, - ["@lsp.typemod.operator.injected"] = { - link = "@operator" - }, - ["@lsp.typemod.string.injected"] = { - link = "@string" - }, - ["@lsp.typemod.struct.defaultLibrary"] = { - link = "@type.builtin" - }, + ["@lsp.typemod.class.defaultLibrary"] = "@type.builtin", + ["@lsp.typemod.enum.defaultLibrary"] = "@type.builtin", + ["@lsp.typemod.enumMember.defaultLibrary"] = "@constant.builtin", + ["@lsp.typemod.function.defaultLibrary"] = "@function.builtin", + ["@lsp.typemod.keyword.async"] = "@keyword.coroutine", + ["@lsp.typemod.keyword.injected"] = "@keyword", + ["@lsp.typemod.macro.defaultLibrary"] = "@function.builtin", + ["@lsp.typemod.method.defaultLibrary"] = "@function.builtin", + ["@lsp.typemod.operator.injected"] = "@operator", + ["@lsp.typemod.string.injected"] = "@string", + ["@lsp.typemod.struct.defaultLibrary"] = "@type.builtin", ["@lsp.typemod.type.defaultLibrary"] = { fg = "#27a1b9" }, ["@lsp.typemod.typeAlias.defaultLibrary"] = { fg = "#27a1b9" }, - ["@lsp.typemod.variable.callable"] = { - link = "@function" - }, - ["@lsp.typemod.variable.defaultLibrary"] = { - link = "@variable.builtin" - }, - ["@lsp.typemod.variable.injected"] = { - link = "@variable" - }, - ["@lsp.typemod.variable.static"] = { - link = "@constant" - }, - ["@markup"] = { - link = "@none" - }, + ["@lsp.typemod.variable.callable"] = "@function", + ["@lsp.typemod.variable.defaultLibrary"] = "@variable.builtin", + ["@lsp.typemod.variable.injected"] = "@variable", + ["@lsp.typemod.variable.static"] = "@constant", + ["@markup"] = "@none", ["@markup.emphasis"] = { italic = true }, - ["@markup.environment"] = { - link = "Macro" - }, - ["@markup.environment.name"] = { - link = "Type" - }, - ["@markup.heading"] = { - link = "Title" - }, + ["@markup.environment"] = "Macro", + ["@markup.environment.name"] = "Type", + ["@markup.heading"] = "Title", ["@markup.heading.1.markdown"] = { bold = true, fg = "#7aa2f7" @@ -355,18 +209,15 @@ local highlights = { bold = true, fg = "#9d7cd8" }, + ["@markup.italic"] = { + italic = true + }, ["@markup.link"] = { fg = "#1abc9c" }, - ["@markup.link.label"] = { - link = "SpecialChar" - }, - ["@markup.link.label.symbol"] = { - link = "Identifier" - }, - ["@markup.link.url"] = { - link = "Underlined" - }, + ["@markup.link.label"] = "SpecialChar", + ["@markup.link.label.symbol"] = "Identifier", + ["@markup.link.url"] = "Underlined", ["@markup.list"] = { fg = "#89ddff" }, @@ -380,12 +231,8 @@ local highlights = { ["@markup.list.unchecked"] = { fg = "#7aa2f7" }, - ["@markup.math"] = { - link = "Special" - }, - ["@markup.raw"] = { - link = "String" - }, + ["@markup.math"] = "Special", + ["@markup.raw"] = "String", ["@markup.raw.markdown_inline"] = { bg = "#414868", fg = "#7aa2f7" @@ -399,22 +246,14 @@ local highlights = { ["@markup.underline"] = { underline = true }, - ["@module"] = { - link = "Include" - }, + ["@module"] = "Include", ["@module.builtin"] = { fg = "#f7768e" }, - ["@namespace.builtin"] = { - link = "@variable.builtin" - }, + ["@namespace.builtin"] = "@variable.builtin", ["@none"] = {}, - ["@number"] = { - link = "Number" - }, - ["@number.float"] = { - link = "Float" - }, + ["@number"] = "Number", + ["@number.float"] = "Float", ["@operator"] = { fg = "#89ddff" }, @@ -430,9 +269,7 @@ local highlights = { ["@punctuation.special"] = { fg = "#89ddff" }, - ["@string"] = { - link = "String" - }, + ["@string"] = "String", ["@string.documentation"] = { fg = "#e0af68" }, @@ -442,36 +279,23 @@ local highlights = { ["@string.regexp"] = { fg = "#b4f9f8" }, - ["@tag"] = { - link = "Label" - }, - ["@tag.attribute"] = { - link = "@property" - }, - ["@tag.delimiter"] = { - link = "Delimiter" - }, + ["@tag"] = "Label", + ["@tag.attribute"] = "@property", + ["@tag.delimiter"] = "Delimiter", ["@tag.delimiter.tsx"] = { fg = "#5d7ab8" }, ["@tag.tsx"] = { fg = "#f7768e" }, - ["@type"] = { - link = "Type" - }, + ["@type"] = "Type", ["@type.builtin"] = { fg = "#27a1b9" }, - ["@type.definition"] = { - link = "Typedef" - }, - ["@type.qualifier"] = { - link = "@keyword" - }, + ["@type.definition"] = "Typedef", + ["@type.qualifier"] = "@keyword", ["@variable"] = { - fg = "#c0caf5", - style = {} + fg = "#c0caf5" }, ["@variable.builtin"] = { fg = "#f7768e" @@ -483,7 +307,7 @@ local highlights = { fg = "#e0af68" }, ["@variable.parameter.builtin"] = { - fg = "#e6bf86" + fg = "#dab484" }, ALEErrorSign = { fg = "#db4b4b" @@ -491,118 +315,48 @@ local highlights = { ALEWarningSign = { fg = "#e0af68" }, - AerialArrayIcon = { - link = "LspKindArray" - }, - AerialBooleanIcon = { - link = "LspKindBoolean" - }, - AerialClassIcon = { - link = "LspKindClass" - }, - AerialColorIcon = { - link = "LspKindColor" - }, - AerialConstantIcon = { - link = "LspKindConstant" - }, - AerialConstructorIcon = { - link = "LspKindConstructor" - }, - AerialEnumIcon = { - link = "LspKindEnum" - }, - AerialEnumMemberIcon = { - link = "LspKindEnumMember" - }, - AerialEventIcon = { - link = "LspKindEvent" - }, - AerialFieldIcon = { - link = "LspKindField" - }, - AerialFileIcon = { - link = "LspKindFile" - }, - AerialFolderIcon = { - link = "LspKindFolder" - }, - AerialFunctionIcon = { - link = "LspKindFunction" - }, + AerialArrayIcon = "LspKindArray", + AerialBooleanIcon = "LspKindBoolean", + AerialClassIcon = "LspKindClass", + AerialColorIcon = "LspKindColor", + AerialConstantIcon = "LspKindConstant", + AerialConstructorIcon = "LspKindConstructor", + AerialEnumIcon = "LspKindEnum", + AerialEnumMemberIcon = "LspKindEnumMember", + AerialEventIcon = "LspKindEvent", + AerialFieldIcon = "LspKindField", + AerialFileIcon = "LspKindFile", + AerialFolderIcon = "LspKindFolder", + AerialFunctionIcon = "LspKindFunction", AerialGuide = { fg = "#3b4261" }, - AerialInterfaceIcon = { - link = "LspKindInterface" - }, - AerialKeyIcon = { - link = "LspKindKey" - }, - AerialKeywordIcon = { - link = "LspKindKeyword" - }, - AerialLine = { - link = "LspInlayHint" - }, - AerialMethodIcon = { - link = "LspKindMethod" - }, - AerialModuleIcon = { - link = "LspKindModule" - }, - AerialNamespaceIcon = { - link = "LspKindNamespace" - }, + AerialInterfaceIcon = "LspKindInterface", + AerialKeyIcon = "LspKindKey", + AerialKeywordIcon = "LspKindKeyword", + AerialLine = "LspInlayHint", + AerialMethodIcon = "LspKindMethod", + AerialModuleIcon = "LspKindModule", + AerialNamespaceIcon = "LspKindNamespace", AerialNormal = { bg = "NONE", fg = "#c0caf5" }, - AerialNullIcon = { - link = "LspKindNull" - }, - AerialNumberIcon = { - link = "LspKindNumber" - }, - AerialObjectIcon = { - link = "LspKindObject" - }, - AerialOperatorIcon = { - link = "LspKindOperator" - }, - AerialPackageIcon = { - link = "LspKindPackage" - }, - AerialPropertyIcon = { - link = "LspKindProperty" - }, - AerialReferenceIcon = { - link = "LspKindReference" - }, - AerialSnippetIcon = { - link = "LspKindSnippet" - }, - AerialStringIcon = { - link = "LspKindString" - }, - AerialStructIcon = { - link = "LspKindStruct" - }, - AerialTextIcon = { - link = "LspKindText" - }, - AerialTypeParameterIcon = { - link = "LspKindTypeParameter" - }, - AerialUnitIcon = { - link = "LspKindUnit" - }, - AerialValueIcon = { - link = "LspKindValue" - }, - AerialVariableIcon = { - link = "LspKindVariable" - }, + AerialNullIcon = "LspKindNull", + AerialNumberIcon = "LspKindNumber", + AerialObjectIcon = "LspKindObject", + AerialOperatorIcon = "LspKindOperator", + AerialPackageIcon = "LspKindPackage", + AerialPropertyIcon = "LspKindProperty", + AerialReferenceIcon = "LspKindReference", + AerialSnippetIcon = "LspKindSnippet", + AerialStringIcon = "LspKindString", + AerialStructIcon = "LspKindStruct", + AerialTextIcon = "LspKindText", + AerialTypeParameterIcon = "LspKindTypeParameter", + AerialUnitIcon = "LspKindUnit", + AerialValueIcon = "LspKindValue", + AerialVariableIcon = "LspKindVariable", AlphaButtons = { fg = "#7dcfff" }, @@ -619,7 +373,8 @@ local highlights = { fg = "#ff9e64" }, Bold = { - bold = true + bold = true, + fg = "#c0caf5" }, BufferAlternate = { bg = "#3b4261", @@ -811,28 +566,16 @@ local highlights = { bg = "NONE", fg = "#2ac3de" }, - CmpItemKindArray = { - link = "LspKindArray" - }, - CmpItemKindBoolean = { - link = "LspKindBoolean" - }, - CmpItemKindClass = { - link = "LspKindClass" - }, + CmpItemKindArray = "LspKindArray", + CmpItemKindBoolean = "LspKindBoolean", + CmpItemKindClass = "LspKindClass", CmpItemKindCodeium = { bg = "NONE", fg = "#1abc9c" }, - CmpItemKindColor = { - link = "LspKindColor" - }, - CmpItemKindConstant = { - link = "LspKindConstant" - }, - CmpItemKindConstructor = { - link = "LspKindConstructor" - }, + CmpItemKindColor = "LspKindColor", + CmpItemKindConstant = "LspKindConstant", + CmpItemKindConstructor = "LspKindConstructor", CmpItemKindCopilot = { bg = "NONE", fg = "#1abc9c" @@ -841,94 +584,38 @@ local highlights = { bg = "NONE", fg = "#a9b1d6" }, - CmpItemKindEnum = { - link = "LspKindEnum" - }, - CmpItemKindEnumMember = { - link = "LspKindEnumMember" - }, - CmpItemKindEvent = { - link = "LspKindEvent" - }, - CmpItemKindField = { - link = "LspKindField" - }, - CmpItemKindFile = { - link = "LspKindFile" - }, - CmpItemKindFolder = { - link = "LspKindFolder" - }, - CmpItemKindFunction = { - link = "LspKindFunction" - }, - CmpItemKindInterface = { - link = "LspKindInterface" - }, - CmpItemKindKey = { - link = "LspKindKey" - }, - CmpItemKindKeyword = { - link = "LspKindKeyword" - }, - CmpItemKindMethod = { - link = "LspKindMethod" - }, - CmpItemKindModule = { - link = "LspKindModule" - }, - CmpItemKindNamespace = { - link = "LspKindNamespace" - }, - CmpItemKindNull = { - link = "LspKindNull" - }, - CmpItemKindNumber = { - link = "LspKindNumber" - }, - CmpItemKindObject = { - link = "LspKindObject" - }, - CmpItemKindOperator = { - link = "LspKindOperator" - }, - CmpItemKindPackage = { - link = "LspKindPackage" - }, - CmpItemKindProperty = { - link = "LspKindProperty" - }, - CmpItemKindReference = { - link = "LspKindReference" - }, - CmpItemKindSnippet = { - link = "LspKindSnippet" - }, - CmpItemKindString = { - link = "LspKindString" - }, - CmpItemKindStruct = { - link = "LspKindStruct" - }, + CmpItemKindEnum = "LspKindEnum", + CmpItemKindEnumMember = "LspKindEnumMember", + CmpItemKindEvent = "LspKindEvent", + CmpItemKindField = "LspKindField", + CmpItemKindFile = "LspKindFile", + CmpItemKindFolder = "LspKindFolder", + CmpItemKindFunction = "LspKindFunction", + CmpItemKindInterface = "LspKindInterface", + CmpItemKindKey = "LspKindKey", + CmpItemKindKeyword = "LspKindKeyword", + CmpItemKindMethod = "LspKindMethod", + CmpItemKindModule = "LspKindModule", + CmpItemKindNamespace = "LspKindNamespace", + CmpItemKindNull = "LspKindNull", + CmpItemKindNumber = "LspKindNumber", + CmpItemKindObject = "LspKindObject", + CmpItemKindOperator = "LspKindOperator", + CmpItemKindPackage = "LspKindPackage", + CmpItemKindProperty = "LspKindProperty", + CmpItemKindReference = "LspKindReference", + CmpItemKindSnippet = "LspKindSnippet", + CmpItemKindString = "LspKindString", + CmpItemKindStruct = "LspKindStruct", CmpItemKindTabNine = { bg = "NONE", fg = "#1abc9c" }, - CmpItemKindText = { - link = "LspKindText" - }, - CmpItemKindTypeParameter = { - link = "LspKindTypeParameter" - }, - CmpItemKindUnit = { - link = "LspKindUnit" - }, - CmpItemKindValue = { - link = "LspKindValue" - }, - CmpItemKindVariable = { - link = "LspKindVariable" - }, + CmpItemKindText = "LspKindText", + CmpItemKindTypeParameter = "LspKindTypeParameter", + CmpItemKindUnit = "LspKindUnit", + CmpItemKindValue = "LspKindValue", + CmpItemKindVariable = "LspKindVariable", CmpItemMenu = { bg = "NONE", fg = "#565f89" @@ -941,9 +628,7 @@ local highlights = { }, Comment = { fg = "#565f89", - style = { - italic = true - } + italic = true }, Conceal = { fg = "#737aa2" @@ -951,9 +636,7 @@ local highlights = { Constant = { fg = "#ff9e64" }, - CurSearch = { - link = "IncSearch" - }, + CurSearch = "IncSearch", Cursor = { bg = "#c0caf5", fg = "#1a1b26" @@ -969,7 +652,8 @@ local highlights = { bg = "#292e42" }, CursorLineNr = { - fg = "#737aa2" + bold = true, + fg = "#ff9e64" }, DapStoppedLine = { bg = "#2e2a2d" @@ -1005,9 +689,7 @@ local highlights = { DefinitionIcon = { fg = "#7aa2f7" }, - Delimiter = { - link = "Special" - }, + Delimiter = "Special", DiagnosticError = { fg = "#db4b4b" }, @@ -1017,9 +699,7 @@ local highlights = { DiagnosticInfo = { fg = "#0db9d7" }, - DiagnosticInformation = { - link = "DiagnosticInfo" - }, + DiagnosticInformation = "DiagnosticInfo", DiagnosticUnderlineError = { sp = "#db4b4b", undercurl = true @@ -1058,9 +738,7 @@ local highlights = { DiagnosticWarn = { fg = "#e0af68" }, - DiagnosticWarning = { - link = "DiagnosticWarn" - }, + DiagnosticWarning = "DiagnosticWarn", DiffAdd = { bg = "#20303b" }, @@ -1085,9 +763,6 @@ local highlights = { ErrorMsg = { fg = "#db4b4b" }, - FernBranchText = { - fg = "#7aa2f7" - }, FlashBackdrop = { fg = "#545c7e" }, @@ -1117,35 +792,69 @@ local highlights = { fg = "#c0caf5" }, Function = { - fg = "#7aa2f7", - style = {} + fg = "#7aa2f7" + }, + FzfLuaBorder = { + bg = "#16161e", + fg = "#27a1b9" + }, + FzfLuaCursor = "IncSearch", + FzfLuaDirPart = { + fg = "#a9b1d6" + }, + FzfLuaFilePart = "FzfLuaFzfNormal", + FzfLuaFzfCursorLine = "Visual", + FzfLuaFzfNormal = { + fg = "#c0caf5" + }, + FzfLuaFzfPointer = { + fg = "#ff007c" + }, + FzfLuaFzfSeparator = { + bg = "#16161e", + fg = "#ff9e64" + }, + FzfLuaHeaderBind = "@punctuation.special", + FzfLuaHeaderText = "Title", + FzfLuaNormal = { + bg = "#16161e", + fg = "#c0caf5" + }, + FzfLuaPath = "Directory", + FzfLuaPreviewTitle = { + bg = "#16161e", + fg = "#27a1b9" + }, + FzfLuaTitle = { + bg = "#16161e", + fg = "#ff9e64" }, GitGutterAdd = { - fg = "#266d6a" + fg = "#449dab" }, GitGutterAddLineNr = { - fg = "#266d6a" + fg = "#449dab" }, GitGutterChange = { - fg = "#536c9e" + fg = "#6183bb" }, GitGutterChangeLineNr = { - fg = "#536c9e" + fg = "#6183bb" }, GitGutterDelete = { - fg = "#b2555b" + fg = "#914c54" }, GitGutterDeleteLineNr = { - fg = "#b2555b" + fg = "#914c54" }, GitSignsAdd = { - fg = "#266d6a" + fg = "#449dab" }, GitSignsChange = { - fg = "#536c9e" + fg = "#6183bb" }, GitSignsDelete = { - fg = "#b2555b" + fg = "#914c54" }, GlyphPalette1 = { fg = "#db4b4b" @@ -1168,9 +877,7 @@ local highlights = { GlyphPalette9 = { fg = "#f7768e" }, - Headline = { - link = "Headline1" - }, + Headline = "Headline1", Headline1 = { bg = "#1f2230" }, @@ -1189,9 +896,6 @@ local highlights = { Headline6 = { bg = "#21202f" }, - Hlargs = { - fg = "#e0af68" - }, HopNextKey = { bold = true, fg = "#ff007c" @@ -1211,12 +915,11 @@ local highlights = { nocombine = true }, IblScope = { - fg = "#9d7cd8", + fg = "#2ac3de", nocombine = true }, Identifier = { - fg = "#bb9af7", - style = {} + fg = "#bb9af7" }, IlluminatedWordRead = { bg = "#3b4261" @@ -1236,17 +939,24 @@ local highlights = { nocombine = true }, IndentBlanklineContextChar = { - fg = "#9d7cd8", + fg = "#2ac3de", + nocombine = true + }, + IndentLine = { + fg = "#3b4261", + nocombine = true + }, + IndentLineCurrent = { + fg = "#2ac3de", nocombine = true }, Italic = { + fg = "#c0caf5", italic = true }, Keyword = { fg = "#7dcfff", - style = { - italic = true - } + italic = true }, LazyProgressDone = { bold = true, @@ -1272,50 +982,13 @@ local highlights = { bold = true, fg = "#c0caf5" }, - LightspeedGreyWash = { - fg = "#545c7e" - }, - LightspeedLabel = { - bold = true, - fg = "#ff007c", - underline = true - }, - LightspeedLabelDistant = { - bold = true, - fg = "#73daca", - underline = true - }, - LightspeedLabelDistantOverlapped = { - fg = "#41a6b5", - underline = true - }, - LightspeedLabelOverlapped = { - fg = "#ff007c", - underline = true - }, - LightspeedMaskedChar = { - fg = "#ff9e64" - }, - LightspeedOneCharMatch = { - bg = "#ff007c", - bold = true, - fg = "#c0caf5" - }, - LightspeedPendingOpArea = { - bg = "#ff007c", - fg = "#c0caf5" - }, - LightspeedShortcut = { - bg = "#ff007c", - bold = true, - fg = "#c0caf5", - underline = true + LineNr = { + fg = "#3b4261" }, - LightspeedUnlabeledMatch = { - bold = true, - fg = "#0db9d7" + LineNrAbove = { + fg = "#3b4261" }, - LineNr = { + LineNrBelow = { fg = "#3b4261" }, LspCodeLens = { @@ -1335,108 +1008,40 @@ local highlights = { bg = "#1d202d", fg = "#545c7e" }, - LspKindArray = { - link = "@punctuation.bracket" - }, - LspKindBoolean = { - link = "@boolean" - }, - LspKindClass = { - link = "@type" - }, - LspKindColor = { - link = "Special" - }, - LspKindConstant = { - link = "@constant" - }, - LspKindConstructor = { - link = "@constructor" - }, - LspKindEnum = { - link = "@lsp.type.enum" - }, - LspKindEnumMember = { - link = "@lsp.type.enumMember" - }, - LspKindEvent = { - link = "Special" - }, - LspKindField = { - link = "@variable.member" - }, - LspKindFile = { - link = "Normal" - }, - LspKindFolder = { - link = "Directory" - }, - LspKindFunction = { - link = "@function" - }, - LspKindInterface = { - link = "@lsp.type.interface" - }, - LspKindKey = { - link = "@variable.member" - }, - LspKindKeyword = { - link = "@lsp.type.keyword" - }, - LspKindMethod = { - link = "@function.method" - }, - LspKindModule = { - link = "@module" - }, - LspKindNamespace = { - link = "@module" - }, - LspKindNull = { - link = "@constant.builtin" - }, - LspKindNumber = { - link = "@number" - }, - LspKindObject = { - link = "@constant" - }, - LspKindOperator = { - link = "@operator" - }, - LspKindPackage = { - link = "@module" - }, - LspKindProperty = { - link = "@property" - }, - LspKindReference = { - link = "@markup.link" - }, - LspKindSnippet = { - link = "Conceal" - }, - LspKindString = { - link = "@string" - }, - LspKindStruct = { - link = "@lsp.type.struct" - }, - LspKindText = { - link = "@markup" - }, - LspKindTypeParameter = { - link = "@lsp.type.typeParameter" - }, - LspKindUnit = { - link = "@lsp.type.struct" - }, - LspKindValue = { - link = "@string" - }, - LspKindVariable = { - link = "@variable" - }, + LspKindArray = "@punctuation.bracket", + LspKindBoolean = "@boolean", + LspKindClass = "@type", + LspKindColor = "Special", + LspKindConstant = "@constant", + LspKindConstructor = "@constructor", + LspKindEnum = "@lsp.type.enum", + LspKindEnumMember = "@lsp.type.enumMember", + LspKindEvent = "Special", + LspKindField = "@variable.member", + LspKindFile = "Normal", + LspKindFolder = "Directory", + LspKindFunction = "@function", + LspKindInterface = "@lsp.type.interface", + LspKindKey = "@variable.member", + LspKindKeyword = "@lsp.type.keyword", + LspKindMethod = "@function.method", + LspKindModule = "@module", + LspKindNamespace = "@module", + LspKindNull = "@constant.builtin", + LspKindNumber = "@number", + LspKindObject = "@constant", + LspKindOperator = "@operator", + LspKindPackage = "@module", + LspKindProperty = "@property", + LspKindReference = "@markup.link", + LspKindSnippet = "Conceal", + LspKindString = "@string", + LspKindStruct = "@lsp.type.struct", + LspKindText = "@markup", + LspKindTypeParameter = "@lsp.type.typeParameter", + LspKindUnit = "@lsp.type.struct", + LspKindValue = "@string", + LspKindVariable = "@variable", LspReferenceRead = { bg = "#3b4261" }, @@ -1481,6 +1086,18 @@ local highlights = { bold = true, fg = "#ff9e64" }, + MiniAnimateCursor = { + nocombine = true, + reverse = true + }, + MiniAnimateNormalFloat = "NormalFloat", + MiniClueBorder = "FloatBorder", + MiniClueDescGroup = "DiagnosticFloatingWarn", + MiniClueDescSingle = "NormalFloat", + MiniClueNextKey = "DiagnosticFloatingHint", + MiniClueNextKeyWithPostkeys = "DiagnosticFloatingError", + MiniClueSeparator = "DiagnosticFloatingInfo", + MiniClueTitle = "FloatTitle", MiniCompletionActiveParameter = { underline = true }, @@ -1490,6 +1107,96 @@ local highlights = { MiniCursorwordCurrent = { bg = "#3b4261" }, + MiniDepsChangeAdded = "diffAdded", + MiniDepsChangeRemoved = "diffRemoved", + MiniDepsHint = "DiagnosticHint", + MiniDepsInfo = "DiagnosticInfo", + MiniDepsMsgBreaking = "DiagnosticWarn", + MiniDepsPlaceholder = "Comment", + MiniDepsTitle = "Title", + MiniDepsTitleError = { + bg = "#914c54", + fg = "#15161e" + }, + MiniDepsTitleSame = "Comment", + MiniDepsTitleUpdate = { + bg = "#449dab", + fg = "#15161e" + }, + MiniDiffOverAdd = "DiffAdd", + MiniDiffOverChange = "DiffText", + MiniDiffOverContext = "DiffChange", + MiniDiffOverDelete = "DiffDelete", + MiniDiffSignAdd = { + fg = "#449dab" + }, + MiniDiffSignChange = { + fg = "#6183bb" + }, + MiniDiffSignDelete = { + fg = "#914c54" + }, + MiniFilesBorder = "FloatBorder", + MiniFilesBorderModified = "DiagnosticFloatingWarn", + MiniFilesCursorLine = "CursorLine", + MiniFilesDirectory = "Directory", + MiniFilesFile = { + fg = "#c0caf5" + }, + MiniFilesNormal = "NormalFloat", + MiniFilesTitle = "FloatTitle", + MiniFilesTitleFocused = { + bg = "#16161e", + bold = true, + fg = "#27a1b9" + }, + MiniHipatternsFixme = { + bg = "#db4b4b", + bold = true, + fg = "#15161e" + }, + MiniHipatternsHack = { + bg = "#e0af68", + bold = true, + fg = "#15161e" + }, + MiniHipatternsNote = { + bg = "#1abc9c", + bold = true, + fg = "#15161e" + }, + MiniHipatternsTodo = { + bg = "#0db9d7", + bold = true, + fg = "#15161e" + }, + MiniIconsAzure = { + fg = "#0db9d7" + }, + MiniIconsBlue = { + fg = "#7aa2f7" + }, + MiniIconsCyan = { + fg = "#1abc9c" + }, + MiniIconsGreen = { + fg = "#9ece6a" + }, + MiniIconsGrey = { + fg = "#c0caf5" + }, + MiniIconsOrange = { + fg = "#ff9e64" + }, + MiniIconsPurple = { + fg = "#9d7cd8" + }, + MiniIconsRed = { + fg = "#f7768e" + }, + MiniIconsYellow = { + fg = "#e0af68" + }, MiniIndentscopePrefix = { nocombine = true }, @@ -1501,11 +1208,49 @@ local highlights = { bg = "#ff007c", fg = "#ffffff" }, + MiniJump2dDim = "Comment", MiniJump2dSpot = { bold = true, fg = "#ff007c", nocombine = true }, + MiniJump2dSpotAhead = { + bg = "#16161e", + fg = "#1abc9c", + nocombine = true + }, + MiniJump2dSpotUnique = { + bold = true, + fg = "#ff9e64", + nocombine = true + }, + MiniMapNormal = "NormalFloat", + MiniMapSymbolCount = "Special", + MiniMapSymbolLine = "Title", + MiniMapSymbolView = "Delimiter", + MiniNotifyBorder = "FloatBorder", + MiniNotifyNormal = "NormalFloat", + MiniNotifyTitle = "FloatTitle", + MiniOperatorsExchangeFrom = "IncSearch", + MiniPickBorder = "FloatBorder", + MiniPickBorderBusy = "DiagnosticFloatingWarn", + MiniPickBorderText = { + bg = "#16161e", + fg = "#1abc9c" + }, + MiniPickHeader = "DiagnosticFloatingHint", + MiniPickIconDirectory = "Directory", + MiniPickIconFile = "MiniPickNormal", + MiniPickMatchCurrent = "CursorLine", + MiniPickMatchMarked = "Visual", + MiniPickMatchRanges = "DiagnosticFloatingHint", + MiniPickNormal = "NormalFloat", + MiniPickPreviewLine = "CursorLine", + MiniPickPreviewRegion = "IncSearch", + MiniPickPrompt = { + bg = "#16161e", + fg = "#0db9d7" + }, MiniStarterCurrent = { nocombine = true }, @@ -1518,9 +1263,7 @@ local highlights = { }, MiniStarterInactive = { fg = "#565f89", - style = { - italic = true - } + italic = true }, MiniStarterItem = { bg = "#1a1b26", @@ -1539,15 +1282,15 @@ local highlights = { fg = "#2ac3de" }, MiniStatuslineDevinfo = { - bg = "#292e42", + bg = "#3b4261", fg = "#a9b1d6" }, MiniStatuslineFileinfo = { - bg = "#292e42", + bg = "#3b4261", fg = "#a9b1d6" }, MiniStatuslineFilename = { - bg = "#3b4261", + bg = "#292e42", fg = "#a9b1d6" }, MiniStatuslineInactive = { @@ -1643,108 +1386,40 @@ local highlights = { MsgArea = { fg = "#a9b1d6" }, - NavicIconsArray = { - link = "LspKindArray" - }, - NavicIconsBoolean = { - link = "LspKindBoolean" - }, - NavicIconsClass = { - link = "LspKindClass" - }, - NavicIconsColor = { - link = "LspKindColor" - }, - NavicIconsConstant = { - link = "LspKindConstant" - }, - NavicIconsConstructor = { - link = "LspKindConstructor" - }, - NavicIconsEnum = { - link = "LspKindEnum" - }, - NavicIconsEnumMember = { - link = "LspKindEnumMember" - }, - NavicIconsEvent = { - link = "LspKindEvent" - }, - NavicIconsField = { - link = "LspKindField" - }, - NavicIconsFile = { - link = "LspKindFile" - }, - NavicIconsFolder = { - link = "LspKindFolder" - }, - NavicIconsFunction = { - link = "LspKindFunction" - }, - NavicIconsInterface = { - link = "LspKindInterface" - }, - NavicIconsKey = { - link = "LspKindKey" - }, - NavicIconsKeyword = { - link = "LspKindKeyword" - }, - NavicIconsMethod = { - link = "LspKindMethod" - }, - NavicIconsModule = { - link = "LspKindModule" - }, - NavicIconsNamespace = { - link = "LspKindNamespace" - }, - NavicIconsNull = { - link = "LspKindNull" - }, - NavicIconsNumber = { - link = "LspKindNumber" - }, - NavicIconsObject = { - link = "LspKindObject" - }, - NavicIconsOperator = { - link = "LspKindOperator" - }, - NavicIconsPackage = { - link = "LspKindPackage" - }, - NavicIconsProperty = { - link = "LspKindProperty" - }, - NavicIconsReference = { - link = "LspKindReference" - }, - NavicIconsSnippet = { - link = "LspKindSnippet" - }, - NavicIconsString = { - link = "LspKindString" - }, - NavicIconsStruct = { - link = "LspKindStruct" - }, - NavicIconsText = { - link = "LspKindText" - }, - NavicIconsTypeParameter = { - link = "LspKindTypeParameter" - }, - NavicIconsUnit = { - link = "LspKindUnit" - }, - NavicIconsValue = { - link = "LspKindValue" - }, - NavicIconsVariable = { - link = "LspKindVariable" - }, + NavicIconsArray = "LspKindArray", + NavicIconsBoolean = "LspKindBoolean", + NavicIconsClass = "LspKindClass", + NavicIconsColor = "LspKindColor", + NavicIconsConstant = "LspKindConstant", + NavicIconsConstructor = "LspKindConstructor", + NavicIconsEnum = "LspKindEnum", + NavicIconsEnumMember = "LspKindEnumMember", + NavicIconsEvent = "LspKindEvent", + NavicIconsField = "LspKindField", + NavicIconsFile = "LspKindFile", + NavicIconsFolder = "LspKindFolder", + NavicIconsFunction = "LspKindFunction", + NavicIconsInterface = "LspKindInterface", + NavicIconsKey = "LspKindKey", + NavicIconsKeyword = "LspKindKeyword", + NavicIconsMethod = "LspKindMethod", + NavicIconsModule = "LspKindModule", + NavicIconsNamespace = "LspKindNamespace", + NavicIconsNull = "LspKindNull", + NavicIconsNumber = "LspKindNumber", + NavicIconsObject = "LspKindObject", + NavicIconsOperator = "LspKindOperator", + NavicIconsPackage = "LspKindPackage", + NavicIconsProperty = "LspKindProperty", + NavicIconsReference = "LspKindReference", + NavicIconsSnippet = "LspKindSnippet", + NavicIconsString = "LspKindString", + NavicIconsStruct = "LspKindStruct", + NavicIconsText = "LspKindText", + NavicIconsTypeParameter = "LspKindTypeParameter", + NavicIconsUnit = "LspKindUnit", + NavicIconsValue = "LspKindValue", + NavicIconsVariable = "LspKindVariable", NavicSeparator = { bg = "NONE", fg = "#c0caf5" @@ -1756,6 +1431,18 @@ local highlights = { NeoTreeDimText = { fg = "#3b4261" }, + NeoTreeFileName = { + fg = "#a9b1d6" + }, + NeoTreeGitModified = { + fg = "#ff9e64" + }, + NeoTreeGitStaged = { + fg = "#73daca" + }, + NeoTreeGitUntracked = { + fg = "#bb9af7" + }, NeoTreeNormal = { bg = "#16161e", fg = "#a9b1d6" @@ -1764,6 +1451,23 @@ local highlights = { bg = "#16161e", fg = "#a9b1d6" }, + NeoTreeTabActive = { + bg = "#16161e", + bold = true, + fg = "#7aa2f7" + }, + NeoTreeTabInactive = { + bg = "#121218", + fg = "#545c7e" + }, + NeoTreeTabSeparatorActive = { + bg = "#16161e", + fg = "#7aa2f7" + }, + NeoTreeTabSeparatorInactive = { + bg = "#121218", + fg = "#1a1b26" + }, NeogitBranch = { fg = "#bb9af7" }, @@ -1839,112 +1543,62 @@ local highlights = { NeotestWinSelect = { fg = "#7aa2f7" }, - NoiceCompletionItemKindArray = { - link = "LspKindArray" + NoiceCmdlineIconInput = { + fg = "#e0af68" }, - NoiceCompletionItemKindBoolean = { - link = "LspKindBoolean" + NoiceCmdlineIconLua = { + fg = "#2ac3de" }, - NoiceCompletionItemKindClass = { - link = "LspKindClass" + NoiceCmdlinePopupBorderInput = { + fg = "#e0af68" }, - NoiceCompletionItemKindColor = { - link = "LspKindColor" + NoiceCmdlinePopupBorderLua = { + fg = "#2ac3de" }, - NoiceCompletionItemKindConstant = { - link = "LspKindConstant" + NoiceCmdlinePopupTitleInput = { + fg = "#e0af68" }, - NoiceCompletionItemKindConstructor = { - link = "LspKindConstructor" + NoiceCmdlinePopupTitleLua = { + fg = "#2ac3de" }, + NoiceCompletionItemKindArray = "LspKindArray", + NoiceCompletionItemKindBoolean = "LspKindBoolean", + NoiceCompletionItemKindClass = "LspKindClass", + NoiceCompletionItemKindColor = "LspKindColor", + NoiceCompletionItemKindConstant = "LspKindConstant", + NoiceCompletionItemKindConstructor = "LspKindConstructor", NoiceCompletionItemKindDefault = { bg = "NONE", fg = "#a9b1d6" }, - NoiceCompletionItemKindEnum = { - link = "LspKindEnum" - }, - NoiceCompletionItemKindEnumMember = { - link = "LspKindEnumMember" - }, - NoiceCompletionItemKindEvent = { - link = "LspKindEvent" - }, - NoiceCompletionItemKindField = { - link = "LspKindField" - }, - NoiceCompletionItemKindFile = { - link = "LspKindFile" - }, - NoiceCompletionItemKindFolder = { - link = "LspKindFolder" - }, - NoiceCompletionItemKindFunction = { - link = "LspKindFunction" - }, - NoiceCompletionItemKindInterface = { - link = "LspKindInterface" - }, - NoiceCompletionItemKindKey = { - link = "LspKindKey" - }, - NoiceCompletionItemKindKeyword = { - link = "LspKindKeyword" - }, - NoiceCompletionItemKindMethod = { - link = "LspKindMethod" - }, - NoiceCompletionItemKindModule = { - link = "LspKindModule" - }, - NoiceCompletionItemKindNamespace = { - link = "LspKindNamespace" - }, - NoiceCompletionItemKindNull = { - link = "LspKindNull" - }, - NoiceCompletionItemKindNumber = { - link = "LspKindNumber" - }, - NoiceCompletionItemKindObject = { - link = "LspKindObject" - }, - NoiceCompletionItemKindOperator = { - link = "LspKindOperator" - }, - NoiceCompletionItemKindPackage = { - link = "LspKindPackage" - }, - NoiceCompletionItemKindProperty = { - link = "LspKindProperty" - }, - NoiceCompletionItemKindReference = { - link = "LspKindReference" - }, - NoiceCompletionItemKindSnippet = { - link = "LspKindSnippet" - }, - NoiceCompletionItemKindString = { - link = "LspKindString" - }, - NoiceCompletionItemKindStruct = { - link = "LspKindStruct" - }, - NoiceCompletionItemKindText = { - link = "LspKindText" - }, - NoiceCompletionItemKindTypeParameter = { - link = "LspKindTypeParameter" - }, - NoiceCompletionItemKindUnit = { - link = "LspKindUnit" - }, - NoiceCompletionItemKindValue = { - link = "LspKindValue" - }, - NoiceCompletionItemKindVariable = { - link = "LspKindVariable" - }, + NoiceCompletionItemKindEnum = "LspKindEnum", + NoiceCompletionItemKindEnumMember = "LspKindEnumMember", + NoiceCompletionItemKindEvent = "LspKindEvent", + NoiceCompletionItemKindField = "LspKindField", + NoiceCompletionItemKindFile = "LspKindFile", + NoiceCompletionItemKindFolder = "LspKindFolder", + NoiceCompletionItemKindFunction = "LspKindFunction", + NoiceCompletionItemKindInterface = "LspKindInterface", + NoiceCompletionItemKindKey = "LspKindKey", + NoiceCompletionItemKindKeyword = "LspKindKeyword", + NoiceCompletionItemKindMethod = "LspKindMethod", + NoiceCompletionItemKindModule = "LspKindModule", + NoiceCompletionItemKindNamespace = "LspKindNamespace", + NoiceCompletionItemKindNull = "LspKindNull", + NoiceCompletionItemKindNumber = "LspKindNumber", + NoiceCompletionItemKindObject = "LspKindObject", + NoiceCompletionItemKindOperator = "LspKindOperator", + NoiceCompletionItemKindPackage = "LspKindPackage", + NoiceCompletionItemKindProperty = "LspKindProperty", + NoiceCompletionItemKindReference = "LspKindReference", + NoiceCompletionItemKindSnippet = "LspKindSnippet", + NoiceCompletionItemKindString = "LspKindString", + NoiceCompletionItemKindStruct = "LspKindStruct", + NoiceCompletionItemKindText = "LspKindText", + NoiceCompletionItemKindTypeParameter = "LspKindTypeParameter", + NoiceCompletionItemKindUnit = "LspKindUnit", + NoiceCompletionItemKindValue = "LspKindValue", + NoiceCompletionItemKindVariable = "LspKindVariable", NonText = { fg = "#545c7e" }, @@ -2083,6 +1737,30 @@ local highlights = { bg = "#16161e", fg = "#16161e" }, + OctoDetailsLabel = { + bold = true, + fg = "#2ac3de" + }, + OctoDetailsValue = "@variable.member", + OctoDirty = { + bold = true, + fg = "#ff9e64" + }, + OctoIssueTitle = { + bold = true, + fg = "#9d7cd8" + }, + OctoStateChangesRequested = "DiagnosticVirtualTextWarn", + OctoStateClosed = "DiagnosticVirtualTextError", + OctoStateMerged = { + bg = "#2a283b", + fg = "#bb9af7" + }, + OctoStateOpen = "DiagnosticVirtualTextHint", + OctoStatePending = "DiagnosticVirtualTextWarn", + OctoStatusColumn = { + fg = "#2ac3de" + }, Operator = { fg = "#89ddff" }, @@ -2091,7 +1769,7 @@ local highlights = { fg = "#c0caf5" }, PmenuSbar = { - bg = "#222229" + bg = "#1f1f29" }, PmenuSel = { bg = "#343a55" @@ -2247,34 +1925,6 @@ local highlights = { bg = "#f7768e", fg = "#15161e" }, - TSNodeKey = { - bold = true, - fg = "#ff007c" - }, - TSNodeUnmatched = { - fg = "#545c7e" - }, - TSRainbowBlue = { - fg = "#7aa2f7" - }, - TSRainbowCyan = { - fg = "#7dcfff" - }, - TSRainbowGreen = { - fg = "#9ece6a" - }, - TSRainbowOrange = { - fg = "#ff9e64" - }, - TSRainbowRed = { - fg = "#f7768e" - }, - TSRainbowViolet = { - fg = "#9d7cd8" - }, - TSRainbowYellow = { - fg = "#e0af68" - }, TabLine = { bg = "#16161e", fg = "#3b4261" @@ -2297,6 +1947,17 @@ local highlights = { bg = "#16161e", fg = "#c0caf5" }, + TelescopePromptBorder = { + bg = "#16161e", + fg = "#ff9e64" + }, + TelescopePromptTitle = { + bg = "#16161e", + fg = "#ff9e64" + }, + TelescopeResultsComment = { + fg = "#545c7e" + }, Title = { bold = true, fg = "#7aa2f7" @@ -2328,6 +1989,60 @@ local highlights = { VertSplit = { fg = "#15161e" }, + VimwikiHR = { + bg = "NONE", + fg = "#e0af68" + }, + VimwikiHeaderChar = { + bg = "NONE", + fg = "#e0af68" + }, + VimwikiHeaer1 = { + bg = "NONE", + bold = true, + fg = "#7aa2f7" + }, + VimwikiHeaer2 = { + bg = "NONE", + bold = true, + fg = "#e0af68" + }, + VimwikiHeaer3 = { + bg = "NONE", + bold = true, + fg = "#9ece6a" + }, + VimwikiHeaer4 = { + bg = "NONE", + bold = true, + fg = "#1abc9c" + }, + VimwikiHeaer5 = { + bg = "NONE", + bold = true, + fg = "#bb9af7" + }, + VimwikiHeaer6 = { + bg = "NONE", + bold = true, + fg = "#9d7cd8" + }, + VimwikiLink = { + bg = "NONE", + fg = "#7aa2f7" + }, + VimwikiList = { + bg = "NONE", + fg = "#ff9e64" + }, + VimwikiMarkers = { + bg = "NONE", + fg = "#7aa2f7" + }, + VimwikiTag = { + bg = "NONE", + fg = "#9ece6a" + }, Visual = { bg = "#283457" }, @@ -2364,22 +2079,14 @@ local highlights = { WildMenu = { bg = "#283457" }, - WinBar = { - link = "StatusLine" - }, - WinBarNC = { - link = "StatusLineNC" - }, + WinBar = "StatusLine", + WinBarNC = "StatusLineNC", WinSeparator = { bold = true, fg = "#15161e" }, - YankyPut = { - link = "IncSearch" - }, - YankyYanked = { - link = "IncSearch" - }, + YankyPut = "Search", + YankyYanked = "IncSearch", debugBreakpoint = { bg = "#192b38", fg = "#0db9d7" @@ -2411,9 +2118,7 @@ local highlights = { diffRemoved = { fg = "#914c54" }, - dosIniLabel = { - link = "@property" - }, + dosIniLabel = "@property", healthError = { fg = "#db4b4b" }, @@ -2445,65 +2150,10 @@ local highlights = { bg = "#c0caf5", fg = "#1a1b26" }, - markdownCode = { - fg = "#1abc9c" - }, - markdownCodeBlock = { - fg = "#1abc9c" - }, - markdownH1 = { - bold = true, - fg = "#bb9af7" - }, - markdownH2 = { - bold = true, - fg = "#7aa2f7" - }, - markdownHeadingDelimiter = { - bold = true, - fg = "#ff9e64" - }, - markdownLinkText = { - fg = "#7aa2f7", - underline = true - }, - mkdCodeDelimiter = { - bg = "#414868", - fg = "#c0caf5" - }, - mkdCodeEnd = { - bold = true, - fg = "#1abc9c" - }, - mkdCodeStart = { - bold = true, - fg = "#1abc9c" - }, qfFileName = { fg = "#7aa2f7" }, qfLineNr = { fg = "#737aa2" - }, - rainbowcol1 = { - fg = "#f7768e" - }, - rainbowcol2 = { - fg = "#e0af68" - }, - rainbowcol3 = { - fg = "#9ece6a" - }, - rainbowcol4 = { - fg = "#1abc9c" - }, - rainbowcol5 = { - fg = "#7aa2f7" - }, - rainbowcol6 = { - fg = "#bb9af7" - }, - rainbowcol7 = { - fg = "#9d7cd8" } } diff --git a/extras/lua/tokyonight_storm.lua b/extras/lua/tokyonight_storm.lua index 1a09458a..bc00bf58 100644 --- a/extras/lua/tokyonight_storm.lua +++ b/extras/lua/tokyonight_storm.lua @@ -1,5 +1,6 @@ local colors = { _name = "tokyonight_storm", + _style = "storm", bg = "#24283b", bg_dark = "#1f2335", bg_float = "#1f2335", @@ -23,10 +24,6 @@ local colors = { cyan = "#7dcfff", dark3 = "#545c7e", dark5 = "#737aa2", - delta = { - add = "#316172", - delete = "#763842" - }, diff = { add = "#283b4d", change = "#272d43", @@ -45,11 +42,6 @@ local colors = { delete = "#914c54", ignore = "#545c7e" }, - gitSigns = { - add = "#266d6a", - change = "#536c9e", - delete = "#b2555b" - }, green = "#9ece6a", green1 = "#73daca", green2 = "#41a6b5", @@ -60,6 +52,7 @@ local colors = { none = "NONE", orange = "#ff9e64", purple = "#9d7cd8", + rainbow = { "#7aa2f7", "#e0af68", "#9ece6a", "#1abc9c", "#bb9af7", "#9d7cd8" }, red = "#f7768e", red1 = "#db4b4b", teal = "#1abc9c", @@ -70,24 +63,13 @@ local colors = { } local highlights = { - ["@annotation"] = { - link = "PreProc" - }, - ["@attribute"] = { - link = "PreProc" - }, - ["@boolean"] = { - link = "Boolean" - }, - ["@character"] = { - link = "Character" - }, - ["@character.special"] = { - link = "SpecialChar" - }, - ["@comment"] = { - link = "Comment" - }, + ["@annotation"] = "PreProc", + ["@attribute"] = "PreProc", + ["@boolean"] = "Boolean", + ["@character"] = "Character", + ["@character.printf"] = "SpecialChar", + ["@character.special"] = "SpecialChar", + ["@comment"] = "Comment", ["@comment.error"] = { fg = "#db4b4b" }, @@ -106,231 +88,103 @@ local highlights = { ["@comment.warning"] = { fg = "#e0af68" }, - ["@constant"] = { - link = "Constant" - }, - ["@constant.builtin"] = { - link = "Special" - }, - ["@constant.macro"] = { - link = "Define" - }, + ["@constant"] = "Constant", + ["@constant.builtin"] = "Special", + ["@constant.macro"] = "Define", ["@constructor"] = { fg = "#bb9af7" }, ["@constructor.tsx"] = { fg = "#2ac3de" }, - ["@diff.delta"] = { - link = "DiffChange" - }, - ["@diff.minus"] = { - link = "DiffDelete" - }, - ["@diff.plus"] = { - link = "DiffAdd" - }, - ["@function"] = { - link = "Function" - }, - ["@function.builtin"] = { - link = "Special" - }, - ["@function.call"] = { - link = "@function" - }, - ["@function.macro"] = { - link = "Macro" - }, - ["@function.method"] = { - link = "Function" - }, - ["@function.method.call"] = { - link = "@function.method" - }, + ["@diff.delta"] = "DiffChange", + ["@diff.minus"] = "DiffDelete", + ["@diff.plus"] = "DiffAdd", + ["@function"] = "Function", + ["@function.builtin"] = "Special", + ["@function.call"] = "@function", + ["@function.macro"] = "Macro", + ["@function.method"] = "Function", + ["@function.method.call"] = "@function.method", ["@keyword"] = { fg = "#9d7cd8", - style = { - italic = true - } - }, - ["@keyword.conditional"] = { - link = "Conditional" - }, - ["@keyword.coroutine"] = { - link = "@keyword" - }, - ["@keyword.debug"] = { - link = "Debug" - }, - ["@keyword.directive"] = { - link = "PreProc" - }, - ["@keyword.directive.define"] = { - link = "Define" - }, - ["@keyword.exception"] = { - link = "Exception" + italic = true }, + ["@keyword.conditional"] = "Conditional", + ["@keyword.coroutine"] = "@keyword", + ["@keyword.debug"] = "Debug", + ["@keyword.directive"] = "PreProc", + ["@keyword.directive.define"] = "Define", + ["@keyword.exception"] = "Exception", ["@keyword.function"] = { - fg = "#bb9af7", - style = {} - }, - ["@keyword.import"] = { - link = "Include" - }, - ["@keyword.operator"] = { - link = "@operator" - }, - ["@keyword.repeat"] = { - link = "Repeat" - }, - ["@keyword.return"] = { - link = "@keyword" - }, - ["@keyword.storage"] = { - link = "StorageClass" + fg = "#bb9af7" }, + ["@keyword.import"] = "Include", + ["@keyword.operator"] = "@operator", + ["@keyword.repeat"] = "Repeat", + ["@keyword.return"] = "@keyword", + ["@keyword.storage"] = "StorageClass", ["@label"] = { fg = "#7aa2f7" }, - ["@lsp.type.boolean"] = { - link = "@boolean" - }, - ["@lsp.type.builtinType"] = { - link = "@type.builtin" - }, - ["@lsp.type.comment"] = { - link = "@comment" - }, - ["@lsp.type.decorator"] = { - link = "@attribute" - }, - ["@lsp.type.deriveHelper"] = { - link = "@attribute" - }, - ["@lsp.type.enum"] = { - link = "@type" - }, - ["@lsp.type.enumMember"] = { - link = "@constant" - }, - ["@lsp.type.escapeSequence"] = { - link = "@string.escape" - }, - ["@lsp.type.formatSpecifier"] = { - link = "@markup.list" - }, - ["@lsp.type.generic"] = { - link = "@variable" - }, + ["@lsp.type.boolean"] = "@boolean", + ["@lsp.type.builtinType"] = "@type.builtin", + ["@lsp.type.comment"] = "@comment", + ["@lsp.type.decorator"] = "@attribute", + ["@lsp.type.deriveHelper"] = "@attribute", + ["@lsp.type.enum"] = "@type", + ["@lsp.type.enumMember"] = "@constant", + ["@lsp.type.escapeSequence"] = "@string.escape", + ["@lsp.type.formatSpecifier"] = "@markup.list", + ["@lsp.type.generic"] = "@variable", ["@lsp.type.interface"] = { - fg = "#6ad5e8" - }, - ["@lsp.type.keyword"] = { - link = "@keyword" - }, - ["@lsp.type.lifetime"] = { - link = "@keyword.storage" - }, - ["@lsp.type.namespace"] = { - link = "@module" - }, - ["@lsp.type.number"] = { - link = "@number" - }, - ["@lsp.type.operator"] = { - link = "@operator" - }, - ["@lsp.type.parameter"] = { - link = "@variable.parameter" - }, - ["@lsp.type.property"] = { - link = "@property" - }, - ["@lsp.type.selfKeyword"] = { - link = "@variable.builtin" - }, - ["@lsp.type.selfTypeKeyword"] = { - link = "@variable.builtin" - }, - ["@lsp.type.string"] = { - link = "@string" - }, - ["@lsp.type.typeAlias"] = { - link = "@type.definition" - }, + fg = "#57c5e5" + }, + ["@lsp.type.keyword"] = "@keyword", + ["@lsp.type.lifetime"] = "@keyword.storage", + ["@lsp.type.namespace"] = "@module", + ["@lsp.type.namespace.python"] = "@variable", + ["@lsp.type.number"] = "@number", + ["@lsp.type.operator"] = "@operator", + ["@lsp.type.parameter"] = "@variable.parameter", + ["@lsp.type.property"] = "@property", + ["@lsp.type.selfKeyword"] = "@variable.builtin", + ["@lsp.type.selfTypeKeyword"] = "@variable.builtin", + ["@lsp.type.string"] = "@string", + ["@lsp.type.typeAlias"] = "@type.definition", ["@lsp.type.unresolvedReference"] = { sp = "#db4b4b", undercurl = true }, ["@lsp.type.variable"] = {}, - ["@lsp.typemod.class.defaultLibrary"] = { - link = "@type.builtin" - }, - ["@lsp.typemod.enum.defaultLibrary"] = { - link = "@type.builtin" - }, - ["@lsp.typemod.enumMember.defaultLibrary"] = { - link = "@constant.builtin" - }, - ["@lsp.typemod.function.defaultLibrary"] = { - link = "@function.builtin" - }, - ["@lsp.typemod.keyword.async"] = { - link = "@keyword.coroutine" - }, - ["@lsp.typemod.keyword.injected"] = { - link = "@keyword" - }, - ["@lsp.typemod.macro.defaultLibrary"] = { - link = "@function.builtin" - }, - ["@lsp.typemod.method.defaultLibrary"] = { - link = "@function.builtin" - }, - ["@lsp.typemod.operator.injected"] = { - link = "@operator" - }, - ["@lsp.typemod.string.injected"] = { - link = "@string" - }, - ["@lsp.typemod.struct.defaultLibrary"] = { - link = "@type.builtin" - }, + ["@lsp.typemod.class.defaultLibrary"] = "@type.builtin", + ["@lsp.typemod.enum.defaultLibrary"] = "@type.builtin", + ["@lsp.typemod.enumMember.defaultLibrary"] = "@constant.builtin", + ["@lsp.typemod.function.defaultLibrary"] = "@function.builtin", + ["@lsp.typemod.keyword.async"] = "@keyword.coroutine", + ["@lsp.typemod.keyword.injected"] = "@keyword", + ["@lsp.typemod.macro.defaultLibrary"] = "@function.builtin", + ["@lsp.typemod.method.defaultLibrary"] = "@function.builtin", + ["@lsp.typemod.operator.injected"] = "@operator", + ["@lsp.typemod.string.injected"] = "@string", + ["@lsp.typemod.struct.defaultLibrary"] = "@type.builtin", ["@lsp.typemod.type.defaultLibrary"] = { fg = "#29a4bd" }, ["@lsp.typemod.typeAlias.defaultLibrary"] = { fg = "#29a4bd" }, - ["@lsp.typemod.variable.callable"] = { - link = "@function" - }, - ["@lsp.typemod.variable.defaultLibrary"] = { - link = "@variable.builtin" - }, - ["@lsp.typemod.variable.injected"] = { - link = "@variable" - }, - ["@lsp.typemod.variable.static"] = { - link = "@constant" - }, - ["@markup"] = { - link = "@none" - }, + ["@lsp.typemod.variable.callable"] = "@function", + ["@lsp.typemod.variable.defaultLibrary"] = "@variable.builtin", + ["@lsp.typemod.variable.injected"] = "@variable", + ["@lsp.typemod.variable.static"] = "@constant", + ["@markup"] = "@none", ["@markup.emphasis"] = { italic = true }, - ["@markup.environment"] = { - link = "Macro" - }, - ["@markup.environment.name"] = { - link = "Type" - }, - ["@markup.heading"] = { - link = "Title" - }, + ["@markup.environment"] = "Macro", + ["@markup.environment.name"] = "Type", + ["@markup.heading"] = "Title", ["@markup.heading.1.markdown"] = { bold = true, fg = "#7aa2f7" @@ -355,18 +209,15 @@ local highlights = { bold = true, fg = "#9d7cd8" }, + ["@markup.italic"] = { + italic = true + }, ["@markup.link"] = { fg = "#1abc9c" }, - ["@markup.link.label"] = { - link = "SpecialChar" - }, - ["@markup.link.label.symbol"] = { - link = "Identifier" - }, - ["@markup.link.url"] = { - link = "Underlined" - }, + ["@markup.link.label"] = "SpecialChar", + ["@markup.link.label.symbol"] = "Identifier", + ["@markup.link.url"] = "Underlined", ["@markup.list"] = { fg = "#89ddff" }, @@ -380,12 +231,8 @@ local highlights = { ["@markup.list.unchecked"] = { fg = "#7aa2f7" }, - ["@markup.math"] = { - link = "Special" - }, - ["@markup.raw"] = { - link = "String" - }, + ["@markup.math"] = "Special", + ["@markup.raw"] = "String", ["@markup.raw.markdown_inline"] = { bg = "#414868", fg = "#7aa2f7" @@ -399,22 +246,14 @@ local highlights = { ["@markup.underline"] = { underline = true }, - ["@module"] = { - link = "Include" - }, + ["@module"] = "Include", ["@module.builtin"] = { fg = "#f7768e" }, - ["@namespace.builtin"] = { - link = "@variable.builtin" - }, + ["@namespace.builtin"] = "@variable.builtin", ["@none"] = {}, - ["@number"] = { - link = "Number" - }, - ["@number.float"] = { - link = "Float" - }, + ["@number"] = "Number", + ["@number.float"] = "Float", ["@operator"] = { fg = "#89ddff" }, @@ -430,9 +269,7 @@ local highlights = { ["@punctuation.special"] = { fg = "#89ddff" }, - ["@string"] = { - link = "String" - }, + ["@string"] = "String", ["@string.documentation"] = { fg = "#e0af68" }, @@ -442,36 +279,23 @@ local highlights = { ["@string.regexp"] = { fg = "#b4f9f8" }, - ["@tag"] = { - link = "Label" - }, - ["@tag.attribute"] = { - link = "@property" - }, - ["@tag.delimiter"] = { - link = "Delimiter" - }, + ["@tag"] = "Label", + ["@tag.attribute"] = "@property", + ["@tag.delimiter"] = "Delimiter", ["@tag.delimiter.tsx"] = { fg = "#607dbf" }, ["@tag.tsx"] = { fg = "#f7768e" }, - ["@type"] = { - link = "Type" - }, + ["@type"] = "Type", ["@type.builtin"] = { fg = "#29a4bd" }, - ["@type.definition"] = { - link = "Typedef" - }, - ["@type.qualifier"] = { - link = "@keyword" - }, + ["@type.definition"] = "Typedef", + ["@type.qualifier"] = "@keyword", ["@variable"] = { - fg = "#c0caf5", - style = {} + fg = "#c0caf5" }, ["@variable.builtin"] = { fg = "#f7768e" @@ -483,7 +307,7 @@ local highlights = { fg = "#e0af68" }, ["@variable.parameter.builtin"] = { - fg = "#e6bf86" + fg = "#dab484" }, ALEErrorSign = { fg = "#db4b4b" @@ -491,118 +315,48 @@ local highlights = { ALEWarningSign = { fg = "#e0af68" }, - AerialArrayIcon = { - link = "LspKindArray" - }, - AerialBooleanIcon = { - link = "LspKindBoolean" - }, - AerialClassIcon = { - link = "LspKindClass" - }, - AerialColorIcon = { - link = "LspKindColor" - }, - AerialConstantIcon = { - link = "LspKindConstant" - }, - AerialConstructorIcon = { - link = "LspKindConstructor" - }, - AerialEnumIcon = { - link = "LspKindEnum" - }, - AerialEnumMemberIcon = { - link = "LspKindEnumMember" - }, - AerialEventIcon = { - link = "LspKindEvent" - }, - AerialFieldIcon = { - link = "LspKindField" - }, - AerialFileIcon = { - link = "LspKindFile" - }, - AerialFolderIcon = { - link = "LspKindFolder" - }, - AerialFunctionIcon = { - link = "LspKindFunction" - }, + AerialArrayIcon = "LspKindArray", + AerialBooleanIcon = "LspKindBoolean", + AerialClassIcon = "LspKindClass", + AerialColorIcon = "LspKindColor", + AerialConstantIcon = "LspKindConstant", + AerialConstructorIcon = "LspKindConstructor", + AerialEnumIcon = "LspKindEnum", + AerialEnumMemberIcon = "LspKindEnumMember", + AerialEventIcon = "LspKindEvent", + AerialFieldIcon = "LspKindField", + AerialFileIcon = "LspKindFile", + AerialFolderIcon = "LspKindFolder", + AerialFunctionIcon = "LspKindFunction", AerialGuide = { fg = "#3b4261" }, - AerialInterfaceIcon = { - link = "LspKindInterface" - }, - AerialKeyIcon = { - link = "LspKindKey" - }, - AerialKeywordIcon = { - link = "LspKindKeyword" - }, - AerialLine = { - link = "LspInlayHint" - }, - AerialMethodIcon = { - link = "LspKindMethod" - }, - AerialModuleIcon = { - link = "LspKindModule" - }, - AerialNamespaceIcon = { - link = "LspKindNamespace" - }, + AerialInterfaceIcon = "LspKindInterface", + AerialKeyIcon = "LspKindKey", + AerialKeywordIcon = "LspKindKeyword", + AerialLine = "LspInlayHint", + AerialMethodIcon = "LspKindMethod", + AerialModuleIcon = "LspKindModule", + AerialNamespaceIcon = "LspKindNamespace", AerialNormal = { bg = "NONE", fg = "#c0caf5" }, - AerialNullIcon = { - link = "LspKindNull" - }, - AerialNumberIcon = { - link = "LspKindNumber" - }, - AerialObjectIcon = { - link = "LspKindObject" - }, - AerialOperatorIcon = { - link = "LspKindOperator" - }, - AerialPackageIcon = { - link = "LspKindPackage" - }, - AerialPropertyIcon = { - link = "LspKindProperty" - }, - AerialReferenceIcon = { - link = "LspKindReference" - }, - AerialSnippetIcon = { - link = "LspKindSnippet" - }, - AerialStringIcon = { - link = "LspKindString" - }, - AerialStructIcon = { - link = "LspKindStruct" - }, - AerialTextIcon = { - link = "LspKindText" - }, - AerialTypeParameterIcon = { - link = "LspKindTypeParameter" - }, - AerialUnitIcon = { - link = "LspKindUnit" - }, - AerialValueIcon = { - link = "LspKindValue" - }, - AerialVariableIcon = { - link = "LspKindVariable" - }, + AerialNullIcon = "LspKindNull", + AerialNumberIcon = "LspKindNumber", + AerialObjectIcon = "LspKindObject", + AerialOperatorIcon = "LspKindOperator", + AerialPackageIcon = "LspKindPackage", + AerialPropertyIcon = "LspKindProperty", + AerialReferenceIcon = "LspKindReference", + AerialSnippetIcon = "LspKindSnippet", + AerialStringIcon = "LspKindString", + AerialStructIcon = "LspKindStruct", + AerialTextIcon = "LspKindText", + AerialTypeParameterIcon = "LspKindTypeParameter", + AerialUnitIcon = "LspKindUnit", + AerialValueIcon = "LspKindValue", + AerialVariableIcon = "LspKindVariable", AlphaButtons = { fg = "#7dcfff" }, @@ -619,7 +373,8 @@ local highlights = { fg = "#ff9e64" }, Bold = { - bold = true + bold = true, + fg = "#c0caf5" }, BufferAlternate = { bg = "#3b4261", @@ -811,28 +566,16 @@ local highlights = { bg = "NONE", fg = "#2ac3de" }, - CmpItemKindArray = { - link = "LspKindArray" - }, - CmpItemKindBoolean = { - link = "LspKindBoolean" - }, - CmpItemKindClass = { - link = "LspKindClass" - }, + CmpItemKindArray = "LspKindArray", + CmpItemKindBoolean = "LspKindBoolean", + CmpItemKindClass = "LspKindClass", CmpItemKindCodeium = { bg = "NONE", fg = "#1abc9c" }, - CmpItemKindColor = { - link = "LspKindColor" - }, - CmpItemKindConstant = { - link = "LspKindConstant" - }, - CmpItemKindConstructor = { - link = "LspKindConstructor" - }, + CmpItemKindColor = "LspKindColor", + CmpItemKindConstant = "LspKindConstant", + CmpItemKindConstructor = "LspKindConstructor", CmpItemKindCopilot = { bg = "NONE", fg = "#1abc9c" @@ -841,94 +584,38 @@ local highlights = { bg = "NONE", fg = "#a9b1d6" }, - CmpItemKindEnum = { - link = "LspKindEnum" - }, - CmpItemKindEnumMember = { - link = "LspKindEnumMember" - }, - CmpItemKindEvent = { - link = "LspKindEvent" - }, - CmpItemKindField = { - link = "LspKindField" - }, - CmpItemKindFile = { - link = "LspKindFile" - }, - CmpItemKindFolder = { - link = "LspKindFolder" - }, - CmpItemKindFunction = { - link = "LspKindFunction" - }, - CmpItemKindInterface = { - link = "LspKindInterface" - }, - CmpItemKindKey = { - link = "LspKindKey" - }, - CmpItemKindKeyword = { - link = "LspKindKeyword" - }, - CmpItemKindMethod = { - link = "LspKindMethod" - }, - CmpItemKindModule = { - link = "LspKindModule" - }, - CmpItemKindNamespace = { - link = "LspKindNamespace" - }, - CmpItemKindNull = { - link = "LspKindNull" - }, - CmpItemKindNumber = { - link = "LspKindNumber" - }, - CmpItemKindObject = { - link = "LspKindObject" - }, - CmpItemKindOperator = { - link = "LspKindOperator" - }, - CmpItemKindPackage = { - link = "LspKindPackage" - }, - CmpItemKindProperty = { - link = "LspKindProperty" - }, - CmpItemKindReference = { - link = "LspKindReference" - }, - CmpItemKindSnippet = { - link = "LspKindSnippet" - }, - CmpItemKindString = { - link = "LspKindString" - }, - CmpItemKindStruct = { - link = "LspKindStruct" - }, + CmpItemKindEnum = "LspKindEnum", + CmpItemKindEnumMember = "LspKindEnumMember", + CmpItemKindEvent = "LspKindEvent", + CmpItemKindField = "LspKindField", + CmpItemKindFile = "LspKindFile", + CmpItemKindFolder = "LspKindFolder", + CmpItemKindFunction = "LspKindFunction", + CmpItemKindInterface = "LspKindInterface", + CmpItemKindKey = "LspKindKey", + CmpItemKindKeyword = "LspKindKeyword", + CmpItemKindMethod = "LspKindMethod", + CmpItemKindModule = "LspKindModule", + CmpItemKindNamespace = "LspKindNamespace", + CmpItemKindNull = "LspKindNull", + CmpItemKindNumber = "LspKindNumber", + CmpItemKindObject = "LspKindObject", + CmpItemKindOperator = "LspKindOperator", + CmpItemKindPackage = "LspKindPackage", + CmpItemKindProperty = "LspKindProperty", + CmpItemKindReference = "LspKindReference", + CmpItemKindSnippet = "LspKindSnippet", + CmpItemKindString = "LspKindString", + CmpItemKindStruct = "LspKindStruct", CmpItemKindTabNine = { bg = "NONE", fg = "#1abc9c" }, - CmpItemKindText = { - link = "LspKindText" - }, - CmpItemKindTypeParameter = { - link = "LspKindTypeParameter" - }, - CmpItemKindUnit = { - link = "LspKindUnit" - }, - CmpItemKindValue = { - link = "LspKindValue" - }, - CmpItemKindVariable = { - link = "LspKindVariable" - }, + CmpItemKindText = "LspKindText", + CmpItemKindTypeParameter = "LspKindTypeParameter", + CmpItemKindUnit = "LspKindUnit", + CmpItemKindValue = "LspKindValue", + CmpItemKindVariable = "LspKindVariable", CmpItemMenu = { bg = "NONE", fg = "#565f89" @@ -941,9 +628,7 @@ local highlights = { }, Comment = { fg = "#565f89", - style = { - italic = true - } + italic = true }, Conceal = { fg = "#737aa2" @@ -951,9 +636,7 @@ local highlights = { Constant = { fg = "#ff9e64" }, - CurSearch = { - link = "IncSearch" - }, + CurSearch = "IncSearch", Cursor = { bg = "#c0caf5", fg = "#24283b" @@ -969,7 +652,8 @@ local highlights = { bg = "#292e42" }, CursorLineNr = { - fg = "#737aa2" + bold = true, + fg = "#ff9e64" }, DapStoppedLine = { bg = "#373640" @@ -1005,9 +689,7 @@ local highlights = { DefinitionIcon = { fg = "#7aa2f7" }, - Delimiter = { - link = "Special" - }, + Delimiter = "Special", DiagnosticError = { fg = "#db4b4b" }, @@ -1017,9 +699,7 @@ local highlights = { DiagnosticInfo = { fg = "#0db9d7" }, - DiagnosticInformation = { - link = "DiagnosticInfo" - }, + DiagnosticInformation = "DiagnosticInfo", DiagnosticUnderlineError = { sp = "#db4b4b", undercurl = true @@ -1058,9 +738,7 @@ local highlights = { DiagnosticWarn = { fg = "#e0af68" }, - DiagnosticWarning = { - link = "DiagnosticWarn" - }, + DiagnosticWarning = "DiagnosticWarn", DiffAdd = { bg = "#283b4d" }, @@ -1085,9 +763,6 @@ local highlights = { ErrorMsg = { fg = "#db4b4b" }, - FernBranchText = { - fg = "#7aa2f7" - }, FlashBackdrop = { fg = "#545c7e" }, @@ -1117,35 +792,69 @@ local highlights = { fg = "#c0caf5" }, Function = { - fg = "#7aa2f7", - style = {} + fg = "#7aa2f7" + }, + FzfLuaBorder = { + bg = "#1f2335", + fg = "#29a4bd" + }, + FzfLuaCursor = "IncSearch", + FzfLuaDirPart = { + fg = "#a9b1d6" + }, + FzfLuaFilePart = "FzfLuaFzfNormal", + FzfLuaFzfCursorLine = "Visual", + FzfLuaFzfNormal = { + fg = "#c0caf5" + }, + FzfLuaFzfPointer = { + fg = "#ff007c" + }, + FzfLuaFzfSeparator = { + bg = "#1f2335", + fg = "#ff9e64" + }, + FzfLuaHeaderBind = "@punctuation.special", + FzfLuaHeaderText = "Title", + FzfLuaNormal = { + bg = "#1f2335", + fg = "#c0caf5" + }, + FzfLuaPath = "Directory", + FzfLuaPreviewTitle = { + bg = "#1f2335", + fg = "#29a4bd" + }, + FzfLuaTitle = { + bg = "#1f2335", + fg = "#ff9e64" }, GitGutterAdd = { - fg = "#266d6a" + fg = "#449dab" }, GitGutterAddLineNr = { - fg = "#266d6a" + fg = "#449dab" }, GitGutterChange = { - fg = "#536c9e" + fg = "#6183bb" }, GitGutterChangeLineNr = { - fg = "#536c9e" + fg = "#6183bb" }, GitGutterDelete = { - fg = "#b2555b" + fg = "#914c54" }, GitGutterDeleteLineNr = { - fg = "#b2555b" + fg = "#914c54" }, GitSignsAdd = { - fg = "#266d6a" + fg = "#449dab" }, GitSignsChange = { - fg = "#536c9e" + fg = "#6183bb" }, GitSignsDelete = { - fg = "#b2555b" + fg = "#914c54" }, GlyphPalette1 = { fg = "#db4b4b" @@ -1168,9 +877,7 @@ local highlights = { GlyphPalette9 = { fg = "#f7768e" }, - Headline = { - link = "Headline1" - }, + Headline = "Headline1", Headline1 = { bg = "#282e44" }, @@ -1189,9 +896,6 @@ local highlights = { Headline6 = { bg = "#2a2c43" }, - Hlargs = { - fg = "#e0af68" - }, HopNextKey = { bold = true, fg = "#ff007c" @@ -1211,12 +915,11 @@ local highlights = { nocombine = true }, IblScope = { - fg = "#9d7cd8", + fg = "#2ac3de", nocombine = true }, Identifier = { - fg = "#bb9af7", - style = {} + fg = "#bb9af7" }, IlluminatedWordRead = { bg = "#3b4261" @@ -1236,17 +939,24 @@ local highlights = { nocombine = true }, IndentBlanklineContextChar = { - fg = "#9d7cd8", + fg = "#2ac3de", + nocombine = true + }, + IndentLine = { + fg = "#3b4261", + nocombine = true + }, + IndentLineCurrent = { + fg = "#2ac3de", nocombine = true }, Italic = { + fg = "#c0caf5", italic = true }, Keyword = { fg = "#7dcfff", - style = { - italic = true - } + italic = true }, LazyProgressDone = { bold = true, @@ -1272,50 +982,13 @@ local highlights = { bold = true, fg = "#c0caf5" }, - LightspeedGreyWash = { - fg = "#545c7e" - }, - LightspeedLabel = { - bold = true, - fg = "#ff007c", - underline = true - }, - LightspeedLabelDistant = { - bold = true, - fg = "#73daca", - underline = true - }, - LightspeedLabelDistantOverlapped = { - fg = "#41a6b5", - underline = true - }, - LightspeedLabelOverlapped = { - fg = "#ff007c", - underline = true - }, - LightspeedMaskedChar = { - fg = "#ff9e64" - }, - LightspeedOneCharMatch = { - bg = "#ff007c", - bold = true, - fg = "#c0caf5" - }, - LightspeedPendingOpArea = { - bg = "#ff007c", - fg = "#c0caf5" - }, - LightspeedShortcut = { - bg = "#ff007c", - bold = true, - fg = "#c0caf5", - underline = true + LineNr = { + fg = "#3b4261" }, - LightspeedUnlabeledMatch = { - bold = true, - fg = "#0db9d7" + LineNrAbove = { + fg = "#3b4261" }, - LineNr = { + LineNrBelow = { fg = "#3b4261" }, LspCodeLens = { @@ -1335,108 +1008,40 @@ local highlights = { bg = "#262c40", fg = "#545c7e" }, - LspKindArray = { - link = "@punctuation.bracket" - }, - LspKindBoolean = { - link = "@boolean" - }, - LspKindClass = { - link = "@type" - }, - LspKindColor = { - link = "Special" - }, - LspKindConstant = { - link = "@constant" - }, - LspKindConstructor = { - link = "@constructor" - }, - LspKindEnum = { - link = "@lsp.type.enum" - }, - LspKindEnumMember = { - link = "@lsp.type.enumMember" - }, - LspKindEvent = { - link = "Special" - }, - LspKindField = { - link = "@variable.member" - }, - LspKindFile = { - link = "Normal" - }, - LspKindFolder = { - link = "Directory" - }, - LspKindFunction = { - link = "@function" - }, - LspKindInterface = { - link = "@lsp.type.interface" - }, - LspKindKey = { - link = "@variable.member" - }, - LspKindKeyword = { - link = "@lsp.type.keyword" - }, - LspKindMethod = { - link = "@function.method" - }, - LspKindModule = { - link = "@module" - }, - LspKindNamespace = { - link = "@module" - }, - LspKindNull = { - link = "@constant.builtin" - }, - LspKindNumber = { - link = "@number" - }, - LspKindObject = { - link = "@constant" - }, - LspKindOperator = { - link = "@operator" - }, - LspKindPackage = { - link = "@module" - }, - LspKindProperty = { - link = "@property" - }, - LspKindReference = { - link = "@markup.link" - }, - LspKindSnippet = { - link = "Conceal" - }, - LspKindString = { - link = "@string" - }, - LspKindStruct = { - link = "@lsp.type.struct" - }, - LspKindText = { - link = "@markup" - }, - LspKindTypeParameter = { - link = "@lsp.type.typeParameter" - }, - LspKindUnit = { - link = "@lsp.type.struct" - }, - LspKindValue = { - link = "@string" - }, - LspKindVariable = { - link = "@variable" - }, + LspKindArray = "@punctuation.bracket", + LspKindBoolean = "@boolean", + LspKindClass = "@type", + LspKindColor = "Special", + LspKindConstant = "@constant", + LspKindConstructor = "@constructor", + LspKindEnum = "@lsp.type.enum", + LspKindEnumMember = "@lsp.type.enumMember", + LspKindEvent = "Special", + LspKindField = "@variable.member", + LspKindFile = "Normal", + LspKindFolder = "Directory", + LspKindFunction = "@function", + LspKindInterface = "@lsp.type.interface", + LspKindKey = "@variable.member", + LspKindKeyword = "@lsp.type.keyword", + LspKindMethod = "@function.method", + LspKindModule = "@module", + LspKindNamespace = "@module", + LspKindNull = "@constant.builtin", + LspKindNumber = "@number", + LspKindObject = "@constant", + LspKindOperator = "@operator", + LspKindPackage = "@module", + LspKindProperty = "@property", + LspKindReference = "@markup.link", + LspKindSnippet = "Conceal", + LspKindString = "@string", + LspKindStruct = "@lsp.type.struct", + LspKindText = "@markup", + LspKindTypeParameter = "@lsp.type.typeParameter", + LspKindUnit = "@lsp.type.struct", + LspKindValue = "@string", + LspKindVariable = "@variable", LspReferenceRead = { bg = "#3b4261" }, @@ -1481,6 +1086,18 @@ local highlights = { bold = true, fg = "#ff9e64" }, + MiniAnimateCursor = { + nocombine = true, + reverse = true + }, + MiniAnimateNormalFloat = "NormalFloat", + MiniClueBorder = "FloatBorder", + MiniClueDescGroup = "DiagnosticFloatingWarn", + MiniClueDescSingle = "NormalFloat", + MiniClueNextKey = "DiagnosticFloatingHint", + MiniClueNextKeyWithPostkeys = "DiagnosticFloatingError", + MiniClueSeparator = "DiagnosticFloatingInfo", + MiniClueTitle = "FloatTitle", MiniCompletionActiveParameter = { underline = true }, @@ -1490,6 +1107,96 @@ local highlights = { MiniCursorwordCurrent = { bg = "#3b4261" }, + MiniDepsChangeAdded = "diffAdded", + MiniDepsChangeRemoved = "diffRemoved", + MiniDepsHint = "DiagnosticHint", + MiniDepsInfo = "DiagnosticInfo", + MiniDepsMsgBreaking = "DiagnosticWarn", + MiniDepsPlaceholder = "Comment", + MiniDepsTitle = "Title", + MiniDepsTitleError = { + bg = "#914c54", + fg = "#1d202f" + }, + MiniDepsTitleSame = "Comment", + MiniDepsTitleUpdate = { + bg = "#449dab", + fg = "#1d202f" + }, + MiniDiffOverAdd = "DiffAdd", + MiniDiffOverChange = "DiffText", + MiniDiffOverContext = "DiffChange", + MiniDiffOverDelete = "DiffDelete", + MiniDiffSignAdd = { + fg = "#449dab" + }, + MiniDiffSignChange = { + fg = "#6183bb" + }, + MiniDiffSignDelete = { + fg = "#914c54" + }, + MiniFilesBorder = "FloatBorder", + MiniFilesBorderModified = "DiagnosticFloatingWarn", + MiniFilesCursorLine = "CursorLine", + MiniFilesDirectory = "Directory", + MiniFilesFile = { + fg = "#c0caf5" + }, + MiniFilesNormal = "NormalFloat", + MiniFilesTitle = "FloatTitle", + MiniFilesTitleFocused = { + bg = "#1f2335", + bold = true, + fg = "#29a4bd" + }, + MiniHipatternsFixme = { + bg = "#db4b4b", + bold = true, + fg = "#1d202f" + }, + MiniHipatternsHack = { + bg = "#e0af68", + bold = true, + fg = "#1d202f" + }, + MiniHipatternsNote = { + bg = "#1abc9c", + bold = true, + fg = "#1d202f" + }, + MiniHipatternsTodo = { + bg = "#0db9d7", + bold = true, + fg = "#1d202f" + }, + MiniIconsAzure = { + fg = "#0db9d7" + }, + MiniIconsBlue = { + fg = "#7aa2f7" + }, + MiniIconsCyan = { + fg = "#1abc9c" + }, + MiniIconsGreen = { + fg = "#9ece6a" + }, + MiniIconsGrey = { + fg = "#c0caf5" + }, + MiniIconsOrange = { + fg = "#ff9e64" + }, + MiniIconsPurple = { + fg = "#9d7cd8" + }, + MiniIconsRed = { + fg = "#f7768e" + }, + MiniIconsYellow = { + fg = "#e0af68" + }, MiniIndentscopePrefix = { nocombine = true }, @@ -1501,11 +1208,49 @@ local highlights = { bg = "#ff007c", fg = "#ffffff" }, + MiniJump2dDim = "Comment", MiniJump2dSpot = { bold = true, fg = "#ff007c", nocombine = true }, + MiniJump2dSpotAhead = { + bg = "#1f2335", + fg = "#1abc9c", + nocombine = true + }, + MiniJump2dSpotUnique = { + bold = true, + fg = "#ff9e64", + nocombine = true + }, + MiniMapNormal = "NormalFloat", + MiniMapSymbolCount = "Special", + MiniMapSymbolLine = "Title", + MiniMapSymbolView = "Delimiter", + MiniNotifyBorder = "FloatBorder", + MiniNotifyNormal = "NormalFloat", + MiniNotifyTitle = "FloatTitle", + MiniOperatorsExchangeFrom = "IncSearch", + MiniPickBorder = "FloatBorder", + MiniPickBorderBusy = "DiagnosticFloatingWarn", + MiniPickBorderText = { + bg = "#1f2335", + fg = "#1abc9c" + }, + MiniPickHeader = "DiagnosticFloatingHint", + MiniPickIconDirectory = "Directory", + MiniPickIconFile = "MiniPickNormal", + MiniPickMatchCurrent = "CursorLine", + MiniPickMatchMarked = "Visual", + MiniPickMatchRanges = "DiagnosticFloatingHint", + MiniPickNormal = "NormalFloat", + MiniPickPreviewLine = "CursorLine", + MiniPickPreviewRegion = "IncSearch", + MiniPickPrompt = { + bg = "#1f2335", + fg = "#0db9d7" + }, MiniStarterCurrent = { nocombine = true }, @@ -1518,9 +1263,7 @@ local highlights = { }, MiniStarterInactive = { fg = "#565f89", - style = { - italic = true - } + italic = true }, MiniStarterItem = { bg = "#24283b", @@ -1539,15 +1282,15 @@ local highlights = { fg = "#2ac3de" }, MiniStatuslineDevinfo = { - bg = "#292e42", + bg = "#3b4261", fg = "#a9b1d6" }, MiniStatuslineFileinfo = { - bg = "#292e42", + bg = "#3b4261", fg = "#a9b1d6" }, MiniStatuslineFilename = { - bg = "#3b4261", + bg = "#292e42", fg = "#a9b1d6" }, MiniStatuslineInactive = { @@ -1643,108 +1386,40 @@ local highlights = { MsgArea = { fg = "#a9b1d6" }, - NavicIconsArray = { - link = "LspKindArray" - }, - NavicIconsBoolean = { - link = "LspKindBoolean" - }, - NavicIconsClass = { - link = "LspKindClass" - }, - NavicIconsColor = { - link = "LspKindColor" - }, - NavicIconsConstant = { - link = "LspKindConstant" - }, - NavicIconsConstructor = { - link = "LspKindConstructor" - }, - NavicIconsEnum = { - link = "LspKindEnum" - }, - NavicIconsEnumMember = { - link = "LspKindEnumMember" - }, - NavicIconsEvent = { - link = "LspKindEvent" - }, - NavicIconsField = { - link = "LspKindField" - }, - NavicIconsFile = { - link = "LspKindFile" - }, - NavicIconsFolder = { - link = "LspKindFolder" - }, - NavicIconsFunction = { - link = "LspKindFunction" - }, - NavicIconsInterface = { - link = "LspKindInterface" - }, - NavicIconsKey = { - link = "LspKindKey" - }, - NavicIconsKeyword = { - link = "LspKindKeyword" - }, - NavicIconsMethod = { - link = "LspKindMethod" - }, - NavicIconsModule = { - link = "LspKindModule" - }, - NavicIconsNamespace = { - link = "LspKindNamespace" - }, - NavicIconsNull = { - link = "LspKindNull" - }, - NavicIconsNumber = { - link = "LspKindNumber" - }, - NavicIconsObject = { - link = "LspKindObject" - }, - NavicIconsOperator = { - link = "LspKindOperator" - }, - NavicIconsPackage = { - link = "LspKindPackage" - }, - NavicIconsProperty = { - link = "LspKindProperty" - }, - NavicIconsReference = { - link = "LspKindReference" - }, - NavicIconsSnippet = { - link = "LspKindSnippet" - }, - NavicIconsString = { - link = "LspKindString" - }, - NavicIconsStruct = { - link = "LspKindStruct" - }, - NavicIconsText = { - link = "LspKindText" - }, - NavicIconsTypeParameter = { - link = "LspKindTypeParameter" - }, - NavicIconsUnit = { - link = "LspKindUnit" - }, - NavicIconsValue = { - link = "LspKindValue" - }, - NavicIconsVariable = { - link = "LspKindVariable" - }, + NavicIconsArray = "LspKindArray", + NavicIconsBoolean = "LspKindBoolean", + NavicIconsClass = "LspKindClass", + NavicIconsColor = "LspKindColor", + NavicIconsConstant = "LspKindConstant", + NavicIconsConstructor = "LspKindConstructor", + NavicIconsEnum = "LspKindEnum", + NavicIconsEnumMember = "LspKindEnumMember", + NavicIconsEvent = "LspKindEvent", + NavicIconsField = "LspKindField", + NavicIconsFile = "LspKindFile", + NavicIconsFolder = "LspKindFolder", + NavicIconsFunction = "LspKindFunction", + NavicIconsInterface = "LspKindInterface", + NavicIconsKey = "LspKindKey", + NavicIconsKeyword = "LspKindKeyword", + NavicIconsMethod = "LspKindMethod", + NavicIconsModule = "LspKindModule", + NavicIconsNamespace = "LspKindNamespace", + NavicIconsNull = "LspKindNull", + NavicIconsNumber = "LspKindNumber", + NavicIconsObject = "LspKindObject", + NavicIconsOperator = "LspKindOperator", + NavicIconsPackage = "LspKindPackage", + NavicIconsProperty = "LspKindProperty", + NavicIconsReference = "LspKindReference", + NavicIconsSnippet = "LspKindSnippet", + NavicIconsString = "LspKindString", + NavicIconsStruct = "LspKindStruct", + NavicIconsText = "LspKindText", + NavicIconsTypeParameter = "LspKindTypeParameter", + NavicIconsUnit = "LspKindUnit", + NavicIconsValue = "LspKindValue", + NavicIconsVariable = "LspKindVariable", NavicSeparator = { bg = "NONE", fg = "#c0caf5" @@ -1756,6 +1431,18 @@ local highlights = { NeoTreeDimText = { fg = "#3b4261" }, + NeoTreeFileName = { + fg = "#a9b1d6" + }, + NeoTreeGitModified = { + fg = "#ff9e64" + }, + NeoTreeGitStaged = { + fg = "#73daca" + }, + NeoTreeGitUntracked = { + fg = "#bb9af7" + }, NeoTreeNormal = { bg = "#1f2335", fg = "#a9b1d6" @@ -1764,6 +1451,23 @@ local highlights = { bg = "#1f2335", fg = "#a9b1d6" }, + NeoTreeTabActive = { + bg = "#1f2335", + bold = true, + fg = "#7aa2f7" + }, + NeoTreeTabInactive = { + bg = "#191c2a", + fg = "#545c7e" + }, + NeoTreeTabSeparatorActive = { + bg = "#1f2335", + fg = "#7aa2f7" + }, + NeoTreeTabSeparatorInactive = { + bg = "#191c2a", + fg = "#24283b" + }, NeogitBranch = { fg = "#bb9af7" }, @@ -1839,112 +1543,62 @@ local highlights = { NeotestWinSelect = { fg = "#7aa2f7" }, - NoiceCompletionItemKindArray = { - link = "LspKindArray" + NoiceCmdlineIconInput = { + fg = "#e0af68" }, - NoiceCompletionItemKindBoolean = { - link = "LspKindBoolean" + NoiceCmdlineIconLua = { + fg = "#2ac3de" }, - NoiceCompletionItemKindClass = { - link = "LspKindClass" + NoiceCmdlinePopupBorderInput = { + fg = "#e0af68" }, - NoiceCompletionItemKindColor = { - link = "LspKindColor" + NoiceCmdlinePopupBorderLua = { + fg = "#2ac3de" }, - NoiceCompletionItemKindConstant = { - link = "LspKindConstant" + NoiceCmdlinePopupTitleInput = { + fg = "#e0af68" }, - NoiceCompletionItemKindConstructor = { - link = "LspKindConstructor" + NoiceCmdlinePopupTitleLua = { + fg = "#2ac3de" }, + NoiceCompletionItemKindArray = "LspKindArray", + NoiceCompletionItemKindBoolean = "LspKindBoolean", + NoiceCompletionItemKindClass = "LspKindClass", + NoiceCompletionItemKindColor = "LspKindColor", + NoiceCompletionItemKindConstant = "LspKindConstant", + NoiceCompletionItemKindConstructor = "LspKindConstructor", NoiceCompletionItemKindDefault = { bg = "NONE", fg = "#a9b1d6" }, - NoiceCompletionItemKindEnum = { - link = "LspKindEnum" - }, - NoiceCompletionItemKindEnumMember = { - link = "LspKindEnumMember" - }, - NoiceCompletionItemKindEvent = { - link = "LspKindEvent" - }, - NoiceCompletionItemKindField = { - link = "LspKindField" - }, - NoiceCompletionItemKindFile = { - link = "LspKindFile" - }, - NoiceCompletionItemKindFolder = { - link = "LspKindFolder" - }, - NoiceCompletionItemKindFunction = { - link = "LspKindFunction" - }, - NoiceCompletionItemKindInterface = { - link = "LspKindInterface" - }, - NoiceCompletionItemKindKey = { - link = "LspKindKey" - }, - NoiceCompletionItemKindKeyword = { - link = "LspKindKeyword" - }, - NoiceCompletionItemKindMethod = { - link = "LspKindMethod" - }, - NoiceCompletionItemKindModule = { - link = "LspKindModule" - }, - NoiceCompletionItemKindNamespace = { - link = "LspKindNamespace" - }, - NoiceCompletionItemKindNull = { - link = "LspKindNull" - }, - NoiceCompletionItemKindNumber = { - link = "LspKindNumber" - }, - NoiceCompletionItemKindObject = { - link = "LspKindObject" - }, - NoiceCompletionItemKindOperator = { - link = "LspKindOperator" - }, - NoiceCompletionItemKindPackage = { - link = "LspKindPackage" - }, - NoiceCompletionItemKindProperty = { - link = "LspKindProperty" - }, - NoiceCompletionItemKindReference = { - link = "LspKindReference" - }, - NoiceCompletionItemKindSnippet = { - link = "LspKindSnippet" - }, - NoiceCompletionItemKindString = { - link = "LspKindString" - }, - NoiceCompletionItemKindStruct = { - link = "LspKindStruct" - }, - NoiceCompletionItemKindText = { - link = "LspKindText" - }, - NoiceCompletionItemKindTypeParameter = { - link = "LspKindTypeParameter" - }, - NoiceCompletionItemKindUnit = { - link = "LspKindUnit" - }, - NoiceCompletionItemKindValue = { - link = "LspKindValue" - }, - NoiceCompletionItemKindVariable = { - link = "LspKindVariable" - }, + NoiceCompletionItemKindEnum = "LspKindEnum", + NoiceCompletionItemKindEnumMember = "LspKindEnumMember", + NoiceCompletionItemKindEvent = "LspKindEvent", + NoiceCompletionItemKindField = "LspKindField", + NoiceCompletionItemKindFile = "LspKindFile", + NoiceCompletionItemKindFolder = "LspKindFolder", + NoiceCompletionItemKindFunction = "LspKindFunction", + NoiceCompletionItemKindInterface = "LspKindInterface", + NoiceCompletionItemKindKey = "LspKindKey", + NoiceCompletionItemKindKeyword = "LspKindKeyword", + NoiceCompletionItemKindMethod = "LspKindMethod", + NoiceCompletionItemKindModule = "LspKindModule", + NoiceCompletionItemKindNamespace = "LspKindNamespace", + NoiceCompletionItemKindNull = "LspKindNull", + NoiceCompletionItemKindNumber = "LspKindNumber", + NoiceCompletionItemKindObject = "LspKindObject", + NoiceCompletionItemKindOperator = "LspKindOperator", + NoiceCompletionItemKindPackage = "LspKindPackage", + NoiceCompletionItemKindProperty = "LspKindProperty", + NoiceCompletionItemKindReference = "LspKindReference", + NoiceCompletionItemKindSnippet = "LspKindSnippet", + NoiceCompletionItemKindString = "LspKindString", + NoiceCompletionItemKindStruct = "LspKindStruct", + NoiceCompletionItemKindText = "LspKindText", + NoiceCompletionItemKindTypeParameter = "LspKindTypeParameter", + NoiceCompletionItemKindUnit = "LspKindUnit", + NoiceCompletionItemKindValue = "LspKindValue", + NoiceCompletionItemKindVariable = "LspKindVariable", NonText = { fg = "#545c7e" }, @@ -2083,6 +1737,30 @@ local highlights = { bg = "#1f2335", fg = "#1f2335" }, + OctoDetailsLabel = { + bold = true, + fg = "#2ac3de" + }, + OctoDetailsValue = "@variable.member", + OctoDirty = { + bold = true, + fg = "#ff9e64" + }, + OctoIssueTitle = { + bold = true, + fg = "#9d7cd8" + }, + OctoStateChangesRequested = "DiagnosticVirtualTextWarn", + OctoStateClosed = "DiagnosticVirtualTextError", + OctoStateMerged = { + bg = "#33334e", + fg = "#bb9af7" + }, + OctoStateOpen = "DiagnosticVirtualTextHint", + OctoStatePending = "DiagnosticVirtualTextWarn", + OctoStatusColumn = { + fg = "#2ac3de" + }, Operator = { fg = "#89ddff" }, @@ -2091,7 +1769,7 @@ local highlights = { fg = "#c0caf5" }, PmenuSbar = { - bg = "#2a2e3f" + bg = "#272b3f" }, PmenuSel = { bg = "#363d59" @@ -2247,34 +1925,6 @@ local highlights = { bg = "#f7768e", fg = "#1d202f" }, - TSNodeKey = { - bold = true, - fg = "#ff007c" - }, - TSNodeUnmatched = { - fg = "#545c7e" - }, - TSRainbowBlue = { - fg = "#7aa2f7" - }, - TSRainbowCyan = { - fg = "#7dcfff" - }, - TSRainbowGreen = { - fg = "#9ece6a" - }, - TSRainbowOrange = { - fg = "#ff9e64" - }, - TSRainbowRed = { - fg = "#f7768e" - }, - TSRainbowViolet = { - fg = "#9d7cd8" - }, - TSRainbowYellow = { - fg = "#e0af68" - }, TabLine = { bg = "#1f2335", fg = "#3b4261" @@ -2297,6 +1947,17 @@ local highlights = { bg = "#1f2335", fg = "#c0caf5" }, + TelescopePromptBorder = { + bg = "#1f2335", + fg = "#ff9e64" + }, + TelescopePromptTitle = { + bg = "#1f2335", + fg = "#ff9e64" + }, + TelescopeResultsComment = { + fg = "#545c7e" + }, Title = { bold = true, fg = "#7aa2f7" @@ -2328,6 +1989,60 @@ local highlights = { VertSplit = { fg = "#1d202f" }, + VimwikiHR = { + bg = "NONE", + fg = "#e0af68" + }, + VimwikiHeaderChar = { + bg = "NONE", + fg = "#e0af68" + }, + VimwikiHeaer1 = { + bg = "NONE", + bold = true, + fg = "#7aa2f7" + }, + VimwikiHeaer2 = { + bg = "NONE", + bold = true, + fg = "#e0af68" + }, + VimwikiHeaer3 = { + bg = "NONE", + bold = true, + fg = "#9ece6a" + }, + VimwikiHeaer4 = { + bg = "NONE", + bold = true, + fg = "#1abc9c" + }, + VimwikiHeaer5 = { + bg = "NONE", + bold = true, + fg = "#bb9af7" + }, + VimwikiHeaer6 = { + bg = "NONE", + bold = true, + fg = "#9d7cd8" + }, + VimwikiLink = { + bg = "NONE", + fg = "#7aa2f7" + }, + VimwikiList = { + bg = "NONE", + fg = "#ff9e64" + }, + VimwikiMarkers = { + bg = "NONE", + fg = "#7aa2f7" + }, + VimwikiTag = { + bg = "NONE", + fg = "#9ece6a" + }, Visual = { bg = "#2e3c64" }, @@ -2364,22 +2079,14 @@ local highlights = { WildMenu = { bg = "#2e3c64" }, - WinBar = { - link = "StatusLine" - }, - WinBarNC = { - link = "StatusLineNC" - }, + WinBar = "StatusLine", + WinBarNC = "StatusLineNC", WinSeparator = { bold = true, fg = "#1d202f" }, - YankyPut = { - link = "IncSearch" - }, - YankyYanked = { - link = "IncSearch" - }, + YankyPut = "Search", + YankyYanked = "IncSearch", debugBreakpoint = { bg = "#22374b", fg = "#0db9d7" @@ -2411,9 +2118,7 @@ local highlights = { diffRemoved = { fg = "#914c54" }, - dosIniLabel = { - link = "@property" - }, + dosIniLabel = "@property", healthError = { fg = "#db4b4b" }, @@ -2445,65 +2150,10 @@ local highlights = { bg = "#c0caf5", fg = "#24283b" }, - markdownCode = { - fg = "#1abc9c" - }, - markdownCodeBlock = { - fg = "#1abc9c" - }, - markdownH1 = { - bold = true, - fg = "#bb9af7" - }, - markdownH2 = { - bold = true, - fg = "#7aa2f7" - }, - markdownHeadingDelimiter = { - bold = true, - fg = "#ff9e64" - }, - markdownLinkText = { - fg = "#7aa2f7", - underline = true - }, - mkdCodeDelimiter = { - bg = "#414868", - fg = "#c0caf5" - }, - mkdCodeEnd = { - bold = true, - fg = "#1abc9c" - }, - mkdCodeStart = { - bold = true, - fg = "#1abc9c" - }, qfFileName = { fg = "#7aa2f7" }, qfLineNr = { fg = "#737aa2" - }, - rainbowcol1 = { - fg = "#f7768e" - }, - rainbowcol2 = { - fg = "#e0af68" - }, - rainbowcol3 = { - fg = "#9ece6a" - }, - rainbowcol4 = { - fg = "#1abc9c" - }, - rainbowcol5 = { - fg = "#7aa2f7" - }, - rainbowcol6 = { - fg = "#bb9af7" - }, - rainbowcol7 = { - fg = "#9d7cd8" } } diff --git a/extras/slack/tokyonight_day.txt b/extras/slack/tokyonight_day.txt new file mode 100644 index 00000000..d294e2ff --- /dev/null +++ b/extras/slack/tokyonight_day.txt @@ -0,0 +1 @@ +#b4b5b9,#c4c8da,#9854f1,#b7c1e3 \ No newline at end of file diff --git a/extras/slack/tokyonight_moon.txt b/extras/slack/tokyonight_moon.txt new file mode 100644 index 00000000..4c75ec7a --- /dev/null +++ b/extras/slack/tokyonight_moon.txt @@ -0,0 +1 @@ +#1b1d2b,#2f334d,#c099ff,#2d3f76 \ No newline at end of file diff --git a/extras/slack/tokyonight_night.txt b/extras/slack/tokyonight_night.txt new file mode 100644 index 00000000..252e09e2 --- /dev/null +++ b/extras/slack/tokyonight_night.txt @@ -0,0 +1 @@ +#15161e,#292e42,#bb9af7,#283457 \ No newline at end of file diff --git a/extras/slack/tokyonight_storm.txt b/extras/slack/tokyonight_storm.txt new file mode 100644 index 00000000..0a9406c1 --- /dev/null +++ b/extras/slack/tokyonight_storm.txt @@ -0,0 +1 @@ +#1d202f,#292e42,#bb9af7,#2e3c64 \ No newline at end of file diff --git a/extras/spotify_player/tokyonight_day.toml b/extras/spotify_player/tokyonight_day.toml new file mode 100644 index 00000000..379b8c08 --- /dev/null +++ b/extras/spotify_player/tokyonight_day.toml @@ -0,0 +1,21 @@ +[[themes]] +name = "Tokyo Night Day" +[themes.palette] +background = "#d0d5e3" +foreground = "#6172b0" +black = "#a1a6c5" +red = "#f52a65" +green = "#587539" +yellow = "#8c6c3e" +blue = "#2e7de9" +magenta = "#9854f1" +cyan = "#007197" +white = "${white}" +bright_black = "#e1e2e7" +bright_red = "#c64343" +bright_green = "#387068" +bright_yellow = "#b15c00" +bright_blue = "#188092" +bright_magenta = "#d20065" +bright_cyan = "#006a83" +bright_white = "#3760bf" diff --git a/extras/spotify_player/tokyonight_moon.toml b/extras/spotify_player/tokyonight_moon.toml new file mode 100644 index 00000000..14cd20e2 --- /dev/null +++ b/extras/spotify_player/tokyonight_moon.toml @@ -0,0 +1,21 @@ +[[themes]] +name = "Tokyo Night Moon" +[themes.palette] +background = "#1e2030" +foreground = "#828bb8" +black = "#444a73" +red = "#ff757f" +green = "#c3e88d" +yellow = "#ffc777" +blue = "#82aaff" +magenta = "#c099ff" +cyan = "#86e1fc" +white = "${white}" +bright_black = "#222436" +bright_red = "#c53b53" +bright_green = "#4fd6be" +bright_yellow = "#ff966c" +bright_blue = "#65bcff" +bright_magenta = "#ff007c" +bright_cyan = "#89ddff" +bright_white = "#c8d3f5" diff --git a/extras/spotify_player/tokyonight_night.toml b/extras/spotify_player/tokyonight_night.toml new file mode 100644 index 00000000..6f732909 --- /dev/null +++ b/extras/spotify_player/tokyonight_night.toml @@ -0,0 +1,21 @@ +[[themes]] +name = "Tokyo Night" +[themes.palette] +background = "#16161e" +foreground = "#a9b1d6" +black = "#414868" +red = "#f7768e" +green = "#9ece6a" +yellow = "#e0af68" +blue = "#7aa2f7" +magenta = "#bb9af7" +cyan = "#7dcfff" +white = "${white}" +bright_black = "#1a1b26" +bright_red = "#db4b4b" +bright_green = "#73daca" +bright_yellow = "#ff9e64" +bright_blue = "#2ac3de" +bright_magenta = "#ff007c" +bright_cyan = "#89ddff" +bright_white = "#c0caf5" diff --git a/extras/spotify_player/tokyonight_storm.toml b/extras/spotify_player/tokyonight_storm.toml new file mode 100644 index 00000000..8c322ab5 --- /dev/null +++ b/extras/spotify_player/tokyonight_storm.toml @@ -0,0 +1,21 @@ +[[themes]] +name = "Tokyo Night Storm" +[themes.palette] +background = "#1f2335" +foreground = "#a9b1d6" +black = "#414868" +red = "#f7768e" +green = "#9ece6a" +yellow = "#e0af68" +blue = "#7aa2f7" +magenta = "#bb9af7" +cyan = "#7dcfff" +white = "${white}" +bright_black = "#24283b" +bright_red = "#db4b4b" +bright_green = "#73daca" +bright_yellow = "#ff9e64" +bright_blue = "#2ac3de" +bright_magenta = "#ff007c" +bright_cyan = "#89ddff" +bright_white = "#c0caf5" diff --git a/extras/sublime/tokyonight_day.tmTheme b/extras/sublime/tokyonight_day.tmTheme index 5428a2d0..ebd8b889 100644 --- a/extras/sublime/tokyonight_day.tmTheme +++ b/extras/sublime/tokyonight_day.tmTheme @@ -129,6 +129,45 @@ #9aa5ce + + name + Info + scope + markup.info + settings + + foreground + #07879d + background + #cbd9e0 + + + + name + Warning + scope + markup.warning + settings + + foreground + #8c6c3e + background + #d9d6d6 + + + + name + Error + scope + markup.error + settings + + foreground + #c64343 + background + #ded2d7 + + name Invalid @@ -740,7 +779,7 @@ name - CSS psuedo selectors + CSS pseudo selectors scope entity.other.attribute-name.pseudo-class, entity.other.attribute-name.pseudo-element, entity.other.attribute-name.placeholder, meta.property-list meta.property-value settings diff --git a/extras/sublime/tokyonight_moon.tmTheme b/extras/sublime/tokyonight_moon.tmTheme index 7b9f9597..4e8dc95c 100644 --- a/extras/sublime/tokyonight_moon.tmTheme +++ b/extras/sublime/tokyonight_moon.tmTheme @@ -129,6 +129,45 @@ #9aa5ce + + name + Info + scope + markup.info + settings + + foreground + #0db9d7 + background + #203346 + + + + name + Warning + scope + markup.warning + settings + + foreground + #ffc777 + background + #38343d + + + + name + Error + scope + markup.error + settings + + foreground + #c53b53 + background + #322639 + + name Invalid @@ -740,7 +779,7 @@ name - CSS psuedo selectors + CSS pseudo selectors scope entity.other.attribute-name.pseudo-class, entity.other.attribute-name.pseudo-element, entity.other.attribute-name.placeholder, meta.property-list meta.property-value settings diff --git a/extras/sublime/tokyonight_night.tmTheme b/extras/sublime/tokyonight_night.tmTheme index 8b77fd87..40783813 100644 --- a/extras/sublime/tokyonight_night.tmTheme +++ b/extras/sublime/tokyonight_night.tmTheme @@ -129,6 +129,45 @@ #9aa5ce + + name + Info + scope + markup.info + settings + + foreground + #0db9d7 + background + #192b38 + + + + name + Warning + scope + markup.warning + settings + + foreground + #e0af68 + background + #2e2a2d + + + + name + Error + scope + markup.error + settings + + foreground + #db4b4b + background + #2d202a + + name Invalid @@ -740,7 +779,7 @@ name - CSS psuedo selectors + CSS pseudo selectors scope entity.other.attribute-name.pseudo-class, entity.other.attribute-name.pseudo-element, entity.other.attribute-name.placeholder, meta.property-list meta.property-value settings diff --git a/extras/sublime/tokyonight_storm.tmTheme b/extras/sublime/tokyonight_storm.tmTheme index c0e25e26..4575fa3e 100644 --- a/extras/sublime/tokyonight_storm.tmTheme +++ b/extras/sublime/tokyonight_storm.tmTheme @@ -129,6 +129,45 @@ #9aa5ce + + name + Info + scope + markup.info + settings + + foreground + #0db9d7 + background + #22374b + + + + name + Warning + scope + markup.warning + settings + + foreground + #e0af68 + background + #373640 + + + + name + Error + scope + markup.error + settings + + foreground + #db4b4b + background + #362c3d + + name Invalid @@ -740,7 +779,7 @@ name - CSS psuedo selectors + CSS pseudo selectors scope entity.other.attribute-name.pseudo-class, entity.other.attribute-name.pseudo-element, entity.other.attribute-name.placeholder, meta.property-list meta.property-value settings diff --git a/extras/terminator/tokyonight_day.conf b/extras/terminator/tokyonight_day.conf index 8fdaaada..ca13b6f5 100644 --- a/extras/terminator/tokyonight_day.conf +++ b/extras/terminator/tokyonight_day.conf @@ -1,5 +1,5 @@ [[Tokyo Night Day]] - palette = "#e9e9ed:#f52a65:#587539:#8c6c3e:#2e7de9:#9854f1:#007197:#6172b0:#a1a6c5:#f52a65:#587539:#8c6c3e:#2e7de9:#9854f1:#007197:#7847bd" + palette = "#b4b5b9:#f52a65:#587539:#8c6c3e:#2e7de9:#9854f1:#007197:#6172b0:#a1a6c5:#f52a65:#587539:#8c6c3e:#2e7de9:#9854f1:#007197:#7847bd" background_color = "#e1e2e7" foreground_color = "#3760bf" \ No newline at end of file diff --git a/extras/tilix/tokyonight_day.json b/extras/tilix/tokyonight_day.json index 02a59198..7ebc464d 100644 --- a/extras/tilix/tokyonight_day.json +++ b/extras/tilix/tokyonight_day.json @@ -5,7 +5,7 @@ "foreground-color": "#3760bf", "background-color": "#e1e2e7", "palette": [ - "#e9e9ed", + "#b4b5b9", "#f52a65", "#587539", "#8c6c3e", diff --git a/extras/tmux/tokyonight_day.tmux b/extras/tmux/tokyonight_day.tmux index 0f73eb21..d3bb37cc 100644 --- a/extras/tmux/tokyonight_day.tmux +++ b/extras/tmux/tokyonight_day.tmux @@ -13,7 +13,7 @@ set -g pane-active-border-style "fg=#2e7de9" set -g status "on" set -g status-justify "left" -set -g status-style "fg=#2e7de9,bg=#e9e9ec" +set -g status-style "fg=#2e7de9,bg=#d0d5e3" set -g status-left-length "100" set -g status-right-length "100" @@ -21,18 +21,18 @@ set -g status-right-length "100" set -g status-left-style NONE set -g status-right-style NONE -set -g status-left "#[fg=#e9e9ed,bg=#2e7de9,bold] #S #[fg=#2e7de9,bg=#e9e9ec,nobold,nounderscore,noitalics]" -set -g status-right "#[fg=#e9e9ec,bg=#e9e9ec,nobold,nounderscore,noitalics]#[fg=#2e7de9,bg=#e9e9ec] #{prefix_highlight} #[fg=#a8aecb,bg=#e9e9ec,nobold,nounderscore,noitalics]#[fg=#2e7de9,bg=#a8aecb] %Y-%m-%d  %I:%M %p #[fg=#2e7de9,bg=#a8aecb,nobold,nounderscore,noitalics]#[fg=#e9e9ed,bg=#2e7de9,bold] #h " +set -g status-left "#[fg=#b4b5b9,bg=#2e7de9,bold] #S #[fg=#2e7de9,bg=#d0d5e3,nobold,nounderscore,noitalics]" +set -g status-right "#[fg=#d0d5e3,bg=#d0d5e3,nobold,nounderscore,noitalics]#[fg=#2e7de9,bg=#d0d5e3] #{prefix_highlight} #[fg=#a8aecb,bg=#d0d5e3,nobold,nounderscore,noitalics]#[fg=#2e7de9,bg=#a8aecb] %Y-%m-%d  %I:%M %p #[fg=#2e7de9,bg=#a8aecb,nobold,nounderscore,noitalics]#[fg=#b4b5b9,bg=#2e7de9,bold] #h " if-shell '[ "$(tmux show-option -gqv "clock-mode-style")" == "24" ]' { - set -g status-right "#[fg=#e9e9ec,bg=#e9e9ec,nobold,nounderscore,noitalics]#[fg=#2e7de9,bg=#e9e9ec] #{prefix_highlight} #[fg=#a8aecb,bg=#e9e9ec,nobold,nounderscore,noitalics]#[fg=#2e7de9,bg=#a8aecb] %Y-%m-%d  %H:%M #[fg=#2e7de9,bg=#a8aecb,nobold,nounderscore,noitalics]#[fg=#e9e9ed,bg=#2e7de9,bold] #h " + set -g status-right "#[fg=#d0d5e3,bg=#d0d5e3,nobold,nounderscore,noitalics]#[fg=#2e7de9,bg=#d0d5e3] #{prefix_highlight} #[fg=#a8aecb,bg=#d0d5e3,nobold,nounderscore,noitalics]#[fg=#2e7de9,bg=#a8aecb] %Y-%m-%d  %H:%M #[fg=#2e7de9,bg=#a8aecb,nobold,nounderscore,noitalics]#[fg=#b4b5b9,bg=#2e7de9,bold] #h " } -setw -g window-status-activity-style "underscore,fg=#6172b0,bg=#e9e9ec" +setw -g window-status-activity-style "underscore,fg=#6172b0,bg=#d0d5e3" setw -g window-status-separator "" -setw -g window-status-style "NONE,fg=#6172b0,bg=#e9e9ec" -setw -g window-status-format "#[fg=#e9e9ec,bg=#e9e9ec,nobold,nounderscore,noitalics]#[default] #I  #W #F #[fg=#e9e9ec,bg=#e9e9ec,nobold,nounderscore,noitalics]" -setw -g window-status-current-format "#[fg=#e9e9ec,bg=#a8aecb,nobold,nounderscore,noitalics]#[fg=#2e7de9,bg=#a8aecb,bold] #I  #W #F #[fg=#a8aecb,bg=#e9e9ec,nobold,nounderscore,noitalics]" +setw -g window-status-style "NONE,fg=#6172b0,bg=#d0d5e3" +setw -g window-status-format "#[fg=#d0d5e3,bg=#d0d5e3,nobold,nounderscore,noitalics]#[default] #I  #W #F #[fg=#d0d5e3,bg=#d0d5e3,nobold,nounderscore,noitalics]" +setw -g window-status-current-format "#[fg=#d0d5e3,bg=#a8aecb,nobold,nounderscore,noitalics]#[fg=#2e7de9,bg=#a8aecb,bold] #I  #W #F #[fg=#a8aecb,bg=#d0d5e3,nobold,nounderscore,noitalics]" # tmux-plugins/tmux-prefix-highlight support -set -g @prefix_highlight_output_prefix "#[fg=#8c6c3e]#[bg=#e9e9ec]#[fg=#e9e9ec]#[bg=#8c6c3e]" +set -g @prefix_highlight_output_prefix "#[fg=#8c6c3e]#[bg=#d0d5e3]#[fg=#d0d5e3]#[bg=#8c6c3e]" set -g @prefix_highlight_output_suffix "" diff --git a/extras/vim/README.md b/extras/vim/README.md new file mode 100644 index 00000000..d735a4a9 --- /dev/null +++ b/extras/vim/README.md @@ -0,0 +1,15 @@ +# Vim ColorScheme + +Clone the repo somewhere. + +```sh +git clone https://github.com/folke/tokyonight.nvim ~/projects/tokyonight.nvim +``` + +Add the below to your `~/.vimrc` file. + +```vim +set termguicolors +set rtp+=~/projects/tokyonight.nvim/extras/vim +colorscheme tokyonight +``` diff --git a/extras/vim/colors/tokyonight-day.vim b/extras/vim/colors/tokyonight-day.vim new file mode 100644 index 00000000..b31d5af7 --- /dev/null +++ b/extras/vim/colors/tokyonight-day.vim @@ -0,0 +1,299 @@ +let g:colors_name = "tokyonight-day" +hi clear + +hi ALEErrorSign guibg=NONE guifg=#c64343 +hi ALEWarningSign guibg=NONE guifg=#8c6c3e +hi Bold gui=bold guibg=NONE guifg=#3760bf +hi Character guibg=NONE guifg=#587539 +hi ColorColumn guibg=#b4b5b9 +hi Comment gui=italic guibg=NONE guifg=#848cb5 +hi Conceal guibg=NONE guifg=#68709a +hi Constant guibg=NONE guifg=#b15c00 +hi Cursor guibg=#3760bf guifg=#e1e2e7 +hi CursorColumn guibg=#c4c8da +hi CursorIM guibg=#3760bf guifg=#e1e2e7 +hi CursorLine guibg=#c4c8da +hi CursorLineNr gui=bold guibg=NONE guifg=#b15c00 +hi Debug guibg=NONE guifg=#b15c00 +hi DiagnosticError guibg=NONE guifg=#c64343 +hi DiagnosticHint guibg=NONE guifg=#118c74 +hi DiagnosticInfo guibg=NONE guifg=#07879d +hi DiagnosticUnderlineError gui=undercurl guibg=NONE guisp=#c64343 +hi DiagnosticUnderlineHint gui=undercurl guibg=NONE guisp=#118c74 +hi DiagnosticUnderlineInfo gui=undercurl guibg=NONE guisp=#07879d +hi DiagnosticUnderlineWarn gui=undercurl guibg=NONE guisp=#8c6c3e +hi DiagnosticUnnecessary guibg=NONE guifg=#a1a6c5 +hi DiagnosticVirtualTextError guibg=#ded2d7 guifg=#c64343 +hi DiagnosticVirtualTextHint guibg=#ccd9dc guifg=#118c74 +hi DiagnosticVirtualTextInfo guibg=#cbd9e0 guifg=#07879d +hi DiagnosticVirtualTextWarn guibg=#d9d6d6 guifg=#8c6c3e +hi DiagnosticWarn guibg=NONE guifg=#8c6c3e +hi DiffAdd guibg=#c8d6dc +hi DiffChange guibg=#d5d9e4 +hi DiffDelete guibg=#ddcace +hi DiffText guibg=#92a6d5 +hi Directory guibg=NONE guifg=#2e7de9 +hi EndOfBuffer guibg=NONE guifg=#e1e2e7 +hi Error guibg=NONE guifg=#c64343 +hi ErrorMsg guibg=NONE guifg=#c64343 +hi FloatBorder guibg=#d0d5e3 guifg=#4094a3 +hi FloatTitle guibg=#d0d5e3 guifg=#4094a3 +hi FoldColumn guibg=#e1e2e7 guifg=#848cb5 +hi Folded guibg=#a8aecb guifg=#2e7de9 +hi Foo guibg=#d20065 guifg=#3760bf +hi Function guibg=NONE guifg=#2e7de9 +hi FzfLuaBorder guibg=#d0d5e3 guifg=#4094a3 +hi FzfLuaDirPart guibg=NONE guifg=#6172b0 +hi FzfLuaFzfNormal guibg=NONE guifg=#3760bf +hi FzfLuaFzfPointer guibg=NONE guifg=#d20065 +hi FzfLuaFzfSeparator guibg=#d0d5e3 guifg=#b15c00 +hi FzfLuaNormal guibg=#d0d5e3 guifg=#3760bf +hi FzfLuaPreviewTitle guibg=#d0d5e3 guifg=#4094a3 +hi FzfLuaTitle guibg=#d0d5e3 guifg=#b15c00 +hi GitGutterAdd guibg=NONE guifg=#4197a4 +hi GitGutterAddLineNr guibg=NONE guifg=#4197a4 +hi GitGutterChange guibg=NONE guifg=#506d9c +hi GitGutterChangeLineNr guibg=NONE guifg=#506d9c +hi GitGutterDelete guibg=NONE guifg=#c47981 +hi GitGutterDeleteLineNr guibg=NONE guifg=#c47981 +hi GlyphPalette1 guibg=NONE guifg=#c64343 +hi GlyphPalette2 guibg=NONE guifg=#587539 +hi GlyphPalette3 guibg=NONE guifg=#8c6c3e +hi GlyphPalette4 guibg=NONE guifg=#2e7de9 +hi GlyphPalette6 guibg=NONE guifg=#387068 +hi GlyphPalette7 guibg=NONE guifg=#3760bf +hi GlyphPalette9 guibg=NONE guifg=#f52a65 +hi Identifier guibg=NONE guifg=#9854f1 +hi IlluminatedWordRead guibg=#a8aecb +hi IlluminatedWordText guibg=#a8aecb +hi IlluminatedWordWrite guibg=#a8aecb +hi IncSearch guibg=#b15c00 guifg=#b4b5b9 +hi Italic gui=italic guibg=NONE guifg=#3760bf +hi Keyword gui=italic guibg=NONE guifg=#007197 +hi LineNr guibg=NONE guifg=#a8aecb +hi LineNrAbove guibg=NONE guifg=#a8aecb +hi LineNrBelow guibg=NONE guifg=#a8aecb +hi LspCodeLens guibg=NONE guifg=#848cb5 +hi LspInfoBorder guibg=#d0d5e3 guifg=#4094a3 +hi LspInlayHint guibg=#d9dce5 guifg=#8990b3 +hi LspReferenceRead guibg=#a8aecb +hi LspReferenceText guibg=#a8aecb +hi LspReferenceWrite guibg=#a8aecb +hi LspSignatureActiveParameter gui=bold guibg=#d0d5e5 +hi MatchParen gui=bold guibg=NONE guifg=#b15c00 +hi MiniAnimateCursor gui=nocombine guibg=NONE +hi MiniCompletionActiveParameter gui=underline guibg=NONE +hi MiniCursorword guibg=#a8aecb +hi MiniCursorwordCurrent guibg=#a8aecb +hi MiniDepsTitleError guibg=#c47981 guifg=#b4b5b9 +hi MiniDepsTitleUpdate guibg=#4197a4 guifg=#b4b5b9 +hi MiniDiffSignAdd guibg=NONE guifg=#4197a4 +hi MiniDiffSignChange guibg=NONE guifg=#506d9c +hi MiniDiffSignDelete guibg=NONE guifg=#c47981 +hi MiniFilesFile guibg=NONE guifg=#3760bf +hi MiniFilesTitleFocused gui=bold guibg=#d0d5e3 guifg=#4094a3 +hi MiniHipatternsFixme gui=bold guibg=#c64343 guifg=#b4b5b9 +hi MiniHipatternsHack gui=bold guibg=#8c6c3e guifg=#b4b5b9 +hi MiniHipatternsNote gui=bold guibg=#118c74 guifg=#b4b5b9 +hi MiniHipatternsTodo gui=bold guibg=#07879d guifg=#b4b5b9 +hi MiniIconsAzure guibg=NONE guifg=#07879d +hi MiniIconsBlue guibg=NONE guifg=#2e7de9 +hi MiniIconsCyan guibg=NONE guifg=#118c74 +hi MiniIconsGreen guibg=NONE guifg=#587539 +hi MiniIconsGrey guibg=NONE guifg=#3760bf +hi MiniIconsOrange guibg=NONE guifg=#b15c00 +hi MiniIconsPurple guibg=NONE guifg=#7847bd +hi MiniIconsRed guibg=NONE guifg=#f52a65 +hi MiniIconsYellow guibg=NONE guifg=#8c6c3e +hi MiniIndentscopePrefix gui=nocombine guibg=NONE +hi MiniIndentscopeSymbol gui=nocombine guibg=NONE guifg=#188092 +hi MiniJump guibg=#d20065 guifg=#ffffff +hi MiniJump2dSpot gui=bold,nocombine guibg=NONE guifg=#d20065 +hi MiniJump2dSpotAhead gui=nocombine guibg=#d0d5e3 guifg=#118c74 +hi MiniJump2dSpotUnique gui=bold,nocombine guibg=NONE guifg=#b15c00 +hi MiniPickBorderText guibg=#d0d5e3 guifg=#118c74 +hi MiniPickPrompt guibg=#d0d5e3 guifg=#07879d +hi MiniStarterCurrent gui=nocombine guibg=NONE +hi MiniStarterFooter gui=italic guibg=NONE guifg=#8c6c3e +hi MiniStarterHeader guibg=NONE guifg=#2e7de9 +hi MiniStarterInactive gui=italic guibg=NONE guifg=#848cb5 +hi MiniStarterItem guibg=#e1e2e7 guifg=#3760bf +hi MiniStarterItemBullet guibg=NONE guifg=#4094a3 +hi MiniStarterItemPrefix guibg=NONE guifg=#8c6c3e +hi MiniStarterQuery guibg=NONE guifg=#07879d +hi MiniStarterSection guibg=NONE guifg=#188092 +hi MiniStatuslineDevinfo guibg=#a8aecb guifg=#6172b0 +hi MiniStatuslineFileinfo guibg=#a8aecb guifg=#6172b0 +hi MiniStatuslineFilename guibg=#c4c8da guifg=#6172b0 +hi MiniStatuslineInactive guibg=#d0d5e3 guifg=#2e7de9 +hi MiniStatuslineModeCommand gui=bold guibg=#8c6c3e guifg=#b4b5b9 +hi MiniStatuslineModeInsert gui=bold guibg=#587539 guifg=#b4b5b9 +hi MiniStatuslineModeNormal gui=bold guibg=#2e7de9 guifg=#b4b5b9 +hi MiniStatuslineModeOther gui=bold guibg=#118c74 guifg=#b4b5b9 +hi MiniStatuslineModeReplace gui=bold guibg=#f52a65 guifg=#b4b5b9 +hi MiniStatuslineModeVisual gui=bold guibg=#9854f1 guifg=#b4b5b9 +hi MiniSurround guibg=#b15c00 guifg=#b4b5b9 +hi MiniTablineCurrent guibg=#a8aecb guifg=#3760bf +hi MiniTablineFill guibg=#b4b5b9 +hi MiniTablineHidden guibg=#d0d5e3 guifg=#68709a +hi MiniTablineModifiedCurrent guibg=#a8aecb guifg=#8c6c3e +hi MiniTablineModifiedHidden guibg=#d0d5e3 guifg=#a68f71 +hi MiniTablineModifiedVisible guibg=#d0d5e3 guifg=#8c6c3e +hi MiniTablineTabpagesection guibg=#d0d5e3 guifg=NONE +hi MiniTablineVisible guibg=#d0d5e3 guifg=#3760bf +hi MiniTestEmphasis gui=bold guibg=NONE +hi MiniTestFail gui=bold guibg=NONE guifg=#f52a65 +hi MiniTestPass gui=bold guibg=NONE guifg=#587539 +hi MiniTrailspace guibg=#f52a65 +hi ModeMsg gui=bold guibg=NONE guifg=#6172b0 +hi MoreMsg guibg=NONE guifg=#2e7de9 +hi MsgArea guibg=NONE guifg=#6172b0 +hi NeogitBranch guibg=NONE guifg=#9854f1 +hi NeogitDiffAddHighlight guibg=#c8d6dc guifg=#4197a4 +hi NeogitDiffContextHighlight guibg=#c5c8d9 guifg=#6172b0 +hi NeogitDiffDeleteHighlight guibg=#ddcace guifg=#c47981 +hi NeogitHunkHeader guibg=#c4c8da guifg=#3760bf +hi NeogitHunkHeaderHighlight guibg=#a8aecb guifg=#2e7de9 +hi NeogitRemote guibg=NONE guifg=#7847bd +hi NeotestAdapterName gui=bold guibg=NONE guifg=#7847bd +hi NeotestBorder guibg=NONE guifg=#2e7de9 +hi NeotestDir guibg=NONE guifg=#2e7de9 +hi NeotestExpandMarker guibg=NONE guifg=#6172b0 +hi NeotestFailed guibg=NONE guifg=#f52a65 +hi NeotestFile guibg=NONE guifg=#118c74 +hi NeotestFocused guibg=NONE guifg=#8c6c3e +hi NeotestIndent guibg=NONE guifg=#6172b0 +hi NeotestMarked guibg=NONE guifg=#2e7de9 +hi NeotestNamespace guibg=NONE guifg=#38919f +hi NeotestPassed guibg=NONE guifg=#587539 +hi NeotestRunning guibg=NONE guifg=#8c6c3e +hi NeotestSkipped guibg=NONE guifg=#2e7de9 +hi NeotestTarget guibg=NONE guifg=#2e7de9 +hi NeotestTest guibg=NONE guifg=#6172b0 +hi NeotestWinSelect guibg=NONE guifg=#2e7de9 +hi NonText guibg=NONE guifg=#8990b3 +hi Normal guibg=#e1e2e7 guifg=#3760bf +hi NormalFloat guibg=#d0d5e3 guifg=#3760bf +hi NormalNC guibg=#e1e2e7 guifg=#3760bf +hi NormalSB guibg=#d0d5e3 guifg=#6172b0 +hi Operator guibg=NONE guifg=#006a83 +hi Pmenu guibg=#d0d5e3 guifg=#3760bf +hi PmenuSbar guibg=#c8cfe1 +hi PmenuSel guibg=#b3b8d1 +hi PmenuThumb guibg=#a8aecb +hi PreProc guibg=NONE guifg=#007197 +hi Question guibg=NONE guifg=#2e7de9 +hi QuickFixLine gui=bold guibg=#b7c1e3 +hi Search guibg=#7890dd guifg=#3760bf +hi SignColumn guibg=#e1e2e7 guifg=#a8aecb +hi SignColumnSB guibg=#d0d5e3 guifg=#a8aecb +hi Sneak guibg=#9854f1 guifg=#c4c8da +hi SneakScope guibg=#b7c1e3 +hi Special guibg=NONE guifg=#188092 +hi SpecialKey guibg=NONE guifg=#8990b3 +hi SpellBad gui=undercurl guibg=NONE guisp=#c64343 +hi SpellCap gui=undercurl guibg=NONE guisp=#8c6c3e +hi SpellLocal gui=undercurl guibg=NONE guisp=#07879d +hi SpellRare gui=undercurl guibg=NONE guisp=#118c74 +hi Statement guibg=NONE guifg=#9854f1 +hi StatusLine guibg=#d0d5e3 guifg=#6172b0 +hi StatusLineNC guibg=#d0d5e3 guifg=#a8aecb +hi String guibg=NONE guifg=#587539 +hi Substitute guibg=#f52a65 guifg=#b4b5b9 +hi TabLine guibg=#d0d5e3 guifg=#a8aecb +hi TabLineFill guibg=#b4b5b9 +hi TabLineSel guibg=#2e7de9 guifg=#b4b5b9 +hi Title gui=bold guibg=NONE guifg=#2e7de9 +hi Todo guibg=#8c6c3e guifg=#e1e2e7 +hi Type guibg=NONE guifg=#188092 +hi Underlined gui=underline guibg=NONE +hi VertSplit guibg=NONE guifg=#b4b5b9 +hi VimwikiHR guibg=NONE guifg=#8c6c3e +hi VimwikiHeaderChar guibg=NONE guifg=#8c6c3e +hi VimwikiHeaer1 gui=bold guibg=NONE guifg=#2e7de9 +hi VimwikiHeaer2 gui=bold guibg=NONE guifg=#8c6c3e +hi VimwikiHeaer3 gui=bold guibg=NONE guifg=#587539 +hi VimwikiHeaer4 gui=bold guibg=NONE guifg=#118c74 +hi VimwikiHeaer5 gui=bold guibg=NONE guifg=#9854f1 +hi VimwikiHeaer6 gui=bold guibg=NONE guifg=#7847bd +hi VimwikiLink guibg=NONE guifg=#2e7de9 +hi VimwikiList guibg=NONE guifg=#b15c00 +hi VimwikiMarkers guibg=NONE guifg=#2e7de9 +hi VimwikiTag guibg=NONE guifg=#587539 +hi Visual guibg=#b7c1e3 +hi VisualNOS guibg=#b7c1e3 +hi WarningMsg guibg=NONE guifg=#8c6c3e +hi Whitespace guibg=NONE guifg=#a8aecb +hi WildMenu guibg=#b7c1e3 +hi WinSeparator gui=bold guibg=NONE guifg=#b4b5b9 +hi debugBreakpoint guibg=#cbd9e0 guifg=#07879d +hi debugPC guibg=#d0d5e3 +hi diffAdded guibg=NONE guifg=#4197a4 +hi diffChanged guibg=NONE guifg=#506d9c +hi diffFile guibg=NONE guifg=#2e7de9 +hi diffIndexLine guibg=NONE guifg=#9854f1 +hi diffLine guibg=NONE guifg=#848cb5 +hi diffNewFile guibg=NONE guifg=#b15c00 +hi diffOldFile guibg=NONE guifg=#8c6c3e +hi diffRemoved guibg=NONE guifg=#c47981 +hi healthError guibg=NONE guifg=#c64343 +hi healthSuccess guibg=NONE guifg=#387068 +hi healthWarning guibg=NONE guifg=#8c6c3e +hi helpCommand guibg=#a1a6c5 guifg=#2e7de9 +hi htmlH1 gui=bold guibg=NONE guifg=#9854f1 +hi htmlH2 gui=bold guibg=NONE guifg=#2e7de9 +hi illuminatedCurWord guibg=#a8aecb +hi illuminatedWord guibg=#a8aecb +hi lCursor guibg=#3760bf guifg=#e1e2e7 +hi qfFileName guibg=NONE guifg=#2e7de9 +hi qfLineNr guibg=NONE guifg=#68709a +hi! link CurSearch IncSearch +hi! link Delimiter Special +hi! link FzfLuaCursor IncSearch +hi! link FzfLuaFilePart FzfLuaFzfNormal +hi! link FzfLuaFzfCursorLine Visual +hi! link FzfLuaHeaderText Title +hi! link FzfLuaPath Directory +hi! link LspKindColor Special +hi! link LspKindEvent Special +hi! link LspKindFile Normal +hi! link LspKindFolder Directory +hi! link LspKindSnippet Conceal +hi! link MiniAnimateNormalFloat NormalFloat +hi! link MiniClueBorder FloatBorder +hi! link MiniClueDescSingle NormalFloat +hi! link MiniClueTitle FloatTitle +hi! link MiniDepsChangeAdded diffAdded +hi! link MiniDepsChangeRemoved diffRemoved +hi! link MiniDepsHint DiagnosticHint +hi! link MiniDepsInfo DiagnosticInfo +hi! link MiniDepsMsgBreaking DiagnosticWarn +hi! link MiniDepsPlaceholder Comment +hi! link MiniDepsTitle Title +hi! link MiniDepsTitleSame Comment +hi! link MiniDiffOverAdd DiffAdd +hi! link MiniDiffOverChange DiffText +hi! link MiniDiffOverContext DiffChange +hi! link MiniDiffOverDelete DiffDelete +hi! link MiniFilesBorder FloatBorder +hi! link MiniFilesCursorLine CursorLine +hi! link MiniFilesDirectory Directory +hi! link MiniFilesNormal NormalFloat +hi! link MiniFilesTitle FloatTitle +hi! link MiniJump2dDim Comment +hi! link MiniMapNormal NormalFloat +hi! link MiniMapSymbolCount Special +hi! link MiniMapSymbolLine Title +hi! link MiniNotifyBorder FloatBorder +hi! link MiniNotifyNormal NormalFloat +hi! link MiniNotifyTitle FloatTitle +hi! link MiniOperatorsExchangeFrom IncSearch +hi! link MiniPickBorder FloatBorder +hi! link MiniPickIconDirectory Directory +hi! link MiniPickMatchCurrent CursorLine +hi! link MiniPickMatchMarked Visual +hi! link MiniPickNormal NormalFloat +hi! link MiniPickPreviewLine CursorLine +hi! link MiniPickPreviewRegion IncSearch +hi! link WinBar StatusLine +hi! link WinBarNC StatusLineNC \ No newline at end of file diff --git a/extras/vim/colors/tokyonight-moon.vim b/extras/vim/colors/tokyonight-moon.vim new file mode 100644 index 00000000..9c50f42a --- /dev/null +++ b/extras/vim/colors/tokyonight-moon.vim @@ -0,0 +1,299 @@ +let g:colors_name = "tokyonight-moon" +hi clear + +hi ALEErrorSign guibg=NONE guifg=#c53b53 +hi ALEWarningSign guibg=NONE guifg=#ffc777 +hi Bold gui=bold guibg=NONE guifg=#c8d3f5 +hi Character guibg=NONE guifg=#c3e88d +hi ColorColumn guibg=#1b1d2b +hi Comment gui=italic guibg=NONE guifg=#636da6 +hi Conceal guibg=NONE guifg=#737aa2 +hi Constant guibg=NONE guifg=#ff966c +hi Cursor guibg=#c8d3f5 guifg=#222436 +hi CursorColumn guibg=#2f334d +hi CursorIM guibg=#c8d3f5 guifg=#222436 +hi CursorLine guibg=#2f334d +hi CursorLineNr gui=bold guibg=NONE guifg=#ff966c +hi Debug guibg=NONE guifg=#ff966c +hi DiagnosticError guibg=NONE guifg=#c53b53 +hi DiagnosticHint guibg=NONE guifg=#4fd6be +hi DiagnosticInfo guibg=NONE guifg=#0db9d7 +hi DiagnosticUnderlineError gui=undercurl guibg=NONE guisp=#c53b53 +hi DiagnosticUnderlineHint gui=undercurl guibg=NONE guisp=#4fd6be +hi DiagnosticUnderlineInfo gui=undercurl guibg=NONE guisp=#0db9d7 +hi DiagnosticUnderlineWarn gui=undercurl guibg=NONE guisp=#ffc777 +hi DiagnosticUnnecessary guibg=NONE guifg=#444a73 +hi DiagnosticVirtualTextError guibg=#322639 guifg=#c53b53 +hi DiagnosticVirtualTextHint guibg=#273644 guifg=#4fd6be +hi DiagnosticVirtualTextInfo guibg=#203346 guifg=#0db9d7 +hi DiagnosticVirtualTextWarn guibg=#38343d guifg=#ffc777 +hi DiagnosticWarn guibg=NONE guifg=#ffc777 +hi DiffAdd guibg=#273849 +hi DiffChange guibg=#252a3f +hi DiffDelete guibg=#3a273a +hi DiffText guibg=#394b70 +hi Directory guibg=NONE guifg=#82aaff +hi EndOfBuffer guibg=NONE guifg=#222436 +hi Error guibg=NONE guifg=#c53b53 +hi ErrorMsg guibg=NONE guifg=#c53b53 +hi FloatBorder guibg=#1e2030 guifg=#589ed7 +hi FloatTitle guibg=#1e2030 guifg=#589ed7 +hi FoldColumn guibg=#222436 guifg=#636da6 +hi Folded guibg=#3b4261 guifg=#82aaff +hi Foo guibg=#ff007c guifg=#c8d3f5 +hi Function guibg=NONE guifg=#82aaff +hi FzfLuaBorder guibg=#1e2030 guifg=#589ed7 +hi FzfLuaDirPart guibg=NONE guifg=#828bb8 +hi FzfLuaFzfNormal guibg=NONE guifg=#c8d3f5 +hi FzfLuaFzfPointer guibg=NONE guifg=#ff007c +hi FzfLuaFzfSeparator guibg=#1e2030 guifg=#ff966c +hi FzfLuaNormal guibg=#1e2030 guifg=#c8d3f5 +hi FzfLuaPreviewTitle guibg=#1e2030 guifg=#589ed7 +hi FzfLuaTitle guibg=#1e2030 guifg=#ff966c +hi GitGutterAdd guibg=NONE guifg=#b8db87 +hi GitGutterAddLineNr guibg=NONE guifg=#b8db87 +hi GitGutterChange guibg=NONE guifg=#7ca1f2 +hi GitGutterChangeLineNr guibg=NONE guifg=#7ca1f2 +hi GitGutterDelete guibg=NONE guifg=#e26a75 +hi GitGutterDeleteLineNr guibg=NONE guifg=#e26a75 +hi GlyphPalette1 guibg=NONE guifg=#c53b53 +hi GlyphPalette2 guibg=NONE guifg=#c3e88d +hi GlyphPalette3 guibg=NONE guifg=#ffc777 +hi GlyphPalette4 guibg=NONE guifg=#82aaff +hi GlyphPalette6 guibg=NONE guifg=#4fd6be +hi GlyphPalette7 guibg=NONE guifg=#c8d3f5 +hi GlyphPalette9 guibg=NONE guifg=#ff757f +hi Identifier guibg=NONE guifg=#c099ff +hi IlluminatedWordRead guibg=#3b4261 +hi IlluminatedWordText guibg=#3b4261 +hi IlluminatedWordWrite guibg=#3b4261 +hi IncSearch guibg=#ff966c guifg=#1b1d2b +hi Italic gui=italic guibg=NONE guifg=#c8d3f5 +hi Keyword gui=italic guibg=NONE guifg=#86e1fc +hi LineNr guibg=NONE guifg=#3b4261 +hi LineNrAbove guibg=NONE guifg=#3b4261 +hi LineNrBelow guibg=NONE guifg=#3b4261 +hi LspCodeLens guibg=NONE guifg=#636da6 +hi LspInfoBorder guibg=#1e2030 guifg=#589ed7 +hi LspInlayHint guibg=#24283c guifg=#545c7e +hi LspReferenceRead guibg=#3b4261 +hi LspReferenceText guibg=#3b4261 +hi LspReferenceWrite guibg=#3b4261 +hi LspSignatureActiveParameter gui=bold guibg=#262f50 +hi MatchParen gui=bold guibg=NONE guifg=#ff966c +hi MiniAnimateCursor gui=nocombine guibg=NONE +hi MiniCompletionActiveParameter gui=underline guibg=NONE +hi MiniCursorword guibg=#3b4261 +hi MiniCursorwordCurrent guibg=#3b4261 +hi MiniDepsTitleError guibg=#e26a75 guifg=#1b1d2b +hi MiniDepsTitleUpdate guibg=#b8db87 guifg=#1b1d2b +hi MiniDiffSignAdd guibg=NONE guifg=#b8db87 +hi MiniDiffSignChange guibg=NONE guifg=#7ca1f2 +hi MiniDiffSignDelete guibg=NONE guifg=#e26a75 +hi MiniFilesFile guibg=NONE guifg=#c8d3f5 +hi MiniFilesTitleFocused gui=bold guibg=#1e2030 guifg=#589ed7 +hi MiniHipatternsFixme gui=bold guibg=#c53b53 guifg=#1b1d2b +hi MiniHipatternsHack gui=bold guibg=#ffc777 guifg=#1b1d2b +hi MiniHipatternsNote gui=bold guibg=#4fd6be guifg=#1b1d2b +hi MiniHipatternsTodo gui=bold guibg=#0db9d7 guifg=#1b1d2b +hi MiniIconsAzure guibg=NONE guifg=#0db9d7 +hi MiniIconsBlue guibg=NONE guifg=#82aaff +hi MiniIconsCyan guibg=NONE guifg=#4fd6be +hi MiniIconsGreen guibg=NONE guifg=#c3e88d +hi MiniIconsGrey guibg=NONE guifg=#c8d3f5 +hi MiniIconsOrange guibg=NONE guifg=#ff966c +hi MiniIconsPurple guibg=NONE guifg=#fca7ea +hi MiniIconsRed guibg=NONE guifg=#ff757f +hi MiniIconsYellow guibg=NONE guifg=#ffc777 +hi MiniIndentscopePrefix gui=nocombine guibg=NONE +hi MiniIndentscopeSymbol gui=nocombine guibg=NONE guifg=#65bcff +hi MiniJump guibg=#ff007c guifg=#ffffff +hi MiniJump2dSpot gui=bold,nocombine guibg=NONE guifg=#ff007c +hi MiniJump2dSpotAhead gui=nocombine guibg=#1e2030 guifg=#4fd6be +hi MiniJump2dSpotUnique gui=bold,nocombine guibg=NONE guifg=#ff966c +hi MiniPickBorderText guibg=#1e2030 guifg=#4fd6be +hi MiniPickPrompt guibg=#1e2030 guifg=#0db9d7 +hi MiniStarterCurrent gui=nocombine guibg=NONE +hi MiniStarterFooter gui=italic guibg=NONE guifg=#ffc777 +hi MiniStarterHeader guibg=NONE guifg=#82aaff +hi MiniStarterInactive gui=italic guibg=NONE guifg=#636da6 +hi MiniStarterItem guibg=#222436 guifg=#c8d3f5 +hi MiniStarterItemBullet guibg=NONE guifg=#589ed7 +hi MiniStarterItemPrefix guibg=NONE guifg=#ffc777 +hi MiniStarterQuery guibg=NONE guifg=#0db9d7 +hi MiniStarterSection guibg=NONE guifg=#65bcff +hi MiniStatuslineDevinfo guibg=#3b4261 guifg=#828bb8 +hi MiniStatuslineFileinfo guibg=#3b4261 guifg=#828bb8 +hi MiniStatuslineFilename guibg=#2f334d guifg=#828bb8 +hi MiniStatuslineInactive guibg=#1e2030 guifg=#82aaff +hi MiniStatuslineModeCommand gui=bold guibg=#ffc777 guifg=#1b1d2b +hi MiniStatuslineModeInsert gui=bold guibg=#c3e88d guifg=#1b1d2b +hi MiniStatuslineModeNormal gui=bold guibg=#82aaff guifg=#1b1d2b +hi MiniStatuslineModeOther gui=bold guibg=#4fd6be guifg=#1b1d2b +hi MiniStatuslineModeReplace gui=bold guibg=#ff757f guifg=#1b1d2b +hi MiniStatuslineModeVisual gui=bold guibg=#c099ff guifg=#1b1d2b +hi MiniSurround guibg=#ff966c guifg=#1b1d2b +hi MiniTablineCurrent guibg=#3b4261 guifg=#c8d3f5 +hi MiniTablineFill guibg=#1b1d2b +hi MiniTablineHidden guibg=#1e2030 guifg=#737aa2 +hi MiniTablineModifiedCurrent guibg=#3b4261 guifg=#ffc777 +hi MiniTablineModifiedHidden guibg=#1e2030 guifg=#bd9664 +hi MiniTablineModifiedVisible guibg=#1e2030 guifg=#ffc777 +hi MiniTablineTabpagesection guibg=#1e2030 guifg=NONE +hi MiniTablineVisible guibg=#1e2030 guifg=#c8d3f5 +hi MiniTestEmphasis gui=bold guibg=NONE +hi MiniTestFail gui=bold guibg=NONE guifg=#ff757f +hi MiniTestPass gui=bold guibg=NONE guifg=#c3e88d +hi MiniTrailspace guibg=#ff757f +hi ModeMsg gui=bold guibg=NONE guifg=#828bb8 +hi MoreMsg guibg=NONE guifg=#82aaff +hi MsgArea guibg=NONE guifg=#828bb8 +hi NeogitBranch guibg=NONE guifg=#c099ff +hi NeogitDiffAddHighlight guibg=#273849 guifg=#b8db87 +hi NeogitDiffContextHighlight guibg=#2f334c guifg=#828bb8 +hi NeogitDiffDeleteHighlight guibg=#3a273a guifg=#e26a75 +hi NeogitHunkHeader guibg=#2f334d guifg=#c8d3f5 +hi NeogitHunkHeaderHighlight guibg=#3b4261 guifg=#82aaff +hi NeogitRemote guibg=NONE guifg=#fca7ea +hi NeotestAdapterName gui=bold guibg=NONE guifg=#fca7ea +hi NeotestBorder guibg=NONE guifg=#82aaff +hi NeotestDir guibg=NONE guifg=#82aaff +hi NeotestExpandMarker guibg=NONE guifg=#828bb8 +hi NeotestFailed guibg=NONE guifg=#ff757f +hi NeotestFile guibg=NONE guifg=#4fd6be +hi NeotestFocused guibg=NONE guifg=#ffc777 +hi NeotestIndent guibg=NONE guifg=#828bb8 +hi NeotestMarked guibg=NONE guifg=#82aaff +hi NeotestNamespace guibg=NONE guifg=#41a6b5 +hi NeotestPassed guibg=NONE guifg=#c3e88d +hi NeotestRunning guibg=NONE guifg=#ffc777 +hi NeotestSkipped guibg=NONE guifg=#82aaff +hi NeotestTarget guibg=NONE guifg=#82aaff +hi NeotestTest guibg=NONE guifg=#828bb8 +hi NeotestWinSelect guibg=NONE guifg=#82aaff +hi NonText guibg=NONE guifg=#545c7e +hi Normal guibg=#222436 guifg=#c8d3f5 +hi NormalFloat guibg=#1e2030 guifg=#c8d3f5 +hi NormalNC guibg=#222436 guifg=#c8d3f5 +hi NormalSB guibg=#1e2030 guifg=#828bb8 +hi Operator guibg=NONE guifg=#89ddff +hi Pmenu guibg=#1e2030 guifg=#c8d3f5 +hi PmenuSbar guibg=#27293a +hi PmenuSel guibg=#363c58 +hi PmenuThumb guibg=#3b4261 +hi PreProc guibg=NONE guifg=#86e1fc +hi Question guibg=NONE guifg=#82aaff +hi QuickFixLine gui=bold guibg=#2d3f76 +hi Search guibg=#3e68d7 guifg=#c8d3f5 +hi SignColumn guibg=#222436 guifg=#3b4261 +hi SignColumnSB guibg=#1e2030 guifg=#3b4261 +hi Sneak guibg=#c099ff guifg=#2f334d +hi SneakScope guibg=#2d3f76 +hi Special guibg=NONE guifg=#65bcff +hi SpecialKey guibg=NONE guifg=#545c7e +hi SpellBad gui=undercurl guibg=NONE guisp=#c53b53 +hi SpellCap gui=undercurl guibg=NONE guisp=#ffc777 +hi SpellLocal gui=undercurl guibg=NONE guisp=#0db9d7 +hi SpellRare gui=undercurl guibg=NONE guisp=#4fd6be +hi Statement guibg=NONE guifg=#c099ff +hi StatusLine guibg=#1e2030 guifg=#828bb8 +hi StatusLineNC guibg=#1e2030 guifg=#3b4261 +hi String guibg=NONE guifg=#c3e88d +hi Substitute guibg=#ff757f guifg=#1b1d2b +hi TabLine guibg=#1e2030 guifg=#3b4261 +hi TabLineFill guibg=#1b1d2b +hi TabLineSel guibg=#82aaff guifg=#1b1d2b +hi Title gui=bold guibg=NONE guifg=#82aaff +hi Todo guibg=#ffc777 guifg=#222436 +hi Type guibg=NONE guifg=#65bcff +hi Underlined gui=underline guibg=NONE +hi VertSplit guibg=NONE guifg=#1b1d2b +hi VimwikiHR guibg=NONE guifg=#ffc777 +hi VimwikiHeaderChar guibg=NONE guifg=#ffc777 +hi VimwikiHeaer1 gui=bold guibg=NONE guifg=#82aaff +hi VimwikiHeaer2 gui=bold guibg=NONE guifg=#ffc777 +hi VimwikiHeaer3 gui=bold guibg=NONE guifg=#c3e88d +hi VimwikiHeaer4 gui=bold guibg=NONE guifg=#4fd6be +hi VimwikiHeaer5 gui=bold guibg=NONE guifg=#c099ff +hi VimwikiHeaer6 gui=bold guibg=NONE guifg=#fca7ea +hi VimwikiLink guibg=NONE guifg=#82aaff +hi VimwikiList guibg=NONE guifg=#ff966c +hi VimwikiMarkers guibg=NONE guifg=#82aaff +hi VimwikiTag guibg=NONE guifg=#c3e88d +hi Visual guibg=#2d3f76 +hi VisualNOS guibg=#2d3f76 +hi WarningMsg guibg=NONE guifg=#ffc777 +hi Whitespace guibg=NONE guifg=#3b4261 +hi WildMenu guibg=#2d3f76 +hi WinSeparator gui=bold guibg=NONE guifg=#1b1d2b +hi debugBreakpoint guibg=#203346 guifg=#0db9d7 +hi debugPC guibg=#1e2030 +hi diffAdded guibg=NONE guifg=#b8db87 +hi diffChanged guibg=NONE guifg=#7ca1f2 +hi diffFile guibg=NONE guifg=#82aaff +hi diffIndexLine guibg=NONE guifg=#c099ff +hi diffLine guibg=NONE guifg=#636da6 +hi diffNewFile guibg=NONE guifg=#ff966c +hi diffOldFile guibg=NONE guifg=#ffc777 +hi diffRemoved guibg=NONE guifg=#e26a75 +hi healthError guibg=NONE guifg=#c53b53 +hi healthSuccess guibg=NONE guifg=#4fd6be +hi healthWarning guibg=NONE guifg=#ffc777 +hi helpCommand guibg=#444a73 guifg=#82aaff +hi htmlH1 gui=bold guibg=NONE guifg=#c099ff +hi htmlH2 gui=bold guibg=NONE guifg=#82aaff +hi illuminatedCurWord guibg=#3b4261 +hi illuminatedWord guibg=#3b4261 +hi lCursor guibg=#c8d3f5 guifg=#222436 +hi qfFileName guibg=NONE guifg=#82aaff +hi qfLineNr guibg=NONE guifg=#737aa2 +hi! link CurSearch IncSearch +hi! link Delimiter Special +hi! link FzfLuaCursor IncSearch +hi! link FzfLuaFilePart FzfLuaFzfNormal +hi! link FzfLuaFzfCursorLine Visual +hi! link FzfLuaHeaderText Title +hi! link FzfLuaPath Directory +hi! link LspKindColor Special +hi! link LspKindEvent Special +hi! link LspKindFile Normal +hi! link LspKindFolder Directory +hi! link LspKindSnippet Conceal +hi! link MiniAnimateNormalFloat NormalFloat +hi! link MiniClueBorder FloatBorder +hi! link MiniClueDescSingle NormalFloat +hi! link MiniClueTitle FloatTitle +hi! link MiniDepsChangeAdded diffAdded +hi! link MiniDepsChangeRemoved diffRemoved +hi! link MiniDepsHint DiagnosticHint +hi! link MiniDepsInfo DiagnosticInfo +hi! link MiniDepsMsgBreaking DiagnosticWarn +hi! link MiniDepsPlaceholder Comment +hi! link MiniDepsTitle Title +hi! link MiniDepsTitleSame Comment +hi! link MiniDiffOverAdd DiffAdd +hi! link MiniDiffOverChange DiffText +hi! link MiniDiffOverContext DiffChange +hi! link MiniDiffOverDelete DiffDelete +hi! link MiniFilesBorder FloatBorder +hi! link MiniFilesCursorLine CursorLine +hi! link MiniFilesDirectory Directory +hi! link MiniFilesNormal NormalFloat +hi! link MiniFilesTitle FloatTitle +hi! link MiniJump2dDim Comment +hi! link MiniMapNormal NormalFloat +hi! link MiniMapSymbolCount Special +hi! link MiniMapSymbolLine Title +hi! link MiniNotifyBorder FloatBorder +hi! link MiniNotifyNormal NormalFloat +hi! link MiniNotifyTitle FloatTitle +hi! link MiniOperatorsExchangeFrom IncSearch +hi! link MiniPickBorder FloatBorder +hi! link MiniPickIconDirectory Directory +hi! link MiniPickMatchCurrent CursorLine +hi! link MiniPickMatchMarked Visual +hi! link MiniPickNormal NormalFloat +hi! link MiniPickPreviewLine CursorLine +hi! link MiniPickPreviewRegion IncSearch +hi! link WinBar StatusLine +hi! link WinBarNC StatusLineNC \ No newline at end of file diff --git a/extras/vim/colors/tokyonight-night.vim b/extras/vim/colors/tokyonight-night.vim new file mode 100644 index 00000000..d949328b --- /dev/null +++ b/extras/vim/colors/tokyonight-night.vim @@ -0,0 +1,299 @@ +let g:colors_name = "tokyonight-night" +hi clear + +hi ALEErrorSign guibg=NONE guifg=#db4b4b +hi ALEWarningSign guibg=NONE guifg=#e0af68 +hi Bold gui=bold guibg=NONE guifg=#c0caf5 +hi Character guibg=NONE guifg=#9ece6a +hi ColorColumn guibg=#15161e +hi Comment gui=italic guibg=NONE guifg=#565f89 +hi Conceal guibg=NONE guifg=#737aa2 +hi Constant guibg=NONE guifg=#ff9e64 +hi Cursor guibg=#c0caf5 guifg=#1a1b26 +hi CursorColumn guibg=#292e42 +hi CursorIM guibg=#c0caf5 guifg=#1a1b26 +hi CursorLine guibg=#292e42 +hi CursorLineNr gui=bold guibg=NONE guifg=#ff9e64 +hi Debug guibg=NONE guifg=#ff9e64 +hi DiagnosticError guibg=NONE guifg=#db4b4b +hi DiagnosticHint guibg=NONE guifg=#1abc9c +hi DiagnosticInfo guibg=NONE guifg=#0db9d7 +hi DiagnosticUnderlineError gui=undercurl guibg=NONE guisp=#db4b4b +hi DiagnosticUnderlineHint gui=undercurl guibg=NONE guisp=#1abc9c +hi DiagnosticUnderlineInfo gui=undercurl guibg=NONE guisp=#0db9d7 +hi DiagnosticUnderlineWarn gui=undercurl guibg=NONE guisp=#e0af68 +hi DiagnosticUnnecessary guibg=NONE guifg=#414868 +hi DiagnosticVirtualTextError guibg=#2d202a guifg=#db4b4b +hi DiagnosticVirtualTextHint guibg=#1a2b32 guifg=#1abc9c +hi DiagnosticVirtualTextInfo guibg=#192b38 guifg=#0db9d7 +hi DiagnosticVirtualTextWarn guibg=#2e2a2d guifg=#e0af68 +hi DiagnosticWarn guibg=NONE guifg=#e0af68 +hi DiffAdd guibg=#20303b +hi DiffChange guibg=#1f2231 +hi DiffDelete guibg=#37222c +hi DiffText guibg=#394b70 +hi Directory guibg=NONE guifg=#7aa2f7 +hi EndOfBuffer guibg=NONE guifg=#1a1b26 +hi Error guibg=NONE guifg=#db4b4b +hi ErrorMsg guibg=NONE guifg=#db4b4b +hi FloatBorder guibg=#16161e guifg=#27a1b9 +hi FloatTitle guibg=#16161e guifg=#27a1b9 +hi FoldColumn guibg=#1a1b26 guifg=#565f89 +hi Folded guibg=#3b4261 guifg=#7aa2f7 +hi Foo guibg=#ff007c guifg=#c0caf5 +hi Function guibg=NONE guifg=#7aa2f7 +hi FzfLuaBorder guibg=#16161e guifg=#27a1b9 +hi FzfLuaDirPart guibg=NONE guifg=#a9b1d6 +hi FzfLuaFzfNormal guibg=NONE guifg=#c0caf5 +hi FzfLuaFzfPointer guibg=NONE guifg=#ff007c +hi FzfLuaFzfSeparator guibg=#16161e guifg=#ff9e64 +hi FzfLuaNormal guibg=#16161e guifg=#c0caf5 +hi FzfLuaPreviewTitle guibg=#16161e guifg=#27a1b9 +hi FzfLuaTitle guibg=#16161e guifg=#ff9e64 +hi GitGutterAdd guibg=NONE guifg=#449dab +hi GitGutterAddLineNr guibg=NONE guifg=#449dab +hi GitGutterChange guibg=NONE guifg=#6183bb +hi GitGutterChangeLineNr guibg=NONE guifg=#6183bb +hi GitGutterDelete guibg=NONE guifg=#914c54 +hi GitGutterDeleteLineNr guibg=NONE guifg=#914c54 +hi GlyphPalette1 guibg=NONE guifg=#db4b4b +hi GlyphPalette2 guibg=NONE guifg=#9ece6a +hi GlyphPalette3 guibg=NONE guifg=#e0af68 +hi GlyphPalette4 guibg=NONE guifg=#7aa2f7 +hi GlyphPalette6 guibg=NONE guifg=#73daca +hi GlyphPalette7 guibg=NONE guifg=#c0caf5 +hi GlyphPalette9 guibg=NONE guifg=#f7768e +hi Identifier guibg=NONE guifg=#bb9af7 +hi IlluminatedWordRead guibg=#3b4261 +hi IlluminatedWordText guibg=#3b4261 +hi IlluminatedWordWrite guibg=#3b4261 +hi IncSearch guibg=#ff9e64 guifg=#15161e +hi Italic gui=italic guibg=NONE guifg=#c0caf5 +hi Keyword gui=italic guibg=NONE guifg=#7dcfff +hi LineNr guibg=NONE guifg=#3b4261 +hi LineNrAbove guibg=NONE guifg=#3b4261 +hi LineNrBelow guibg=NONE guifg=#3b4261 +hi LspCodeLens guibg=NONE guifg=#565f89 +hi LspInfoBorder guibg=#16161e guifg=#27a1b9 +hi LspInlayHint guibg=#1d202d guifg=#545c7e +hi LspReferenceRead guibg=#3b4261 +hi LspReferenceText guibg=#3b4261 +hi LspReferenceWrite guibg=#3b4261 +hi LspSignatureActiveParameter gui=bold guibg=#20253a +hi MatchParen gui=bold guibg=NONE guifg=#ff9e64 +hi MiniAnimateCursor gui=nocombine guibg=NONE +hi MiniCompletionActiveParameter gui=underline guibg=NONE +hi MiniCursorword guibg=#3b4261 +hi MiniCursorwordCurrent guibg=#3b4261 +hi MiniDepsTitleError guibg=#914c54 guifg=#15161e +hi MiniDepsTitleUpdate guibg=#449dab guifg=#15161e +hi MiniDiffSignAdd guibg=NONE guifg=#449dab +hi MiniDiffSignChange guibg=NONE guifg=#6183bb +hi MiniDiffSignDelete guibg=NONE guifg=#914c54 +hi MiniFilesFile guibg=NONE guifg=#c0caf5 +hi MiniFilesTitleFocused gui=bold guibg=#16161e guifg=#27a1b9 +hi MiniHipatternsFixme gui=bold guibg=#db4b4b guifg=#15161e +hi MiniHipatternsHack gui=bold guibg=#e0af68 guifg=#15161e +hi MiniHipatternsNote gui=bold guibg=#1abc9c guifg=#15161e +hi MiniHipatternsTodo gui=bold guibg=#0db9d7 guifg=#15161e +hi MiniIconsAzure guibg=NONE guifg=#0db9d7 +hi MiniIconsBlue guibg=NONE guifg=#7aa2f7 +hi MiniIconsCyan guibg=NONE guifg=#1abc9c +hi MiniIconsGreen guibg=NONE guifg=#9ece6a +hi MiniIconsGrey guibg=NONE guifg=#c0caf5 +hi MiniIconsOrange guibg=NONE guifg=#ff9e64 +hi MiniIconsPurple guibg=NONE guifg=#9d7cd8 +hi MiniIconsRed guibg=NONE guifg=#f7768e +hi MiniIconsYellow guibg=NONE guifg=#e0af68 +hi MiniIndentscopePrefix gui=nocombine guibg=NONE +hi MiniIndentscopeSymbol gui=nocombine guibg=NONE guifg=#2ac3de +hi MiniJump guibg=#ff007c guifg=#ffffff +hi MiniJump2dSpot gui=bold,nocombine guibg=NONE guifg=#ff007c +hi MiniJump2dSpotAhead gui=nocombine guibg=#16161e guifg=#1abc9c +hi MiniJump2dSpotUnique gui=bold,nocombine guibg=NONE guifg=#ff9e64 +hi MiniPickBorderText guibg=#16161e guifg=#1abc9c +hi MiniPickPrompt guibg=#16161e guifg=#0db9d7 +hi MiniStarterCurrent gui=nocombine guibg=NONE +hi MiniStarterFooter gui=italic guibg=NONE guifg=#e0af68 +hi MiniStarterHeader guibg=NONE guifg=#7aa2f7 +hi MiniStarterInactive gui=italic guibg=NONE guifg=#565f89 +hi MiniStarterItem guibg=#1a1b26 guifg=#c0caf5 +hi MiniStarterItemBullet guibg=NONE guifg=#27a1b9 +hi MiniStarterItemPrefix guibg=NONE guifg=#e0af68 +hi MiniStarterQuery guibg=NONE guifg=#0db9d7 +hi MiniStarterSection guibg=NONE guifg=#2ac3de +hi MiniStatuslineDevinfo guibg=#3b4261 guifg=#a9b1d6 +hi MiniStatuslineFileinfo guibg=#3b4261 guifg=#a9b1d6 +hi MiniStatuslineFilename guibg=#292e42 guifg=#a9b1d6 +hi MiniStatuslineInactive guibg=#16161e guifg=#7aa2f7 +hi MiniStatuslineModeCommand gui=bold guibg=#e0af68 guifg=#15161e +hi MiniStatuslineModeInsert gui=bold guibg=#9ece6a guifg=#15161e +hi MiniStatuslineModeNormal gui=bold guibg=#7aa2f7 guifg=#15161e +hi MiniStatuslineModeOther gui=bold guibg=#1abc9c guifg=#15161e +hi MiniStatuslineModeReplace gui=bold guibg=#f7768e guifg=#15161e +hi MiniStatuslineModeVisual gui=bold guibg=#bb9af7 guifg=#15161e +hi MiniSurround guibg=#ff9e64 guifg=#15161e +hi MiniTablineCurrent guibg=#3b4261 guifg=#c0caf5 +hi MiniTablineFill guibg=#15161e +hi MiniTablineHidden guibg=#16161e guifg=#737aa2 +hi MiniTablineModifiedCurrent guibg=#3b4261 guifg=#e0af68 +hi MiniTablineModifiedHidden guibg=#16161e guifg=#a58354 +hi MiniTablineModifiedVisible guibg=#16161e guifg=#e0af68 +hi MiniTablineTabpagesection guibg=#16161e guifg=NONE +hi MiniTablineVisible guibg=#16161e guifg=#c0caf5 +hi MiniTestEmphasis gui=bold guibg=NONE +hi MiniTestFail gui=bold guibg=NONE guifg=#f7768e +hi MiniTestPass gui=bold guibg=NONE guifg=#9ece6a +hi MiniTrailspace guibg=#f7768e +hi ModeMsg gui=bold guibg=NONE guifg=#a9b1d6 +hi MoreMsg guibg=NONE guifg=#7aa2f7 +hi MsgArea guibg=NONE guifg=#a9b1d6 +hi NeogitBranch guibg=NONE guifg=#bb9af7 +hi NeogitDiffAddHighlight guibg=#20303b guifg=#449dab +hi NeogitDiffContextHighlight guibg=#2b2f44 guifg=#a9b1d6 +hi NeogitDiffDeleteHighlight guibg=#37222c guifg=#914c54 +hi NeogitHunkHeader guibg=#292e42 guifg=#c0caf5 +hi NeogitHunkHeaderHighlight guibg=#3b4261 guifg=#7aa2f7 +hi NeogitRemote guibg=NONE guifg=#9d7cd8 +hi NeotestAdapterName gui=bold guibg=NONE guifg=#9d7cd8 +hi NeotestBorder guibg=NONE guifg=#7aa2f7 +hi NeotestDir guibg=NONE guifg=#7aa2f7 +hi NeotestExpandMarker guibg=NONE guifg=#a9b1d6 +hi NeotestFailed guibg=NONE guifg=#f7768e +hi NeotestFile guibg=NONE guifg=#1abc9c +hi NeotestFocused guibg=NONE guifg=#e0af68 +hi NeotestIndent guibg=NONE guifg=#a9b1d6 +hi NeotestMarked guibg=NONE guifg=#7aa2f7 +hi NeotestNamespace guibg=NONE guifg=#41a6b5 +hi NeotestPassed guibg=NONE guifg=#9ece6a +hi NeotestRunning guibg=NONE guifg=#e0af68 +hi NeotestSkipped guibg=NONE guifg=#7aa2f7 +hi NeotestTarget guibg=NONE guifg=#7aa2f7 +hi NeotestTest guibg=NONE guifg=#a9b1d6 +hi NeotestWinSelect guibg=NONE guifg=#7aa2f7 +hi NonText guibg=NONE guifg=#545c7e +hi Normal guibg=#1a1b26 guifg=#c0caf5 +hi NormalFloat guibg=#16161e guifg=#c0caf5 +hi NormalNC guibg=#1a1b26 guifg=#c0caf5 +hi NormalSB guibg=#16161e guifg=#a9b1d6 +hi Operator guibg=NONE guifg=#89ddff +hi Pmenu guibg=#16161e guifg=#c0caf5 +hi PmenuSbar guibg=#1f1f29 +hi PmenuSel guibg=#343a55 +hi PmenuThumb guibg=#3b4261 +hi PreProc guibg=NONE guifg=#7dcfff +hi Question guibg=NONE guifg=#7aa2f7 +hi QuickFixLine gui=bold guibg=#283457 +hi Search guibg=#3d59a1 guifg=#c0caf5 +hi SignColumn guibg=#1a1b26 guifg=#3b4261 +hi SignColumnSB guibg=#16161e guifg=#3b4261 +hi Sneak guibg=#bb9af7 guifg=#292e42 +hi SneakScope guibg=#283457 +hi Special guibg=NONE guifg=#2ac3de +hi SpecialKey guibg=NONE guifg=#545c7e +hi SpellBad gui=undercurl guibg=NONE guisp=#db4b4b +hi SpellCap gui=undercurl guibg=NONE guisp=#e0af68 +hi SpellLocal gui=undercurl guibg=NONE guisp=#0db9d7 +hi SpellRare gui=undercurl guibg=NONE guisp=#1abc9c +hi Statement guibg=NONE guifg=#bb9af7 +hi StatusLine guibg=#16161e guifg=#a9b1d6 +hi StatusLineNC guibg=#16161e guifg=#3b4261 +hi String guibg=NONE guifg=#9ece6a +hi Substitute guibg=#f7768e guifg=#15161e +hi TabLine guibg=#16161e guifg=#3b4261 +hi TabLineFill guibg=#15161e +hi TabLineSel guibg=#7aa2f7 guifg=#15161e +hi Title gui=bold guibg=NONE guifg=#7aa2f7 +hi Todo guibg=#e0af68 guifg=#1a1b26 +hi Type guibg=NONE guifg=#2ac3de +hi Underlined gui=underline guibg=NONE +hi VertSplit guibg=NONE guifg=#15161e +hi VimwikiHR guibg=NONE guifg=#e0af68 +hi VimwikiHeaderChar guibg=NONE guifg=#e0af68 +hi VimwikiHeaer1 gui=bold guibg=NONE guifg=#7aa2f7 +hi VimwikiHeaer2 gui=bold guibg=NONE guifg=#e0af68 +hi VimwikiHeaer3 gui=bold guibg=NONE guifg=#9ece6a +hi VimwikiHeaer4 gui=bold guibg=NONE guifg=#1abc9c +hi VimwikiHeaer5 gui=bold guibg=NONE guifg=#bb9af7 +hi VimwikiHeaer6 gui=bold guibg=NONE guifg=#9d7cd8 +hi VimwikiLink guibg=NONE guifg=#7aa2f7 +hi VimwikiList guibg=NONE guifg=#ff9e64 +hi VimwikiMarkers guibg=NONE guifg=#7aa2f7 +hi VimwikiTag guibg=NONE guifg=#9ece6a +hi Visual guibg=#283457 +hi VisualNOS guibg=#283457 +hi WarningMsg guibg=NONE guifg=#e0af68 +hi Whitespace guibg=NONE guifg=#3b4261 +hi WildMenu guibg=#283457 +hi WinSeparator gui=bold guibg=NONE guifg=#15161e +hi debugBreakpoint guibg=#192b38 guifg=#0db9d7 +hi debugPC guibg=#16161e +hi diffAdded guibg=NONE guifg=#449dab +hi diffChanged guibg=NONE guifg=#6183bb +hi diffFile guibg=NONE guifg=#7aa2f7 +hi diffIndexLine guibg=NONE guifg=#bb9af7 +hi diffLine guibg=NONE guifg=#565f89 +hi diffNewFile guibg=NONE guifg=#ff9e64 +hi diffOldFile guibg=NONE guifg=#e0af68 +hi diffRemoved guibg=NONE guifg=#914c54 +hi healthError guibg=NONE guifg=#db4b4b +hi healthSuccess guibg=NONE guifg=#73daca +hi healthWarning guibg=NONE guifg=#e0af68 +hi helpCommand guibg=#414868 guifg=#7aa2f7 +hi htmlH1 gui=bold guibg=NONE guifg=#bb9af7 +hi htmlH2 gui=bold guibg=NONE guifg=#7aa2f7 +hi illuminatedCurWord guibg=#3b4261 +hi illuminatedWord guibg=#3b4261 +hi lCursor guibg=#c0caf5 guifg=#1a1b26 +hi qfFileName guibg=NONE guifg=#7aa2f7 +hi qfLineNr guibg=NONE guifg=#737aa2 +hi! link CurSearch IncSearch +hi! link Delimiter Special +hi! link FzfLuaCursor IncSearch +hi! link FzfLuaFilePart FzfLuaFzfNormal +hi! link FzfLuaFzfCursorLine Visual +hi! link FzfLuaHeaderText Title +hi! link FzfLuaPath Directory +hi! link LspKindColor Special +hi! link LspKindEvent Special +hi! link LspKindFile Normal +hi! link LspKindFolder Directory +hi! link LspKindSnippet Conceal +hi! link MiniAnimateNormalFloat NormalFloat +hi! link MiniClueBorder FloatBorder +hi! link MiniClueDescSingle NormalFloat +hi! link MiniClueTitle FloatTitle +hi! link MiniDepsChangeAdded diffAdded +hi! link MiniDepsChangeRemoved diffRemoved +hi! link MiniDepsHint DiagnosticHint +hi! link MiniDepsInfo DiagnosticInfo +hi! link MiniDepsMsgBreaking DiagnosticWarn +hi! link MiniDepsPlaceholder Comment +hi! link MiniDepsTitle Title +hi! link MiniDepsTitleSame Comment +hi! link MiniDiffOverAdd DiffAdd +hi! link MiniDiffOverChange DiffText +hi! link MiniDiffOverContext DiffChange +hi! link MiniDiffOverDelete DiffDelete +hi! link MiniFilesBorder FloatBorder +hi! link MiniFilesCursorLine CursorLine +hi! link MiniFilesDirectory Directory +hi! link MiniFilesNormal NormalFloat +hi! link MiniFilesTitle FloatTitle +hi! link MiniJump2dDim Comment +hi! link MiniMapNormal NormalFloat +hi! link MiniMapSymbolCount Special +hi! link MiniMapSymbolLine Title +hi! link MiniNotifyBorder FloatBorder +hi! link MiniNotifyNormal NormalFloat +hi! link MiniNotifyTitle FloatTitle +hi! link MiniOperatorsExchangeFrom IncSearch +hi! link MiniPickBorder FloatBorder +hi! link MiniPickIconDirectory Directory +hi! link MiniPickMatchCurrent CursorLine +hi! link MiniPickMatchMarked Visual +hi! link MiniPickNormal NormalFloat +hi! link MiniPickPreviewLine CursorLine +hi! link MiniPickPreviewRegion IncSearch +hi! link WinBar StatusLine +hi! link WinBarNC StatusLineNC \ No newline at end of file diff --git a/extras/vim/colors/tokyonight-storm.vim b/extras/vim/colors/tokyonight-storm.vim new file mode 100644 index 00000000..9ff82efb --- /dev/null +++ b/extras/vim/colors/tokyonight-storm.vim @@ -0,0 +1,299 @@ +let g:colors_name = "tokyonight-storm" +hi clear + +hi ALEErrorSign guibg=NONE guifg=#db4b4b +hi ALEWarningSign guibg=NONE guifg=#e0af68 +hi Bold gui=bold guibg=NONE guifg=#c0caf5 +hi Character guibg=NONE guifg=#9ece6a +hi ColorColumn guibg=#1d202f +hi Comment gui=italic guibg=NONE guifg=#565f89 +hi Conceal guibg=NONE guifg=#737aa2 +hi Constant guibg=NONE guifg=#ff9e64 +hi Cursor guibg=#c0caf5 guifg=#24283b +hi CursorColumn guibg=#292e42 +hi CursorIM guibg=#c0caf5 guifg=#24283b +hi CursorLine guibg=#292e42 +hi CursorLineNr gui=bold guibg=NONE guifg=#ff9e64 +hi Debug guibg=NONE guifg=#ff9e64 +hi DiagnosticError guibg=NONE guifg=#db4b4b +hi DiagnosticHint guibg=NONE guifg=#1abc9c +hi DiagnosticInfo guibg=NONE guifg=#0db9d7 +hi DiagnosticUnderlineError gui=undercurl guibg=NONE guisp=#db4b4b +hi DiagnosticUnderlineHint gui=undercurl guibg=NONE guisp=#1abc9c +hi DiagnosticUnderlineInfo gui=undercurl guibg=NONE guisp=#0db9d7 +hi DiagnosticUnderlineWarn gui=undercurl guibg=NONE guisp=#e0af68 +hi DiagnosticUnnecessary guibg=NONE guifg=#414868 +hi DiagnosticVirtualTextError guibg=#362c3d guifg=#db4b4b +hi DiagnosticVirtualTextHint guibg=#233745 guifg=#1abc9c +hi DiagnosticVirtualTextInfo guibg=#22374b guifg=#0db9d7 +hi DiagnosticVirtualTextWarn guibg=#373640 guifg=#e0af68 +hi DiagnosticWarn guibg=NONE guifg=#e0af68 +hi DiffAdd guibg=#283b4d +hi DiffChange guibg=#272d43 +hi DiffDelete guibg=#3f2d3d +hi DiffText guibg=#394b70 +hi Directory guibg=NONE guifg=#7aa2f7 +hi EndOfBuffer guibg=NONE guifg=#24283b +hi Error guibg=NONE guifg=#db4b4b +hi ErrorMsg guibg=NONE guifg=#db4b4b +hi FloatBorder guibg=#1f2335 guifg=#29a4bd +hi FloatTitle guibg=#1f2335 guifg=#29a4bd +hi FoldColumn guibg=#24283b guifg=#565f89 +hi Folded guibg=#3b4261 guifg=#7aa2f7 +hi Foo guibg=#ff007c guifg=#c0caf5 +hi Function guibg=NONE guifg=#7aa2f7 +hi FzfLuaBorder guibg=#1f2335 guifg=#29a4bd +hi FzfLuaDirPart guibg=NONE guifg=#a9b1d6 +hi FzfLuaFzfNormal guibg=NONE guifg=#c0caf5 +hi FzfLuaFzfPointer guibg=NONE guifg=#ff007c +hi FzfLuaFzfSeparator guibg=#1f2335 guifg=#ff9e64 +hi FzfLuaNormal guibg=#1f2335 guifg=#c0caf5 +hi FzfLuaPreviewTitle guibg=#1f2335 guifg=#29a4bd +hi FzfLuaTitle guibg=#1f2335 guifg=#ff9e64 +hi GitGutterAdd guibg=NONE guifg=#449dab +hi GitGutterAddLineNr guibg=NONE guifg=#449dab +hi GitGutterChange guibg=NONE guifg=#6183bb +hi GitGutterChangeLineNr guibg=NONE guifg=#6183bb +hi GitGutterDelete guibg=NONE guifg=#914c54 +hi GitGutterDeleteLineNr guibg=NONE guifg=#914c54 +hi GlyphPalette1 guibg=NONE guifg=#db4b4b +hi GlyphPalette2 guibg=NONE guifg=#9ece6a +hi GlyphPalette3 guibg=NONE guifg=#e0af68 +hi GlyphPalette4 guibg=NONE guifg=#7aa2f7 +hi GlyphPalette6 guibg=NONE guifg=#73daca +hi GlyphPalette7 guibg=NONE guifg=#c0caf5 +hi GlyphPalette9 guibg=NONE guifg=#f7768e +hi Identifier guibg=NONE guifg=#bb9af7 +hi IlluminatedWordRead guibg=#3b4261 +hi IlluminatedWordText guibg=#3b4261 +hi IlluminatedWordWrite guibg=#3b4261 +hi IncSearch guibg=#ff9e64 guifg=#1d202f +hi Italic gui=italic guibg=NONE guifg=#c0caf5 +hi Keyword gui=italic guibg=NONE guifg=#7dcfff +hi LineNr guibg=NONE guifg=#3b4261 +hi LineNrAbove guibg=NONE guifg=#3b4261 +hi LineNrBelow guibg=NONE guifg=#3b4261 +hi LspCodeLens guibg=NONE guifg=#565f89 +hi LspInfoBorder guibg=#1f2335 guifg=#29a4bd +hi LspInlayHint guibg=#262c40 guifg=#545c7e +hi LspReferenceRead guibg=#3b4261 +hi LspReferenceText guibg=#3b4261 +hi LspReferenceWrite guibg=#3b4261 +hi LspSignatureActiveParameter gui=bold guibg=#28304b +hi MatchParen gui=bold guibg=NONE guifg=#ff9e64 +hi MiniAnimateCursor gui=nocombine guibg=NONE +hi MiniCompletionActiveParameter gui=underline guibg=NONE +hi MiniCursorword guibg=#3b4261 +hi MiniCursorwordCurrent guibg=#3b4261 +hi MiniDepsTitleError guibg=#914c54 guifg=#1d202f +hi MiniDepsTitleUpdate guibg=#449dab guifg=#1d202f +hi MiniDiffSignAdd guibg=NONE guifg=#449dab +hi MiniDiffSignChange guibg=NONE guifg=#6183bb +hi MiniDiffSignDelete guibg=NONE guifg=#914c54 +hi MiniFilesFile guibg=NONE guifg=#c0caf5 +hi MiniFilesTitleFocused gui=bold guibg=#1f2335 guifg=#29a4bd +hi MiniHipatternsFixme gui=bold guibg=#db4b4b guifg=#1d202f +hi MiniHipatternsHack gui=bold guibg=#e0af68 guifg=#1d202f +hi MiniHipatternsNote gui=bold guibg=#1abc9c guifg=#1d202f +hi MiniHipatternsTodo gui=bold guibg=#0db9d7 guifg=#1d202f +hi MiniIconsAzure guibg=NONE guifg=#0db9d7 +hi MiniIconsBlue guibg=NONE guifg=#7aa2f7 +hi MiniIconsCyan guibg=NONE guifg=#1abc9c +hi MiniIconsGreen guibg=NONE guifg=#9ece6a +hi MiniIconsGrey guibg=NONE guifg=#c0caf5 +hi MiniIconsOrange guibg=NONE guifg=#ff9e64 +hi MiniIconsPurple guibg=NONE guifg=#9d7cd8 +hi MiniIconsRed guibg=NONE guifg=#f7768e +hi MiniIconsYellow guibg=NONE guifg=#e0af68 +hi MiniIndentscopePrefix gui=nocombine guibg=NONE +hi MiniIndentscopeSymbol gui=nocombine guibg=NONE guifg=#2ac3de +hi MiniJump guibg=#ff007c guifg=#ffffff +hi MiniJump2dSpot gui=bold,nocombine guibg=NONE guifg=#ff007c +hi MiniJump2dSpotAhead gui=nocombine guibg=#1f2335 guifg=#1abc9c +hi MiniJump2dSpotUnique gui=bold,nocombine guibg=NONE guifg=#ff9e64 +hi MiniPickBorderText guibg=#1f2335 guifg=#1abc9c +hi MiniPickPrompt guibg=#1f2335 guifg=#0db9d7 +hi MiniStarterCurrent gui=nocombine guibg=NONE +hi MiniStarterFooter gui=italic guibg=NONE guifg=#e0af68 +hi MiniStarterHeader guibg=NONE guifg=#7aa2f7 +hi MiniStarterInactive gui=italic guibg=NONE guifg=#565f89 +hi MiniStarterItem guibg=#24283b guifg=#c0caf5 +hi MiniStarterItemBullet guibg=NONE guifg=#29a4bd +hi MiniStarterItemPrefix guibg=NONE guifg=#e0af68 +hi MiniStarterQuery guibg=NONE guifg=#0db9d7 +hi MiniStarterSection guibg=NONE guifg=#2ac3de +hi MiniStatuslineDevinfo guibg=#3b4261 guifg=#a9b1d6 +hi MiniStatuslineFileinfo guibg=#3b4261 guifg=#a9b1d6 +hi MiniStatuslineFilename guibg=#292e42 guifg=#a9b1d6 +hi MiniStatuslineInactive guibg=#1f2335 guifg=#7aa2f7 +hi MiniStatuslineModeCommand gui=bold guibg=#e0af68 guifg=#1d202f +hi MiniStatuslineModeInsert gui=bold guibg=#9ece6a guifg=#1d202f +hi MiniStatuslineModeNormal gui=bold guibg=#7aa2f7 guifg=#1d202f +hi MiniStatuslineModeOther gui=bold guibg=#1abc9c guifg=#1d202f +hi MiniStatuslineModeReplace gui=bold guibg=#f7768e guifg=#1d202f +hi MiniStatuslineModeVisual gui=bold guibg=#bb9af7 guifg=#1d202f +hi MiniSurround guibg=#ff9e64 guifg=#1d202f +hi MiniTablineCurrent guibg=#3b4261 guifg=#c0caf5 +hi MiniTablineFill guibg=#1d202f +hi MiniTablineHidden guibg=#1f2335 guifg=#737aa2 +hi MiniTablineModifiedCurrent guibg=#3b4261 guifg=#e0af68 +hi MiniTablineModifiedHidden guibg=#1f2335 guifg=#a8875b +hi MiniTablineModifiedVisible guibg=#1f2335 guifg=#e0af68 +hi MiniTablineTabpagesection guibg=#1f2335 guifg=NONE +hi MiniTablineVisible guibg=#1f2335 guifg=#c0caf5 +hi MiniTestEmphasis gui=bold guibg=NONE +hi MiniTestFail gui=bold guibg=NONE guifg=#f7768e +hi MiniTestPass gui=bold guibg=NONE guifg=#9ece6a +hi MiniTrailspace guibg=#f7768e +hi ModeMsg gui=bold guibg=NONE guifg=#a9b1d6 +hi MoreMsg guibg=NONE guifg=#7aa2f7 +hi MsgArea guibg=NONE guifg=#a9b1d6 +hi NeogitBranch guibg=NONE guifg=#bb9af7 +hi NeogitDiffAddHighlight guibg=#283b4d guifg=#449dab +hi NeogitDiffContextHighlight guibg=#30354e guifg=#a9b1d6 +hi NeogitDiffDeleteHighlight guibg=#3f2d3d guifg=#914c54 +hi NeogitHunkHeader guibg=#292e42 guifg=#c0caf5 +hi NeogitHunkHeaderHighlight guibg=#3b4261 guifg=#7aa2f7 +hi NeogitRemote guibg=NONE guifg=#9d7cd8 +hi NeotestAdapterName gui=bold guibg=NONE guifg=#9d7cd8 +hi NeotestBorder guibg=NONE guifg=#7aa2f7 +hi NeotestDir guibg=NONE guifg=#7aa2f7 +hi NeotestExpandMarker guibg=NONE guifg=#a9b1d6 +hi NeotestFailed guibg=NONE guifg=#f7768e +hi NeotestFile guibg=NONE guifg=#1abc9c +hi NeotestFocused guibg=NONE guifg=#e0af68 +hi NeotestIndent guibg=NONE guifg=#a9b1d6 +hi NeotestMarked guibg=NONE guifg=#7aa2f7 +hi NeotestNamespace guibg=NONE guifg=#41a6b5 +hi NeotestPassed guibg=NONE guifg=#9ece6a +hi NeotestRunning guibg=NONE guifg=#e0af68 +hi NeotestSkipped guibg=NONE guifg=#7aa2f7 +hi NeotestTarget guibg=NONE guifg=#7aa2f7 +hi NeotestTest guibg=NONE guifg=#a9b1d6 +hi NeotestWinSelect guibg=NONE guifg=#7aa2f7 +hi NonText guibg=NONE guifg=#545c7e +hi Normal guibg=#24283b guifg=#c0caf5 +hi NormalFloat guibg=#1f2335 guifg=#c0caf5 +hi NormalNC guibg=#24283b guifg=#c0caf5 +hi NormalSB guibg=#1f2335 guifg=#a9b1d6 +hi Operator guibg=NONE guifg=#89ddff +hi Pmenu guibg=#1f2335 guifg=#c0caf5 +hi PmenuSbar guibg=#272b3f +hi PmenuSel guibg=#363d59 +hi PmenuThumb guibg=#3b4261 +hi PreProc guibg=NONE guifg=#7dcfff +hi Question guibg=NONE guifg=#7aa2f7 +hi QuickFixLine gui=bold guibg=#2e3c64 +hi Search guibg=#3d59a1 guifg=#c0caf5 +hi SignColumn guibg=#24283b guifg=#3b4261 +hi SignColumnSB guibg=#1f2335 guifg=#3b4261 +hi Sneak guibg=#bb9af7 guifg=#292e42 +hi SneakScope guibg=#2e3c64 +hi Special guibg=NONE guifg=#2ac3de +hi SpecialKey guibg=NONE guifg=#545c7e +hi SpellBad gui=undercurl guibg=NONE guisp=#db4b4b +hi SpellCap gui=undercurl guibg=NONE guisp=#e0af68 +hi SpellLocal gui=undercurl guibg=NONE guisp=#0db9d7 +hi SpellRare gui=undercurl guibg=NONE guisp=#1abc9c +hi Statement guibg=NONE guifg=#bb9af7 +hi StatusLine guibg=#1f2335 guifg=#a9b1d6 +hi StatusLineNC guibg=#1f2335 guifg=#3b4261 +hi String guibg=NONE guifg=#9ece6a +hi Substitute guibg=#f7768e guifg=#1d202f +hi TabLine guibg=#1f2335 guifg=#3b4261 +hi TabLineFill guibg=#1d202f +hi TabLineSel guibg=#7aa2f7 guifg=#1d202f +hi Title gui=bold guibg=NONE guifg=#7aa2f7 +hi Todo guibg=#e0af68 guifg=#24283b +hi Type guibg=NONE guifg=#2ac3de +hi Underlined gui=underline guibg=NONE +hi VertSplit guibg=NONE guifg=#1d202f +hi VimwikiHR guibg=NONE guifg=#e0af68 +hi VimwikiHeaderChar guibg=NONE guifg=#e0af68 +hi VimwikiHeaer1 gui=bold guibg=NONE guifg=#7aa2f7 +hi VimwikiHeaer2 gui=bold guibg=NONE guifg=#e0af68 +hi VimwikiHeaer3 gui=bold guibg=NONE guifg=#9ece6a +hi VimwikiHeaer4 gui=bold guibg=NONE guifg=#1abc9c +hi VimwikiHeaer5 gui=bold guibg=NONE guifg=#bb9af7 +hi VimwikiHeaer6 gui=bold guibg=NONE guifg=#9d7cd8 +hi VimwikiLink guibg=NONE guifg=#7aa2f7 +hi VimwikiList guibg=NONE guifg=#ff9e64 +hi VimwikiMarkers guibg=NONE guifg=#7aa2f7 +hi VimwikiTag guibg=NONE guifg=#9ece6a +hi Visual guibg=#2e3c64 +hi VisualNOS guibg=#2e3c64 +hi WarningMsg guibg=NONE guifg=#e0af68 +hi Whitespace guibg=NONE guifg=#3b4261 +hi WildMenu guibg=#2e3c64 +hi WinSeparator gui=bold guibg=NONE guifg=#1d202f +hi debugBreakpoint guibg=#22374b guifg=#0db9d7 +hi debugPC guibg=#1f2335 +hi diffAdded guibg=NONE guifg=#449dab +hi diffChanged guibg=NONE guifg=#6183bb +hi diffFile guibg=NONE guifg=#7aa2f7 +hi diffIndexLine guibg=NONE guifg=#bb9af7 +hi diffLine guibg=NONE guifg=#565f89 +hi diffNewFile guibg=NONE guifg=#ff9e64 +hi diffOldFile guibg=NONE guifg=#e0af68 +hi diffRemoved guibg=NONE guifg=#914c54 +hi healthError guibg=NONE guifg=#db4b4b +hi healthSuccess guibg=NONE guifg=#73daca +hi healthWarning guibg=NONE guifg=#e0af68 +hi helpCommand guibg=#414868 guifg=#7aa2f7 +hi htmlH1 gui=bold guibg=NONE guifg=#bb9af7 +hi htmlH2 gui=bold guibg=NONE guifg=#7aa2f7 +hi illuminatedCurWord guibg=#3b4261 +hi illuminatedWord guibg=#3b4261 +hi lCursor guibg=#c0caf5 guifg=#24283b +hi qfFileName guibg=NONE guifg=#7aa2f7 +hi qfLineNr guibg=NONE guifg=#737aa2 +hi! link CurSearch IncSearch +hi! link Delimiter Special +hi! link FzfLuaCursor IncSearch +hi! link FzfLuaFilePart FzfLuaFzfNormal +hi! link FzfLuaFzfCursorLine Visual +hi! link FzfLuaHeaderText Title +hi! link FzfLuaPath Directory +hi! link LspKindColor Special +hi! link LspKindEvent Special +hi! link LspKindFile Normal +hi! link LspKindFolder Directory +hi! link LspKindSnippet Conceal +hi! link MiniAnimateNormalFloat NormalFloat +hi! link MiniClueBorder FloatBorder +hi! link MiniClueDescSingle NormalFloat +hi! link MiniClueTitle FloatTitle +hi! link MiniDepsChangeAdded diffAdded +hi! link MiniDepsChangeRemoved diffRemoved +hi! link MiniDepsHint DiagnosticHint +hi! link MiniDepsInfo DiagnosticInfo +hi! link MiniDepsMsgBreaking DiagnosticWarn +hi! link MiniDepsPlaceholder Comment +hi! link MiniDepsTitle Title +hi! link MiniDepsTitleSame Comment +hi! link MiniDiffOverAdd DiffAdd +hi! link MiniDiffOverChange DiffText +hi! link MiniDiffOverContext DiffChange +hi! link MiniDiffOverDelete DiffDelete +hi! link MiniFilesBorder FloatBorder +hi! link MiniFilesCursorLine CursorLine +hi! link MiniFilesDirectory Directory +hi! link MiniFilesNormal NormalFloat +hi! link MiniFilesTitle FloatTitle +hi! link MiniJump2dDim Comment +hi! link MiniMapNormal NormalFloat +hi! link MiniMapSymbolCount Special +hi! link MiniMapSymbolLine Title +hi! link MiniNotifyBorder FloatBorder +hi! link MiniNotifyNormal NormalFloat +hi! link MiniNotifyTitle FloatTitle +hi! link MiniOperatorsExchangeFrom IncSearch +hi! link MiniPickBorder FloatBorder +hi! link MiniPickIconDirectory Directory +hi! link MiniPickMatchCurrent CursorLine +hi! link MiniPickMatchMarked Visual +hi! link MiniPickNormal NormalFloat +hi! link MiniPickPreviewLine CursorLine +hi! link MiniPickPreviewRegion IncSearch +hi! link WinBar StatusLine +hi! link WinBarNC StatusLineNC \ No newline at end of file diff --git a/extras/vim/colors/tokyonight.vim b/extras/vim/colors/tokyonight.vim new file mode 100644 index 00000000..0b242735 --- /dev/null +++ b/extras/vim/colors/tokyonight.vim @@ -0,0 +1 @@ +runtime colors/tokyonight-moon.vim diff --git a/extras/wezterm/tokyonight_day.toml b/extras/wezterm/tokyonight_day.toml index 1e38674d..0baf7a33 100644 --- a/extras/wezterm/tokyonight_day.toml +++ b/extras/wezterm/tokyonight_day.toml @@ -4,21 +4,21 @@ background = "#e1e2e7" cursor_bg = "#3760bf" cursor_border = "#3760bf" cursor_fg = "#e1e2e7" -selection_bg = "#b6bfe2" +selection_bg = "#b7c1e3" selection_fg = "#3760bf" split = "#2e7de9" compose_cursor = "#b15c00" scrollbar_thumb = "#c4c8da" -ansi = ["#e9e9ed", "#f52a65", "#587539", "#8c6c3e", "#2e7de9", "#9854f1", "#007197", "#6172b0"] +ansi = ["#b4b5b9", "#f52a65", "#587539", "#8c6c3e", "#2e7de9", "#9854f1", "#007197", "#6172b0"] brights = ["#a1a6c5", "#f52a65", "#587539", "#8c6c3e", "#2e7de9", "#9854f1", "#007197", "#3760bf"] [colors.tab_bar] -inactive_tab_edge = "#e9e9ec" +inactive_tab_edge = "#d0d5e3" background = "#e1e2e7" [colors.tab_bar.active_tab] -fg_color = "#e9e9ec" +fg_color = "#d0d5e3" bg_color = "#2e7de9" [colors.tab_bar.inactive_tab] diff --git a/extras/windows_terminal/tokyonight_day.json b/extras/windows_terminal/tokyonight_day.json index f96dbd58..7a6a4502 100644 --- a/extras/windows_terminal/tokyonight_day.json +++ b/extras/windows_terminal/tokyonight_day.json @@ -2,7 +2,7 @@ # https://learn.microsoft.com/en-us/windows/terminal/customize-settings/color-schemes#creating-your-own-color-scheme { "background": "#e1e2e7", - "black": "#e9e9ed", + "black": "#b4b5b9", "blue": "#2e7de9", "brightBlack": "#a1a6c5", "brightBlue": "#2e7de9", @@ -19,7 +19,7 @@ "name": "Tokyo Night Day", "purple": "#9854f1", "red": "#f52a65", - "selectionBackground": "#b6bfe2", + "selectionBackground": "#b7c1e3", "white": "#6172b0", "yellow": "#8c6c3e" } diff --git a/extras/xfceterm/tokyonight_day.theme b/extras/xfceterm/tokyonight_day.theme index bdffd057..1ff10e57 100644 --- a/extras/xfceterm/tokyonight_day.theme +++ b/extras/xfceterm/tokyonight_day.theme @@ -1,9 +1,9 @@ [Scheme] -Name=TokyoNight Colors +Name="tokyonight_day" ColorBackground=#e1e2e7 ColorForeground=#3760bf -ColorSelectionBackground=#b6bfe2 +ColorSelectionBackground=#b7c1e3 ColorSelection=#3760bf -ColorPalette=#e9e9ed;#f52a65;#587539;#8c6c3e;#2e7de9;#9854f1;#007197;#6172b0;#a1a6c5;#f52a65;#587539;#8c6c3e;#2e7de9;#9854f1;#007197;#3760bf +ColorPalette=#b4b5b9;#f52a65;#587539;#8c6c3e;#2e7de9;#9854f1;#007197;#6172b0;#a1a6c5;#f52a65;#587539;#8c6c3e;#2e7de9;#9854f1;#007197;#3760bf diff --git a/extras/xfceterm/tokyonight_moon.theme b/extras/xfceterm/tokyonight_moon.theme index 5830a8a5..c78dc96f 100644 --- a/extras/xfceterm/tokyonight_moon.theme +++ b/extras/xfceterm/tokyonight_moon.theme @@ -1,5 +1,5 @@ [Scheme] -Name=TokyoNight Colors +Name="tokyonight_moon" ColorBackground=#222436 ColorForeground=#c8d3f5 diff --git a/extras/xfceterm/tokyonight_night.theme b/extras/xfceterm/tokyonight_night.theme index b27a6a2f..dbc1109a 100644 --- a/extras/xfceterm/tokyonight_night.theme +++ b/extras/xfceterm/tokyonight_night.theme @@ -1,5 +1,5 @@ [Scheme] -Name=TokyoNight Colors +Name="tokyonight_night" ColorBackground=#1a1b26 ColorForeground=#c0caf5 diff --git a/extras/xfceterm/tokyonight_storm.theme b/extras/xfceterm/tokyonight_storm.theme index c7d12d36..06a4eabb 100644 --- a/extras/xfceterm/tokyonight_storm.theme +++ b/extras/xfceterm/tokyonight_storm.theme @@ -1,5 +1,5 @@ [Scheme] -Name=TokyoNight Colors +Name="tokyonight_storm" ColorBackground=#24283b ColorForeground=#c0caf5 diff --git a/extras/xresources/tokyonight_day.Xresources b/extras/xresources/tokyonight_day.Xresources index a3e15cd6..d07d4181 100644 --- a/extras/xresources/tokyonight_day.Xresources +++ b/extras/xresources/tokyonight_day.Xresources @@ -3,7 +3,7 @@ *background: #e1e2e7 *foreground: #3760bf -*color0: #e9e9ed +*color0: #b4b5b9 *color1: #f52a65 *color2: #587539 *color3: #8c6c3e diff --git a/extras/yazi/tokyonight_day.toml b/extras/yazi/tokyonight_day.toml new file mode 100644 index 00000000..26c783c5 --- /dev/null +++ b/extras/yazi/tokyonight_day.toml @@ -0,0 +1,129 @@ +[manager] +# NOTE: can combined with tmTheme (sublime colorshceme file) for preview code highlight +# highlight = "path/to/tmTheme" + +cwd = { fg = "#6172b0", italic = true } + +# Hovered +hovered = { bg = "#c4c8da" } +preview_hovered = { bg = "#c4c8da" } + +# Find +find_keyword = { fg = "#d0d5e3", bg = "#b15c00", bold = true } +find_position = { fg = "#07879d", bg = "#cbd9e0", bold = true } + +# Marker +marker_copied = { fg = "#387068", bg = "#387068" } +marker_cut = { fg = "#f52a65", bg = "#f52a65" } +marker_marked = { fg = "#9854f1", bg = "#9854f1" } +marker_selected = { fg = "#2e7de9", bg = "#2e7de9" } + +# Tab +tab_active = { fg = "#3760bf", bg = "#c4c8da" } +tab_inactive = { fg = "#a8aecb", bg = "#e1e2e7" } +tab_width = 1 + +# Count +count_copied = { fg = "#3760bf", bg = "#38919f" } +count_cut = { fg = "#3760bf", bg = "#c64343" } +count_selected = { fg = "#3760bf", bg = "#7890dd" } +# Border +border_symbol = "│" +border_style = { fg = "#4094a3" } + +[status] +separator_open = "" +separator_close = "" +separator_style = { fg = "#a8aecb", bg = "#a8aecb" } + +# Mode +mode_normal = { fg = "#d0d5e3", bg = "#2e7de9", bold = true } +mode_select = { fg = "#d0d5e3", bg = "#9854f1", bold = true } +mode_unset = { fg = "#d0d5e3", bg = "#7847bd", bold = true } + +# Progress +progress_label = { fg = "#6172b0", bold = true } +progress_normal = { fg = "#e1e2e7" } +progress_error = { fg = "#f52a65" } + +# Permissions +permissions_t = { fg = "#2e7de9" } +permissions_r = { fg = "#8c6c3e" } +permissions_w = { fg = "#f52a65" } +permissions_x = { fg = "#587539" } +permissions_s = { fg = "#a1a6c5" } + +[select] +border = { fg = "#4094a3" } +active = { fg = "#3760bf", bg = "#b7c1e3" } +inactive = { fg = "#3760bf" } + +# Input +[input] +border = { fg = "#07879d" } +title = {} +value = { fg = "#7847bd" } +selected = { bg = "#b7c1e3" } + +# Completion +[completion] +border = { fg = "#07879d" } +active = { fg = "#3760bf", bg = "#b7c1e3" } +inactive = { fg = "#3760bf" } + +# Tasks +[tasks] +border = { fg = "#4094a3" } +title = {} +hovered = { fg = "#3760bf", bg="#b7c1e3" } + +# Which +[which] +cols = 3 +mask = { bg = "#d0d5e3" } +cand = { fg = "#007197" } +rest = { fg = "#2e7de9" } +desc = { fg = "#9854f1" } +separator = "  " +separator_style = { fg = "#848cb5" } + +# Notify +[notify] +title_info = { fg = "#07879d" } +title_warn = { fg = "#8c6c3e" } +title_error = { fg = "#f52a65" } + +# Help +[help] +on = { fg = "#587539" } +run = { fg = "#9854f1" } +hovered = { bg = "#b7c1e3" } +footer = { fg = "#3760bf", bg = "#e1e2e7" } + +[filetype] + +rules = [ + # Images + { mime = "image/*", fg = "#8c6c3e" }, + + # Media + { mime = "{audio,video}/*", fg = "#9854f1" }, + + # Archives + { mime = "application/*zip", fg = "#f52a65" }, + { mime = "application/x-{tar,bzip*,7z-compressed,xz,rar}", fg = "#f52a65" }, + + # Documents + { mime = "application/{pdf,doc,rtf,vnd.*}", fg = "#007197" }, + + # Empty files + # { mime = "inode/x-empty", fg = "#f52a65" }, + + # Special files + { name = "*", is = "orphan", bg = "#f52a65" }, + { name = "*", is = "exec" , fg = "#587539" }, + + # Fallback + { name = "*/", fg = "#2e7de9" } +] + \ No newline at end of file diff --git a/extras/yazi/tokyonight_moon.toml b/extras/yazi/tokyonight_moon.toml new file mode 100644 index 00000000..bf7a5131 --- /dev/null +++ b/extras/yazi/tokyonight_moon.toml @@ -0,0 +1,129 @@ +[manager] +# NOTE: can combined with tmTheme (sublime colorshceme file) for preview code highlight +# highlight = "path/to/tmTheme" + +cwd = { fg = "#828bb8", italic = true } + +# Hovered +hovered = { bg = "#2f334d" } +preview_hovered = { bg = "#2f334d" } + +# Find +find_keyword = { fg = "#1e2030", bg = "#ff966c", bold = true } +find_position = { fg = "#0db9d7", bg = "#203346", bold = true } + +# Marker +marker_copied = { fg = "#4fd6be", bg = "#4fd6be" } +marker_cut = { fg = "#ff757f", bg = "#ff757f" } +marker_marked = { fg = "#c099ff", bg = "#c099ff" } +marker_selected = { fg = "#82aaff", bg = "#82aaff" } + +# Tab +tab_active = { fg = "#c8d3f5", bg = "#2f334d" } +tab_inactive = { fg = "#3b4261", bg = "#222436" } +tab_width = 1 + +# Count +count_copied = { fg = "#c8d3f5", bg = "#41a6b5" } +count_cut = { fg = "#c8d3f5", bg = "#c53b53" } +count_selected = { fg = "#c8d3f5", bg = "#3e68d7" } +# Border +border_symbol = "│" +border_style = { fg = "#589ed7" } + +[status] +separator_open = "" +separator_close = "" +separator_style = { fg = "#3b4261", bg = "#3b4261" } + +# Mode +mode_normal = { fg = "#1e2030", bg = "#82aaff", bold = true } +mode_select = { fg = "#1e2030", bg = "#c099ff", bold = true } +mode_unset = { fg = "#1e2030", bg = "#fca7ea", bold = true } + +# Progress +progress_label = { fg = "#828bb8", bold = true } +progress_normal = { fg = "#222436" } +progress_error = { fg = "#ff757f" } + +# Permissions +permissions_t = { fg = "#82aaff" } +permissions_r = { fg = "#ffc777" } +permissions_w = { fg = "#ff757f" } +permissions_x = { fg = "#c3e88d" } +permissions_s = { fg = "#444a73" } + +[select] +border = { fg = "#589ed7" } +active = { fg = "#c8d3f5", bg = "#2d3f76" } +inactive = { fg = "#c8d3f5" } + +# Input +[input] +border = { fg = "#0db9d7" } +title = {} +value = { fg = "#fca7ea" } +selected = { bg = "#2d3f76" } + +# Completion +[completion] +border = { fg = "#0db9d7" } +active = { fg = "#c8d3f5", bg = "#2d3f76" } +inactive = { fg = "#c8d3f5" } + +# Tasks +[tasks] +border = { fg = "#589ed7" } +title = {} +hovered = { fg = "#c8d3f5", bg="#2d3f76" } + +# Which +[which] +cols = 3 +mask = { bg = "#1e2030" } +cand = { fg = "#86e1fc" } +rest = { fg = "#82aaff" } +desc = { fg = "#c099ff" } +separator = "  " +separator_style = { fg = "#636da6" } + +# Notify +[notify] +title_info = { fg = "#0db9d7" } +title_warn = { fg = "#ffc777" } +title_error = { fg = "#ff757f" } + +# Help +[help] +on = { fg = "#c3e88d" } +run = { fg = "#c099ff" } +hovered = { bg = "#2d3f76" } +footer = { fg = "#c8d3f5", bg = "#222436" } + +[filetype] + +rules = [ + # Images + { mime = "image/*", fg = "#ffc777" }, + + # Media + { mime = "{audio,video}/*", fg = "#c099ff" }, + + # Archives + { mime = "application/*zip", fg = "#ff757f" }, + { mime = "application/x-{tar,bzip*,7z-compressed,xz,rar}", fg = "#ff757f" }, + + # Documents + { mime = "application/{pdf,doc,rtf,vnd.*}", fg = "#86e1fc" }, + + # Empty files + # { mime = "inode/x-empty", fg = "#ff757f" }, + + # Special files + { name = "*", is = "orphan", bg = "#ff757f" }, + { name = "*", is = "exec" , fg = "#c3e88d" }, + + # Fallback + { name = "*/", fg = "#82aaff" } +] + \ No newline at end of file diff --git a/extras/yazi/tokyonight_night.toml b/extras/yazi/tokyonight_night.toml new file mode 100644 index 00000000..5c715f63 --- /dev/null +++ b/extras/yazi/tokyonight_night.toml @@ -0,0 +1,129 @@ +[manager] +# NOTE: can combined with tmTheme (sublime colorshceme file) for preview code highlight +# highlight = "path/to/tmTheme" + +cwd = { fg = "#a9b1d6", italic = true } + +# Hovered +hovered = { bg = "#292e42" } +preview_hovered = { bg = "#292e42" } + +# Find +find_keyword = { fg = "#16161e", bg = "#ff9e64", bold = true } +find_position = { fg = "#0db9d7", bg = "#192b38", bold = true } + +# Marker +marker_copied = { fg = "#73daca", bg = "#73daca" } +marker_cut = { fg = "#f7768e", bg = "#f7768e" } +marker_marked = { fg = "#bb9af7", bg = "#bb9af7" } +marker_selected = { fg = "#7aa2f7", bg = "#7aa2f7" } + +# Tab +tab_active = { fg = "#c0caf5", bg = "#292e42" } +tab_inactive = { fg = "#3b4261", bg = "#1a1b26" } +tab_width = 1 + +# Count +count_copied = { fg = "#c0caf5", bg = "#41a6b5" } +count_cut = { fg = "#c0caf5", bg = "#db4b4b" } +count_selected = { fg = "#c0caf5", bg = "#3d59a1" } +# Border +border_symbol = "│" +border_style = { fg = "#27a1b9" } + +[status] +separator_open = "" +separator_close = "" +separator_style = { fg = "#3b4261", bg = "#3b4261" } + +# Mode +mode_normal = { fg = "#16161e", bg = "#7aa2f7", bold = true } +mode_select = { fg = "#16161e", bg = "#bb9af7", bold = true } +mode_unset = { fg = "#16161e", bg = "#9d7cd8", bold = true } + +# Progress +progress_label = { fg = "#a9b1d6", bold = true } +progress_normal = { fg = "#1a1b26" } +progress_error = { fg = "#f7768e" } + +# Permissions +permissions_t = { fg = "#7aa2f7" } +permissions_r = { fg = "#e0af68" } +permissions_w = { fg = "#f7768e" } +permissions_x = { fg = "#9ece6a" } +permissions_s = { fg = "#414868" } + +[select] +border = { fg = "#27a1b9" } +active = { fg = "#c0caf5", bg = "#283457" } +inactive = { fg = "#c0caf5" } + +# Input +[input] +border = { fg = "#0db9d7" } +title = {} +value = { fg = "#9d7cd8" } +selected = { bg = "#283457" } + +# Completion +[completion] +border = { fg = "#0db9d7" } +active = { fg = "#c0caf5", bg = "#283457" } +inactive = { fg = "#c0caf5" } + +# Tasks +[tasks] +border = { fg = "#27a1b9" } +title = {} +hovered = { fg = "#c0caf5", bg="#283457" } + +# Which +[which] +cols = 3 +mask = { bg = "#16161e" } +cand = { fg = "#7dcfff" } +rest = { fg = "#7aa2f7" } +desc = { fg = "#bb9af7" } +separator = "  " +separator_style = { fg = "#565f89" } + +# Notify +[notify] +title_info = { fg = "#0db9d7" } +title_warn = { fg = "#e0af68" } +title_error = { fg = "#f7768e" } + +# Help +[help] +on = { fg = "#9ece6a" } +run = { fg = "#bb9af7" } +hovered = { bg = "#283457" } +footer = { fg = "#c0caf5", bg = "#1a1b26" } + +[filetype] + +rules = [ + # Images + { mime = "image/*", fg = "#e0af68" }, + + # Media + { mime = "{audio,video}/*", fg = "#bb9af7" }, + + # Archives + { mime = "application/*zip", fg = "#f7768e" }, + { mime = "application/x-{tar,bzip*,7z-compressed,xz,rar}", fg = "#f7768e" }, + + # Documents + { mime = "application/{pdf,doc,rtf,vnd.*}", fg = "#7dcfff" }, + + # Empty files + # { mime = "inode/x-empty", fg = "#f7768e" }, + + # Special files + { name = "*", is = "orphan", bg = "#f7768e" }, + { name = "*", is = "exec" , fg = "#9ece6a" }, + + # Fallback + { name = "*/", fg = "#7aa2f7" } +] + \ No newline at end of file diff --git a/extras/yazi/tokyonight_storm.toml b/extras/yazi/tokyonight_storm.toml new file mode 100644 index 00000000..0b48d76b --- /dev/null +++ b/extras/yazi/tokyonight_storm.toml @@ -0,0 +1,129 @@ +[manager] +# NOTE: can combined with tmTheme (sublime colorshceme file) for preview code highlight +# highlight = "path/to/tmTheme" + +cwd = { fg = "#a9b1d6", italic = true } + +# Hovered +hovered = { bg = "#292e42" } +preview_hovered = { bg = "#292e42" } + +# Find +find_keyword = { fg = "#1f2335", bg = "#ff9e64", bold = true } +find_position = { fg = "#0db9d7", bg = "#22374b", bold = true } + +# Marker +marker_copied = { fg = "#73daca", bg = "#73daca" } +marker_cut = { fg = "#f7768e", bg = "#f7768e" } +marker_marked = { fg = "#bb9af7", bg = "#bb9af7" } +marker_selected = { fg = "#7aa2f7", bg = "#7aa2f7" } + +# Tab +tab_active = { fg = "#c0caf5", bg = "#292e42" } +tab_inactive = { fg = "#3b4261", bg = "#24283b" } +tab_width = 1 + +# Count +count_copied = { fg = "#c0caf5", bg = "#41a6b5" } +count_cut = { fg = "#c0caf5", bg = "#db4b4b" } +count_selected = { fg = "#c0caf5", bg = "#3d59a1" } +# Border +border_symbol = "│" +border_style = { fg = "#29a4bd" } + +[status] +separator_open = "" +separator_close = "" +separator_style = { fg = "#3b4261", bg = "#3b4261" } + +# Mode +mode_normal = { fg = "#1f2335", bg = "#7aa2f7", bold = true } +mode_select = { fg = "#1f2335", bg = "#bb9af7", bold = true } +mode_unset = { fg = "#1f2335", bg = "#9d7cd8", bold = true } + +# Progress +progress_label = { fg = "#a9b1d6", bold = true } +progress_normal = { fg = "#24283b" } +progress_error = { fg = "#f7768e" } + +# Permissions +permissions_t = { fg = "#7aa2f7" } +permissions_r = { fg = "#e0af68" } +permissions_w = { fg = "#f7768e" } +permissions_x = { fg = "#9ece6a" } +permissions_s = { fg = "#414868" } + +[select] +border = { fg = "#29a4bd" } +active = { fg = "#c0caf5", bg = "#2e3c64" } +inactive = { fg = "#c0caf5" } + +# Input +[input] +border = { fg = "#0db9d7" } +title = {} +value = { fg = "#9d7cd8" } +selected = { bg = "#2e3c64" } + +# Completion +[completion] +border = { fg = "#0db9d7" } +active = { fg = "#c0caf5", bg = "#2e3c64" } +inactive = { fg = "#c0caf5" } + +# Tasks +[tasks] +border = { fg = "#29a4bd" } +title = {} +hovered = { fg = "#c0caf5", bg="#2e3c64" } + +# Which +[which] +cols = 3 +mask = { bg = "#1f2335" } +cand = { fg = "#7dcfff" } +rest = { fg = "#7aa2f7" } +desc = { fg = "#bb9af7" } +separator = "  " +separator_style = { fg = "#565f89" } + +# Notify +[notify] +title_info = { fg = "#0db9d7" } +title_warn = { fg = "#e0af68" } +title_error = { fg = "#f7768e" } + +# Help +[help] +on = { fg = "#9ece6a" } +run = { fg = "#bb9af7" } +hovered = { bg = "#2e3c64" } +footer = { fg = "#c0caf5", bg = "#24283b" } + +[filetype] + +rules = [ + # Images + { mime = "image/*", fg = "#e0af68" }, + + # Media + { mime = "{audio,video}/*", fg = "#bb9af7" }, + + # Archives + { mime = "application/*zip", fg = "#f7768e" }, + { mime = "application/x-{tar,bzip*,7z-compressed,xz,rar}", fg = "#f7768e" }, + + # Documents + { mime = "application/{pdf,doc,rtf,vnd.*}", fg = "#7dcfff" }, + + # Empty files + # { mime = "inode/x-empty", fg = "#f7768e" }, + + # Special files + { name = "*", is = "orphan", bg = "#f7768e" }, + { name = "*", is = "exec" , fg = "#9ece6a" }, + + # Fallback + { name = "*/", fg = "#7aa2f7" } +] + \ No newline at end of file diff --git a/extras/zellij/tokyonight_day.kdl b/extras/zellij/tokyonight_day.kdl new file mode 100644 index 00000000..c3909e24 --- /dev/null +++ b/extras/zellij/tokyonight_day.kdl @@ -0,0 +1,20 @@ +// Tokyonight Zellij Colors +// Add this file to your `CONFIG_DIR/themes` directory as described here: +// https://zellij.dev/documentation/themes#getting-zellij-to-pick-up-the-theme + +themes { + tokyonight_day { + fg "#3760bf" + bg "#c4c8da" + black "#b4b5b9" + red "#f52a65" + green "#587539" + yellow "#8c6c3e" + blue "#2e7de9" + magenta "#9854f1" + cyan "#007197" + white "#6172b0" + orange "#b15c00" + } +} + diff --git a/extras/zellij/tokyonight_moon.kdl b/extras/zellij/tokyonight_moon.kdl new file mode 100644 index 00000000..a78b20d3 --- /dev/null +++ b/extras/zellij/tokyonight_moon.kdl @@ -0,0 +1,20 @@ +// Tokyonight Zellij Colors +// Add this file to your `CONFIG_DIR/themes` directory as described here: +// https://zellij.dev/documentation/themes#getting-zellij-to-pick-up-the-theme + +themes { + tokyonight_moon { + fg "#c8d3f5" + bg "#2f334d" + black "#1b1d2b" + red "#ff757f" + green "#c3e88d" + yellow "#ffc777" + blue "#82aaff" + magenta "#c099ff" + cyan "#86e1fc" + white "#828bb8" + orange "#ff966c" + } +} + diff --git a/extras/zellij/tokyonight_night.kdl b/extras/zellij/tokyonight_night.kdl new file mode 100644 index 00000000..5b8ceeb7 --- /dev/null +++ b/extras/zellij/tokyonight_night.kdl @@ -0,0 +1,20 @@ +// Tokyonight Zellij Colors +// Add this file to your `CONFIG_DIR/themes` directory as described here: +// https://zellij.dev/documentation/themes#getting-zellij-to-pick-up-the-theme + +themes { + tokyonight_night { + fg "#c0caf5" + bg "#292e42" + black "#15161e" + red "#f7768e" + green "#9ece6a" + yellow "#e0af68" + blue "#7aa2f7" + magenta "#bb9af7" + cyan "#7dcfff" + white "#a9b1d6" + orange "#ff9e64" + } +} + diff --git a/extras/zellij/tokyonight_storm.kdl b/extras/zellij/tokyonight_storm.kdl new file mode 100644 index 00000000..eb1afddf --- /dev/null +++ b/extras/zellij/tokyonight_storm.kdl @@ -0,0 +1,20 @@ +// Tokyonight Zellij Colors +// Add this file to your `CONFIG_DIR/themes` directory as described here: +// https://zellij.dev/documentation/themes#getting-zellij-to-pick-up-the-theme + +themes { + tokyonight_storm { + fg "#c0caf5" + bg "#292e42" + black "#1d202f" + red "#f7768e" + green "#9ece6a" + yellow "#e0af68" + blue "#7aa2f7" + magenta "#bb9af7" + cyan "#7dcfff" + white "#a9b1d6" + orange "#ff9e64" + } +} + diff --git a/lua/barbecue/theme/tokyonight.lua b/lua/barbecue/theme/tokyonight.lua index d86ecfbd..a721c669 100644 --- a/lua/barbecue/theme/tokyonight.lua +++ b/lua/barbecue/theme/tokyonight.lua @@ -1,4 +1,4 @@ -local c = require("tokyonight.colors").setup({ transform = true }) +local c = require("tokyonight.colors").setup() local M = { normal = { bg = c.none, fg = c.fg_dark }, diff --git a/lua/lightline/colorscheme/tokyonight.lua b/lua/lightline/colorscheme/tokyonight.lua index dba1c42f..19b55d48 100644 --- a/lua/lightline/colorscheme/tokyonight.lua +++ b/lua/lightline/colorscheme/tokyonight.lua @@ -1,4 +1,4 @@ -local colors = require("tokyonight.colors").setup({ transform = true }) +local colors = require("tokyonight.colors").setup() local tokyonight = {} diff --git a/lua/lualine/themes/_tokyonight.lua b/lua/lualine/themes/_tokyonight.lua new file mode 100644 index 00000000..2d25fa04 --- /dev/null +++ b/lua/lualine/themes/_tokyonight.lua @@ -0,0 +1,56 @@ +local M = {} + +---@param style? string +function M.get(style) + local colors, config = require("tokyonight.colors").setup({ + style = style, + }) + + local hl = {} + + hl.normal = { + a = { bg = colors.blue, fg = colors.black }, + b = { bg = colors.fg_gutter, fg = colors.blue }, + c = { bg = colors.bg_statusline, fg = colors.fg_sidebar }, + } + + hl.insert = { + a = { bg = colors.green, fg = colors.black }, + b = { bg = colors.fg_gutter, fg = colors.green }, + } + + hl.command = { + a = { bg = colors.yellow, fg = colors.black }, + b = { bg = colors.fg_gutter, fg = colors.yellow }, + } + + hl.visual = { + a = { bg = colors.magenta, fg = colors.black }, + b = { bg = colors.fg_gutter, fg = colors.magenta }, + } + + hl.replace = { + a = { bg = colors.red, fg = colors.black }, + b = { bg = colors.fg_gutter, fg = colors.red }, + } + + hl.terminal = { + a = { bg = colors.green1, fg = colors.black }, + b = { bg = colors.fg_gutter, fg = colors.green1 }, + } + + hl.inactive = { + a = { bg = colors.bg_statusline, fg = colors.blue }, + b = { bg = colors.bg_statusline, fg = colors.fg_gutter, gui = "bold" }, + c = { bg = colors.bg_statusline, fg = colors.fg_gutter }, + } + + if config.lualine_bold then + for _, mode in pairs(hl) do + mode.a.gui = "bold" + end + end + return hl +end + +return M diff --git a/lua/lualine/themes/tokyonight-day.lua b/lua/lualine/themes/tokyonight-day.lua new file mode 100644 index 00000000..eaf36e69 --- /dev/null +++ b/lua/lualine/themes/tokyonight-day.lua @@ -0,0 +1 @@ +return require("lualine.themes._tokyonight").get("day") diff --git a/lua/lualine/themes/tokyonight-moon.lua b/lua/lualine/themes/tokyonight-moon.lua new file mode 100644 index 00000000..f07294bc --- /dev/null +++ b/lua/lualine/themes/tokyonight-moon.lua @@ -0,0 +1 @@ +return require("lualine.themes._tokyonight").get("moon") diff --git a/lua/lualine/themes/tokyonight-night.lua b/lua/lualine/themes/tokyonight-night.lua new file mode 100644 index 00000000..2207e8fa --- /dev/null +++ b/lua/lualine/themes/tokyonight-night.lua @@ -0,0 +1 @@ +return require("lualine.themes._tokyonight").get("night") diff --git a/lua/lualine/themes/tokyonight-storm.lua b/lua/lualine/themes/tokyonight-storm.lua new file mode 100644 index 00000000..86359ddc --- /dev/null +++ b/lua/lualine/themes/tokyonight-storm.lua @@ -0,0 +1 @@ +return require("lualine.themes._tokyonight").get("storm") diff --git a/lua/lualine/themes/tokyonight.lua b/lua/lualine/themes/tokyonight.lua index b423d824..279fe762 100644 --- a/lua/lualine/themes/tokyonight.lua +++ b/lua/lualine/themes/tokyonight.lua @@ -1,49 +1 @@ -local colors = require("tokyonight.colors").setup({ transform = true }) -local config = require("tokyonight.config").options - -local tokyonight = {} - -tokyonight.normal = { - a = { bg = colors.blue, fg = colors.black }, - b = { bg = colors.fg_gutter, fg = colors.blue }, - c = { bg = colors.bg_statusline, fg = colors.fg_sidebar }, -} - -tokyonight.insert = { - a = { bg = colors.green, fg = colors.black }, - b = { bg = colors.fg_gutter, fg = colors.green }, -} - -tokyonight.command = { - a = { bg = colors.yellow, fg = colors.black }, - b = { bg = colors.fg_gutter, fg = colors.yellow }, -} - -tokyonight.visual = { - a = { bg = colors.magenta, fg = colors.black }, - b = { bg = colors.fg_gutter, fg = colors.magenta }, -} - -tokyonight.replace = { - a = { bg = colors.red, fg = colors.black }, - b = { bg = colors.fg_gutter, fg = colors.red }, -} - -tokyonight.terminal = { - a = {bg = colors.green1, fg = colors.black }, - b = {bg = colors.fg_gutter, fg=colors.green1 }, -} - -tokyonight.inactive = { - a = { bg = colors.bg_statusline, fg = colors.blue }, - b = { bg = colors.bg_statusline, fg = colors.fg_gutter, gui = "bold" }, - c = { bg = colors.bg_statusline, fg = colors.fg_gutter }, -} - -if config.lualine_bold then - for _, mode in pairs(tokyonight) do - mode.a.gui = "bold" - end -end - -return tokyonight +return require("lualine.themes._tokyonight").get() diff --git a/lua/tokyonight/colors.lua b/lua/tokyonight/colors.lua deleted file mode 100644 index 840afbe9..00000000 --- a/lua/tokyonight/colors.lua +++ /dev/null @@ -1,166 +0,0 @@ -local util = require("tokyonight.util") - -local M = {} - ----@class Palette -M.default = { - none = "NONE", - bg_dark = "#1f2335", - bg = "#24283b", - bg_highlight = "#292e42", - terminal_black = "#414868", - fg = "#c0caf5", - fg_dark = "#a9b1d6", - fg_gutter = "#3b4261", - dark3 = "#545c7e", - comment = "#565f89", - dark5 = "#737aa2", - blue0 = "#3d59a1", - blue = "#7aa2f7", - cyan = "#7dcfff", - blue1 = "#2ac3de", - blue2 = "#0db9d7", - blue5 = "#89ddff", - blue6 = "#b4f9f8", - blue7 = "#394b70", - magenta = "#bb9af7", - magenta2 = "#ff007c", - purple = "#9d7cd8", - orange = "#ff9e64", - yellow = "#e0af68", - green = "#9ece6a", - green1 = "#73daca", - green2 = "#41a6b5", - teal = "#1abc9c", - red = "#f7768e", - red1 = "#db4b4b", - git = { change = "#6183bb", add = "#449dab", delete = "#914c54" }, - gitSigns = { - add = "#266d6a", - change = "#536c9e", - delete = "#b2555b", - }, -} - -M.night = { - bg = "#1a1b26", - bg_dark = "#16161e", -} -M.day = M.night - -M.moon = function() - local ret = { - none = "NONE", - bg_dark = "#1e2030", -- - bg = "#222436", -- - bg_highlight = "#2f334d", -- - terminal_black = "#444a73", -- - fg = "#c8d3f5", -- - fg_dark = "#828bb8", -- - fg_gutter = "#3b4261", - dark3 = "#545c7e", - comment = "#7a88cf", -- - dark5 = "#737aa2", - blue0 = "#3e68d7", -- - blue = "#82aaff", -- - cyan = "#86e1fc", -- - blue1 = "#65bcff", -- - blue2 = "#0db9d7", - blue5 = "#89ddff", - blue6 = "#b4f9f8", -- - blue7 = "#394b70", - purple = "#fca7ea", -- - magenta2 = "#ff007c", - magenta = "#c099ff", -- - orange = "#ff966c", -- - yellow = "#ffc777", -- - green = "#c3e88d", -- - green1 = "#4fd6be", -- - green2 = "#41a6b5", - teal = "#4fd6be", -- - red = "#ff757f", -- - red1 = "#c53b53", -- - } - ret.comment = util.blend(ret.comment, ret.bg, "bb") - ret.git = { - change = util.blend(ret.blue, ret.bg, "ee"), - add = util.blend(ret.green, ret.bg, "ee"), - delete = util.blend(ret.red, ret.bg, "dd"), - } - ret.gitSigns = { - change = util.blend(ret.blue, ret.bg, "66"), - add = util.blend(ret.green, ret.bg, "66"), - delete = util.blend(ret.red, ret.bg, "aa"), - } - return ret -end - ----@return ColorScheme -function M.setup(opts) - opts = opts or {} - local config = require("tokyonight.config") - - local style = config.is_day() and config.options.light_style or config.options.style - local palette = M[style] or {} - if type(palette) == "function" then - palette = palette() - end - - -- Color Palette - ---@class ColorScheme: Palette - local colors = vim.tbl_deep_extend("force", vim.deepcopy(M.default), palette) - - util.bg = colors.bg - util.day_brightness = config.options.day_brightness - - colors.diff = { - add = util.darken(colors.green2, 0.15), - delete = util.darken(colors.red1, 0.15), - change = util.darken(colors.blue7, 0.15), - text = colors.blue7, - } - - colors.git.ignore = colors.dark3 - colors.black = util.darken(colors.bg, 0.8, "#000000") - colors.border_highlight = util.darken(colors.blue1, 0.8) - colors.border = colors.black - - -- Popups and statusline always get a dark background - colors.bg_popup = colors.bg_dark - colors.bg_statusline = colors.bg_dark - - -- Sidebar and Floats are configurable - colors.bg_sidebar = config.options.styles.sidebars == "transparent" and colors.none - or config.options.styles.sidebars == "dark" and colors.bg_dark - or colors.bg - - colors.bg_float = config.options.styles.floats == "transparent" and colors.none - or config.options.styles.floats == "dark" and colors.bg_dark - or colors.bg - - colors.bg_visual = util.darken(colors.blue0, 0.4) - colors.bg_search = colors.blue0 - colors.fg_sidebar = colors.fg_dark - -- colors.fg_float = config.options.styles.floats == "dark" and colors.fg_dark or colors.fg - colors.fg_float = colors.fg - - colors.error = colors.red1 - colors.todo = colors.blue - colors.warning = colors.yellow - colors.info = colors.blue2 - colors.hint = colors.teal - - colors.delta = { - add = util.darken(colors.green2, 0.45), - delete = util.darken(colors.red1, 0.45), - } - - config.options.on_colors(colors) - if opts.transform and config.is_day() then - util.invert_colors(colors) - end - - return colors -end - -return M diff --git a/lua/tokyonight/colors/day.lua b/lua/tokyonight/colors/day.lua new file mode 100644 index 00000000..3930f115 --- /dev/null +++ b/lua/tokyonight/colors/day.lua @@ -0,0 +1,16 @@ +---@param opts tokyonight.Config +return function(opts) + local style = opts.light_style or "night" + style = style == "day" and "night" or style + + local Util = require("tokyonight.util") + + ---@type Palette + local colors = vim.deepcopy(Util.mod("tokyonight.colors." .. style)) + + ---@type Palette + + Util.invert(colors) + colors.bg_dark = Util.blend(colors.bg, 0.9, colors.fg) + return colors +end diff --git a/lua/tokyonight/colors/init.lua b/lua/tokyonight/colors/init.lua new file mode 100644 index 00000000..7dcb4705 --- /dev/null +++ b/lua/tokyonight/colors/init.lua @@ -0,0 +1,69 @@ +local Util = require("tokyonight.util") + +local M = {} + +---@param opts? tokyonight.Config +function M.setup(opts) + opts = require("tokyonight.config").extend(opts) + + Util.day_brightness = opts.day_brightness + + ---@type Palette + local palette = vim.deepcopy(Util.mod("tokyonight.colors." .. opts.style)) + if type(palette) == "function" then + palette = palette(opts) --[[@as Palette]] + end + + -- Color Palette + ---@class ColorScheme: Palette + local colors = palette + + Util.bg = colors.bg + Util.fg = colors.fg + + colors.none = "NONE" + + colors.diff = { + add = Util.blend_bg(colors.green2, 0.15), + delete = Util.blend_bg(colors.red1, 0.15), + change = Util.blend_bg(colors.blue7, 0.15), + text = colors.blue7, + } + + colors.git.ignore = colors.dark3 + colors.black = Util.blend_bg(colors.bg, 0.8, "#000000") + colors.border_highlight = Util.blend_bg(colors.blue1, 0.8) + colors.border = colors.black + + -- Popups and statusline always get a dark background + colors.bg_popup = colors.bg_dark + colors.bg_statusline = colors.bg_dark + + -- Sidebar and Floats are configurable + colors.bg_sidebar = opts.styles.sidebars == "transparent" and colors.none + or opts.styles.sidebars == "dark" and colors.bg_dark + or colors.bg + + colors.bg_float = opts.styles.floats == "transparent" and colors.none + or opts.styles.floats == "dark" and colors.bg_dark + or colors.bg + + colors.bg_visual = Util.blend_bg(colors.blue0, 0.4) + colors.bg_search = colors.blue0 + colors.fg_sidebar = colors.fg_dark + colors.fg_float = colors.fg + + colors.error = colors.red1 + colors.todo = colors.blue + colors.warning = colors.yellow + colors.info = colors.blue2 + colors.hint = colors.teal + + colors.rainbow = { colors.blue, colors.yellow, colors.green, colors.teal, colors.magenta, colors.purple } + + opts.on_colors(colors) + + return colors, opts +end + +return M diff --git a/lua/tokyonight/colors/moon.lua b/lua/tokyonight/colors/moon.lua new file mode 100644 index 00000000..52fa28fd --- /dev/null +++ b/lua/tokyonight/colors/moon.lua @@ -0,0 +1,37 @@ +---@type Palette +return { + bg = "#222436", + bg_dark = "#1e2030", + bg_highlight = "#2f334d", + blue = "#82aaff", + blue0 = "#3e68d7", + blue1 = "#65bcff", + blue2 = "#0db9d7", + blue5 = "#89ddff", + blue6 = "#b4f9f8", + blue7 = "#394b70", + comment = "#636da6", + cyan = "#86e1fc", + dark3 = "#545c7e", + dark5 = "#737aa2", + fg = "#c8d3f5", + fg_dark = "#828bb8", + fg_gutter = "#3b4261", + green = "#c3e88d", + green1 = "#4fd6be", + green2 = "#41a6b5", + magenta = "#c099ff", + magenta2 = "#ff007c", + orange = "#ff966c", + purple = "#fca7ea", + red = "#ff757f", + red1 = "#c53b53", + teal = "#4fd6be", + terminal_black = "#444a73", + yellow = "#ffc777", + git = { + add = "#b8db87", + change = "#7ca1f2", + delete = "#e26a75", + }, +} diff --git a/lua/tokyonight/colors/night.lua b/lua/tokyonight/colors/night.lua new file mode 100644 index 00000000..8b246262 --- /dev/null +++ b/lua/tokyonight/colors/night.lua @@ -0,0 +1,7 @@ +local ret = vim.deepcopy(require("tokyonight.colors.storm")) + +---@type Palette +return vim.tbl_deep_extend("force", ret, { + bg = "#1a1b26", + bg_dark = "#16161e", +}) diff --git a/lua/tokyonight/colors/storm.lua b/lua/tokyonight/colors/storm.lua new file mode 100644 index 00000000..b5853857 --- /dev/null +++ b/lua/tokyonight/colors/storm.lua @@ -0,0 +1,38 @@ +---@class Palette +local ret = { + bg = "#24283b", + bg_dark = "#1f2335", + bg_highlight = "#292e42", + blue = "#7aa2f7", + blue0 = "#3d59a1", + blue1 = "#2ac3de", + blue2 = "#0db9d7", + blue5 = "#89ddff", + blue6 = "#b4f9f8", + blue7 = "#394b70", + comment = "#565f89", + cyan = "#7dcfff", + dark3 = "#545c7e", + dark5 = "#737aa2", + fg = "#c0caf5", + fg_dark = "#a9b1d6", + fg_gutter = "#3b4261", + green = "#9ece6a", + green1 = "#73daca", + green2 = "#41a6b5", + magenta = "#bb9af7", + magenta2 = "#ff007c", + orange = "#ff9e64", + purple = "#9d7cd8", + red = "#f7768e", + red1 = "#db4b4b", + teal = "#1abc9c", + terminal_black = "#414868", + yellow = "#e0af68", + git = { + add = "#449dab", + change = "#6183bb", + delete = "#914c54", + }, +} +return ret diff --git a/lua/tokyonight/config.lua b/lua/tokyonight/config.lua index 6186276a..2e89df98 100644 --- a/lua/tokyonight/config.lua +++ b/lua/tokyonight/config.lua @@ -1,10 +1,12 @@ local M = {} ----@class Config +M.version = "4.2.0" -- x-release-please-version + +---@class tokyonight.Config ---@field on_colors fun(colors: ColorScheme) ----@field on_highlights fun(highlights: Highlights, colors: ColorScheme) -local defaults = { - style = "storm", -- The theme comes in three styles, `storm`, a darker variant `night` and `day` +---@field on_highlights fun(highlights: tokyonight.Highlights, colors: ColorScheme) +M.defaults = { + style = "moon", -- The theme comes in three styles, `storm`, a darker variant `night` and `day` light_style = "day", -- The theme is used when the background is set to light transparent = false, -- Enable this to disable setting the background color terminal_colors = true, -- Configure the colors used when opening a `:terminal` in Neovim @@ -19,9 +21,7 @@ local defaults = { sidebars = "dark", -- style for sidebars, see below floats = "dark", -- style for floating windows }, - sidebars = { "qf", "help" }, -- Set a darker background on sidebar-like windows. For example: `["qf", "vista_kind", "terminal", "packer"]` day_brightness = 0.3, -- Adjusts the brightness of the colors of the **Day** style. Number between 0 and 1, from dull to vibrant colors - hide_inactive_statusline = false, -- Enabling this option, will hide inactive statuslines and replace them with a thin border instead. Should work with the standard **StatusLine** and **LuaLine**. dim_inactive = false, -- dims inactive windows lualine_bold = false, -- When `true`, section headers in the lualine theme will be bold @@ -32,29 +32,46 @@ local defaults = { --- You can override specific highlights to use other groups or a hex color --- function will be called with a Highlights and ColorScheme table - ---@param highlights Highlights + ---@param highlights tokyonight.Highlights ---@param colors ColorScheme on_highlights = function(highlights, colors) end, - use_background = true, -- can be light/dark/auto. When auto, background will be set to vim.o.background + + cache = true, -- When set to true, the theme will be cached for better performance + + ---@type table + plugins = { + -- enable all plugins when not using lazy.nvim + -- set to false to manually enable/disable plugins + all = package.loaded.lazy == nil, + -- uses your plugin manager to automatically enable needed plugins + -- currently only lazy.nvim is supported + auto = true, + -- add any plugins here that you want to enable + -- for all possible plugins, see: + -- * https://github.com/folke/tokyonight.nvim/tree/main/lua/tokyonight/groups + -- telescope = true, + }, } ----@type Config -M.options = {} +---@type tokyonight.Config +M.options = nil ----@param options Config|nil +---@param options? tokyonight.Config function M.setup(options) - M.options = vim.tbl_deep_extend("force", {}, defaults, options or {}) -end - ----@param options Config|nil -function M.extend(options) - M.options = vim.tbl_deep_extend("force", {}, M.options or defaults, options or {}) + M.options = vim.tbl_deep_extend("force", {}, M.defaults, options or {}) end -function M.is_day() - return M.options.style == "day" or M.options.use_background and vim.o.background == "light" +---@param opts? tokyonight.Config +function M.extend(opts) + return opts and vim.tbl_deep_extend("force", {}, M.options, opts) or M.options end -M.setup() +setmetatable(M, { + __index = function(_, k) + if k == "options" then + return M.defaults + end + end, +}) return M diff --git a/lua/tokyonight/docs.lua b/lua/tokyonight/docs.lua new file mode 100644 index 00000000..f6a3e620 --- /dev/null +++ b/lua/tokyonight/docs.lua @@ -0,0 +1,70 @@ +local Docs = require("lazy.docs") +local Groups = require("tokyonight.groups") + +local M = {} + +local function link(name, url) + return "[" .. name .. "](" .. url .. ")" +end + +function M.row(t) + return "| " .. table.concat(t, " | ") .. " |" +end + +---@param t string[][] +function M.table(t) + local header = table.remove(t, 1) + local lines = {} ---@type string[] + lines[#lines + 1] = M.row(header) + lines[#lines + 1] = M.row({ "---", "---" }) + for _, row in ipairs(t) do + lines[#lines + 1] = M.row(row) + end + return table.concat(lines, "\n") +end + +function M.extras() + local Extra = require("tokyonight.extra") + local names = vim.tbl_keys(Extra.extras) ---@type string[] + table.sort(names) + local t = { + { "Tool", "Extra" }, + } + for _, name in ipairs(names) do + local info = Extra.extras[name] + t[#t + 1] = { link(info.label, info.url), link("extras/" .. name, "extras/" .. name) } + end + return M.table(t) +end + +function M.plugins() + local t = { + { "Plugin", "Source" }, + } + local names = vim.tbl_values(Groups.plugins) ---@type string[] + table.sort(names) + for _, name in ipairs(names) do + local group = Groups.get_group(name) + local repo = group.url:match("[^/]*$") + t[#t + 1] = { + link(repo, group.url), + link(("`%s`"):format(name), "lua/tokyonight/groups/" .. name .. ".lua"), + } + end + return M.table(t) +end + +function M.update() + local config = Docs.extract("lua/tokyonight/config.lua", "\n(--@class tokyonight%.Config.-\n})") + config = config:gsub("%s*debug = false.\n", "\n") + Docs.save({ + config = config, + extras = { content = M.extras() }, + plugins = { content = M.plugins() }, + }) +end + +M.update() +print("Docs updated") + +return M diff --git a/lua/tokyonight/extra/delta.lua b/lua/tokyonight/extra/delta.lua index ede45893..9100770e 100644 --- a/lua/tokyonight/extra/delta.lua +++ b/lua/tokyonight/extra/delta.lua @@ -4,6 +4,10 @@ local M = {} --- @param colors ColorScheme function M.generate(colors) + colors.delta = { + add = util.blend_bg(colors.green2, 0.45), + delete = util.blend_bg(colors.red1, 0.45), + } local delta = util.template( [[ [delta] @@ -11,12 +15,12 @@ function M.generate(colors) minus-non-emph-style = syntax "${diff.delete}" minus-emph-style = syntax "${delta.delete}" minus-empty-line-marker-style = syntax "${diff.delete}" - line-numbers-minus-style = "${gitSigns.delete}" + line-numbers-minus-style = "${git.delete}" plus-style = syntax "${diff.add}" plus-non-emph-style = syntax "${diff.add}" plus-emph-style = syntax "${delta.add}" plus-empty-line-marker-style = syntax "${diff.add}" - line-numbers-plus-style = "${gitSigns.add}" + line-numbers-plus-style = "${git.add}" line-numbers-zero-style = "${fg_gutter}" ]], colors diff --git a/lua/tokyonight/extra/dunst.lua b/lua/tokyonight/extra/dunst.lua index 99dc9672..c1deffea 100644 --- a/lua/tokyonight/extra/dunst.lua +++ b/lua/tokyonight/extra/dunst.lua @@ -7,7 +7,7 @@ function M.generate(colors) local dunst = util.template( [[ # TokyoNight colors for dunst -# For more configuraion options see https://github.com/dunst-project/dunst/blob/master/dunstrc +# For more configuration options see https://github.com/dunst-project/dunst/blob/master/dunstrc [urgency_low] background = "${bg_dark}" diff --git a/lua/tokyonight/extra/fzf.lua b/lua/tokyonight/extra/fzf.lua index 429451d1..565791c5 100644 --- a/lua/tokyonight/extra/fzf.lua +++ b/lua/tokyonight/extra/fzf.lua @@ -4,15 +4,77 @@ local M = {} --- @param colors ColorScheme function M.generate(colors) - return util.template(M.template, colors) + local links = { + FzfLuaFzfCursorLine = "CursorLine", + FzfLuaFzfMatch = "Special", + FzfLuaFzfBorder = "FzfLuaBorder", + FzfLuaFzfScrollbar = "FzfLuaBorder", + FzfLuaFzfSeparator = "FzfLuaBorder", + FzfLuaFzfGutter = "FzfLuaNormal", + FzfLuaFzfHeader = "FzfLuaTitle", + FzfLuaFzfInfo = "NonText", + FzfLuaFzfPointer = "Special", + FzfLuaFzfMarker = "FzfLuaFzfPointer", + FzfLuaFzfSpinner = "FzfLuaFzfPointer", + FzfLuaFzfPrompt = "Special", + FzfLuaFzfQuery = "FzfLuaNormal", + } + + local spec = { + ["fg"] = { "fg", "FzfLuaNormal" }, + ["bg"] = { "bg", "FzfLuaNormal" }, + ["hl"] = { "fg", "FzfLuaFzfMatch" }, + -- ["fg+"] = { "fg", "FzfLuaFzfCursorLine" }, + ["bg+"] = { "bg", "FzfLuaFzfCursorLine" }, + ["hl+"] = { "fg", "FzfLuaFzfMatch" }, + ["info"] = { "fg", "FzfLuaFzfInfo" }, + ["border"] = { "fg", "FzfLuaFzfBorder" }, + ["separator"] = { "fg", "FzfLuaFzfSeparator" }, + ["scrollbar"] = { "fg", "FzfLuaFzfScrollbar" }, + ["gutter"] = { "bg", "FzfLuaFzfGutter" }, + ["query"] = { "fg", "FzfLuaFzfQuery", "regular" }, + ["prompt"] = { "fg", "FzfLuaFzfPrompt" }, + ["pointer"] = { "fg", "FzfLuaFzfPointer" }, + ["marker"] = { "fg", "FzfLuaFzfMarker" }, + ["spinner"] = { "fg", "FzfLuaFzfSpinner" }, + ["header"] = { "fg", "FzfLuaFzfHeader" }, + } + local ret = {} + + for c, v in pairs(spec) do + local hl_group = links[v[2]] + if vim.fn.hlexists(v[2]) == 1 then + hl_group = v[2] + end + print(hl_group) + assert(hl_group, "hl_group not found for " .. v[2]) + local hl = vim.api.nvim_get_hl(0, { name = hl_group, link = false }) + assert(hl, "hl not found for " .. hl_group) + local color = hl[v[1]] + assert(color, "color not found for " .. c .. ":" .. hl_group) + color = string.format("#%06x", color) or nil + local line = string.format("--color=%s:%s", c, color) + if v[3] then + line = line .. ":" .. v[3] + end + ret[#ret + 1] = " " .. line .. " \\" + end + table.sort(ret) + + return M.template:format(table.concat(ret, "\n")) end M.template = [[ export FZF_DEFAULT_OPTS="$FZF_DEFAULT_OPTS \ ---color=fg:${fg},bg:${bg},hl:${orange} \ ---color=fg+:${fg},bg+:${bg_highlight},hl+:${orange} \ ---color=info:${blue},prompt:${cyan},pointer:${cyan} \ ---color=marker:${green},spinner:${green},header:${green}" + --highlight-line \ + --info=inline-right \ + --ansi \ + --layout=reverse \ + --border=none +%s +" ]] +print(M.generate()) + return M diff --git a/lua/tokyonight/extra/gitui.lua b/lua/tokyonight/extra/gitui.lua index ab85eb56..6b04b570 100644 --- a/lua/tokyonight/extra/gitui.lua +++ b/lua/tokyonight/extra/gitui.lua @@ -1,53 +1,36 @@ local util = require("tokyonight.util") -local function hex2rgb(key, value) - local hex = value:gsub("#", "") - - local r = tonumber(hex:sub(1, 2), 16) - local g = tonumber(hex:sub(3, 4), 16) - local b = tonumber(hex:sub(5, 6), 16) - - return string.format("Rgb(%s,%s,%s), // %s %s", r, g, b, key, value) -end - local M = {} --- @param colors ColorScheme function M.generate(colors) - local gitui_colors = {} - for k, v in pairs(colors) do - if type(v) == "string" then - gitui_colors[k] = hex2rgb(k, v) - end - end - local gitui = util.template( [[ ( - selected_tab: ${magenta} - command_fg: ${comment} - selection_bg: ${bg_highlight} - selection_fg: ${cyan} - cmdbar_bg: ${bg} - cmdbar_extra_lines_bg: ${bg} - disabled_fg: ${comment} - diff_line_add: ${green} - diff_line_delete: ${red} - diff_file_added: ${green1} - diff_file_removed: ${red1} - diff_file_moved: ${magenta2} - diff_file_modified: ${yellow} - commit_hash: ${magenta} - commit_time: ${teal} - commit_author: ${green} - danger_fg: ${red} - push_gauge_bg: ${bg} - push_gauge_fg: ${fg} - tag_fg: ${magenta2} - branch_fg: ${yellow} + selected_tab: Some("${magenta}"), + command_fg: Some("${comment}"), + selection_bg: Some("${bg_highlight}"), + selection_fg: Some("${cyan}"), + cmdbar_bg: Some("${bg}"), + cmdbar_extra_lines_bg: Some("${bg}"), + disabled_fg: Some("${comment}"), + diff_line_add: Some("${green}"), + diff_line_delete: Some("${red}"), + diff_file_added: Some("${green1}"), + diff_file_removed: Some("${red1}"), + diff_file_moved: Some("${magenta2}"), + diff_file_modified: Some("${yellow}"), + commit_hash: Some("${magenta}"), + commit_time: Some("${teal}"), + commit_author: Some("${green}"), + danger_fg: Some("${red}"), + push_gauge_bg: Some("${bg}"), + push_gauge_fg: Some("${fg}"), + tag_fg: Some("${magenta2}"), + branch_fg: Some("${yellow}") ) ]], - gitui_colors + colors ) return gitui diff --git a/lua/tokyonight/extra/gnome_terminal.lua b/lua/tokyonight/extra/gnome_terminal.lua new file mode 100644 index 00000000..676b588f --- /dev/null +++ b/lua/tokyonight/extra/gnome_terminal.lua @@ -0,0 +1,46 @@ +local util = require("tokyonight.util") + +local M = {} + +function M.generate(colors) + local gnome_colors = {} + for k, v in pairs(colors) do + local is_color = type(v) == "string" and v:find("^#[%x]") ~= nil + if is_color then + local hex = v:gsub("^#", "") + local r = tonumber(hex:sub(1, 2), 16) + local g = tonumber(hex:sub(3, 4), 16) + local b = tonumber(hex:sub(5, 6), 16) + gnome_colors[k] = string.format("rgb(%d, %d, %d)", r, g, b) + else + gnome_colors[k] = v + end + end + + local gnome_terminal = util.template( + [[ +# Import this theme as follows: +# 1. Create a new profile for GNOME Terminal +# 2. Copy the UUID of the new profile (bottom right corner of the preferences window) +# 3. Replace below with the copied UUID +# 4. Execute `dconf load /org/gnome/terminal/legacy/profiles:/ < ${_name}.dconf` + +[:] +background-color='${bg}' +cursor-background-color='${fg}' +cursor-colors-set=true +cursor-foreground-color='${bg}' +foreground-color='${fg}' +highlight-background-color='${fg}' +highlight-colors-set=true +highlight-foreground-color='${bg}' +palette=['${terminal_black}', '${red}', '${green}', '${yellow}', '${blue}', '${magenta}', '${cyan}', '${fg}', '${terminal_black}', '${red}', '${green}', '${yellow}', '${blue}', '${magenta}', '${cyan}', '${fg}'] +use-theme-colors=false +visible-name='${_style_name}' +]], + gnome_colors + ) + return gnome_terminal +end + +return M diff --git a/lua/tokyonight/extra/helix.lua b/lua/tokyonight/extra/helix.lua index 00d58432..7bbd6be3 100644 --- a/lua/tokyonight/extra/helix.lua +++ b/lua/tokyonight/extra/helix.lua @@ -87,7 +87,7 @@ function M.generate(colors) ["function"] = { "Function", builtin = "@function.builtin", - method = "@method", + method = "@function.method", macro = "@function.macro", -- Defined as "preprocessor in C", so using "PreProc", not sure though special = "PreProc", @@ -97,12 +97,12 @@ function M.generate(colors) -- ??? builtin = nil, }, - namespace = "@namespace", + namespace = "@lsp.type.namespace", special = "Special", markup = { nil, heading = { - "@text.title", + "@markup.heading", marker = nil, -- post-processed to remove the 'h' as we already use the first element (1) as the root value. h1 = nil, @@ -116,7 +116,7 @@ function M.generate(colors) hover = "PmenuSel", }, list = { - "markdownHeadingDelimiter", + "@markup.list", unnumbered = nil, numbered = nil, checked = nil, @@ -129,16 +129,16 @@ function M.generate(colors) modifiers = { "crossed_out" }, }, link = { - "markdownLinkText", - url = "Underlined", - label = "markdownCode", - text = "markdownCode", + "@markup.link", + url = "@markup.link.url", + label = "@markup.link.label", + text = "@markup.link", }, quote = nil, raw = { - "markdownCode", + "@markup.raw", inline = "@markup.raw.markdown_inline", - block = "markdownCodeBlock", + block = nil, -- UI -- completion = nil, hover = nil, diff --git a/lua/tokyonight/extra/init.lua b/lua/tokyonight/extra/init.lua index fed357c0..07ef94e6 100644 --- a/lua/tokyonight/extra/init.lua +++ b/lua/tokyonight/extra/init.lua @@ -1,74 +1,44 @@ +local Util = require("tokyonight.util") + local M = {} -- map of plugin name to plugin extension ---- @type table +--- @type table -- stylua: ignore M.extras = { - kitty = {ext = "conf", url = "https://sw.kovidgoyal.net/kitty/conf.html", label = "Kitty"}, - fish = {ext = "fish", url = "https://fishshell.com/docs/current/index.html", label = "Fish"}, - fish_themes = {ext = "theme", url = "https://fishshell.com/docs/current/interactive.html#syntax-highlighting", label = "Fish Themes"}, - alacritty = {ext = "toml", url = "https://github.com/alacritty/alacritty", label = "Alacritty"}, - wezterm = {ext = "toml", url = "https://wezfurlong.org/wezterm/config/files.html", label = "WezTerm"}, - tmux = {ext = "tmux", url = "https://github.com/tmux/tmux/wiki", label = "Tmux"}, - xresources = {ext = "Xresources", url = "https://wiki.archlinux.org/title/X_resources", label = "Xresources"}, - xfceterm = {ext = "theme", url = "https://docs.xfce.org/apps/terminal/advanced", label = "Xfce Terminal"}, - foot = {ext = "ini", url = "https://codeberg.org/dnkl/foot", label = "Foot"}, - tilix = {ext = "json", url = "https://github.com/gnunn1/tilix", label = "Tilix"}, - iterm = {ext = "itermcolors", url = "https://iterm2.com/", label = "iTerm"}, - lua = {ext = "lua", url = "https://www.lua.org", label = "Lua Table for testing"}, - sublime = {ext = "tmTheme", url = "https://www.sublimetext.com/docs/themes", label = "Sublime Text"}, - delta = {ext = "gitconfig", url = "https://github.com/dandavison/delta", label = "Delta"}, - terminator = {ext = "conf", url = "https://gnome-terminator.readthedocs.io/en/latest/config.html", label = "Terminator"}, - prism = {ext = "js", url = "https://prismjs.com", label = "Prism"}, - windows_terminal = {ext = "json", url = "https://aka.ms/terminal-documentation", label = "Windows Terminal"}, - zathura = {ext = "zathurarc", url = "https://pwmt.org/projects/zathura/", label = "Zathura"}, - dunst = {ext = "dunstrc", url = "https://dunst-project.org/", label = "Dunst"}, - gitui = {ext = "ron", url = "https://github.com/extrawurst/gitui", label = "GitUI"}, - helix = { ext = "toml", url = "https://helix-editor.com/", label = "Helix"}, - fzf = { ext = "zsh", url = "https://github.com/junegunn/fzf", label = "Fzf"}, - aerc = { ext = "ini", url = "https://git.sr.ht/~rjarry/aerc/", label = "Aerc"}, + aerc = { ext = "ini", url = "https://git.sr.ht/~rjarry/aerc/", label = "Aerc"}, + alacritty = { ext = "toml", url = "https://github.com/alacritty/alacritty", label = "Alacritty" }, + delta = { ext = "gitconfig", url = "https://github.com/dandavison/delta", label = "Delta" }, + dunst = { ext = "dunstrc", url = "https://dunst-project.org/", label = "Dunst" }, + fish = { ext = "fish", url = "https://fishshell.com/docs/current/index.html", label = "Fish" }, + fish_themes = { ext = "theme", url = "https://fishshell.com/docs/current/interactive.html#syntax-highlighting", label = "Fish Themes" }, + foot = { ext = "ini", url = "https://codeberg.org/dnkl/foot", label = "Foot" }, + fzf = { ext = "sh", url = "https://github.com/junegunn/fzf", label = "Fzf" }, + gitui = { ext = "ron", url = "https://github.com/extrawurst/gitui", label = "GitUI" }, + gnome_terminal = { ext = "dconf", url = "https://gitlab.gnome.org/GNOME/gnome-terminal", label = "GNOME Terminal"}, + helix = { ext = "toml", url = "https://helix-editor.com/", label = "Helix" }, + iterm = { ext = "itermcolors", url = "https://iterm2.com/", label = "iTerm" }, + kitty = { ext = "conf", url = "https://sw.kovidgoyal.net/kitty/conf.html", label = "Kitty" }, + lazygit = { ext = "yml", url = "https://github.com/jesseduffield/lazygit", label = "Lazygit" }, + lua = { ext = "lua", url = "https://www.lua.org", label = "Lua Table for testing" }, + prism = { ext = "js", url = "https://prismjs.com", label = "Prism" }, + slack = {ext = "txt", url = "https://slack.com", label = "Slack"}, + sublime = { ext = "tmTheme", url = "https://www.sublimetext.com/docs/themes", label = "Sublime Text" }, + spotify_player = {ext = "toml", url = "https://github.com/aome510/spotify-player", label = "Spotify Player"}, + terminator = { ext = "conf", url = "https://gnome-terminator.readthedocs.io/en/latest/config.html", label = "Terminator" }, + tilix = { ext = "json", url = "https://github.com/gnunn1/tilix", label = "Tilix" }, + tmux = { ext = "tmux", url = "https://github.com/tmux/tmux/wiki", label = "Tmux" }, + wezterm = { ext = "toml", url = "https://wezfurlong.org/wezterm/config/files.html", label = "WezTerm" }, + windows_terminal = { ext = "json", url = "https://aka.ms/terminal-documentation", label = "Windows Terminal" }, + xfceterm = { ext = "theme", url = "https://docs.xfce.org/apps/terminal/advanced", label = "Xfce Terminal" }, + xresources = { ext = "Xresources", url = "https://wiki.archlinux.org/title/X_resources", label = "Xresources" }, + yazi = { ext = "toml", url = "https://github.com/sxyazi/yazi", label = "Yazi" }, + vim = { ext = "vim", url = "https://vimhelp.org/", label = "Vim", subdir = "colors", sep = "-" }, + zathura = { ext = "zathurarc", url = "https://pwmt.org/projects/zathura/", label = "Zathura" }, + zellij = { ext = "kdl", url = "https://zellij.dev/", label = "Zellij" }, } -local function write(str, fileName) - print("[write] extra/" .. fileName) - vim.fn.mkdir(vim.fs.dirname("extras/" .. fileName), "p") - local file = io.open("extras/" .. fileName, "w") - file:write(str) - file:close() -end - -function M.read_file(file) - local fd = assert(io.open(file, "r")) - ---@type string - local data = fd:read("*a") - fd:close() - return data -end - -function M.write_file(file, contents) - local fd = assert(io.open(file, "w+")) - fd:write(contents) - fd:close() -end - -function M.docs() - local file = vim.fn.fnamemodify(debug.getinfo(1, "S").source:sub(2), ":p:h:h:h:h") .. "/README.md" - local tag = "extras" - local pattern = "(<%!%-%- " .. tag .. ":start %-%->).*(<%!%-%- " .. tag .. ":end %-%->)" - local readme = M.read_file(file) - local lines = {} - local names = vim.tbl_keys(M.extras) - table.sort(names) - for _, name in ipairs(names) do - local info = M.extras[name] - table.insert(lines, "- [" .. info.label .. "](" .. info.url .. ") ([" .. name .. "](extras/" .. name .. "))") - end - readme = readme:gsub(pattern, "%1\n" .. table.concat(lines, "\n") .. "\n%2") - M.write_file(file, readme) -end - function M.setup() - M.docs() local tokyonight = require("tokyonight") vim.o.background = "dark" @@ -80,19 +50,29 @@ function M.setup() moon = " Moon", } - for extra, info in pairs(M.extras) do - package.loaded["tokyonight.extra." .. extra] = nil + ---@type string[] + local names = vim.tbl_keys(M.extras) + table.sort(names) + + -- tokyonight.setup({ plugins = { all = true } }) + for _, extra in ipairs(names) do + local info = M.extras[extra] local plugin = require("tokyonight.extra." .. extra) for style, style_name in pairs(styles) do - tokyonight.setup({ style = style }) - tokyonight.load({ style = style }) - vim.cmd.colorscheme("tokyonight-" .. style) - local colors = require("tokyonight.colors").setup({ transform = true }) - local fname = extra .. "/tokyonight_" .. style .. "." .. info.ext + local colors, groups, opts = tokyonight.load({ style = style, plugins = { all = true } }) + local fname = extra + .. (info.subdir and "/" .. info.subdir .. "/" or "") + .. "/tokyonight" + .. (info.sep or "_") + .. style + .. "." + .. info.ext colors["_upstream_url"] = "https://github.com/folke/tokyonight.nvim/raw/main/extras/" .. fname colors["_style_name"] = "Tokyo Night" .. style_name colors["_name"] = "tokyonight_" .. style - write(plugin.generate(colors), fname) + colors["_style"] = style + print("[write] " .. fname) + Util.write("extras/" .. fname, plugin.generate(colors, groups, opts)) end end end diff --git a/lua/tokyonight/extra/iterm.lua b/lua/tokyonight/extra/iterm.lua index 80122ab1..62bcb2ed 100644 --- a/lua/tokyonight/extra/iterm.lua +++ b/lua/tokyonight/extra/iterm.lua @@ -20,8 +20,8 @@ end local M = {} function M.generate(colors) - - local iterm = template([[ + local iterm = template( + [[ diff --git a/lua/tokyonight/extra/lazygit.lua b/lua/tokyonight/extra/lazygit.lua new file mode 100644 index 00000000..2bbc0863 --- /dev/null +++ b/lua/tokyonight/extra/lazygit.lua @@ -0,0 +1,42 @@ +local util = require("tokyonight.util") + +local M = {} + +--- @param colors ColorScheme +function M.generate(colors) + local lazygit = util.template( + [[ +gui: + nerdFontsVersion: "3" + theme: + activeBorderColor: + - "${orange}" + - "bold" + inactiveBorderColor: + - "${border_highlight}" + searchingActiveBorderColor: + - "${orange}" + - "bold" + optionsTextColor: + - "${blue}" + selectedLineBgColor: + - "${bg_visual}" + cherryPickedCommitFgColor: + - "${blue}" + cherryPickedCommitBgColor: + - "${magenta}" + markedBaseCommitFgColor: + - "${blue}" + markedBaseCommitBgColor: + - "${yellow}" + unstagedChangesColor: + - "${red1}" + defaultFgColor: + - "${fg}" +]], + colors + ) + return lazygit +end + +return M diff --git a/lua/tokyonight/extra/lua.lua b/lua/tokyonight/extra/lua.lua index f334dffe..5f9f1a39 100644 --- a/lua/tokyonight/extra/lua.lua +++ b/lua/tokyonight/extra/lua.lua @@ -1,18 +1,7 @@ local M = {} --- @param colors ColorScheme -function M.generate(colors) - local function deepcopy(tbl) - local ret = tbl - if type(tbl) == "table" then - ret = {} - for key, value in pairs(tbl) do - ret[key] = deepcopy(value) - end - end - return ret - end - +function M.generate(colors, groups) colors = vim.deepcopy(colors) colors._upstream_url = nil colors._style_name = nil @@ -20,7 +9,7 @@ function M.generate(colors) local ret = "local colors = " .. vim.inspect(colors) .. "\n\nlocal highlights = " - .. vim.inspect(deepcopy(require("tokyonight.theme").setup().highlights)) + .. vim.inspect(vim.deepcopy(groups, true)) .. "\n" return ret end diff --git a/lua/tokyonight/extra/slack.lua b/lua/tokyonight/extra/slack.lua new file mode 100644 index 00000000..58fda650 --- /dev/null +++ b/lua/tokyonight/extra/slack.lua @@ -0,0 +1,10 @@ +local util = require("tokyonight.util") + +local M = {} + +--- @param colors ColorScheme +function M.generate(colors) + return util.template("${border},${bg_highlight},${magenta},${bg_visual}", colors) +end + +return M diff --git a/lua/tokyonight/extra/spotify_player.lua b/lua/tokyonight/extra/spotify_player.lua new file mode 100644 index 00000000..5ded384f --- /dev/null +++ b/lua/tokyonight/extra/spotify_player.lua @@ -0,0 +1,34 @@ +local util = require("tokyonight.util") + +local M = {} + +--- @param colors ColorScheme +function M.generate(colors) + return util.template(M.template, colors) +end + +M.template = [=[ +[[themes]] +name = "${_style_name}" +[themes.palette] +background = "${bg_dark}" +foreground = "${fg_dark}" +black = "${terminal_black}" +red = "${red}" +green = "${green}" +yellow = "${yellow}" +blue = "${blue}" +magenta = "${magenta}" +cyan = "${cyan}" +white = "${white}" +bright_black = "${bg}" +bright_red = "${red1}" +bright_green = "${green1}" +bright_yellow = "${orange}" +bright_blue = "${blue1}" +bright_magenta = "${magenta2}" +bright_cyan = "${blue5}" +bright_white = "${fg}" +]=] + +return M diff --git a/lua/tokyonight/extra/sublime.lua b/lua/tokyonight/extra/sublime.lua index 1b3149b1..bf18e380 100644 --- a/lua/tokyonight/extra/sublime.lua +++ b/lua/tokyonight/extra/sublime.lua @@ -4,6 +4,9 @@ local M = {} --- @param colors ColorScheme function M.generate(colors) + colors.error_bg = util.blend_bg(colors.error, 0.1) + colors.warning_bg = util.blend_bg(colors.warning, 0.1) + colors.info_bg = util.blend_bg(colors.info, 0.1) local sublime = util.template(M.template, colors) return sublime end @@ -167,6 +170,45 @@ M.template = [[ #9aa5ce + + name + Info + scope + markup.info + settings + + foreground + ${info} + background + ${info_bg} + + + + name + Warning + scope + markup.warning + settings + + foreground + ${warning} + background + ${warning_bg} + + + + name + Error + scope + markup.error + settings + + foreground + ${error} + background + ${error_bg} + + name Invalid @@ -778,7 +820,7 @@ M.template = [[ name - CSS psuedo selectors + CSS pseudo selectors scope entity.other.attribute-name.pseudo-class, entity.other.attribute-name.pseudo-element, entity.other.attribute-name.placeholder, meta.property-list meta.property-value settings diff --git a/lua/tokyonight/extra/vim.lua b/lua/tokyonight/extra/vim.lua new file mode 100644 index 00000000..69ec3644 --- /dev/null +++ b/lua/tokyonight/extra/vim.lua @@ -0,0 +1,107 @@ +local M = {} + +local mapping = { + fg = "guifg", + bg = "guibg", + sp = "guisp", +} + +--- @param colors ColorScheme +--- @param groups tokyonight.Highlights +--- @param opts tokyonight.Config +function M.generate(colors, groups, opts) + opts.plugins = { all = false, auto = false, treesitter = false } + local Groups = require("tokyonight.groups") + for p, n in pairs(Groups.plugins) do + if not p:find("nvim") then + opts.plugins[n] = true + end + end + groups = Groups.setup(colors, opts) + local lines = { + ([[ +let g:colors_name = "tokyonight-%s" +hi clear + ]]):format(colors._style), + } + + groups = vim.deepcopy(groups) + for name in pairs(groups) do + if name:sub(1, 1) == "@" then + groups[name] = nil + end + end + local names = vim.tbl_keys(groups) + table.sort(names) + + local used = {} + for _, name in ipairs(names) do + local hl = groups[name] + if type(hl) == "string" then + hl = { link = hl } + end + + if not hl.link then + local props = {} + + -- fg/bg/sp + for k, v in pairs(hl) do + if mapping[k] then + props[#props + 1] = ("%s=%s"):format(mapping[k], v) + end + end + + -- gui + local gui = {} + for _, attr in ipairs({ + "bold", + "underline", + "undercurl", + "italic", + "strikethrough", + "underdouble", + "underdotted", + "underdashed", + "inverse", + "standout", + "nocombine", + "altfont", + }) do + if hl[attr] then + gui[#gui + 1] = attr + end + end + if #gui > 0 then + props[#props + 1] = ("gui=%s"):format(table.concat(gui, ",")) + end + + if #props > 0 then + if not hl.bg then + props[#props + 1] = "guibg=NONE" + end + table.sort(props) + used[name] = true + lines[#lines + 1] = ("hi %s %s"):format(name, table.concat(props, " ")) + else + print("tokyonight: invalid highlight group: " .. name) + end + end + end + + for _, name in ipairs(names) do + local hl = groups[name] + if type(hl) == "string" then + hl = { link = hl } + end + + if hl.link then + if hl.link:sub(1, 1) ~= "@" and groups[hl.link] and used[hl.link] then + lines[#lines + 1] = ("hi! link %s %s"):format(name, hl.link) + end + end + end + + return table.concat(lines, "\n") +end + +return M diff --git a/lua/tokyonight/extra/windows_terminal.lua b/lua/tokyonight/extra/windows_terminal.lua index 7b65be7a..240e9126 100644 --- a/lua/tokyonight/extra/windows_terminal.lua +++ b/lua/tokyonight/extra/windows_terminal.lua @@ -4,7 +4,8 @@ local M = {} --- @param colors ColorScheme function M.generate(colors) - local windows_terminal = util.template([[ + local windows_terminal = util.template( + [[ # Add the following object to your Windows Terminal configuration # https://learn.microsoft.com/en-us/windows/terminal/customize-settings/color-schemes#creating-your-own-color-scheme { diff --git a/lua/tokyonight/extra/xfceterm.lua b/lua/tokyonight/extra/xfceterm.lua index 63ad2b13..690f17d4 100644 --- a/lua/tokyonight/extra/xfceterm.lua +++ b/lua/tokyonight/extra/xfceterm.lua @@ -7,7 +7,7 @@ function M.generate(colors) local xfceterm = util.template( [[ [Scheme] -Name=TokyoNight Colors +Name="${_name}" ColorBackground=${bg} ColorForeground=${fg} diff --git a/lua/tokyonight/extra/yazi.lua b/lua/tokyonight/extra/yazi.lua new file mode 100644 index 00000000..e34399e6 --- /dev/null +++ b/lua/tokyonight/extra/yazi.lua @@ -0,0 +1,144 @@ +local util = require("tokyonight.util") + +local M = {} + +--- @param colors ColorScheme +function M.generate(colors) + colors.bg_search = util.blend_bg(colors.info, 0.1) + local yazi = util.template( + [[ +[manager] +# NOTE: can combined with tmTheme (sublime colorshceme file) for preview code highlight +# highlight = "path/to/tmTheme" + +cwd = { fg = "${fg_dark}", italic = true } + +# Hovered +hovered = { bg = "${bg_highlight}" } +preview_hovered = { bg = "${bg_highlight}" } + +# Find +find_keyword = { fg = "${bg_dark}", bg = "${orange}", bold = true } +find_position = { fg = "${blue2}", bg = "${bg_search}", bold = true } + +# Marker +marker_copied = { fg = "${green1}", bg = "${green1}" } +marker_cut = { fg = "${red}", bg = "${red}" } +marker_marked = { fg = "${magenta}", bg = "${magenta}" } +marker_selected = { fg = "${blue}", bg = "${blue}" } + +# Tab +tab_active = { fg = "${fg}", bg = "${bg_highlight}" } +tab_inactive = { fg = "${fg_gutter}", bg = "${bg}" } +tab_width = 1 + +# Count +count_copied = { fg = "${fg}", bg = "${green2}" } +count_cut = { fg = "${fg}", bg = "${red1}" } +count_selected = { fg = "${fg}", bg = "${blue0}" } +# Border +border_symbol = "│" +border_style = { fg = "${border_highlight}" } + +[status] +separator_open = "" +separator_close = "" +separator_style = { fg = "${fg_gutter}", bg = "${fg_gutter}" } + +# Mode +mode_normal = { fg = "${bg_dark}", bg = "${blue}", bold = true } +mode_select = { fg = "${bg_dark}", bg = "${magenta}", bold = true } +mode_unset = { fg = "${bg_dark}", bg = "${purple}", bold = true } + +# Progress +progress_label = { fg = "${fg_dark}", bold = true } +progress_normal = { fg = "${bg}" } +progress_error = { fg = "${red}" } + +# Permissions +permissions_t = { fg = "${blue}" } +permissions_r = { fg = "${yellow}" } +permissions_w = { fg = "${red}" } +permissions_x = { fg = "${green}" } +permissions_s = { fg = "${terminal_black}" } + +[select] +border = { fg = "${border_highlight}" } +active = { fg = "${fg}", bg = "${bg_visual}" } +inactive = { fg = "${fg}" } + +# Input +[input] +border = { fg = "${blue2}" } +title = {} +value = { fg = "${purple}" } +selected = { bg = "${bg_visual}" } + +# Completion +[completion] +border = { fg = "${blue2}" } +active = { fg = "${fg}", bg = "${bg_visual}" } +inactive = { fg = "${fg}" } + +# Tasks +[tasks] +border = { fg = "${border_highlight}" } +title = {} +hovered = { fg = "${fg}", bg="${bg_visual}" } + +# Which +[which] +cols = 3 +mask = { bg = "${bg_dark}" } +cand = { fg = "${cyan}" } +rest = { fg = "${blue}" } +desc = { fg = "${magenta}" } +separator = "  " +separator_style = { fg = "${comment}" } + +# Notify +[notify] +title_info = { fg = "${blue2}" } +title_warn = { fg = "${yellow}" } +title_error = { fg = "${red}" } + +# Help +[help] +on = { fg = "${green}" } +run = { fg = "${magenta}" } +hovered = { bg = "${bg_visual}" } +footer = { fg = "${fg}", bg = "${bg}" } + +[filetype] + +rules = [ + # Images + { mime = "image/*", fg = "${yellow}" }, + + # Media + { mime = "{audio,video}/*", fg = "${magenta}" }, + + # Archives + { mime = "application/*zip", fg = "${red}" }, + { mime = "application/x-{tar,bzip*,7z-compressed,xz,rar}", fg = "${red}" }, + + # Documents + { mime = "application/{pdf,doc,rtf,vnd.*}", fg = "${cyan}" }, + + # Empty files + # { mime = "inode/x-empty", fg = "${red}" }, + + # Special files + { name = "*", is = "orphan", bg = "${red}" }, + { name = "*", is = "exec" , fg = "${green}" }, + + # Fallback + { name = "*/", fg = "${blue}" } +] + ]], + colors + ) + return yazi +end + +return M diff --git a/lua/tokyonight/extra/zellij.lua b/lua/tokyonight/extra/zellij.lua new file mode 100644 index 00000000..ce54a3f6 --- /dev/null +++ b/lua/tokyonight/extra/zellij.lua @@ -0,0 +1,36 @@ +local util = require("tokyonight.util") + +local M = {} + +--- @param colors ColorScheme +function M.generate(colors) + local zellij = util.template( + [=[ +// Tokyonight Zellij Colors +// Add this file to your `CONFIG_DIR/themes` directory as described here: +// https://zellij.dev/documentation/themes#getting-zellij-to-pick-up-the-theme + +themes { + ${_name} { + fg "${fg}" + bg "${bg_highlight}" + black "${black}" + red "${red}" + green "${green}" + yellow "${yellow}" + blue "${blue}" + magenta "${magenta}" + cyan "${cyan}" + white "${fg_dark}" + orange "${orange}" + } +} + +]=], + colors + ) + + return zellij +end + +return M diff --git a/lua/tokyonight/groups/aerial.lua b/lua/tokyonight/groups/aerial.lua new file mode 100644 index 00000000..ace1d948 --- /dev/null +++ b/lua/tokyonight/groups/aerial.lua @@ -0,0 +1,17 @@ +local M = {} + +M.url = "https://github.com/stevearc/aerial.nvim" + +---@type tokyonight.HighlightsFn +function M.get(c, opts) + -- stylua: ignore + local ret = { + AerialNormal = { fg = c.fg, bg = c.none }, + AerialGuide = { fg = c.fg_gutter }, + AerialLine = "LspInlayHint", + } + require("tokyonight.groups.kinds").kinds(ret, "Aerial%sIcon") + return ret +end + +return M diff --git a/lua/tokyonight/groups/ale.lua b/lua/tokyonight/groups/ale.lua new file mode 100644 index 00000000..b6eca0d8 --- /dev/null +++ b/lua/tokyonight/groups/ale.lua @@ -0,0 +1,14 @@ +local M = {} + +M.url = "https://github.com/dense-analysis/ale" + +---@type tokyonight.HighlightsFn +function M.get(c, opts) + -- stylua: ignore + return { + ALEErrorSign = { fg = c.error }, + ALEWarningSign = { fg = c.warning }, + } +end + +return M diff --git a/lua/tokyonight/groups/alpha.lua b/lua/tokyonight/groups/alpha.lua new file mode 100644 index 00000000..570bb06f --- /dev/null +++ b/lua/tokyonight/groups/alpha.lua @@ -0,0 +1,17 @@ +local M = {} + +M.url = "https://github.com/goolord/alpha-nvim" + +---@type tokyonight.HighlightsFn +function M.get(c, opts) + -- stylua: ignore + return { + AlphaShortcut = { fg = c.orange }, + AlphaHeader = { fg = c.blue }, + AlphaHeaderLabel = { fg = c.orange }, + AlphaFooter = { fg = c.blue1 }, + AlphaButtons = { fg = c.cyan }, + } +end + +return M diff --git a/lua/tokyonight/groups/barbar.lua b/lua/tokyonight/groups/barbar.lua new file mode 100644 index 00000000..823f588d --- /dev/null +++ b/lua/tokyonight/groups/barbar.lua @@ -0,0 +1,53 @@ +local Util = require("tokyonight.util") + +local M = {} + +M.url = "https://github.com/romgrk/barbar.nvim" + +---@type tokyonight.HighlightsFn +function M.get(c) + -- stylua: ignore + return { + BufferAlternate = { bg = c.fg_gutter, fg = c.fg }, + BufferAlternateERROR = { bg = c.fg_gutter, fg = c.error }, + BufferAlternateHINT = { bg = c.fg_gutter, fg = c.hint }, + BufferAlternateINFO = { bg = c.fg_gutter, fg = c.info }, + BufferAlternateIndex = { bg = c.fg_gutter, fg = c.info }, + BufferAlternateMod = { bg = c.fg_gutter, fg = c.warning }, + BufferAlternateSign = { bg = c.fg_gutter, fg = c.info }, + BufferAlternateTarget = { bg = c.fg_gutter, fg = c.red }, + BufferAlternateWARN = { bg = c.fg_gutter, fg = c.warning }, + BufferCurrent = { bg = c.bg, fg = c.fg }, + BufferCurrentERROR = { bg = c.bg, fg = c.error }, + BufferCurrentHINT = { bg = c.bg, fg = c.hint }, + BufferCurrentINFO = { bg = c.bg, fg = c.info }, + BufferCurrentIndex = { bg = c.bg, fg = c.info }, + BufferCurrentMod = { bg = c.bg, fg = c.warning }, + BufferCurrentSign = { bg = c.bg, fg = c.bg }, + BufferCurrentTarget = { bg = c.bg, fg = c.red }, + BufferCurrentWARN = { bg = c.bg, fg = c.warning }, + BufferInactive = { bg = Util.blend_bg(c.bg_highlight, 0.4), fg = Util.blend_bg(c.dark5, 0.8) }, + BufferInactiveERROR = { bg = Util.blend_bg(c.bg_highlight, 0.4), fg = Util.blend_bg(c.error, 0.8) }, + BufferInactiveHINT = { bg = Util.blend_bg(c.bg_highlight, 0.4), fg = Util.blend_bg(c.hint, 0.8) }, + BufferInactiveINFO = { bg = Util.blend_bg(c.bg_highlight, 0.4), fg = Util.blend_bg(c.info, 0.8) }, + BufferInactiveIndex = { bg = Util.blend_bg(c.bg_highlight, 0.4), fg = c.dark5 }, + BufferInactiveMod = { bg = Util.blend_bg(c.bg_highlight, 0.4), fg = Util.blend_bg(c.warning, 0.8) }, + BufferInactiveSign = { bg = Util.blend_bg(c.bg_highlight, 0.4), fg = c.bg }, + BufferInactiveTarget = { bg = Util.blend_bg(c.bg_highlight, 0.4), fg = c.red }, + BufferInactiveWARN = { bg = Util.blend_bg(c.bg_highlight, 0.4), fg = Util.blend_bg(c.warning, 0.8) }, + BufferOffset = { bg = c.bg_statusline, fg = c.dark5 }, + BufferTabpageFill = { bg = Util.blend_bg(c.bg_highlight, 0.8), fg = c.dark5 }, + BufferTabpages = { bg = c.bg_statusline, fg = c.none }, + BufferVisible = { bg = c.bg_statusline, fg = c.fg }, + BufferVisibleERROR = { bg = c.bg_statusline, fg = c.error }, + BufferVisibleHINT = { bg = c.bg_statusline, fg = c.hint }, + BufferVisibleINFO = { bg = c.bg_statusline, fg = c.info }, + BufferVisibleIndex = { bg = c.bg_statusline, fg = c.info }, + BufferVisibleMod = { bg = c.bg_statusline, fg = c.warning }, + BufferVisibleSign = { bg = c.bg_statusline, fg = c.info }, + BufferVisibleTarget = { bg = c.bg_statusline, fg = c.red }, + BufferVisibleWARN = { bg = c.bg_statusline, fg = c.warning }, + } +end + +return M diff --git a/lua/tokyonight/groups/base.lua b/lua/tokyonight/groups/base.lua new file mode 100644 index 00000000..9abd80e5 --- /dev/null +++ b/lua/tokyonight/groups/base.lua @@ -0,0 +1,145 @@ +local Util = require("tokyonight.util") + +local M = {} + +---@type tokyonight.HighlightsFn +function M.get(c, opts) + -- stylua: ignore + return { + Foo = { bg = c.magenta2, fg = c.fg }, + + Comment = { fg = c.comment, style = opts.styles.comments }, -- any comment + ColorColumn = { bg = c.black }, -- used for the columns set with 'colorcolumn' + Conceal = { fg = c.dark5 }, -- placeholder characters substituted for concealed text (see 'conceallevel') + Cursor = { fg = c.bg, bg = c.fg }, -- character under the cursor + lCursor = { fg = c.bg, bg = c.fg }, -- the character under the cursor when |language-mapping| is used (see 'guicursor') + CursorIM = { fg = c.bg, bg = c.fg }, -- like Cursor, but used when in IME mode |CursorIM| + CursorColumn = { bg = c.bg_highlight }, -- Screen-column at the cursor, when 'cursorcolumn' is set. + CursorLine = { bg = c.bg_highlight }, -- Screen-line at the cursor, when 'cursorline' is set. Low-priority if foreground (ctermfg OR guifg) is not set. + Directory = { fg = c.blue }, -- directory names (and other special names in listings) + DiffAdd = { bg = c.diff.add }, -- diff mode: Added line |diff.txt| + DiffChange = { bg = c.diff.change }, -- diff mode: Changed line |diff.txt| + DiffDelete = { bg = c.diff.delete }, -- diff mode: Deleted line |diff.txt| + DiffText = { bg = c.diff.text }, -- diff mode: Changed text within a changed line |diff.txt| + EndOfBuffer = { fg = c.bg }, -- filler lines (~) after the end of the buffer. By default, this is highlighted like |hl-NonText|. + ErrorMsg = { fg = c.error }, -- error messages on the command line + VertSplit = { fg = c.border }, -- the column separating vertically split windows + WinSeparator = { fg = c.border, bold = true }, -- the column separating vertically split windows + Folded = { fg = c.blue, bg = c.fg_gutter }, -- line used for closed folds + FoldColumn = { bg = opts.transparent and c.none or c.bg, fg = c.comment }, -- 'foldcolumn' + SignColumn = { bg = opts.transparent and c.none or c.bg, fg = c.fg_gutter }, -- column where |signs| are displayed + SignColumnSB = { bg = c.bg_sidebar, fg = c.fg_gutter }, -- column where |signs| are displayed + Substitute = { bg = c.red, fg = c.black }, -- |:substitute| replacement text highlighting + LineNr = { fg = c.fg_gutter }, -- Line number for ":number" and ":#" commands, and when 'number' or 'relativenumber' option is set. + CursorLineNr = { fg = c.orange, bold = true }, -- Like LineNr when 'cursorline' or 'relativenumber' is set for the cursor line. + LineNrAbove = { fg = c.fg_gutter }, + LineNrBelow = { fg = c.fg_gutter }, + MatchParen = { fg = c.orange, bold = true }, -- The character under the cursor or just before it, if it is a paired bracket, and its match. |pi_paren.txt| + ModeMsg = { fg = c.fg_dark, bold = true }, -- 'showmode' message (e.g., "-- INSERT -- ") + MsgArea = { fg = c.fg_dark }, -- Area for messages and cmdline + MoreMsg = { fg = c.blue }, -- |more-prompt| + NonText = { fg = c.dark3 }, -- '@' at the end of the window, characters from 'showbreak' and other characters that do not really exist in the text (e.g., ">" displayed when a double-wide character doesn't fit at the end of the line). See also |hl-EndOfBuffer|. + Normal = { fg = c.fg, bg = opts.transparent and c.none or c.bg }, -- normal text + NormalNC = { fg = c.fg, bg = opts.transparent and c.none or opts.dim_inactive and c.bg_dark or c.bg }, -- normal text in non-current windows + NormalSB = { fg = c.fg_sidebar, bg = c.bg_sidebar }, -- normal text in sidebar + NormalFloat = { fg = c.fg_float, bg = c.bg_float }, -- Normal text in floating windows. + FloatBorder = { fg = c.border_highlight, bg = c.bg_float }, + FloatTitle = { fg = c.border_highlight, bg = c.bg_float }, + Pmenu = { bg = c.bg_popup, fg = c.fg }, -- Popup menu: normal item. + PmenuSel = { bg = Util.blend_bg(c.fg_gutter, 0.8) }, -- Popup menu: selected item. + PmenuSbar = { bg = Util.blend_fg(c.bg_popup, 0.95) }, -- Popup menu: scrollbar. + PmenuThumb = { bg = c.fg_gutter }, -- Popup menu: Thumb of the scrollbar. + Question = { fg = c.blue }, -- |hit-enter| prompt and yes/no questions + QuickFixLine = { bg = c.bg_visual, bold = true }, -- Current |quickfix| item in the quickfix window. Combined with |hl-CursorLine| when the cursor is there. + Search = { bg = c.bg_search, fg = c.fg }, -- Last search pattern highlighting (see 'hlsearch'). Also used for similar items that need to stand out. + IncSearch = { bg = c.orange, fg = c.black }, -- 'incsearch' highlighting; also used for the text replaced with ":s///c" + CurSearch = "IncSearch", + SpecialKey = { fg = c.dark3 }, -- Unprintable characters: text displayed differently from what it really is. But not 'listchars' whitespace. |hl-Whitespace| + SpellBad = { sp = c.error, undercurl = true }, -- Word that is not recognized by the spellchecker. |spell| Combined with the highlighting used otherwise. + SpellCap = { sp = c.warning, undercurl = true }, -- Word that should start with a capital. |spell| Combined with the highlighting used otherwise. + SpellLocal = { sp = c.info, undercurl = true }, -- Word that is recognized by the spellchecker as one that is used in another region. |spell| Combined with the highlighting used otherwise. + SpellRare = { sp = c.hint, undercurl = true }, -- Word that is recognized by the spellchecker as one that is hardly ever used. |spell| Combined with the highlighting used otherwise. + StatusLine = { fg = c.fg_sidebar, bg = c.bg_statusline }, -- status line of current window + StatusLineNC = { fg = c.fg_gutter, bg = c.bg_statusline }, -- status lines of not-current windows Note: if this is equal to "StatusLine" Vim will use "^^^" in the status line of the current window. + TabLine = { bg = c.bg_statusline, fg = c.fg_gutter }, -- tab pages line, not active tab page label + TabLineFill = { bg = c.black }, -- tab pages line, where there are no labels + TabLineSel = { fg = c.black, bg = c.blue }, -- tab pages line, active tab page label + Title = { fg = c.blue, bold = true }, -- titles for output from ":set all", ":autocmd" etc. + Visual = { bg = c.bg_visual }, -- Visual mode selection + VisualNOS = { bg = c.bg_visual }, -- Visual mode selection when vim is "Not Owning the Selection". + WarningMsg = { fg = c.warning }, -- warning messages + Whitespace = { fg = c.fg_gutter }, -- "nbsp", "space", "tab" and "trail" in 'listchars' + WildMenu = { bg = c.bg_visual }, -- current match in 'wildmenu' completion + WinBar = "StatusLine" , -- window bar + WinBarNC = "StatusLineNC", -- window bar in inactive windows + + Bold = { bold = true, fg = c.fg }, -- (preferred) any bold text + Character = { fg = c.green }, -- a character constant: 'c', '\n' + Constant = { fg = c.orange }, -- (preferred) any constant + Debug = { fg = c.orange }, -- debugging statements + Delimiter = "Special", -- character that needs attention + Error = { fg = c.error }, -- (preferred) any erroneous construct + Function = { fg = c.blue, style = opts.styles.functions }, -- function name (also: methods for classes) + Identifier = { fg = c.magenta, style = opts.styles.variables }, -- (preferred) any variable name + Italic = { italic = true, fg = c.fg }, -- (preferred) any italic text + Keyword = { fg = c.cyan, style = opts.styles.keywords }, -- any other keyword + Operator = { fg = c.blue5 }, -- "sizeof", "+", "*", etc. + PreProc = { fg = c.cyan }, -- (preferred) generic Preprocessor + Special = { fg = c.blue1 }, -- (preferred) any special symbol + Statement = { fg = c.magenta }, -- (preferred) any statement + String = { fg = c.green }, -- a string constant: "this is a string" + Todo = { bg = c.yellow, fg = c.bg }, -- (preferred) anything that needs extra attention; mostly the keywords TODO FIXME and XXX + Type = { fg = c.blue1 }, -- (preferred) int, long, char, etc. + Underlined = { underline = true }, -- (preferred) text that stands out, HTML links + debugBreakpoint = { bg = Util.blend_bg(c.info, 0.1), fg = c.info }, -- used for breakpoint colors in terminal-debug + debugPC = { bg = c.bg_sidebar }, -- used for highlighting the current line in terminal-debug + dosIniLabel = "@property", + helpCommand = { bg = c.terminal_black, fg = c.blue }, + htmlH1 = { fg = c.magenta, bold = true }, + htmlH2 = { fg = c.blue, bold = true }, + qfFileName = { fg = c.blue }, + qfLineNr = { fg = c.dark5 }, + + -- These groups are for the native LSP client. Some other LSP clients may + -- use these groups, or use their own. + LspReferenceText = { bg = c.fg_gutter }, -- used for highlighting "text" references + LspReferenceRead = { bg = c.fg_gutter }, -- used for highlighting "read" references + LspReferenceWrite = { bg = c.fg_gutter }, -- used for highlighting "write" references + LspSignatureActiveParameter = { bg = Util.blend_bg(c.bg_visual, 0.4), bold = true }, + LspCodeLens = { fg = c.comment }, + LspInlayHint = { bg = Util.blend_bg(c.blue7, 0.1), fg = c.dark3 }, + LspInfoBorder = { fg = c.border_highlight, bg = c.bg_float }, + + -- diagnostics + DiagnosticError = { fg = c.error }, -- Used as the base highlight group. Other Diagnostic highlights link to this by default + DiagnosticWarn = { fg = c.warning }, -- Used as the base highlight group. Other Diagnostic highlights link to this by default + DiagnosticInfo = { fg = c.info }, -- Used as the base highlight group. Other Diagnostic highlights link to this by default + DiagnosticHint = { fg = c.hint }, -- Used as the base highlight group. Other Diagnostic highlights link to this by default + DiagnosticUnnecessary = { fg = c.terminal_black }, -- Used as the base highlight group. Other Diagnostic highlights link to this by default + DiagnosticVirtualTextError = { bg = Util.blend_bg(c.error, 0.1), fg = c.error }, -- Used for "Error" diagnostic virtual text + DiagnosticVirtualTextWarn = { bg = Util.blend_bg(c.warning, 0.1), fg = c.warning }, -- Used for "Warning" diagnostic virtual text + DiagnosticVirtualTextInfo = { bg = Util.blend_bg(c.info, 0.1), fg = c.info }, -- Used for "Information" diagnostic virtual text + DiagnosticVirtualTextHint = { bg = Util.blend_bg(c.hint, 0.1), fg = c.hint }, -- Used for "Hint" diagnostic virtual text + DiagnosticUnderlineError = { undercurl = true, sp = c.error }, -- Used to underline "Error" diagnostics + DiagnosticUnderlineWarn = { undercurl = true, sp = c.warning }, -- Used to underline "Warning" diagnostics + DiagnosticUnderlineInfo = { undercurl = true, sp = c.info }, -- Used to underline "Information" diagnostics + DiagnosticUnderlineHint = { undercurl = true, sp = c.hint }, -- Used to underline "Hint" diagnostics + + -- Health + healthError = { fg = c.error }, + healthSuccess = { fg = c.green1 }, + healthWarning = { fg = c.warning }, + + -- diff (not needed anymore?) + diffAdded = { fg = c.git.add }, + diffRemoved = { fg = c.git.delete }, + diffChanged = { fg = c.git.change }, + diffOldFile = { fg = c.yellow }, + diffNewFile = { fg = c.orange }, + diffFile = { fg = c.blue }, + diffLine = { fg = c.comment }, + diffIndexLine = { fg = c.magenta }, + } +end + +return M diff --git a/lua/tokyonight/groups/bufferline.lua b/lua/tokyonight/groups/bufferline.lua new file mode 100644 index 00000000..299f60ab --- /dev/null +++ b/lua/tokyonight/groups/bufferline.lua @@ -0,0 +1,13 @@ +local M = {} + +M.url = "https://github.com/akinsho/bufferline.nvim" + +---@type tokyonight.HighlightsFn +function M.get(c, opts) + -- stylua: ignore + return { + BufferLineIndicatorSelected = { fg = c.git.change }, + } +end + +return M diff --git a/lua/tokyonight/groups/cmp.lua b/lua/tokyonight/groups/cmp.lua new file mode 100644 index 00000000..c8f3ccf6 --- /dev/null +++ b/lua/tokyonight/groups/cmp.lua @@ -0,0 +1,27 @@ +local M = {} + +M.url = "https://github.com/hrsh7th/nvim-cmp" + +---@type tokyonight.HighlightsFn +function M.get(c, opts) + -- stylua: ignore + local ret = { + CmpDocumentation = { fg = c.fg, bg = c.bg_float }, + CmpDocumentationBorder = { fg = c.border_highlight, bg = c.bg_float }, + CmpGhostText = { fg = c.terminal_black }, + CmpItemAbbr = { fg = c.fg, bg = c.none }, + CmpItemAbbrDeprecated = { fg = c.fg_gutter, bg = c.none, strikethrough = true }, + CmpItemAbbrMatch = { fg = c.blue1, bg = c.none }, + CmpItemAbbrMatchFuzzy = { fg = c.blue1, bg = c.none }, + CmpItemKindCodeium = { fg = c.teal, bg = c.none }, + CmpItemKindCopilot = { fg = c.teal, bg = c.none }, + CmpItemKindDefault = { fg = c.fg_dark, bg = c.none }, + CmpItemKindTabNine = { fg = c.teal, bg = c.none }, + CmpItemMenu = { fg = c.comment, bg = c.none }, + } + + require("tokyonight.groups.kinds").kinds(ret, "CmpItemKind%s") + return ret +end + +return M diff --git a/lua/tokyonight/groups/dap.lua b/lua/tokyonight/groups/dap.lua new file mode 100644 index 00000000..3f26f6de --- /dev/null +++ b/lua/tokyonight/groups/dap.lua @@ -0,0 +1,15 @@ +local Util = require("tokyonight.util") + +local M = {} + +M.url = "https://github.com/mfussenegger/nvim-dap" + +---@type tokyonight.HighlightsFn +function M.get(c, opts) + -- stylua: ignore + return { + DapStoppedLine = { bg = Util.blend_bg(c.warning, 0.1) }, -- Used for "Warning" diagnostic virtual text + } +end + +return M diff --git a/lua/tokyonight/groups/dashboard.lua b/lua/tokyonight/groups/dashboard.lua new file mode 100644 index 00000000..768b522b --- /dev/null +++ b/lua/tokyonight/groups/dashboard.lua @@ -0,0 +1,19 @@ +local M = {} + +M.url = "https://github.com/glepnir/dashboard-nvim" + +---@type tokyonight.HighlightsFn +function M.get(c, opts) + -- stylua: ignore + return { + DashboardShortCut = { fg = c.cyan }, + DashboardHeader = { fg = c.blue }, + DashboardCenter = { fg = c.magenta }, + DashboardFooter = { fg = c.blue1 }, + DashboardKey = { fg = c.orange }, + DashboardDesc = { fg = c.cyan }, + DashboardIcon = { fg = c.cyan, bold = true }, + } +end + +return M diff --git a/lua/tokyonight/groups/flash.lua b/lua/tokyonight/groups/flash.lua new file mode 100644 index 00000000..dce2a113 --- /dev/null +++ b/lua/tokyonight/groups/flash.lua @@ -0,0 +1,14 @@ +local M = {} + +M.url = "https://github.com/folke/flash.nvim" + +---@type tokyonight.HighlightsFn +function M.get(c, opts) + -- stylua: ignore + return { + FlashBackdrop = { fg = c.dark3 }, + FlashLabel = { bg = c.magenta2, bold = true, fg = c.fg }, + } +end + +return M diff --git a/lua/tokyonight/groups/fzf.lua b/lua/tokyonight/groups/fzf.lua new file mode 100644 index 00000000..a3e4fa3f --- /dev/null +++ b/lua/tokyonight/groups/fzf.lua @@ -0,0 +1,26 @@ +local M = {} + +M.url = "https://github.com/ibhagwan/fzf-lua" + +---@type tokyonight.HighlightsFn +function M.get(c) + -- stylua: ignore + return { + FzfLuaBorder = { fg = c.border_highlight, bg = c.bg_float }, + FzfLuaCursor = "IncSearch", + FzfLuaDirPart = { fg = c.fg_dark }, + FzfLuaFilePart = "FzfLuaFzfNormal", + FzfLuaFzfCursorLine = "Visual", + FzfLuaFzfNormal = { fg = c.fg }, + FzfLuaFzfPointer = { fg = c.magenta2 }, + FzfLuaFzfSeparator = { fg = c.orange, bg = c.bg_float }, + FzfLuaHeaderBind = "@punctuation.special", + FzfLuaHeaderText = "Title", + FzfLuaNormal = { fg = c.fg, bg = c.bg_float }, + FzfLuaPath = "Directory", + FzfLuaPreviewTitle = { fg = c.border_highlight, bg = c.bg_float }, + FzfLuaTitle = { fg = c.orange, bg = c.bg_float }, + } +end + +return M diff --git a/lua/tokyonight/groups/gitgutter.lua b/lua/tokyonight/groups/gitgutter.lua new file mode 100644 index 00000000..54f4c284 --- /dev/null +++ b/lua/tokyonight/groups/gitgutter.lua @@ -0,0 +1,18 @@ +local M = {} + +M.url = "https://github.com/airblade/vim-gitgutter" + +---@type tokyonight.HighlightsFn +function M.get(c, opts) + -- stylua: ignore + return { + GitGutterAdd = { fg = c.git.add }, -- diff mode: Added line |diff.txt| + GitGutterChange = { fg = c.git.change }, -- diff mode: Changed line |diff.txt| + GitGutterDelete = { fg = c.git.delete }, -- diff mode: Deleted line |diff.txt| + GitGutterAddLineNr = { fg = c.git.add }, + GitGutterChangeLineNr = { fg = c.git.change }, + GitGutterDeleteLineNr = { fg = c.git.delete }, + } +end + +return M diff --git a/lua/tokyonight/groups/gitsigns.lua b/lua/tokyonight/groups/gitsigns.lua new file mode 100644 index 00000000..9d4c601a --- /dev/null +++ b/lua/tokyonight/groups/gitsigns.lua @@ -0,0 +1,15 @@ +local M = {} + +M.url = "https://github.com/lewis6991/gitsigns.nvim" + +---@type tokyonight.HighlightsFn +function M.get(c, opts) + -- stylua: ignore + return { + GitSignsAdd = { fg = c.git.add }, -- diff mode: Added line |diff.txt| + GitSignsChange = { fg = c.git.change }, -- diff mode: Changed line |diff.txt| + GitSignsDelete = { fg = c.git.delete }, -- diff mode: Deleted line |diff.txt| + } +end + +return M diff --git a/lua/tokyonight/groups/glyph-palette.lua b/lua/tokyonight/groups/glyph-palette.lua new file mode 100644 index 00000000..19daad0d --- /dev/null +++ b/lua/tokyonight/groups/glyph-palette.lua @@ -0,0 +1,19 @@ +local M = {} + +M.url = "https://github.com/lambdalisue/glyph-palette.vim" + +---@type tokyonight.HighlightsFn +function M.get(c) + -- stylua: ignore + return { + GlyphPalette1 = { fg = c.red1 }, + GlyphPalette2 = { fg = c.green }, + GlyphPalette3 = { fg = c.yellow }, + GlyphPalette4 = { fg = c.blue }, + GlyphPalette6 = { fg = c.green1 }, + GlyphPalette7 = { fg = c.fg }, + GlyphPalette9 = { fg = c.red }, + } +end + +return M diff --git a/lua/tokyonight/groups/headlines.lua b/lua/tokyonight/groups/headlines.lua new file mode 100644 index 00000000..35a86989 --- /dev/null +++ b/lua/tokyonight/groups/headlines.lua @@ -0,0 +1,20 @@ +local Util = require("tokyonight.util") + +local M = {} + +M.url = "https://github.com/lukas-reineke/headlines.nvim" + +---@type tokyonight.HighlightsFn +function M.get(c, opts) + -- stylua: ignore + local ret = { + CodeBlock = { bg = c.bg_dark }, + Headline = "Headline1", + } + for i, color in ipairs(c.rainbow) do + ret["Headline" .. i] = { bg = Util.blend_bg(color, 0.05) } + end + return ret +end + +return M diff --git a/lua/tokyonight/groups/hop.lua b/lua/tokyonight/groups/hop.lua new file mode 100644 index 00000000..1ac8b08a --- /dev/null +++ b/lua/tokyonight/groups/hop.lua @@ -0,0 +1,18 @@ +local Util = require("tokyonight.util") + +local M = {} + +M.url = "https://github.com/phaazon/hop.nvim" + +---@type tokyonight.HighlightsFn +function M.get(c, opts) + -- stylua: ignore + return { + HopNextKey = { fg = c.magenta2, bold = true }, + HopNextKey1 = { fg = c.blue2, bold = true }, + HopNextKey2 = { fg = Util.blend_bg(c.blue2, 0.6) }, + HopUnmatched = { fg = c.dark3 }, + } +end + +return M diff --git a/lua/tokyonight/groups/illuminate.lua b/lua/tokyonight/groups/illuminate.lua new file mode 100644 index 00000000..febb76a3 --- /dev/null +++ b/lua/tokyonight/groups/illuminate.lua @@ -0,0 +1,17 @@ +local M = {} + +M.url = "https://github.com/RRethy/vim-illuminate" + +---@type tokyonight.HighlightsFn +function M.get(c) + -- stylua: ignore + return { + IlluminatedWordRead = { bg = c.fg_gutter }, + IlluminatedWordText = { bg = c.fg_gutter }, + IlluminatedWordWrite = { bg = c.fg_gutter }, + illuminatedCurWord = { bg = c.fg_gutter }, + illuminatedWord = { bg = c.fg_gutter }, + } +end + +return M diff --git a/lua/tokyonight/groups/indent-blankline.lua b/lua/tokyonight/groups/indent-blankline.lua new file mode 100644 index 00000000..898e567f --- /dev/null +++ b/lua/tokyonight/groups/indent-blankline.lua @@ -0,0 +1,16 @@ +local M = {} + +M.url = "https://github.com/lukas-reineke/indent-blankline.nvim" + +---@type tokyonight.HighlightsFn +function M.get(c, opts) + -- stylua: ignore + return { + IndentBlanklineChar = { fg = c.fg_gutter, nocombine = true }, + IndentBlanklineContextChar = { fg = c.blue1, nocombine = true }, + IblIndent = { fg = c.fg_gutter, nocombine = true }, + IblScope = { fg = c.blue1, nocombine = true }, + } +end + +return M diff --git a/lua/tokyonight/groups/indentmini.lua b/lua/tokyonight/groups/indentmini.lua new file mode 100644 index 00000000..95912a9b --- /dev/null +++ b/lua/tokyonight/groups/indentmini.lua @@ -0,0 +1,14 @@ +local M = {} + +M.url = "https://github.com/nvimdev/indentmini.nvim" + +---@type tokyonight.HighlightsFn +function M.get(c, opts) + -- stylua: ignore + return { + IndentLine = { fg = c.fg_gutter, nocombine = true }, + IndentLineCurrent = { fg = c.blue1, nocombine = true }, + } +end + +return M diff --git a/lua/tokyonight/groups/init.lua b/lua/tokyonight/groups/init.lua new file mode 100644 index 00000000..eb4ce8f9 --- /dev/null +++ b/lua/tokyonight/groups/init.lua @@ -0,0 +1,161 @@ +local Config = require("tokyonight.config") +local Util = require("tokyonight.util") + +local M = {} + +-- stylua: ignore +M.plugins = { + ["aerial.nvim"] = "aerial", + ["ale"] = "ale", + ["alpha-nvim"] = "alpha", + ["barbar.nvim"] = "barbar", + ["bufferline.nvim"] = "bufferline", + ["dashboard-nvim"] = "dashboard", + ["flash.nvim"] = "flash", + ["fzf-lua"] = "fzf", + ["gitsigns.nvim"] = "gitsigns", + ["headlines.nvim"] = "headlines", + ["hop.nvim"] = "hop", + ["indent-blankline.nvim"] = "indent-blankline", + ["indentmini.nvim"] = "indentmini", + ["lazy.nvim"] = "lazy", + ["leap.nvim"] = "leap", + ["lspsaga.nvim"] = "lspsaga", + ["mini.animate"] = "mini_animate", + ["mini.clue"] = "mini_clue", + ["mini.completion"] = "mini_completion", + ["mini.cursorword"] = "mini_cursorword", + ["mini.deps"] = "mini_deps", + ["mini.diff"] = "mini_diff", + ["mini.files"] = "mini_files", + ["mini.hipatterns"] = "mini_hipatterns", + ["mini.icons"] = "mini_icons", + ["mini.indentscope"] = "mini_indentscope", + ["mini.jump"] = "mini_jump", + ["mini.map"] = "mini_map", + ["mini.notify"] = "mini_notify", + ["mini.operators"] = "mini_operators", + ["mini.pick"] = "mini_pick", + ["mini.starter"] = "mini_starter", + ["mini.statusline"] = "mini_statusline", + ["mini.surround"] = "mini_surround", + ["mini.tabline"] = "mini_tabline", + ["mini.test"] = "mini_test", + ["mini.trailspace"] = "mini_trailspace", + ["neo-tree.nvim"] = "neo-tree", + ["neogit"] = "neogit", + ["neotest"] = "neotest", + ["noice.nvim"] = "noice", + ["nvim-cmp"] = "cmp", + ["nvim-dap"] = "dap", + ["nvim-navic"] = "navic", + ["nvim-notify"] = "notify", + ["nvim-scrollbar"] = "scrollbar", + ["nvim-tree"] = "nvim-tree", + ["nvim-treesitter-context"] = "treesitter-context", + ["octo.nvim"] = "octo", + ["rainbow-delimiters.nvim"] = "rainbow", + ["telescope.nvim"] = "telescope", + ["trouble.nvim"] = "trouble", + ["vim-gitgutter"] = "gitgutter", + ["vim-glyph-palette"] = "glyph-palette", + ["vim-illuminate"] = "illuminate", + ["vim-sneak"] = "sneak", + ["vimwiki"] = "vimwiki", + ["which-key.nvim"] = "which-key", + ["yanky.nvim"] = "yanky" +} + +local me = debug.getinfo(1, "S").source:sub(2) +me = vim.fn.fnamemodify(me, ":h") + +function M.get_group(name) + ---@type {get: tokyonight.HighlightsFn, url: string} + return Util.mod("tokyonight.groups." .. name) +end + +---@param colors ColorScheme +---@param opts tokyonight.Config +function M.get(name, colors, opts) + local mod = M.get_group(name) + return mod.get(colors, opts) +end + +---@param colors ColorScheme +---@param opts tokyonight.Config +function M.setup(colors, opts) + local groups = { + base = true, + kinds = true, + semantic_tokens = true, + treesitter = true, + } + + if opts.plugins.all then + for _, group in pairs(M.plugins) do + groups[group] = true + end + elseif opts.plugins.auto and package.loaded.lazy then + local plugins = require("lazy.core.config").plugins + for plugin, group in pairs(M.plugins) do + if plugins[plugin] then + groups[group] = true + end + end + + -- special case for mini.nvim + if plugins["mini.nvim"] then + for _, group in pairs(M.plugins) do + if group:find("^mini_") then + groups[group] = true + end + end + end + end + + -- manually enable/disable plugins + for plugin, group in pairs(M.plugins) do + local use = opts.plugins[group] + use = use == nil and opts.plugins[plugin] or use + if use ~= nil then + if type(use) == "table" then + use = use.enabled + end + groups[group] = use or nil + end + end + + local names = vim.tbl_keys(groups) + table.sort(names) + + local cache_key = opts.style + local cache = opts.cache and Util.cache.read(cache_key) + + local inputs = { + colors = colors, + plugins = names, + version = Config.version, + opts = { styles = opts.styles, dim_inactive = opts.dim_inactive }, + } + + local ret = cache and vim.deep_equal(inputs, cache.inputs) and cache.groups + + if not ret then + ret = {} + -- merge highlights + for group in pairs(groups) do + for k, v in pairs(M.get(group, colors, opts)) do + ret[k] = v + end + end + Util.resolve(ret) + if opts.cache then + Util.cache.write(cache_key, { groups = ret, inputs = inputs }) + end + end + opts.on_highlights(ret, colors) + + return ret, groups +end + +return M diff --git a/lua/tokyonight/groups/kinds.lua b/lua/tokyonight/groups/kinds.lua new file mode 100644 index 00000000..3afd5f03 --- /dev/null +++ b/lua/tokyonight/groups/kinds.lua @@ -0,0 +1,61 @@ +local M = {} + +-- lsp symbol kind and completion kind highlights +local kinds = { + Array = "@punctuation.bracket", + Boolean = "@boolean", + Class = "@type", + Color = "Special", + Constant = "@constant", + Constructor = "@constructor", + Enum = "@lsp.type.enum", + EnumMember = "@lsp.type.enumMember", + Event = "Special", + Field = "@variable.member", + File = "Normal", + Folder = "Directory", + Function = "@function", + Interface = "@lsp.type.interface", + Key = "@variable.member", + Keyword = "@lsp.type.keyword", + Method = "@function.method", + Module = "@module", + Namespace = "@module", + Null = "@constant.builtin", + Number = "@number", + Object = "@constant", + Operator = "@operator", + Package = "@module", + Property = "@property", + Reference = "@markup.link", + Snippet = "Conceal", + String = "@string", + Struct = "@lsp.type.struct", + Unit = "@lsp.type.struct", + Text = "@markup", + TypeParameter = "@lsp.type.typeParameter", + Variable = "@variable", + Value = "@string", +} + +---@param hl? tokyonight.Highlights +---@param pattern? string +function M.kinds(hl, pattern) + hl = hl or {} + for kind, link in pairs(kinds) do + local base = "LspKind" .. kind + if pattern then + hl[pattern:format(kind)] = base + else + hl[base] = link + end + end + return hl +end + +---@type tokyonight.HighlightsFn +function M.get() + return M.kinds() +end + +return M diff --git a/lua/tokyonight/groups/lazy.lua b/lua/tokyonight/groups/lazy.lua new file mode 100644 index 00000000..d11efa69 --- /dev/null +++ b/lua/tokyonight/groups/lazy.lua @@ -0,0 +1,14 @@ +local M = {} + +M.url = "https://github.com/folke/lazy.nvim" + +---@type tokyonight.HighlightsFn +function M.get(c, opts) + -- stylua: ignore + return { + LazyProgressDone = { bold = true, fg = c.magenta2 }, + LazyProgressTodo = { bold = true, fg = c.fg_gutter }, + } +end + +return M diff --git a/lua/tokyonight/groups/leap.lua b/lua/tokyonight/groups/leap.lua new file mode 100644 index 00000000..f45b922b --- /dev/null +++ b/lua/tokyonight/groups/leap.lua @@ -0,0 +1,16 @@ +local M = {} + +M.url = "https://github.com/ggandor/leap.nvim" + +---@type tokyonight.HighlightsFn +function M.get(c, opts) + -- stylua: ignore + return { + LeapMatch = { bg = c.magenta2, fg = c.fg, bold = true }, + LeapLabelPrimary = { fg = c.magenta2, bold = true }, + LeapLabelSecondary = { fg = c.green1, bold = true }, + LeapBackdrop = { fg = c.dark3 }, + } +end + +return M diff --git a/lua/tokyonight/groups/lspsaga.lua b/lua/tokyonight/groups/lspsaga.lua new file mode 100644 index 00000000..5f3eccc6 --- /dev/null +++ b/lua/tokyonight/groups/lspsaga.lua @@ -0,0 +1,30 @@ +local M = {} + +M.url = "https://github.com/glepnir/lspsaga.nvim" + +---@type tokyonight.HighlightsFn +function M.get(c, opts) + -- stylua: ignore + return { + DefinitionCount = { fg = c.purple }, + DefinitionIcon = { fg = c.blue }, + DiagnosticInformation = "DiagnosticInfo", + DiagnosticWarning = "DiagnosticWarn", + LspFloatWinBorder = { fg = c.border_highlight }, + LspFloatWinNormal = { bg = c.bg_float }, + LspSagaBorderTitle = { fg = c.cyan }, + LspSagaCodeActionBorder = { fg = c.blue }, + LspSagaCodeActionContent = { fg = c.purple }, + LspSagaCodeActionTitle = { fg = c.blue1 }, + LspSagaDefPreviewBorder = { fg = c.green }, + LspSagaFinderSelection = { fg = c.bg_visual }, + LspSagaHoverBorder = { fg = c.blue }, + LspSagaRenameBorder = { fg = c.green }, + LspSagaSignatureHelpBorder = { fg = c.red }, + ReferencesCount = { fg = c.purple }, + ReferencesIcon = { fg = c.blue }, + TargetWord = { fg = c.cyan }, + } +end + +return M diff --git a/lua/tokyonight/groups/mini_animate.lua b/lua/tokyonight/groups/mini_animate.lua new file mode 100644 index 00000000..f05ca964 --- /dev/null +++ b/lua/tokyonight/groups/mini_animate.lua @@ -0,0 +1,14 @@ +local M = {} + +M.url = "https://github.com/echasnovski/mini.animate" + +---@type tokyonight.HighlightsFn +function M.get(c) + -- stylua: ignore + return { + MiniAnimateCursor = { reverse = true, nocombine = true }, + MiniAnimateNormalFloat = "NormalFloat", + } +end + +return M diff --git a/lua/tokyonight/groups/mini_clue.lua b/lua/tokyonight/groups/mini_clue.lua new file mode 100644 index 00000000..0ec3e6a5 --- /dev/null +++ b/lua/tokyonight/groups/mini_clue.lua @@ -0,0 +1,19 @@ +local M = {} + +M.url = "https://github.com/echasnovski/mini.clue" + +---@type tokyonight.HighlightsFn +function M.get(c) + -- stylua: ignore + return { + MiniClueBorder = "FloatBorder", + MiniClueDescGroup = "DiagnosticFloatingWarn", + MiniClueDescSingle = "NormalFloat", + MiniClueNextKey = "DiagnosticFloatingHint", + MiniClueNextKeyWithPostkeys = "DiagnosticFloatingError", + MiniClueSeparator = "DiagnosticFloatingInfo", + MiniClueTitle = "FloatTitle", + } +end + +return M diff --git a/lua/tokyonight/groups/mini_completion.lua b/lua/tokyonight/groups/mini_completion.lua new file mode 100644 index 00000000..259648e2 --- /dev/null +++ b/lua/tokyonight/groups/mini_completion.lua @@ -0,0 +1,13 @@ +local M = {} + +M.url = "https://github.com/echasnovski/mini.completion" + +---@type tokyonight.HighlightsFn +function M.get(c) + -- stylua: ignore + return { + MiniCompletionActiveParameter = { underline = true }, + } +end + +return M diff --git a/lua/tokyonight/groups/mini_cursorword.lua b/lua/tokyonight/groups/mini_cursorword.lua new file mode 100644 index 00000000..9ae78374 --- /dev/null +++ b/lua/tokyonight/groups/mini_cursorword.lua @@ -0,0 +1,14 @@ +local M = {} + +M.url = "https://github.com/echasnovski/mini.cursorword" + +---@type tokyonight.HighlightsFn +function M.get(c) + -- stylua: ignore + return { + MiniCursorword = { bg = c.fg_gutter }, + MiniCursorwordCurrent = { bg = c.fg_gutter }, + } +end + +return M diff --git a/lua/tokyonight/groups/mini_deps.lua b/lua/tokyonight/groups/mini_deps.lua new file mode 100644 index 00000000..3843c2a8 --- /dev/null +++ b/lua/tokyonight/groups/mini_deps.lua @@ -0,0 +1,22 @@ +local M = {} + +M.url = "https://github.com/echasnovski/mini.deps" + +---@type tokyonight.HighlightsFn +function M.get(c) + -- stylua: ignore + return { + MiniDepsChangeAdded = "diffAdded", + MiniDepsChangeRemoved = "diffRemoved", + MiniDepsHint = "DiagnosticHint", + MiniDepsInfo = "DiagnosticInfo", + MiniDepsMsgBreaking = "DiagnosticWarn", + MiniDepsPlaceholder = "Comment", + MiniDepsTitle = "Title", + MiniDepsTitleError = { fg = c.black, bg = c.git.delete }, + MiniDepsTitleSame = "Comment", + MiniDepsTitleUpdate = { fg = c.black, bg = c.git.add }, + } +end + +return M diff --git a/lua/tokyonight/groups/mini_diff.lua b/lua/tokyonight/groups/mini_diff.lua new file mode 100644 index 00000000..db856b0d --- /dev/null +++ b/lua/tokyonight/groups/mini_diff.lua @@ -0,0 +1,19 @@ +local M = {} + +M.url = "https://github.com/echasnovski/mini.diff" + +---@type tokyonight.HighlightsFn +function M.get(c) + -- stylua: ignore + return { + MiniDiffOverAdd = "DiffAdd", + MiniDiffOverChange = "DiffText", + MiniDiffOverContext = "DiffChange", + MiniDiffOverDelete = "DiffDelete", + MiniDiffSignAdd = { fg = c.git.add }, + MiniDiffSignChange = { fg = c.git.change }, + MiniDiffSignDelete = { fg = c.git.delete }, + } +end + +return M diff --git a/lua/tokyonight/groups/mini_files.lua b/lua/tokyonight/groups/mini_files.lua new file mode 100644 index 00000000..2b632c2c --- /dev/null +++ b/lua/tokyonight/groups/mini_files.lua @@ -0,0 +1,20 @@ +local M = {} + +M.url = "https://github.com/echasnovski/mini.files" + +---@type tokyonight.HighlightsFn +function M.get(c) + -- stylua: ignore + return { + MiniFilesBorder = "FloatBorder", + MiniFilesBorderModified = "DiagnosticFloatingWarn", + MiniFilesCursorLine = "CursorLine", + MiniFilesDirectory = "Directory", + MiniFilesFile = { fg = c.fg_float }, + MiniFilesNormal = "NormalFloat", + MiniFilesTitle = "FloatTitle", + MiniFilesTitleFocused = { fg = c.border_highlight, bg = c.bg_float, bold = true }, + } +end + +return M diff --git a/lua/tokyonight/groups/mini_hipatterns.lua b/lua/tokyonight/groups/mini_hipatterns.lua new file mode 100644 index 00000000..352e9012 --- /dev/null +++ b/lua/tokyonight/groups/mini_hipatterns.lua @@ -0,0 +1,16 @@ +local M = {} + +M.url = "https://github.com/echasnovski/mini.hipatterns" + +---@type tokyonight.HighlightsFn +function M.get(c) + -- stylua: ignore + return { + MiniHipatternsFixme = { fg = c.black, bg = c.error, bold = true }, + MiniHipatternsHack = { fg = c.black, bg = c.warning, bold = true }, + MiniHipatternsNote = { fg = c.black, bg = c.hint, bold = true }, + MiniHipatternsTodo = { fg = c.black, bg = c.info, bold = true }, + } +end + +return M diff --git a/lua/tokyonight/groups/mini_icons.lua b/lua/tokyonight/groups/mini_icons.lua new file mode 100644 index 00000000..6ac0d458 --- /dev/null +++ b/lua/tokyonight/groups/mini_icons.lua @@ -0,0 +1,21 @@ +local M = {} + +M.url = "https://github.com/echasnovski/mini.icons" + +---@type tokyonight.HighlightsFn +function M.get(c) + -- stylua: ignore + return { + MiniIconsAzure = { fg = c.info }, + MiniIconsBlue = { fg = c.blue }, + MiniIconsCyan = { fg = c.teal }, + MiniIconsGreen = { fg = c.green }, + MiniIconsGrey = { fg = c.fg }, + MiniIconsOrange = { fg = c.orange }, + MiniIconsPurple = { fg = c.purple }, + MiniIconsRed = { fg = c.red }, + MiniIconsYellow = { fg = c.yellow }, + } +end + +return M diff --git a/lua/tokyonight/groups/mini_indentscope.lua b/lua/tokyonight/groups/mini_indentscope.lua new file mode 100644 index 00000000..962ac0f4 --- /dev/null +++ b/lua/tokyonight/groups/mini_indentscope.lua @@ -0,0 +1,14 @@ +local M = {} + +M.url = "https://github.com/echasnovski/mini.indentscope" + +---@type tokyonight.HighlightsFn +function M.get(c) + -- stylua: ignore + return { + MiniIndentscopeSymbol = { fg = c.blue1, nocombine = true }, + MiniIndentscopePrefix = { nocombine = true }, -- Make it invisible + } +end + +return M diff --git a/lua/tokyonight/groups/mini_jump.lua b/lua/tokyonight/groups/mini_jump.lua new file mode 100644 index 00000000..ed9af76f --- /dev/null +++ b/lua/tokyonight/groups/mini_jump.lua @@ -0,0 +1,17 @@ +local M = {} + +M.url = "https://github.com/echasnovski/mini.jump" + +---@type tokyonight.HighlightsFn +function M.get(c) + -- stylua: ignore + return { + MiniJump = { bg = c.magenta2, fg = "#ffffff" }, + MiniJump2dDim = "Comment", + MiniJump2dSpot = { fg = c.magenta2, bold = true, nocombine = true }, + MiniJump2dSpotAhead = { fg = c.hint, bg = c.bg_dark, nocombine = true }, + MiniJump2dSpotUnique = { fg = c.orange, bold = true, nocombine = true }, + } +end + +return M diff --git a/lua/tokyonight/groups/mini_map.lua b/lua/tokyonight/groups/mini_map.lua new file mode 100644 index 00000000..a8945de2 --- /dev/null +++ b/lua/tokyonight/groups/mini_map.lua @@ -0,0 +1,16 @@ +local M = {} + +M.url = "https://github.com/echasnovski/mini.map" + +---@type tokyonight.HighlightsFn +function M.get(c) + -- stylua: ignore + return { + MiniMapNormal = "NormalFloat", + MiniMapSymbolCount = "Special", + MiniMapSymbolLine = "Title", + MiniMapSymbolView = "Delimiter", + } +end + +return M diff --git a/lua/tokyonight/groups/mini_notify.lua b/lua/tokyonight/groups/mini_notify.lua new file mode 100644 index 00000000..4d954e53 --- /dev/null +++ b/lua/tokyonight/groups/mini_notify.lua @@ -0,0 +1,15 @@ +local M = {} + +M.url = "https://github.com/echasnovski/mini.notify" + +---@type tokyonight.HighlightsFn +function M.get(c) + -- stylua: ignore + return { + MiniNotifyBorder = "FloatBorder", + MiniNotifyNormal = "NormalFloat", + MiniNotifyTitle = "FloatTitle", + } +end + +return M diff --git a/lua/tokyonight/groups/mini_operators.lua b/lua/tokyonight/groups/mini_operators.lua new file mode 100644 index 00000000..0cac4900 --- /dev/null +++ b/lua/tokyonight/groups/mini_operators.lua @@ -0,0 +1,13 @@ +local M = {} + +M.url = "https://github.com/echasnovski/mini.operators" + +---@type tokyonight.HighlightsFn +function M.get(c) + -- stylua: ignore + return { + MiniOperatorsExchangeFrom = "IncSearch", + } +end + +return M diff --git a/lua/tokyonight/groups/mini_pick.lua b/lua/tokyonight/groups/mini_pick.lua new file mode 100644 index 00000000..e5d07e0c --- /dev/null +++ b/lua/tokyonight/groups/mini_pick.lua @@ -0,0 +1,25 @@ +local M = {} + +M.url = "https://github.com/echasnovski/mini.pick" + +---@type tokyonight.HighlightsFn +function M.get(c) + -- stylua: ignore + return { + MiniPickBorder = "FloatBorder", + MiniPickBorderBusy = "DiagnosticFloatingWarn", + MiniPickBorderText = { fg = c.hint, bg = c.bg_float }, + MiniPickIconDirectory = "Directory", + MiniPickIconFile = "MiniPickNormal", + MiniPickHeader = "DiagnosticFloatingHint", + MiniPickMatchCurrent = "CursorLine", + MiniPickMatchMarked = "Visual", + MiniPickMatchRanges = "DiagnosticFloatingHint", + MiniPickNormal = "NormalFloat", + MiniPickPreviewLine = "CursorLine", + MiniPickPreviewRegion = "IncSearch", + MiniPickPrompt = { fg = c.info, bg = c.bg_float }, + } +end + +return M diff --git a/lua/tokyonight/groups/mini_starter.lua b/lua/tokyonight/groups/mini_starter.lua new file mode 100644 index 00000000..e5a9a6c0 --- /dev/null +++ b/lua/tokyonight/groups/mini_starter.lua @@ -0,0 +1,21 @@ +local M = {} + +M.url = "https://github.com/echasnovski/mini.starter" + +---@type tokyonight.HighlightsFn +function M.get(c, opts) + -- stylua: ignore + return { + MiniStarterCurrent = { nocombine = true }, + MiniStarterFooter = { fg = c.yellow, italic = true }, + MiniStarterHeader = { fg = c.blue }, + MiniStarterInactive = { fg = c.comment, style = opts.styles.comments }, + MiniStarterItem = { fg = c.fg, bg = opts.transparent and c.none or c.bg }, + MiniStarterItemBullet = { fg = c.border_highlight }, + MiniStarterItemPrefix = { fg = c.warning }, + MiniStarterQuery = { fg = c.info }, + MiniStarterSection = { fg = c.blue1 }, + } +end + +return M diff --git a/lua/tokyonight/groups/mini_statusline.lua b/lua/tokyonight/groups/mini_statusline.lua new file mode 100644 index 00000000..e02ca7bc --- /dev/null +++ b/lua/tokyonight/groups/mini_statusline.lua @@ -0,0 +1,22 @@ +local M = {} + +M.url = "https://github.com/echasnovski/mini.statusline" + +---@type tokyonight.HighlightsFn +function M.get(c) + -- stylua: ignore + return { + MiniStatuslineDevinfo = { fg = c.fg_dark, bg = c.fg_gutter }, + MiniStatuslineFileinfo = { fg = c.fg_dark, bg = c.fg_gutter }, + MiniStatuslineFilename = { fg = c.fg_dark, bg = c.bg_highlight }, + MiniStatuslineInactive = { fg = c.blue, bg = c.bg_statusline }, + MiniStatuslineModeCommand = { fg = c.black, bg = c.yellow, bold = true }, + MiniStatuslineModeInsert = { fg = c.black, bg = c.green, bold = true }, + MiniStatuslineModeNormal = { fg = c.black, bg = c.blue, bold = true }, + MiniStatuslineModeOther = { fg = c.black, bg = c.teal, bold = true }, + MiniStatuslineModeReplace = { fg = c.black, bg = c.red, bold = true }, + MiniStatuslineModeVisual = { fg = c.black, bg = c.magenta, bold = true }, + } +end + +return M diff --git a/lua/tokyonight/groups/mini_surround.lua b/lua/tokyonight/groups/mini_surround.lua new file mode 100644 index 00000000..fde8a52c --- /dev/null +++ b/lua/tokyonight/groups/mini_surround.lua @@ -0,0 +1,13 @@ +local M = {} + +M.url = "https://github.com/echasnovski/mini.surround" + +---@type tokyonight.HighlightsFn +function M.get(c) + -- stylua: ignore + return { + MiniSurround = { bg = c.orange, fg = c.black }, + } +end + +return M diff --git a/lua/tokyonight/groups/mini_tabline.lua b/lua/tokyonight/groups/mini_tabline.lua new file mode 100644 index 00000000..aa3ae1a2 --- /dev/null +++ b/lua/tokyonight/groups/mini_tabline.lua @@ -0,0 +1,22 @@ +local Util = require("tokyonight.util") + +local M = {} + +M.url = "https://github.com/echasnovski/mini.tabline" + +---@type tokyonight.HighlightsFn +function M.get(c) + -- stylua: ignore + return { + MiniTablineCurrent = { fg = c.fg, bg = c.fg_gutter }, + MiniTablineFill = { bg = c.black }, + MiniTablineHidden = { fg = c.dark5, bg = c.bg_statusline }, + MiniTablineModifiedCurrent = { fg = c.warning, bg = c.fg_gutter }, + MiniTablineModifiedHidden = { bg = c.bg_statusline, fg = Util.blend_bg(c.warning, 0.7) }, + MiniTablineModifiedVisible = { fg = c.warning, bg = c.bg_statusline }, + MiniTablineTabpagesection = { bg = c.bg_statusline, fg = c.none }, + MiniTablineVisible = { fg = c.fg, bg = c.bg_statusline }, + } +end + +return M diff --git a/lua/tokyonight/groups/mini_test.lua b/lua/tokyonight/groups/mini_test.lua new file mode 100644 index 00000000..ccc96bdc --- /dev/null +++ b/lua/tokyonight/groups/mini_test.lua @@ -0,0 +1,15 @@ +local M = {} + +M.url = "https://github.com/echasnovski/mini.test" + +---@type tokyonight.HighlightsFn +function M.get(c) + -- stylua: ignore + return { + MiniTestEmphasis = { bold = true }, + MiniTestFail = { fg = c.red, bold = true }, + MiniTestPass = { fg = c.green, bold = true }, + } +end + +return M diff --git a/lua/tokyonight/groups/mini_trailspace.lua b/lua/tokyonight/groups/mini_trailspace.lua new file mode 100644 index 00000000..8c2c7048 --- /dev/null +++ b/lua/tokyonight/groups/mini_trailspace.lua @@ -0,0 +1,13 @@ +local M = {} + +M.url = "https://github.com/echasnovski/mini.trailspace" + +---@type tokyonight.HighlightsFn +function M.get(c) + -- stylua: ignore + return { + MiniTrailspace = { bg = c.red }, + } +end + +return M diff --git a/lua/tokyonight/groups/navic.lua b/lua/tokyonight/groups/navic.lua new file mode 100644 index 00000000..cc9fb4ec --- /dev/null +++ b/lua/tokyonight/groups/navic.lua @@ -0,0 +1,16 @@ +local M = {} + +M.url = "https://github.com/SmiteshP/nvim-navic" + +---@type tokyonight.HighlightsFn +function M.get(c, opts) + -- stylua: ignore + local ret = { + NavicSeparator = { fg = c.fg, bg = c.none }, + NavicText = { fg = c.fg, bg = c.none }, + } + require("tokyonight.groups.kinds").kinds(ret, "NavicIcons%s") + return ret +end + +return M diff --git a/lua/tokyonight/groups/neo-tree.lua b/lua/tokyonight/groups/neo-tree.lua new file mode 100644 index 00000000..0543f770 --- /dev/null +++ b/lua/tokyonight/groups/neo-tree.lua @@ -0,0 +1,27 @@ +local Util = require("tokyonight.util") + +local M = {} + +M.url = "https://github.com/nvim-neo-tree/neo-tree.nvim" + +---@type tokyonight.HighlightsFn +function M.get(c, opts) + local dark = opts.styles.sidebars == "transparent" and c.none + or Util.blend(c.bg_sidebar, 0.8, opts.style == "day" and c.blue or "#000000") + -- stylua: ignore + return { + NeoTreeDimText = { fg = c.fg_gutter }, + NeoTreeFileName = { fg = c.fg_sidebar }, + NeoTreeGitModified = { fg = c.orange }, + NeoTreeGitStaged = { fg = c.green1 }, + NeoTreeGitUntracked = { fg = c.magenta }, + NeoTreeNormal = { fg = c.fg_sidebar, bg = c.bg_sidebar }, + NeoTreeNormalNC = { fg = c.fg_sidebar, bg = c.bg_sidebar }, + NeoTreeTabActive = { fg = c.blue, bg = c.bg_dark, bold = true }, + NeoTreeTabInactive = { fg = c.dark3, bg = dark }, + NeoTreeTabSeparatorActive = { fg = c.blue, bg = c.bg_dark }, + NeoTreeTabSeparatorInactive= { fg = c.bg, bg = dark }, + } +end + +return M diff --git a/lua/tokyonight/groups/neogit.lua b/lua/tokyonight/groups/neogit.lua new file mode 100644 index 00000000..87e59ba2 --- /dev/null +++ b/lua/tokyonight/groups/neogit.lua @@ -0,0 +1,21 @@ +local Util = require("tokyonight.util") + +local M = {} + +M.url = "https://github.com/TimUntersberger/neogit" + +---@type tokyonight.HighlightsFn +function M.get(c) + -- stylua: ignore + return { + NeogitBranch = { fg = c.magenta }, + NeogitRemote = { fg = c.purple }, + NeogitHunkHeader = { bg = c.bg_highlight, fg = c.fg }, + NeogitHunkHeaderHighlight = { bg = c.fg_gutter, fg = c.blue }, + NeogitDiffContextHighlight = { bg = Util.blend_bg(c.fg_gutter, 0.5), fg = c.fg_dark }, + NeogitDiffDeleteHighlight = { fg = c.git.delete, bg = c.diff.delete }, + NeogitDiffAddHighlight = { fg = c.git.add, bg = c.diff.add }, + } +end + +return M diff --git a/lua/tokyonight/groups/neotest.lua b/lua/tokyonight/groups/neotest.lua new file mode 100644 index 00000000..f6e55ed0 --- /dev/null +++ b/lua/tokyonight/groups/neotest.lua @@ -0,0 +1,28 @@ +local M = {} + +M.url = "https://github.com/nvim-neotest/neotest" + +---@type tokyonight.HighlightsFn +function M.get(c) + -- stylua: ignore + return { + NeotestAdapterName = { fg = c.purple, bold = true }, + NeotestBorder = { fg = c.blue }, + NeotestDir = { fg = c.blue }, + NeotestExpandMarker = { fg = c.fg_sidebar }, + NeotestFailed = { fg = c.red }, + NeotestFile = { fg = c.teal }, + NeotestFocused = { fg = c.yellow }, + NeotestIndent = { fg = c.fg_sidebar }, + NeotestMarked = { fg = c.blue }, + NeotestNamespace = { fg = c.green2 }, + NeotestPassed = { fg = c.green }, + NeotestRunning = { fg = c.yellow }, + NeotestSkipped = { fg = c.blue }, + NeotestTarget = { fg = c.blue }, + NeotestTest = { fg = c.fg_sidebar }, + NeotestWinSelect = { fg = c.blue }, + } +end + +return M diff --git a/lua/tokyonight/groups/noice.lua b/lua/tokyonight/groups/noice.lua new file mode 100644 index 00000000..5e6dfb0f --- /dev/null +++ b/lua/tokyonight/groups/noice.lua @@ -0,0 +1,21 @@ +local M = {} + +M.url = "https://github.com/folke/noice.nvim" + +---@type tokyonight.HighlightsFn +function M.get(c) + -- stylua: ignore + local ret = { + NoiceCmdlineIconInput = { fg = c.yellow }, + NoiceCmdlineIconLua = { fg = c.blue1 }, + NoiceCmdlinePopupBorderInput = { fg = c.yellow }, + NoiceCmdlinePopupBorderLua = { fg = c.blue1 }, + NoiceCmdlinePopupTitleInput = { fg = c.yellow }, + NoiceCmdlinePopupTitleLua = { fg = c.blue1 }, + NoiceCompletionItemKindDefault = { fg = c.fg_dark, bg = c.none }, + } + require("tokyonight.groups.kinds").kinds(ret, "NoiceCompletionItemKind%s") + return ret +end + +return M diff --git a/lua/tokyonight/groups/notify.lua b/lua/tokyonight/groups/notify.lua new file mode 100644 index 00000000..e2706f68 --- /dev/null +++ b/lua/tokyonight/groups/notify.lua @@ -0,0 +1,35 @@ +local Util = require("tokyonight.util") + +local M = {} + +M.url = "https://github.com/rcarriga/nvim-notify" + +---@type tokyonight.HighlightsFn +function M.get(c, opts) + -- stylua: ignore + return { + NotifyBackground = { fg = c.fg, bg = c.bg }, + NotifyDEBUGBody = { fg = c.fg, bg = opts.transparent and c.none or c.bg }, + NotifyDEBUGBorder = { fg = Util.blend_bg(c.comment, 0.3), bg = opts.transparent and c.none or c.bg }, + NotifyDEBUGIcon = { fg = c.comment }, + NotifyDEBUGTitle = { fg = c.comment }, + NotifyERRORBody = { fg = c.fg, bg = opts.transparent and c.none or c.bg }, + NotifyERRORBorder = { fg = Util.blend_bg(c.error, 0.3), bg = opts.transparent and c.none or c.bg }, + NotifyERRORIcon = { fg = c.error }, + NotifyERRORTitle = { fg = c.error }, + NotifyINFOBody = { fg = c.fg, bg = opts.transparent and c.none or c.bg }, + NotifyINFOBorder = { fg = Util.blend_bg(c.info, 0.3), bg = opts.transparent and c.none or c.bg }, + NotifyINFOIcon = { fg = c.info }, + NotifyINFOTitle = { fg = c.info }, + NotifyTRACEBody = { fg = c.fg, bg = opts.transparent and c.none or c.bg }, + NotifyTRACEBorder = { fg = Util.blend_bg(c.purple, 0.3), bg = opts.transparent and c.none or c.bg }, + NotifyTRACEIcon = { fg = c.purple }, + NotifyTRACETitle = { fg = c.purple }, + NotifyWARNBody = { fg = c.fg, bg = opts.transparent and c.none or c.bg }, + NotifyWARNBorder = { fg = Util.blend_bg(c.warning, 0.3), bg = opts.transparent and c.none or c.bg }, + NotifyWARNIcon = { fg = c.warning }, + NotifyWARNTitle = { fg = c.warning }, + } +end + +return M diff --git a/lua/tokyonight/groups/nvim-tree.lua b/lua/tokyonight/groups/nvim-tree.lua new file mode 100644 index 00000000..ac944a9f --- /dev/null +++ b/lua/tokyonight/groups/nvim-tree.lua @@ -0,0 +1,25 @@ +local M = {} + +M.url = "https://github.com/kyazdani42/nvim-tree.lua" + +---@type tokyonight.HighlightsFn +function M.get(c, opts) + -- stylua: ignore + return { + NvimTreeFolderIcon = { bg = c.none, fg = c.blue }, + NvimTreeGitDeleted = { fg = c.git.delete }, + NvimTreeGitDirty = { fg = c.git.change }, + NvimTreeGitNew = { fg = c.git.add }, + NvimTreeImageFile = { fg = c.fg_sidebar }, + NvimTreeIndentMarker = { fg = c.fg_gutter }, + NvimTreeNormal = { fg = c.fg_sidebar, bg = c.bg_sidebar }, + NvimTreeNormalNC = { fg = c.fg_sidebar, bg = c.bg_sidebar }, + NvimTreeOpenedFile = { bg = c.bg_highlight }, + NvimTreeRootFolder = { fg = c.blue, bold = true }, + NvimTreeSpecialFile = { fg = c.purple, underline = true }, + NvimTreeSymlink = { fg = c.blue }, + NvimTreeWinSeparator = { fg = opts.styles.sidebars == "transparent" and c.border or c.bg_sidebar, bg = c.bg_sidebar }, + } +end + +return M diff --git a/lua/tokyonight/groups/octo.lua b/lua/tokyonight/groups/octo.lua new file mode 100644 index 00000000..29270a4c --- /dev/null +++ b/lua/tokyonight/groups/octo.lua @@ -0,0 +1,25 @@ +local Util = require("tokyonight.util") + +local M = {} + +M.url = "https://github.com/pwntester/octo.nvim" + +---@type tokyonight.HighlightsFn +function M.get(c) + -- stylua: ignore + return { + OctoDetailsLabel = { fg = c.blue1, bold = true }, + OctoDetailsValue = "@variable.member", + OctoDirty = { fg = c.orange, bold = true }, + OctoIssueTitle = { fg = c.purple, bold = true }, + OctoStateChangesRequested = "DiagnosticVirtualTextWarn", + OctoStateClosed = "DiagnosticVirtualTextError", + OctoStateMerged = { bg = Util.blend_bg(c.magenta, 0.1), fg = c.magenta }, + OctoStateOpen = "DiagnosticVirtualTextHint", + OctoStatePending = "DiagnosticVirtualTextWarn", + OctoStatusColumn = { fg = c.blue1 }, + + } +end + +return M diff --git a/lua/tokyonight/groups/rainbow.lua b/lua/tokyonight/groups/rainbow.lua new file mode 100644 index 00000000..a1920791 --- /dev/null +++ b/lua/tokyonight/groups/rainbow.lua @@ -0,0 +1,20 @@ +local M = {} + +M.url = "https://github.com/HiPhish/rainbow-delimiters.nvim" + +---@type tokyonight.HighlightsFn +function M.get(c, opts) + -- stylua: ignore + return { + -- rainbow-delimiters + RainbowDelimiterRed = { fg = c.red }, + RainbowDelimiterOrange = { fg = c.orange }, + RainbowDelimiterYellow = { fg = c.yellow }, + RainbowDelimiterGreen = { fg = c.green }, + RainbowDelimiterBlue = { fg = c.blue }, + RainbowDelimiterViolet = { fg = c.purple }, + RainbowDelimiterCyan = { fg = c.cyan }, + } +end + +return M diff --git a/lua/tokyonight/groups/scrollbar.lua b/lua/tokyonight/groups/scrollbar.lua new file mode 100644 index 00000000..300684be --- /dev/null +++ b/lua/tokyonight/groups/scrollbar.lua @@ -0,0 +1,26 @@ +local M = {} + +M.url = "https://github.com/petertriho/nvim-scrollbar" + +---@type tokyonight.HighlightsFn +function M.get(c) + -- stylua: ignore + return { + ScrollbarError = { fg = c.error, bg = c.none }, + ScrollbarErrorHandle = { fg = c.error, bg = c.bg_highlight }, + ScrollbarHandle = { fg = c.none, bg = c.bg_highlight }, + ScrollbarHint = { fg = c.hint, bg = c.none }, + ScrollbarHintHandle = { fg = c.hint, bg = c.bg_highlight }, + ScrollbarInfo = { fg = c.info, bg = c.none }, + ScrollbarInfoHandle = { fg = c.info, bg = c.bg_highlight }, + ScrollbarMisc = { fg = c.purple, bg = c.none }, + ScrollbarMiscHandle = { fg = c.purple, bg = c.bg_highlight }, + ScrollbarSearch = { fg = c.orange, bg = c.none }, + ScrollbarSearchHandle = { fg = c.orange, bg = c.bg_highlight }, + ScrollbarWarn = { fg = c.warning, bg = c.none }, + ScrollbarWarnHandle = { fg = c.warning, bg = c.bg_highlight }, + + } +end + +return M diff --git a/lua/tokyonight/groups/semantic_tokens.lua b/lua/tokyonight/groups/semantic_tokens.lua new file mode 100644 index 00000000..3aefeb31 --- /dev/null +++ b/lua/tokyonight/groups/semantic_tokens.lua @@ -0,0 +1,55 @@ +local Util = require("tokyonight.util") + +local M = {} + +---@type tokyonight.HighlightsFn +function M.get(c) + -- stylua: ignore + return { + ["@lsp.type.boolean"] = "@boolean", + ["@lsp.type.builtinType"] = "@type.builtin", + ["@lsp.type.comment"] = "@comment", + ["@lsp.type.decorator"] = "@attribute", + ["@lsp.type.deriveHelper"] = "@attribute", + ["@lsp.type.enum"] = "@type", + ["@lsp.type.enumMember"] = "@constant", + ["@lsp.type.escapeSequence"] = "@string.escape", + ["@lsp.type.formatSpecifier"] = "@markup.list", + ["@lsp.type.generic"] = "@variable", + ["@lsp.type.interface"] = { fg = Util.blend_fg(c.blue1, 0.7) }, + ["@lsp.type.keyword"] = "@keyword", + ["@lsp.type.lifetime"] = "@keyword.storage", + ["@lsp.type.namespace"] = "@module", + ["@lsp.type.namespace.python"] = "@variable", + ["@lsp.type.number"] = "@number", + ["@lsp.type.operator"] = "@operator", + ["@lsp.type.parameter"] = "@variable.parameter", + ["@lsp.type.property"] = "@property", + ["@lsp.type.selfKeyword"] = "@variable.builtin", + ["@lsp.type.selfTypeKeyword"] = "@variable.builtin", + ["@lsp.type.string"] = "@string", + ["@lsp.type.typeAlias"] = "@type.definition", + ["@lsp.type.unresolvedReference"] = { undercurl = true, sp = c.error }, + ["@lsp.type.variable"] = {}, -- use treesitter styles for regular variables + ["@lsp.typemod.class.defaultLibrary"] = "@type.builtin", + ["@lsp.typemod.enum.defaultLibrary"] = "@type.builtin", + ["@lsp.typemod.enumMember.defaultLibrary"] = "@constant.builtin", + ["@lsp.typemod.function.defaultLibrary"] = "@function.builtin", + ["@lsp.typemod.keyword.async"] = "@keyword.coroutine", + ["@lsp.typemod.keyword.injected"] = "@keyword", + ["@lsp.typemod.macro.defaultLibrary"] = "@function.builtin", + ["@lsp.typemod.method.defaultLibrary"] = "@function.builtin", + ["@lsp.typemod.operator.injected"] = "@operator", + ["@lsp.typemod.string.injected"] = "@string", + ["@lsp.typemod.struct.defaultLibrary"] = "@type.builtin", + ["@lsp.typemod.type.defaultLibrary"] = { fg = Util.blend_bg(c.blue1, 0.8) }, + ["@lsp.typemod.typeAlias.defaultLibrary"] = { fg = Util.blend_bg(c.blue1, 0.8) }, + ["@lsp.typemod.variable.callable"] = "@function", + ["@lsp.typemod.variable.defaultLibrary"] = "@variable.builtin", + ["@lsp.typemod.variable.injected"] = "@variable", + ["@lsp.typemod.variable.static"] = "@constant", + + } +end + +return M diff --git a/lua/tokyonight/groups/sneak.lua b/lua/tokyonight/groups/sneak.lua new file mode 100644 index 00000000..f2e69c2b --- /dev/null +++ b/lua/tokyonight/groups/sneak.lua @@ -0,0 +1,14 @@ +local M = {} + +M.url = "https://github.com/justinmk/vim-sneak" + +---@type tokyonight.HighlightsFn +function M.get(c, opts) + -- stylua: ignore + return { + Sneak = { fg = c.bg_highlight, bg = c.magenta }, + SneakScope = { bg = c.bg_visual }, + } +end + +return M diff --git a/lua/tokyonight/groups/telescope.lua b/lua/tokyonight/groups/telescope.lua new file mode 100644 index 00000000..e88e5b83 --- /dev/null +++ b/lua/tokyonight/groups/telescope.lua @@ -0,0 +1,17 @@ +local M = {} + +M.url = "https://github.com/nvim-telescope/telescope.nvim" + +---@type tokyonight.HighlightsFn +function M.get(c, opts) + -- stylua: ignore + return { + TelescopeBorder = { fg = c.border_highlight, bg = c.bg_float }, + TelescopeNormal = { fg = c.fg, bg = c.bg_float }, + TelescopePromptBorder = { fg = c.orange, bg = c.bg_float }, + TelescopePromptTitle = { fg = c.orange, bg = c.bg_float }, + TelescopeResultsComment = { fg = c.dark3 }, + } +end + +return M diff --git a/lua/tokyonight/groups/treesitter-context.lua b/lua/tokyonight/groups/treesitter-context.lua new file mode 100644 index 00000000..749fcd53 --- /dev/null +++ b/lua/tokyonight/groups/treesitter-context.lua @@ -0,0 +1,15 @@ +local Util = require("tokyonight.util") + +local M = {} + +M.url = "https://github.com/nvim-treesitter/nvim-treesitter-context" + +---@type tokyonight.HighlightsFn +function M.get(c) + -- stylua: ignore + return { + TreesitterContext = { bg = Util.blend_bg(c.fg_gutter, 0.8) }, + } +end + +return M diff --git a/lua/tokyonight/groups/treesitter.lua b/lua/tokyonight/groups/treesitter.lua new file mode 100644 index 00000000..14365543 --- /dev/null +++ b/lua/tokyonight/groups/treesitter.lua @@ -0,0 +1,107 @@ +local Util = require("tokyonight.util") + +local M = {} + +---@type tokyonight.HighlightsFn +function M.get(c, opts) + -- stylua: ignore + local ret = { + ["@annotation"] = "PreProc", + ["@attribute"] = "PreProc", + ["@boolean"] = "Boolean", + ["@character"] = "Character", + ["@character.printf"] = "SpecialChar", + ["@character.special"] = "SpecialChar", + ["@comment"] = "Comment", + ["@comment.error"] = { fg = c.error }, + ["@comment.hint"] = { fg = c.hint }, + ["@comment.info"] = { fg = c.info }, + ["@comment.note"] = { fg = c.hint }, + ["@comment.todo"] = { fg = c.todo }, + ["@comment.warning"] = { fg = c.warning }, + ["@constant"] = "Constant", + ["@constant.builtin"] = "Special", + ["@constant.macro"] = "Define", + ["@constructor"] = { fg = c.magenta }, -- For constructor calls and definitions: `= { }` in Lua, and Java constructors. + ["@constructor.tsx"] = { fg = c.blue1 }, + ["@diff.delta"] = "DiffChange", + ["@diff.minus"] = "DiffDelete", + ["@diff.plus"] = "DiffAdd", + ["@function"] = "Function", + ["@function.builtin"] = "Special", + ["@function.call"] = "@function", + ["@function.macro"] = "Macro", + ["@function.method"] = "Function", + ["@function.method.call"] = "@function.method", + ["@keyword"] = { fg = c.purple, style = opts.styles.keywords }, -- For keywords that don't fall in previous categories. + ["@keyword.conditional"] = "Conditional", + ["@keyword.coroutine"] = "@keyword", + ["@keyword.debug"] = "Debug", + ["@keyword.directive"] = "PreProc", + ["@keyword.directive.define"] = "Define", + ["@keyword.exception"] = "Exception", + ["@keyword.function"] = { fg = c.magenta, style = opts.styles.functions }, -- For keywords used to define a function. + ["@keyword.import"] = "Include", + ["@keyword.operator"] = "@operator", + ["@keyword.repeat"] = "Repeat", + ["@keyword.return"] = "@keyword", + ["@keyword.storage"] = "StorageClass", + ["@label"] = { fg = c.blue }, -- For labels: `label:` in C and `:label:` in Lua. + ["@markup"] = "@none", + ["@markup.emphasis"] = { italic = true }, + ["@markup.environment"] = "Macro", + ["@markup.environment.name"] = "Type", + ["@markup.heading"] = "Title", + ["@markup.italic"] = { italic = true }, + ["@markup.link"] = { fg = c.teal }, + ["@markup.link.label"] = "SpecialChar", + ["@markup.link.label.symbol"] = "Identifier", + ["@markup.link.url"] = "Underlined", + ["@markup.list"] = { fg = c.blue5 }, -- For special punctutation that does not fall in the categories before. + ["@markup.list.checked"] = { fg = c.green1 }, -- For brackets and parens. + ["@markup.list.markdown"] = { fg = c.orange, bold = true }, + ["@markup.list.unchecked"] = { fg = c.blue }, -- For brackets and parens. + ["@markup.math"] = "Special", + ["@markup.raw"] = "String", + ["@markup.raw.markdown_inline"] = { bg = c.terminal_black, fg = c.blue }, + ["@markup.strikethrough"] = { strikethrough = true }, + ["@markup.strong"] = { bold = true }, + ["@markup.underline"] = { underline = true }, + ["@module"] = "Include", + ["@module.builtin"] = { fg = c.red }, -- Variable names that are defined by the languages, like `this` or `self`. + ["@namespace.builtin"] = "@variable.builtin", + ["@none"] = {}, + ["@number"] = "Number", + ["@number.float"] = "Float", + ["@operator"] = { fg = c.blue5 }, -- For any operator: `+`, but also `->` and `*` in C. + ["@property"] = { fg = c.green1 }, + ["@punctuation.bracket"] = { fg = c.fg_dark }, -- For brackets and parens. + ["@punctuation.delimiter"] = { fg = c.blue5 }, -- For delimiters ie: `.` + ["@punctuation.special"] = { fg = c.blue5 }, -- For special symbols (e.g. `{}` in string interpolation) + ["@string"] = "String", + ["@string.documentation"] = { fg = c.yellow }, + ["@string.escape"] = { fg = c.magenta }, -- For escape characters within a string. + ["@string.regexp"] = { fg = c.blue6 }, -- For regexes. + ["@tag"] = "Label", + ["@tag.attribute"] = "@property", + ["@tag.delimiter"] = "Delimiter", + ["@tag.delimiter.tsx"] = { fg = Util.blend_bg(c.blue, 0.7) }, + ["@tag.tsx"] = { fg = c.red }, + ["@type"] = "Type", + ["@type.builtin"] = { fg = Util.blend_bg(c.blue1, 0.8) }, + ["@type.definition"] = "Typedef", + ["@type.qualifier"] = "@keyword", + ["@variable"] = { fg = c.fg, style = opts.styles.variables }, -- Any variable name that does not have another highlight. + ["@variable.builtin"] = { fg = c.red }, -- Variable names that are defined by the languages, like `this` or `self`. + ["@variable.member"] = { fg = c.green1 }, -- For fields. + ["@variable.parameter"] = { fg = c.yellow }, -- For parameters of a function. + ["@variable.parameter.builtin"] = { fg = Util.blend_fg(c.yellow, 0.8) }, -- For builtin parameters of a function, e.g. "..." or Smali's p[1-99] + } + + for i, color in ipairs(c.rainbow) do + ret["@markup.heading." .. i .. ".markdown"] = { fg = color, bold = true } + end + return ret +end + +return M diff --git a/lua/tokyonight/groups/trouble.lua b/lua/tokyonight/groups/trouble.lua new file mode 100644 index 00000000..d753e3ea --- /dev/null +++ b/lua/tokyonight/groups/trouble.lua @@ -0,0 +1,15 @@ +local M = {} + +M.url = "https://github.com/folke/trouble.nvim" + +---@type tokyonight.HighlightsFn +function M.get(c, opts) + -- stylua: ignore + return { + TroubleText = { fg = c.fg_dark }, + TroubleCount = { fg = c.magenta, bg = c.fg_gutter }, + TroubleNormal = { fg = c.fg, bg = c.bg_sidebar }, + } +end + +return M diff --git a/lua/tokyonight/groups/vimwiki.lua b/lua/tokyonight/groups/vimwiki.lua new file mode 100644 index 00000000..92b27772 --- /dev/null +++ b/lua/tokyonight/groups/vimwiki.lua @@ -0,0 +1,22 @@ +local M = {} + +M.url = "https://github.com/lukas-reineke/headlines.nvim" + +---@type tokyonight.HighlightsFn +function M.get(c, opts) + -- stylua: ignore + local ret = { + VimwikiLink = { fg = c.blue, bg = c.none }, + VimwikiHeaderChar = { fg = c.yellow, bg = c.none }, + VimwikiHR = { fg = c.yellow, bg = c.none }, + VimwikiList = { fg = c.orange, bg = c.none }, + VimwikiTag = { fg = c.green, bg = c.none }, + VimwikiMarkers = { fg = c.blue, bg = c.none }, + } + for i, color in ipairs(c.rainbow) do + ret["VimwikiHeaer" .. i] = { fg = color, bg = c.none, bold = true } + end + return ret +end + +return M diff --git a/lua/tokyonight/groups/which-key.lua b/lua/tokyonight/groups/which-key.lua new file mode 100644 index 00000000..395af8e5 --- /dev/null +++ b/lua/tokyonight/groups/which-key.lua @@ -0,0 +1,19 @@ +local M = {} + +M.url = "https://github.com/folke/which-key.nvim" + +---@type tokyonight.HighlightsFn +function M.get(c, opts) + -- stylua: ignore + return { + WhichKey = { fg = c.cyan }, + WhichKeyGroup = { fg = c.blue }, + WhichKeyDesc = { fg = c.magenta }, + WhichKeySeperator = { fg = c.comment }, + WhichKeySeparator = { fg = c.comment }, + WhichKeyFloat = { bg = c.bg_sidebar }, + WhichKeyValue = { fg = c.dark5 }, + } +end + +return M diff --git a/lua/tokyonight/groups/yanky.lua b/lua/tokyonight/groups/yanky.lua new file mode 100644 index 00000000..7c4523cc --- /dev/null +++ b/lua/tokyonight/groups/yanky.lua @@ -0,0 +1,14 @@ +local M = {} + +M.url = "https://github.com/gbprod/yanky.nvim" + +---@type tokyonight.HighlightsFn +function M.get(c, opts) + -- stylua: ignore + return { + YankyPut = "Search", + YankyYanked = "IncSearch", + } +end + +return M diff --git a/lua/tokyonight/init.lua b/lua/tokyonight/init.lua index 37600662..1c5ce3c7 100644 --- a/lua/tokyonight/init.lua +++ b/lua/tokyonight/init.lua @@ -1,31 +1,26 @@ -local util = require("tokyonight.util") -local theme = require("tokyonight.theme") local config = require("tokyonight.config") local M = {} +---@type {light?: string, dark?: string} +M.styles = {} -function M._load(style) - if style and not M._style then - M._style = require("tokyonight.config").options.style - end - if not style and M._style then - require("tokyonight.config").options.style = M._style - M._style = nil - end - M.load({ style = style, use_background = style == nil }) -end - ----@param opts Config|nil +---@param opts? tokyonight.Config function M.load(opts) - if opts then - require("tokyonight.config").extend(opts) + opts = require("tokyonight.config").extend(opts) + local bg = vim.o.background + local style_bg = opts.style == "day" and "light" or "dark" + + if bg ~= style_bg then + if vim.g.colors_name == "tokyonight-" .. opts.style then + opts.style = bg == "light" and (M.styles.light or "day") or (M.styles.dark or "moon") + else + vim.o.background = style_bg + end end - util.load(theme.setup()) + M.styles[vim.o.background] = opts.style + return require("tokyonight.theme").setup(opts) end M.setup = config.setup --- keep for backward compatibility -M.colorscheme = M.load - return M diff --git a/lua/tokyonight/theme.lua b/lua/tokyonight/theme.lua index 2706b1bd..bcc09f7f 100644 --- a/lua/tokyonight/theme.lua +++ b/lua/tokyonight/theme.lua @@ -1,883 +1,64 @@ -local util = require("tokyonight.util") -local colors = require("tokyonight.colors") +local Util = require("tokyonight.util") local M = {} --- ----@class Highlight ----@field fg string|nil ----@field bg string|nil ----@field sp string|nil ----@field style string|nil|Highlight ----@field link string|nil ----@alias Highlights table +---@param opts? tokyonight.Config +function M.setup(opts) + opts = require("tokyonight.config").extend(opts) ----@return Theme -function M.setup() - local config = require("tokyonight.config") - local options = config.options - ---@class Theme - ---@field highlights Highlights - local theme = { - config = options, - colors = colors.setup(), - } + local colors = require("tokyonight.colors").setup(opts) + local groups = require("tokyonight.groups").setup(colors, opts) - local c = theme.colors - - theme.highlights = { - Foo = { bg = c.magenta2, fg = c.fg }, - - Comment = { fg = c.comment, style = options.styles.comments }, -- any comment - ColorColumn = { bg = c.black }, -- used for the columns set with 'colorcolumn' - Conceal = { fg = c.dark5 }, -- placeholder characters substituted for concealed text (see 'conceallevel') - Cursor = { fg = c.bg, bg = c.fg }, -- character under the cursor - lCursor = { fg = c.bg, bg = c.fg }, -- the character under the cursor when |language-mapping| is used (see 'guicursor') - CursorIM = { fg = c.bg, bg = c.fg }, -- like Cursor, but used when in IME mode |CursorIM| - CursorColumn = { bg = c.bg_highlight }, -- Screen-column at the cursor, when 'cursorcolumn' is set. - CursorLine = { bg = c.bg_highlight }, -- Screen-line at the cursor, when 'cursorline' is set. Low-priority if foreground (ctermfg OR guifg) is not set. - Directory = { fg = c.blue }, -- directory names (and other special names in listings) - DiffAdd = { bg = c.diff.add }, -- diff mode: Added line |diff.txt| - DiffChange = { bg = c.diff.change }, -- diff mode: Changed line |diff.txt| - DiffDelete = { bg = c.diff.delete }, -- diff mode: Deleted line |diff.txt| - DiffText = { bg = c.diff.text }, -- diff mode: Changed text within a changed line |diff.txt| - EndOfBuffer = { fg = c.bg }, -- filler lines (~) after the end of the buffer. By default, this is highlighted like |hl-NonText|. - -- TermCursor = { }, -- cursor in a focused terminal - -- TermCursorNC= { }, -- cursor in an unfocused terminal - ErrorMsg = { fg = c.error }, -- error messages on the command line - VertSplit = { fg = c.border }, -- the column separating vertically split windows - WinSeparator = { fg = c.border, bold = true }, -- the column separating vertically split windows - Folded = { fg = c.blue, bg = c.fg_gutter }, -- line used for closed folds - FoldColumn = { bg = options.transparent and c.none or c.bg, fg = c.comment }, -- 'foldcolumn' - SignColumn = { bg = options.transparent and c.none or c.bg, fg = c.fg_gutter }, -- column where |signs| are displayed - SignColumnSB = { bg = c.bg_sidebar, fg = c.fg_gutter }, -- column where |signs| are displayed - Substitute = { bg = c.red, fg = c.black }, -- |:substitute| replacement text highlighting - LineNr = { fg = c.fg_gutter }, -- Line number for ":number" and ":#" commands, and when 'number' or 'relativenumber' option is set. - CursorLineNr = { fg = c.dark5 }, -- Like LineNr when 'cursorline' or 'relativenumber' is set for the cursor line. - MatchParen = { fg = c.orange, bold = true }, -- The character under the cursor or just before it, if it is a paired bracket, and its match. |pi_paren.txt| - ModeMsg = { fg = c.fg_dark, bold = true }, -- 'showmode' message (e.g., "-- INSERT -- ") - MsgArea = { fg = c.fg_dark }, -- Area for messages and cmdline - -- MsgSeparator= { }, -- Separator for scrolled messages, `msgsep` flag of 'display' - MoreMsg = { fg = c.blue }, -- |more-prompt| - NonText = { fg = c.dark3 }, -- '@' at the end of the window, characters from 'showbreak' and other characters that do not really exist in the text (e.g., ">" displayed when a double-wide character doesn't fit at the end of the line). See also |hl-EndOfBuffer|. - Normal = { fg = c.fg, bg = options.transparent and c.none or c.bg }, -- normal text - NormalNC = { fg = c.fg, bg = options.transparent and c.none or options.dim_inactive and c.bg_dark or c.bg }, -- normal text in non-current windows - NormalSB = { fg = c.fg_sidebar, bg = c.bg_sidebar }, -- normal text in sidebar - NormalFloat = { fg = c.fg_float, bg = c.bg_float }, -- Normal text in floating windows. - FloatBorder = { fg = c.border_highlight, bg = c.bg_float }, - FloatTitle = { fg = c.border_highlight, bg = c.bg_float }, - Pmenu = { bg = c.bg_popup, fg = c.fg }, -- Popup menu: normal item. - PmenuSel = { bg = util.darken(c.fg_gutter, 0.8) }, -- Popup menu: selected item. - PmenuSbar = { bg = util.lighten(c.bg_popup, 0.95) }, -- Popup menu: scrollbar. - PmenuThumb = { bg = c.fg_gutter }, -- Popup menu: Thumb of the scrollbar. - Question = { fg = c.blue }, -- |hit-enter| prompt and yes/no questions - QuickFixLine = { bg = c.bg_visual, bold = true }, -- Current |quickfix| item in the quickfix window. Combined with |hl-CursorLine| when the cursor is there. - Search = { bg = c.bg_search, fg = c.fg }, -- Last search pattern highlighting (see 'hlsearch'). Also used for similar items that need to stand out. - IncSearch = { bg = c.orange, fg = c.black }, -- 'incsearch' highlighting; also used for the text replaced with ":s///c" - CurSearch = { link = "IncSearch" }, - SpecialKey = { fg = c.dark3 }, -- Unprintable characters: text displayed differently from what it really is. But not 'listchars' whitespace. |hl-Whitespace| - SpellBad = { sp = c.error, undercurl = true }, -- Word that is not recognized by the spellchecker. |spell| Combined with the highlighting used otherwise. - SpellCap = { sp = c.warning, undercurl = true }, -- Word that should start with a capital. |spell| Combined with the highlighting used otherwise. - SpellLocal = { sp = c.info, undercurl = true }, -- Word that is recognized by the spellchecker as one that is used in another region. |spell| Combined with the highlighting used otherwise. - SpellRare = { sp = c.hint, undercurl = true }, -- Word that is recognized by the spellchecker as one that is hardly ever used. |spell| Combined with the highlighting used otherwise. - StatusLine = { fg = c.fg_sidebar, bg = c.bg_statusline }, -- status line of current window - StatusLineNC = { fg = c.fg_gutter, bg = c.bg_statusline }, -- status lines of not-current windows Note: if this is equal to "StatusLine" Vim will use "^^^" in the status line of the current window. - TabLine = { bg = c.bg_statusline, fg = c.fg_gutter }, -- tab pages line, not active tab page label - TabLineFill = { bg = c.black }, -- tab pages line, where there are no labels - TabLineSel = { fg = c.black, bg = c.blue }, -- tab pages line, active tab page label - Title = { fg = c.blue, bold = true }, -- titles for output from ":set all", ":autocmd" etc. - Visual = { bg = c.bg_visual }, -- Visual mode selection - VisualNOS = { bg = c.bg_visual }, -- Visual mode selection when vim is "Not Owning the Selection". - WarningMsg = { fg = c.warning }, -- warning messages - Whitespace = { fg = c.fg_gutter }, -- "nbsp", "space", "tab" and "trail" in 'listchars' - WildMenu = { bg = c.bg_visual }, -- current match in 'wildmenu' completion - WinBar = { link = "StatusLine" }, -- window bar - WinBarNC = { link = "StatusLineNC" }, -- window bar in inactive windows - - -- These groups are not listed as default vim groups, - -- but they are defacto standard group names for syntax highlighting. - -- commented out groups should chain up to their "preferred" group by - -- default, - -- Uncomment and edit if you want more specific syntax highlighting. - - Constant = { fg = c.orange }, -- (preferred) any constant - String = { fg = c.green }, -- a string constant: "this is a string" - Character = { fg = c.green }, -- a character constant: 'c', '\n' - -- Number = { }, -- a number constant: 234, 0xff - -- Boolean = { }, -- a boolean constant: TRUE, false - -- Float = { }, -- a floating point constant: 2.3e10 - - Identifier = { fg = c.magenta, style = options.styles.variables }, -- (preferred) any variable name - Function = { fg = c.blue, style = options.styles.functions }, -- function name (also: methods for classes) - - Statement = { fg = c.magenta }, -- (preferred) any statement - -- Conditional = { }, -- if, then, else, endif, switch, etc. - -- Repeat = { }, -- for, do, while, etc. - -- Label = { }, -- case, default, etc. - Operator = { fg = c.blue5 }, -- "sizeof", "+", "*", etc. - Keyword = { fg = c.cyan, style = options.styles.keywords }, -- any other keyword - -- Exception = { }, -- try, catch, throw - - PreProc = { fg = c.cyan }, -- (preferred) generic Preprocessor - -- Include = { }, -- preprocessor #include - -- Define = { }, -- preprocessor #define - -- Macro = { }, -- same as Define - -- PreCondit = { }, -- preprocessor #if, #else, #endif, etc. - - Type = { fg = c.blue1 }, -- (preferred) int, long, char, etc. - -- StorageClass = { }, -- static, register, volatile, etc. - -- Structure = { }, -- struct, union, enum, etc. - -- Typedef = { }, -- A typedef - - Special = { fg = c.blue1 }, -- (preferred) any special symbol - -- SpecialChar = { }, -- special character in a constant - -- Tag = { }, -- you can use CTRL-] on this - Delimiter = { link = "Special" }, -- character that needs attention - -- SpecialComment= { }, -- special things inside a comment - Debug = { fg = c.orange }, -- debugging statements - - Underlined = { underline = true }, -- (preferred) text that stands out, HTML links - Bold = { bold = true }, - Italic = { italic = true }, - - -- ("Ignore", below, may be invisible...) - -- Ignore = { }, -- (preferred) left blank, hidden |hl-Ignore| - - Error = { fg = c.error }, -- (preferred) any erroneous construct - Todo = { bg = c.yellow, fg = c.bg }, -- (preferred) anything that needs extra attention; mostly the keywords TODO FIXME and XXX - - qfLineNr = { fg = c.dark5 }, - qfFileName = { fg = c.blue }, - - htmlH1 = { fg = c.magenta, bold = true }, - htmlH2 = { fg = c.blue, bold = true }, - - -- mkdHeading = { fg = c.orange, bold = true }, - -- mkdCode = { bg = c.terminal_black, fg = c.fg }, - mkdCodeDelimiter = { bg = c.terminal_black, fg = c.fg }, - mkdCodeStart = { fg = c.teal, bold = true }, - mkdCodeEnd = { fg = c.teal, bold = true }, - -- mkdLink = { fg = c.blue, underline = true }, - - markdownHeadingDelimiter = { fg = c.orange, bold = true }, - markdownCode = { fg = c.teal }, - markdownCodeBlock = { fg = c.teal }, - markdownH1 = { fg = c.magenta, bold = true }, - markdownH2 = { fg = c.blue, bold = true }, - markdownLinkText = { fg = c.blue, underline = true }, - - ["helpCommand"] = { bg = c.terminal_black, fg = c.blue }, - - debugPC = { bg = c.bg_sidebar }, -- used for highlighting the current line in terminal-debug - debugBreakpoint = { bg = util.darken(c.info, 0.1), fg = c.info }, -- used for breakpoint colors in terminal-debug - - dosIniLabel = { link = "@property" }, - - -- These groups are for the native LSP client. Some other LSP clients may - -- use these groups, or use their own. Consult your LSP client's - -- documentation. - LspReferenceText = { bg = c.fg_gutter }, -- used for highlighting "text" references - LspReferenceRead = { bg = c.fg_gutter }, -- used for highlighting "read" references - LspReferenceWrite = { bg = c.fg_gutter }, -- used for highlighting "write" references - - DiagnosticError = { fg = c.error }, -- Used as the base highlight group. Other Diagnostic highlights link to this by default - DiagnosticWarn = { fg = c.warning }, -- Used as the base highlight group. Other Diagnostic highlights link to this by default - DiagnosticInfo = { fg = c.info }, -- Used as the base highlight group. Other Diagnostic highlights link to this by default - DiagnosticHint = { fg = c.hint }, -- Used as the base highlight group. Other Diagnostic highlights link to this by default - DiagnosticUnnecessary = { fg = c.terminal_black }, -- Used as the base highlight group. Other Diagnostic highlights link to this by default - - DiagnosticVirtualTextError = { bg = util.darken(c.error, 0.1), fg = c.error }, -- Used for "Error" diagnostic virtual text - DiagnosticVirtualTextWarn = { bg = util.darken(c.warning, 0.1), fg = c.warning }, -- Used for "Warning" diagnostic virtual text - DiagnosticVirtualTextInfo = { bg = util.darken(c.info, 0.1), fg = c.info }, -- Used for "Information" diagnostic virtual text - DiagnosticVirtualTextHint = { bg = util.darken(c.hint, 0.1), fg = c.hint }, -- Used for "Hint" diagnostic virtual text - - DiagnosticUnderlineError = { undercurl = true, sp = c.error }, -- Used to underline "Error" diagnostics - DiagnosticUnderlineWarn = { undercurl = true, sp = c.warning }, -- Used to underline "Warning" diagnostics - DiagnosticUnderlineInfo = { undercurl = true, sp = c.info }, -- Used to underline "Information" diagnostics - DiagnosticUnderlineHint = { undercurl = true, sp = c.hint }, -- Used to underline "Hint" diagnostics - - LspSignatureActiveParameter = { bg = util.darken(c.bg_visual, 0.4), bold = true }, - LspCodeLens = { fg = c.comment }, - LspInlayHint = { bg = util.darken(c.blue7, 0.1), fg = c.dark3 }, - - LspInfoBorder = { fg = c.border_highlight, bg = c.bg_float }, - - ALEErrorSign = { fg = c.error }, - ALEWarningSign = { fg = c.warning }, - - DapStoppedLine = { bg = util.darken(c.warning, 0.1) }, -- Used for "Warning" diagnostic virtual text - - -- These groups are for the Neovim tree-sitter highlights. - ["@annotation"] = { link = "PreProc" }, - ["@attribute"] = { link = "PreProc" }, - ["@boolean"] = { link = "Boolean" }, - ["@character"] = { link = "Character" }, - ["@character.special"] = { link = "SpecialChar" }, - ["@comment"] = { link = "Comment" }, - ["@keyword.conditional"] = { link = "Conditional" }, - ["@constant"] = { link = "Constant" }, - ["@constant.builtin"] = { link = "Special" }, - ["@constant.macro"] = { link = "Define" }, - ["@keyword.debug"] = { link = "Debug" }, - ["@keyword.directive.define"] = { link = "Define" }, - ["@keyword.exception"] = { link = "Exception" }, - ["@number.float"] = { link = "Float" }, - ["@function"] = { link = "Function" }, - ["@function.builtin"] = { link = "Special" }, - ["@function.call"] = { link = "@function" }, - ["@function.macro"] = { link = "Macro" }, - ["@keyword.import"] = { link = "Include" }, - ["@keyword.coroutine"] = { link = "@keyword" }, - ["@keyword.operator"] = { link = "@operator" }, - ["@keyword.return"] = { link = "@keyword" }, - ["@function.method"] = { link = "Function" }, - ["@function.method.call"] = { link = "@function.method" }, - ["@namespace.builtin"] = { link = "@variable.builtin" }, - ["@none"] = {}, - ["@number"] = { link = "Number" }, - ["@keyword.directive"] = { link = "PreProc" }, - ["@keyword.repeat"] = { link = "Repeat" }, - ["@keyword.storage"] = { link = "StorageClass" }, - ["@string"] = { link = "String" }, - ["@markup.link.label"] = { link = "SpecialChar" }, - ["@markup.link.label.symbol"] = { link = "Identifier" }, - ["@tag"] = { link = "Label" }, - ["@tag.attribute"] = { link = "@property" }, - ["@tag.delimiter"] = { link = "Delimiter" }, - ["@markup"] = { link = "@none" }, - ["@markup.environment"] = { link = "Macro" }, - ["@markup.environment.name"] = { link = "Type" }, - ["@markup.raw"] = { link = "String" }, - ["@markup.math"] = { link = "Special" }, - ["@markup.strong"] = { bold = true }, - ["@markup.emphasis"] = { italic = true }, - ["@markup.strikethrough"] = { strikethrough = true }, - ["@markup.underline"] = { underline = true }, - ["@markup.heading"] = { link = "Title" }, - ["@comment.note"] = { fg = c.hint }, - ["@comment.error"] = { fg = c.error }, - ["@comment.hint"] = { fg = c.hint }, - ["@comment.info"] = { fg = c.info }, - ["@comment.warning"] = { fg = c.warning }, - ["@comment.todo"] = { fg = c.todo }, - ["@markup.link.url"] = { link = "Underlined" }, - ["@type"] = { link = "Type" }, - ["@type.definition"] = { link = "Typedef" }, - ["@type.qualifier"] = { link = "@keyword" }, - - --- Misc - -- TODO: - -- ["@comment.documentation"] = { }, - ["@operator"] = { fg = c.blue5 }, -- For any operator: `+`, but also `->` and `*` in C. - - --- Punctuation - ["@punctuation.delimiter"] = { fg = c.blue5 }, -- For delimiters ie: `.` - ["@punctuation.bracket"] = { fg = c.fg_dark }, -- For brackets and parens. - ["@punctuation.special"] = { fg = c.blue5 }, -- For special symbols (e.g. `{}` in string interpolation) - ["@markup.list"] = { fg = c.blue5 }, -- For special punctutation that does not fall in the catagories before. - ["@markup.list.markdown"] = { fg = c.orange, bold = true }, - - --- Literals - ["@string.documentation"] = { fg = c.yellow }, - ["@string.regexp"] = { fg = c.blue6 }, -- For regexes. - ["@string.escape"] = { fg = c.magenta }, -- For escape characters within a string. - - --- Functions - ["@constructor"] = { fg = c.magenta }, -- For constructor calls and definitions: `= { }` in Lua, and Java constructors. - ["@variable.parameter"] = { fg = c.yellow }, -- For parameters of a function. - ["@variable.parameter.builtin"] = { fg = util.lighten(c.yellow, 0.8) }, -- For builtin parameters of a function, e.g. "..." or Smali's p[1-99] - - --- Keywords - ["@keyword"] = { fg = c.purple, style = options.styles.keywords }, -- For keywords that don't fall in previous categories. - ["@keyword.function"] = { fg = c.magenta, style = options.styles.functions }, -- For keywords used to define a fuction. - - ["@label"] = { fg = c.blue }, -- For labels: `label:` in C and `:label:` in Lua. - - --- Types - ["@type.builtin"] = { fg = util.darken(c.blue1, 0.8) }, - ["@variable.member"] = { fg = c.green1 }, -- For fields. - ["@property"] = { fg = c.green1 }, - - --- Identifiers - ["@variable"] = { fg = c.fg, style = options.styles.variables }, -- Any variable name that does not have another highlight. - ["@variable.builtin"] = { fg = c.red }, -- Variable names that are defined by the languages, like `this` or `self`. - ["@module.builtin"] = { fg = c.red }, -- Variable names that are defined by the languages, like `this` or `self`. - - --- Text - -- ["@markup.raw.markdown"] = { fg = c.blue }, - ["@markup.raw.markdown_inline"] = { bg = c.terminal_black, fg = c.blue }, - ["@markup.link"] = { fg = c.teal }, - - ["@markup.list.unchecked"] = { fg = c.blue }, -- For brackets and parens. - ["@markup.list.checked"] = { fg = c.green1 }, -- For brackets and parens. - - ["@diff.plus"] = { link = "DiffAdd" }, - ["@diff.minus"] = { link = "DiffDelete" }, - ["@diff.delta"] = { link = "DiffChange" }, - - ["@module"] = { link = "Include" }, - - -- tsx - ["@tag.tsx"] = { fg = c.red }, - ["@constructor.tsx"] = { fg = c.blue1 }, - ["@tag.delimiter.tsx"] = { fg = util.darken(c.blue, 0.7) }, - - -- LSP Semantic Token Groups - ["@lsp.type.boolean"] = { link = "@boolean" }, - ["@lsp.type.builtinType"] = { link = "@type.builtin" }, - ["@lsp.type.comment"] = { link = "@comment" }, - ["@lsp.type.decorator"] = { link = "@attribute" }, - ["@lsp.type.deriveHelper"] = { link = "@attribute" }, - ["@lsp.type.enum"] = { link = "@type" }, - ["@lsp.type.enumMember"] = { link = "@constant" }, - ["@lsp.type.escapeSequence"] = { link = "@string.escape" }, - ["@lsp.type.formatSpecifier"] = { link = "@markup.list" }, - ["@lsp.type.generic"] = { link = "@variable" }, - ["@lsp.type.interface"] = { fg = util.lighten(c.blue1, 0.7) }, - ["@lsp.type.keyword"] = { link = "@keyword" }, - ["@lsp.type.lifetime"] = { link = "@keyword.storage" }, - ["@lsp.type.namespace"] = { link = "@module" }, - ["@lsp.type.number"] = { link = "@number" }, - ["@lsp.type.operator"] = { link = "@operator" }, - ["@lsp.type.parameter"] = { link = "@variable.parameter" }, - ["@lsp.type.property"] = { link = "@property" }, - ["@lsp.type.selfKeyword"] = { link = "@variable.builtin" }, - ["@lsp.type.selfTypeKeyword"] = { link = "@variable.builtin" }, - ["@lsp.type.string"] = { link = "@string" }, - ["@lsp.type.typeAlias"] = { link = "@type.definition" }, - ["@lsp.type.unresolvedReference"] = { undercurl = true, sp = c.error }, - ["@lsp.type.variable"] = {}, -- use treesitter styles for regular variables - ["@lsp.typemod.class.defaultLibrary"] = { link = "@type.builtin" }, - ["@lsp.typemod.enum.defaultLibrary"] = { link = "@type.builtin" }, - ["@lsp.typemod.enumMember.defaultLibrary"] = { link = "@constant.builtin" }, - ["@lsp.typemod.function.defaultLibrary"] = { link = "@function.builtin" }, - ["@lsp.typemod.keyword.async"] = { link = "@keyword.coroutine" }, - ["@lsp.typemod.keyword.injected"] = { link = "@keyword" }, - ["@lsp.typemod.macro.defaultLibrary"] = { link = "@function.builtin" }, - ["@lsp.typemod.method.defaultLibrary"] = { link = "@function.builtin" }, - ["@lsp.typemod.operator.injected"] = { link = "@operator" }, - ["@lsp.typemod.string.injected"] = { link = "@string" }, - ["@lsp.typemod.struct.defaultLibrary"] = { link = "@type.builtin" }, - ["@lsp.typemod.type.defaultLibrary"] = { fg = util.darken(c.blue1, 0.8) }, - ["@lsp.typemod.typeAlias.defaultLibrary"] = { fg = util.darken(c.blue1, 0.8) }, - ["@lsp.typemod.variable.callable"] = { link = "@function" }, - ["@lsp.typemod.variable.defaultLibrary"] = { link = "@variable.builtin" }, - ["@lsp.typemod.variable.injected"] = { link = "@variable" }, - ["@lsp.typemod.variable.static"] = { link = "@constant" }, - -- NOTE: maybe add these with distinct highlights? - -- ["@lsp.typemod.variable.globalScope"] (global variables) - - -- ts-rainbow - rainbowcol1 = { fg = c.red }, - rainbowcol2 = { fg = c.yellow }, - rainbowcol3 = { fg = c.green }, - rainbowcol4 = { fg = c.teal }, - rainbowcol5 = { fg = c.blue }, - rainbowcol6 = { fg = c.magenta }, - rainbowcol7 = { fg = c.purple }, - - -- ts-rainbow2 (maintained fork) - TSRainbowRed = { fg = c.red }, - TSRainbowOrange = { fg = c.orange }, - TSRainbowYellow = { fg = c.yellow }, - TSRainbowGreen = { fg = c.green }, - TSRainbowBlue = { fg = c.blue }, - TSRainbowViolet = { fg = c.purple }, - TSRainbowCyan = { fg = c.cyan }, - - -- rainbow-delimiters - RainbowDelimiterRed = { fg = c.red }, - RainbowDelimiterOrange = { fg = c.orange }, - RainbowDelimiterYellow = { fg = c.yellow }, - RainbowDelimiterGreen = { fg = c.green }, - RainbowDelimiterBlue = { fg = c.blue }, - RainbowDelimiterViolet = { fg = c.purple }, - RainbowDelimiterCyan = { fg = c.cyan }, - - -- LspTrouble - TroubleText = { fg = c.fg_dark }, - TroubleCount = { fg = c.magenta, bg = c.fg_gutter }, - TroubleNormal = { fg = c.fg, bg = c.bg_sidebar }, - - -- Illuminate - illuminatedWord = { bg = c.fg_gutter }, - illuminatedCurWord = { bg = c.fg_gutter }, - IlluminatedWordText = { bg = c.fg_gutter }, - IlluminatedWordRead = { bg = c.fg_gutter }, - IlluminatedWordWrite = { bg = c.fg_gutter }, - - -- diff - diffAdded = { fg = c.git.add }, - diffRemoved = { fg = c.git.delete }, - diffChanged = { fg = c.git.change }, - diffOldFile = { fg = c.yellow }, - diffNewFile = { fg = c.orange }, - diffFile = { fg = c.blue }, - diffLine = { fg = c.comment }, - diffIndexLine = { fg = c.magenta }, - - -- Neogit - NeogitBranch = { fg = c.magenta }, - NeogitRemote = { fg = c.purple }, - NeogitHunkHeader = { bg = c.bg_highlight, fg = c.fg }, - NeogitHunkHeaderHighlight = { bg = c.fg_gutter, fg = c.blue }, - NeogitDiffContextHighlight = { bg = util.darken(c.fg_gutter, 0.5), fg = c.fg_dark }, - NeogitDiffDeleteHighlight = { fg = c.git.delete, bg = c.diff.delete }, - NeogitDiffAddHighlight = { fg = c.git.add, bg = c.diff.add }, - - -- Neotest - NeotestPassed = { fg = c.green }, - NeotestRunning = { fg = c.yellow }, - NeotestFailed = { fg = c.red }, - NeotestSkipped = { fg = c.blue }, - NeotestTest = { fg = c.fg_sidebar }, - NeotestNamespace = { fg = c.green2 }, - NeotestFocused = { fg = c.yellow }, - NeotestFile = { fg = c.teal }, - NeotestDir = { fg = c.blue }, - NeotestBorder = { fg = c.blue }, - NeotestIndent = { fg = c.fg_sidebar }, - NeotestExpandMarker = { fg = c.fg_sidebar }, - NeotestAdapterName = { fg = c.purple, bold = true }, - NeotestWinSelect = { fg = c.blue }, - NeotestMarked = { fg = c.blue }, - NeotestTarget = { fg = c.blue }, - --[[ NeotestUnknown = {}, ]] - - -- GitGutter - GitGutterAdd = { fg = c.gitSigns.add }, -- diff mode: Added line |diff.txt| - GitGutterChange = { fg = c.gitSigns.change }, -- diff mode: Changed line |diff.txt| - GitGutterDelete = { fg = c.gitSigns.delete }, -- diff mode: Deleted line |diff.txt| - GitGutterAddLineNr = { fg = c.gitSigns.add }, - GitGutterChangeLineNr = { fg = c.gitSigns.change }, - GitGutterDeleteLineNr = { fg = c.gitSigns.delete }, - - -- GitSigns - GitSignsAdd = { fg = c.gitSigns.add }, -- diff mode: Added line |diff.txt| - GitSignsChange = { fg = c.gitSigns.change }, -- diff mode: Changed line |diff.txt| - GitSignsDelete = { fg = c.gitSigns.delete }, -- diff mode: Deleted line |diff.txt| - - -- Telescope - TelescopeBorder = { fg = c.border_highlight, bg = c.bg_float }, - TelescopeNormal = { fg = c.fg, bg = c.bg_float }, - - -- NvimTree - NvimTreeNormal = { fg = c.fg_sidebar, bg = c.bg_sidebar }, - NvimTreeWinSeparator = { - fg = options.styles.sidebars == "transparent" and c.border or c.bg_sidebar, - bg = c.bg_sidebar, - }, - NvimTreeNormalNC = { fg = c.fg_sidebar, bg = c.bg_sidebar }, - NvimTreeRootFolder = { fg = c.blue, bold = true }, - NvimTreeGitDirty = { fg = c.git.change }, - NvimTreeGitNew = { fg = c.git.add }, - NvimTreeGitDeleted = { fg = c.git.delete }, - NvimTreeOpenedFile = { bg = c.bg_highlight }, - NvimTreeSpecialFile = { fg = c.purple, underline = true }, - NvimTreeIndentMarker = { fg = c.fg_gutter }, - NvimTreeImageFile = { fg = c.fg_sidebar }, - NvimTreeSymlink = { fg = c.blue }, - NvimTreeFolderIcon = { bg = c.none, fg = c.blue }, - -- NvimTreeFolderName= { fg = c.fg_float }, - - NeoTreeNormal = { fg = c.fg_sidebar, bg = c.bg_sidebar }, - NeoTreeNormalNC = { fg = c.fg_sidebar, bg = c.bg_sidebar }, - NeoTreeDimText = { fg = c.fg_gutter }, - - -- Fern - FernBranchText = { fg = c.blue }, - - -- glyph palette - GlyphPalette1 = { fg = c.red1 }, - GlyphPalette2 = { fg = c.green }, - GlyphPalette3 = { fg = c.yellow }, - GlyphPalette4 = { fg = c.blue }, - GlyphPalette6 = { fg = c.green1 }, - GlyphPalette7 = { fg = c.fg }, - GlyphPalette9 = { fg = c.red }, - - -- Dashboard - DashboardShortCut = { fg = c.cyan }, - DashboardHeader = { fg = c.blue }, - DashboardCenter = { fg = c.magenta }, - DashboardFooter = { fg = c.blue1 }, - DashboardKey = { fg = c.orange }, - DashboardDesc = { fg = c.cyan }, - DashboardIcon = { fg = c.cyan, bold = true }, - - -- Alpha - AlphaShortcut = { fg = c.orange }, - AlphaHeader = { fg = c.blue }, - AlphaHeaderLabel = { fg = c.orange }, - AlphaFooter = { fg = c.blue1 }, - AlphaButtons = { fg = c.cyan }, - - -- WhichKey - WhichKey = { fg = c.cyan }, - WhichKeyGroup = { fg = c.blue }, - WhichKeyDesc = { fg = c.magenta }, - WhichKeySeperator = { fg = c.comment }, - WhichKeySeparator = { fg = c.comment }, - WhichKeyFloat = { bg = c.bg_sidebar }, - WhichKeyValue = { fg = c.dark5 }, - - -- LspSaga - DiagnosticWarning = { link = "DiagnosticWarn" }, - DiagnosticInformation = { link = "DiagnosticInfo" }, - - LspFloatWinNormal = { bg = c.bg_float }, - LspFloatWinBorder = { fg = c.border_highlight }, - LspSagaBorderTitle = { fg = c.cyan }, - LspSagaHoverBorder = { fg = c.blue }, - LspSagaRenameBorder = { fg = c.green }, - LspSagaDefPreviewBorder = { fg = c.green }, - LspSagaCodeActionBorder = { fg = c.blue }, - LspSagaFinderSelection = { fg = c.bg_visual }, - LspSagaCodeActionTitle = { fg = c.blue1 }, - LspSagaCodeActionContent = { fg = c.purple }, - LspSagaSignatureHelpBorder = { fg = c.red }, - ReferencesCount = { fg = c.purple }, - DefinitionCount = { fg = c.purple }, - DefinitionIcon = { fg = c.blue }, - ReferencesIcon = { fg = c.blue }, - TargetWord = { fg = c.cyan }, - - -- NeoVim - healthError = { fg = c.error }, - healthSuccess = { fg = c.green1 }, - healthWarning = { fg = c.warning }, - - -- BufferLine - BufferLineIndicatorSelected = { fg = c.git.change }, - - -- Barbar - BufferCurrent = { bg = c.bg, fg = c.fg }, - BufferCurrentERROR = { bg = c.bg, fg = c.error }, - BufferCurrentHINT = { bg = c.bg, fg = c.hint }, - -- BufferCurrentIcon = { bg = c.bg, fg = c.}, - BufferCurrentINFO = { bg = c.bg, fg = c.info }, - BufferCurrentWARN = { bg = c.bg, fg = c.warning }, - BufferCurrentIndex = { bg = c.bg, fg = c.info }, - BufferCurrentMod = { bg = c.bg, fg = c.warning }, - BufferCurrentSign = { bg = c.bg, fg = c.bg }, - BufferCurrentTarget = { bg = c.bg, fg = c.red }, - BufferAlternate = { bg = c.fg_gutter, fg = c.fg }, - BufferAlternateERROR = { bg = c.fg_gutter, fg = c.error }, - BufferAlternateHINT = { bg = c.fg_gutter, fg = c.hint }, - -- BufferAlternateIcon = { bg = c.fg_gutter, fg = c. }, - BufferAlternateIndex = { bg = c.fg_gutter, fg = c.info }, - BufferAlternateINFO = { bg = c.fg_gutter, fg = c.info }, - BufferAlternateMod = { bg = c.fg_gutter, fg = c.warning }, - BufferAlternateSign = { bg = c.fg_gutter, fg = c.info }, - BufferAlternateTarget = { bg = c.fg_gutter, fg = c.red }, - BufferAlternateWARN = { bg = c.fg_gutter, fg = c.warning }, - BufferVisible = { bg = c.bg_statusline, fg = c.fg }, - BufferVisibleERROR = { bg = c.bg_statusline, fg = c.error }, - BufferVisibleHINT = { bg = c.bg_statusline, fg = c.hint }, - -- BufferVisibleIcon = { bg = c.bg_statusline, fg = c. }, - BufferVisibleINFO = { bg = c.bg_statusline, fg = c.info }, - BufferVisibleWARN = { bg = c.bg_statusline, fg = c.warning }, - BufferVisibleIndex = { bg = c.bg_statusline, fg = c.info }, - BufferVisibleMod = { bg = c.bg_statusline, fg = c.warning }, - BufferVisibleSign = { bg = c.bg_statusline, fg = c.info }, - BufferVisibleTarget = { bg = c.bg_statusline, fg = c.red }, - BufferInactive = { bg = util.darken(c.bg_highlight, 0.4), fg = util.darken(c.dark5, 0.8) }, - BufferInactiveERROR = { bg = util.darken(c.bg_highlight, 0.4), fg = util.darken(c.error, 0.8) }, - BufferInactiveHINT = { bg = util.darken(c.bg_highlight, 0.4), fg = util.darken(c.hint, 0.8) }, - -- BufferInactiveIcon = { bg = c.bg_statusline, fg = util.darken(c., 0.1) }, - BufferInactiveINFO = { bg = util.darken(c.bg_highlight, 0.4), fg = util.darken(c.info, 0.8) }, - BufferInactiveWARN = { bg = util.darken(c.bg_highlight, 0.4), fg = util.darken(c.warning, 0.8) }, - BufferInactiveIndex = { bg = util.darken(c.bg_highlight, 0.4), fg = c.dark5 }, - BufferInactiveMod = { bg = util.darken(c.bg_highlight, 0.4), fg = util.darken(c.warning, 0.8) }, - BufferInactiveSign = { bg = util.darken(c.bg_highlight, 0.4), fg = c.bg }, - BufferInactiveTarget = { bg = util.darken(c.bg_highlight, 0.4), fg = c.red }, - BufferOffset = { bg = c.bg_statusline, fg = c.dark5 }, - BufferTabpageFill = { bg = util.darken(c.bg_highlight, 0.8), fg = c.dark5 }, - BufferTabpages = { bg = c.bg_statusline, fg = c.none }, - - -- Sneak - Sneak = { fg = c.bg_highlight, bg = c.magenta }, - SneakScope = { bg = c.bg_visual }, - - -- Hop - HopNextKey = { fg = c.magenta2, bold = true }, - HopNextKey1 = { fg = c.blue2, bold = true }, - HopNextKey2 = { fg = util.darken(c.blue2, 0.6) }, - HopUnmatched = { fg = c.dark3 }, - - TSNodeKey = { fg = c.magenta2, bold = true }, - TSNodeUnmatched = { fg = c.dark3 }, - - LeapMatch = { bg = c.magenta2, fg = c.fg, bold = true }, - LeapLabelPrimary = { fg = c.magenta2, bold = true }, - LeapLabelSecondary = { fg = c.green1, bold = true }, - LeapBackdrop = { fg = c.dark3 }, - - FlashBackdrop = { fg = c.dark3 }, - FlashLabel = { bg = c.magenta2, bold = true, fg = c.fg }, - - LightspeedGreyWash = { fg = c.dark3 }, - -- LightspeedCursor = { link = "Cursor" }, - LightspeedLabel = { fg = c.magenta2, bold = true, underline = true }, - LightspeedLabelDistant = { fg = c.green1, bold = true, underline = true }, - LightspeedLabelDistantOverlapped = { fg = c.green2, underline = true }, - LightspeedLabelOverlapped = { fg = c.magenta2, underline = true }, - LightspeedMaskedChar = { fg = c.orange }, - LightspeedOneCharMatch = { bg = c.magenta2, fg = c.fg, bold = true }, - LightspeedPendingOpArea = { bg = c.magenta2, fg = c.fg }, - LightspeedShortcut = { bg = c.magenta2, fg = c.fg, bold = true, underline = true }, - -- LightspeedShortcutOverlapped = { link = "LightspeedShortcut" }, - -- LightspeedUniqueChar = { link = "LightspeedUnlabeledMatch" }, - LightspeedUnlabeledMatch = { fg = c.blue2, bold = true }, - - -- Cmp - CmpDocumentation = { fg = c.fg, bg = c.bg_float }, - CmpDocumentationBorder = { fg = c.border_highlight, bg = c.bg_float }, - CmpGhostText = { fg = c.terminal_black }, - - CmpItemAbbr = { fg = c.fg, bg = c.none }, - CmpItemAbbrDeprecated = { fg = c.fg_gutter, bg = c.none, strikethrough = true }, - CmpItemAbbrMatch = { fg = c.blue1, bg = c.none }, - CmpItemAbbrMatchFuzzy = { fg = c.blue1, bg = c.none }, - - CmpItemMenu = { fg = c.comment, bg = c.none }, - - CmpItemKindDefault = { fg = c.fg_dark, bg = c.none }, - - CmpItemKindCodeium = { fg = c.teal, bg = c.none }, - CmpItemKindCopilot = { fg = c.teal, bg = c.none }, - CmpItemKindTabNine = { fg = c.teal, bg = c.none }, - - -- headlines.nvim - CodeBlock = { bg = c.bg_dark }, - - -- navic - NavicSeparator = { fg = c.fg, bg = c.none }, - NavicText = { fg = c.fg, bg = c.none }, - - AerialNormal = { fg = c.fg, bg = c.none }, - AerialGuide = { fg = c.fg_gutter }, - AerialLine = { link = "LspInlayHint" }, - - IndentBlanklineChar = { fg = c.fg_gutter, nocombine = true }, - IndentBlanklineContextChar = { fg = c.purple, nocombine = true }, - IblIndent = { fg = c.fg_gutter, nocombine = true }, - IblScope = { fg = c.purple, nocombine = true }, - - -- Scrollbar - ScrollbarHandle = { fg = c.none, bg = c.bg_highlight }, - - ScrollbarSearchHandle = { fg = c.orange, bg = c.bg_highlight }, - ScrollbarSearch = { fg = c.orange, bg = c.none }, - - ScrollbarErrorHandle = { fg = c.error, bg = c.bg_highlight }, - ScrollbarError = { fg = c.error, bg = c.none }, - - ScrollbarWarnHandle = { fg = c.warning, bg = c.bg_highlight }, - ScrollbarWarn = { fg = c.warning, bg = c.none }, - - ScrollbarInfoHandle = { fg = c.info, bg = c.bg_highlight }, - ScrollbarInfo = { fg = c.info, bg = c.none }, - - ScrollbarHintHandle = { fg = c.hint, bg = c.bg_highlight }, - ScrollbarHint = { fg = c.hint, bg = c.none }, - - ScrollbarMiscHandle = { fg = c.purple, bg = c.bg_highlight }, - ScrollbarMisc = { fg = c.purple, bg = c.none }, - - -- Yanky - YankyPut = { link = "IncSearch" }, - YankyYanked = { link = "IncSearch" }, - - -- Lazy - LazyProgressDone = { bold = true, fg = c.magenta2 }, - LazyProgressTodo = { bold = true, fg = c.fg_gutter }, - - -- Notify - NotifyBackground = { fg = c.fg, bg = c.bg }, - --- Border - NotifyERRORBorder = { fg = util.darken(c.error, 0.3), bg = options.transparent and c.none or c.bg }, - NotifyWARNBorder = { fg = util.darken(c.warning, 0.3), bg = options.transparent and c.none or c.bg }, - NotifyINFOBorder = { fg = util.darken(c.info, 0.3), bg = options.transparent and c.none or c.bg }, - NotifyDEBUGBorder = { fg = util.darken(c.comment, 0.3), bg = options.transparent and c.none or c.bg }, - NotifyTRACEBorder = { fg = util.darken(c.purple, 0.3), bg = options.transparent and c.none or c.bg }, - --- Icons - NotifyERRORIcon = { fg = c.error }, - NotifyWARNIcon = { fg = c.warning }, - NotifyINFOIcon = { fg = c.info }, - NotifyDEBUGIcon = { fg = c.comment }, - NotifyTRACEIcon = { fg = c.purple }, - --- Title - NotifyERRORTitle = { fg = c.error }, - NotifyWARNTitle = { fg = c.warning }, - NotifyINFOTitle = { fg = c.info }, - NotifyDEBUGTitle = { fg = c.comment }, - NotifyTRACETitle = { fg = c.purple }, - --- Body - NotifyERRORBody = { fg = c.fg, bg = options.transparent and c.none or c.bg }, - NotifyWARNBody = { fg = c.fg, bg = options.transparent and c.none or c.bg }, - NotifyINFOBody = { fg = c.fg, bg = options.transparent and c.none or c.bg }, - NotifyDEBUGBody = { fg = c.fg, bg = options.transparent and c.none or c.bg }, - NotifyTRACEBody = { fg = c.fg, bg = options.transparent and c.none or c.bg }, - - -- Mini - MiniCompletionActiveParameter = { underline = true }, - - MiniCursorword = { bg = c.fg_gutter }, - MiniCursorwordCurrent = { bg = c.fg_gutter }, - - MiniIndentscopeSymbol = { fg = c.blue1, nocombine = true }, - MiniIndentscopePrefix = { nocombine = true }, -- Make it invisible - - MiniJump = { bg = c.magenta2, fg = "#ffffff" }, - - MiniJump2dSpot = { fg = c.magenta2, bold = true, nocombine = true }, - - MiniStarterCurrent = { nocombine = true }, - MiniStarterFooter = { fg = c.yellow, italic = true }, - MiniStarterHeader = { fg = c.blue }, - MiniStarterInactive = { fg = c.comment, style = options.styles.comments }, - MiniStarterItem = { fg = c.fg, bg = options.transparent and c.none or c.bg }, - MiniStarterItemBullet = { fg = c.border_highlight }, - MiniStarterItemPrefix = { fg = c.warning }, - MiniStarterSection = { fg = c.blue1 }, - MiniStarterQuery = { fg = c.info }, - - MiniStatuslineDevinfo = { fg = c.fg_dark, bg = c.bg_highlight }, - MiniStatuslineFileinfo = { fg = c.fg_dark, bg = c.bg_highlight }, - MiniStatuslineFilename = { fg = c.fg_dark, bg = c.fg_gutter }, - MiniStatuslineInactive = { fg = c.blue, bg = c.bg_statusline }, - MiniStatuslineModeCommand = { fg = c.black, bg = c.yellow, bold = true }, - MiniStatuslineModeInsert = { fg = c.black, bg = c.green, bold = true }, - MiniStatuslineModeNormal = { fg = c.black, bg = c.blue, bold = true }, - MiniStatuslineModeOther = { fg = c.black, bg = c.teal, bold = true }, - MiniStatuslineModeReplace = { fg = c.black, bg = c.red, bold = true }, - MiniStatuslineModeVisual = { fg = c.black, bg = c.magenta, bold = true }, - - MiniSurround = { bg = c.orange, fg = c.black }, - - MiniTablineCurrent = { fg = c.fg, bg = c.fg_gutter }, - MiniTablineFill = { bg = c.black }, - MiniTablineHidden = { fg = c.dark5, bg = c.bg_statusline }, - MiniTablineModifiedCurrent = { fg = c.warning, bg = c.fg_gutter }, - MiniTablineModifiedHidden = { bg = c.bg_statusline, fg = util.darken(c.warning, 0.7) }, - MiniTablineModifiedVisible = { fg = c.warning, bg = c.bg_statusline }, - MiniTablineTabpagesection = { bg = c.bg_statusline, fg = c.none }, - MiniTablineVisible = { fg = c.fg, bg = c.bg_statusline }, - - MiniTestEmphasis = { bold = true }, - MiniTestFail = { fg = c.red, bold = true }, - MiniTestPass = { fg = c.green, bold = true }, - - MiniTrailspace = { bg = c.red }, - - -- Noice - - NoiceCompletionItemKindDefault = { fg = c.fg_dark, bg = c.none }, - - TreesitterContext = { bg = util.darken(c.fg_gutter, 0.8) }, - Hlargs = { fg = c.yellow }, - -- TreesitterContext = { bg = util.darken(c.bg_visual, 0.4) }, - } - - -- lsp symbol kind and completion kind highlights - local kinds = { - Array = "@punctuation.bracket", - Boolean = "@boolean", - Class = "@type", - Color = "Special", - Constant = "@constant", - Constructor = "@constructor", - Enum = "@lsp.type.enum", - EnumMember = "@lsp.type.enumMember", - Event = "Special", - Field = "@variable.member", - File = "Normal", - Folder = "Directory", - Function = "@function", - Interface = "@lsp.type.interface", - Key = "@variable.member", - Keyword = "@lsp.type.keyword", - Method = "@function.method", - Module = "@module", - Namespace = "@module", - Null = "@constant.builtin", - Number = "@number", - Object = "@constant", - Operator = "@operator", - Package = "@module", - Property = "@property", - Reference = "@markup.link", - Snippet = "Conceal", - String = "@string", - Struct = "@lsp.type.struct", - Unit = "@lsp.type.struct", - Text = "@markup", - TypeParameter = "@lsp.type.typeParameter", - Variable = "@variable", - Value = "@string", - } - - local kind_groups = { "NavicIcons%s", "Aerial%sIcon", "CmpItemKind%s", "NoiceCompletionItemKind%s" } - for kind, link in pairs(kinds) do - local base = "LspKind" .. kind - theme.highlights[base] = { link = link } - for _, plugin in pairs(kind_groups) do - theme.highlights[plugin:format(kind)] = { link = base } - end + -- only needed to clear when not the default colorscheme + if vim.g.colors_name then + vim.cmd("hi clear") end - local markdown_rainbow = { c.blue, c.yellow, c.green, c.teal, c.magenta, c.purple } + vim.o.termguicolors = true + vim.g.colors_name = "tokyonight-" .. opts.style - for i, color in ipairs(markdown_rainbow) do - theme.highlights["@markup.heading." .. i .. ".markdown"] = { fg = color, bold = true } - theme.highlights["Headline" .. i] = { bg = util.darken(color, 0.05) } + for group, hl in pairs(groups) do + hl = type(hl) == "string" and { link = hl } or hl + vim.api.nvim_set_hl(0, group, hl) end - theme.highlights["Headline"] = { link = "Headline1" } - if not vim.diagnostic then - local severity_map = { - Error = "Error", - Warn = "Warning", - Info = "Information", - Hint = "Hint", - } - local types = { "Default", "VirtualText", "Underline" } - for _, type in ipairs(types) do - for snew, sold in pairs(severity_map) do - theme.highlights["LspDiagnostics" .. type .. sold] = { - link = "Diagnostic" .. (type == "Default" and "" or type) .. snew, - } - end - end + if opts.terminal_colors then + vim.schedule(function() + M.terminal(colors) + end) end - ---@type table - theme.defer = {} + return colors, groups, opts +end + +---@param colors ColorScheme +function M.terminal(colors) + -- dark + vim.g.terminal_color_0 = colors.black + vim.g.terminal_color_8 = colors.terminal_black - if options.hide_inactive_statusline then - local inactive = { underline = true, bg = c.none, fg = c.bg, sp = c.border } + -- light + vim.g.terminal_color_7 = colors.fg_dark + vim.g.terminal_color_15 = colors.fg - -- StatusLineNC - theme.highlights.StatusLineNC = inactive + -- colors + vim.g.terminal_color_1 = colors.red + vim.g.terminal_color_9 = Util.blend_fg(colors.red, 0.5) - -- LuaLine - for _, section in ipairs({ "a", "b", "c" }) do - theme.defer["lualine_" .. section .. "_inactive"] = inactive - end + vim.g.terminal_color_2 = colors.green + vim.g.terminal_color_10 = Util.blend_fg(colors.green, 0.5) - -- mini.statusline - theme.highlights.MiniStatuslineInactive = inactive - end + vim.g.terminal_color_3 = colors.yellow + vim.g.terminal_color_11 = Util.blend_fg(colors.yellow, 0.5) - options.on_highlights(theme.highlights, theme.colors) + vim.g.terminal_color_4 = colors.blue + vim.g.terminal_color_12 = Util.blend_fg(colors.blue, 0.5) - if config.is_day() then - util.invert_colors(theme.colors) - util.invert_highlights(theme.highlights) - end + vim.g.terminal_color_5 = colors.magenta + vim.g.terminal_color_18 = Util.blend_fg(colors.magenta, 0.5) - return theme + vim.g.terminal_color_6 = colors.cyan + vim.g.terminal_color_14 = Util.blend_fg(colors.cyan, 0.5) end return M diff --git a/lua/tokyonight/types.lua b/lua/tokyonight/types.lua new file mode 100644 index 00000000..433c2438 --- /dev/null +++ b/lua/tokyonight/types.lua @@ -0,0 +1,10 @@ +---@class tokyonight.Highlight: vim.api.keyset.highlight +---@field style? vim.api.keyset.highlight + +---@alias tokyonight.Highlights table + +---@alias tokyonight.HighlightsFn fun(colors: ColorScheme, opts:tokyonight.Config):tokyonight.Highlights + +---@class tokyonight.Cache +---@field groups tokyonight.Highlights +---@field inputs table diff --git a/lua/tokyonight/util.lua b/lua/tokyonight/util.lua index 71a7dd84..cef29d05 100644 --- a/lua/tokyonight/util.lua +++ b/lua/tokyonight/util.lua @@ -4,19 +4,33 @@ M.bg = "#000000" M.fg = "#ffffff" M.day_brightness = 0.3 +local uv = vim.uv or vim.loop + ---@param c string -local function hexToRgb(c) +local function rgb(c) c = string.lower(c) return { tonumber(c:sub(2, 3), 16), tonumber(c:sub(4, 5), 16), tonumber(c:sub(6, 7), 16) } end +local me = debug.getinfo(1, "S").source:sub(2) +me = vim.fn.fnamemodify(me, ":h:h") + +function M.mod(modname) + if package.loaded[modname] then + return package.loaded[modname] + end + local ret = loadfile(me .. "/" .. modname:gsub("%.", "/") .. ".lua")() + package.loaded[modname] = ret + return ret +end + ---@param foreground string foreground color ---@param background string background color ---@param alpha number|string number between 0 and 1. 0 results in bg, 1 results in fg -function M.blend(foreground, background, alpha) +function M.blend(foreground, alpha, background) alpha = type(alpha) == "string" and (tonumber(alpha, 16) / 0xff) or alpha - local bg = hexToRgb(background) - local fg = hexToRgb(foreground) + local bg = rgb(background) + local fg = rgb(foreground) local blendChannel = function(i) local ret = (alpha * fg[i] + ((1 - alpha) * bg[i])) @@ -26,74 +40,48 @@ function M.blend(foreground, background, alpha) return string.format("#%02x%02x%02x", blendChannel(1), blendChannel(2), blendChannel(3)) end -function M.darken(hex, amount, bg) - return M.blend(hex, bg or M.bg, amount) +function M.blend_bg(hex, amount, bg) + return M.blend(hex, amount, bg or M.bg) end +M.darken = M.blend_bg -function M.lighten(hex, amount, fg) - return M.blend(hex, fg or M.fg, amount) +function M.blend_fg(hex, amount, fg) + return M.blend(hex, amount, fg or M.fg) end +M.lighten = M.blend_fg -function M.invert_color(color) - local hsluv = require("tokyonight.hsluv") - if color ~= "NONE" then - local hsl = hsluv.hex_to_hsluv(color) - hsl[3] = 100 - hsl[3] - if hsl[3] < 40 then - hsl[3] = hsl[3] + (100 - hsl[3]) * M.day_brightness +---@param color string|Palette +function M.invert(color) + if type(color) == "table" then + for key, value in pairs(color) do + color[key] = M.invert(value) + end + elseif type(color) == "string" then + local hsluv = require("tokyonight.hsluv") + if color ~= "NONE" then + local hsl = hsluv.hex_to_hsluv(color) + hsl[3] = 100 - hsl[3] + if hsl[3] < 40 then + hsl[3] = hsl[3] + (100 - hsl[3]) * M.day_brightness + end + return hsluv.hsluv_to_hex(hsl) end - return hsluv.hsluv_to_hex(hsl) end return color end ----@param group string -function M.highlight(group, hl) - if hl.style then +---@param groups tokyonight.Highlights +---@return table +function M.resolve(groups) + for _, hl in pairs(groups) do if type(hl.style) == "table" then - hl = vim.tbl_extend("force", hl, hl.style) - elseif hl.style:lower() ~= "none" then - -- handle old string style definitions - for s in string.gmatch(hl.style, "([^,]+)") do - hl[s] = true + for k, v in pairs(hl.style) do + hl[k] = v end + hl.style = nil end - hl.style = nil - end - vim.api.nvim_set_hl(0, group, hl) -end - ----@param config Config -function M.autocmds(config) - local group = vim.api.nvim_create_augroup("tokyonight", { clear = true }) - - vim.api.nvim_create_autocmd("ColorSchemePre", { - group = group, - callback = function() - vim.api.nvim_del_augroup_by_id(group) - end, - }) - local function set_whl() - local win = vim.api.nvim_get_current_win() - local whl = vim.split(vim.wo[win].winhighlight, ",") - vim.list_extend(whl, { "Normal:NormalSB", "SignColumn:SignColumnSB" }) - whl = vim.tbl_filter(function(hl) - return hl ~= "" - end, whl) - vim.opt_local.winhighlight = table.concat(whl, ",") - end - - vim.api.nvim_create_autocmd("FileType", { - group = group, - pattern = table.concat(config.sidebars, ","), - callback = set_whl, - }) - if vim.tbl_contains(config.sidebars, "terminal") then - vim.api.nvim_create_autocmd("TermOpen", { - group = group, - callback = set_whl, - }) end + return groups end -- Simple string interpolation. @@ -110,91 +98,52 @@ function M.template(str, table) ) end -function M.syntax(syntax) - for group, colors in pairs(syntax) do - M.highlight(group, colors) - end +---@param file string +function M.read(file) + local fd = assert(io.open(file, "r")) + ---@type string + local data = fd:read("*a") + fd:close() + return data end ----@param colors ColorScheme -function M.terminal(colors) - -- dark - vim.g.terminal_color_0 = colors.black - vim.g.terminal_color_8 = colors.terminal_black - - -- light - vim.g.terminal_color_7 = colors.fg_dark - vim.g.terminal_color_15 = colors.fg - - -- colors - vim.g.terminal_color_1 = colors.red - vim.g.terminal_color_9 = colors.red - - vim.g.terminal_color_2 = colors.green - vim.g.terminal_color_10 = colors.green - - vim.g.terminal_color_3 = colors.yellow - vim.g.terminal_color_11 = colors.yellow - - vim.g.terminal_color_4 = colors.blue - vim.g.terminal_color_12 = colors.blue +---@param file string +---@param contents string +function M.write(file, contents) + vim.fn.mkdir(vim.fn.fnamemodify(file, ":h"), "p") + local fd = assert(io.open(file, "w+")) + fd:write(contents) + fd:close() +end - vim.g.terminal_color_5 = colors.magenta - vim.g.terminal_color_13 = colors.magenta +M.cache = {} - vim.g.terminal_color_6 = colors.cyan - vim.g.terminal_color_14 = colors.cyan +function M.cache.file(key) + return vim.fn.stdpath("cache") .. "/tokyonight-" .. key .. ".json" end ----@param colors ColorScheme -function M.invert_colors(colors) - if type(colors) == "string" then - ---@diagnostic disable-next-line: return-type-mismatch - return M.invert_color(colors) - end - for key, value in pairs(colors) do - colors[key] = M.invert_colors(value) - end - return colors +---@param key string +function M.cache.read(key) + ---@type boolean, tokyonight.Cache + local ok, ret = pcall(function() + return vim.json.decode(M.read(M.cache.file(key)), { luanil = { + object = true, + array = true, + } }) + end) + return ok and ret or nil end ----@param hls Highlights -function M.invert_highlights(hls) - for _, hl in pairs(hls) do - if hl.fg then - hl.fg = M.invert_color(hl.fg) - end - if hl.bg then - hl.bg = M.invert_color(hl.bg) - end - if hl.sp then - hl.sp = M.invert_color(hl.sp) - end - end +---@param key string +---@param data tokyonight.Cache +function M.cache.write(key, data) + pcall(M.write, M.cache.file(key), vim.json.encode(data)) end ----@param theme Theme -function M.load(theme) - -- only needed to clear when not the default colorscheme - if vim.g.colors_name then - vim.cmd("hi clear") +function M.cache.clear() + for _, style in ipairs({ "storm", "day", "night", "moon" }) do + uv.fs_unlink(M.cache.file(style)) end - - vim.o.termguicolors = true - vim.g.colors_name = "tokyonight" - - M.syntax(theme.highlights) - - -- vim.api.nvim_set_hl_ns(M.ns) - if theme.config.terminal_colors then - M.terminal(theme.colors) - end - - M.autocmds(theme.config) - - vim.defer_fn(function() - M.syntax(theme.defer) - end, 100) end return M diff --git a/selene.toml b/selene.toml index 6540d6f9..5867a2a2 100644 --- a/selene.toml +++ b/selene.toml @@ -1 +1,4 @@ -std="lua51+vim" +std="vim" + +[lints] +mixed_table="allow" diff --git a/stylua.toml b/stylua.toml index 5d6c50dc..9732fe64 100644 --- a/stylua.toml +++ b/stylua.toml @@ -1,3 +1,6 @@ indent_type = "Spaces" indent_width = 2 -column_width = 120 \ No newline at end of file +column_width = 120 +[sort_requires] +enabled = true + diff --git a/tests/colorscheme_spec.lua b/tests/colorscheme_spec.lua new file mode 100644 index 00000000..3aafb764 --- /dev/null +++ b/tests/colorscheme_spec.lua @@ -0,0 +1,84 @@ +local Config = require("tokyonight.config") +local Init = require("tokyonight") + +before_each(function() + vim.o.background = "dark" + vim.cmd.colorscheme("default") + Config.setup() + Init.styles = {} +end) + +it("did prper init", function() + assert.same({}, Init.styles) + assert.same("default", vim.g.colors_name) + assert.same("dark", vim.o.background) +end) + +describe("loading respects vim.o.background", function() + it("= dark", function() + vim.o.background = "dark" + vim.cmd.colorscheme("tokyonight") + assert.same("dark", vim.o.background) + assert.same("tokyonight-moon", vim.g.colors_name) + end) + + it("= light", function() + vim.o.background = "light" + vim.cmd.colorscheme("tokyonight") + assert.same("light", vim.o.background) + assert.same("tokyonight-day", vim.g.colors_name) + end) + + it("= dark with night", function() + vim.o.background = "dark" + vim.cmd.colorscheme("tokyonight-night") + assert.same("dark", vim.o.background) + assert.same("tokyonight-night", vim.g.colors_name) + end) + + it("= dark with day", function() + vim.o.background = "dark" + vim.cmd.colorscheme("tokyonight-day") + assert.same("light", vim.o.background) + assert.same("tokyonight-day", vim.g.colors_name) + end) + + it("= light with night", function() + vim.o.background = "light" + vim.cmd.colorscheme("tokyonight-night") + assert.same("dark", vim.o.background) + assert.same("tokyonight-night", vim.g.colors_name) + end) + + it("= light with day", function() + vim.o.background = "light" + vim.cmd.colorscheme("tokyonight-day") + assert.same("light", vim.o.background) + assert.same("tokyonight-day", vim.g.colors_name) + end) + + it(" and switches to light", function() + vim.o.background = "dark" + vim.cmd.colorscheme("tokyonight-night") + vim.o.background = "light" + assert.same("light", vim.o.background) + assert.same("tokyonight-day", vim.g.colors_name) + end) + + it(" and switches to dark", function() + vim.o.background = "light" + vim.cmd.colorscheme("tokyonight") + vim.o.background = "dark" + assert.same("dark", vim.o.background) + assert.same("tokyonight-moon", vim.g.colors_name) + end) + + it(" and remembers dark", function() + vim.o.background = "dark" + vim.cmd.colorscheme("tokyonight-night") + vim.o.background = "light" + vim.o.background = "dark" + assert.same("dark", vim.o.background) + assert.same("tokyonight-night", vim.g.colors_name) + end) +end) diff --git a/tests/groups_spec.lua b/tests/groups_spec.lua new file mode 100644 index 00000000..d2501aa4 --- /dev/null +++ b/tests/groups_spec.lua @@ -0,0 +1,99 @@ +local Config = require("tokyonight.config") +local Groups = require("tokyonight.groups") + +local base = { "base", "kinds", "semantic_tokens", "treesitter" } + +before_each(function() + Config.setup() +end) + +describe("group is valid", function() + for name in vim.fs.dir("lua/tokyonight/groups") do + name = name:match("(.+)%.lua$") + if name and name ~= "init" and not vim.list_contains(base, name) then + it(name .. " has an url", function() + local group = Groups.get_group(name) + assert.is_not_nil(group, group) + assert.is_not_nil(group.url, group) + end) + it(name .. " has a plugin mapping", function() + local mapping = false + for k, v in pairs(Groups.plugins) do + if v == name then + mapping = true + break + end + end + assert.is_true(mapping, name) + end) + end + end + + for _, name in pairs(Groups.plugins) do + it(name .. " exists", function() + local ok = pcall(Groups.get_group, name) + assert(ok, name) + end) + end +end) + +describe("group config", function() + it("does all", function() + local opts = Config.extend({ plugins = { all = true } }) + local all = {} ---@type table + for _, name in ipairs(base) do + all[name] = true + end + for _, name in pairs(Groups.plugins) do + all[name] = true + end + local colors = require("tokyonight.colors").setup(opts) + local _, groups = Groups.setup(colors, opts) + assert.same(all, groups) + end) + + it("does base", function() + local opts = Config.extend({ plugins = { all = false, auto = false } }) + local all = {} ---@type table + for _, name in ipairs(base) do + all[name] = true + end + local colors = require("tokyonight.colors").setup(opts) + local _, groups = Groups.setup(colors, opts) + assert.same(all, groups) + end) + + it("does dashboard", function() + local opts = Config.extend({ plugins = { + all = false, + auto = false, + dashboard = true, + } }) + local all = {} ---@type table + for _, name in ipairs(base) do + all[name] = true + end + all.dashboard = true + local colors = require("tokyonight.colors").setup(opts) + local _, groups = Groups.setup(colors, opts) + assert.same(all, groups) + end) + + it("does dashboard.nvim", function() + local opts = Config.extend({ + plugins = { + all = false, + auto = false, + ["dashboard-nvim"] = true, + }, + }) + local all = {} ---@type table + for _, name in ipairs(base) do + all[name] = true + end + all.dashboard = true + local colors = require("tokyonight.colors").setup(opts) + local _, groups = Groups.setup(colors, opts) + assert.same(all, groups) + end) +end) diff --git a/tests/minit.lua b/tests/minit.lua new file mode 100755 index 00000000..709b39ae --- /dev/null +++ b/tests/minit.lua @@ -0,0 +1,15 @@ +#!/usr/bin/env -S nvim -l + +vim.env.LAZY_STDPATH = ".tests" +vim.env.LAZY_PATH = vim.fs.normalize("~/projects/lazy.nvim") +load(vim.fn.system("curl -s https://raw.githubusercontent.com/folke/lazy.nvim/main/bootstrap.lua"))() + +-- Setup lazy.nvim +require("lazy.minit").setup({ + spec = { + { + dir = vim.uv.cwd(), + opts = {}, + }, + }, +}) diff --git a/tests/run b/tests/run new file mode 100755 index 00000000..c0c91541 --- /dev/null +++ b/tests/run @@ -0,0 +1,3 @@ +#!/bin/sh + +nvim -l ./tests/minit.lua --busted tests --output utfTerminal diff --git a/vim.toml b/vim.toml index 0fa5c4fc..df7e67e6 100644 --- a/vim.toml +++ b/vim.toml @@ -1,2 +1,21 @@ +[selene] +base = "lua51" +name = "vim" + [vim] any = true + +[jit] +any = true + +[assert] +any = true + +[describe] +any = true + +[it] +any = true + +[before_each.args] +any = true