From 7ffd5c39232807f620b34f9a3e28ead13cfb1b46 Mon Sep 17 00:00:00 2001 From: "Sam G." Date: Mon, 12 Aug 2024 00:50:57 -0700 Subject: [PATCH] add theme files for supported app options --- apps/fzf/grassland-monobiome-dark.theme | 22 + apps/fzf/grassland-monobiome-light.theme | 22 + apps/fzf/hard-grassland-monobiome-dark.theme | 22 + apps/fzf/hard-grassland-monobiome-light.theme | 22 + apps/fzf/hard-monobiome-dark.theme | 22 + apps/fzf/hard-monobiome-light.theme | 22 + apps/fzf/hard-savanna-monobiome-dark.theme | 22 + apps/fzf/hard-savanna-monobiome-light.theme | 22 + apps/fzf/hard-tundra-monobiome-dark.theme | 22 + apps/fzf/hard-tundra-monobiome-light.theme | 22 + apps/fzf/monobiome-dark.theme | 22 + apps/fzf/monobiome-light.theme | 22 + apps/fzf/savanna-monobiome-dark.theme | 22 + apps/fzf/savanna-monobiome-light.theme | 22 + apps/fzf/soft-grassland-monobiome-dark.theme | 22 + apps/fzf/soft-grassland-monobiome-light.theme | 22 + apps/fzf/soft-monobiome-dark.theme | 22 + apps/fzf/soft-monobiome-light.theme | 22 + apps/fzf/soft-savanna-monobiome-dark.theme | 22 + apps/fzf/soft-savanna-monobiome-light.theme | 22 + apps/fzf/soft-tundra-monobiome-dark.theme | 22 + apps/fzf/soft-tundra-monobiome-light.theme | 22 + apps/fzf/tundra-monobiome-dark.theme | 22 + apps/fzf/tundra-monobiome-light.theme | 22 + apps/kitty/grassland-monobiome-dark.theme | 42 + apps/kitty/grassland-monobiome-light.theme | 42 + .../kitty/hard-grassland-monobiome-dark.theme | 42 + .../hard-grassland-monobiome-light.theme | 42 + apps/kitty/hard-monobiome-dark.theme | 42 + apps/kitty/hard-monobiome-light.theme | 42 + apps/kitty/hard-savanna-monobiome-dark.theme | 42 + apps/kitty/hard-savanna-monobiome-light.theme | 42 + apps/kitty/hard-tundra-monobiome-dark.theme | 42 + apps/kitty/hard-tundra-monobiome-light.theme | 42 + apps/kitty/monobiome-dark.theme | 42 + apps/kitty/monobiome-light.theme | 42 + apps/kitty/savanna-monobiome-dark.theme | 42 + apps/kitty/savanna-monobiome-light.theme | 42 + .../kitty/soft-grassland-monobiome-dark.theme | 42 + .../soft-grassland-monobiome-light.theme | 42 + apps/kitty/soft-monobiome-dark.theme | 42 + apps/kitty/soft-monobiome-light.theme | 42 + apps/kitty/soft-savanna-monobiome-dark.theme | 42 + apps/kitty/soft-savanna-monobiome-light.theme | 42 + apps/kitty/soft-tundra-monobiome-dark.theme | 42 + apps/kitty/soft-tundra-monobiome-light.theme | 42 + apps/kitty/tundra-monobiome-dark.theme | 42 + apps/kitty/tundra-monobiome-light.theme | 42 + apps/nvim/grassland-monobiome-dark.vim | 882 ++++++++++++++++++ apps/nvim/grassland-monobiome-light.vim | 882 ++++++++++++++++++ apps/nvim/hard-grassland-monobiome-dark.vim | 882 ++++++++++++++++++ apps/nvim/hard-grassland-monobiome-light.vim | 882 ++++++++++++++++++ apps/nvim/hard-monobiome-dark.vim | 882 ++++++++++++++++++ apps/nvim/hard-monobiome-light.vim | 882 ++++++++++++++++++ apps/nvim/hard-savanna-monobiome-dark.vim | 882 ++++++++++++++++++ apps/nvim/hard-savanna-monobiome-light.vim | 882 ++++++++++++++++++ apps/nvim/hard-tundra-monobiome-dark.vim | 882 ++++++++++++++++++ apps/nvim/hard-tundra-monobiome-light.vim | 882 ++++++++++++++++++ apps/nvim/monobiome-dark.vim | 882 ++++++++++++++++++ apps/nvim/monobiome-light.vim | 882 ++++++++++++++++++ apps/nvim/savanna-monobiome-dark.vim | 882 ++++++++++++++++++ apps/nvim/savanna-monobiome-light.vim | 882 ++++++++++++++++++ apps/nvim/soft-grassland-monobiome-dark.vim | 882 ++++++++++++++++++ apps/nvim/soft-grassland-monobiome-light.vim | 882 ++++++++++++++++++ apps/nvim/soft-monobiome-dark.vim | 882 ++++++++++++++++++ apps/nvim/soft-monobiome-light.vim | 882 ++++++++++++++++++ apps/nvim/soft-savanna-monobiome-dark.vim | 882 ++++++++++++++++++ apps/nvim/soft-savanna-monobiome-light.vim | 882 ++++++++++++++++++ apps/nvim/soft-tundra-monobiome-dark.vim | 882 ++++++++++++++++++ apps/nvim/soft-tundra-monobiome-light.vim | 882 ++++++++++++++++++ apps/nvim/tundra-monobiome-dark.vim | 882 ++++++++++++++++++ apps/nvim/tundra-monobiome-light.vim | 882 ++++++++++++++++++ .../grassland-monobiome-dark.statusline.vim | 110 +++ .../grassland-monobiome-light.statusline.vim | 110 +++ ...rd-grassland-monobiome-dark.statusline.vim | 110 +++ ...d-grassland-monobiome-light.statusline.vim | 110 +++ .../hard-monobiome-dark.statusline.vim | 110 +++ .../hard-monobiome-light.statusline.vim | 110 +++ ...hard-savanna-monobiome-dark.statusline.vim | 110 +++ ...ard-savanna-monobiome-light.statusline.vim | 110 +++ .../hard-tundra-monobiome-dark.statusline.vim | 110 +++ ...hard-tundra-monobiome-light.statusline.vim | 110 +++ .../vim-airline/monobiome-dark.statusline.vim | 110 +++ .../monobiome-light.statusline.vim | 110 +++ .../savanna-monobiome-dark.statusline.vim | 110 +++ .../savanna-monobiome-light.statusline.vim | 110 +++ ...ft-grassland-monobiome-dark.statusline.vim | 110 +++ ...t-grassland-monobiome-light.statusline.vim | 110 +++ .../soft-monobiome-dark.statusline.vim | 110 +++ .../soft-monobiome-light.statusline.vim | 110 +++ ...soft-savanna-monobiome-dark.statusline.vim | 110 +++ ...oft-savanna-monobiome-light.statusline.vim | 110 +++ .../soft-tundra-monobiome-dark.statusline.vim | 110 +++ ...soft-tundra-monobiome-light.statusline.vim | 110 +++ .../tundra-monobiome-dark.statusline.vim | 110 +++ .../tundra-monobiome-light.statusline.vim | 110 +++ 96 files changed, 25344 insertions(+) create mode 100644 apps/fzf/grassland-monobiome-dark.theme create mode 100644 apps/fzf/grassland-monobiome-light.theme create mode 100644 apps/fzf/hard-grassland-monobiome-dark.theme create mode 100644 apps/fzf/hard-grassland-monobiome-light.theme create mode 100644 apps/fzf/hard-monobiome-dark.theme create mode 100644 apps/fzf/hard-monobiome-light.theme create mode 100644 apps/fzf/hard-savanna-monobiome-dark.theme create mode 100644 apps/fzf/hard-savanna-monobiome-light.theme create mode 100644 apps/fzf/hard-tundra-monobiome-dark.theme create mode 100644 apps/fzf/hard-tundra-monobiome-light.theme create mode 100644 apps/fzf/monobiome-dark.theme create mode 100644 apps/fzf/monobiome-light.theme create mode 100644 apps/fzf/savanna-monobiome-dark.theme create mode 100644 apps/fzf/savanna-monobiome-light.theme create mode 100644 apps/fzf/soft-grassland-monobiome-dark.theme create mode 100644 apps/fzf/soft-grassland-monobiome-light.theme create mode 100644 apps/fzf/soft-monobiome-dark.theme create mode 100644 apps/fzf/soft-monobiome-light.theme create mode 100644 apps/fzf/soft-savanna-monobiome-dark.theme create mode 100644 apps/fzf/soft-savanna-monobiome-light.theme create mode 100644 apps/fzf/soft-tundra-monobiome-dark.theme create mode 100644 apps/fzf/soft-tundra-monobiome-light.theme create mode 100644 apps/fzf/tundra-monobiome-dark.theme create mode 100644 apps/fzf/tundra-monobiome-light.theme create mode 100644 apps/kitty/grassland-monobiome-dark.theme create mode 100644 apps/kitty/grassland-monobiome-light.theme create mode 100644 apps/kitty/hard-grassland-monobiome-dark.theme create mode 100644 apps/kitty/hard-grassland-monobiome-light.theme create mode 100644 apps/kitty/hard-monobiome-dark.theme create mode 100644 apps/kitty/hard-monobiome-light.theme create mode 100644 apps/kitty/hard-savanna-monobiome-dark.theme create mode 100644 apps/kitty/hard-savanna-monobiome-light.theme create mode 100644 apps/kitty/hard-tundra-monobiome-dark.theme create mode 100644 apps/kitty/hard-tundra-monobiome-light.theme create mode 100644 apps/kitty/monobiome-dark.theme create mode 100644 apps/kitty/monobiome-light.theme create mode 100644 apps/kitty/savanna-monobiome-dark.theme create mode 100644 apps/kitty/savanna-monobiome-light.theme create mode 100644 apps/kitty/soft-grassland-monobiome-dark.theme create mode 100644 apps/kitty/soft-grassland-monobiome-light.theme create mode 100644 apps/kitty/soft-monobiome-dark.theme create mode 100644 apps/kitty/soft-monobiome-light.theme create mode 100644 apps/kitty/soft-savanna-monobiome-dark.theme create mode 100644 apps/kitty/soft-savanna-monobiome-light.theme create mode 100644 apps/kitty/soft-tundra-monobiome-dark.theme create mode 100644 apps/kitty/soft-tundra-monobiome-light.theme create mode 100644 apps/kitty/tundra-monobiome-dark.theme create mode 100644 apps/kitty/tundra-monobiome-light.theme create mode 100644 apps/nvim/grassland-monobiome-dark.vim create mode 100644 apps/nvim/grassland-monobiome-light.vim create mode 100644 apps/nvim/hard-grassland-monobiome-dark.vim create mode 100644 apps/nvim/hard-grassland-monobiome-light.vim create mode 100644 apps/nvim/hard-monobiome-dark.vim create mode 100644 apps/nvim/hard-monobiome-light.vim create mode 100644 apps/nvim/hard-savanna-monobiome-dark.vim create mode 100644 apps/nvim/hard-savanna-monobiome-light.vim create mode 100644 apps/nvim/hard-tundra-monobiome-dark.vim create mode 100644 apps/nvim/hard-tundra-monobiome-light.vim create mode 100644 apps/nvim/monobiome-dark.vim create mode 100644 apps/nvim/monobiome-light.vim create mode 100644 apps/nvim/savanna-monobiome-dark.vim create mode 100644 apps/nvim/savanna-monobiome-light.vim create mode 100644 apps/nvim/soft-grassland-monobiome-dark.vim create mode 100644 apps/nvim/soft-grassland-monobiome-light.vim create mode 100644 apps/nvim/soft-monobiome-dark.vim create mode 100644 apps/nvim/soft-monobiome-light.vim create mode 100644 apps/nvim/soft-savanna-monobiome-dark.vim create mode 100644 apps/nvim/soft-savanna-monobiome-light.vim create mode 100644 apps/nvim/soft-tundra-monobiome-dark.vim create mode 100644 apps/nvim/soft-tundra-monobiome-light.vim create mode 100644 apps/nvim/tundra-monobiome-dark.vim create mode 100644 apps/nvim/tundra-monobiome-light.vim create mode 100644 apps/vim-airline/grassland-monobiome-dark.statusline.vim create mode 100644 apps/vim-airline/grassland-monobiome-light.statusline.vim create mode 100644 apps/vim-airline/hard-grassland-monobiome-dark.statusline.vim create mode 100644 apps/vim-airline/hard-grassland-monobiome-light.statusline.vim create mode 100644 apps/vim-airline/hard-monobiome-dark.statusline.vim create mode 100644 apps/vim-airline/hard-monobiome-light.statusline.vim create mode 100644 apps/vim-airline/hard-savanna-monobiome-dark.statusline.vim create mode 100644 apps/vim-airline/hard-savanna-monobiome-light.statusline.vim create mode 100644 apps/vim-airline/hard-tundra-monobiome-dark.statusline.vim create mode 100644 apps/vim-airline/hard-tundra-monobiome-light.statusline.vim create mode 100644 apps/vim-airline/monobiome-dark.statusline.vim create mode 100644 apps/vim-airline/monobiome-light.statusline.vim create mode 100644 apps/vim-airline/savanna-monobiome-dark.statusline.vim create mode 100644 apps/vim-airline/savanna-monobiome-light.statusline.vim create mode 100644 apps/vim-airline/soft-grassland-monobiome-dark.statusline.vim create mode 100644 apps/vim-airline/soft-grassland-monobiome-light.statusline.vim create mode 100644 apps/vim-airline/soft-monobiome-dark.statusline.vim create mode 100644 apps/vim-airline/soft-monobiome-light.statusline.vim create mode 100644 apps/vim-airline/soft-savanna-monobiome-dark.statusline.vim create mode 100644 apps/vim-airline/soft-savanna-monobiome-light.statusline.vim create mode 100644 apps/vim-airline/soft-tundra-monobiome-dark.statusline.vim create mode 100644 apps/vim-airline/soft-tundra-monobiome-light.statusline.vim create mode 100644 apps/vim-airline/tundra-monobiome-dark.statusline.vim create mode 100644 apps/vim-airline/tundra-monobiome-light.statusline.vim diff --git a/apps/fzf/grassland-monobiome-dark.theme b/apps/fzf/grassland-monobiome-dark.theme new file mode 100644 index 0000000..8b4a632 --- /dev/null +++ b/apps/fzf/grassland-monobiome-dark.theme @@ -0,0 +1,22 @@ +export FZF_DEFAULT_OPTS=$FZF_DEFAULT_OPTS' + --color=fg:#d7e0dd + --color=fg+:#c7d0cc + --color=bg:#1d2321 + --color=bg+:#29302d + + --color=hl:#658ed9 + --color=hl+:#8daeeb + --color=info:#989250 + --color=marker:#80c089 + + --color=prompt:#e95949 + --color=spinner:#989250 + --color=pointer:#e95949 + --color=header:#80c089 + + --color=border:#29302d + --color=label:#aeaeae + --color=query:#d7e0dd + + --preview-window="border-bold" --prompt="> " --marker=">" --pointer="◆" + --separator="" --scrollbar="│"' diff --git a/apps/fzf/grassland-monobiome-light.theme b/apps/fzf/grassland-monobiome-light.theme new file mode 100644 index 0000000..d2b7959 --- /dev/null +++ b/apps/fzf/grassland-monobiome-light.theme @@ -0,0 +1,22 @@ +export FZF_DEFAULT_OPTS=$FZF_DEFAULT_OPTS' + --color=fg:#111815 + --color=fg+:#1d2321 + --color=bg:#c7d0cc + --color=bg+:#b7c0bc + + --color=hl:#3860ac + --color=hl+:#3860ac + --color=info:#6a6535 + --color=marker:#377242 + + --color=prompt:#b52119 + --color=spinner:#6a6535 + --color=pointer:#b52119 + --color=header:#377242 + + --color=border:#b7c0bc + --color=label:#aeaeae + --color=query:#111815 + + --preview-window="border-bold" --prompt="> " --marker=">" --pointer="◆" + --separator="" --scrollbar="│"' diff --git a/apps/fzf/hard-grassland-monobiome-dark.theme b/apps/fzf/hard-grassland-monobiome-dark.theme new file mode 100644 index 0000000..4bc2bbf --- /dev/null +++ b/apps/fzf/hard-grassland-monobiome-dark.theme @@ -0,0 +1,22 @@ +export FZF_DEFAULT_OPTS=$FZF_DEFAULT_OPTS' + --color=fg:#c7d0cc + --color=fg+:#b7c0bc + --color=bg:#111815 + --color=bg+:#1d2321 + + --color=hl:#557ecc + --color=hl+:#799ee3 + --color=info:#888346 + --color=marker:#6eb178 + + --color=prompt:#dc4134 + --color=spinner:#888346 + --color=pointer:#dc4134 + --color=header:#6eb178 + + --color=border:#1d2321 + --color=label:#aeaeae + --color=query:#c7d0cc + + --preview-window="border-bold" --prompt="> " --marker=">" --pointer="◆" + --separator="" --scrollbar="│"' diff --git a/apps/fzf/hard-grassland-monobiome-light.theme b/apps/fzf/hard-grassland-monobiome-light.theme new file mode 100644 index 0000000..293dcda --- /dev/null +++ b/apps/fzf/hard-grassland-monobiome-light.theme @@ -0,0 +1,22 @@ +export FZF_DEFAULT_OPTS=$FZF_DEFAULT_OPTS' + --color=fg:#1d2321 + --color=fg+:#29302d + --color=bg:#d7e0dd + --color=bg+:#c7d0cc + + --color=hl:#456fbe + --color=hl+:#456fbe + --color=info:#79743d + --color=marker:#42824e + + --color=prompt:#ca2e23 + --color=spinner:#79743d + --color=pointer:#ca2e23 + --color=header:#42824e + + --color=border:#c7d0cc + --color=label:#aeaeae + --color=query:#1d2321 + + --preview-window="border-bold" --prompt="> " --marker=">" --pointer="◆" + --separator="" --scrollbar="│"' diff --git a/apps/fzf/hard-monobiome-dark.theme b/apps/fzf/hard-monobiome-dark.theme new file mode 100644 index 0000000..67dd839 --- /dev/null +++ b/apps/fzf/hard-monobiome-dark.theme @@ -0,0 +1,22 @@ +export FZF_DEFAULT_OPTS=$FZF_DEFAULT_OPTS' + --color=fg:#cecece + --color=fg+:#bebebe + --color=bg:#161616 + --color=bg+:#222222 + + --color=hl:#557ecc + --color=hl+:#799ee3 + --color=info:#888346 + --color=marker:#6eb178 + + --color=prompt:#dc4134 + --color=spinner:#888346 + --color=pointer:#dc4134 + --color=header:#6eb178 + + --color=border:#222222 + --color=label:#aeaeae + --color=query:#cecece + + --preview-window="border-bold" --prompt="> " --marker=">" --pointer="◆" + --separator="" --scrollbar="│"' diff --git a/apps/fzf/hard-monobiome-light.theme b/apps/fzf/hard-monobiome-light.theme new file mode 100644 index 0000000..9737d31 --- /dev/null +++ b/apps/fzf/hard-monobiome-light.theme @@ -0,0 +1,22 @@ +export FZF_DEFAULT_OPTS=$FZF_DEFAULT_OPTS' + --color=fg:#222222 + --color=fg+:#2e2e2e + --color=bg:#dedede + --color=bg+:#cecece + + --color=hl:#456fbe + --color=hl+:#456fbe + --color=info:#79743d + --color=marker:#42824e + + --color=prompt:#ca2e23 + --color=spinner:#79743d + --color=pointer:#ca2e23 + --color=header:#42824e + + --color=border:#cecece + --color=label:#aeaeae + --color=query:#222222 + + --preview-window="border-bold" --prompt="> " --marker=">" --pointer="◆" + --separator="" --scrollbar="│"' diff --git a/apps/fzf/hard-savanna-monobiome-dark.theme b/apps/fzf/hard-savanna-monobiome-dark.theme new file mode 100644 index 0000000..8197e50 --- /dev/null +++ b/apps/fzf/hard-savanna-monobiome-dark.theme @@ -0,0 +1,22 @@ +export FZF_DEFAULT_OPTS=$FZF_DEFAULT_OPTS' + --color=fg:#d0cec6 + --color=fg+:#c0bdb6 + --color=bg:#181610 + --color=bg+:#24211c + + --color=hl:#557ecc + --color=hl+:#799ee3 + --color=info:#888346 + --color=marker:#6eb178 + + --color=prompt:#dc4134 + --color=spinner:#888346 + --color=pointer:#dc4134 + --color=header:#6eb178 + + --color=border:#24211c + --color=label:#aeaeae + --color=query:#d0cec6 + + --preview-window="border-bold" --prompt="> " --marker=">" --pointer="◆" + --separator="" --scrollbar="│"' diff --git a/apps/fzf/hard-savanna-monobiome-light.theme b/apps/fzf/hard-savanna-monobiome-light.theme new file mode 100644 index 0000000..2bae280 --- /dev/null +++ b/apps/fzf/hard-savanna-monobiome-light.theme @@ -0,0 +1,22 @@ +export FZF_DEFAULT_OPTS=$FZF_DEFAULT_OPTS' + --color=fg:#24211c + --color=fg+:#302e28 + --color=bg:#e1ded6 + --color=bg+:#d0cec6 + + --color=hl:#456fbe + --color=hl+:#456fbe + --color=info:#79743d + --color=marker:#42824e + + --color=prompt:#ca2e23 + --color=spinner:#79743d + --color=pointer:#ca2e23 + --color=header:#42824e + + --color=border:#d0cec6 + --color=label:#aeaeae + --color=query:#24211c + + --preview-window="border-bold" --prompt="> " --marker=">" --pointer="◆" + --separator="" --scrollbar="│"' diff --git a/apps/fzf/hard-tundra-monobiome-dark.theme b/apps/fzf/hard-tundra-monobiome-dark.theme new file mode 100644 index 0000000..ebe5a8c --- /dev/null +++ b/apps/fzf/hard-tundra-monobiome-dark.theme @@ -0,0 +1,22 @@ +export FZF_DEFAULT_OPTS=$FZF_DEFAULT_OPTS' + --color=fg:#c8ced5 + --color=fg+:#b9bec5 + --color=bg:#12161b + --color=bg+:#1e2227 + + --color=hl:#557ecc + --color=hl+:#799ee3 + --color=info:#888346 + --color=marker:#6eb178 + + --color=prompt:#dc4134 + --color=spinner:#888346 + --color=pointer:#dc4134 + --color=header:#6eb178 + + --color=border:#1e2227 + --color=label:#aeaeae + --color=query:#c8ced5 + + --preview-window="border-bold" --prompt="> " --marker=">" --pointer="◆" + --separator="" --scrollbar="│"' diff --git a/apps/fzf/hard-tundra-monobiome-light.theme b/apps/fzf/hard-tundra-monobiome-light.theme new file mode 100644 index 0000000..d2e7ebc --- /dev/null +++ b/apps/fzf/hard-tundra-monobiome-light.theme @@ -0,0 +1,22 @@ +export FZF_DEFAULT_OPTS=$FZF_DEFAULT_OPTS' + --color=fg:#1e2227 + --color=fg+:#2a2e33 + --color=bg:#d9dfe5 + --color=bg+:#c8ced5 + + --color=hl:#456fbe + --color=hl+:#456fbe + --color=info:#79743d + --color=marker:#42824e + + --color=prompt:#ca2e23 + --color=spinner:#79743d + --color=pointer:#ca2e23 + --color=header:#42824e + + --color=border:#c8ced5 + --color=label:#aeaeae + --color=query:#1e2227 + + --preview-window="border-bold" --prompt="> " --marker=">" --pointer="◆" + --separator="" --scrollbar="│"' diff --git a/apps/fzf/monobiome-dark.theme b/apps/fzf/monobiome-dark.theme new file mode 100644 index 0000000..32a1cbc --- /dev/null +++ b/apps/fzf/monobiome-dark.theme @@ -0,0 +1,22 @@ +export FZF_DEFAULT_OPTS=$FZF_DEFAULT_OPTS' + --color=fg:#dedede + --color=fg+:#cecece + --color=bg:#222222 + --color=bg+:#2e2e2e + + --color=hl:#658ed9 + --color=hl+:#8daeeb + --color=info:#989250 + --color=marker:#80c089 + + --color=prompt:#e95949 + --color=spinner:#989250 + --color=pointer:#e95949 + --color=header:#80c089 + + --color=border:#2e2e2e + --color=label:#aeaeae + --color=query:#dedede + + --preview-window="border-bold" --prompt="> " --marker=">" --pointer="◆" + --separator="" --scrollbar="│"' diff --git a/apps/fzf/monobiome-light.theme b/apps/fzf/monobiome-light.theme new file mode 100644 index 0000000..7ebe917 --- /dev/null +++ b/apps/fzf/monobiome-light.theme @@ -0,0 +1,22 @@ +export FZF_DEFAULT_OPTS=$FZF_DEFAULT_OPTS' + --color=fg:#161616 + --color=fg+:#222222 + --color=bg:#cecece + --color=bg+:#bebebe + + --color=hl:#3860ac + --color=hl+:#3860ac + --color=info:#6a6535 + --color=marker:#377242 + + --color=prompt:#b52119 + --color=spinner:#6a6535 + --color=pointer:#b52119 + --color=header:#377242 + + --color=border:#bebebe + --color=label:#aeaeae + --color=query:#161616 + + --preview-window="border-bold" --prompt="> " --marker=">" --pointer="◆" + --separator="" --scrollbar="│"' diff --git a/apps/fzf/savanna-monobiome-dark.theme b/apps/fzf/savanna-monobiome-dark.theme new file mode 100644 index 0000000..e0b3271 --- /dev/null +++ b/apps/fzf/savanna-monobiome-dark.theme @@ -0,0 +1,22 @@ +export FZF_DEFAULT_OPTS=$FZF_DEFAULT_OPTS' + --color=fg:#e1ded6 + --color=fg+:#d0cec6 + --color=bg:#24211c + --color=bg+:#302e28 + + --color=hl:#658ed9 + --color=hl+:#8daeeb + --color=info:#989250 + --color=marker:#80c089 + + --color=prompt:#e95949 + --color=spinner:#989250 + --color=pointer:#e95949 + --color=header:#80c089 + + --color=border:#302e28 + --color=label:#aeaeae + --color=query:#e1ded6 + + --preview-window="border-bold" --prompt="> " --marker=">" --pointer="◆" + --separator="" --scrollbar="│"' diff --git a/apps/fzf/savanna-monobiome-light.theme b/apps/fzf/savanna-monobiome-light.theme new file mode 100644 index 0000000..37b6d35 --- /dev/null +++ b/apps/fzf/savanna-monobiome-light.theme @@ -0,0 +1,22 @@ +export FZF_DEFAULT_OPTS=$FZF_DEFAULT_OPTS' + --color=fg:#181610 + --color=fg+:#24211c + --color=bg:#d0cec6 + --color=bg+:#c0bdb6 + + --color=hl:#3860ac + --color=hl+:#3860ac + --color=info:#6a6535 + --color=marker:#377242 + + --color=prompt:#b52119 + --color=spinner:#6a6535 + --color=pointer:#b52119 + --color=header:#377242 + + --color=border:#c0bdb6 + --color=label:#aeaeae + --color=query:#181610 + + --preview-window="border-bold" --prompt="> " --marker=">" --pointer="◆" + --separator="" --scrollbar="│"' diff --git a/apps/fzf/soft-grassland-monobiome-dark.theme b/apps/fzf/soft-grassland-monobiome-dark.theme new file mode 100644 index 0000000..c096076 --- /dev/null +++ b/apps/fzf/soft-grassland-monobiome-dark.theme @@ -0,0 +1,22 @@ +export FZF_DEFAULT_OPTS=$FZF_DEFAULT_OPTS' + --color=fg:#e8f1ed + --color=fg+:#d7e0dd + --color=bg:#29302d + --color=bg+:#353c3a + + --color=hl:#799ee3 + --color=hl+:#a2bef2 + --color=info:#a7a15f + --color=marker:#94cf9c + + --color=prompt:#f37060 + --color=spinner:#a7a15f + --color=pointer:#f37060 + --color=header:#94cf9c + + --color=border:#353c3a + --color=label:#aeaeae + --color=query:#e8f1ed + + --preview-window="border-bold" --prompt="> " --marker=">" --pointer="◆" + --separator="" --scrollbar="│"' diff --git a/apps/fzf/soft-grassland-monobiome-light.theme b/apps/fzf/soft-grassland-monobiome-light.theme new file mode 100644 index 0000000..e8983be --- /dev/null +++ b/apps/fzf/soft-grassland-monobiome-light.theme @@ -0,0 +1,22 @@ +export FZF_DEFAULT_OPTS=$FZF_DEFAULT_OPTS' + --color=fg:#070d0a + --color=fg+:#111815 + --color=bg:#b7c0bc + --color=bg+:#a8b0ad + + --color=hl:#2d5299 + --color=hl+:#2d5299 + --color=info:#5b572e + --color=marker:#2e6337 + + --color=prompt:#9d1912 + --color=spinner:#5b572e + --color=pointer:#9d1912 + --color=header:#2e6337 + + --color=border:#a8b0ad + --color=label:#aeaeae + --color=query:#070d0a + + --preview-window="border-bold" --prompt="> " --marker=">" --pointer="◆" + --separator="" --scrollbar="│"' diff --git a/apps/fzf/soft-monobiome-dark.theme b/apps/fzf/soft-monobiome-dark.theme new file mode 100644 index 0000000..ce12d20 --- /dev/null +++ b/apps/fzf/soft-monobiome-dark.theme @@ -0,0 +1,22 @@ +export FZF_DEFAULT_OPTS=$FZF_DEFAULT_OPTS' + --color=fg:#eeeeee + --color=fg+:#dedede + --color=bg:#2e2e2e + --color=bg+:#3a3a3a + + --color=hl:#799ee3 + --color=hl+:#a2bef2 + --color=info:#a7a15f + --color=marker:#94cf9c + + --color=prompt:#f37060 + --color=spinner:#a7a15f + --color=pointer:#f37060 + --color=header:#94cf9c + + --color=border:#3a3a3a + --color=label:#aeaeae + --color=query:#eeeeee + + --preview-window="border-bold" --prompt="> " --marker=">" --pointer="◆" + --separator="" --scrollbar="│"' diff --git a/apps/fzf/soft-monobiome-light.theme b/apps/fzf/soft-monobiome-light.theme new file mode 100644 index 0000000..529bb04 --- /dev/null +++ b/apps/fzf/soft-monobiome-light.theme @@ -0,0 +1,22 @@ +export FZF_DEFAULT_OPTS=$FZF_DEFAULT_OPTS' + --color=fg:#0b0b0b + --color=fg+:#161616 + --color=bg:#bebebe + --color=bg+:#aeaeae + + --color=hl:#2d5299 + --color=hl+:#2d5299 + --color=info:#5b572e + --color=marker:#2e6337 + + --color=prompt:#9d1912 + --color=spinner:#5b572e + --color=pointer:#9d1912 + --color=header:#2e6337 + + --color=border:#aeaeae + --color=label:#aeaeae + --color=query:#0b0b0b + + --preview-window="border-bold" --prompt="> " --marker=">" --pointer="◆" + --separator="" --scrollbar="│"' diff --git a/apps/fzf/soft-savanna-monobiome-dark.theme b/apps/fzf/soft-savanna-monobiome-dark.theme new file mode 100644 index 0000000..ddc30c8 --- /dev/null +++ b/apps/fzf/soft-savanna-monobiome-dark.theme @@ -0,0 +1,22 @@ +export FZF_DEFAULT_OPTS=$FZF_DEFAULT_OPTS' + --color=fg:#f1eee6 + --color=fg+:#e1ded6 + --color=bg:#302e28 + --color=bg+:#3d3a34 + + --color=hl:#799ee3 + --color=hl+:#a2bef2 + --color=info:#a7a15f + --color=marker:#94cf9c + + --color=prompt:#f37060 + --color=spinner:#a7a15f + --color=pointer:#f37060 + --color=header:#94cf9c + + --color=border:#3d3a34 + --color=label:#aeaeae + --color=query:#f1eee6 + + --preview-window="border-bold" --prompt="> " --marker=">" --pointer="◆" + --separator="" --scrollbar="│"' diff --git a/apps/fzf/soft-savanna-monobiome-light.theme b/apps/fzf/soft-savanna-monobiome-light.theme new file mode 100644 index 0000000..0112f0c --- /dev/null +++ b/apps/fzf/soft-savanna-monobiome-light.theme @@ -0,0 +1,22 @@ +export FZF_DEFAULT_OPTS=$FZF_DEFAULT_OPTS' + --color=fg:#0d0b06 + --color=fg+:#181610 + --color=bg:#c0bdb6 + --color=bg+:#b0aea6 + + --color=hl:#2d5299 + --color=hl+:#2d5299 + --color=info:#5b572e + --color=marker:#2e6337 + + --color=prompt:#9d1912 + --color=spinner:#5b572e + --color=pointer:#9d1912 + --color=header:#2e6337 + + --color=border:#b0aea6 + --color=label:#aeaeae + --color=query:#0d0b06 + + --preview-window="border-bold" --prompt="> " --marker=">" --pointer="◆" + --separator="" --scrollbar="│"' diff --git a/apps/fzf/soft-tundra-monobiome-dark.theme b/apps/fzf/soft-tundra-monobiome-dark.theme new file mode 100644 index 0000000..5b94d1e --- /dev/null +++ b/apps/fzf/soft-tundra-monobiome-dark.theme @@ -0,0 +1,22 @@ +export FZF_DEFAULT_OPTS=$FZF_DEFAULT_OPTS' + --color=fg:#e9eff6 + --color=fg+:#d9dfe5 + --color=bg:#2a2e33 + --color=bg+:#363b40 + + --color=hl:#799ee3 + --color=hl+:#a2bef2 + --color=info:#a7a15f + --color=marker:#94cf9c + + --color=prompt:#f37060 + --color=spinner:#a7a15f + --color=pointer:#f37060 + --color=header:#94cf9c + + --color=border:#363b40 + --color=label:#aeaeae + --color=query:#e9eff6 + + --preview-window="border-bold" --prompt="> " --marker=">" --pointer="◆" + --separator="" --scrollbar="│"' diff --git a/apps/fzf/soft-tundra-monobiome-light.theme b/apps/fzf/soft-tundra-monobiome-light.theme new file mode 100644 index 0000000..98b32f8 --- /dev/null +++ b/apps/fzf/soft-tundra-monobiome-light.theme @@ -0,0 +1,22 @@ +export FZF_DEFAULT_OPTS=$FZF_DEFAULT_OPTS' + --color=fg:#080c10 + --color=fg+:#12161b + --color=bg:#b9bec5 + --color=bg+:#a9afb5 + + --color=hl:#2d5299 + --color=hl+:#2d5299 + --color=info:#5b572e + --color=marker:#2e6337 + + --color=prompt:#9d1912 + --color=spinner:#5b572e + --color=pointer:#9d1912 + --color=header:#2e6337 + + --color=border:#a9afb5 + --color=label:#aeaeae + --color=query:#080c10 + + --preview-window="border-bold" --prompt="> " --marker=">" --pointer="◆" + --separator="" --scrollbar="│"' diff --git a/apps/fzf/tundra-monobiome-dark.theme b/apps/fzf/tundra-monobiome-dark.theme new file mode 100644 index 0000000..5fc82cc --- /dev/null +++ b/apps/fzf/tundra-monobiome-dark.theme @@ -0,0 +1,22 @@ +export FZF_DEFAULT_OPTS=$FZF_DEFAULT_OPTS' + --color=fg:#d9dfe5 + --color=fg+:#c8ced5 + --color=bg:#1e2227 + --color=bg+:#2a2e33 + + --color=hl:#658ed9 + --color=hl+:#8daeeb + --color=info:#989250 + --color=marker:#80c089 + + --color=prompt:#e95949 + --color=spinner:#989250 + --color=pointer:#e95949 + --color=header:#80c089 + + --color=border:#2a2e33 + --color=label:#aeaeae + --color=query:#d9dfe5 + + --preview-window="border-bold" --prompt="> " --marker=">" --pointer="◆" + --separator="" --scrollbar="│"' diff --git a/apps/fzf/tundra-monobiome-light.theme b/apps/fzf/tundra-monobiome-light.theme new file mode 100644 index 0000000..05a0412 --- /dev/null +++ b/apps/fzf/tundra-monobiome-light.theme @@ -0,0 +1,22 @@ +export FZF_DEFAULT_OPTS=$FZF_DEFAULT_OPTS' + --color=fg:#12161b + --color=fg+:#1e2227 + --color=bg:#c8ced5 + --color=bg+:#b9bec5 + + --color=hl:#3860ac + --color=hl+:#3860ac + --color=info:#6a6535 + --color=marker:#377242 + + --color=prompt:#b52119 + --color=spinner:#6a6535 + --color=pointer:#b52119 + --color=header:#377242 + + --color=border:#b9bec5 + --color=label:#aeaeae + --color=query:#12161b + + --preview-window="border-bold" --prompt="> " --marker=">" --pointer="◆" + --separator="" --scrollbar="│"' diff --git a/apps/kitty/grassland-monobiome-dark.theme b/apps/kitty/grassland-monobiome-dark.theme new file mode 100644 index 0000000..bf2cf84 --- /dev/null +++ b/apps/kitty/grassland-monobiome-dark.theme @@ -0,0 +1,42 @@ +# base settings +background #1d2321 +foreground #d7e0dd + +selection_background #29302d +selection_foreground #c7d0cc + +cursor #c7d0cc +cursor_text_color #29302d + +# black +color0 #1d2321 +color8 #353c3a + +# red +color1 #e95949 +color9 #fa897a + +# green +color2 #5da268 +color10 #80c089 + +# yellow +color3 #989250 +color11 #b7b170 + +# blue +color4 #658ed9 +color12 #8daeeb + +# purple (red) +color5 #ca791c +color13 #e79a51 + +# cyan (blue) +color6 #658ed9 +color14 #8daeeb + +## white +color7 #b7c0bc +color15 #d7e0dd + diff --git a/apps/kitty/grassland-monobiome-light.theme b/apps/kitty/grassland-monobiome-light.theme new file mode 100644 index 0000000..ed7a800 --- /dev/null +++ b/apps/kitty/grassland-monobiome-light.theme @@ -0,0 +1,42 @@ +# base settings +background #c7d0cc +foreground #111815 + +selection_background #b7c0bc +selection_foreground #1d2321 + +cursor #1d2321 +cursor_text_color #b7c0bc + +# black +color0 #111815 +color8 #29302d + +# red +color1 #b52119 +color9 #b52119 + +# green +color2 #377242 +color10 #377242 + +# yellow +color3 #6a6535 +color11 #6a6535 + +# blue +color4 #3860ac +color12 #3860ac + +# purple (red) +color5 #905201 +color13 #905201 + +# cyan (blue) +color6 #3860ac +color14 #3860ac + +## white +color7 #a8b0ad +color15 #c7d0cc + diff --git a/apps/kitty/hard-grassland-monobiome-dark.theme b/apps/kitty/hard-grassland-monobiome-dark.theme new file mode 100644 index 0000000..113e4a2 --- /dev/null +++ b/apps/kitty/hard-grassland-monobiome-dark.theme @@ -0,0 +1,42 @@ +# base settings +background #111815 +foreground #c7d0cc + +selection_background #1d2321 +selection_foreground #b7c0bc + +cursor #b7c0bc +cursor_text_color #1d2321 + +# black +color0 #111815 +color8 #29302d + +# red +color1 #dc4134 +color9 #f37060 + +# green +color2 #4f925a +color10 #6eb178 + +# yellow +color3 #888346 +color11 #a7a15f + +# blue +color4 #557ecc +color12 #799ee3 + +# purple (red) +color5 #b86b05 +color13 #da8934 + +# cyan (blue) +color6 #557ecc +color14 #799ee3 + +## white +color7 #a8b0ad +color15 #c7d0cc + diff --git a/apps/kitty/hard-grassland-monobiome-light.theme b/apps/kitty/hard-grassland-monobiome-light.theme new file mode 100644 index 0000000..1f102dc --- /dev/null +++ b/apps/kitty/hard-grassland-monobiome-light.theme @@ -0,0 +1,42 @@ +# base settings +background #d7e0dd +foreground #1d2321 + +selection_background #c7d0cc +selection_foreground #29302d + +cursor #29302d +cursor_text_color #c7d0cc + +# black +color0 #b7c0bc +color8 #d7e0dd + +# red +color1 #ca2e23 +color9 #ca2e23 + +# green +color2 #42824e +color10 #42824e + +# yellow +color3 #79743d +color11 #79743d + +# blue +color4 #456fbe +color12 #456fbe + +# purple (red) +color5 #a45e00 +color13 #a45e00 + +# cyan (blue) +color6 #456fbe +color14 #456fbe + +## white +color7 #1d2321 +color15 #353c3a + diff --git a/apps/kitty/hard-monobiome-dark.theme b/apps/kitty/hard-monobiome-dark.theme new file mode 100644 index 0000000..5dfdeb7 --- /dev/null +++ b/apps/kitty/hard-monobiome-dark.theme @@ -0,0 +1,42 @@ +# base settings +background #161616 +foreground #cecece + +selection_background #222222 +selection_foreground #bebebe + +cursor #bebebe +cursor_text_color #222222 + +# black +color0 #161616 +color8 #2e2e2e + +# red +color1 #dc4134 +color9 #f37060 + +# green +color2 #4f925a +color10 #6eb178 + +# yellow +color3 #888346 +color11 #a7a15f + +# blue +color4 #557ecc +color12 #799ee3 + +# purple (red) +color5 #b86b05 +color13 #da8934 + +# cyan (blue) +color6 #557ecc +color14 #799ee3 + +## white +color7 #aeaeae +color15 #cecece + diff --git a/apps/kitty/hard-monobiome-light.theme b/apps/kitty/hard-monobiome-light.theme new file mode 100644 index 0000000..fd73daf --- /dev/null +++ b/apps/kitty/hard-monobiome-light.theme @@ -0,0 +1,42 @@ +# base settings +background #dedede +foreground #222222 + +selection_background #cecece +selection_foreground #2e2e2e + +cursor #2e2e2e +cursor_text_color #cecece + +# black +color0 #bebebe +color8 #dedede + +# red +color1 #ca2e23 +color9 #ca2e23 + +# green +color2 #42824e +color10 #42824e + +# yellow +color3 #79743d +color11 #79743d + +# blue +color4 #456fbe +color12 #456fbe + +# purple (red) +color5 #a45e00 +color13 #a45e00 + +# cyan (blue) +color6 #456fbe +color14 #456fbe + +## white +color7 #222222 +color15 #3a3a3a + diff --git a/apps/kitty/hard-savanna-monobiome-dark.theme b/apps/kitty/hard-savanna-monobiome-dark.theme new file mode 100644 index 0000000..d008af9 --- /dev/null +++ b/apps/kitty/hard-savanna-monobiome-dark.theme @@ -0,0 +1,42 @@ +# base settings +background #181610 +foreground #d0cec6 + +selection_background #24211c +selection_foreground #c0bdb6 + +cursor #c0bdb6 +cursor_text_color #24211c + +# black +color0 #181610 +color8 #302e28 + +# red +color1 #dc4134 +color9 #f37060 + +# green +color2 #4f925a +color10 #6eb178 + +# yellow +color3 #888346 +color11 #a7a15f + +# blue +color4 #557ecc +color12 #799ee3 + +# purple (red) +color5 #b86b05 +color13 #da8934 + +# cyan (blue) +color6 #557ecc +color14 #799ee3 + +## white +color7 #b0aea6 +color15 #d0cec6 + diff --git a/apps/kitty/hard-savanna-monobiome-light.theme b/apps/kitty/hard-savanna-monobiome-light.theme new file mode 100644 index 0000000..581ce6a --- /dev/null +++ b/apps/kitty/hard-savanna-monobiome-light.theme @@ -0,0 +1,42 @@ +# base settings +background #e1ded6 +foreground #24211c + +selection_background #d0cec6 +selection_foreground #302e28 + +cursor #302e28 +cursor_text_color #d0cec6 + +# black +color0 #24211c +color8 #3d3a34 + +# red +color1 #ca2e23 +color9 #ca2e23 + +# green +color2 #42824e +color10 #42824e + +# yellow +color3 #79743d +color11 #79743d + +# blue +color4 #456fbe +color12 #456fbe + +# purple (red) +color5 #a45e00 +color13 #a45e00 + +# cyan (blue) +color6 #456fbe +color14 #456fbe + +## white +color7 #c0bdb6 +color15 #e1ded6 + diff --git a/apps/kitty/hard-tundra-monobiome-dark.theme b/apps/kitty/hard-tundra-monobiome-dark.theme new file mode 100644 index 0000000..491e742 --- /dev/null +++ b/apps/kitty/hard-tundra-monobiome-dark.theme @@ -0,0 +1,42 @@ +# base settings +background #12161b +foreground #c8ced5 + +selection_background #1e2227 +selection_foreground #b9bec5 + +cursor #b9bec5 +cursor_text_color #1e2227 + +# black +color0 #12161b +color8 #2a2e33 + +# red +color1 #dc4134 +color9 #f37060 + +# green +color2 #4f925a +color10 #6eb178 + +# yellow +color3 #888346 +color11 #a7a15f + +# blue +color4 #557ecc +color12 #799ee3 + +# purple (red) +color5 #b86b05 +color13 #da8934 + +# cyan (blue) +color6 #557ecc +color14 #799ee3 + +## white +color7 #a9afb5 +color15 #c8ced5 + diff --git a/apps/kitty/hard-tundra-monobiome-light.theme b/apps/kitty/hard-tundra-monobiome-light.theme new file mode 100644 index 0000000..750c28a --- /dev/null +++ b/apps/kitty/hard-tundra-monobiome-light.theme @@ -0,0 +1,42 @@ +# base settings +background #d9dfe5 +foreground #1e2227 + +selection_background #c8ced5 +selection_foreground #2a2e33 + +cursor #2a2e33 +cursor_text_color #c8ced5 + +# black +color0 #1e2227 +color8 #363b40 + +# red +color1 #ca2e23 +color9 #ca2e23 + +# green +color2 #42824e +color10 #42824e + +# yellow +color3 #79743d +color11 #79743d + +# blue +color4 #456fbe +color12 #456fbe + +# purple (red) +color5 #a45e00 +color13 #a45e00 + +# cyan (blue) +color6 #456fbe +color14 #456fbe + +## white +color7 #b9bec5 +color15 #d9dfe5 + diff --git a/apps/kitty/monobiome-dark.theme b/apps/kitty/monobiome-dark.theme new file mode 100644 index 0000000..ce7ab30 --- /dev/null +++ b/apps/kitty/monobiome-dark.theme @@ -0,0 +1,42 @@ +# base settings +background #222222 +foreground #dedede + +selection_background #2e2e2e +selection_foreground #cecece + +cursor #cecece +cursor_text_color #2e2e2e + +# black +color0 #222222 +color8 #3a3a3a + +# red +color1 #e95949 +color9 #fa897a + +# green +color2 #5da268 +color10 #80c089 + +# yellow +color3 #989250 +color11 #b7b170 + +# blue +color4 #658ed9 +color12 #8daeeb + +# purple (red) +color5 #ca791c +color13 #e79a51 + +# cyan (blue) +color6 #658ed9 +color14 #8daeeb + +## white +color7 #bebebe +color15 #dedede + diff --git a/apps/kitty/monobiome-light.theme b/apps/kitty/monobiome-light.theme new file mode 100644 index 0000000..cc37b77 --- /dev/null +++ b/apps/kitty/monobiome-light.theme @@ -0,0 +1,42 @@ +# base settings +background #cecece +foreground #161616 + +selection_background #bebebe +selection_foreground #222222 + +cursor #222222 +cursor_text_color #bebebe + +# black +color0 #161616 +color8 #2e2e2e + +# red +color1 #b52119 +color9 #b52119 + +# green +color2 #377242 +color10 #377242 + +# yellow +color3 #6a6535 +color11 #6a6535 + +# blue +color4 #3860ac +color12 #3860ac + +# purple (red) +color5 #905201 +color13 #905201 + +# cyan (blue) +color6 #3860ac +color14 #3860ac + +## white +color7 #aeaeae +color15 #cecece + diff --git a/apps/kitty/savanna-monobiome-dark.theme b/apps/kitty/savanna-monobiome-dark.theme new file mode 100644 index 0000000..8ed6022 --- /dev/null +++ b/apps/kitty/savanna-monobiome-dark.theme @@ -0,0 +1,42 @@ +# base settings +background #24211c +foreground #e1ded6 + +selection_background #302e28 +selection_foreground #d0cec6 + +cursor #d0cec6 +cursor_text_color #302e28 + +# black +color0 #24211c +color8 #3d3a34 + +# red +color1 #e95949 +color9 #fa897a + +# green +color2 #5da268 +color10 #80c089 + +# yellow +color3 #989250 +color11 #b7b170 + +# blue +color4 #658ed9 +color12 #8daeeb + +# purple (red) +color5 #ca791c +color13 #e79a51 + +# cyan (blue) +color6 #658ed9 +color14 #8daeeb + +## white +color7 #c0bdb6 +color15 #e1ded6 + diff --git a/apps/kitty/savanna-monobiome-light.theme b/apps/kitty/savanna-monobiome-light.theme new file mode 100644 index 0000000..0950603 --- /dev/null +++ b/apps/kitty/savanna-monobiome-light.theme @@ -0,0 +1,42 @@ +# base settings +background #d0cec6 +foreground #181610 + +selection_background #c0bdb6 +selection_foreground #24211c + +cursor #24211c +cursor_text_color #c0bdb6 + +# black +color0 #181610 +color8 #302e28 + +# red +color1 #b52119 +color9 #b52119 + +# green +color2 #377242 +color10 #377242 + +# yellow +color3 #6a6535 +color11 #6a6535 + +# blue +color4 #3860ac +color12 #3860ac + +# purple (red) +color5 #905201 +color13 #905201 + +# cyan (blue) +color6 #3860ac +color14 #3860ac + +## white +color7 #b0aea6 +color15 #d0cec6 + diff --git a/apps/kitty/soft-grassland-monobiome-dark.theme b/apps/kitty/soft-grassland-monobiome-dark.theme new file mode 100644 index 0000000..32e9b18 --- /dev/null +++ b/apps/kitty/soft-grassland-monobiome-dark.theme @@ -0,0 +1,42 @@ +# base settings +background #29302d +foreground #e8f1ed + +selection_background #353c3a +selection_foreground #d7e0dd + +cursor #d7e0dd +cursor_text_color #353c3a + +# black +color0 #29302d +color8 #424a47 + +# red +color1 #f37060 +color9 #fea294 + +# green +color2 #6eb178 +color10 #94cf9c + +# yellow +color3 #a7a15f +color11 #c6c182 + +# blue +color4 #799ee3 +color12 #a2bef2 + +# purple (red) +color5 #da8934 +color13 #f1ad6f + +# cyan (blue) +color6 #799ee3 +color14 #a2bef2 + +## white +color7 #c7d0cc +color15 #e8f1ed + diff --git a/apps/kitty/soft-grassland-monobiome-light.theme b/apps/kitty/soft-grassland-monobiome-light.theme new file mode 100644 index 0000000..6269933 --- /dev/null +++ b/apps/kitty/soft-grassland-monobiome-light.theme @@ -0,0 +1,42 @@ +# base settings +background #b7c0bc +foreground #070d0a + +selection_background #a8b0ad +selection_foreground #111815 + +cursor #111815 +cursor_text_color #a8b0ad + +# black +color0 #070d0a +color8 #1d2321 + +# red +color1 #9d1912 +color9 #9d1912 + +# green +color2 #2e6337 +color10 #2e6337 + +# yellow +color3 #5b572e +color11 #5b572e + +# blue +color4 #2d5299 +color12 #2d5299 + +# purple (red) +color5 #7c4706 +color13 #7c4706 + +# cyan (blue) +color6 #2d5299 +color14 #2d5299 + +## white +color7 #98a19d +color15 #b7c0bc + diff --git a/apps/kitty/soft-monobiome-dark.theme b/apps/kitty/soft-monobiome-dark.theme new file mode 100644 index 0000000..9276353 --- /dev/null +++ b/apps/kitty/soft-monobiome-dark.theme @@ -0,0 +1,42 @@ +# base settings +background #2e2e2e +foreground #eeeeee + +selection_background #3a3a3a +selection_foreground #dedede + +cursor #dedede +cursor_text_color #3a3a3a + +# black +color0 #2e2e2e +color8 #484848 + +# red +color1 #f37060 +color9 #fea294 + +# green +color2 #6eb178 +color10 #94cf9c + +# yellow +color3 #a7a15f +color11 #c6c182 + +# blue +color4 #799ee3 +color12 #a2bef2 + +# purple (red) +color5 #da8934 +color13 #f1ad6f + +# cyan (blue) +color6 #799ee3 +color14 #a2bef2 + +## white +color7 #cecece +color15 #eeeeee + diff --git a/apps/kitty/soft-monobiome-light.theme b/apps/kitty/soft-monobiome-light.theme new file mode 100644 index 0000000..c040096 --- /dev/null +++ b/apps/kitty/soft-monobiome-light.theme @@ -0,0 +1,42 @@ +# base settings +background #bebebe +foreground #0b0b0b + +selection_background #aeaeae +selection_foreground #161616 + +cursor #161616 +cursor_text_color #aeaeae + +# black +color0 #0b0b0b +color8 #222222 + +# red +color1 #9d1912 +color9 #9d1912 + +# green +color2 #2e6337 +color10 #2e6337 + +# yellow +color3 #5b572e +color11 #5b572e + +# blue +color4 #2d5299 +color12 #2d5299 + +# purple (red) +color5 #7c4706 +color13 #7c4706 + +# cyan (blue) +color6 #2d5299 +color14 #2d5299 + +## white +color7 #9e9e9e +color15 #bebebe + diff --git a/apps/kitty/soft-savanna-monobiome-dark.theme b/apps/kitty/soft-savanna-monobiome-dark.theme new file mode 100644 index 0000000..8bf1610 --- /dev/null +++ b/apps/kitty/soft-savanna-monobiome-dark.theme @@ -0,0 +1,42 @@ +# base settings +background #302e28 +foreground #f1eee6 + +selection_background #3d3a34 +selection_foreground #e1ded6 + +cursor #e1ded6 +cursor_text_color #3d3a34 + +# black +color0 #302e28 +color8 #4a4841 + +# red +color1 #f37060 +color9 #fea294 + +# green +color2 #6eb178 +color10 #94cf9c + +# yellow +color3 #a7a15f +color11 #c6c182 + +# blue +color4 #799ee3 +color12 #a2bef2 + +# purple (red) +color5 #da8934 +color13 #f1ad6f + +# cyan (blue) +color6 #799ee3 +color14 #a2bef2 + +## white +color7 #d0cec6 +color15 #f1eee6 + diff --git a/apps/kitty/soft-savanna-monobiome-light.theme b/apps/kitty/soft-savanna-monobiome-light.theme new file mode 100644 index 0000000..5219768 --- /dev/null +++ b/apps/kitty/soft-savanna-monobiome-light.theme @@ -0,0 +1,42 @@ +# base settings +background #c0bdb6 +foreground #0d0b06 + +selection_background #b0aea6 +selection_foreground #181610 + +cursor #181610 +cursor_text_color #b0aea6 + +# black +color0 #0d0b06 +color8 #24211c + +# red +color1 #9d1912 +color9 #9d1912 + +# green +color2 #2e6337 +color10 #2e6337 + +# yellow +color3 #5b572e +color11 #5b572e + +# blue +color4 #2d5299 +color12 #2d5299 + +# purple (red) +color5 #7c4706 +color13 #7c4706 + +# cyan (blue) +color6 #2d5299 +color14 #2d5299 + +## white +color7 #a19e97 +color15 #c0bdb6 + diff --git a/apps/kitty/soft-tundra-monobiome-dark.theme b/apps/kitty/soft-tundra-monobiome-dark.theme new file mode 100644 index 0000000..7cc04ba --- /dev/null +++ b/apps/kitty/soft-tundra-monobiome-dark.theme @@ -0,0 +1,42 @@ +# base settings +background #2a2e33 +foreground #e9eff6 + +selection_background #363b40 +selection_foreground #d9dfe5 + +cursor #d9dfe5 +cursor_text_color #363b40 + +# black +color0 #2a2e33 +color8 #43484e + +# red +color1 #f37060 +color9 #fea294 + +# green +color2 #6eb178 +color10 #94cf9c + +# yellow +color3 #a7a15f +color11 #c6c182 + +# blue +color4 #799ee3 +color12 #a2bef2 + +# purple (red) +color5 #da8934 +color13 #f1ad6f + +# cyan (blue) +color6 #799ee3 +color14 #a2bef2 + +## white +color7 #c8ced5 +color15 #e9eff6 + diff --git a/apps/kitty/soft-tundra-monobiome-light.theme b/apps/kitty/soft-tundra-monobiome-light.theme new file mode 100644 index 0000000..982f887 --- /dev/null +++ b/apps/kitty/soft-tundra-monobiome-light.theme @@ -0,0 +1,42 @@ +# base settings +background #b9bec5 +foreground #080c10 + +selection_background #a9afb5 +selection_foreground #12161b + +cursor #12161b +cursor_text_color #a9afb5 + +# black +color0 #080c10 +color8 #1e2227 + +# red +color1 #9d1912 +color9 #9d1912 + +# green +color2 #2e6337 +color10 #2e6337 + +# yellow +color3 #5b572e +color11 #5b572e + +# blue +color4 #2d5299 +color12 #2d5299 + +# purple (red) +color5 #7c4706 +color13 #7c4706 + +# cyan (blue) +color6 #2d5299 +color14 #2d5299 + +## white +color7 #999fa5 +color15 #b9bec5 + diff --git a/apps/kitty/tundra-monobiome-dark.theme b/apps/kitty/tundra-monobiome-dark.theme new file mode 100644 index 0000000..5aba844 --- /dev/null +++ b/apps/kitty/tundra-monobiome-dark.theme @@ -0,0 +1,42 @@ +# base settings +background #1e2227 +foreground #d9dfe5 + +selection_background #2a2e33 +selection_foreground #c8ced5 + +cursor #c8ced5 +cursor_text_color #2a2e33 + +# black +color0 #1e2227 +color8 #363b40 + +# red +color1 #e95949 +color9 #fa897a + +# green +color2 #5da268 +color10 #80c089 + +# yellow +color3 #989250 +color11 #b7b170 + +# blue +color4 #658ed9 +color12 #8daeeb + +# purple (red) +color5 #ca791c +color13 #e79a51 + +# cyan (blue) +color6 #658ed9 +color14 #8daeeb + +## white +color7 #b9bec5 +color15 #d9dfe5 + diff --git a/apps/kitty/tundra-monobiome-light.theme b/apps/kitty/tundra-monobiome-light.theme new file mode 100644 index 0000000..e954d5e --- /dev/null +++ b/apps/kitty/tundra-monobiome-light.theme @@ -0,0 +1,42 @@ +# base settings +background #c8ced5 +foreground #12161b + +selection_background #b9bec5 +selection_foreground #1e2227 + +cursor #1e2227 +cursor_text_color #b9bec5 + +# black +color0 #12161b +color8 #2a2e33 + +# red +color1 #b52119 +color9 #b52119 + +# green +color2 #377242 +color10 #377242 + +# yellow +color3 #6a6535 +color11 #6a6535 + +# blue +color4 #3860ac +color12 #3860ac + +# purple (red) +color5 #905201 +color13 #905201 + +# cyan (blue) +color6 #3860ac +color14 #3860ac + +## white +color7 #a9afb5 +color15 #c8ced5 + diff --git a/apps/nvim/grassland-monobiome-dark.vim b/apps/nvim/grassland-monobiome-dark.vim new file mode 100644 index 0000000..65a4292 --- /dev/null +++ b/apps/nvim/grassland-monobiome-dark.vim @@ -0,0 +1,882 @@ +" vi:syntax=vim +" +" Top-level remarks: +" +" - `hi` sets highlight colors for syntax groups, allowing one to specify fg and bg colors +" for GUI and terminal Vim. +" - `link` allows for linking one syntax group to another, reusing the same color +" settings. Language-specific groups can then point to one of the base color highlight +" groups, for example, without needing to repeat the raw color values. + +" GUI color definitions +let s:gui00 = "#1d2321" +let g:base16_gui00 = "#1d2321" +let s:gui01 = "#29302d" +let g:base16_gui01 = "#29302d" +let s:gui02 = "#353c3a" +let g:base16_gui02 = "#353c3a" +let s:gui03 = "#424a47" +let g:base16_gui03 = "#424a47" +let s:gui04 = "#a8b0ad" +let g:base16_gui04 = "#a8b0ad" +let s:gui05 = "#b7c0bc" +let g:base16_gui05 = "#b7c0bc" +let s:gui06 = "#c7d0cc" +let g:base16_gui06 = "#c7d0cc" +let s:gui07 = "#d7e0dd" +let g:base16_gui07 = "#d7e0dd" +let s:gui08 = "#e95949" +let g:base16_gui08 = "#e95949" +let s:gui09 = "#ca791c" +let g:base16_gui09 = "#ca791c" +let s:gui0A = "#989250" +let g:base16_gui0A = "#989250" +let s:gui0B = "#5da268" +let g:base16_gui0B = "#5da268" +let s:gui0C = "#5da268" +let g:base16_gui0C = "#5da268" +let s:gui0D = "#658ed9" +let g:base16_gui0D = "#658ed9" +let s:gui0E = "#658ed9" +let g:base16_gui0E = "#658ed9" +let s:gui0F = "#e95949" +let g:base16_gui0F = "#e95949" + +let s:grey = "#7a827f" + +" Terminal color definitions +let s:cterm00 = "00" +let g:base16_cterm00 = "00" +let s:cterm03 = "08" +let g:base16_cterm03 = "08" +let s:cterm05 = "07" +let g:base16_cterm05 = "07" +let s:cterm07 = "15" +let g:base16_cterm07 = "15" +let s:cterm08 = "01" +let g:base16_cterm08 = "01" +let s:cterm0A = "03" +let g:base16_cterm0A = "03" +let s:cterm0B = "02" +let g:base16_cterm0B = "02" +let s:cterm0C = "06" +let g:base16_cterm0C = "06" +let s:cterm0D = "04" +let g:base16_cterm0D = "04" +let s:cterm0E = "05" +let g:base16_cterm0E = "05" + +let s:cterm01 = "10" +let g:base16_cterm01 = "10" +let s:cterm02 = "11" +let g:base16_cterm02 = "11" +let s:cterm04 = "12" +let g:base16_cterm04 = "12" +let s:cterm06 = "13" +let g:base16_cterm06 = "13" +let s:cterm09 = "09" +let g:base16_cterm09 = "09" +let s:cterm0F = "14" +let g:base16_cterm0F = "14" + +" Neovim terminal colours +if has("nvim") + let g:terminal_color_0 = "#1d2321" + let g:terminal_color_1 = "#e95949" + let g:terminal_color_2 = "#5da268" + let g:terminal_color_3 = "#989250" + let g:terminal_color_4 = "#658ed9" + let g:terminal_color_5 = "#658ed9" + let g:terminal_color_6 = "#5da268" + let g:terminal_color_7 = "#b7c0bc" + let g:terminal_color_8 = "#424a47" + let g:terminal_color_9 = "#e95949" + let g:terminal_color_10 = "#5da268" + let g:terminal_color_11 = "#989250" + let g:terminal_color_12 = "#658ed9" + let g:terminal_color_13 = "#658ed9" + let g:terminal_color_14 = "#5da268" + let g:terminal_color_15 = "#d7e0dd" + let g:terminal_color_background = g:terminal_color_0 + let g:terminal_color_foreground = g:terminal_color_5 + + if &background == "light" + let g:terminal_color_background = g:terminal_color_7 + let g:terminal_color_foreground = g:terminal_color_2 + endif + +elseif has("terminal") + let g:terminal_ansi_colors = [ + \ "#1d2321", + \ "#e95949", + \ "#5da268", + \ "#989250", + \ "#658ed9", + \ "#658ed9", + \ "#5da268", + \ "#b7c0bc", + \ "#424a47", + \ "#e95949", + \ "#5da268", + \ "#989250", + \ "#658ed9", + \ "#658ed9", + \ "#5da268", + \ "#d7e0dd", + \ ] +endif + +let s:guibg = s:gui00 +let s:ctermbg = s:cterm00 + +" Theme setup +hi clear +syntax reset +let g:colors_name = "active" + +" Highlighting function +" Optional variables are attributes and guisp +function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) + " For a given syntax group, sets the GUI and terminal foreground and backgrounds + " Optional parameters are interpreted as `attr` and `guisp`, the first of which appears + " to be a modifier for the group (e.g., bold, italic), and `guisp` appears to be + " 'special' colors used for underlines in the GUI. + let l:attr = get(a:, 1, "") + let l:guisp = get(a:, 2, "") + + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + + if a:guifg != "" + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=" . a:guifg + endif + endif + + if a:guibg != "" + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=" . a:guibg + endif + endif + + if a:ctermfg != "" + exec "hi " . a:group . " ctermfg=" . a:ctermfg + endif + + if a:ctermbg != "" + exec "hi " . a:group . " ctermbg=" . a:ctermbg + endif + + if l:attr != "" + exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr + endif + + if l:guisp != "" + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=" . l:guisp + endif + endif +endfunction + + +fun hi(group, guifg, guibg, ctermfg, ctermbg, attr, guisp) + call g:Base16hi(a:group, a:guifg, a:guibg, a:ctermfg, a:ctermbg, a:attr, a:guisp) +endfun + + +" color groups for interpretability +call hi("ThemeBg0", s:gui00, "", s:cterm00, "", "", "") +call hi("ThemeBg1", s:gui01, "", s:cterm01, "", "", "") +call hi("ThemeBg2", s:gui02, "", s:cterm02, "", "", "") +call hi("ThemeBg3", s:gui03, "", s:cterm03, "", "", "") +call hi("ThemeFg3", s:gui04, "", s:cterm04, "", "", "") +call hi("ThemeFg2", s:gui05, "", s:cterm05, "", "", "") +call hi("ThemeFg1", s:gui06, "", s:cterm06, "", "", "") +call hi("ThemeFg0", s:gui07, "", s:cterm07, "", "", "") +" +call hi("ThemeRed", s:gui08, "", s:cterm08, "", "", "") +call hi("ThemeOrange", s:gui09, "", s:cterm09, "", "", "") +call hi("ThemeYellow", s:gui0A, "", s:cterm0A, "", "", "") +call hi("ThemeGreen", s:gui0B, "", s:cterm0B, "", "", "") +call hi("ThemeCyan", s:gui0C, "", s:cterm0C, "", "", "") +call hi("ThemeBlue", s:gui0D, "", s:cterm0D, "", "", "") +call hi("ThemeViolet", s:gui0E, "", s:cterm0E, "", "", "") +call hi("ThemeMagenta", s:gui0F, "", s:cterm0F, "", "", "") + +call hi("ThemeRedBold", s:gui08, "", s:cterm08, "", "bold", "") +call hi("ThemeOrangeBold", s:gui09, "", s:cterm09, "", "bold", "") +call hi("ThemeYellowBold", s:gui0A, "", s:cterm0A, "", "bold", "") +call hi("ThemeGreenBold", s:gui0B, "", s:cterm0B, "", "bold", "") +call hi("ThemeCyanBold", s:gui0C, "", s:cterm0C, "", "bold", "") +call hi("ThemeBlueBold", s:gui0D, "", s:cterm0D, "", "bold", "") +call hi("ThemeVioletBold", s:gui0E, "", s:cterm0E, "", "bold", "") +call hi("ThemeMagentaBold", s:gui0F, "", s:cterm0F, "", "bold", "") + +call hi("ThemeRedItalic", s:gui08, "", s:cterm08, "", "italic", "") +call hi("ThemeOrangeItalic", s:gui09, "", s:cterm09, "", "italic", "") +call hi("ThemeYellowItalic", s:gui0A, "", s:cterm0A, "", "italic", "") +call hi("ThemeGreenItalic", s:gui0B, "", s:cterm0B, "", "italic", "") +call hi("ThemeCyanItalic", s:gui0C, "", s:cterm0C, "", "italic", "") +call hi("ThemeBlueItalic", s:gui0D, "", s:cterm0D, "", "italic", "") +call hi("ThemeVioletItalic", s:gui0E, "", s:cterm0E, "", "italic", "") +call hi("ThemeMagentaItalic", s:gui0F, "", s:cterm0F, "", "italic", "") + +call hi("ThemeGrey", s:grey, "", s:cterm03, "", "", "") +call hi("ThemeGreyItalic", s:grey, "", s:cterm03, "", "italic", "") + + +" Vim editor colors +call hi("Normal", s:gui05, s:guibg, s:cterm05, s:ctermbg, "", "") +call hi("Bold", "", "", "", "", "bold", "") +call hi("Debug", s:gui08, "", s:cterm08, "", "", "") +call hi("Directory", s:gui0D, "", s:cterm0D, "", "", "") +call hi("Error", s:guibg, s:gui08, s:ctermbg, s:cterm08, "", "") +call hi("ErrorMsg", s:gui08, s:guibg, s:cterm08, s:ctermbg, "", "") +call hi("Exception", s:gui08, "", s:cterm08, "", "", "") +call hi("FoldColumn", s:gui03, s:guibg, s:cterm03, s:ctermbg, "", "") +call hi("Folded", s:gui02, s:guibg, s:cterm02, s:ctermbg, "", "") +call hi("IncSearch", s:gui01, s:gui09, s:cterm01, s:cterm09, "none", "") +call hi("Italic", "", "", "", "", "italic", "") +call hi("Macro", s:gui0C, "", s:cterm0C, "", "", "") +call hi("MatchParen", "", s:gui03, "", s:cterm03, "", "") +call hi("ModeMsg", s:gui0B, "", s:cterm0B, "", "", "") +call hi("MoreMsg", s:gui0B, "", s:cterm0B, "", "", "") +call hi("Question", s:gui0D, "", s:cterm0D, "", "", "") +call hi("Search", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "", "") +call hi("Substitute", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "none", "") +call hi("SpecialKey", s:gui03, "", s:cterm03, "", "", "") +call hi("TooLong", s:gui08, "", s:cterm08, "", "", "") +call hi("Underlined", "", "", "", "", "underline", "fg") +call hi("Visual", "", s:gui02, "", s:cterm02, "", "") +call hi("VisualNOS", s:gui08, "", s:cterm08, "", "", "") +call hi("WarningMsg", s:gui08, "", s:cterm08, "", "", "") +call hi("WildMenu", s:guibg, s:gui06, s:ctermbg, s:cterm05, "", "") +call hi("Title", s:gui0D, "", s:cterm0D, "", "none", "") +call hi("Conceal", s:gui0D, s:guibg, s:cterm0D, s:ctermbg, "", "") +call hi("Cursor", s:gui05, s:guibg, "", "", "inverse", "") +call hi("NonText", s:gui03, "", s:cterm03, "", "", "") +call hi("Whitespace", s:gui03, "", s:cterm03, "", "", "") +call hi("LineNr", s:gui03, s:guibg, s:cterm03, s:ctermbg, "", "") +call hi("SignColumn", s:gui03, s:guibg, s:cterm03, s:ctermbg, "", "") +call hi("StatusLine", s:gui07, s:gui01, s:cterm07, s:cterm01, "none", "") +call hi("StatusLineNC", s:gui06, s:gui01, s:cterm05, s:cterm01, "none", "") +call hi("VertSplit", s:gui01, s:guibg, s:cterm01, s:ctermbg, "none", "") +call hi("ColorColumn", "", s:gui01, "", s:cterm01, "none", "") +call hi("CursorColumn", "", s:gui01, "", s:cterm01, "none", "") +call hi("CursorLine", "", s:gui01, "", s:cterm01, "none", "") +call hi("CursorLineNr", s:gui04, s:gui01, s:cterm04, s:cterm01, "bold", "") +call hi("QuickFixLine", "", s:gui01, "", s:cterm01, "none", "") +call hi("PMenu", s:gui06, s:gui01, s:cterm06, s:cterm01, "none", "") +call hi("PMenuSel", s:gui06, s:gui02, s:cterm06, s:cterm02, "", "") +call hi("PMenuSbar", "", s:gui03, "", s:cterm03, "", "") +call hi("PMenuThumb", "", s:gui04, "", s:cterm04, "", "") +call hi("TabLine", s:gui03, s:gui01, s:cterm03, s:cterm01, "none", "") +call hi("TabLineFill", s:gui03, s:gui01, s:cterm03, s:cterm01, "none", "") +call hi("TabLineSel", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "none", "") + +" Standard syntax +hi! link Boolean ThemeOrange +hi! link Character ThemeRed + +"call hi("Comment", s:gui03, "", s:cterm03, "", "italic", "") +hi! link Comment ThemeGreyItalic + +hi! link Conditional ThemeRed +hi! link Constant ThemeOrange +call hi("Define", s:gui0E, "", s:cterm0E, "", "none", "") +hi! link Delimiter ThemeFg1 + +if has("patch-8.0.1038") + call hi("Deprecated", "", "", "", "", "strikethrough", "") +endif + +hi! link Float ThemeOrange +hi! link Function ThemeBlue +call hi("Identifier", s:gui06, "", s:cterm05, "", "none", "") +hi! link Include ThemeBlue +hi! link Constant ThemeOrange +call hi("Keyword", s:gui0E, "", s:cterm0E, "", "none", "") +hi! link Label ThemeOrange +hi! link Number ThemeOrange +hi! link Operator ThemeYellow +hi! link PreProc ThemeOrange +hi! link Repeat ThemeViolet +hi! link Special ThemeYellow +hi! link SpecialChar ThemeMagenta +hi! link Statement ThemeRed +hi! link StorageClass ThemeOrange +hi! link String ThemeGreen +hi! link Structure ThemeOrange +hi! link Tag ThemeOrange + +call hi("Todo", s:gui08, s:guibg, s:cterm08, s:ctermbg, "italic", "") +call hi("Type", s:gui0A, "", s:cterm0A, "", "none", "") + +hi! link Typedef ThemeOrange + + +" Treesitter +if has("nvim-0.8.0") + call hi("@field", s:gui08, "", s:cterm08, "", "", "") + call hi("@property", s:gui08, "", s:cterm08, "", "", "") + call hi("@namespace", s:gui06, "", s:cterm05, "", "italic", "") + call hi("@variable.builtin", s:gui06, "", s:cterm05, "", "italic", "") + call hi("@text.reference", s:gui08, "", s:cterm08, "", "", "") + call hi("@text.uri", s:gui08, "", s:cterm08, "", "italic", "") + + " Annotations & Attributes + call hi("@annotation", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@attribute", s:gui0D, "", s:cterm0D, "", "", "") + + " Booleans, Characters & Comments + call hi("@boolean", s:gui09, "", s:cterm09, "", "", "") + call hi("@character", s:gui08, "", s:cterm08, "", "", "") + call hi("@character.special", s:gui0F, "", s:cterm0F, "", "", "") + call hi("@comment", s:gui03, "", s:cterm03, "", "", "") + + " Conditionals, Constants & Debugging + call hi("@keyword.conditional", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@constant", s:gui09, "", s:cterm09, "", "", "") + call hi("@constant.builtin", s:gui09, "", s:cterm09, "", "", "") + call hi("@constant.macro", s:gui08, "", s:cterm08, "", "", "") + call hi("@keyword.debug", s:gui08, "", s:cterm08, "", "", "") + + " Directives & Exceptions + call hi("@keyword.directive.define", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@keyword.exception", s:gui0E, "", s:cterm0E, "", "", "") + + " Floats & Functions + call hi("@number.float", s:gui09, "", s:cterm09, "", "", "") + call hi("@function", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@function.builtin", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@function.call", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@function.macro", s:gui08, "", s:cterm08, "", "", "") + + " Imports, Operators & Returns + call hi("@keyword.import", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@keyword.coroutine", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@keyword.operator", s:gui06, "", s:cterm05, "", "", "") + call hi("@keyword.return", s:gui0E, "", s:cterm0E, "", "", "") + + " Methods & Namespaces + call hi("@function.method", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@function.method.call", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@namespace.builtin", s:gui0E, "", s:cterm0E, "", "", "") + + " Numbers & Directives + call hi("@none", s:gui06, "", s:cterm05, "", "", "") + call hi("@number", s:gui09, "", s:cterm09, "", "", "") + call hi("@keyword.directive", s:gui0E, "", s:cterm0E, "", "", "") + + " Repeats, Storage & Strings + call hi("@keyword.repeat", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@keyword.storage", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@string", s:gui0B, "", s:cterm0B, "", "", "") + + " Tags & Markup + call hi("@markup.link.label", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.link.label.symbol", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@tag", s:gui08, "", s:cterm08, "", "", "") + call hi("@tag.attribute", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@tag.delimiter", s:gui0F, "", s:cterm0F, "", "", "") + + " More Markup + call hi("@markup", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.environment", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.environment.name", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.raw", s:gui09, "", s:cterm09, "", "", "") + call hi("@markup.math", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.strong", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.emphasis", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.strikethrough", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.underline", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.heading", s:gui0D, "", s:cterm0D, "", "", "") + + " Comments & Types + call hi("@comment.note", s:gui03, "", s:cterm03, "", "", "") + call hi("@comment.error", s:gui08, "", s:cterm08, "", "", "") + call hi("@comment.hint", s:gui0B, "", s:cterm0B, "", "", "") + call hi("@comment.info", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@comment.warning", s:gui09, "", s:cterm09, "", "", "") + call hi("@comment.todo", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.link.url", s:gui09, "", s:cterm09, "", "", "") + call hi("@type", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@type.definition", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@type.qualifier", s:gui0E, "", s:cterm0E, "", "", "") +endif + +" Standard highlights to be used by plugins +if has("patch-8.0.1038") + call hi("Deprecated", "", "", "", "", "strikethrough", "") +endif +call hi("SearchMatch", s:gui0C, "", s:cterm0C, "", "", "") + +call hi("GitAddSign", s:gui0B, "", s:cterm0B, "", "", "") +call hi("GitChangeSign", s:gui04, "", s:cterm04, "", "", "") +call hi("GitDeleteSign", s:gui08, "", s:cterm08, "", "", "") +call hi("GitChangeDeleteSign", s:gui04, "", s:cterm04, "", "", "") + +call hi("ErrorSign", s:gui08, "", s:cterm08, "", "", "") +call hi("WarningSign", s:gui09, "", s:cterm09, "", "", "") +call hi("InfoSign", s:gui0D, "", s:cterm0D, "", "", "") +call hi("HintSign", s:gui0C, "", s:cterm0C, "", "", "") +call hi("OkSign", s:gui0B, "", s:cterm0B, "", "", "") + +call hi("ErrorFloat", s:gui08, s:gui01, s:cterm08, s:cterm01, "", "") +call hi("WarningFloat", s:gui09, s:gui01, s:cterm09, s:cterm01, "", "") +call hi("InfoFloat", s:gui0D, s:gui01, s:cterm0D, s:cterm01, "", "") +call hi("HintFloat", s:gui0C, s:gui01, s:cterm0C, s:cterm01, "", "") +call hi("OkFloat", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "") + +call hi("ErrorHighlight", "", "", s:ctermbg, s:cterm08, "underline", s:gui08) +call hi("WarningHighlight", "", "", s:ctermbg, s:cterm09, "underline", s:gui09) +call hi("InfoHighlight", "", "", s:ctermbg, s:cterm0D, "underline", s:gui0D) +call hi("HintHighlight", "", "", s:ctermbg, s:cterm0C, "underline", s:gui0C) +call hi("OkHighlight", "", "", s:ctermbg, s:cterm0B, "underline", s:gui0B) + +call hi("SpellBad", "", "", s:ctermbg, s:cterm08, "undercurl", s:gui08) +call hi("SpellLocal", "", "", s:ctermbg, s:cterm0C, "undercurl", s:gui0C) +call hi("SpellCap", "", "", s:ctermbg, s:cterm0D, "undercurl", s:gui0D) +call hi("SpellRare", "", "", s:ctermbg, s:cterm0E, "undercurl", s:gui0E) + +call hi("ReferenceText", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "", "") +call hi("ReferenceRead", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "", "") +call hi("ReferenceWrite", s:gui01, s:gui08, s:cterm01, s:cterm08, "", "") + +" C +call hi("cOperator", s:gui0C, "", s:cterm0C, "", "", "") +call hi("cPreCondit", s:gui0E, "", s:cterm0E, "", "", "") + +" C# +call hi("csClass", s:gui0A, "", s:cterm0A, "", "", "") +call hi("csAttribute", s:gui0A, "", s:cterm0A, "", "", "") +call hi("csModifier", s:gui0E, "", s:cterm0E, "", "", "") +call hi("csType", s:gui08, "", s:cterm08, "", "", "") +call hi("csUnspecifiedStatement", s:gui0D, "", s:cterm0D, "", "", "") +call hi("csContextualStatement", s:gui0E, "", s:cterm0E, "", "", "") +call hi("csNewDecleration", s:gui08, "", s:cterm08, "", "", "") + +" Clap +hi! link ClapInput ColorColumn +hi! link ClapSpinner ColorColumn +hi! link ClapDisplay Default +hi! link ClapPreview ColorColumn +hi! link ClapCurrentSelection CursorLine +hi! link ClapNoMatchesFound ErrorFloat + +" Coc +hi! link CocErrorSign ErrorSign +hi! link CocWarningSign WarningSign +hi! link CocInfoSign InfoSign +hi! link CocHintSign HintSign + +hi! link CocErrorFloat ErrorFloat +hi! link CocWarningFloat WarningFloat +hi! link CocInfoFloat InfoFloat +hi! link CocHintFloat HintFloat + +hi! link CocErrorHighlight ErrorHighlight +hi! link CocWarningHighlight WarningHighlight +hi! link CocInfoHighlight InfoHighlight +hi! link CocHintHighlight HintHighlight + +hi! link CocSem_angle Keyword +hi! link CocSem_annotation Keyword +hi! link CocSem_attribute Type +hi! link CocSem_bitwise Keyword +hi! link CocSem_boolean Boolean +hi! link CocSem_brace Normal +hi! link CocSem_bracket Normal +hi! link CocSem_builtinAttribute Type +hi! link CocSem_builtinType Type +hi! link CocSem_character String +hi! link CocSem_class Structure +hi! link CocSem_colon Normal +hi! link CocSem_comma Normal +hi! link CocSem_comment Comment +hi! link CocSem_comparison Keyword +hi! link CocSem_concept Keyword +hi! link CocSem_constParameter Identifier +hi! link CocSem_dependent Keyword +hi! link CocSem_dot Keyword +hi! link CocSem_enum Structure +hi! link CocSem_enumMember Constant +hi! link CocSem_escapeSequence Type +hi! link CocSem_event Identifier +hi! link CocSem_formatSpecifier Type +hi! link CocSem_function Function +hi! link CocSem_interface Type +hi! link CocSem_keyword Keyword +hi! link CocSem_label Keyword +hi! link CocSem_logical Keyword +hi! link CocSem_macro Macro +hi! link CocSem_method Function +hi! link CocSem_modifier Keyword +hi! link CocSem_namespace Identifier +hi! link CocSem_number Number +hi! link CocSem_operator Operator +hi! link CocSem_parameter Identifier +hi! link CocSem_parenthesis Normal +hi! link CocSem_property Identifier +hi! link CocSem_punctuation Keyword +hi! link CocSem_regexp Type +hi! link CocSem_selfKeyword Constant +hi! link CocSem_semicolon Normal +hi! link CocSem_string String +hi! link CocSem_struct Structure +hi! link CocSem_type Type +hi! link CocSem_typeAlias Type +hi! link CocSem_typeParameter Type +hi! link CocSem_unknown Normal +hi! link CocSem_variable Identifier + +call hi("CocHighlightRead", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "") +call hi("CocHighlightText", s:gui0A, s:gui01, s:cterm0A, s:cterm01, "", "") +call hi("CocHighlightWrite", s:gui08, s:gui01, s:cterm08, s:cterm01, "", "") +call hi("CocListMode", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "bold", "") +call hi("CocListPath", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "", "") +call hi("CocSessionsName", s:gui06, "", s:cterm05, "", "", "") + +" CSS +hi! link cssBraces ThemeBlue +hi! link cssFunctionName ThemeYellow +hi! link cssIdentifier ThemeOrange +hi! link cssClassName ThemeGreen +hi! link cssColor ThemeBlue +hi! link cssSelectorOp ThemeBlue +hi! link cssSelectorOp2 ThemeBlue +hi! link cssImportant ThemeGreen +hi! link cssVendor ThemeFg1 + +hi! link cssTextProp ThemeCyan +hi! link cssAnimationProp ThemeCyan +hi! link cssUIProp ThemeYellow +hi! link cssTransformProp ThemeCyan +hi! link cssTransitionProp ThemeCyan +hi! link cssPrintProp ThemeCyan +hi! link cssPositioningProp ThemeYellow +hi! link cssBoxProp ThemeCyan +hi! link cssFontDescriptorProp ThemeCyan +hi! link cssFlexibleBoxProp ThemeCyan +hi! link cssBorderOutlineProp ThemeCyan +hi! link cssBackgroundProp ThemeCyan +hi! link cssMarginProp ThemeCyan +hi! link cssListProp ThemeCyan +hi! link cssTableProp ThemeCyan +hi! link cssFontProp ThemeCyan +hi! link cssPaddingProp ThemeCyan +hi! link cssDimensionProp ThemeCyan +hi! link cssRenderProp ThemeCyan +hi! link cssColorProp ThemeCyan +hi! link cssGeneratedContentProp ThemeCyan + + +" CMP +hi! link CmpItemAbbrDeprecated Deprecated +hi! link CmpItemAbbrMatch SearchMatch +hi! link CmpItemAbbrMatchFuzzy SearchMatch +hi! link CmpItemKindClass Type +hi! link CmpItemKindColor Keyword +hi! link CmpItemKindConstant Constant +hi! link CmpItemKindConstructor Special +hi! link CmpItemKindEnum Type +hi! link CmpItemKindEnumMember Constant +hi! link CmpItemKindEvent Identifier +hi! link CmpItemKindField Character +hi! link CmpItemKindFile Directory +hi! link CmpItemKindFolder Directory +hi! link CmpItemKindFunction Function +hi! link CmpItemKindInterface Type +hi! link CmpItemKindKeyword Keyword +hi! link CmpItemKindMethod Function +hi! link CmpItemKindModule Namespace +hi! link CmpItemKindOperator Operator +hi! link CmpItemKindProperty Identifier +hi! link CmpItemKindReference Character +hi! link CmpItemKindSnippet String +hi! link CmpItemKindStruct Type +hi! link CmpItemKindText Text +hi! link CmpItemKindUnit Namespace +hi! link CmpItemKindValue Comment +hi! link CmpItemKindVariable Identifier + +if has("nvim-0.8.0") + hi! link CmpItemKindField @field + hi! link CmpItemKindProperty @property +endif + +" Diff +call hi("DiffAdd", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "") +call hi("DiffChange", s:gui06, s:gui01, s:cterm05, s:cterm01, "", "") +call hi("DiffDelete", s:gui02, s:guibg, s:cterm02, s:ctermbg, "", "") +call hi("DiffText", s:gui0D, s:gui01, s:cterm0D, s:cterm01, "", "") +call hi("DiffAdded", s:gui0B, s:guibg, s:cterm0B, s:ctermbg, "", "") +call hi("DiffFile", s:gui08, s:guibg, s:cterm08, s:ctermbg, "", "") +call hi("DiffNewFile", s:gui0B, s:guibg, s:cterm0B, s:ctermbg, "", "") +call hi("DiffLine", s:gui0D, s:guibg, s:cterm0D, s:ctermbg, "", "") +call hi("DiffRemoved", s:gui08, s:guibg, s:cterm08, s:ctermbg, "", "") + +" Git +call hi("gitcommitOverflow", s:gui08, "", s:cterm08, "", "", "") +call hi("gitcommitSummary", s:gui0B, "", s:cterm0B, "", "", "") +call hi("gitcommitComment", s:gui03, "", s:cterm03, "", "", "") +call hi("gitcommitUntracked", s:gui03, "", s:cterm03, "", "", "") +call hi("gitcommitDiscarded", s:gui03, "", s:cterm03, "", "", "") +call hi("gitcommitSelected", s:gui03, "", s:cterm03, "", "", "") +call hi("gitcommitHeader", s:gui0E, "", s:cterm0E, "", "", "") +call hi("gitcommitSelectedType", s:gui0D, "", s:cterm0D, "", "", "") +call hi("gitcommitUnmergedType", s:gui0D, "", s:cterm0D, "", "", "") +call hi("gitcommitDiscardedType", s:gui0D, "", s:cterm0D, "", "", "") +call hi("gitcommitBranch", s:gui09, "", s:cterm09, "", "bold", "") +call hi("gitcommitUntrackedFile", s:gui0A, "", s:cterm0A, "", "", "") +call hi("gitcommitUnmergedFile", s:gui08, "", s:cterm08, "", "bold", "") +call hi("gitcommitDiscardedFile", s:gui08, "", s:cterm08, "", "bold", "") +call hi("gitcommitSelectedFile", s:gui0B, "", s:cterm0B, "", "bold", "") + +" GitGutter +hi! link GitGutterAdd GitAddSign +hi! link GitGutterChange GitChangeSign +hi! link GitGutterDelete GitDeleteSign +hi! link GitGutterChangeDelete GitChangeDeleteSign + +" indent-blankline (nvim) +if has("nvim") + call hi("@ibl.indent.char.1",s:gui01, "", s:cterm01, "", "", "") +endif + +" HTML +call hi("htmlBold", s:gui07, "", s:cterm0A, "", "bold", "") +call hi("htmlItalic", s:gui06, "", s:cterm0E, "", "italic", "") +call hi("htmlEndTag", s:gui06, "", s:cterm05, "", "", "") +call hi("htmlTag", s:gui06, "", s:cterm05, "", "", "") + +" JavaScript +call hi("javaScript", s:gui06, "", s:cterm05, "", "", "") +call hi("javaScriptBraces", s:gui06, "", s:cterm05, "", "", "") +call hi("javaScriptNumber", s:gui09, "", s:cterm09, "", "", "") +" pangloss/vim-javascript +call hi("jsOperator", s:gui0D, "", s:cterm0D, "", "", "") +call hi("jsStatement", s:gui0E, "", s:cterm0E, "", "", "") +call hi("jsReturn", s:gui0E, "", s:cterm0E, "", "", "") +call hi("jsThis", s:gui08, "", s:cterm08, "", "", "") +call hi("jsClassDefinition", s:gui0A, "", s:cterm0A, "", "", "") +call hi("jsFunction", s:gui0E, "", s:cterm0E, "", "", "") +call hi("jsFuncName", s:gui0D, "", s:cterm0D, "", "", "") +call hi("jsFuncCall", s:gui0D, "", s:cterm0D, "", "", "") +call hi("jsClassFuncName", s:gui0D, "", s:cterm0D, "", "", "") +call hi("jsClassMethodType", s:gui0E, "", s:cterm0E, "", "", "") +call hi("jsRegexpString", s:gui0C, "", s:cterm0C, "", "", "") +call hi("jsGlobalObjects", s:gui0A, "", s:cterm0A, "", "", "") +call hi("jsGlobalNodeObjects", s:gui0A, "", s:cterm0A, "", "", "") +call hi("jsExceptions", s:gui0A, "", s:cterm0A, "", "", "") +call hi("jsBuiltins", s:gui0A, "", s:cterm0A, "", "", "") + +" Mail +call hi("mailQuoted1", s:gui0A, "", s:cterm0A, "", "", "") +call hi("mailQuoted2", s:gui0B, "", s:cterm0B, "", "", "") +call hi("mailQuoted3", s:gui0E, "", s:cterm0E, "", "", "") +call hi("mailQuoted4", s:gui0C, "", s:cterm0C, "", "", "") +call hi("mailQuoted5", s:gui0D, "", s:cterm0D, "", "", "") +call hi("mailQuoted6", s:gui0A, "", s:cterm0A, "", "", "") +call hi("mailURL", s:gui0D, "", s:cterm0D, "", "", "") +call hi("mailEmail", s:gui0D, "", s:cterm0D, "", "", "") + +" Markdown +call hi("markdownCode", s:gui0B, "", s:cterm0B, "", "", "") +call hi("markdownError", s:gui06, s:guibg, s:cterm05, s:ctermbg, "", "") +call hi("markdownCodeBlock", s:gui0B, "", s:cterm0B, "", "", "") +call hi("markdownHeadingDelimiter", s:gui0D, "", s:cterm0D, "", "", "") + +" Matchup +call hi("MatchWord", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "underline", "") + +" NERDTree +call hi("NERDTreeDirSlash", s:gui0D, "", s:cterm0D, "", "", "") +call hi("NERDTreeExecFile", s:gui06, "", s:cterm05, "", "", "") + +" Netrw +hi! link netrwDir ThemeCyan +hi! link netrwClassify ThemeCyan +hi! link netrwLink ThemeBg3 +hi! link netrwSymLink ThemeFg1 +hi! link netrwExe ThemeYellow +hi! link netrwComment ThemeBg3 +hi! link netrwList ThemeBlue +hi! link netrwHelpCmd ThemeCyan +hi! link netrwCmdSep ThemeFg3 +hi! link netrwVersion ThemeGreen + +" PHP +call hi("phpMemberSelector", s:gui06, "", s:cterm05, "", "", "") +call hi("phpComparison", s:gui06, "", s:cterm05, "", "", "") +call hi("phpParent", s:gui06, "", s:cterm05, "", "", "") +call hi("phpMethodsVar", s:gui0C, "", s:cterm0C, "", "", "") + +" Python +"call hi("pythonOperator", s:gui0E, "", s:cterm0E, "", "", "") +"call hi("pythonRepeat", s:gui0E, "", s:cterm0E, "", "", "") +"call hi("pythonInclude", s:gui0E, "", s:cterm0E, "", "", "") +"call hi("pythonStatement", s:gui0E, "", s:cterm0E, "", "", "") + +" hi! link pythonBuiltin ThemeCyan +" hi! link pythonBuiltinObj ThemeCyan +" hi! link pythonBuiltinFunc ThemeGreen +" hi! link pythonFunction Function +hi! link pythonDecorator ThemeYellow +hi! link pythonDecoratorName ThemeYellow +" hi! link pythonTripleQuotes ThemeGreenItalic +" hi! link pythonInclude ThemeBlue +" hi! link pythonImport ThemeBlue +" hi! link pythonRun ThemeBlue +" hi! link pythonCoding ThemeBlue +" hi! link pythonOperator ThemeRed +" hi! link pythonException ThemeRed +" hi! link pythonExceptions ThemeYellow +" hi! link pythonBoolean ThemeYellow +" hi! link pythonDot ThemeFg3 +" hi! link pythonConditional ThemeCyan +" hi! link pythonRepeat ThemeRed +" hi! link pythonDottedName ThemeGreen + + +" Ruby +call hi("rubyAttribute", s:gui0D, "", s:cterm0D, "", "", "") +call hi("rubyConstant", s:gui0A, "", s:cterm0A, "", "", "") +call hi("rubyInterpolationDelimiter", s:gui0F, "", s:cterm0F, "", "", "") +call hi("rubyRegexp", s:gui0C, "", s:cterm0C, "", "", "") +call hi("rubySymbol", s:gui0B, "", s:cterm0B, "", "", "") +call hi("rubyStringDelimiter", s:gui0B, "", s:cterm0B, "", "", "") + +" SASS +call hi("sassidChar", s:gui08, "", s:cterm08, "", "", "") +call hi("sassClassChar", s:gui09, "", s:cterm09, "", "", "") +call hi("sassInclude", s:gui0E, "", s:cterm0E, "", "", "") +call hi("sassMixing", s:gui0E, "", s:cterm0E, "", "", "") +call hi("sassMixinName", s:gui0D, "", s:cterm0D, "", "", "") + +" Signify +hi! link SignifySignAdd GitAddSign +hi! link SignifySignChange GitChangeSign +hi! link SignifySignDelete GitDeleteSign + +" Startify +call hi("StartifyBracket", s:gui03, "", s:cterm03, "", "", "") +call hi("StartifyFile", s:gui07, "", s:cterm07, "", "", "") +call hi("StartifyFooter", s:gui03, "", s:cterm03, "", "", "") +call hi("StartifyHeader", s:gui0B, "", s:cterm0B, "", "", "") +call hi("StartifyNumber", s:gui09, "", s:cterm09, "", "", "") +call hi("StartifyPath", s:gui03, "", s:cterm03, "", "", "") +call hi("StartifySection", s:gui0E, "", s:cterm0E, "", "", "") +call hi("StartifySelect", s:gui0C, "", s:cterm0C, "", "", "") +call hi("StartifySlash", s:gui03, "", s:cterm03, "", "", "") +call hi("StartifySpecial", s:gui03, "", s:cterm03, "", "", "") + +" LSP +if has("nvim") + hi! link DiagnosticError ErrorSign + hi! link DiagnosticWarn WarningSign + hi! link DiagnosticInfo InfoSign + hi! link DiagnosticHint HintSign + hi! link DiagnosticOk OkSign + + hi! link DiagnosticFloatingError ErrorFloat + hi! link DiagnosticFloatingWarn WarningFloat + hi! link DiagnosticFloatingInfo InfoFloat + hi! link DiagnosticFloatingHint HintFloat + hi! link DiagnosticFloatingOk OkFloat + + hi! link DiagnosticUnderlineError ErrorHighlight + hi! link DiagnosticUnderlineWarn WarningHighlight + hi! link DiagnosticUnderlineInfo InfoHighlight + hi! link DiagnosticUnderlineHint HintHighlight + hi! link DiagnosticUnderlineOk OkHighlight + + hi! link DiagnosticsVirtualTextError ErrorSign + hi! link DiagnosticsVirtualTextWarning WarningSign + hi! link DiagnosticsVirtualTextInfo InfoSign + hi! link DiagnosticsVirtualTextHint HintSign + hi! link DiagnosticsVirtualTextOk OkSign + + " Remove untill endif on next nvim release + hi! link LspDiagnosticsSignError ErrorSign + hi! link LspDiagnosticsSignWarning WarningSign + hi! link LspDiagnosticsSignInfo InfoSign + hi! link LspDiagnosticsSignHint HintSign + + hi! link LspDiagnosticsVirtualTextError ErrorSign + hi! link LspDiagnosticsVirtualTextWarning WarningSign + hi! link LspDiagnosticsVirtualTextInfo InfoSign + hi! link LspDiagnosticsVirtualTextHint HintSign + + hi! link LspDiagnosticsFloatingError ErrorFloat + hi! link LspDiagnosticsFloatingWarning WarningFloat + hi! link LspDiagnosticsFloatingInfo InfoFloat + hi! link LspDiagnosticsFloatingHint HintFloat + + hi! link LspDiagnosticsUnderlineError ErrorHighlight + hi! link LspDiagnosticsUnderlineWarning WarningHighlight + hi! link LspDiagnosticsUnderlineInfo InfoHighlight + hi! link LspDiagnosticsUnderlineHint HintHighlight + + hi! link LspReferenceText ReferenceText + hi! link LspReferenceRead ReferenceRead + hi! link LspReferenceWrite ReferenceWrite +endif + +" Java +call hi("javaOperator", s:gui0D, "", s:cterm0D, "", "", "") + +" JSON +hi! link jsonKeyword ThemeGreen +hi! link jsonQuote ThemeGreen +hi! link jsonBraces ThemeFg1 +hi! link jsonString ThemeFg1 + +" Markdown +hi! link markdownH1 ThemeRedBold +hi! link markdownH2 ThemeRed +hi! link markdownH3 ThemeRed +hi! link markdownH4 ThemeRed +hi! link markdownH5 ThemeRed +hi! link markdownH6 ThemeRed + +hi! link markdownCode ThemeYellow +hi! link markdownCodeBlock ThemeYellow +hi! link markdownCodeDelimiter ThemeYellow + +hi! link markdownBlockquote ThemeGrey +hi! link markdownListMarker ThemeBlue +hi! link markdownOrderedListMarker ThemeBlue +hi! link markdownRule ThemeGrey +hi! link markdownHeadingRule ThemeGrey + +hi! link markdownUrlDelimiter ThemeFg3 +hi! link markdownLinkDelimiter ThemeFg3 +hi! link markdownLinkTextDelimiter ThemeFg3 +hi! link markdownHeadingDelimiter ThemeOrange +hi! link markdownUrlTitleDelimiter ThemeGreen + +hi! link markdownLink ThemeGreen +hi! link markdownWikiLink ThemeViolet +hi! link markdownUrl ThemeOrange +hi! link markdownInlineUrl ThemeOrange + +hi! link markdownLinkText ThemeViolet +hi! link markdownIdDeclaration markdownLinkText + +"call s:HL('markdownItalic', s:fg3, s:none, s:italic) +"call s:HL('markdownLinkText', s:gray, s:none, s:underline) + + +" Remove functions +delf hi + +" Remove color variables +unlet s:gui00 s:gui01 s:gui02 s:gui03 s:gui04 s:gui05 s:gui06 s:gui07 s:gui08 s:gui09 s:gui0A s:gui0B s:gui0C s:gui0D s:gui0E s:gui0F s:guibg +unlet s:cterm00 s:cterm01 s:cterm02 s:cterm03 s:cterm04 s:cterm05 s:cterm06 s:cterm07 s:cterm08 s:cterm09 s:cterm0A s:cterm0B s:cterm0C s:cterm0D s:cterm0E s:cterm0F s:ctermbg diff --git a/apps/nvim/grassland-monobiome-light.vim b/apps/nvim/grassland-monobiome-light.vim new file mode 100644 index 0000000..aa4a3f5 --- /dev/null +++ b/apps/nvim/grassland-monobiome-light.vim @@ -0,0 +1,882 @@ +" vi:syntax=vim +" +" Top-level remarks: +" +" - `hi` sets highlight colors for syntax groups, allowing one to specify fg and bg colors +" for GUI and terminal Vim. +" - `link` allows for linking one syntax group to another, reusing the same color +" settings. Language-specific groups can then point to one of the base color highlight +" groups, for example, without needing to repeat the raw color values. + +" GUI color definitions +let s:gui00 = "#c7d0cc" +let g:base16_gui00 = "#c7d0cc" +let s:gui01 = "#b7c0bc" +let g:base16_gui01 = "#b7c0bc" +let s:gui02 = "#a8b0ad" +let g:base16_gui02 = "#a8b0ad" +let s:gui03 = "#98a19d" +let g:base16_gui03 = "#98a19d" +let s:gui04 = "#353c3a" +let g:base16_gui04 = "#353c3a" +let s:gui05 = "#29302d" +let g:base16_gui05 = "#29302d" +let s:gui06 = "#1d2321" +let g:base16_gui06 = "#1d2321" +let s:gui07 = "#111815" +let g:base16_gui07 = "#111815" +let s:gui08 = "#b52119" +let g:base16_gui08 = "#b52119" +let s:gui09 = "#905201" +let g:base16_gui09 = "#905201" +let s:gui0A = "#6a6535" +let g:base16_gui0A = "#6a6535" +let s:gui0B = "#377242" +let g:base16_gui0B = "#377242" +let s:gui0C = "#377242" +let g:base16_gui0C = "#377242" +let s:gui0D = "#3860ac" +let g:base16_gui0D = "#3860ac" +let s:gui0E = "#3860ac" +let g:base16_gui0E = "#3860ac" +let s:gui0F = "#b52119" +let g:base16_gui0F = "#b52119" + +let s:grey = "#5d6562" + +" Terminal color definitions +let s:cterm00 = "00" +let g:base16_cterm00 = "00" +let s:cterm03 = "08" +let g:base16_cterm03 = "08" +let s:cterm05 = "07" +let g:base16_cterm05 = "07" +let s:cterm07 = "15" +let g:base16_cterm07 = "15" +let s:cterm08 = "01" +let g:base16_cterm08 = "01" +let s:cterm0A = "03" +let g:base16_cterm0A = "03" +let s:cterm0B = "02" +let g:base16_cterm0B = "02" +let s:cterm0C = "06" +let g:base16_cterm0C = "06" +let s:cterm0D = "04" +let g:base16_cterm0D = "04" +let s:cterm0E = "05" +let g:base16_cterm0E = "05" + +let s:cterm01 = "10" +let g:base16_cterm01 = "10" +let s:cterm02 = "11" +let g:base16_cterm02 = "11" +let s:cterm04 = "12" +let g:base16_cterm04 = "12" +let s:cterm06 = "13" +let g:base16_cterm06 = "13" +let s:cterm09 = "09" +let g:base16_cterm09 = "09" +let s:cterm0F = "14" +let g:base16_cterm0F = "14" + +" Neovim terminal colours +if has("nvim") + let g:terminal_color_0 = "#c7d0cc" + let g:terminal_color_1 = "#b52119" + let g:terminal_color_2 = "#377242" + let g:terminal_color_3 = "#6a6535" + let g:terminal_color_4 = "#3860ac" + let g:terminal_color_5 = "#3860ac" + let g:terminal_color_6 = "#377242" + let g:terminal_color_7 = "#29302d" + let g:terminal_color_8 = "#98a19d" + let g:terminal_color_9 = "#b52119" + let g:terminal_color_10 = "#377242" + let g:terminal_color_11 = "#6a6535" + let g:terminal_color_12 = "#3860ac" + let g:terminal_color_13 = "#3860ac" + let g:terminal_color_14 = "#377242" + let g:terminal_color_15 = "#111815" + let g:terminal_color_background = g:terminal_color_0 + let g:terminal_color_foreground = g:terminal_color_5 + + if &background == "light" + let g:terminal_color_background = g:terminal_color_7 + let g:terminal_color_foreground = g:terminal_color_2 + endif + +elseif has("terminal") + let g:terminal_ansi_colors = [ + \ "#c7d0cc", + \ "#b52119", + \ "#377242", + \ "#6a6535", + \ "#3860ac", + \ "#3860ac", + \ "#377242", + \ "#29302d", + \ "#98a19d", + \ "#b52119", + \ "#377242", + \ "#6a6535", + \ "#3860ac", + \ "#3860ac", + \ "#377242", + \ "#111815", + \ ] +endif + +let s:guibg = s:gui00 +let s:ctermbg = s:cterm00 + +" Theme setup +hi clear +syntax reset +let g:colors_name = "active" + +" Highlighting function +" Optional variables are attributes and guisp +function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) + " For a given syntax group, sets the GUI and terminal foreground and backgrounds + " Optional parameters are interpreted as `attr` and `guisp`, the first of which appears + " to be a modifier for the group (e.g., bold, italic), and `guisp` appears to be + " 'special' colors used for underlines in the GUI. + let l:attr = get(a:, 1, "") + let l:guisp = get(a:, 2, "") + + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + + if a:guifg != "" + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=" . a:guifg + endif + endif + + if a:guibg != "" + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=" . a:guibg + endif + endif + + if a:ctermfg != "" + exec "hi " . a:group . " ctermfg=" . a:ctermfg + endif + + if a:ctermbg != "" + exec "hi " . a:group . " ctermbg=" . a:ctermbg + endif + + if l:attr != "" + exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr + endif + + if l:guisp != "" + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=" . l:guisp + endif + endif +endfunction + + +fun hi(group, guifg, guibg, ctermfg, ctermbg, attr, guisp) + call g:Base16hi(a:group, a:guifg, a:guibg, a:ctermfg, a:ctermbg, a:attr, a:guisp) +endfun + + +" color groups for interpretability +call hi("ThemeBg0", s:gui00, "", s:cterm00, "", "", "") +call hi("ThemeBg1", s:gui01, "", s:cterm01, "", "", "") +call hi("ThemeBg2", s:gui02, "", s:cterm02, "", "", "") +call hi("ThemeBg3", s:gui03, "", s:cterm03, "", "", "") +call hi("ThemeFg3", s:gui04, "", s:cterm04, "", "", "") +call hi("ThemeFg2", s:gui05, "", s:cterm05, "", "", "") +call hi("ThemeFg1", s:gui06, "", s:cterm06, "", "", "") +call hi("ThemeFg0", s:gui07, "", s:cterm07, "", "", "") +" +call hi("ThemeRed", s:gui08, "", s:cterm08, "", "", "") +call hi("ThemeOrange", s:gui09, "", s:cterm09, "", "", "") +call hi("ThemeYellow", s:gui0A, "", s:cterm0A, "", "", "") +call hi("ThemeGreen", s:gui0B, "", s:cterm0B, "", "", "") +call hi("ThemeCyan", s:gui0C, "", s:cterm0C, "", "", "") +call hi("ThemeBlue", s:gui0D, "", s:cterm0D, "", "", "") +call hi("ThemeViolet", s:gui0E, "", s:cterm0E, "", "", "") +call hi("ThemeMagenta", s:gui0F, "", s:cterm0F, "", "", "") + +call hi("ThemeRedBold", s:gui08, "", s:cterm08, "", "bold", "") +call hi("ThemeOrangeBold", s:gui09, "", s:cterm09, "", "bold", "") +call hi("ThemeYellowBold", s:gui0A, "", s:cterm0A, "", "bold", "") +call hi("ThemeGreenBold", s:gui0B, "", s:cterm0B, "", "bold", "") +call hi("ThemeCyanBold", s:gui0C, "", s:cterm0C, "", "bold", "") +call hi("ThemeBlueBold", s:gui0D, "", s:cterm0D, "", "bold", "") +call hi("ThemeVioletBold", s:gui0E, "", s:cterm0E, "", "bold", "") +call hi("ThemeMagentaBold", s:gui0F, "", s:cterm0F, "", "bold", "") + +call hi("ThemeRedItalic", s:gui08, "", s:cterm08, "", "italic", "") +call hi("ThemeOrangeItalic", s:gui09, "", s:cterm09, "", "italic", "") +call hi("ThemeYellowItalic", s:gui0A, "", s:cterm0A, "", "italic", "") +call hi("ThemeGreenItalic", s:gui0B, "", s:cterm0B, "", "italic", "") +call hi("ThemeCyanItalic", s:gui0C, "", s:cterm0C, "", "italic", "") +call hi("ThemeBlueItalic", s:gui0D, "", s:cterm0D, "", "italic", "") +call hi("ThemeVioletItalic", s:gui0E, "", s:cterm0E, "", "italic", "") +call hi("ThemeMagentaItalic", s:gui0F, "", s:cterm0F, "", "italic", "") + +call hi("ThemeGrey", s:grey, "", s:cterm03, "", "", "") +call hi("ThemeGreyItalic", s:grey, "", s:cterm03, "", "italic", "") + + +" Vim editor colors +call hi("Normal", s:gui05, s:guibg, s:cterm05, s:ctermbg, "", "") +call hi("Bold", "", "", "", "", "bold", "") +call hi("Debug", s:gui08, "", s:cterm08, "", "", "") +call hi("Directory", s:gui0D, "", s:cterm0D, "", "", "") +call hi("Error", s:guibg, s:gui08, s:ctermbg, s:cterm08, "", "") +call hi("ErrorMsg", s:gui08, s:guibg, s:cterm08, s:ctermbg, "", "") +call hi("Exception", s:gui08, "", s:cterm08, "", "", "") +call hi("FoldColumn", s:gui03, s:guibg, s:cterm03, s:ctermbg, "", "") +call hi("Folded", s:gui02, s:guibg, s:cterm02, s:ctermbg, "", "") +call hi("IncSearch", s:gui01, s:gui09, s:cterm01, s:cterm09, "none", "") +call hi("Italic", "", "", "", "", "italic", "") +call hi("Macro", s:gui0C, "", s:cterm0C, "", "", "") +call hi("MatchParen", "", s:gui03, "", s:cterm03, "", "") +call hi("ModeMsg", s:gui0B, "", s:cterm0B, "", "", "") +call hi("MoreMsg", s:gui0B, "", s:cterm0B, "", "", "") +call hi("Question", s:gui0D, "", s:cterm0D, "", "", "") +call hi("Search", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "", "") +call hi("Substitute", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "none", "") +call hi("SpecialKey", s:gui03, "", s:cterm03, "", "", "") +call hi("TooLong", s:gui08, "", s:cterm08, "", "", "") +call hi("Underlined", "", "", "", "", "underline", "fg") +call hi("Visual", "", s:gui02, "", s:cterm02, "", "") +call hi("VisualNOS", s:gui08, "", s:cterm08, "", "", "") +call hi("WarningMsg", s:gui08, "", s:cterm08, "", "", "") +call hi("WildMenu", s:guibg, s:gui06, s:ctermbg, s:cterm05, "", "") +call hi("Title", s:gui0D, "", s:cterm0D, "", "none", "") +call hi("Conceal", s:gui0D, s:guibg, s:cterm0D, s:ctermbg, "", "") +call hi("Cursor", s:gui05, s:guibg, "", "", "inverse", "") +call hi("NonText", s:gui03, "", s:cterm03, "", "", "") +call hi("Whitespace", s:gui03, "", s:cterm03, "", "", "") +call hi("LineNr", s:gui03, s:guibg, s:cterm03, s:ctermbg, "", "") +call hi("SignColumn", s:gui03, s:guibg, s:cterm03, s:ctermbg, "", "") +call hi("StatusLine", s:gui07, s:gui01, s:cterm07, s:cterm01, "none", "") +call hi("StatusLineNC", s:gui06, s:gui01, s:cterm05, s:cterm01, "none", "") +call hi("VertSplit", s:gui01, s:guibg, s:cterm01, s:ctermbg, "none", "") +call hi("ColorColumn", "", s:gui01, "", s:cterm01, "none", "") +call hi("CursorColumn", "", s:gui01, "", s:cterm01, "none", "") +call hi("CursorLine", "", s:gui01, "", s:cterm01, "none", "") +call hi("CursorLineNr", s:gui04, s:gui01, s:cterm04, s:cterm01, "bold", "") +call hi("QuickFixLine", "", s:gui01, "", s:cterm01, "none", "") +call hi("PMenu", s:gui06, s:gui01, s:cterm06, s:cterm01, "none", "") +call hi("PMenuSel", s:gui06, s:gui02, s:cterm06, s:cterm02, "", "") +call hi("PMenuSbar", "", s:gui03, "", s:cterm03, "", "") +call hi("PMenuThumb", "", s:gui04, "", s:cterm04, "", "") +call hi("TabLine", s:gui03, s:gui01, s:cterm03, s:cterm01, "none", "") +call hi("TabLineFill", s:gui03, s:gui01, s:cterm03, s:cterm01, "none", "") +call hi("TabLineSel", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "none", "") + +" Standard syntax +hi! link Boolean ThemeOrange +hi! link Character ThemeRed + +"call hi("Comment", s:gui03, "", s:cterm03, "", "italic", "") +hi! link Comment ThemeGreyItalic + +hi! link Conditional ThemeRed +hi! link Constant ThemeOrange +call hi("Define", s:gui0E, "", s:cterm0E, "", "none", "") +hi! link Delimiter ThemeFg1 + +if has("patch-8.0.1038") + call hi("Deprecated", "", "", "", "", "strikethrough", "") +endif + +hi! link Float ThemeOrange +hi! link Function ThemeBlue +call hi("Identifier", s:gui06, "", s:cterm05, "", "none", "") +hi! link Include ThemeBlue +hi! link Constant ThemeOrange +call hi("Keyword", s:gui0E, "", s:cterm0E, "", "none", "") +hi! link Label ThemeOrange +hi! link Number ThemeOrange +hi! link Operator ThemeYellow +hi! link PreProc ThemeOrange +hi! link Repeat ThemeViolet +hi! link Special ThemeYellow +hi! link SpecialChar ThemeMagenta +hi! link Statement ThemeRed +hi! link StorageClass ThemeOrange +hi! link String ThemeGreen +hi! link Structure ThemeOrange +hi! link Tag ThemeOrange + +call hi("Todo", s:gui08, s:guibg, s:cterm08, s:ctermbg, "italic", "") +call hi("Type", s:gui0A, "", s:cterm0A, "", "none", "") + +hi! link Typedef ThemeOrange + + +" Treesitter +if has("nvim-0.8.0") + call hi("@field", s:gui08, "", s:cterm08, "", "", "") + call hi("@property", s:gui08, "", s:cterm08, "", "", "") + call hi("@namespace", s:gui06, "", s:cterm05, "", "italic", "") + call hi("@variable.builtin", s:gui06, "", s:cterm05, "", "italic", "") + call hi("@text.reference", s:gui08, "", s:cterm08, "", "", "") + call hi("@text.uri", s:gui08, "", s:cterm08, "", "italic", "") + + " Annotations & Attributes + call hi("@annotation", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@attribute", s:gui0D, "", s:cterm0D, "", "", "") + + " Booleans, Characters & Comments + call hi("@boolean", s:gui09, "", s:cterm09, "", "", "") + call hi("@character", s:gui08, "", s:cterm08, "", "", "") + call hi("@character.special", s:gui0F, "", s:cterm0F, "", "", "") + call hi("@comment", s:gui03, "", s:cterm03, "", "", "") + + " Conditionals, Constants & Debugging + call hi("@keyword.conditional", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@constant", s:gui09, "", s:cterm09, "", "", "") + call hi("@constant.builtin", s:gui09, "", s:cterm09, "", "", "") + call hi("@constant.macro", s:gui08, "", s:cterm08, "", "", "") + call hi("@keyword.debug", s:gui08, "", s:cterm08, "", "", "") + + " Directives & Exceptions + call hi("@keyword.directive.define", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@keyword.exception", s:gui0E, "", s:cterm0E, "", "", "") + + " Floats & Functions + call hi("@number.float", s:gui09, "", s:cterm09, "", "", "") + call hi("@function", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@function.builtin", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@function.call", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@function.macro", s:gui08, "", s:cterm08, "", "", "") + + " Imports, Operators & Returns + call hi("@keyword.import", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@keyword.coroutine", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@keyword.operator", s:gui06, "", s:cterm05, "", "", "") + call hi("@keyword.return", s:gui0E, "", s:cterm0E, "", "", "") + + " Methods & Namespaces + call hi("@function.method", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@function.method.call", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@namespace.builtin", s:gui0E, "", s:cterm0E, "", "", "") + + " Numbers & Directives + call hi("@none", s:gui06, "", s:cterm05, "", "", "") + call hi("@number", s:gui09, "", s:cterm09, "", "", "") + call hi("@keyword.directive", s:gui0E, "", s:cterm0E, "", "", "") + + " Repeats, Storage & Strings + call hi("@keyword.repeat", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@keyword.storage", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@string", s:gui0B, "", s:cterm0B, "", "", "") + + " Tags & Markup + call hi("@markup.link.label", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.link.label.symbol", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@tag", s:gui08, "", s:cterm08, "", "", "") + call hi("@tag.attribute", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@tag.delimiter", s:gui0F, "", s:cterm0F, "", "", "") + + " More Markup + call hi("@markup", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.environment", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.environment.name", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.raw", s:gui09, "", s:cterm09, "", "", "") + call hi("@markup.math", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.strong", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.emphasis", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.strikethrough", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.underline", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.heading", s:gui0D, "", s:cterm0D, "", "", "") + + " Comments & Types + call hi("@comment.note", s:gui03, "", s:cterm03, "", "", "") + call hi("@comment.error", s:gui08, "", s:cterm08, "", "", "") + call hi("@comment.hint", s:gui0B, "", s:cterm0B, "", "", "") + call hi("@comment.info", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@comment.warning", s:gui09, "", s:cterm09, "", "", "") + call hi("@comment.todo", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.link.url", s:gui09, "", s:cterm09, "", "", "") + call hi("@type", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@type.definition", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@type.qualifier", s:gui0E, "", s:cterm0E, "", "", "") +endif + +" Standard highlights to be used by plugins +if has("patch-8.0.1038") + call hi("Deprecated", "", "", "", "", "strikethrough", "") +endif +call hi("SearchMatch", s:gui0C, "", s:cterm0C, "", "", "") + +call hi("GitAddSign", s:gui0B, "", s:cterm0B, "", "", "") +call hi("GitChangeSign", s:gui04, "", s:cterm04, "", "", "") +call hi("GitDeleteSign", s:gui08, "", s:cterm08, "", "", "") +call hi("GitChangeDeleteSign", s:gui04, "", s:cterm04, "", "", "") + +call hi("ErrorSign", s:gui08, "", s:cterm08, "", "", "") +call hi("WarningSign", s:gui09, "", s:cterm09, "", "", "") +call hi("InfoSign", s:gui0D, "", s:cterm0D, "", "", "") +call hi("HintSign", s:gui0C, "", s:cterm0C, "", "", "") +call hi("OkSign", s:gui0B, "", s:cterm0B, "", "", "") + +call hi("ErrorFloat", s:gui08, s:gui01, s:cterm08, s:cterm01, "", "") +call hi("WarningFloat", s:gui09, s:gui01, s:cterm09, s:cterm01, "", "") +call hi("InfoFloat", s:gui0D, s:gui01, s:cterm0D, s:cterm01, "", "") +call hi("HintFloat", s:gui0C, s:gui01, s:cterm0C, s:cterm01, "", "") +call hi("OkFloat", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "") + +call hi("ErrorHighlight", "", "", s:ctermbg, s:cterm08, "underline", s:gui08) +call hi("WarningHighlight", "", "", s:ctermbg, s:cterm09, "underline", s:gui09) +call hi("InfoHighlight", "", "", s:ctermbg, s:cterm0D, "underline", s:gui0D) +call hi("HintHighlight", "", "", s:ctermbg, s:cterm0C, "underline", s:gui0C) +call hi("OkHighlight", "", "", s:ctermbg, s:cterm0B, "underline", s:gui0B) + +call hi("SpellBad", "", "", s:ctermbg, s:cterm08, "undercurl", s:gui08) +call hi("SpellLocal", "", "", s:ctermbg, s:cterm0C, "undercurl", s:gui0C) +call hi("SpellCap", "", "", s:ctermbg, s:cterm0D, "undercurl", s:gui0D) +call hi("SpellRare", "", "", s:ctermbg, s:cterm0E, "undercurl", s:gui0E) + +call hi("ReferenceText", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "", "") +call hi("ReferenceRead", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "", "") +call hi("ReferenceWrite", s:gui01, s:gui08, s:cterm01, s:cterm08, "", "") + +" C +call hi("cOperator", s:gui0C, "", s:cterm0C, "", "", "") +call hi("cPreCondit", s:gui0E, "", s:cterm0E, "", "", "") + +" C# +call hi("csClass", s:gui0A, "", s:cterm0A, "", "", "") +call hi("csAttribute", s:gui0A, "", s:cterm0A, "", "", "") +call hi("csModifier", s:gui0E, "", s:cterm0E, "", "", "") +call hi("csType", s:gui08, "", s:cterm08, "", "", "") +call hi("csUnspecifiedStatement", s:gui0D, "", s:cterm0D, "", "", "") +call hi("csContextualStatement", s:gui0E, "", s:cterm0E, "", "", "") +call hi("csNewDecleration", s:gui08, "", s:cterm08, "", "", "") + +" Clap +hi! link ClapInput ColorColumn +hi! link ClapSpinner ColorColumn +hi! link ClapDisplay Default +hi! link ClapPreview ColorColumn +hi! link ClapCurrentSelection CursorLine +hi! link ClapNoMatchesFound ErrorFloat + +" Coc +hi! link CocErrorSign ErrorSign +hi! link CocWarningSign WarningSign +hi! link CocInfoSign InfoSign +hi! link CocHintSign HintSign + +hi! link CocErrorFloat ErrorFloat +hi! link CocWarningFloat WarningFloat +hi! link CocInfoFloat InfoFloat +hi! link CocHintFloat HintFloat + +hi! link CocErrorHighlight ErrorHighlight +hi! link CocWarningHighlight WarningHighlight +hi! link CocInfoHighlight InfoHighlight +hi! link CocHintHighlight HintHighlight + +hi! link CocSem_angle Keyword +hi! link CocSem_annotation Keyword +hi! link CocSem_attribute Type +hi! link CocSem_bitwise Keyword +hi! link CocSem_boolean Boolean +hi! link CocSem_brace Normal +hi! link CocSem_bracket Normal +hi! link CocSem_builtinAttribute Type +hi! link CocSem_builtinType Type +hi! link CocSem_character String +hi! link CocSem_class Structure +hi! link CocSem_colon Normal +hi! link CocSem_comma Normal +hi! link CocSem_comment Comment +hi! link CocSem_comparison Keyword +hi! link CocSem_concept Keyword +hi! link CocSem_constParameter Identifier +hi! link CocSem_dependent Keyword +hi! link CocSem_dot Keyword +hi! link CocSem_enum Structure +hi! link CocSem_enumMember Constant +hi! link CocSem_escapeSequence Type +hi! link CocSem_event Identifier +hi! link CocSem_formatSpecifier Type +hi! link CocSem_function Function +hi! link CocSem_interface Type +hi! link CocSem_keyword Keyword +hi! link CocSem_label Keyword +hi! link CocSem_logical Keyword +hi! link CocSem_macro Macro +hi! link CocSem_method Function +hi! link CocSem_modifier Keyword +hi! link CocSem_namespace Identifier +hi! link CocSem_number Number +hi! link CocSem_operator Operator +hi! link CocSem_parameter Identifier +hi! link CocSem_parenthesis Normal +hi! link CocSem_property Identifier +hi! link CocSem_punctuation Keyword +hi! link CocSem_regexp Type +hi! link CocSem_selfKeyword Constant +hi! link CocSem_semicolon Normal +hi! link CocSem_string String +hi! link CocSem_struct Structure +hi! link CocSem_type Type +hi! link CocSem_typeAlias Type +hi! link CocSem_typeParameter Type +hi! link CocSem_unknown Normal +hi! link CocSem_variable Identifier + +call hi("CocHighlightRead", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "") +call hi("CocHighlightText", s:gui0A, s:gui01, s:cterm0A, s:cterm01, "", "") +call hi("CocHighlightWrite", s:gui08, s:gui01, s:cterm08, s:cterm01, "", "") +call hi("CocListMode", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "bold", "") +call hi("CocListPath", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "", "") +call hi("CocSessionsName", s:gui06, "", s:cterm05, "", "", "") + +" CSS +hi! link cssBraces ThemeBlue +hi! link cssFunctionName ThemeYellow +hi! link cssIdentifier ThemeOrange +hi! link cssClassName ThemeGreen +hi! link cssColor ThemeBlue +hi! link cssSelectorOp ThemeBlue +hi! link cssSelectorOp2 ThemeBlue +hi! link cssImportant ThemeGreen +hi! link cssVendor ThemeFg1 + +hi! link cssTextProp ThemeCyan +hi! link cssAnimationProp ThemeCyan +hi! link cssUIProp ThemeYellow +hi! link cssTransformProp ThemeCyan +hi! link cssTransitionProp ThemeCyan +hi! link cssPrintProp ThemeCyan +hi! link cssPositioningProp ThemeYellow +hi! link cssBoxProp ThemeCyan +hi! link cssFontDescriptorProp ThemeCyan +hi! link cssFlexibleBoxProp ThemeCyan +hi! link cssBorderOutlineProp ThemeCyan +hi! link cssBackgroundProp ThemeCyan +hi! link cssMarginProp ThemeCyan +hi! link cssListProp ThemeCyan +hi! link cssTableProp ThemeCyan +hi! link cssFontProp ThemeCyan +hi! link cssPaddingProp ThemeCyan +hi! link cssDimensionProp ThemeCyan +hi! link cssRenderProp ThemeCyan +hi! link cssColorProp ThemeCyan +hi! link cssGeneratedContentProp ThemeCyan + + +" CMP +hi! link CmpItemAbbrDeprecated Deprecated +hi! link CmpItemAbbrMatch SearchMatch +hi! link CmpItemAbbrMatchFuzzy SearchMatch +hi! link CmpItemKindClass Type +hi! link CmpItemKindColor Keyword +hi! link CmpItemKindConstant Constant +hi! link CmpItemKindConstructor Special +hi! link CmpItemKindEnum Type +hi! link CmpItemKindEnumMember Constant +hi! link CmpItemKindEvent Identifier +hi! link CmpItemKindField Character +hi! link CmpItemKindFile Directory +hi! link CmpItemKindFolder Directory +hi! link CmpItemKindFunction Function +hi! link CmpItemKindInterface Type +hi! link CmpItemKindKeyword Keyword +hi! link CmpItemKindMethod Function +hi! link CmpItemKindModule Namespace +hi! link CmpItemKindOperator Operator +hi! link CmpItemKindProperty Identifier +hi! link CmpItemKindReference Character +hi! link CmpItemKindSnippet String +hi! link CmpItemKindStruct Type +hi! link CmpItemKindText Text +hi! link CmpItemKindUnit Namespace +hi! link CmpItemKindValue Comment +hi! link CmpItemKindVariable Identifier + +if has("nvim-0.8.0") + hi! link CmpItemKindField @field + hi! link CmpItemKindProperty @property +endif + +" Diff +call hi("DiffAdd", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "") +call hi("DiffChange", s:gui06, s:gui01, s:cterm05, s:cterm01, "", "") +call hi("DiffDelete", s:gui02, s:guibg, s:cterm02, s:ctermbg, "", "") +call hi("DiffText", s:gui0D, s:gui01, s:cterm0D, s:cterm01, "", "") +call hi("DiffAdded", s:gui0B, s:guibg, s:cterm0B, s:ctermbg, "", "") +call hi("DiffFile", s:gui08, s:guibg, s:cterm08, s:ctermbg, "", "") +call hi("DiffNewFile", s:gui0B, s:guibg, s:cterm0B, s:ctermbg, "", "") +call hi("DiffLine", s:gui0D, s:guibg, s:cterm0D, s:ctermbg, "", "") +call hi("DiffRemoved", s:gui08, s:guibg, s:cterm08, s:ctermbg, "", "") + +" Git +call hi("gitcommitOverflow", s:gui08, "", s:cterm08, "", "", "") +call hi("gitcommitSummary", s:gui0B, "", s:cterm0B, "", "", "") +call hi("gitcommitComment", s:gui03, "", s:cterm03, "", "", "") +call hi("gitcommitUntracked", s:gui03, "", s:cterm03, "", "", "") +call hi("gitcommitDiscarded", s:gui03, "", s:cterm03, "", "", "") +call hi("gitcommitSelected", s:gui03, "", s:cterm03, "", "", "") +call hi("gitcommitHeader", s:gui0E, "", s:cterm0E, "", "", "") +call hi("gitcommitSelectedType", s:gui0D, "", s:cterm0D, "", "", "") +call hi("gitcommitUnmergedType", s:gui0D, "", s:cterm0D, "", "", "") +call hi("gitcommitDiscardedType", s:gui0D, "", s:cterm0D, "", "", "") +call hi("gitcommitBranch", s:gui09, "", s:cterm09, "", "bold", "") +call hi("gitcommitUntrackedFile", s:gui0A, "", s:cterm0A, "", "", "") +call hi("gitcommitUnmergedFile", s:gui08, "", s:cterm08, "", "bold", "") +call hi("gitcommitDiscardedFile", s:gui08, "", s:cterm08, "", "bold", "") +call hi("gitcommitSelectedFile", s:gui0B, "", s:cterm0B, "", "bold", "") + +" GitGutter +hi! link GitGutterAdd GitAddSign +hi! link GitGutterChange GitChangeSign +hi! link GitGutterDelete GitDeleteSign +hi! link GitGutterChangeDelete GitChangeDeleteSign + +" indent-blankline (nvim) +if has("nvim") + call hi("@ibl.indent.char.1",s:gui01, "", s:cterm01, "", "", "") +endif + +" HTML +call hi("htmlBold", s:gui07, "", s:cterm0A, "", "bold", "") +call hi("htmlItalic", s:gui06, "", s:cterm0E, "", "italic", "") +call hi("htmlEndTag", s:gui06, "", s:cterm05, "", "", "") +call hi("htmlTag", s:gui06, "", s:cterm05, "", "", "") + +" JavaScript +call hi("javaScript", s:gui06, "", s:cterm05, "", "", "") +call hi("javaScriptBraces", s:gui06, "", s:cterm05, "", "", "") +call hi("javaScriptNumber", s:gui09, "", s:cterm09, "", "", "") +" pangloss/vim-javascript +call hi("jsOperator", s:gui0D, "", s:cterm0D, "", "", "") +call hi("jsStatement", s:gui0E, "", s:cterm0E, "", "", "") +call hi("jsReturn", s:gui0E, "", s:cterm0E, "", "", "") +call hi("jsThis", s:gui08, "", s:cterm08, "", "", "") +call hi("jsClassDefinition", s:gui0A, "", s:cterm0A, "", "", "") +call hi("jsFunction", s:gui0E, "", s:cterm0E, "", "", "") +call hi("jsFuncName", s:gui0D, "", s:cterm0D, "", "", "") +call hi("jsFuncCall", s:gui0D, "", s:cterm0D, "", "", "") +call hi("jsClassFuncName", s:gui0D, "", s:cterm0D, "", "", "") +call hi("jsClassMethodType", s:gui0E, "", s:cterm0E, "", "", "") +call hi("jsRegexpString", s:gui0C, "", s:cterm0C, "", "", "") +call hi("jsGlobalObjects", s:gui0A, "", s:cterm0A, "", "", "") +call hi("jsGlobalNodeObjects", s:gui0A, "", s:cterm0A, "", "", "") +call hi("jsExceptions", s:gui0A, "", s:cterm0A, "", "", "") +call hi("jsBuiltins", s:gui0A, "", s:cterm0A, "", "", "") + +" Mail +call hi("mailQuoted1", s:gui0A, "", s:cterm0A, "", "", "") +call hi("mailQuoted2", s:gui0B, "", s:cterm0B, "", "", "") +call hi("mailQuoted3", s:gui0E, "", s:cterm0E, "", "", "") +call hi("mailQuoted4", s:gui0C, "", s:cterm0C, "", "", "") +call hi("mailQuoted5", s:gui0D, "", s:cterm0D, "", "", "") +call hi("mailQuoted6", s:gui0A, "", s:cterm0A, "", "", "") +call hi("mailURL", s:gui0D, "", s:cterm0D, "", "", "") +call hi("mailEmail", s:gui0D, "", s:cterm0D, "", "", "") + +" Markdown +call hi("markdownCode", s:gui0B, "", s:cterm0B, "", "", "") +call hi("markdownError", s:gui06, s:guibg, s:cterm05, s:ctermbg, "", "") +call hi("markdownCodeBlock", s:gui0B, "", s:cterm0B, "", "", "") +call hi("markdownHeadingDelimiter", s:gui0D, "", s:cterm0D, "", "", "") + +" Matchup +call hi("MatchWord", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "underline", "") + +" NERDTree +call hi("NERDTreeDirSlash", s:gui0D, "", s:cterm0D, "", "", "") +call hi("NERDTreeExecFile", s:gui06, "", s:cterm05, "", "", "") + +" Netrw +hi! link netrwDir ThemeCyan +hi! link netrwClassify ThemeCyan +hi! link netrwLink ThemeBg3 +hi! link netrwSymLink ThemeFg1 +hi! link netrwExe ThemeYellow +hi! link netrwComment ThemeBg3 +hi! link netrwList ThemeBlue +hi! link netrwHelpCmd ThemeCyan +hi! link netrwCmdSep ThemeFg3 +hi! link netrwVersion ThemeGreen + +" PHP +call hi("phpMemberSelector", s:gui06, "", s:cterm05, "", "", "") +call hi("phpComparison", s:gui06, "", s:cterm05, "", "", "") +call hi("phpParent", s:gui06, "", s:cterm05, "", "", "") +call hi("phpMethodsVar", s:gui0C, "", s:cterm0C, "", "", "") + +" Python +"call hi("pythonOperator", s:gui0E, "", s:cterm0E, "", "", "") +"call hi("pythonRepeat", s:gui0E, "", s:cterm0E, "", "", "") +"call hi("pythonInclude", s:gui0E, "", s:cterm0E, "", "", "") +"call hi("pythonStatement", s:gui0E, "", s:cterm0E, "", "", "") + +" hi! link pythonBuiltin ThemeCyan +" hi! link pythonBuiltinObj ThemeCyan +" hi! link pythonBuiltinFunc ThemeGreen +" hi! link pythonFunction Function +hi! link pythonDecorator ThemeYellow +hi! link pythonDecoratorName ThemeYellow +" hi! link pythonTripleQuotes ThemeGreenItalic +" hi! link pythonInclude ThemeBlue +" hi! link pythonImport ThemeBlue +" hi! link pythonRun ThemeBlue +" hi! link pythonCoding ThemeBlue +" hi! link pythonOperator ThemeRed +" hi! link pythonException ThemeRed +" hi! link pythonExceptions ThemeYellow +" hi! link pythonBoolean ThemeYellow +" hi! link pythonDot ThemeFg3 +" hi! link pythonConditional ThemeCyan +" hi! link pythonRepeat ThemeRed +" hi! link pythonDottedName ThemeGreen + + +" Ruby +call hi("rubyAttribute", s:gui0D, "", s:cterm0D, "", "", "") +call hi("rubyConstant", s:gui0A, "", s:cterm0A, "", "", "") +call hi("rubyInterpolationDelimiter", s:gui0F, "", s:cterm0F, "", "", "") +call hi("rubyRegexp", s:gui0C, "", s:cterm0C, "", "", "") +call hi("rubySymbol", s:gui0B, "", s:cterm0B, "", "", "") +call hi("rubyStringDelimiter", s:gui0B, "", s:cterm0B, "", "", "") + +" SASS +call hi("sassidChar", s:gui08, "", s:cterm08, "", "", "") +call hi("sassClassChar", s:gui09, "", s:cterm09, "", "", "") +call hi("sassInclude", s:gui0E, "", s:cterm0E, "", "", "") +call hi("sassMixing", s:gui0E, "", s:cterm0E, "", "", "") +call hi("sassMixinName", s:gui0D, "", s:cterm0D, "", "", "") + +" Signify +hi! link SignifySignAdd GitAddSign +hi! link SignifySignChange GitChangeSign +hi! link SignifySignDelete GitDeleteSign + +" Startify +call hi("StartifyBracket", s:gui03, "", s:cterm03, "", "", "") +call hi("StartifyFile", s:gui07, "", s:cterm07, "", "", "") +call hi("StartifyFooter", s:gui03, "", s:cterm03, "", "", "") +call hi("StartifyHeader", s:gui0B, "", s:cterm0B, "", "", "") +call hi("StartifyNumber", s:gui09, "", s:cterm09, "", "", "") +call hi("StartifyPath", s:gui03, "", s:cterm03, "", "", "") +call hi("StartifySection", s:gui0E, "", s:cterm0E, "", "", "") +call hi("StartifySelect", s:gui0C, "", s:cterm0C, "", "", "") +call hi("StartifySlash", s:gui03, "", s:cterm03, "", "", "") +call hi("StartifySpecial", s:gui03, "", s:cterm03, "", "", "") + +" LSP +if has("nvim") + hi! link DiagnosticError ErrorSign + hi! link DiagnosticWarn WarningSign + hi! link DiagnosticInfo InfoSign + hi! link DiagnosticHint HintSign + hi! link DiagnosticOk OkSign + + hi! link DiagnosticFloatingError ErrorFloat + hi! link DiagnosticFloatingWarn WarningFloat + hi! link DiagnosticFloatingInfo InfoFloat + hi! link DiagnosticFloatingHint HintFloat + hi! link DiagnosticFloatingOk OkFloat + + hi! link DiagnosticUnderlineError ErrorHighlight + hi! link DiagnosticUnderlineWarn WarningHighlight + hi! link DiagnosticUnderlineInfo InfoHighlight + hi! link DiagnosticUnderlineHint HintHighlight + hi! link DiagnosticUnderlineOk OkHighlight + + hi! link DiagnosticsVirtualTextError ErrorSign + hi! link DiagnosticsVirtualTextWarning WarningSign + hi! link DiagnosticsVirtualTextInfo InfoSign + hi! link DiagnosticsVirtualTextHint HintSign + hi! link DiagnosticsVirtualTextOk OkSign + + " Remove untill endif on next nvim release + hi! link LspDiagnosticsSignError ErrorSign + hi! link LspDiagnosticsSignWarning WarningSign + hi! link LspDiagnosticsSignInfo InfoSign + hi! link LspDiagnosticsSignHint HintSign + + hi! link LspDiagnosticsVirtualTextError ErrorSign + hi! link LspDiagnosticsVirtualTextWarning WarningSign + hi! link LspDiagnosticsVirtualTextInfo InfoSign + hi! link LspDiagnosticsVirtualTextHint HintSign + + hi! link LspDiagnosticsFloatingError ErrorFloat + hi! link LspDiagnosticsFloatingWarning WarningFloat + hi! link LspDiagnosticsFloatingInfo InfoFloat + hi! link LspDiagnosticsFloatingHint HintFloat + + hi! link LspDiagnosticsUnderlineError ErrorHighlight + hi! link LspDiagnosticsUnderlineWarning WarningHighlight + hi! link LspDiagnosticsUnderlineInfo InfoHighlight + hi! link LspDiagnosticsUnderlineHint HintHighlight + + hi! link LspReferenceText ReferenceText + hi! link LspReferenceRead ReferenceRead + hi! link LspReferenceWrite ReferenceWrite +endif + +" Java +call hi("javaOperator", s:gui0D, "", s:cterm0D, "", "", "") + +" JSON +hi! link jsonKeyword ThemeGreen +hi! link jsonQuote ThemeGreen +hi! link jsonBraces ThemeFg1 +hi! link jsonString ThemeFg1 + +" Markdown +hi! link markdownH1 ThemeRedBold +hi! link markdownH2 ThemeRed +hi! link markdownH3 ThemeRed +hi! link markdownH4 ThemeRed +hi! link markdownH5 ThemeRed +hi! link markdownH6 ThemeRed + +hi! link markdownCode ThemeYellow +hi! link markdownCodeBlock ThemeYellow +hi! link markdownCodeDelimiter ThemeYellow + +hi! link markdownBlockquote ThemeGrey +hi! link markdownListMarker ThemeBlue +hi! link markdownOrderedListMarker ThemeBlue +hi! link markdownRule ThemeGrey +hi! link markdownHeadingRule ThemeGrey + +hi! link markdownUrlDelimiter ThemeFg3 +hi! link markdownLinkDelimiter ThemeFg3 +hi! link markdownLinkTextDelimiter ThemeFg3 +hi! link markdownHeadingDelimiter ThemeOrange +hi! link markdownUrlTitleDelimiter ThemeGreen + +hi! link markdownLink ThemeGreen +hi! link markdownWikiLink ThemeViolet +hi! link markdownUrl ThemeOrange +hi! link markdownInlineUrl ThemeOrange + +hi! link markdownLinkText ThemeViolet +hi! link markdownIdDeclaration markdownLinkText + +"call s:HL('markdownItalic', s:fg3, s:none, s:italic) +"call s:HL('markdownLinkText', s:gray, s:none, s:underline) + + +" Remove functions +delf hi + +" Remove color variables +unlet s:gui00 s:gui01 s:gui02 s:gui03 s:gui04 s:gui05 s:gui06 s:gui07 s:gui08 s:gui09 s:gui0A s:gui0B s:gui0C s:gui0D s:gui0E s:gui0F s:guibg +unlet s:cterm00 s:cterm01 s:cterm02 s:cterm03 s:cterm04 s:cterm05 s:cterm06 s:cterm07 s:cterm08 s:cterm09 s:cterm0A s:cterm0B s:cterm0C s:cterm0D s:cterm0E s:cterm0F s:ctermbg diff --git a/apps/nvim/hard-grassland-monobiome-dark.vim b/apps/nvim/hard-grassland-monobiome-dark.vim new file mode 100644 index 0000000..2aa0641 --- /dev/null +++ b/apps/nvim/hard-grassland-monobiome-dark.vim @@ -0,0 +1,882 @@ +" vi:syntax=vim +" +" Top-level remarks: +" +" - `hi` sets highlight colors for syntax groups, allowing one to specify fg and bg colors +" for GUI and terminal Vim. +" - `link` allows for linking one syntax group to another, reusing the same color +" settings. Language-specific groups can then point to one of the base color highlight +" groups, for example, without needing to repeat the raw color values. + +" GUI color definitions +let s:gui00 = "#111815" +let g:base16_gui00 = "#111815" +let s:gui01 = "#1d2321" +let g:base16_gui01 = "#1d2321" +let s:gui02 = "#29302d" +let g:base16_gui02 = "#29302d" +let s:gui03 = "#353c3a" +let g:base16_gui03 = "#353c3a" +let s:gui04 = "#98a19d" +let g:base16_gui04 = "#98a19d" +let s:gui05 = "#a8b0ad" +let g:base16_gui05 = "#a8b0ad" +let s:gui06 = "#b7c0bc" +let g:base16_gui06 = "#b7c0bc" +let s:gui07 = "#c7d0cc" +let g:base16_gui07 = "#c7d0cc" +let s:gui08 = "#dc4134" +let g:base16_gui08 = "#dc4134" +let s:gui09 = "#b86b05" +let g:base16_gui09 = "#b86b05" +let s:gui0A = "#888346" +let g:base16_gui0A = "#888346" +let s:gui0B = "#4f925a" +let g:base16_gui0B = "#4f925a" +let s:gui0C = "#4f925a" +let g:base16_gui0C = "#4f925a" +let s:gui0D = "#557ecc" +let g:base16_gui0D = "#557ecc" +let s:gui0E = "#557ecc" +let g:base16_gui0E = "#557ecc" +let s:gui0F = "#dc4134" +let g:base16_gui0F = "#dc4134" + +let s:grey = "#6c7470" + +" Terminal color definitions +let s:cterm00 = "00" +let g:base16_cterm00 = "00" +let s:cterm03 = "08" +let g:base16_cterm03 = "08" +let s:cterm05 = "07" +let g:base16_cterm05 = "07" +let s:cterm07 = "15" +let g:base16_cterm07 = "15" +let s:cterm08 = "01" +let g:base16_cterm08 = "01" +let s:cterm0A = "03" +let g:base16_cterm0A = "03" +let s:cterm0B = "02" +let g:base16_cterm0B = "02" +let s:cterm0C = "06" +let g:base16_cterm0C = "06" +let s:cterm0D = "04" +let g:base16_cterm0D = "04" +let s:cterm0E = "05" +let g:base16_cterm0E = "05" + +let s:cterm01 = "10" +let g:base16_cterm01 = "10" +let s:cterm02 = "11" +let g:base16_cterm02 = "11" +let s:cterm04 = "12" +let g:base16_cterm04 = "12" +let s:cterm06 = "13" +let g:base16_cterm06 = "13" +let s:cterm09 = "09" +let g:base16_cterm09 = "09" +let s:cterm0F = "14" +let g:base16_cterm0F = "14" + +" Neovim terminal colours +if has("nvim") + let g:terminal_color_0 = "#111815" + let g:terminal_color_1 = "#dc4134" + let g:terminal_color_2 = "#4f925a" + let g:terminal_color_3 = "#888346" + let g:terminal_color_4 = "#557ecc" + let g:terminal_color_5 = "#557ecc" + let g:terminal_color_6 = "#4f925a" + let g:terminal_color_7 = "#a8b0ad" + let g:terminal_color_8 = "#353c3a" + let g:terminal_color_9 = "#dc4134" + let g:terminal_color_10 = "#4f925a" + let g:terminal_color_11 = "#888346" + let g:terminal_color_12 = "#557ecc" + let g:terminal_color_13 = "#557ecc" + let g:terminal_color_14 = "#4f925a" + let g:terminal_color_15 = "#c7d0cc" + let g:terminal_color_background = g:terminal_color_0 + let g:terminal_color_foreground = g:terminal_color_5 + + if &background == "light" + let g:terminal_color_background = g:terminal_color_7 + let g:terminal_color_foreground = g:terminal_color_2 + endif + +elseif has("terminal") + let g:terminal_ansi_colors = [ + \ "#111815", + \ "#dc4134", + \ "#4f925a", + \ "#888346", + \ "#557ecc", + \ "#557ecc", + \ "#4f925a", + \ "#a8b0ad", + \ "#353c3a", + \ "#dc4134", + \ "#4f925a", + \ "#888346", + \ "#557ecc", + \ "#557ecc", + \ "#4f925a", + \ "#c7d0cc", + \ ] +endif + +let s:guibg = s:gui00 +let s:ctermbg = s:cterm00 + +" Theme setup +hi clear +syntax reset +let g:colors_name = "active" + +" Highlighting function +" Optional variables are attributes and guisp +function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) + " For a given syntax group, sets the GUI and terminal foreground and backgrounds + " Optional parameters are interpreted as `attr` and `guisp`, the first of which appears + " to be a modifier for the group (e.g., bold, italic), and `guisp` appears to be + " 'special' colors used for underlines in the GUI. + let l:attr = get(a:, 1, "") + let l:guisp = get(a:, 2, "") + + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + + if a:guifg != "" + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=" . a:guifg + endif + endif + + if a:guibg != "" + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=" . a:guibg + endif + endif + + if a:ctermfg != "" + exec "hi " . a:group . " ctermfg=" . a:ctermfg + endif + + if a:ctermbg != "" + exec "hi " . a:group . " ctermbg=" . a:ctermbg + endif + + if l:attr != "" + exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr + endif + + if l:guisp != "" + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=" . l:guisp + endif + endif +endfunction + + +fun hi(group, guifg, guibg, ctermfg, ctermbg, attr, guisp) + call g:Base16hi(a:group, a:guifg, a:guibg, a:ctermfg, a:ctermbg, a:attr, a:guisp) +endfun + + +" color groups for interpretability +call hi("ThemeBg0", s:gui00, "", s:cterm00, "", "", "") +call hi("ThemeBg1", s:gui01, "", s:cterm01, "", "", "") +call hi("ThemeBg2", s:gui02, "", s:cterm02, "", "", "") +call hi("ThemeBg3", s:gui03, "", s:cterm03, "", "", "") +call hi("ThemeFg3", s:gui04, "", s:cterm04, "", "", "") +call hi("ThemeFg2", s:gui05, "", s:cterm05, "", "", "") +call hi("ThemeFg1", s:gui06, "", s:cterm06, "", "", "") +call hi("ThemeFg0", s:gui07, "", s:cterm07, "", "", "") +" +call hi("ThemeRed", s:gui08, "", s:cterm08, "", "", "") +call hi("ThemeOrange", s:gui09, "", s:cterm09, "", "", "") +call hi("ThemeYellow", s:gui0A, "", s:cterm0A, "", "", "") +call hi("ThemeGreen", s:gui0B, "", s:cterm0B, "", "", "") +call hi("ThemeCyan", s:gui0C, "", s:cterm0C, "", "", "") +call hi("ThemeBlue", s:gui0D, "", s:cterm0D, "", "", "") +call hi("ThemeViolet", s:gui0E, "", s:cterm0E, "", "", "") +call hi("ThemeMagenta", s:gui0F, "", s:cterm0F, "", "", "") + +call hi("ThemeRedBold", s:gui08, "", s:cterm08, "", "bold", "") +call hi("ThemeOrangeBold", s:gui09, "", s:cterm09, "", "bold", "") +call hi("ThemeYellowBold", s:gui0A, "", s:cterm0A, "", "bold", "") +call hi("ThemeGreenBold", s:gui0B, "", s:cterm0B, "", "bold", "") +call hi("ThemeCyanBold", s:gui0C, "", s:cterm0C, "", "bold", "") +call hi("ThemeBlueBold", s:gui0D, "", s:cterm0D, "", "bold", "") +call hi("ThemeVioletBold", s:gui0E, "", s:cterm0E, "", "bold", "") +call hi("ThemeMagentaBold", s:gui0F, "", s:cterm0F, "", "bold", "") + +call hi("ThemeRedItalic", s:gui08, "", s:cterm08, "", "italic", "") +call hi("ThemeOrangeItalic", s:gui09, "", s:cterm09, "", "italic", "") +call hi("ThemeYellowItalic", s:gui0A, "", s:cterm0A, "", "italic", "") +call hi("ThemeGreenItalic", s:gui0B, "", s:cterm0B, "", "italic", "") +call hi("ThemeCyanItalic", s:gui0C, "", s:cterm0C, "", "italic", "") +call hi("ThemeBlueItalic", s:gui0D, "", s:cterm0D, "", "italic", "") +call hi("ThemeVioletItalic", s:gui0E, "", s:cterm0E, "", "italic", "") +call hi("ThemeMagentaItalic", s:gui0F, "", s:cterm0F, "", "italic", "") + +call hi("ThemeGrey", s:grey, "", s:cterm03, "", "", "") +call hi("ThemeGreyItalic", s:grey, "", s:cterm03, "", "italic", "") + + +" Vim editor colors +call hi("Normal", s:gui05, s:guibg, s:cterm05, s:ctermbg, "", "") +call hi("Bold", "", "", "", "", "bold", "") +call hi("Debug", s:gui08, "", s:cterm08, "", "", "") +call hi("Directory", s:gui0D, "", s:cterm0D, "", "", "") +call hi("Error", s:guibg, s:gui08, s:ctermbg, s:cterm08, "", "") +call hi("ErrorMsg", s:gui08, s:guibg, s:cterm08, s:ctermbg, "", "") +call hi("Exception", s:gui08, "", s:cterm08, "", "", "") +call hi("FoldColumn", s:gui03, s:guibg, s:cterm03, s:ctermbg, "", "") +call hi("Folded", s:gui02, s:guibg, s:cterm02, s:ctermbg, "", "") +call hi("IncSearch", s:gui01, s:gui09, s:cterm01, s:cterm09, "none", "") +call hi("Italic", "", "", "", "", "italic", "") +call hi("Macro", s:gui0C, "", s:cterm0C, "", "", "") +call hi("MatchParen", "", s:gui03, "", s:cterm03, "", "") +call hi("ModeMsg", s:gui0B, "", s:cterm0B, "", "", "") +call hi("MoreMsg", s:gui0B, "", s:cterm0B, "", "", "") +call hi("Question", s:gui0D, "", s:cterm0D, "", "", "") +call hi("Search", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "", "") +call hi("Substitute", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "none", "") +call hi("SpecialKey", s:gui03, "", s:cterm03, "", "", "") +call hi("TooLong", s:gui08, "", s:cterm08, "", "", "") +call hi("Underlined", "", "", "", "", "underline", "fg") +call hi("Visual", "", s:gui02, "", s:cterm02, "", "") +call hi("VisualNOS", s:gui08, "", s:cterm08, "", "", "") +call hi("WarningMsg", s:gui08, "", s:cterm08, "", "", "") +call hi("WildMenu", s:guibg, s:gui06, s:ctermbg, s:cterm05, "", "") +call hi("Title", s:gui0D, "", s:cterm0D, "", "none", "") +call hi("Conceal", s:gui0D, s:guibg, s:cterm0D, s:ctermbg, "", "") +call hi("Cursor", s:gui05, s:guibg, "", "", "inverse", "") +call hi("NonText", s:gui03, "", s:cterm03, "", "", "") +call hi("Whitespace", s:gui03, "", s:cterm03, "", "", "") +call hi("LineNr", s:gui03, s:guibg, s:cterm03, s:ctermbg, "", "") +call hi("SignColumn", s:gui03, s:guibg, s:cterm03, s:ctermbg, "", "") +call hi("StatusLine", s:gui07, s:gui01, s:cterm07, s:cterm01, "none", "") +call hi("StatusLineNC", s:gui06, s:gui01, s:cterm05, s:cterm01, "none", "") +call hi("VertSplit", s:gui01, s:guibg, s:cterm01, s:ctermbg, "none", "") +call hi("ColorColumn", "", s:gui01, "", s:cterm01, "none", "") +call hi("CursorColumn", "", s:gui01, "", s:cterm01, "none", "") +call hi("CursorLine", "", s:gui01, "", s:cterm01, "none", "") +call hi("CursorLineNr", s:gui04, s:gui01, s:cterm04, s:cterm01, "bold", "") +call hi("QuickFixLine", "", s:gui01, "", s:cterm01, "none", "") +call hi("PMenu", s:gui06, s:gui01, s:cterm06, s:cterm01, "none", "") +call hi("PMenuSel", s:gui06, s:gui02, s:cterm06, s:cterm02, "", "") +call hi("PMenuSbar", "", s:gui03, "", s:cterm03, "", "") +call hi("PMenuThumb", "", s:gui04, "", s:cterm04, "", "") +call hi("TabLine", s:gui03, s:gui01, s:cterm03, s:cterm01, "none", "") +call hi("TabLineFill", s:gui03, s:gui01, s:cterm03, s:cterm01, "none", "") +call hi("TabLineSel", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "none", "") + +" Standard syntax +hi! link Boolean ThemeOrange +hi! link Character ThemeRed + +"call hi("Comment", s:gui03, "", s:cterm03, "", "italic", "") +hi! link Comment ThemeGreyItalic + +hi! link Conditional ThemeRed +hi! link Constant ThemeOrange +call hi("Define", s:gui0E, "", s:cterm0E, "", "none", "") +hi! link Delimiter ThemeFg1 + +if has("patch-8.0.1038") + call hi("Deprecated", "", "", "", "", "strikethrough", "") +endif + +hi! link Float ThemeOrange +hi! link Function ThemeBlue +call hi("Identifier", s:gui06, "", s:cterm05, "", "none", "") +hi! link Include ThemeBlue +hi! link Constant ThemeOrange +call hi("Keyword", s:gui0E, "", s:cterm0E, "", "none", "") +hi! link Label ThemeOrange +hi! link Number ThemeOrange +hi! link Operator ThemeYellow +hi! link PreProc ThemeOrange +hi! link Repeat ThemeViolet +hi! link Special ThemeYellow +hi! link SpecialChar ThemeMagenta +hi! link Statement ThemeRed +hi! link StorageClass ThemeOrange +hi! link String ThemeGreen +hi! link Structure ThemeOrange +hi! link Tag ThemeOrange + +call hi("Todo", s:gui08, s:guibg, s:cterm08, s:ctermbg, "italic", "") +call hi("Type", s:gui0A, "", s:cterm0A, "", "none", "") + +hi! link Typedef ThemeOrange + + +" Treesitter +if has("nvim-0.8.0") + call hi("@field", s:gui08, "", s:cterm08, "", "", "") + call hi("@property", s:gui08, "", s:cterm08, "", "", "") + call hi("@namespace", s:gui06, "", s:cterm05, "", "italic", "") + call hi("@variable.builtin", s:gui06, "", s:cterm05, "", "italic", "") + call hi("@text.reference", s:gui08, "", s:cterm08, "", "", "") + call hi("@text.uri", s:gui08, "", s:cterm08, "", "italic", "") + + " Annotations & Attributes + call hi("@annotation", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@attribute", s:gui0D, "", s:cterm0D, "", "", "") + + " Booleans, Characters & Comments + call hi("@boolean", s:gui09, "", s:cterm09, "", "", "") + call hi("@character", s:gui08, "", s:cterm08, "", "", "") + call hi("@character.special", s:gui0F, "", s:cterm0F, "", "", "") + call hi("@comment", s:gui03, "", s:cterm03, "", "", "") + + " Conditionals, Constants & Debugging + call hi("@keyword.conditional", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@constant", s:gui09, "", s:cterm09, "", "", "") + call hi("@constant.builtin", s:gui09, "", s:cterm09, "", "", "") + call hi("@constant.macro", s:gui08, "", s:cterm08, "", "", "") + call hi("@keyword.debug", s:gui08, "", s:cterm08, "", "", "") + + " Directives & Exceptions + call hi("@keyword.directive.define", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@keyword.exception", s:gui0E, "", s:cterm0E, "", "", "") + + " Floats & Functions + call hi("@number.float", s:gui09, "", s:cterm09, "", "", "") + call hi("@function", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@function.builtin", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@function.call", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@function.macro", s:gui08, "", s:cterm08, "", "", "") + + " Imports, Operators & Returns + call hi("@keyword.import", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@keyword.coroutine", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@keyword.operator", s:gui06, "", s:cterm05, "", "", "") + call hi("@keyword.return", s:gui0E, "", s:cterm0E, "", "", "") + + " Methods & Namespaces + call hi("@function.method", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@function.method.call", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@namespace.builtin", s:gui0E, "", s:cterm0E, "", "", "") + + " Numbers & Directives + call hi("@none", s:gui06, "", s:cterm05, "", "", "") + call hi("@number", s:gui09, "", s:cterm09, "", "", "") + call hi("@keyword.directive", s:gui0E, "", s:cterm0E, "", "", "") + + " Repeats, Storage & Strings + call hi("@keyword.repeat", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@keyword.storage", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@string", s:gui0B, "", s:cterm0B, "", "", "") + + " Tags & Markup + call hi("@markup.link.label", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.link.label.symbol", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@tag", s:gui08, "", s:cterm08, "", "", "") + call hi("@tag.attribute", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@tag.delimiter", s:gui0F, "", s:cterm0F, "", "", "") + + " More Markup + call hi("@markup", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.environment", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.environment.name", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.raw", s:gui09, "", s:cterm09, "", "", "") + call hi("@markup.math", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.strong", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.emphasis", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.strikethrough", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.underline", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.heading", s:gui0D, "", s:cterm0D, "", "", "") + + " Comments & Types + call hi("@comment.note", s:gui03, "", s:cterm03, "", "", "") + call hi("@comment.error", s:gui08, "", s:cterm08, "", "", "") + call hi("@comment.hint", s:gui0B, "", s:cterm0B, "", "", "") + call hi("@comment.info", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@comment.warning", s:gui09, "", s:cterm09, "", "", "") + call hi("@comment.todo", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.link.url", s:gui09, "", s:cterm09, "", "", "") + call hi("@type", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@type.definition", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@type.qualifier", s:gui0E, "", s:cterm0E, "", "", "") +endif + +" Standard highlights to be used by plugins +if has("patch-8.0.1038") + call hi("Deprecated", "", "", "", "", "strikethrough", "") +endif +call hi("SearchMatch", s:gui0C, "", s:cterm0C, "", "", "") + +call hi("GitAddSign", s:gui0B, "", s:cterm0B, "", "", "") +call hi("GitChangeSign", s:gui04, "", s:cterm04, "", "", "") +call hi("GitDeleteSign", s:gui08, "", s:cterm08, "", "", "") +call hi("GitChangeDeleteSign", s:gui04, "", s:cterm04, "", "", "") + +call hi("ErrorSign", s:gui08, "", s:cterm08, "", "", "") +call hi("WarningSign", s:gui09, "", s:cterm09, "", "", "") +call hi("InfoSign", s:gui0D, "", s:cterm0D, "", "", "") +call hi("HintSign", s:gui0C, "", s:cterm0C, "", "", "") +call hi("OkSign", s:gui0B, "", s:cterm0B, "", "", "") + +call hi("ErrorFloat", s:gui08, s:gui01, s:cterm08, s:cterm01, "", "") +call hi("WarningFloat", s:gui09, s:gui01, s:cterm09, s:cterm01, "", "") +call hi("InfoFloat", s:gui0D, s:gui01, s:cterm0D, s:cterm01, "", "") +call hi("HintFloat", s:gui0C, s:gui01, s:cterm0C, s:cterm01, "", "") +call hi("OkFloat", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "") + +call hi("ErrorHighlight", "", "", s:ctermbg, s:cterm08, "underline", s:gui08) +call hi("WarningHighlight", "", "", s:ctermbg, s:cterm09, "underline", s:gui09) +call hi("InfoHighlight", "", "", s:ctermbg, s:cterm0D, "underline", s:gui0D) +call hi("HintHighlight", "", "", s:ctermbg, s:cterm0C, "underline", s:gui0C) +call hi("OkHighlight", "", "", s:ctermbg, s:cterm0B, "underline", s:gui0B) + +call hi("SpellBad", "", "", s:ctermbg, s:cterm08, "undercurl", s:gui08) +call hi("SpellLocal", "", "", s:ctermbg, s:cterm0C, "undercurl", s:gui0C) +call hi("SpellCap", "", "", s:ctermbg, s:cterm0D, "undercurl", s:gui0D) +call hi("SpellRare", "", "", s:ctermbg, s:cterm0E, "undercurl", s:gui0E) + +call hi("ReferenceText", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "", "") +call hi("ReferenceRead", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "", "") +call hi("ReferenceWrite", s:gui01, s:gui08, s:cterm01, s:cterm08, "", "") + +" C +call hi("cOperator", s:gui0C, "", s:cterm0C, "", "", "") +call hi("cPreCondit", s:gui0E, "", s:cterm0E, "", "", "") + +" C# +call hi("csClass", s:gui0A, "", s:cterm0A, "", "", "") +call hi("csAttribute", s:gui0A, "", s:cterm0A, "", "", "") +call hi("csModifier", s:gui0E, "", s:cterm0E, "", "", "") +call hi("csType", s:gui08, "", s:cterm08, "", "", "") +call hi("csUnspecifiedStatement", s:gui0D, "", s:cterm0D, "", "", "") +call hi("csContextualStatement", s:gui0E, "", s:cterm0E, "", "", "") +call hi("csNewDecleration", s:gui08, "", s:cterm08, "", "", "") + +" Clap +hi! link ClapInput ColorColumn +hi! link ClapSpinner ColorColumn +hi! link ClapDisplay Default +hi! link ClapPreview ColorColumn +hi! link ClapCurrentSelection CursorLine +hi! link ClapNoMatchesFound ErrorFloat + +" Coc +hi! link CocErrorSign ErrorSign +hi! link CocWarningSign WarningSign +hi! link CocInfoSign InfoSign +hi! link CocHintSign HintSign + +hi! link CocErrorFloat ErrorFloat +hi! link CocWarningFloat WarningFloat +hi! link CocInfoFloat InfoFloat +hi! link CocHintFloat HintFloat + +hi! link CocErrorHighlight ErrorHighlight +hi! link CocWarningHighlight WarningHighlight +hi! link CocInfoHighlight InfoHighlight +hi! link CocHintHighlight HintHighlight + +hi! link CocSem_angle Keyword +hi! link CocSem_annotation Keyword +hi! link CocSem_attribute Type +hi! link CocSem_bitwise Keyword +hi! link CocSem_boolean Boolean +hi! link CocSem_brace Normal +hi! link CocSem_bracket Normal +hi! link CocSem_builtinAttribute Type +hi! link CocSem_builtinType Type +hi! link CocSem_character String +hi! link CocSem_class Structure +hi! link CocSem_colon Normal +hi! link CocSem_comma Normal +hi! link CocSem_comment Comment +hi! link CocSem_comparison Keyword +hi! link CocSem_concept Keyword +hi! link CocSem_constParameter Identifier +hi! link CocSem_dependent Keyword +hi! link CocSem_dot Keyword +hi! link CocSem_enum Structure +hi! link CocSem_enumMember Constant +hi! link CocSem_escapeSequence Type +hi! link CocSem_event Identifier +hi! link CocSem_formatSpecifier Type +hi! link CocSem_function Function +hi! link CocSem_interface Type +hi! link CocSem_keyword Keyword +hi! link CocSem_label Keyword +hi! link CocSem_logical Keyword +hi! link CocSem_macro Macro +hi! link CocSem_method Function +hi! link CocSem_modifier Keyword +hi! link CocSem_namespace Identifier +hi! link CocSem_number Number +hi! link CocSem_operator Operator +hi! link CocSem_parameter Identifier +hi! link CocSem_parenthesis Normal +hi! link CocSem_property Identifier +hi! link CocSem_punctuation Keyword +hi! link CocSem_regexp Type +hi! link CocSem_selfKeyword Constant +hi! link CocSem_semicolon Normal +hi! link CocSem_string String +hi! link CocSem_struct Structure +hi! link CocSem_type Type +hi! link CocSem_typeAlias Type +hi! link CocSem_typeParameter Type +hi! link CocSem_unknown Normal +hi! link CocSem_variable Identifier + +call hi("CocHighlightRead", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "") +call hi("CocHighlightText", s:gui0A, s:gui01, s:cterm0A, s:cterm01, "", "") +call hi("CocHighlightWrite", s:gui08, s:gui01, s:cterm08, s:cterm01, "", "") +call hi("CocListMode", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "bold", "") +call hi("CocListPath", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "", "") +call hi("CocSessionsName", s:gui06, "", s:cterm05, "", "", "") + +" CSS +hi! link cssBraces ThemeBlue +hi! link cssFunctionName ThemeYellow +hi! link cssIdentifier ThemeOrange +hi! link cssClassName ThemeGreen +hi! link cssColor ThemeBlue +hi! link cssSelectorOp ThemeBlue +hi! link cssSelectorOp2 ThemeBlue +hi! link cssImportant ThemeGreen +hi! link cssVendor ThemeFg1 + +hi! link cssTextProp ThemeCyan +hi! link cssAnimationProp ThemeCyan +hi! link cssUIProp ThemeYellow +hi! link cssTransformProp ThemeCyan +hi! link cssTransitionProp ThemeCyan +hi! link cssPrintProp ThemeCyan +hi! link cssPositioningProp ThemeYellow +hi! link cssBoxProp ThemeCyan +hi! link cssFontDescriptorProp ThemeCyan +hi! link cssFlexibleBoxProp ThemeCyan +hi! link cssBorderOutlineProp ThemeCyan +hi! link cssBackgroundProp ThemeCyan +hi! link cssMarginProp ThemeCyan +hi! link cssListProp ThemeCyan +hi! link cssTableProp ThemeCyan +hi! link cssFontProp ThemeCyan +hi! link cssPaddingProp ThemeCyan +hi! link cssDimensionProp ThemeCyan +hi! link cssRenderProp ThemeCyan +hi! link cssColorProp ThemeCyan +hi! link cssGeneratedContentProp ThemeCyan + + +" CMP +hi! link CmpItemAbbrDeprecated Deprecated +hi! link CmpItemAbbrMatch SearchMatch +hi! link CmpItemAbbrMatchFuzzy SearchMatch +hi! link CmpItemKindClass Type +hi! link CmpItemKindColor Keyword +hi! link CmpItemKindConstant Constant +hi! link CmpItemKindConstructor Special +hi! link CmpItemKindEnum Type +hi! link CmpItemKindEnumMember Constant +hi! link CmpItemKindEvent Identifier +hi! link CmpItemKindField Character +hi! link CmpItemKindFile Directory +hi! link CmpItemKindFolder Directory +hi! link CmpItemKindFunction Function +hi! link CmpItemKindInterface Type +hi! link CmpItemKindKeyword Keyword +hi! link CmpItemKindMethod Function +hi! link CmpItemKindModule Namespace +hi! link CmpItemKindOperator Operator +hi! link CmpItemKindProperty Identifier +hi! link CmpItemKindReference Character +hi! link CmpItemKindSnippet String +hi! link CmpItemKindStruct Type +hi! link CmpItemKindText Text +hi! link CmpItemKindUnit Namespace +hi! link CmpItemKindValue Comment +hi! link CmpItemKindVariable Identifier + +if has("nvim-0.8.0") + hi! link CmpItemKindField @field + hi! link CmpItemKindProperty @property +endif + +" Diff +call hi("DiffAdd", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "") +call hi("DiffChange", s:gui06, s:gui01, s:cterm05, s:cterm01, "", "") +call hi("DiffDelete", s:gui02, s:guibg, s:cterm02, s:ctermbg, "", "") +call hi("DiffText", s:gui0D, s:gui01, s:cterm0D, s:cterm01, "", "") +call hi("DiffAdded", s:gui0B, s:guibg, s:cterm0B, s:ctermbg, "", "") +call hi("DiffFile", s:gui08, s:guibg, s:cterm08, s:ctermbg, "", "") +call hi("DiffNewFile", s:gui0B, s:guibg, s:cterm0B, s:ctermbg, "", "") +call hi("DiffLine", s:gui0D, s:guibg, s:cterm0D, s:ctermbg, "", "") +call hi("DiffRemoved", s:gui08, s:guibg, s:cterm08, s:ctermbg, "", "") + +" Git +call hi("gitcommitOverflow", s:gui08, "", s:cterm08, "", "", "") +call hi("gitcommitSummary", s:gui0B, "", s:cterm0B, "", "", "") +call hi("gitcommitComment", s:gui03, "", s:cterm03, "", "", "") +call hi("gitcommitUntracked", s:gui03, "", s:cterm03, "", "", "") +call hi("gitcommitDiscarded", s:gui03, "", s:cterm03, "", "", "") +call hi("gitcommitSelected", s:gui03, "", s:cterm03, "", "", "") +call hi("gitcommitHeader", s:gui0E, "", s:cterm0E, "", "", "") +call hi("gitcommitSelectedType", s:gui0D, "", s:cterm0D, "", "", "") +call hi("gitcommitUnmergedType", s:gui0D, "", s:cterm0D, "", "", "") +call hi("gitcommitDiscardedType", s:gui0D, "", s:cterm0D, "", "", "") +call hi("gitcommitBranch", s:gui09, "", s:cterm09, "", "bold", "") +call hi("gitcommitUntrackedFile", s:gui0A, "", s:cterm0A, "", "", "") +call hi("gitcommitUnmergedFile", s:gui08, "", s:cterm08, "", "bold", "") +call hi("gitcommitDiscardedFile", s:gui08, "", s:cterm08, "", "bold", "") +call hi("gitcommitSelectedFile", s:gui0B, "", s:cterm0B, "", "bold", "") + +" GitGutter +hi! link GitGutterAdd GitAddSign +hi! link GitGutterChange GitChangeSign +hi! link GitGutterDelete GitDeleteSign +hi! link GitGutterChangeDelete GitChangeDeleteSign + +" indent-blankline (nvim) +if has("nvim") + call hi("@ibl.indent.char.1",s:gui01, "", s:cterm01, "", "", "") +endif + +" HTML +call hi("htmlBold", s:gui07, "", s:cterm0A, "", "bold", "") +call hi("htmlItalic", s:gui06, "", s:cterm0E, "", "italic", "") +call hi("htmlEndTag", s:gui06, "", s:cterm05, "", "", "") +call hi("htmlTag", s:gui06, "", s:cterm05, "", "", "") + +" JavaScript +call hi("javaScript", s:gui06, "", s:cterm05, "", "", "") +call hi("javaScriptBraces", s:gui06, "", s:cterm05, "", "", "") +call hi("javaScriptNumber", s:gui09, "", s:cterm09, "", "", "") +" pangloss/vim-javascript +call hi("jsOperator", s:gui0D, "", s:cterm0D, "", "", "") +call hi("jsStatement", s:gui0E, "", s:cterm0E, "", "", "") +call hi("jsReturn", s:gui0E, "", s:cterm0E, "", "", "") +call hi("jsThis", s:gui08, "", s:cterm08, "", "", "") +call hi("jsClassDefinition", s:gui0A, "", s:cterm0A, "", "", "") +call hi("jsFunction", s:gui0E, "", s:cterm0E, "", "", "") +call hi("jsFuncName", s:gui0D, "", s:cterm0D, "", "", "") +call hi("jsFuncCall", s:gui0D, "", s:cterm0D, "", "", "") +call hi("jsClassFuncName", s:gui0D, "", s:cterm0D, "", "", "") +call hi("jsClassMethodType", s:gui0E, "", s:cterm0E, "", "", "") +call hi("jsRegexpString", s:gui0C, "", s:cterm0C, "", "", "") +call hi("jsGlobalObjects", s:gui0A, "", s:cterm0A, "", "", "") +call hi("jsGlobalNodeObjects", s:gui0A, "", s:cterm0A, "", "", "") +call hi("jsExceptions", s:gui0A, "", s:cterm0A, "", "", "") +call hi("jsBuiltins", s:gui0A, "", s:cterm0A, "", "", "") + +" Mail +call hi("mailQuoted1", s:gui0A, "", s:cterm0A, "", "", "") +call hi("mailQuoted2", s:gui0B, "", s:cterm0B, "", "", "") +call hi("mailQuoted3", s:gui0E, "", s:cterm0E, "", "", "") +call hi("mailQuoted4", s:gui0C, "", s:cterm0C, "", "", "") +call hi("mailQuoted5", s:gui0D, "", s:cterm0D, "", "", "") +call hi("mailQuoted6", s:gui0A, "", s:cterm0A, "", "", "") +call hi("mailURL", s:gui0D, "", s:cterm0D, "", "", "") +call hi("mailEmail", s:gui0D, "", s:cterm0D, "", "", "") + +" Markdown +call hi("markdownCode", s:gui0B, "", s:cterm0B, "", "", "") +call hi("markdownError", s:gui06, s:guibg, s:cterm05, s:ctermbg, "", "") +call hi("markdownCodeBlock", s:gui0B, "", s:cterm0B, "", "", "") +call hi("markdownHeadingDelimiter", s:gui0D, "", s:cterm0D, "", "", "") + +" Matchup +call hi("MatchWord", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "underline", "") + +" NERDTree +call hi("NERDTreeDirSlash", s:gui0D, "", s:cterm0D, "", "", "") +call hi("NERDTreeExecFile", s:gui06, "", s:cterm05, "", "", "") + +" Netrw +hi! link netrwDir ThemeCyan +hi! link netrwClassify ThemeCyan +hi! link netrwLink ThemeBg3 +hi! link netrwSymLink ThemeFg1 +hi! link netrwExe ThemeYellow +hi! link netrwComment ThemeBg3 +hi! link netrwList ThemeBlue +hi! link netrwHelpCmd ThemeCyan +hi! link netrwCmdSep ThemeFg3 +hi! link netrwVersion ThemeGreen + +" PHP +call hi("phpMemberSelector", s:gui06, "", s:cterm05, "", "", "") +call hi("phpComparison", s:gui06, "", s:cterm05, "", "", "") +call hi("phpParent", s:gui06, "", s:cterm05, "", "", "") +call hi("phpMethodsVar", s:gui0C, "", s:cterm0C, "", "", "") + +" Python +"call hi("pythonOperator", s:gui0E, "", s:cterm0E, "", "", "") +"call hi("pythonRepeat", s:gui0E, "", s:cterm0E, "", "", "") +"call hi("pythonInclude", s:gui0E, "", s:cterm0E, "", "", "") +"call hi("pythonStatement", s:gui0E, "", s:cterm0E, "", "", "") + +" hi! link pythonBuiltin ThemeCyan +" hi! link pythonBuiltinObj ThemeCyan +" hi! link pythonBuiltinFunc ThemeGreen +" hi! link pythonFunction Function +hi! link pythonDecorator ThemeYellow +hi! link pythonDecoratorName ThemeYellow +" hi! link pythonTripleQuotes ThemeGreenItalic +" hi! link pythonInclude ThemeBlue +" hi! link pythonImport ThemeBlue +" hi! link pythonRun ThemeBlue +" hi! link pythonCoding ThemeBlue +" hi! link pythonOperator ThemeRed +" hi! link pythonException ThemeRed +" hi! link pythonExceptions ThemeYellow +" hi! link pythonBoolean ThemeYellow +" hi! link pythonDot ThemeFg3 +" hi! link pythonConditional ThemeCyan +" hi! link pythonRepeat ThemeRed +" hi! link pythonDottedName ThemeGreen + + +" Ruby +call hi("rubyAttribute", s:gui0D, "", s:cterm0D, "", "", "") +call hi("rubyConstant", s:gui0A, "", s:cterm0A, "", "", "") +call hi("rubyInterpolationDelimiter", s:gui0F, "", s:cterm0F, "", "", "") +call hi("rubyRegexp", s:gui0C, "", s:cterm0C, "", "", "") +call hi("rubySymbol", s:gui0B, "", s:cterm0B, "", "", "") +call hi("rubyStringDelimiter", s:gui0B, "", s:cterm0B, "", "", "") + +" SASS +call hi("sassidChar", s:gui08, "", s:cterm08, "", "", "") +call hi("sassClassChar", s:gui09, "", s:cterm09, "", "", "") +call hi("sassInclude", s:gui0E, "", s:cterm0E, "", "", "") +call hi("sassMixing", s:gui0E, "", s:cterm0E, "", "", "") +call hi("sassMixinName", s:gui0D, "", s:cterm0D, "", "", "") + +" Signify +hi! link SignifySignAdd GitAddSign +hi! link SignifySignChange GitChangeSign +hi! link SignifySignDelete GitDeleteSign + +" Startify +call hi("StartifyBracket", s:gui03, "", s:cterm03, "", "", "") +call hi("StartifyFile", s:gui07, "", s:cterm07, "", "", "") +call hi("StartifyFooter", s:gui03, "", s:cterm03, "", "", "") +call hi("StartifyHeader", s:gui0B, "", s:cterm0B, "", "", "") +call hi("StartifyNumber", s:gui09, "", s:cterm09, "", "", "") +call hi("StartifyPath", s:gui03, "", s:cterm03, "", "", "") +call hi("StartifySection", s:gui0E, "", s:cterm0E, "", "", "") +call hi("StartifySelect", s:gui0C, "", s:cterm0C, "", "", "") +call hi("StartifySlash", s:gui03, "", s:cterm03, "", "", "") +call hi("StartifySpecial", s:gui03, "", s:cterm03, "", "", "") + +" LSP +if has("nvim") + hi! link DiagnosticError ErrorSign + hi! link DiagnosticWarn WarningSign + hi! link DiagnosticInfo InfoSign + hi! link DiagnosticHint HintSign + hi! link DiagnosticOk OkSign + + hi! link DiagnosticFloatingError ErrorFloat + hi! link DiagnosticFloatingWarn WarningFloat + hi! link DiagnosticFloatingInfo InfoFloat + hi! link DiagnosticFloatingHint HintFloat + hi! link DiagnosticFloatingOk OkFloat + + hi! link DiagnosticUnderlineError ErrorHighlight + hi! link DiagnosticUnderlineWarn WarningHighlight + hi! link DiagnosticUnderlineInfo InfoHighlight + hi! link DiagnosticUnderlineHint HintHighlight + hi! link DiagnosticUnderlineOk OkHighlight + + hi! link DiagnosticsVirtualTextError ErrorSign + hi! link DiagnosticsVirtualTextWarning WarningSign + hi! link DiagnosticsVirtualTextInfo InfoSign + hi! link DiagnosticsVirtualTextHint HintSign + hi! link DiagnosticsVirtualTextOk OkSign + + " Remove untill endif on next nvim release + hi! link LspDiagnosticsSignError ErrorSign + hi! link LspDiagnosticsSignWarning WarningSign + hi! link LspDiagnosticsSignInfo InfoSign + hi! link LspDiagnosticsSignHint HintSign + + hi! link LspDiagnosticsVirtualTextError ErrorSign + hi! link LspDiagnosticsVirtualTextWarning WarningSign + hi! link LspDiagnosticsVirtualTextInfo InfoSign + hi! link LspDiagnosticsVirtualTextHint HintSign + + hi! link LspDiagnosticsFloatingError ErrorFloat + hi! link LspDiagnosticsFloatingWarning WarningFloat + hi! link LspDiagnosticsFloatingInfo InfoFloat + hi! link LspDiagnosticsFloatingHint HintFloat + + hi! link LspDiagnosticsUnderlineError ErrorHighlight + hi! link LspDiagnosticsUnderlineWarning WarningHighlight + hi! link LspDiagnosticsUnderlineInfo InfoHighlight + hi! link LspDiagnosticsUnderlineHint HintHighlight + + hi! link LspReferenceText ReferenceText + hi! link LspReferenceRead ReferenceRead + hi! link LspReferenceWrite ReferenceWrite +endif + +" Java +call hi("javaOperator", s:gui0D, "", s:cterm0D, "", "", "") + +" JSON +hi! link jsonKeyword ThemeGreen +hi! link jsonQuote ThemeGreen +hi! link jsonBraces ThemeFg1 +hi! link jsonString ThemeFg1 + +" Markdown +hi! link markdownH1 ThemeRedBold +hi! link markdownH2 ThemeRed +hi! link markdownH3 ThemeRed +hi! link markdownH4 ThemeRed +hi! link markdownH5 ThemeRed +hi! link markdownH6 ThemeRed + +hi! link markdownCode ThemeYellow +hi! link markdownCodeBlock ThemeYellow +hi! link markdownCodeDelimiter ThemeYellow + +hi! link markdownBlockquote ThemeGrey +hi! link markdownListMarker ThemeBlue +hi! link markdownOrderedListMarker ThemeBlue +hi! link markdownRule ThemeGrey +hi! link markdownHeadingRule ThemeGrey + +hi! link markdownUrlDelimiter ThemeFg3 +hi! link markdownLinkDelimiter ThemeFg3 +hi! link markdownLinkTextDelimiter ThemeFg3 +hi! link markdownHeadingDelimiter ThemeOrange +hi! link markdownUrlTitleDelimiter ThemeGreen + +hi! link markdownLink ThemeGreen +hi! link markdownWikiLink ThemeViolet +hi! link markdownUrl ThemeOrange +hi! link markdownInlineUrl ThemeOrange + +hi! link markdownLinkText ThemeViolet +hi! link markdownIdDeclaration markdownLinkText + +"call s:HL('markdownItalic', s:fg3, s:none, s:italic) +"call s:HL('markdownLinkText', s:gray, s:none, s:underline) + + +" Remove functions +delf hi + +" Remove color variables +unlet s:gui00 s:gui01 s:gui02 s:gui03 s:gui04 s:gui05 s:gui06 s:gui07 s:gui08 s:gui09 s:gui0A s:gui0B s:gui0C s:gui0D s:gui0E s:gui0F s:guibg +unlet s:cterm00 s:cterm01 s:cterm02 s:cterm03 s:cterm04 s:cterm05 s:cterm06 s:cterm07 s:cterm08 s:cterm09 s:cterm0A s:cterm0B s:cterm0C s:cterm0D s:cterm0E s:cterm0F s:ctermbg diff --git a/apps/nvim/hard-grassland-monobiome-light.vim b/apps/nvim/hard-grassland-monobiome-light.vim new file mode 100644 index 0000000..5df9a68 --- /dev/null +++ b/apps/nvim/hard-grassland-monobiome-light.vim @@ -0,0 +1,882 @@ +" vi:syntax=vim +" +" Top-level remarks: +" +" - `hi` sets highlight colors for syntax groups, allowing one to specify fg and bg colors +" for GUI and terminal Vim. +" - `link` allows for linking one syntax group to another, reusing the same color +" settings. Language-specific groups can then point to one of the base color highlight +" groups, for example, without needing to repeat the raw color values. + +" GUI color definitions +let s:gui00 = "#d7e0dd" +let g:base16_gui00 = "#d7e0dd" +let s:gui01 = "#c7d0cc" +let g:base16_gui01 = "#c7d0cc" +let s:gui02 = "#b7c0bc" +let g:base16_gui02 = "#b7c0bc" +let s:gui03 = "#a8b0ad" +let g:base16_gui03 = "#a8b0ad" +let s:gui04 = "#424a47" +let g:base16_gui04 = "#424a47" +let s:gui05 = "#353c3a" +let g:base16_gui05 = "#353c3a" +let s:gui06 = "#29302d" +let g:base16_gui06 = "#29302d" +let s:gui07 = "#1d2321" +let g:base16_gui07 = "#1d2321" +let s:gui08 = "#ca2e23" +let g:base16_gui08 = "#ca2e23" +let s:gui09 = "#a45e00" +let g:base16_gui09 = "#a45e00" +let s:gui0A = "#79743d" +let g:base16_gui0A = "#79743d" +let s:gui0B = "#42824e" +let g:base16_gui0B = "#42824e" +let s:gui0C = "#42824e" +let g:base16_gui0C = "#42824e" +let s:gui0D = "#456fbe" +let g:base16_gui0D = "#456fbe" +let s:gui0E = "#456fbe" +let g:base16_gui0E = "#456fbe" +let s:gui0F = "#ca2e23" +let g:base16_gui0F = "#ca2e23" + +let s:grey = "#6c7470" + +" Terminal color definitions +let s:cterm00 = "00" +let g:base16_cterm00 = "00" +let s:cterm03 = "08" +let g:base16_cterm03 = "08" +let s:cterm05 = "07" +let g:base16_cterm05 = "07" +let s:cterm07 = "15" +let g:base16_cterm07 = "15" +let s:cterm08 = "01" +let g:base16_cterm08 = "01" +let s:cterm0A = "03" +let g:base16_cterm0A = "03" +let s:cterm0B = "02" +let g:base16_cterm0B = "02" +let s:cterm0C = "06" +let g:base16_cterm0C = "06" +let s:cterm0D = "04" +let g:base16_cterm0D = "04" +let s:cterm0E = "05" +let g:base16_cterm0E = "05" + +let s:cterm01 = "10" +let g:base16_cterm01 = "10" +let s:cterm02 = "11" +let g:base16_cterm02 = "11" +let s:cterm04 = "12" +let g:base16_cterm04 = "12" +let s:cterm06 = "13" +let g:base16_cterm06 = "13" +let s:cterm09 = "09" +let g:base16_cterm09 = "09" +let s:cterm0F = "14" +let g:base16_cterm0F = "14" + +" Neovim terminal colours +if has("nvim") + let g:terminal_color_0 = "#d7e0dd" + let g:terminal_color_1 = "#ca2e23" + let g:terminal_color_2 = "#42824e" + let g:terminal_color_3 = "#79743d" + let g:terminal_color_4 = "#456fbe" + let g:terminal_color_5 = "#456fbe" + let g:terminal_color_6 = "#42824e" + let g:terminal_color_7 = "#353c3a" + let g:terminal_color_8 = "#a8b0ad" + let g:terminal_color_9 = "#ca2e23" + let g:terminal_color_10 = "#42824e" + let g:terminal_color_11 = "#79743d" + let g:terminal_color_12 = "#456fbe" + let g:terminal_color_13 = "#456fbe" + let g:terminal_color_14 = "#42824e" + let g:terminal_color_15 = "#1d2321" + let g:terminal_color_background = g:terminal_color_0 + let g:terminal_color_foreground = g:terminal_color_5 + + if &background == "light" + let g:terminal_color_background = g:terminal_color_7 + let g:terminal_color_foreground = g:terminal_color_2 + endif + +elseif has("terminal") + let g:terminal_ansi_colors = [ + \ "#d7e0dd", + \ "#ca2e23", + \ "#42824e", + \ "#79743d", + \ "#456fbe", + \ "#456fbe", + \ "#42824e", + \ "#353c3a", + \ "#a8b0ad", + \ "#ca2e23", + \ "#42824e", + \ "#79743d", + \ "#456fbe", + \ "#456fbe", + \ "#42824e", + \ "#1d2321", + \ ] +endif + +let s:guibg = s:gui00 +let s:ctermbg = s:cterm00 + +" Theme setup +hi clear +syntax reset +let g:colors_name = "active" + +" Highlighting function +" Optional variables are attributes and guisp +function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) + " For a given syntax group, sets the GUI and terminal foreground and backgrounds + " Optional parameters are interpreted as `attr` and `guisp`, the first of which appears + " to be a modifier for the group (e.g., bold, italic), and `guisp` appears to be + " 'special' colors used for underlines in the GUI. + let l:attr = get(a:, 1, "") + let l:guisp = get(a:, 2, "") + + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + + if a:guifg != "" + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=" . a:guifg + endif + endif + + if a:guibg != "" + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=" . a:guibg + endif + endif + + if a:ctermfg != "" + exec "hi " . a:group . " ctermfg=" . a:ctermfg + endif + + if a:ctermbg != "" + exec "hi " . a:group . " ctermbg=" . a:ctermbg + endif + + if l:attr != "" + exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr + endif + + if l:guisp != "" + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=" . l:guisp + endif + endif +endfunction + + +fun hi(group, guifg, guibg, ctermfg, ctermbg, attr, guisp) + call g:Base16hi(a:group, a:guifg, a:guibg, a:ctermfg, a:ctermbg, a:attr, a:guisp) +endfun + + +" color groups for interpretability +call hi("ThemeBg0", s:gui00, "", s:cterm00, "", "", "") +call hi("ThemeBg1", s:gui01, "", s:cterm01, "", "", "") +call hi("ThemeBg2", s:gui02, "", s:cterm02, "", "", "") +call hi("ThemeBg3", s:gui03, "", s:cterm03, "", "", "") +call hi("ThemeFg3", s:gui04, "", s:cterm04, "", "", "") +call hi("ThemeFg2", s:gui05, "", s:cterm05, "", "", "") +call hi("ThemeFg1", s:gui06, "", s:cterm06, "", "", "") +call hi("ThemeFg0", s:gui07, "", s:cterm07, "", "", "") +" +call hi("ThemeRed", s:gui08, "", s:cterm08, "", "", "") +call hi("ThemeOrange", s:gui09, "", s:cterm09, "", "", "") +call hi("ThemeYellow", s:gui0A, "", s:cterm0A, "", "", "") +call hi("ThemeGreen", s:gui0B, "", s:cterm0B, "", "", "") +call hi("ThemeCyan", s:gui0C, "", s:cterm0C, "", "", "") +call hi("ThemeBlue", s:gui0D, "", s:cterm0D, "", "", "") +call hi("ThemeViolet", s:gui0E, "", s:cterm0E, "", "", "") +call hi("ThemeMagenta", s:gui0F, "", s:cterm0F, "", "", "") + +call hi("ThemeRedBold", s:gui08, "", s:cterm08, "", "bold", "") +call hi("ThemeOrangeBold", s:gui09, "", s:cterm09, "", "bold", "") +call hi("ThemeYellowBold", s:gui0A, "", s:cterm0A, "", "bold", "") +call hi("ThemeGreenBold", s:gui0B, "", s:cterm0B, "", "bold", "") +call hi("ThemeCyanBold", s:gui0C, "", s:cterm0C, "", "bold", "") +call hi("ThemeBlueBold", s:gui0D, "", s:cterm0D, "", "bold", "") +call hi("ThemeVioletBold", s:gui0E, "", s:cterm0E, "", "bold", "") +call hi("ThemeMagentaBold", s:gui0F, "", s:cterm0F, "", "bold", "") + +call hi("ThemeRedItalic", s:gui08, "", s:cterm08, "", "italic", "") +call hi("ThemeOrangeItalic", s:gui09, "", s:cterm09, "", "italic", "") +call hi("ThemeYellowItalic", s:gui0A, "", s:cterm0A, "", "italic", "") +call hi("ThemeGreenItalic", s:gui0B, "", s:cterm0B, "", "italic", "") +call hi("ThemeCyanItalic", s:gui0C, "", s:cterm0C, "", "italic", "") +call hi("ThemeBlueItalic", s:gui0D, "", s:cterm0D, "", "italic", "") +call hi("ThemeVioletItalic", s:gui0E, "", s:cterm0E, "", "italic", "") +call hi("ThemeMagentaItalic", s:gui0F, "", s:cterm0F, "", "italic", "") + +call hi("ThemeGrey", s:grey, "", s:cterm03, "", "", "") +call hi("ThemeGreyItalic", s:grey, "", s:cterm03, "", "italic", "") + + +" Vim editor colors +call hi("Normal", s:gui05, s:guibg, s:cterm05, s:ctermbg, "", "") +call hi("Bold", "", "", "", "", "bold", "") +call hi("Debug", s:gui08, "", s:cterm08, "", "", "") +call hi("Directory", s:gui0D, "", s:cterm0D, "", "", "") +call hi("Error", s:guibg, s:gui08, s:ctermbg, s:cterm08, "", "") +call hi("ErrorMsg", s:gui08, s:guibg, s:cterm08, s:ctermbg, "", "") +call hi("Exception", s:gui08, "", s:cterm08, "", "", "") +call hi("FoldColumn", s:gui03, s:guibg, s:cterm03, s:ctermbg, "", "") +call hi("Folded", s:gui02, s:guibg, s:cterm02, s:ctermbg, "", "") +call hi("IncSearch", s:gui01, s:gui09, s:cterm01, s:cterm09, "none", "") +call hi("Italic", "", "", "", "", "italic", "") +call hi("Macro", s:gui0C, "", s:cterm0C, "", "", "") +call hi("MatchParen", "", s:gui03, "", s:cterm03, "", "") +call hi("ModeMsg", s:gui0B, "", s:cterm0B, "", "", "") +call hi("MoreMsg", s:gui0B, "", s:cterm0B, "", "", "") +call hi("Question", s:gui0D, "", s:cterm0D, "", "", "") +call hi("Search", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "", "") +call hi("Substitute", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "none", "") +call hi("SpecialKey", s:gui03, "", s:cterm03, "", "", "") +call hi("TooLong", s:gui08, "", s:cterm08, "", "", "") +call hi("Underlined", "", "", "", "", "underline", "fg") +call hi("Visual", "", s:gui02, "", s:cterm02, "", "") +call hi("VisualNOS", s:gui08, "", s:cterm08, "", "", "") +call hi("WarningMsg", s:gui08, "", s:cterm08, "", "", "") +call hi("WildMenu", s:guibg, s:gui06, s:ctermbg, s:cterm05, "", "") +call hi("Title", s:gui0D, "", s:cterm0D, "", "none", "") +call hi("Conceal", s:gui0D, s:guibg, s:cterm0D, s:ctermbg, "", "") +call hi("Cursor", s:gui05, s:guibg, "", "", "inverse", "") +call hi("NonText", s:gui03, "", s:cterm03, "", "", "") +call hi("Whitespace", s:gui03, "", s:cterm03, "", "", "") +call hi("LineNr", s:gui03, s:guibg, s:cterm03, s:ctermbg, "", "") +call hi("SignColumn", s:gui03, s:guibg, s:cterm03, s:ctermbg, "", "") +call hi("StatusLine", s:gui07, s:gui01, s:cterm07, s:cterm01, "none", "") +call hi("StatusLineNC", s:gui06, s:gui01, s:cterm05, s:cterm01, "none", "") +call hi("VertSplit", s:gui01, s:guibg, s:cterm01, s:ctermbg, "none", "") +call hi("ColorColumn", "", s:gui01, "", s:cterm01, "none", "") +call hi("CursorColumn", "", s:gui01, "", s:cterm01, "none", "") +call hi("CursorLine", "", s:gui01, "", s:cterm01, "none", "") +call hi("CursorLineNr", s:gui04, s:gui01, s:cterm04, s:cterm01, "bold", "") +call hi("QuickFixLine", "", s:gui01, "", s:cterm01, "none", "") +call hi("PMenu", s:gui06, s:gui01, s:cterm06, s:cterm01, "none", "") +call hi("PMenuSel", s:gui06, s:gui02, s:cterm06, s:cterm02, "", "") +call hi("PMenuSbar", "", s:gui03, "", s:cterm03, "", "") +call hi("PMenuThumb", "", s:gui04, "", s:cterm04, "", "") +call hi("TabLine", s:gui03, s:gui01, s:cterm03, s:cterm01, "none", "") +call hi("TabLineFill", s:gui03, s:gui01, s:cterm03, s:cterm01, "none", "") +call hi("TabLineSel", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "none", "") + +" Standard syntax +hi! link Boolean ThemeOrange +hi! link Character ThemeRed + +"call hi("Comment", s:gui03, "", s:cterm03, "", "italic", "") +hi! link Comment ThemeGreyItalic + +hi! link Conditional ThemeRed +hi! link Constant ThemeOrange +call hi("Define", s:gui0E, "", s:cterm0E, "", "none", "") +hi! link Delimiter ThemeFg1 + +if has("patch-8.0.1038") + call hi("Deprecated", "", "", "", "", "strikethrough", "") +endif + +hi! link Float ThemeOrange +hi! link Function ThemeBlue +call hi("Identifier", s:gui06, "", s:cterm05, "", "none", "") +hi! link Include ThemeBlue +hi! link Constant ThemeOrange +call hi("Keyword", s:gui0E, "", s:cterm0E, "", "none", "") +hi! link Label ThemeOrange +hi! link Number ThemeOrange +hi! link Operator ThemeYellow +hi! link PreProc ThemeOrange +hi! link Repeat ThemeViolet +hi! link Special ThemeYellow +hi! link SpecialChar ThemeMagenta +hi! link Statement ThemeRed +hi! link StorageClass ThemeOrange +hi! link String ThemeGreen +hi! link Structure ThemeOrange +hi! link Tag ThemeOrange + +call hi("Todo", s:gui08, s:guibg, s:cterm08, s:ctermbg, "italic", "") +call hi("Type", s:gui0A, "", s:cterm0A, "", "none", "") + +hi! link Typedef ThemeOrange + + +" Treesitter +if has("nvim-0.8.0") + call hi("@field", s:gui08, "", s:cterm08, "", "", "") + call hi("@property", s:gui08, "", s:cterm08, "", "", "") + call hi("@namespace", s:gui06, "", s:cterm05, "", "italic", "") + call hi("@variable.builtin", s:gui06, "", s:cterm05, "", "italic", "") + call hi("@text.reference", s:gui08, "", s:cterm08, "", "", "") + call hi("@text.uri", s:gui08, "", s:cterm08, "", "italic", "") + + " Annotations & Attributes + call hi("@annotation", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@attribute", s:gui0D, "", s:cterm0D, "", "", "") + + " Booleans, Characters & Comments + call hi("@boolean", s:gui09, "", s:cterm09, "", "", "") + call hi("@character", s:gui08, "", s:cterm08, "", "", "") + call hi("@character.special", s:gui0F, "", s:cterm0F, "", "", "") + call hi("@comment", s:gui03, "", s:cterm03, "", "", "") + + " Conditionals, Constants & Debugging + call hi("@keyword.conditional", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@constant", s:gui09, "", s:cterm09, "", "", "") + call hi("@constant.builtin", s:gui09, "", s:cterm09, "", "", "") + call hi("@constant.macro", s:gui08, "", s:cterm08, "", "", "") + call hi("@keyword.debug", s:gui08, "", s:cterm08, "", "", "") + + " Directives & Exceptions + call hi("@keyword.directive.define", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@keyword.exception", s:gui0E, "", s:cterm0E, "", "", "") + + " Floats & Functions + call hi("@number.float", s:gui09, "", s:cterm09, "", "", "") + call hi("@function", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@function.builtin", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@function.call", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@function.macro", s:gui08, "", s:cterm08, "", "", "") + + " Imports, Operators & Returns + call hi("@keyword.import", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@keyword.coroutine", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@keyword.operator", s:gui06, "", s:cterm05, "", "", "") + call hi("@keyword.return", s:gui0E, "", s:cterm0E, "", "", "") + + " Methods & Namespaces + call hi("@function.method", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@function.method.call", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@namespace.builtin", s:gui0E, "", s:cterm0E, "", "", "") + + " Numbers & Directives + call hi("@none", s:gui06, "", s:cterm05, "", "", "") + call hi("@number", s:gui09, "", s:cterm09, "", "", "") + call hi("@keyword.directive", s:gui0E, "", s:cterm0E, "", "", "") + + " Repeats, Storage & Strings + call hi("@keyword.repeat", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@keyword.storage", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@string", s:gui0B, "", s:cterm0B, "", "", "") + + " Tags & Markup + call hi("@markup.link.label", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.link.label.symbol", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@tag", s:gui08, "", s:cterm08, "", "", "") + call hi("@tag.attribute", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@tag.delimiter", s:gui0F, "", s:cterm0F, "", "", "") + + " More Markup + call hi("@markup", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.environment", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.environment.name", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.raw", s:gui09, "", s:cterm09, "", "", "") + call hi("@markup.math", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.strong", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.emphasis", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.strikethrough", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.underline", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.heading", s:gui0D, "", s:cterm0D, "", "", "") + + " Comments & Types + call hi("@comment.note", s:gui03, "", s:cterm03, "", "", "") + call hi("@comment.error", s:gui08, "", s:cterm08, "", "", "") + call hi("@comment.hint", s:gui0B, "", s:cterm0B, "", "", "") + call hi("@comment.info", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@comment.warning", s:gui09, "", s:cterm09, "", "", "") + call hi("@comment.todo", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.link.url", s:gui09, "", s:cterm09, "", "", "") + call hi("@type", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@type.definition", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@type.qualifier", s:gui0E, "", s:cterm0E, "", "", "") +endif + +" Standard highlights to be used by plugins +if has("patch-8.0.1038") + call hi("Deprecated", "", "", "", "", "strikethrough", "") +endif +call hi("SearchMatch", s:gui0C, "", s:cterm0C, "", "", "") + +call hi("GitAddSign", s:gui0B, "", s:cterm0B, "", "", "") +call hi("GitChangeSign", s:gui04, "", s:cterm04, "", "", "") +call hi("GitDeleteSign", s:gui08, "", s:cterm08, "", "", "") +call hi("GitChangeDeleteSign", s:gui04, "", s:cterm04, "", "", "") + +call hi("ErrorSign", s:gui08, "", s:cterm08, "", "", "") +call hi("WarningSign", s:gui09, "", s:cterm09, "", "", "") +call hi("InfoSign", s:gui0D, "", s:cterm0D, "", "", "") +call hi("HintSign", s:gui0C, "", s:cterm0C, "", "", "") +call hi("OkSign", s:gui0B, "", s:cterm0B, "", "", "") + +call hi("ErrorFloat", s:gui08, s:gui01, s:cterm08, s:cterm01, "", "") +call hi("WarningFloat", s:gui09, s:gui01, s:cterm09, s:cterm01, "", "") +call hi("InfoFloat", s:gui0D, s:gui01, s:cterm0D, s:cterm01, "", "") +call hi("HintFloat", s:gui0C, s:gui01, s:cterm0C, s:cterm01, "", "") +call hi("OkFloat", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "") + +call hi("ErrorHighlight", "", "", s:ctermbg, s:cterm08, "underline", s:gui08) +call hi("WarningHighlight", "", "", s:ctermbg, s:cterm09, "underline", s:gui09) +call hi("InfoHighlight", "", "", s:ctermbg, s:cterm0D, "underline", s:gui0D) +call hi("HintHighlight", "", "", s:ctermbg, s:cterm0C, "underline", s:gui0C) +call hi("OkHighlight", "", "", s:ctermbg, s:cterm0B, "underline", s:gui0B) + +call hi("SpellBad", "", "", s:ctermbg, s:cterm08, "undercurl", s:gui08) +call hi("SpellLocal", "", "", s:ctermbg, s:cterm0C, "undercurl", s:gui0C) +call hi("SpellCap", "", "", s:ctermbg, s:cterm0D, "undercurl", s:gui0D) +call hi("SpellRare", "", "", s:ctermbg, s:cterm0E, "undercurl", s:gui0E) + +call hi("ReferenceText", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "", "") +call hi("ReferenceRead", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "", "") +call hi("ReferenceWrite", s:gui01, s:gui08, s:cterm01, s:cterm08, "", "") + +" C +call hi("cOperator", s:gui0C, "", s:cterm0C, "", "", "") +call hi("cPreCondit", s:gui0E, "", s:cterm0E, "", "", "") + +" C# +call hi("csClass", s:gui0A, "", s:cterm0A, "", "", "") +call hi("csAttribute", s:gui0A, "", s:cterm0A, "", "", "") +call hi("csModifier", s:gui0E, "", s:cterm0E, "", "", "") +call hi("csType", s:gui08, "", s:cterm08, "", "", "") +call hi("csUnspecifiedStatement", s:gui0D, "", s:cterm0D, "", "", "") +call hi("csContextualStatement", s:gui0E, "", s:cterm0E, "", "", "") +call hi("csNewDecleration", s:gui08, "", s:cterm08, "", "", "") + +" Clap +hi! link ClapInput ColorColumn +hi! link ClapSpinner ColorColumn +hi! link ClapDisplay Default +hi! link ClapPreview ColorColumn +hi! link ClapCurrentSelection CursorLine +hi! link ClapNoMatchesFound ErrorFloat + +" Coc +hi! link CocErrorSign ErrorSign +hi! link CocWarningSign WarningSign +hi! link CocInfoSign InfoSign +hi! link CocHintSign HintSign + +hi! link CocErrorFloat ErrorFloat +hi! link CocWarningFloat WarningFloat +hi! link CocInfoFloat InfoFloat +hi! link CocHintFloat HintFloat + +hi! link CocErrorHighlight ErrorHighlight +hi! link CocWarningHighlight WarningHighlight +hi! link CocInfoHighlight InfoHighlight +hi! link CocHintHighlight HintHighlight + +hi! link CocSem_angle Keyword +hi! link CocSem_annotation Keyword +hi! link CocSem_attribute Type +hi! link CocSem_bitwise Keyword +hi! link CocSem_boolean Boolean +hi! link CocSem_brace Normal +hi! link CocSem_bracket Normal +hi! link CocSem_builtinAttribute Type +hi! link CocSem_builtinType Type +hi! link CocSem_character String +hi! link CocSem_class Structure +hi! link CocSem_colon Normal +hi! link CocSem_comma Normal +hi! link CocSem_comment Comment +hi! link CocSem_comparison Keyword +hi! link CocSem_concept Keyword +hi! link CocSem_constParameter Identifier +hi! link CocSem_dependent Keyword +hi! link CocSem_dot Keyword +hi! link CocSem_enum Structure +hi! link CocSem_enumMember Constant +hi! link CocSem_escapeSequence Type +hi! link CocSem_event Identifier +hi! link CocSem_formatSpecifier Type +hi! link CocSem_function Function +hi! link CocSem_interface Type +hi! link CocSem_keyword Keyword +hi! link CocSem_label Keyword +hi! link CocSem_logical Keyword +hi! link CocSem_macro Macro +hi! link CocSem_method Function +hi! link CocSem_modifier Keyword +hi! link CocSem_namespace Identifier +hi! link CocSem_number Number +hi! link CocSem_operator Operator +hi! link CocSem_parameter Identifier +hi! link CocSem_parenthesis Normal +hi! link CocSem_property Identifier +hi! link CocSem_punctuation Keyword +hi! link CocSem_regexp Type +hi! link CocSem_selfKeyword Constant +hi! link CocSem_semicolon Normal +hi! link CocSem_string String +hi! link CocSem_struct Structure +hi! link CocSem_type Type +hi! link CocSem_typeAlias Type +hi! link CocSem_typeParameter Type +hi! link CocSem_unknown Normal +hi! link CocSem_variable Identifier + +call hi("CocHighlightRead", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "") +call hi("CocHighlightText", s:gui0A, s:gui01, s:cterm0A, s:cterm01, "", "") +call hi("CocHighlightWrite", s:gui08, s:gui01, s:cterm08, s:cterm01, "", "") +call hi("CocListMode", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "bold", "") +call hi("CocListPath", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "", "") +call hi("CocSessionsName", s:gui06, "", s:cterm05, "", "", "") + +" CSS +hi! link cssBraces ThemeBlue +hi! link cssFunctionName ThemeYellow +hi! link cssIdentifier ThemeOrange +hi! link cssClassName ThemeGreen +hi! link cssColor ThemeBlue +hi! link cssSelectorOp ThemeBlue +hi! link cssSelectorOp2 ThemeBlue +hi! link cssImportant ThemeGreen +hi! link cssVendor ThemeFg1 + +hi! link cssTextProp ThemeCyan +hi! link cssAnimationProp ThemeCyan +hi! link cssUIProp ThemeYellow +hi! link cssTransformProp ThemeCyan +hi! link cssTransitionProp ThemeCyan +hi! link cssPrintProp ThemeCyan +hi! link cssPositioningProp ThemeYellow +hi! link cssBoxProp ThemeCyan +hi! link cssFontDescriptorProp ThemeCyan +hi! link cssFlexibleBoxProp ThemeCyan +hi! link cssBorderOutlineProp ThemeCyan +hi! link cssBackgroundProp ThemeCyan +hi! link cssMarginProp ThemeCyan +hi! link cssListProp ThemeCyan +hi! link cssTableProp ThemeCyan +hi! link cssFontProp ThemeCyan +hi! link cssPaddingProp ThemeCyan +hi! link cssDimensionProp ThemeCyan +hi! link cssRenderProp ThemeCyan +hi! link cssColorProp ThemeCyan +hi! link cssGeneratedContentProp ThemeCyan + + +" CMP +hi! link CmpItemAbbrDeprecated Deprecated +hi! link CmpItemAbbrMatch SearchMatch +hi! link CmpItemAbbrMatchFuzzy SearchMatch +hi! link CmpItemKindClass Type +hi! link CmpItemKindColor Keyword +hi! link CmpItemKindConstant Constant +hi! link CmpItemKindConstructor Special +hi! link CmpItemKindEnum Type +hi! link CmpItemKindEnumMember Constant +hi! link CmpItemKindEvent Identifier +hi! link CmpItemKindField Character +hi! link CmpItemKindFile Directory +hi! link CmpItemKindFolder Directory +hi! link CmpItemKindFunction Function +hi! link CmpItemKindInterface Type +hi! link CmpItemKindKeyword Keyword +hi! link CmpItemKindMethod Function +hi! link CmpItemKindModule Namespace +hi! link CmpItemKindOperator Operator +hi! link CmpItemKindProperty Identifier +hi! link CmpItemKindReference Character +hi! link CmpItemKindSnippet String +hi! link CmpItemKindStruct Type +hi! link CmpItemKindText Text +hi! link CmpItemKindUnit Namespace +hi! link CmpItemKindValue Comment +hi! link CmpItemKindVariable Identifier + +if has("nvim-0.8.0") + hi! link CmpItemKindField @field + hi! link CmpItemKindProperty @property +endif + +" Diff +call hi("DiffAdd", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "") +call hi("DiffChange", s:gui06, s:gui01, s:cterm05, s:cterm01, "", "") +call hi("DiffDelete", s:gui02, s:guibg, s:cterm02, s:ctermbg, "", "") +call hi("DiffText", s:gui0D, s:gui01, s:cterm0D, s:cterm01, "", "") +call hi("DiffAdded", s:gui0B, s:guibg, s:cterm0B, s:ctermbg, "", "") +call hi("DiffFile", s:gui08, s:guibg, s:cterm08, s:ctermbg, "", "") +call hi("DiffNewFile", s:gui0B, s:guibg, s:cterm0B, s:ctermbg, "", "") +call hi("DiffLine", s:gui0D, s:guibg, s:cterm0D, s:ctermbg, "", "") +call hi("DiffRemoved", s:gui08, s:guibg, s:cterm08, s:ctermbg, "", "") + +" Git +call hi("gitcommitOverflow", s:gui08, "", s:cterm08, "", "", "") +call hi("gitcommitSummary", s:gui0B, "", s:cterm0B, "", "", "") +call hi("gitcommitComment", s:gui03, "", s:cterm03, "", "", "") +call hi("gitcommitUntracked", s:gui03, "", s:cterm03, "", "", "") +call hi("gitcommitDiscarded", s:gui03, "", s:cterm03, "", "", "") +call hi("gitcommitSelected", s:gui03, "", s:cterm03, "", "", "") +call hi("gitcommitHeader", s:gui0E, "", s:cterm0E, "", "", "") +call hi("gitcommitSelectedType", s:gui0D, "", s:cterm0D, "", "", "") +call hi("gitcommitUnmergedType", s:gui0D, "", s:cterm0D, "", "", "") +call hi("gitcommitDiscardedType", s:gui0D, "", s:cterm0D, "", "", "") +call hi("gitcommitBranch", s:gui09, "", s:cterm09, "", "bold", "") +call hi("gitcommitUntrackedFile", s:gui0A, "", s:cterm0A, "", "", "") +call hi("gitcommitUnmergedFile", s:gui08, "", s:cterm08, "", "bold", "") +call hi("gitcommitDiscardedFile", s:gui08, "", s:cterm08, "", "bold", "") +call hi("gitcommitSelectedFile", s:gui0B, "", s:cterm0B, "", "bold", "") + +" GitGutter +hi! link GitGutterAdd GitAddSign +hi! link GitGutterChange GitChangeSign +hi! link GitGutterDelete GitDeleteSign +hi! link GitGutterChangeDelete GitChangeDeleteSign + +" indent-blankline (nvim) +if has("nvim") + call hi("@ibl.indent.char.1",s:gui01, "", s:cterm01, "", "", "") +endif + +" HTML +call hi("htmlBold", s:gui07, "", s:cterm0A, "", "bold", "") +call hi("htmlItalic", s:gui06, "", s:cterm0E, "", "italic", "") +call hi("htmlEndTag", s:gui06, "", s:cterm05, "", "", "") +call hi("htmlTag", s:gui06, "", s:cterm05, "", "", "") + +" JavaScript +call hi("javaScript", s:gui06, "", s:cterm05, "", "", "") +call hi("javaScriptBraces", s:gui06, "", s:cterm05, "", "", "") +call hi("javaScriptNumber", s:gui09, "", s:cterm09, "", "", "") +" pangloss/vim-javascript +call hi("jsOperator", s:gui0D, "", s:cterm0D, "", "", "") +call hi("jsStatement", s:gui0E, "", s:cterm0E, "", "", "") +call hi("jsReturn", s:gui0E, "", s:cterm0E, "", "", "") +call hi("jsThis", s:gui08, "", s:cterm08, "", "", "") +call hi("jsClassDefinition", s:gui0A, "", s:cterm0A, "", "", "") +call hi("jsFunction", s:gui0E, "", s:cterm0E, "", "", "") +call hi("jsFuncName", s:gui0D, "", s:cterm0D, "", "", "") +call hi("jsFuncCall", s:gui0D, "", s:cterm0D, "", "", "") +call hi("jsClassFuncName", s:gui0D, "", s:cterm0D, "", "", "") +call hi("jsClassMethodType", s:gui0E, "", s:cterm0E, "", "", "") +call hi("jsRegexpString", s:gui0C, "", s:cterm0C, "", "", "") +call hi("jsGlobalObjects", s:gui0A, "", s:cterm0A, "", "", "") +call hi("jsGlobalNodeObjects", s:gui0A, "", s:cterm0A, "", "", "") +call hi("jsExceptions", s:gui0A, "", s:cterm0A, "", "", "") +call hi("jsBuiltins", s:gui0A, "", s:cterm0A, "", "", "") + +" Mail +call hi("mailQuoted1", s:gui0A, "", s:cterm0A, "", "", "") +call hi("mailQuoted2", s:gui0B, "", s:cterm0B, "", "", "") +call hi("mailQuoted3", s:gui0E, "", s:cterm0E, "", "", "") +call hi("mailQuoted4", s:gui0C, "", s:cterm0C, "", "", "") +call hi("mailQuoted5", s:gui0D, "", s:cterm0D, "", "", "") +call hi("mailQuoted6", s:gui0A, "", s:cterm0A, "", "", "") +call hi("mailURL", s:gui0D, "", s:cterm0D, "", "", "") +call hi("mailEmail", s:gui0D, "", s:cterm0D, "", "", "") + +" Markdown +call hi("markdownCode", s:gui0B, "", s:cterm0B, "", "", "") +call hi("markdownError", s:gui06, s:guibg, s:cterm05, s:ctermbg, "", "") +call hi("markdownCodeBlock", s:gui0B, "", s:cterm0B, "", "", "") +call hi("markdownHeadingDelimiter", s:gui0D, "", s:cterm0D, "", "", "") + +" Matchup +call hi("MatchWord", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "underline", "") + +" NERDTree +call hi("NERDTreeDirSlash", s:gui0D, "", s:cterm0D, "", "", "") +call hi("NERDTreeExecFile", s:gui06, "", s:cterm05, "", "", "") + +" Netrw +hi! link netrwDir ThemeCyan +hi! link netrwClassify ThemeCyan +hi! link netrwLink ThemeBg3 +hi! link netrwSymLink ThemeFg1 +hi! link netrwExe ThemeYellow +hi! link netrwComment ThemeBg3 +hi! link netrwList ThemeBlue +hi! link netrwHelpCmd ThemeCyan +hi! link netrwCmdSep ThemeFg3 +hi! link netrwVersion ThemeGreen + +" PHP +call hi("phpMemberSelector", s:gui06, "", s:cterm05, "", "", "") +call hi("phpComparison", s:gui06, "", s:cterm05, "", "", "") +call hi("phpParent", s:gui06, "", s:cterm05, "", "", "") +call hi("phpMethodsVar", s:gui0C, "", s:cterm0C, "", "", "") + +" Python +"call hi("pythonOperator", s:gui0E, "", s:cterm0E, "", "", "") +"call hi("pythonRepeat", s:gui0E, "", s:cterm0E, "", "", "") +"call hi("pythonInclude", s:gui0E, "", s:cterm0E, "", "", "") +"call hi("pythonStatement", s:gui0E, "", s:cterm0E, "", "", "") + +" hi! link pythonBuiltin ThemeCyan +" hi! link pythonBuiltinObj ThemeCyan +" hi! link pythonBuiltinFunc ThemeGreen +" hi! link pythonFunction Function +hi! link pythonDecorator ThemeYellow +hi! link pythonDecoratorName ThemeYellow +" hi! link pythonTripleQuotes ThemeGreenItalic +" hi! link pythonInclude ThemeBlue +" hi! link pythonImport ThemeBlue +" hi! link pythonRun ThemeBlue +" hi! link pythonCoding ThemeBlue +" hi! link pythonOperator ThemeRed +" hi! link pythonException ThemeRed +" hi! link pythonExceptions ThemeYellow +" hi! link pythonBoolean ThemeYellow +" hi! link pythonDot ThemeFg3 +" hi! link pythonConditional ThemeCyan +" hi! link pythonRepeat ThemeRed +" hi! link pythonDottedName ThemeGreen + + +" Ruby +call hi("rubyAttribute", s:gui0D, "", s:cterm0D, "", "", "") +call hi("rubyConstant", s:gui0A, "", s:cterm0A, "", "", "") +call hi("rubyInterpolationDelimiter", s:gui0F, "", s:cterm0F, "", "", "") +call hi("rubyRegexp", s:gui0C, "", s:cterm0C, "", "", "") +call hi("rubySymbol", s:gui0B, "", s:cterm0B, "", "", "") +call hi("rubyStringDelimiter", s:gui0B, "", s:cterm0B, "", "", "") + +" SASS +call hi("sassidChar", s:gui08, "", s:cterm08, "", "", "") +call hi("sassClassChar", s:gui09, "", s:cterm09, "", "", "") +call hi("sassInclude", s:gui0E, "", s:cterm0E, "", "", "") +call hi("sassMixing", s:gui0E, "", s:cterm0E, "", "", "") +call hi("sassMixinName", s:gui0D, "", s:cterm0D, "", "", "") + +" Signify +hi! link SignifySignAdd GitAddSign +hi! link SignifySignChange GitChangeSign +hi! link SignifySignDelete GitDeleteSign + +" Startify +call hi("StartifyBracket", s:gui03, "", s:cterm03, "", "", "") +call hi("StartifyFile", s:gui07, "", s:cterm07, "", "", "") +call hi("StartifyFooter", s:gui03, "", s:cterm03, "", "", "") +call hi("StartifyHeader", s:gui0B, "", s:cterm0B, "", "", "") +call hi("StartifyNumber", s:gui09, "", s:cterm09, "", "", "") +call hi("StartifyPath", s:gui03, "", s:cterm03, "", "", "") +call hi("StartifySection", s:gui0E, "", s:cterm0E, "", "", "") +call hi("StartifySelect", s:gui0C, "", s:cterm0C, "", "", "") +call hi("StartifySlash", s:gui03, "", s:cterm03, "", "", "") +call hi("StartifySpecial", s:gui03, "", s:cterm03, "", "", "") + +" LSP +if has("nvim") + hi! link DiagnosticError ErrorSign + hi! link DiagnosticWarn WarningSign + hi! link DiagnosticInfo InfoSign + hi! link DiagnosticHint HintSign + hi! link DiagnosticOk OkSign + + hi! link DiagnosticFloatingError ErrorFloat + hi! link DiagnosticFloatingWarn WarningFloat + hi! link DiagnosticFloatingInfo InfoFloat + hi! link DiagnosticFloatingHint HintFloat + hi! link DiagnosticFloatingOk OkFloat + + hi! link DiagnosticUnderlineError ErrorHighlight + hi! link DiagnosticUnderlineWarn WarningHighlight + hi! link DiagnosticUnderlineInfo InfoHighlight + hi! link DiagnosticUnderlineHint HintHighlight + hi! link DiagnosticUnderlineOk OkHighlight + + hi! link DiagnosticsVirtualTextError ErrorSign + hi! link DiagnosticsVirtualTextWarning WarningSign + hi! link DiagnosticsVirtualTextInfo InfoSign + hi! link DiagnosticsVirtualTextHint HintSign + hi! link DiagnosticsVirtualTextOk OkSign + + " Remove untill endif on next nvim release + hi! link LspDiagnosticsSignError ErrorSign + hi! link LspDiagnosticsSignWarning WarningSign + hi! link LspDiagnosticsSignInfo InfoSign + hi! link LspDiagnosticsSignHint HintSign + + hi! link LspDiagnosticsVirtualTextError ErrorSign + hi! link LspDiagnosticsVirtualTextWarning WarningSign + hi! link LspDiagnosticsVirtualTextInfo InfoSign + hi! link LspDiagnosticsVirtualTextHint HintSign + + hi! link LspDiagnosticsFloatingError ErrorFloat + hi! link LspDiagnosticsFloatingWarning WarningFloat + hi! link LspDiagnosticsFloatingInfo InfoFloat + hi! link LspDiagnosticsFloatingHint HintFloat + + hi! link LspDiagnosticsUnderlineError ErrorHighlight + hi! link LspDiagnosticsUnderlineWarning WarningHighlight + hi! link LspDiagnosticsUnderlineInfo InfoHighlight + hi! link LspDiagnosticsUnderlineHint HintHighlight + + hi! link LspReferenceText ReferenceText + hi! link LspReferenceRead ReferenceRead + hi! link LspReferenceWrite ReferenceWrite +endif + +" Java +call hi("javaOperator", s:gui0D, "", s:cterm0D, "", "", "") + +" JSON +hi! link jsonKeyword ThemeGreen +hi! link jsonQuote ThemeGreen +hi! link jsonBraces ThemeFg1 +hi! link jsonString ThemeFg1 + +" Markdown +hi! link markdownH1 ThemeRedBold +hi! link markdownH2 ThemeRed +hi! link markdownH3 ThemeRed +hi! link markdownH4 ThemeRed +hi! link markdownH5 ThemeRed +hi! link markdownH6 ThemeRed + +hi! link markdownCode ThemeYellow +hi! link markdownCodeBlock ThemeYellow +hi! link markdownCodeDelimiter ThemeYellow + +hi! link markdownBlockquote ThemeGrey +hi! link markdownListMarker ThemeBlue +hi! link markdownOrderedListMarker ThemeBlue +hi! link markdownRule ThemeGrey +hi! link markdownHeadingRule ThemeGrey + +hi! link markdownUrlDelimiter ThemeFg3 +hi! link markdownLinkDelimiter ThemeFg3 +hi! link markdownLinkTextDelimiter ThemeFg3 +hi! link markdownHeadingDelimiter ThemeOrange +hi! link markdownUrlTitleDelimiter ThemeGreen + +hi! link markdownLink ThemeGreen +hi! link markdownWikiLink ThemeViolet +hi! link markdownUrl ThemeOrange +hi! link markdownInlineUrl ThemeOrange + +hi! link markdownLinkText ThemeViolet +hi! link markdownIdDeclaration markdownLinkText + +"call s:HL('markdownItalic', s:fg3, s:none, s:italic) +"call s:HL('markdownLinkText', s:gray, s:none, s:underline) + + +" Remove functions +delf hi + +" Remove color variables +unlet s:gui00 s:gui01 s:gui02 s:gui03 s:gui04 s:gui05 s:gui06 s:gui07 s:gui08 s:gui09 s:gui0A s:gui0B s:gui0C s:gui0D s:gui0E s:gui0F s:guibg +unlet s:cterm00 s:cterm01 s:cterm02 s:cterm03 s:cterm04 s:cterm05 s:cterm06 s:cterm07 s:cterm08 s:cterm09 s:cterm0A s:cterm0B s:cterm0C s:cterm0D s:cterm0E s:cterm0F s:ctermbg diff --git a/apps/nvim/hard-monobiome-dark.vim b/apps/nvim/hard-monobiome-dark.vim new file mode 100644 index 0000000..f2df12f --- /dev/null +++ b/apps/nvim/hard-monobiome-dark.vim @@ -0,0 +1,882 @@ +" vi:syntax=vim +" +" Top-level remarks: +" +" - `hi` sets highlight colors for syntax groups, allowing one to specify fg and bg colors +" for GUI and terminal Vim. +" - `link` allows for linking one syntax group to another, reusing the same color +" settings. Language-specific groups can then point to one of the base color highlight +" groups, for example, without needing to repeat the raw color values. + +" GUI color definitions +let s:gui00 = "#161616" +let g:base16_gui00 = "#161616" +let s:gui01 = "#222222" +let g:base16_gui01 = "#222222" +let s:gui02 = "#2e2e2e" +let g:base16_gui02 = "#2e2e2e" +let s:gui03 = "#3a3a3a" +let g:base16_gui03 = "#3a3a3a" +let s:gui04 = "#9e9e9e" +let g:base16_gui04 = "#9e9e9e" +let s:gui05 = "#aeaeae" +let g:base16_gui05 = "#aeaeae" +let s:gui06 = "#bebebe" +let g:base16_gui06 = "#bebebe" +let s:gui07 = "#cecece" +let g:base16_gui07 = "#cecece" +let s:gui08 = "#dc4134" +let g:base16_gui08 = "#dc4134" +let s:gui09 = "#b86b05" +let g:base16_gui09 = "#b86b05" +let s:gui0A = "#888346" +let g:base16_gui0A = "#888346" +let s:gui0B = "#4f925a" +let g:base16_gui0B = "#4f925a" +let s:gui0C = "#4f925a" +let g:base16_gui0C = "#4f925a" +let s:gui0D = "#557ecc" +let g:base16_gui0D = "#557ecc" +let s:gui0E = "#557ecc" +let g:base16_gui0E = "#557ecc" +let s:gui0F = "#dc4134" +let g:base16_gui0F = "#dc4134" + +let s:grey = "#717171" + +" Terminal color definitions +let s:cterm00 = "00" +let g:base16_cterm00 = "00" +let s:cterm03 = "08" +let g:base16_cterm03 = "08" +let s:cterm05 = "07" +let g:base16_cterm05 = "07" +let s:cterm07 = "15" +let g:base16_cterm07 = "15" +let s:cterm08 = "01" +let g:base16_cterm08 = "01" +let s:cterm0A = "03" +let g:base16_cterm0A = "03" +let s:cterm0B = "02" +let g:base16_cterm0B = "02" +let s:cterm0C = "06" +let g:base16_cterm0C = "06" +let s:cterm0D = "04" +let g:base16_cterm0D = "04" +let s:cterm0E = "05" +let g:base16_cterm0E = "05" + +let s:cterm01 = "10" +let g:base16_cterm01 = "10" +let s:cterm02 = "11" +let g:base16_cterm02 = "11" +let s:cterm04 = "12" +let g:base16_cterm04 = "12" +let s:cterm06 = "13" +let g:base16_cterm06 = "13" +let s:cterm09 = "09" +let g:base16_cterm09 = "09" +let s:cterm0F = "14" +let g:base16_cterm0F = "14" + +" Neovim terminal colours +if has("nvim") + let g:terminal_color_0 = "#161616" + let g:terminal_color_1 = "#dc4134" + let g:terminal_color_2 = "#4f925a" + let g:terminal_color_3 = "#888346" + let g:terminal_color_4 = "#557ecc" + let g:terminal_color_5 = "#557ecc" + let g:terminal_color_6 = "#4f925a" + let g:terminal_color_7 = "#aeaeae" + let g:terminal_color_8 = "#3a3a3a" + let g:terminal_color_9 = "#dc4134" + let g:terminal_color_10 = "#4f925a" + let g:terminal_color_11 = "#888346" + let g:terminal_color_12 = "#557ecc" + let g:terminal_color_13 = "#557ecc" + let g:terminal_color_14 = "#4f925a" + let g:terminal_color_15 = "#cecece" + let g:terminal_color_background = g:terminal_color_0 + let g:terminal_color_foreground = g:terminal_color_5 + + if &background == "light" + let g:terminal_color_background = g:terminal_color_7 + let g:terminal_color_foreground = g:terminal_color_2 + endif + +elseif has("terminal") + let g:terminal_ansi_colors = [ + \ "#161616", + \ "#dc4134", + \ "#4f925a", + \ "#888346", + \ "#557ecc", + \ "#557ecc", + \ "#4f925a", + \ "#aeaeae", + \ "#3a3a3a", + \ "#dc4134", + \ "#4f925a", + \ "#888346", + \ "#557ecc", + \ "#557ecc", + \ "#4f925a", + \ "#cecece", + \ ] +endif + +let s:guibg = s:gui00 +let s:ctermbg = s:cterm00 + +" Theme setup +hi clear +syntax reset +let g:colors_name = "active" + +" Highlighting function +" Optional variables are attributes and guisp +function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) + " For a given syntax group, sets the GUI and terminal foreground and backgrounds + " Optional parameters are interpreted as `attr` and `guisp`, the first of which appears + " to be a modifier for the group (e.g., bold, italic), and `guisp` appears to be + " 'special' colors used for underlines in the GUI. + let l:attr = get(a:, 1, "") + let l:guisp = get(a:, 2, "") + + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + + if a:guifg != "" + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=" . a:guifg + endif + endif + + if a:guibg != "" + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=" . a:guibg + endif + endif + + if a:ctermfg != "" + exec "hi " . a:group . " ctermfg=" . a:ctermfg + endif + + if a:ctermbg != "" + exec "hi " . a:group . " ctermbg=" . a:ctermbg + endif + + if l:attr != "" + exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr + endif + + if l:guisp != "" + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=" . l:guisp + endif + endif +endfunction + + +fun hi(group, guifg, guibg, ctermfg, ctermbg, attr, guisp) + call g:Base16hi(a:group, a:guifg, a:guibg, a:ctermfg, a:ctermbg, a:attr, a:guisp) +endfun + + +" color groups for interpretability +call hi("ThemeBg0", s:gui00, "", s:cterm00, "", "", "") +call hi("ThemeBg1", s:gui01, "", s:cterm01, "", "", "") +call hi("ThemeBg2", s:gui02, "", s:cterm02, "", "", "") +call hi("ThemeBg3", s:gui03, "", s:cterm03, "", "", "") +call hi("ThemeFg3", s:gui04, "", s:cterm04, "", "", "") +call hi("ThemeFg2", s:gui05, "", s:cterm05, "", "", "") +call hi("ThemeFg1", s:gui06, "", s:cterm06, "", "", "") +call hi("ThemeFg0", s:gui07, "", s:cterm07, "", "", "") +" +call hi("ThemeRed", s:gui08, "", s:cterm08, "", "", "") +call hi("ThemeOrange", s:gui09, "", s:cterm09, "", "", "") +call hi("ThemeYellow", s:gui0A, "", s:cterm0A, "", "", "") +call hi("ThemeGreen", s:gui0B, "", s:cterm0B, "", "", "") +call hi("ThemeCyan", s:gui0C, "", s:cterm0C, "", "", "") +call hi("ThemeBlue", s:gui0D, "", s:cterm0D, "", "", "") +call hi("ThemeViolet", s:gui0E, "", s:cterm0E, "", "", "") +call hi("ThemeMagenta", s:gui0F, "", s:cterm0F, "", "", "") + +call hi("ThemeRedBold", s:gui08, "", s:cterm08, "", "bold", "") +call hi("ThemeOrangeBold", s:gui09, "", s:cterm09, "", "bold", "") +call hi("ThemeYellowBold", s:gui0A, "", s:cterm0A, "", "bold", "") +call hi("ThemeGreenBold", s:gui0B, "", s:cterm0B, "", "bold", "") +call hi("ThemeCyanBold", s:gui0C, "", s:cterm0C, "", "bold", "") +call hi("ThemeBlueBold", s:gui0D, "", s:cterm0D, "", "bold", "") +call hi("ThemeVioletBold", s:gui0E, "", s:cterm0E, "", "bold", "") +call hi("ThemeMagentaBold", s:gui0F, "", s:cterm0F, "", "bold", "") + +call hi("ThemeRedItalic", s:gui08, "", s:cterm08, "", "italic", "") +call hi("ThemeOrangeItalic", s:gui09, "", s:cterm09, "", "italic", "") +call hi("ThemeYellowItalic", s:gui0A, "", s:cterm0A, "", "italic", "") +call hi("ThemeGreenItalic", s:gui0B, "", s:cterm0B, "", "italic", "") +call hi("ThemeCyanItalic", s:gui0C, "", s:cterm0C, "", "italic", "") +call hi("ThemeBlueItalic", s:gui0D, "", s:cterm0D, "", "italic", "") +call hi("ThemeVioletItalic", s:gui0E, "", s:cterm0E, "", "italic", "") +call hi("ThemeMagentaItalic", s:gui0F, "", s:cterm0F, "", "italic", "") + +call hi("ThemeGrey", s:grey, "", s:cterm03, "", "", "") +call hi("ThemeGreyItalic", s:grey, "", s:cterm03, "", "italic", "") + + +" Vim editor colors +call hi("Normal", s:gui05, s:guibg, s:cterm05, s:ctermbg, "", "") +call hi("Bold", "", "", "", "", "bold", "") +call hi("Debug", s:gui08, "", s:cterm08, "", "", "") +call hi("Directory", s:gui0D, "", s:cterm0D, "", "", "") +call hi("Error", s:guibg, s:gui08, s:ctermbg, s:cterm08, "", "") +call hi("ErrorMsg", s:gui08, s:guibg, s:cterm08, s:ctermbg, "", "") +call hi("Exception", s:gui08, "", s:cterm08, "", "", "") +call hi("FoldColumn", s:gui03, s:guibg, s:cterm03, s:ctermbg, "", "") +call hi("Folded", s:gui02, s:guibg, s:cterm02, s:ctermbg, "", "") +call hi("IncSearch", s:gui01, s:gui09, s:cterm01, s:cterm09, "none", "") +call hi("Italic", "", "", "", "", "italic", "") +call hi("Macro", s:gui0C, "", s:cterm0C, "", "", "") +call hi("MatchParen", "", s:gui03, "", s:cterm03, "", "") +call hi("ModeMsg", s:gui0B, "", s:cterm0B, "", "", "") +call hi("MoreMsg", s:gui0B, "", s:cterm0B, "", "", "") +call hi("Question", s:gui0D, "", s:cterm0D, "", "", "") +call hi("Search", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "", "") +call hi("Substitute", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "none", "") +call hi("SpecialKey", s:gui03, "", s:cterm03, "", "", "") +call hi("TooLong", s:gui08, "", s:cterm08, "", "", "") +call hi("Underlined", "", "", "", "", "underline", "fg") +call hi("Visual", "", s:gui02, "", s:cterm02, "", "") +call hi("VisualNOS", s:gui08, "", s:cterm08, "", "", "") +call hi("WarningMsg", s:gui08, "", s:cterm08, "", "", "") +call hi("WildMenu", s:guibg, s:gui06, s:ctermbg, s:cterm05, "", "") +call hi("Title", s:gui0D, "", s:cterm0D, "", "none", "") +call hi("Conceal", s:gui0D, s:guibg, s:cterm0D, s:ctermbg, "", "") +call hi("Cursor", s:gui05, s:guibg, "", "", "inverse", "") +call hi("NonText", s:gui03, "", s:cterm03, "", "", "") +call hi("Whitespace", s:gui03, "", s:cterm03, "", "", "") +call hi("LineNr", s:gui03, s:guibg, s:cterm03, s:ctermbg, "", "") +call hi("SignColumn", s:gui03, s:guibg, s:cterm03, s:ctermbg, "", "") +call hi("StatusLine", s:gui07, s:gui01, s:cterm07, s:cterm01, "none", "") +call hi("StatusLineNC", s:gui06, s:gui01, s:cterm05, s:cterm01, "none", "") +call hi("VertSplit", s:gui01, s:guibg, s:cterm01, s:ctermbg, "none", "") +call hi("ColorColumn", "", s:gui01, "", s:cterm01, "none", "") +call hi("CursorColumn", "", s:gui01, "", s:cterm01, "none", "") +call hi("CursorLine", "", s:gui01, "", s:cterm01, "none", "") +call hi("CursorLineNr", s:gui04, s:gui01, s:cterm04, s:cterm01, "bold", "") +call hi("QuickFixLine", "", s:gui01, "", s:cterm01, "none", "") +call hi("PMenu", s:gui06, s:gui01, s:cterm06, s:cterm01, "none", "") +call hi("PMenuSel", s:gui06, s:gui02, s:cterm06, s:cterm02, "", "") +call hi("PMenuSbar", "", s:gui03, "", s:cterm03, "", "") +call hi("PMenuThumb", "", s:gui04, "", s:cterm04, "", "") +call hi("TabLine", s:gui03, s:gui01, s:cterm03, s:cterm01, "none", "") +call hi("TabLineFill", s:gui03, s:gui01, s:cterm03, s:cterm01, "none", "") +call hi("TabLineSel", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "none", "") + +" Standard syntax +hi! link Boolean ThemeOrange +hi! link Character ThemeRed + +"call hi("Comment", s:gui03, "", s:cterm03, "", "italic", "") +hi! link Comment ThemeGreyItalic + +hi! link Conditional ThemeRed +hi! link Constant ThemeOrange +call hi("Define", s:gui0E, "", s:cterm0E, "", "none", "") +hi! link Delimiter ThemeFg1 + +if has("patch-8.0.1038") + call hi("Deprecated", "", "", "", "", "strikethrough", "") +endif + +hi! link Float ThemeOrange +hi! link Function ThemeBlue +call hi("Identifier", s:gui06, "", s:cterm05, "", "none", "") +hi! link Include ThemeBlue +hi! link Constant ThemeOrange +call hi("Keyword", s:gui0E, "", s:cterm0E, "", "none", "") +hi! link Label ThemeOrange +hi! link Number ThemeOrange +hi! link Operator ThemeYellow +hi! link PreProc ThemeOrange +hi! link Repeat ThemeViolet +hi! link Special ThemeYellow +hi! link SpecialChar ThemeMagenta +hi! link Statement ThemeRed +hi! link StorageClass ThemeOrange +hi! link String ThemeGreen +hi! link Structure ThemeOrange +hi! link Tag ThemeOrange + +call hi("Todo", s:gui08, s:guibg, s:cterm08, s:ctermbg, "italic", "") +call hi("Type", s:gui0A, "", s:cterm0A, "", "none", "") + +hi! link Typedef ThemeOrange + + +" Treesitter +if has("nvim-0.8.0") + call hi("@field", s:gui08, "", s:cterm08, "", "", "") + call hi("@property", s:gui08, "", s:cterm08, "", "", "") + call hi("@namespace", s:gui06, "", s:cterm05, "", "italic", "") + call hi("@variable.builtin", s:gui06, "", s:cterm05, "", "italic", "") + call hi("@text.reference", s:gui08, "", s:cterm08, "", "", "") + call hi("@text.uri", s:gui08, "", s:cterm08, "", "italic", "") + + " Annotations & Attributes + call hi("@annotation", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@attribute", s:gui0D, "", s:cterm0D, "", "", "") + + " Booleans, Characters & Comments + call hi("@boolean", s:gui09, "", s:cterm09, "", "", "") + call hi("@character", s:gui08, "", s:cterm08, "", "", "") + call hi("@character.special", s:gui0F, "", s:cterm0F, "", "", "") + call hi("@comment", s:gui03, "", s:cterm03, "", "", "") + + " Conditionals, Constants & Debugging + call hi("@keyword.conditional", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@constant", s:gui09, "", s:cterm09, "", "", "") + call hi("@constant.builtin", s:gui09, "", s:cterm09, "", "", "") + call hi("@constant.macro", s:gui08, "", s:cterm08, "", "", "") + call hi("@keyword.debug", s:gui08, "", s:cterm08, "", "", "") + + " Directives & Exceptions + call hi("@keyword.directive.define", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@keyword.exception", s:gui0E, "", s:cterm0E, "", "", "") + + " Floats & Functions + call hi("@number.float", s:gui09, "", s:cterm09, "", "", "") + call hi("@function", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@function.builtin", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@function.call", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@function.macro", s:gui08, "", s:cterm08, "", "", "") + + " Imports, Operators & Returns + call hi("@keyword.import", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@keyword.coroutine", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@keyword.operator", s:gui06, "", s:cterm05, "", "", "") + call hi("@keyword.return", s:gui0E, "", s:cterm0E, "", "", "") + + " Methods & Namespaces + call hi("@function.method", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@function.method.call", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@namespace.builtin", s:gui0E, "", s:cterm0E, "", "", "") + + " Numbers & Directives + call hi("@none", s:gui06, "", s:cterm05, "", "", "") + call hi("@number", s:gui09, "", s:cterm09, "", "", "") + call hi("@keyword.directive", s:gui0E, "", s:cterm0E, "", "", "") + + " Repeats, Storage & Strings + call hi("@keyword.repeat", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@keyword.storage", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@string", s:gui0B, "", s:cterm0B, "", "", "") + + " Tags & Markup + call hi("@markup.link.label", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.link.label.symbol", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@tag", s:gui08, "", s:cterm08, "", "", "") + call hi("@tag.attribute", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@tag.delimiter", s:gui0F, "", s:cterm0F, "", "", "") + + " More Markup + call hi("@markup", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.environment", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.environment.name", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.raw", s:gui09, "", s:cterm09, "", "", "") + call hi("@markup.math", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.strong", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.emphasis", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.strikethrough", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.underline", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.heading", s:gui0D, "", s:cterm0D, "", "", "") + + " Comments & Types + call hi("@comment.note", s:gui03, "", s:cterm03, "", "", "") + call hi("@comment.error", s:gui08, "", s:cterm08, "", "", "") + call hi("@comment.hint", s:gui0B, "", s:cterm0B, "", "", "") + call hi("@comment.info", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@comment.warning", s:gui09, "", s:cterm09, "", "", "") + call hi("@comment.todo", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.link.url", s:gui09, "", s:cterm09, "", "", "") + call hi("@type", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@type.definition", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@type.qualifier", s:gui0E, "", s:cterm0E, "", "", "") +endif + +" Standard highlights to be used by plugins +if has("patch-8.0.1038") + call hi("Deprecated", "", "", "", "", "strikethrough", "") +endif +call hi("SearchMatch", s:gui0C, "", s:cterm0C, "", "", "") + +call hi("GitAddSign", s:gui0B, "", s:cterm0B, "", "", "") +call hi("GitChangeSign", s:gui04, "", s:cterm04, "", "", "") +call hi("GitDeleteSign", s:gui08, "", s:cterm08, "", "", "") +call hi("GitChangeDeleteSign", s:gui04, "", s:cterm04, "", "", "") + +call hi("ErrorSign", s:gui08, "", s:cterm08, "", "", "") +call hi("WarningSign", s:gui09, "", s:cterm09, "", "", "") +call hi("InfoSign", s:gui0D, "", s:cterm0D, "", "", "") +call hi("HintSign", s:gui0C, "", s:cterm0C, "", "", "") +call hi("OkSign", s:gui0B, "", s:cterm0B, "", "", "") + +call hi("ErrorFloat", s:gui08, s:gui01, s:cterm08, s:cterm01, "", "") +call hi("WarningFloat", s:gui09, s:gui01, s:cterm09, s:cterm01, "", "") +call hi("InfoFloat", s:gui0D, s:gui01, s:cterm0D, s:cterm01, "", "") +call hi("HintFloat", s:gui0C, s:gui01, s:cterm0C, s:cterm01, "", "") +call hi("OkFloat", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "") + +call hi("ErrorHighlight", "", "", s:ctermbg, s:cterm08, "underline", s:gui08) +call hi("WarningHighlight", "", "", s:ctermbg, s:cterm09, "underline", s:gui09) +call hi("InfoHighlight", "", "", s:ctermbg, s:cterm0D, "underline", s:gui0D) +call hi("HintHighlight", "", "", s:ctermbg, s:cterm0C, "underline", s:gui0C) +call hi("OkHighlight", "", "", s:ctermbg, s:cterm0B, "underline", s:gui0B) + +call hi("SpellBad", "", "", s:ctermbg, s:cterm08, "undercurl", s:gui08) +call hi("SpellLocal", "", "", s:ctermbg, s:cterm0C, "undercurl", s:gui0C) +call hi("SpellCap", "", "", s:ctermbg, s:cterm0D, "undercurl", s:gui0D) +call hi("SpellRare", "", "", s:ctermbg, s:cterm0E, "undercurl", s:gui0E) + +call hi("ReferenceText", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "", "") +call hi("ReferenceRead", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "", "") +call hi("ReferenceWrite", s:gui01, s:gui08, s:cterm01, s:cterm08, "", "") + +" C +call hi("cOperator", s:gui0C, "", s:cterm0C, "", "", "") +call hi("cPreCondit", s:gui0E, "", s:cterm0E, "", "", "") + +" C# +call hi("csClass", s:gui0A, "", s:cterm0A, "", "", "") +call hi("csAttribute", s:gui0A, "", s:cterm0A, "", "", "") +call hi("csModifier", s:gui0E, "", s:cterm0E, "", "", "") +call hi("csType", s:gui08, "", s:cterm08, "", "", "") +call hi("csUnspecifiedStatement", s:gui0D, "", s:cterm0D, "", "", "") +call hi("csContextualStatement", s:gui0E, "", s:cterm0E, "", "", "") +call hi("csNewDecleration", s:gui08, "", s:cterm08, "", "", "") + +" Clap +hi! link ClapInput ColorColumn +hi! link ClapSpinner ColorColumn +hi! link ClapDisplay Default +hi! link ClapPreview ColorColumn +hi! link ClapCurrentSelection CursorLine +hi! link ClapNoMatchesFound ErrorFloat + +" Coc +hi! link CocErrorSign ErrorSign +hi! link CocWarningSign WarningSign +hi! link CocInfoSign InfoSign +hi! link CocHintSign HintSign + +hi! link CocErrorFloat ErrorFloat +hi! link CocWarningFloat WarningFloat +hi! link CocInfoFloat InfoFloat +hi! link CocHintFloat HintFloat + +hi! link CocErrorHighlight ErrorHighlight +hi! link CocWarningHighlight WarningHighlight +hi! link CocInfoHighlight InfoHighlight +hi! link CocHintHighlight HintHighlight + +hi! link CocSem_angle Keyword +hi! link CocSem_annotation Keyword +hi! link CocSem_attribute Type +hi! link CocSem_bitwise Keyword +hi! link CocSem_boolean Boolean +hi! link CocSem_brace Normal +hi! link CocSem_bracket Normal +hi! link CocSem_builtinAttribute Type +hi! link CocSem_builtinType Type +hi! link CocSem_character String +hi! link CocSem_class Structure +hi! link CocSem_colon Normal +hi! link CocSem_comma Normal +hi! link CocSem_comment Comment +hi! link CocSem_comparison Keyword +hi! link CocSem_concept Keyword +hi! link CocSem_constParameter Identifier +hi! link CocSem_dependent Keyword +hi! link CocSem_dot Keyword +hi! link CocSem_enum Structure +hi! link CocSem_enumMember Constant +hi! link CocSem_escapeSequence Type +hi! link CocSem_event Identifier +hi! link CocSem_formatSpecifier Type +hi! link CocSem_function Function +hi! link CocSem_interface Type +hi! link CocSem_keyword Keyword +hi! link CocSem_label Keyword +hi! link CocSem_logical Keyword +hi! link CocSem_macro Macro +hi! link CocSem_method Function +hi! link CocSem_modifier Keyword +hi! link CocSem_namespace Identifier +hi! link CocSem_number Number +hi! link CocSem_operator Operator +hi! link CocSem_parameter Identifier +hi! link CocSem_parenthesis Normal +hi! link CocSem_property Identifier +hi! link CocSem_punctuation Keyword +hi! link CocSem_regexp Type +hi! link CocSem_selfKeyword Constant +hi! link CocSem_semicolon Normal +hi! link CocSem_string String +hi! link CocSem_struct Structure +hi! link CocSem_type Type +hi! link CocSem_typeAlias Type +hi! link CocSem_typeParameter Type +hi! link CocSem_unknown Normal +hi! link CocSem_variable Identifier + +call hi("CocHighlightRead", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "") +call hi("CocHighlightText", s:gui0A, s:gui01, s:cterm0A, s:cterm01, "", "") +call hi("CocHighlightWrite", s:gui08, s:gui01, s:cterm08, s:cterm01, "", "") +call hi("CocListMode", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "bold", "") +call hi("CocListPath", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "", "") +call hi("CocSessionsName", s:gui06, "", s:cterm05, "", "", "") + +" CSS +hi! link cssBraces ThemeBlue +hi! link cssFunctionName ThemeYellow +hi! link cssIdentifier ThemeOrange +hi! link cssClassName ThemeGreen +hi! link cssColor ThemeBlue +hi! link cssSelectorOp ThemeBlue +hi! link cssSelectorOp2 ThemeBlue +hi! link cssImportant ThemeGreen +hi! link cssVendor ThemeFg1 + +hi! link cssTextProp ThemeCyan +hi! link cssAnimationProp ThemeCyan +hi! link cssUIProp ThemeYellow +hi! link cssTransformProp ThemeCyan +hi! link cssTransitionProp ThemeCyan +hi! link cssPrintProp ThemeCyan +hi! link cssPositioningProp ThemeYellow +hi! link cssBoxProp ThemeCyan +hi! link cssFontDescriptorProp ThemeCyan +hi! link cssFlexibleBoxProp ThemeCyan +hi! link cssBorderOutlineProp ThemeCyan +hi! link cssBackgroundProp ThemeCyan +hi! link cssMarginProp ThemeCyan +hi! link cssListProp ThemeCyan +hi! link cssTableProp ThemeCyan +hi! link cssFontProp ThemeCyan +hi! link cssPaddingProp ThemeCyan +hi! link cssDimensionProp ThemeCyan +hi! link cssRenderProp ThemeCyan +hi! link cssColorProp ThemeCyan +hi! link cssGeneratedContentProp ThemeCyan + + +" CMP +hi! link CmpItemAbbrDeprecated Deprecated +hi! link CmpItemAbbrMatch SearchMatch +hi! link CmpItemAbbrMatchFuzzy SearchMatch +hi! link CmpItemKindClass Type +hi! link CmpItemKindColor Keyword +hi! link CmpItemKindConstant Constant +hi! link CmpItemKindConstructor Special +hi! link CmpItemKindEnum Type +hi! link CmpItemKindEnumMember Constant +hi! link CmpItemKindEvent Identifier +hi! link CmpItemKindField Character +hi! link CmpItemKindFile Directory +hi! link CmpItemKindFolder Directory +hi! link CmpItemKindFunction Function +hi! link CmpItemKindInterface Type +hi! link CmpItemKindKeyword Keyword +hi! link CmpItemKindMethod Function +hi! link CmpItemKindModule Namespace +hi! link CmpItemKindOperator Operator +hi! link CmpItemKindProperty Identifier +hi! link CmpItemKindReference Character +hi! link CmpItemKindSnippet String +hi! link CmpItemKindStruct Type +hi! link CmpItemKindText Text +hi! link CmpItemKindUnit Namespace +hi! link CmpItemKindValue Comment +hi! link CmpItemKindVariable Identifier + +if has("nvim-0.8.0") + hi! link CmpItemKindField @field + hi! link CmpItemKindProperty @property +endif + +" Diff +call hi("DiffAdd", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "") +call hi("DiffChange", s:gui06, s:gui01, s:cterm05, s:cterm01, "", "") +call hi("DiffDelete", s:gui02, s:guibg, s:cterm02, s:ctermbg, "", "") +call hi("DiffText", s:gui0D, s:gui01, s:cterm0D, s:cterm01, "", "") +call hi("DiffAdded", s:gui0B, s:guibg, s:cterm0B, s:ctermbg, "", "") +call hi("DiffFile", s:gui08, s:guibg, s:cterm08, s:ctermbg, "", "") +call hi("DiffNewFile", s:gui0B, s:guibg, s:cterm0B, s:ctermbg, "", "") +call hi("DiffLine", s:gui0D, s:guibg, s:cterm0D, s:ctermbg, "", "") +call hi("DiffRemoved", s:gui08, s:guibg, s:cterm08, s:ctermbg, "", "") + +" Git +call hi("gitcommitOverflow", s:gui08, "", s:cterm08, "", "", "") +call hi("gitcommitSummary", s:gui0B, "", s:cterm0B, "", "", "") +call hi("gitcommitComment", s:gui03, "", s:cterm03, "", "", "") +call hi("gitcommitUntracked", s:gui03, "", s:cterm03, "", "", "") +call hi("gitcommitDiscarded", s:gui03, "", s:cterm03, "", "", "") +call hi("gitcommitSelected", s:gui03, "", s:cterm03, "", "", "") +call hi("gitcommitHeader", s:gui0E, "", s:cterm0E, "", "", "") +call hi("gitcommitSelectedType", s:gui0D, "", s:cterm0D, "", "", "") +call hi("gitcommitUnmergedType", s:gui0D, "", s:cterm0D, "", "", "") +call hi("gitcommitDiscardedType", s:gui0D, "", s:cterm0D, "", "", "") +call hi("gitcommitBranch", s:gui09, "", s:cterm09, "", "bold", "") +call hi("gitcommitUntrackedFile", s:gui0A, "", s:cterm0A, "", "", "") +call hi("gitcommitUnmergedFile", s:gui08, "", s:cterm08, "", "bold", "") +call hi("gitcommitDiscardedFile", s:gui08, "", s:cterm08, "", "bold", "") +call hi("gitcommitSelectedFile", s:gui0B, "", s:cterm0B, "", "bold", "") + +" GitGutter +hi! link GitGutterAdd GitAddSign +hi! link GitGutterChange GitChangeSign +hi! link GitGutterDelete GitDeleteSign +hi! link GitGutterChangeDelete GitChangeDeleteSign + +" indent-blankline (nvim) +if has("nvim") + call hi("@ibl.indent.char.1",s:gui01, "", s:cterm01, "", "", "") +endif + +" HTML +call hi("htmlBold", s:gui07, "", s:cterm0A, "", "bold", "") +call hi("htmlItalic", s:gui06, "", s:cterm0E, "", "italic", "") +call hi("htmlEndTag", s:gui06, "", s:cterm05, "", "", "") +call hi("htmlTag", s:gui06, "", s:cterm05, "", "", "") + +" JavaScript +call hi("javaScript", s:gui06, "", s:cterm05, "", "", "") +call hi("javaScriptBraces", s:gui06, "", s:cterm05, "", "", "") +call hi("javaScriptNumber", s:gui09, "", s:cterm09, "", "", "") +" pangloss/vim-javascript +call hi("jsOperator", s:gui0D, "", s:cterm0D, "", "", "") +call hi("jsStatement", s:gui0E, "", s:cterm0E, "", "", "") +call hi("jsReturn", s:gui0E, "", s:cterm0E, "", "", "") +call hi("jsThis", s:gui08, "", s:cterm08, "", "", "") +call hi("jsClassDefinition", s:gui0A, "", s:cterm0A, "", "", "") +call hi("jsFunction", s:gui0E, "", s:cterm0E, "", "", "") +call hi("jsFuncName", s:gui0D, "", s:cterm0D, "", "", "") +call hi("jsFuncCall", s:gui0D, "", s:cterm0D, "", "", "") +call hi("jsClassFuncName", s:gui0D, "", s:cterm0D, "", "", "") +call hi("jsClassMethodType", s:gui0E, "", s:cterm0E, "", "", "") +call hi("jsRegexpString", s:gui0C, "", s:cterm0C, "", "", "") +call hi("jsGlobalObjects", s:gui0A, "", s:cterm0A, "", "", "") +call hi("jsGlobalNodeObjects", s:gui0A, "", s:cterm0A, "", "", "") +call hi("jsExceptions", s:gui0A, "", s:cterm0A, "", "", "") +call hi("jsBuiltins", s:gui0A, "", s:cterm0A, "", "", "") + +" Mail +call hi("mailQuoted1", s:gui0A, "", s:cterm0A, "", "", "") +call hi("mailQuoted2", s:gui0B, "", s:cterm0B, "", "", "") +call hi("mailQuoted3", s:gui0E, "", s:cterm0E, "", "", "") +call hi("mailQuoted4", s:gui0C, "", s:cterm0C, "", "", "") +call hi("mailQuoted5", s:gui0D, "", s:cterm0D, "", "", "") +call hi("mailQuoted6", s:gui0A, "", s:cterm0A, "", "", "") +call hi("mailURL", s:gui0D, "", s:cterm0D, "", "", "") +call hi("mailEmail", s:gui0D, "", s:cterm0D, "", "", "") + +" Markdown +call hi("markdownCode", s:gui0B, "", s:cterm0B, "", "", "") +call hi("markdownError", s:gui06, s:guibg, s:cterm05, s:ctermbg, "", "") +call hi("markdownCodeBlock", s:gui0B, "", s:cterm0B, "", "", "") +call hi("markdownHeadingDelimiter", s:gui0D, "", s:cterm0D, "", "", "") + +" Matchup +call hi("MatchWord", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "underline", "") + +" NERDTree +call hi("NERDTreeDirSlash", s:gui0D, "", s:cterm0D, "", "", "") +call hi("NERDTreeExecFile", s:gui06, "", s:cterm05, "", "", "") + +" Netrw +hi! link netrwDir ThemeCyan +hi! link netrwClassify ThemeCyan +hi! link netrwLink ThemeBg3 +hi! link netrwSymLink ThemeFg1 +hi! link netrwExe ThemeYellow +hi! link netrwComment ThemeBg3 +hi! link netrwList ThemeBlue +hi! link netrwHelpCmd ThemeCyan +hi! link netrwCmdSep ThemeFg3 +hi! link netrwVersion ThemeGreen + +" PHP +call hi("phpMemberSelector", s:gui06, "", s:cterm05, "", "", "") +call hi("phpComparison", s:gui06, "", s:cterm05, "", "", "") +call hi("phpParent", s:gui06, "", s:cterm05, "", "", "") +call hi("phpMethodsVar", s:gui0C, "", s:cterm0C, "", "", "") + +" Python +"call hi("pythonOperator", s:gui0E, "", s:cterm0E, "", "", "") +"call hi("pythonRepeat", s:gui0E, "", s:cterm0E, "", "", "") +"call hi("pythonInclude", s:gui0E, "", s:cterm0E, "", "", "") +"call hi("pythonStatement", s:gui0E, "", s:cterm0E, "", "", "") + +" hi! link pythonBuiltin ThemeCyan +" hi! link pythonBuiltinObj ThemeCyan +" hi! link pythonBuiltinFunc ThemeGreen +" hi! link pythonFunction Function +hi! link pythonDecorator ThemeYellow +hi! link pythonDecoratorName ThemeYellow +" hi! link pythonTripleQuotes ThemeGreenItalic +" hi! link pythonInclude ThemeBlue +" hi! link pythonImport ThemeBlue +" hi! link pythonRun ThemeBlue +" hi! link pythonCoding ThemeBlue +" hi! link pythonOperator ThemeRed +" hi! link pythonException ThemeRed +" hi! link pythonExceptions ThemeYellow +" hi! link pythonBoolean ThemeYellow +" hi! link pythonDot ThemeFg3 +" hi! link pythonConditional ThemeCyan +" hi! link pythonRepeat ThemeRed +" hi! link pythonDottedName ThemeGreen + + +" Ruby +call hi("rubyAttribute", s:gui0D, "", s:cterm0D, "", "", "") +call hi("rubyConstant", s:gui0A, "", s:cterm0A, "", "", "") +call hi("rubyInterpolationDelimiter", s:gui0F, "", s:cterm0F, "", "", "") +call hi("rubyRegexp", s:gui0C, "", s:cterm0C, "", "", "") +call hi("rubySymbol", s:gui0B, "", s:cterm0B, "", "", "") +call hi("rubyStringDelimiter", s:gui0B, "", s:cterm0B, "", "", "") + +" SASS +call hi("sassidChar", s:gui08, "", s:cterm08, "", "", "") +call hi("sassClassChar", s:gui09, "", s:cterm09, "", "", "") +call hi("sassInclude", s:gui0E, "", s:cterm0E, "", "", "") +call hi("sassMixing", s:gui0E, "", s:cterm0E, "", "", "") +call hi("sassMixinName", s:gui0D, "", s:cterm0D, "", "", "") + +" Signify +hi! link SignifySignAdd GitAddSign +hi! link SignifySignChange GitChangeSign +hi! link SignifySignDelete GitDeleteSign + +" Startify +call hi("StartifyBracket", s:gui03, "", s:cterm03, "", "", "") +call hi("StartifyFile", s:gui07, "", s:cterm07, "", "", "") +call hi("StartifyFooter", s:gui03, "", s:cterm03, "", "", "") +call hi("StartifyHeader", s:gui0B, "", s:cterm0B, "", "", "") +call hi("StartifyNumber", s:gui09, "", s:cterm09, "", "", "") +call hi("StartifyPath", s:gui03, "", s:cterm03, "", "", "") +call hi("StartifySection", s:gui0E, "", s:cterm0E, "", "", "") +call hi("StartifySelect", s:gui0C, "", s:cterm0C, "", "", "") +call hi("StartifySlash", s:gui03, "", s:cterm03, "", "", "") +call hi("StartifySpecial", s:gui03, "", s:cterm03, "", "", "") + +" LSP +if has("nvim") + hi! link DiagnosticError ErrorSign + hi! link DiagnosticWarn WarningSign + hi! link DiagnosticInfo InfoSign + hi! link DiagnosticHint HintSign + hi! link DiagnosticOk OkSign + + hi! link DiagnosticFloatingError ErrorFloat + hi! link DiagnosticFloatingWarn WarningFloat + hi! link DiagnosticFloatingInfo InfoFloat + hi! link DiagnosticFloatingHint HintFloat + hi! link DiagnosticFloatingOk OkFloat + + hi! link DiagnosticUnderlineError ErrorHighlight + hi! link DiagnosticUnderlineWarn WarningHighlight + hi! link DiagnosticUnderlineInfo InfoHighlight + hi! link DiagnosticUnderlineHint HintHighlight + hi! link DiagnosticUnderlineOk OkHighlight + + hi! link DiagnosticsVirtualTextError ErrorSign + hi! link DiagnosticsVirtualTextWarning WarningSign + hi! link DiagnosticsVirtualTextInfo InfoSign + hi! link DiagnosticsVirtualTextHint HintSign + hi! link DiagnosticsVirtualTextOk OkSign + + " Remove untill endif on next nvim release + hi! link LspDiagnosticsSignError ErrorSign + hi! link LspDiagnosticsSignWarning WarningSign + hi! link LspDiagnosticsSignInfo InfoSign + hi! link LspDiagnosticsSignHint HintSign + + hi! link LspDiagnosticsVirtualTextError ErrorSign + hi! link LspDiagnosticsVirtualTextWarning WarningSign + hi! link LspDiagnosticsVirtualTextInfo InfoSign + hi! link LspDiagnosticsVirtualTextHint HintSign + + hi! link LspDiagnosticsFloatingError ErrorFloat + hi! link LspDiagnosticsFloatingWarning WarningFloat + hi! link LspDiagnosticsFloatingInfo InfoFloat + hi! link LspDiagnosticsFloatingHint HintFloat + + hi! link LspDiagnosticsUnderlineError ErrorHighlight + hi! link LspDiagnosticsUnderlineWarning WarningHighlight + hi! link LspDiagnosticsUnderlineInfo InfoHighlight + hi! link LspDiagnosticsUnderlineHint HintHighlight + + hi! link LspReferenceText ReferenceText + hi! link LspReferenceRead ReferenceRead + hi! link LspReferenceWrite ReferenceWrite +endif + +" Java +call hi("javaOperator", s:gui0D, "", s:cterm0D, "", "", "") + +" JSON +hi! link jsonKeyword ThemeGreen +hi! link jsonQuote ThemeGreen +hi! link jsonBraces ThemeFg1 +hi! link jsonString ThemeFg1 + +" Markdown +hi! link markdownH1 ThemeRedBold +hi! link markdownH2 ThemeRed +hi! link markdownH3 ThemeRed +hi! link markdownH4 ThemeRed +hi! link markdownH5 ThemeRed +hi! link markdownH6 ThemeRed + +hi! link markdownCode ThemeYellow +hi! link markdownCodeBlock ThemeYellow +hi! link markdownCodeDelimiter ThemeYellow + +hi! link markdownBlockquote ThemeGrey +hi! link markdownListMarker ThemeBlue +hi! link markdownOrderedListMarker ThemeBlue +hi! link markdownRule ThemeGrey +hi! link markdownHeadingRule ThemeGrey + +hi! link markdownUrlDelimiter ThemeFg3 +hi! link markdownLinkDelimiter ThemeFg3 +hi! link markdownLinkTextDelimiter ThemeFg3 +hi! link markdownHeadingDelimiter ThemeOrange +hi! link markdownUrlTitleDelimiter ThemeGreen + +hi! link markdownLink ThemeGreen +hi! link markdownWikiLink ThemeViolet +hi! link markdownUrl ThemeOrange +hi! link markdownInlineUrl ThemeOrange + +hi! link markdownLinkText ThemeViolet +hi! link markdownIdDeclaration markdownLinkText + +"call s:HL('markdownItalic', s:fg3, s:none, s:italic) +"call s:HL('markdownLinkText', s:gray, s:none, s:underline) + + +" Remove functions +delf hi + +" Remove color variables +unlet s:gui00 s:gui01 s:gui02 s:gui03 s:gui04 s:gui05 s:gui06 s:gui07 s:gui08 s:gui09 s:gui0A s:gui0B s:gui0C s:gui0D s:gui0E s:gui0F s:guibg +unlet s:cterm00 s:cterm01 s:cterm02 s:cterm03 s:cterm04 s:cterm05 s:cterm06 s:cterm07 s:cterm08 s:cterm09 s:cterm0A s:cterm0B s:cterm0C s:cterm0D s:cterm0E s:cterm0F s:ctermbg diff --git a/apps/nvim/hard-monobiome-light.vim b/apps/nvim/hard-monobiome-light.vim new file mode 100644 index 0000000..f3386dc --- /dev/null +++ b/apps/nvim/hard-monobiome-light.vim @@ -0,0 +1,882 @@ +" vi:syntax=vim +" +" Top-level remarks: +" +" - `hi` sets highlight colors for syntax groups, allowing one to specify fg and bg colors +" for GUI and terminal Vim. +" - `link` allows for linking one syntax group to another, reusing the same color +" settings. Language-specific groups can then point to one of the base color highlight +" groups, for example, without needing to repeat the raw color values. + +" GUI color definitions +let s:gui00 = "#dedede" +let g:base16_gui00 = "#dedede" +let s:gui01 = "#cecece" +let g:base16_gui01 = "#cecece" +let s:gui02 = "#bebebe" +let g:base16_gui02 = "#bebebe" +let s:gui03 = "#aeaeae" +let g:base16_gui03 = "#aeaeae" +let s:gui04 = "#484848" +let g:base16_gui04 = "#484848" +let s:gui05 = "#3a3a3a" +let g:base16_gui05 = "#3a3a3a" +let s:gui06 = "#2e2e2e" +let g:base16_gui06 = "#2e2e2e" +let s:gui07 = "#222222" +let g:base16_gui07 = "#222222" +let s:gui08 = "#ca2e23" +let g:base16_gui08 = "#ca2e23" +let s:gui09 = "#a45e00" +let g:base16_gui09 = "#a45e00" +let s:gui0A = "#79743d" +let g:base16_gui0A = "#79743d" +let s:gui0B = "#42824e" +let g:base16_gui0B = "#42824e" +let s:gui0C = "#42824e" +let g:base16_gui0C = "#42824e" +let s:gui0D = "#456fbe" +let g:base16_gui0D = "#456fbe" +let s:gui0E = "#456fbe" +let g:base16_gui0E = "#456fbe" +let s:gui0F = "#ca2e23" +let g:base16_gui0F = "#ca2e23" + +let s:grey = "#717171" + +" Terminal color definitions +let s:cterm00 = "00" +let g:base16_cterm00 = "00" +let s:cterm03 = "08" +let g:base16_cterm03 = "08" +let s:cterm05 = "07" +let g:base16_cterm05 = "07" +let s:cterm07 = "15" +let g:base16_cterm07 = "15" +let s:cterm08 = "01" +let g:base16_cterm08 = "01" +let s:cterm0A = "03" +let g:base16_cterm0A = "03" +let s:cterm0B = "02" +let g:base16_cterm0B = "02" +let s:cterm0C = "06" +let g:base16_cterm0C = "06" +let s:cterm0D = "04" +let g:base16_cterm0D = "04" +let s:cterm0E = "05" +let g:base16_cterm0E = "05" + +let s:cterm01 = "10" +let g:base16_cterm01 = "10" +let s:cterm02 = "11" +let g:base16_cterm02 = "11" +let s:cterm04 = "12" +let g:base16_cterm04 = "12" +let s:cterm06 = "13" +let g:base16_cterm06 = "13" +let s:cterm09 = "09" +let g:base16_cterm09 = "09" +let s:cterm0F = "14" +let g:base16_cterm0F = "14" + +" Neovim terminal colours +if has("nvim") + let g:terminal_color_0 = "#dedede" + let g:terminal_color_1 = "#ca2e23" + let g:terminal_color_2 = "#42824e" + let g:terminal_color_3 = "#79743d" + let g:terminal_color_4 = "#456fbe" + let g:terminal_color_5 = "#456fbe" + let g:terminal_color_6 = "#42824e" + let g:terminal_color_7 = "#3a3a3a" + let g:terminal_color_8 = "#aeaeae" + let g:terminal_color_9 = "#ca2e23" + let g:terminal_color_10 = "#42824e" + let g:terminal_color_11 = "#79743d" + let g:terminal_color_12 = "#456fbe" + let g:terminal_color_13 = "#456fbe" + let g:terminal_color_14 = "#42824e" + let g:terminal_color_15 = "#222222" + let g:terminal_color_background = g:terminal_color_0 + let g:terminal_color_foreground = g:terminal_color_5 + + if &background == "light" + let g:terminal_color_background = g:terminal_color_7 + let g:terminal_color_foreground = g:terminal_color_2 + endif + +elseif has("terminal") + let g:terminal_ansi_colors = [ + \ "#dedede", + \ "#ca2e23", + \ "#42824e", + \ "#79743d", + \ "#456fbe", + \ "#456fbe", + \ "#42824e", + \ "#3a3a3a", + \ "#aeaeae", + \ "#ca2e23", + \ "#42824e", + \ "#79743d", + \ "#456fbe", + \ "#456fbe", + \ "#42824e", + \ "#222222", + \ ] +endif + +let s:guibg = s:gui00 +let s:ctermbg = s:cterm00 + +" Theme setup +hi clear +syntax reset +let g:colors_name = "active" + +" Highlighting function +" Optional variables are attributes and guisp +function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) + " For a given syntax group, sets the GUI and terminal foreground and backgrounds + " Optional parameters are interpreted as `attr` and `guisp`, the first of which appears + " to be a modifier for the group (e.g., bold, italic), and `guisp` appears to be + " 'special' colors used for underlines in the GUI. + let l:attr = get(a:, 1, "") + let l:guisp = get(a:, 2, "") + + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + + if a:guifg != "" + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=" . a:guifg + endif + endif + + if a:guibg != "" + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=" . a:guibg + endif + endif + + if a:ctermfg != "" + exec "hi " . a:group . " ctermfg=" . a:ctermfg + endif + + if a:ctermbg != "" + exec "hi " . a:group . " ctermbg=" . a:ctermbg + endif + + if l:attr != "" + exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr + endif + + if l:guisp != "" + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=" . l:guisp + endif + endif +endfunction + + +fun hi(group, guifg, guibg, ctermfg, ctermbg, attr, guisp) + call g:Base16hi(a:group, a:guifg, a:guibg, a:ctermfg, a:ctermbg, a:attr, a:guisp) +endfun + + +" color groups for interpretability +call hi("ThemeBg0", s:gui00, "", s:cterm00, "", "", "") +call hi("ThemeBg1", s:gui01, "", s:cterm01, "", "", "") +call hi("ThemeBg2", s:gui02, "", s:cterm02, "", "", "") +call hi("ThemeBg3", s:gui03, "", s:cterm03, "", "", "") +call hi("ThemeFg3", s:gui04, "", s:cterm04, "", "", "") +call hi("ThemeFg2", s:gui05, "", s:cterm05, "", "", "") +call hi("ThemeFg1", s:gui06, "", s:cterm06, "", "", "") +call hi("ThemeFg0", s:gui07, "", s:cterm07, "", "", "") +" +call hi("ThemeRed", s:gui08, "", s:cterm08, "", "", "") +call hi("ThemeOrange", s:gui09, "", s:cterm09, "", "", "") +call hi("ThemeYellow", s:gui0A, "", s:cterm0A, "", "", "") +call hi("ThemeGreen", s:gui0B, "", s:cterm0B, "", "", "") +call hi("ThemeCyan", s:gui0C, "", s:cterm0C, "", "", "") +call hi("ThemeBlue", s:gui0D, "", s:cterm0D, "", "", "") +call hi("ThemeViolet", s:gui0E, "", s:cterm0E, "", "", "") +call hi("ThemeMagenta", s:gui0F, "", s:cterm0F, "", "", "") + +call hi("ThemeRedBold", s:gui08, "", s:cterm08, "", "bold", "") +call hi("ThemeOrangeBold", s:gui09, "", s:cterm09, "", "bold", "") +call hi("ThemeYellowBold", s:gui0A, "", s:cterm0A, "", "bold", "") +call hi("ThemeGreenBold", s:gui0B, "", s:cterm0B, "", "bold", "") +call hi("ThemeCyanBold", s:gui0C, "", s:cterm0C, "", "bold", "") +call hi("ThemeBlueBold", s:gui0D, "", s:cterm0D, "", "bold", "") +call hi("ThemeVioletBold", s:gui0E, "", s:cterm0E, "", "bold", "") +call hi("ThemeMagentaBold", s:gui0F, "", s:cterm0F, "", "bold", "") + +call hi("ThemeRedItalic", s:gui08, "", s:cterm08, "", "italic", "") +call hi("ThemeOrangeItalic", s:gui09, "", s:cterm09, "", "italic", "") +call hi("ThemeYellowItalic", s:gui0A, "", s:cterm0A, "", "italic", "") +call hi("ThemeGreenItalic", s:gui0B, "", s:cterm0B, "", "italic", "") +call hi("ThemeCyanItalic", s:gui0C, "", s:cterm0C, "", "italic", "") +call hi("ThemeBlueItalic", s:gui0D, "", s:cterm0D, "", "italic", "") +call hi("ThemeVioletItalic", s:gui0E, "", s:cterm0E, "", "italic", "") +call hi("ThemeMagentaItalic", s:gui0F, "", s:cterm0F, "", "italic", "") + +call hi("ThemeGrey", s:grey, "", s:cterm03, "", "", "") +call hi("ThemeGreyItalic", s:grey, "", s:cterm03, "", "italic", "") + + +" Vim editor colors +call hi("Normal", s:gui05, s:guibg, s:cterm05, s:ctermbg, "", "") +call hi("Bold", "", "", "", "", "bold", "") +call hi("Debug", s:gui08, "", s:cterm08, "", "", "") +call hi("Directory", s:gui0D, "", s:cterm0D, "", "", "") +call hi("Error", s:guibg, s:gui08, s:ctermbg, s:cterm08, "", "") +call hi("ErrorMsg", s:gui08, s:guibg, s:cterm08, s:ctermbg, "", "") +call hi("Exception", s:gui08, "", s:cterm08, "", "", "") +call hi("FoldColumn", s:gui03, s:guibg, s:cterm03, s:ctermbg, "", "") +call hi("Folded", s:gui02, s:guibg, s:cterm02, s:ctermbg, "", "") +call hi("IncSearch", s:gui01, s:gui09, s:cterm01, s:cterm09, "none", "") +call hi("Italic", "", "", "", "", "italic", "") +call hi("Macro", s:gui0C, "", s:cterm0C, "", "", "") +call hi("MatchParen", "", s:gui03, "", s:cterm03, "", "") +call hi("ModeMsg", s:gui0B, "", s:cterm0B, "", "", "") +call hi("MoreMsg", s:gui0B, "", s:cterm0B, "", "", "") +call hi("Question", s:gui0D, "", s:cterm0D, "", "", "") +call hi("Search", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "", "") +call hi("Substitute", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "none", "") +call hi("SpecialKey", s:gui03, "", s:cterm03, "", "", "") +call hi("TooLong", s:gui08, "", s:cterm08, "", "", "") +call hi("Underlined", "", "", "", "", "underline", "fg") +call hi("Visual", "", s:gui02, "", s:cterm02, "", "") +call hi("VisualNOS", s:gui08, "", s:cterm08, "", "", "") +call hi("WarningMsg", s:gui08, "", s:cterm08, "", "", "") +call hi("WildMenu", s:guibg, s:gui06, s:ctermbg, s:cterm05, "", "") +call hi("Title", s:gui0D, "", s:cterm0D, "", "none", "") +call hi("Conceal", s:gui0D, s:guibg, s:cterm0D, s:ctermbg, "", "") +call hi("Cursor", s:gui05, s:guibg, "", "", "inverse", "") +call hi("NonText", s:gui03, "", s:cterm03, "", "", "") +call hi("Whitespace", s:gui03, "", s:cterm03, "", "", "") +call hi("LineNr", s:gui03, s:guibg, s:cterm03, s:ctermbg, "", "") +call hi("SignColumn", s:gui03, s:guibg, s:cterm03, s:ctermbg, "", "") +call hi("StatusLine", s:gui07, s:gui01, s:cterm07, s:cterm01, "none", "") +call hi("StatusLineNC", s:gui06, s:gui01, s:cterm05, s:cterm01, "none", "") +call hi("VertSplit", s:gui01, s:guibg, s:cterm01, s:ctermbg, "none", "") +call hi("ColorColumn", "", s:gui01, "", s:cterm01, "none", "") +call hi("CursorColumn", "", s:gui01, "", s:cterm01, "none", "") +call hi("CursorLine", "", s:gui01, "", s:cterm01, "none", "") +call hi("CursorLineNr", s:gui04, s:gui01, s:cterm04, s:cterm01, "bold", "") +call hi("QuickFixLine", "", s:gui01, "", s:cterm01, "none", "") +call hi("PMenu", s:gui06, s:gui01, s:cterm06, s:cterm01, "none", "") +call hi("PMenuSel", s:gui06, s:gui02, s:cterm06, s:cterm02, "", "") +call hi("PMenuSbar", "", s:gui03, "", s:cterm03, "", "") +call hi("PMenuThumb", "", s:gui04, "", s:cterm04, "", "") +call hi("TabLine", s:gui03, s:gui01, s:cterm03, s:cterm01, "none", "") +call hi("TabLineFill", s:gui03, s:gui01, s:cterm03, s:cterm01, "none", "") +call hi("TabLineSel", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "none", "") + +" Standard syntax +hi! link Boolean ThemeOrange +hi! link Character ThemeRed + +"call hi("Comment", s:gui03, "", s:cterm03, "", "italic", "") +hi! link Comment ThemeGreyItalic + +hi! link Conditional ThemeRed +hi! link Constant ThemeOrange +call hi("Define", s:gui0E, "", s:cterm0E, "", "none", "") +hi! link Delimiter ThemeFg1 + +if has("patch-8.0.1038") + call hi("Deprecated", "", "", "", "", "strikethrough", "") +endif + +hi! link Float ThemeOrange +hi! link Function ThemeBlue +call hi("Identifier", s:gui06, "", s:cterm05, "", "none", "") +hi! link Include ThemeBlue +hi! link Constant ThemeOrange +call hi("Keyword", s:gui0E, "", s:cterm0E, "", "none", "") +hi! link Label ThemeOrange +hi! link Number ThemeOrange +hi! link Operator ThemeYellow +hi! link PreProc ThemeOrange +hi! link Repeat ThemeViolet +hi! link Special ThemeYellow +hi! link SpecialChar ThemeMagenta +hi! link Statement ThemeRed +hi! link StorageClass ThemeOrange +hi! link String ThemeGreen +hi! link Structure ThemeOrange +hi! link Tag ThemeOrange + +call hi("Todo", s:gui08, s:guibg, s:cterm08, s:ctermbg, "italic", "") +call hi("Type", s:gui0A, "", s:cterm0A, "", "none", "") + +hi! link Typedef ThemeOrange + + +" Treesitter +if has("nvim-0.8.0") + call hi("@field", s:gui08, "", s:cterm08, "", "", "") + call hi("@property", s:gui08, "", s:cterm08, "", "", "") + call hi("@namespace", s:gui06, "", s:cterm05, "", "italic", "") + call hi("@variable.builtin", s:gui06, "", s:cterm05, "", "italic", "") + call hi("@text.reference", s:gui08, "", s:cterm08, "", "", "") + call hi("@text.uri", s:gui08, "", s:cterm08, "", "italic", "") + + " Annotations & Attributes + call hi("@annotation", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@attribute", s:gui0D, "", s:cterm0D, "", "", "") + + " Booleans, Characters & Comments + call hi("@boolean", s:gui09, "", s:cterm09, "", "", "") + call hi("@character", s:gui08, "", s:cterm08, "", "", "") + call hi("@character.special", s:gui0F, "", s:cterm0F, "", "", "") + call hi("@comment", s:gui03, "", s:cterm03, "", "", "") + + " Conditionals, Constants & Debugging + call hi("@keyword.conditional", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@constant", s:gui09, "", s:cterm09, "", "", "") + call hi("@constant.builtin", s:gui09, "", s:cterm09, "", "", "") + call hi("@constant.macro", s:gui08, "", s:cterm08, "", "", "") + call hi("@keyword.debug", s:gui08, "", s:cterm08, "", "", "") + + " Directives & Exceptions + call hi("@keyword.directive.define", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@keyword.exception", s:gui0E, "", s:cterm0E, "", "", "") + + " Floats & Functions + call hi("@number.float", s:gui09, "", s:cterm09, "", "", "") + call hi("@function", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@function.builtin", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@function.call", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@function.macro", s:gui08, "", s:cterm08, "", "", "") + + " Imports, Operators & Returns + call hi("@keyword.import", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@keyword.coroutine", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@keyword.operator", s:gui06, "", s:cterm05, "", "", "") + call hi("@keyword.return", s:gui0E, "", s:cterm0E, "", "", "") + + " Methods & Namespaces + call hi("@function.method", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@function.method.call", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@namespace.builtin", s:gui0E, "", s:cterm0E, "", "", "") + + " Numbers & Directives + call hi("@none", s:gui06, "", s:cterm05, "", "", "") + call hi("@number", s:gui09, "", s:cterm09, "", "", "") + call hi("@keyword.directive", s:gui0E, "", s:cterm0E, "", "", "") + + " Repeats, Storage & Strings + call hi("@keyword.repeat", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@keyword.storage", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@string", s:gui0B, "", s:cterm0B, "", "", "") + + " Tags & Markup + call hi("@markup.link.label", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.link.label.symbol", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@tag", s:gui08, "", s:cterm08, "", "", "") + call hi("@tag.attribute", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@tag.delimiter", s:gui0F, "", s:cterm0F, "", "", "") + + " More Markup + call hi("@markup", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.environment", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.environment.name", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.raw", s:gui09, "", s:cterm09, "", "", "") + call hi("@markup.math", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.strong", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.emphasis", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.strikethrough", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.underline", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.heading", s:gui0D, "", s:cterm0D, "", "", "") + + " Comments & Types + call hi("@comment.note", s:gui03, "", s:cterm03, "", "", "") + call hi("@comment.error", s:gui08, "", s:cterm08, "", "", "") + call hi("@comment.hint", s:gui0B, "", s:cterm0B, "", "", "") + call hi("@comment.info", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@comment.warning", s:gui09, "", s:cterm09, "", "", "") + call hi("@comment.todo", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.link.url", s:gui09, "", s:cterm09, "", "", "") + call hi("@type", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@type.definition", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@type.qualifier", s:gui0E, "", s:cterm0E, "", "", "") +endif + +" Standard highlights to be used by plugins +if has("patch-8.0.1038") + call hi("Deprecated", "", "", "", "", "strikethrough", "") +endif +call hi("SearchMatch", s:gui0C, "", s:cterm0C, "", "", "") + +call hi("GitAddSign", s:gui0B, "", s:cterm0B, "", "", "") +call hi("GitChangeSign", s:gui04, "", s:cterm04, "", "", "") +call hi("GitDeleteSign", s:gui08, "", s:cterm08, "", "", "") +call hi("GitChangeDeleteSign", s:gui04, "", s:cterm04, "", "", "") + +call hi("ErrorSign", s:gui08, "", s:cterm08, "", "", "") +call hi("WarningSign", s:gui09, "", s:cterm09, "", "", "") +call hi("InfoSign", s:gui0D, "", s:cterm0D, "", "", "") +call hi("HintSign", s:gui0C, "", s:cterm0C, "", "", "") +call hi("OkSign", s:gui0B, "", s:cterm0B, "", "", "") + +call hi("ErrorFloat", s:gui08, s:gui01, s:cterm08, s:cterm01, "", "") +call hi("WarningFloat", s:gui09, s:gui01, s:cterm09, s:cterm01, "", "") +call hi("InfoFloat", s:gui0D, s:gui01, s:cterm0D, s:cterm01, "", "") +call hi("HintFloat", s:gui0C, s:gui01, s:cterm0C, s:cterm01, "", "") +call hi("OkFloat", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "") + +call hi("ErrorHighlight", "", "", s:ctermbg, s:cterm08, "underline", s:gui08) +call hi("WarningHighlight", "", "", s:ctermbg, s:cterm09, "underline", s:gui09) +call hi("InfoHighlight", "", "", s:ctermbg, s:cterm0D, "underline", s:gui0D) +call hi("HintHighlight", "", "", s:ctermbg, s:cterm0C, "underline", s:gui0C) +call hi("OkHighlight", "", "", s:ctermbg, s:cterm0B, "underline", s:gui0B) + +call hi("SpellBad", "", "", s:ctermbg, s:cterm08, "undercurl", s:gui08) +call hi("SpellLocal", "", "", s:ctermbg, s:cterm0C, "undercurl", s:gui0C) +call hi("SpellCap", "", "", s:ctermbg, s:cterm0D, "undercurl", s:gui0D) +call hi("SpellRare", "", "", s:ctermbg, s:cterm0E, "undercurl", s:gui0E) + +call hi("ReferenceText", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "", "") +call hi("ReferenceRead", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "", "") +call hi("ReferenceWrite", s:gui01, s:gui08, s:cterm01, s:cterm08, "", "") + +" C +call hi("cOperator", s:gui0C, "", s:cterm0C, "", "", "") +call hi("cPreCondit", s:gui0E, "", s:cterm0E, "", "", "") + +" C# +call hi("csClass", s:gui0A, "", s:cterm0A, "", "", "") +call hi("csAttribute", s:gui0A, "", s:cterm0A, "", "", "") +call hi("csModifier", s:gui0E, "", s:cterm0E, "", "", "") +call hi("csType", s:gui08, "", s:cterm08, "", "", "") +call hi("csUnspecifiedStatement", s:gui0D, "", s:cterm0D, "", "", "") +call hi("csContextualStatement", s:gui0E, "", s:cterm0E, "", "", "") +call hi("csNewDecleration", s:gui08, "", s:cterm08, "", "", "") + +" Clap +hi! link ClapInput ColorColumn +hi! link ClapSpinner ColorColumn +hi! link ClapDisplay Default +hi! link ClapPreview ColorColumn +hi! link ClapCurrentSelection CursorLine +hi! link ClapNoMatchesFound ErrorFloat + +" Coc +hi! link CocErrorSign ErrorSign +hi! link CocWarningSign WarningSign +hi! link CocInfoSign InfoSign +hi! link CocHintSign HintSign + +hi! link CocErrorFloat ErrorFloat +hi! link CocWarningFloat WarningFloat +hi! link CocInfoFloat InfoFloat +hi! link CocHintFloat HintFloat + +hi! link CocErrorHighlight ErrorHighlight +hi! link CocWarningHighlight WarningHighlight +hi! link CocInfoHighlight InfoHighlight +hi! link CocHintHighlight HintHighlight + +hi! link CocSem_angle Keyword +hi! link CocSem_annotation Keyword +hi! link CocSem_attribute Type +hi! link CocSem_bitwise Keyword +hi! link CocSem_boolean Boolean +hi! link CocSem_brace Normal +hi! link CocSem_bracket Normal +hi! link CocSem_builtinAttribute Type +hi! link CocSem_builtinType Type +hi! link CocSem_character String +hi! link CocSem_class Structure +hi! link CocSem_colon Normal +hi! link CocSem_comma Normal +hi! link CocSem_comment Comment +hi! link CocSem_comparison Keyword +hi! link CocSem_concept Keyword +hi! link CocSem_constParameter Identifier +hi! link CocSem_dependent Keyword +hi! link CocSem_dot Keyword +hi! link CocSem_enum Structure +hi! link CocSem_enumMember Constant +hi! link CocSem_escapeSequence Type +hi! link CocSem_event Identifier +hi! link CocSem_formatSpecifier Type +hi! link CocSem_function Function +hi! link CocSem_interface Type +hi! link CocSem_keyword Keyword +hi! link CocSem_label Keyword +hi! link CocSem_logical Keyword +hi! link CocSem_macro Macro +hi! link CocSem_method Function +hi! link CocSem_modifier Keyword +hi! link CocSem_namespace Identifier +hi! link CocSem_number Number +hi! link CocSem_operator Operator +hi! link CocSem_parameter Identifier +hi! link CocSem_parenthesis Normal +hi! link CocSem_property Identifier +hi! link CocSem_punctuation Keyword +hi! link CocSem_regexp Type +hi! link CocSem_selfKeyword Constant +hi! link CocSem_semicolon Normal +hi! link CocSem_string String +hi! link CocSem_struct Structure +hi! link CocSem_type Type +hi! link CocSem_typeAlias Type +hi! link CocSem_typeParameter Type +hi! link CocSem_unknown Normal +hi! link CocSem_variable Identifier + +call hi("CocHighlightRead", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "") +call hi("CocHighlightText", s:gui0A, s:gui01, s:cterm0A, s:cterm01, "", "") +call hi("CocHighlightWrite", s:gui08, s:gui01, s:cterm08, s:cterm01, "", "") +call hi("CocListMode", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "bold", "") +call hi("CocListPath", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "", "") +call hi("CocSessionsName", s:gui06, "", s:cterm05, "", "", "") + +" CSS +hi! link cssBraces ThemeBlue +hi! link cssFunctionName ThemeYellow +hi! link cssIdentifier ThemeOrange +hi! link cssClassName ThemeGreen +hi! link cssColor ThemeBlue +hi! link cssSelectorOp ThemeBlue +hi! link cssSelectorOp2 ThemeBlue +hi! link cssImportant ThemeGreen +hi! link cssVendor ThemeFg1 + +hi! link cssTextProp ThemeCyan +hi! link cssAnimationProp ThemeCyan +hi! link cssUIProp ThemeYellow +hi! link cssTransformProp ThemeCyan +hi! link cssTransitionProp ThemeCyan +hi! link cssPrintProp ThemeCyan +hi! link cssPositioningProp ThemeYellow +hi! link cssBoxProp ThemeCyan +hi! link cssFontDescriptorProp ThemeCyan +hi! link cssFlexibleBoxProp ThemeCyan +hi! link cssBorderOutlineProp ThemeCyan +hi! link cssBackgroundProp ThemeCyan +hi! link cssMarginProp ThemeCyan +hi! link cssListProp ThemeCyan +hi! link cssTableProp ThemeCyan +hi! link cssFontProp ThemeCyan +hi! link cssPaddingProp ThemeCyan +hi! link cssDimensionProp ThemeCyan +hi! link cssRenderProp ThemeCyan +hi! link cssColorProp ThemeCyan +hi! link cssGeneratedContentProp ThemeCyan + + +" CMP +hi! link CmpItemAbbrDeprecated Deprecated +hi! link CmpItemAbbrMatch SearchMatch +hi! link CmpItemAbbrMatchFuzzy SearchMatch +hi! link CmpItemKindClass Type +hi! link CmpItemKindColor Keyword +hi! link CmpItemKindConstant Constant +hi! link CmpItemKindConstructor Special +hi! link CmpItemKindEnum Type +hi! link CmpItemKindEnumMember Constant +hi! link CmpItemKindEvent Identifier +hi! link CmpItemKindField Character +hi! link CmpItemKindFile Directory +hi! link CmpItemKindFolder Directory +hi! link CmpItemKindFunction Function +hi! link CmpItemKindInterface Type +hi! link CmpItemKindKeyword Keyword +hi! link CmpItemKindMethod Function +hi! link CmpItemKindModule Namespace +hi! link CmpItemKindOperator Operator +hi! link CmpItemKindProperty Identifier +hi! link CmpItemKindReference Character +hi! link CmpItemKindSnippet String +hi! link CmpItemKindStruct Type +hi! link CmpItemKindText Text +hi! link CmpItemKindUnit Namespace +hi! link CmpItemKindValue Comment +hi! link CmpItemKindVariable Identifier + +if has("nvim-0.8.0") + hi! link CmpItemKindField @field + hi! link CmpItemKindProperty @property +endif + +" Diff +call hi("DiffAdd", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "") +call hi("DiffChange", s:gui06, s:gui01, s:cterm05, s:cterm01, "", "") +call hi("DiffDelete", s:gui02, s:guibg, s:cterm02, s:ctermbg, "", "") +call hi("DiffText", s:gui0D, s:gui01, s:cterm0D, s:cterm01, "", "") +call hi("DiffAdded", s:gui0B, s:guibg, s:cterm0B, s:ctermbg, "", "") +call hi("DiffFile", s:gui08, s:guibg, s:cterm08, s:ctermbg, "", "") +call hi("DiffNewFile", s:gui0B, s:guibg, s:cterm0B, s:ctermbg, "", "") +call hi("DiffLine", s:gui0D, s:guibg, s:cterm0D, s:ctermbg, "", "") +call hi("DiffRemoved", s:gui08, s:guibg, s:cterm08, s:ctermbg, "", "") + +" Git +call hi("gitcommitOverflow", s:gui08, "", s:cterm08, "", "", "") +call hi("gitcommitSummary", s:gui0B, "", s:cterm0B, "", "", "") +call hi("gitcommitComment", s:gui03, "", s:cterm03, "", "", "") +call hi("gitcommitUntracked", s:gui03, "", s:cterm03, "", "", "") +call hi("gitcommitDiscarded", s:gui03, "", s:cterm03, "", "", "") +call hi("gitcommitSelected", s:gui03, "", s:cterm03, "", "", "") +call hi("gitcommitHeader", s:gui0E, "", s:cterm0E, "", "", "") +call hi("gitcommitSelectedType", s:gui0D, "", s:cterm0D, "", "", "") +call hi("gitcommitUnmergedType", s:gui0D, "", s:cterm0D, "", "", "") +call hi("gitcommitDiscardedType", s:gui0D, "", s:cterm0D, "", "", "") +call hi("gitcommitBranch", s:gui09, "", s:cterm09, "", "bold", "") +call hi("gitcommitUntrackedFile", s:gui0A, "", s:cterm0A, "", "", "") +call hi("gitcommitUnmergedFile", s:gui08, "", s:cterm08, "", "bold", "") +call hi("gitcommitDiscardedFile", s:gui08, "", s:cterm08, "", "bold", "") +call hi("gitcommitSelectedFile", s:gui0B, "", s:cterm0B, "", "bold", "") + +" GitGutter +hi! link GitGutterAdd GitAddSign +hi! link GitGutterChange GitChangeSign +hi! link GitGutterDelete GitDeleteSign +hi! link GitGutterChangeDelete GitChangeDeleteSign + +" indent-blankline (nvim) +if has("nvim") + call hi("@ibl.indent.char.1",s:gui01, "", s:cterm01, "", "", "") +endif + +" HTML +call hi("htmlBold", s:gui07, "", s:cterm0A, "", "bold", "") +call hi("htmlItalic", s:gui06, "", s:cterm0E, "", "italic", "") +call hi("htmlEndTag", s:gui06, "", s:cterm05, "", "", "") +call hi("htmlTag", s:gui06, "", s:cterm05, "", "", "") + +" JavaScript +call hi("javaScript", s:gui06, "", s:cterm05, "", "", "") +call hi("javaScriptBraces", s:gui06, "", s:cterm05, "", "", "") +call hi("javaScriptNumber", s:gui09, "", s:cterm09, "", "", "") +" pangloss/vim-javascript +call hi("jsOperator", s:gui0D, "", s:cterm0D, "", "", "") +call hi("jsStatement", s:gui0E, "", s:cterm0E, "", "", "") +call hi("jsReturn", s:gui0E, "", s:cterm0E, "", "", "") +call hi("jsThis", s:gui08, "", s:cterm08, "", "", "") +call hi("jsClassDefinition", s:gui0A, "", s:cterm0A, "", "", "") +call hi("jsFunction", s:gui0E, "", s:cterm0E, "", "", "") +call hi("jsFuncName", s:gui0D, "", s:cterm0D, "", "", "") +call hi("jsFuncCall", s:gui0D, "", s:cterm0D, "", "", "") +call hi("jsClassFuncName", s:gui0D, "", s:cterm0D, "", "", "") +call hi("jsClassMethodType", s:gui0E, "", s:cterm0E, "", "", "") +call hi("jsRegexpString", s:gui0C, "", s:cterm0C, "", "", "") +call hi("jsGlobalObjects", s:gui0A, "", s:cterm0A, "", "", "") +call hi("jsGlobalNodeObjects", s:gui0A, "", s:cterm0A, "", "", "") +call hi("jsExceptions", s:gui0A, "", s:cterm0A, "", "", "") +call hi("jsBuiltins", s:gui0A, "", s:cterm0A, "", "", "") + +" Mail +call hi("mailQuoted1", s:gui0A, "", s:cterm0A, "", "", "") +call hi("mailQuoted2", s:gui0B, "", s:cterm0B, "", "", "") +call hi("mailQuoted3", s:gui0E, "", s:cterm0E, "", "", "") +call hi("mailQuoted4", s:gui0C, "", s:cterm0C, "", "", "") +call hi("mailQuoted5", s:gui0D, "", s:cterm0D, "", "", "") +call hi("mailQuoted6", s:gui0A, "", s:cterm0A, "", "", "") +call hi("mailURL", s:gui0D, "", s:cterm0D, "", "", "") +call hi("mailEmail", s:gui0D, "", s:cterm0D, "", "", "") + +" Markdown +call hi("markdownCode", s:gui0B, "", s:cterm0B, "", "", "") +call hi("markdownError", s:gui06, s:guibg, s:cterm05, s:ctermbg, "", "") +call hi("markdownCodeBlock", s:gui0B, "", s:cterm0B, "", "", "") +call hi("markdownHeadingDelimiter", s:gui0D, "", s:cterm0D, "", "", "") + +" Matchup +call hi("MatchWord", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "underline", "") + +" NERDTree +call hi("NERDTreeDirSlash", s:gui0D, "", s:cterm0D, "", "", "") +call hi("NERDTreeExecFile", s:gui06, "", s:cterm05, "", "", "") + +" Netrw +hi! link netrwDir ThemeCyan +hi! link netrwClassify ThemeCyan +hi! link netrwLink ThemeBg3 +hi! link netrwSymLink ThemeFg1 +hi! link netrwExe ThemeYellow +hi! link netrwComment ThemeBg3 +hi! link netrwList ThemeBlue +hi! link netrwHelpCmd ThemeCyan +hi! link netrwCmdSep ThemeFg3 +hi! link netrwVersion ThemeGreen + +" PHP +call hi("phpMemberSelector", s:gui06, "", s:cterm05, "", "", "") +call hi("phpComparison", s:gui06, "", s:cterm05, "", "", "") +call hi("phpParent", s:gui06, "", s:cterm05, "", "", "") +call hi("phpMethodsVar", s:gui0C, "", s:cterm0C, "", "", "") + +" Python +"call hi("pythonOperator", s:gui0E, "", s:cterm0E, "", "", "") +"call hi("pythonRepeat", s:gui0E, "", s:cterm0E, "", "", "") +"call hi("pythonInclude", s:gui0E, "", s:cterm0E, "", "", "") +"call hi("pythonStatement", s:gui0E, "", s:cterm0E, "", "", "") + +" hi! link pythonBuiltin ThemeCyan +" hi! link pythonBuiltinObj ThemeCyan +" hi! link pythonBuiltinFunc ThemeGreen +" hi! link pythonFunction Function +hi! link pythonDecorator ThemeYellow +hi! link pythonDecoratorName ThemeYellow +" hi! link pythonTripleQuotes ThemeGreenItalic +" hi! link pythonInclude ThemeBlue +" hi! link pythonImport ThemeBlue +" hi! link pythonRun ThemeBlue +" hi! link pythonCoding ThemeBlue +" hi! link pythonOperator ThemeRed +" hi! link pythonException ThemeRed +" hi! link pythonExceptions ThemeYellow +" hi! link pythonBoolean ThemeYellow +" hi! link pythonDot ThemeFg3 +" hi! link pythonConditional ThemeCyan +" hi! link pythonRepeat ThemeRed +" hi! link pythonDottedName ThemeGreen + + +" Ruby +call hi("rubyAttribute", s:gui0D, "", s:cterm0D, "", "", "") +call hi("rubyConstant", s:gui0A, "", s:cterm0A, "", "", "") +call hi("rubyInterpolationDelimiter", s:gui0F, "", s:cterm0F, "", "", "") +call hi("rubyRegexp", s:gui0C, "", s:cterm0C, "", "", "") +call hi("rubySymbol", s:gui0B, "", s:cterm0B, "", "", "") +call hi("rubyStringDelimiter", s:gui0B, "", s:cterm0B, "", "", "") + +" SASS +call hi("sassidChar", s:gui08, "", s:cterm08, "", "", "") +call hi("sassClassChar", s:gui09, "", s:cterm09, "", "", "") +call hi("sassInclude", s:gui0E, "", s:cterm0E, "", "", "") +call hi("sassMixing", s:gui0E, "", s:cterm0E, "", "", "") +call hi("sassMixinName", s:gui0D, "", s:cterm0D, "", "", "") + +" Signify +hi! link SignifySignAdd GitAddSign +hi! link SignifySignChange GitChangeSign +hi! link SignifySignDelete GitDeleteSign + +" Startify +call hi("StartifyBracket", s:gui03, "", s:cterm03, "", "", "") +call hi("StartifyFile", s:gui07, "", s:cterm07, "", "", "") +call hi("StartifyFooter", s:gui03, "", s:cterm03, "", "", "") +call hi("StartifyHeader", s:gui0B, "", s:cterm0B, "", "", "") +call hi("StartifyNumber", s:gui09, "", s:cterm09, "", "", "") +call hi("StartifyPath", s:gui03, "", s:cterm03, "", "", "") +call hi("StartifySection", s:gui0E, "", s:cterm0E, "", "", "") +call hi("StartifySelect", s:gui0C, "", s:cterm0C, "", "", "") +call hi("StartifySlash", s:gui03, "", s:cterm03, "", "", "") +call hi("StartifySpecial", s:gui03, "", s:cterm03, "", "", "") + +" LSP +if has("nvim") + hi! link DiagnosticError ErrorSign + hi! link DiagnosticWarn WarningSign + hi! link DiagnosticInfo InfoSign + hi! link DiagnosticHint HintSign + hi! link DiagnosticOk OkSign + + hi! link DiagnosticFloatingError ErrorFloat + hi! link DiagnosticFloatingWarn WarningFloat + hi! link DiagnosticFloatingInfo InfoFloat + hi! link DiagnosticFloatingHint HintFloat + hi! link DiagnosticFloatingOk OkFloat + + hi! link DiagnosticUnderlineError ErrorHighlight + hi! link DiagnosticUnderlineWarn WarningHighlight + hi! link DiagnosticUnderlineInfo InfoHighlight + hi! link DiagnosticUnderlineHint HintHighlight + hi! link DiagnosticUnderlineOk OkHighlight + + hi! link DiagnosticsVirtualTextError ErrorSign + hi! link DiagnosticsVirtualTextWarning WarningSign + hi! link DiagnosticsVirtualTextInfo InfoSign + hi! link DiagnosticsVirtualTextHint HintSign + hi! link DiagnosticsVirtualTextOk OkSign + + " Remove untill endif on next nvim release + hi! link LspDiagnosticsSignError ErrorSign + hi! link LspDiagnosticsSignWarning WarningSign + hi! link LspDiagnosticsSignInfo InfoSign + hi! link LspDiagnosticsSignHint HintSign + + hi! link LspDiagnosticsVirtualTextError ErrorSign + hi! link LspDiagnosticsVirtualTextWarning WarningSign + hi! link LspDiagnosticsVirtualTextInfo InfoSign + hi! link LspDiagnosticsVirtualTextHint HintSign + + hi! link LspDiagnosticsFloatingError ErrorFloat + hi! link LspDiagnosticsFloatingWarning WarningFloat + hi! link LspDiagnosticsFloatingInfo InfoFloat + hi! link LspDiagnosticsFloatingHint HintFloat + + hi! link LspDiagnosticsUnderlineError ErrorHighlight + hi! link LspDiagnosticsUnderlineWarning WarningHighlight + hi! link LspDiagnosticsUnderlineInfo InfoHighlight + hi! link LspDiagnosticsUnderlineHint HintHighlight + + hi! link LspReferenceText ReferenceText + hi! link LspReferenceRead ReferenceRead + hi! link LspReferenceWrite ReferenceWrite +endif + +" Java +call hi("javaOperator", s:gui0D, "", s:cterm0D, "", "", "") + +" JSON +hi! link jsonKeyword ThemeGreen +hi! link jsonQuote ThemeGreen +hi! link jsonBraces ThemeFg1 +hi! link jsonString ThemeFg1 + +" Markdown +hi! link markdownH1 ThemeRedBold +hi! link markdownH2 ThemeRed +hi! link markdownH3 ThemeRed +hi! link markdownH4 ThemeRed +hi! link markdownH5 ThemeRed +hi! link markdownH6 ThemeRed + +hi! link markdownCode ThemeYellow +hi! link markdownCodeBlock ThemeYellow +hi! link markdownCodeDelimiter ThemeYellow + +hi! link markdownBlockquote ThemeGrey +hi! link markdownListMarker ThemeBlue +hi! link markdownOrderedListMarker ThemeBlue +hi! link markdownRule ThemeGrey +hi! link markdownHeadingRule ThemeGrey + +hi! link markdownUrlDelimiter ThemeFg3 +hi! link markdownLinkDelimiter ThemeFg3 +hi! link markdownLinkTextDelimiter ThemeFg3 +hi! link markdownHeadingDelimiter ThemeOrange +hi! link markdownUrlTitleDelimiter ThemeGreen + +hi! link markdownLink ThemeGreen +hi! link markdownWikiLink ThemeViolet +hi! link markdownUrl ThemeOrange +hi! link markdownInlineUrl ThemeOrange + +hi! link markdownLinkText ThemeViolet +hi! link markdownIdDeclaration markdownLinkText + +"call s:HL('markdownItalic', s:fg3, s:none, s:italic) +"call s:HL('markdownLinkText', s:gray, s:none, s:underline) + + +" Remove functions +delf hi + +" Remove color variables +unlet s:gui00 s:gui01 s:gui02 s:gui03 s:gui04 s:gui05 s:gui06 s:gui07 s:gui08 s:gui09 s:gui0A s:gui0B s:gui0C s:gui0D s:gui0E s:gui0F s:guibg +unlet s:cterm00 s:cterm01 s:cterm02 s:cterm03 s:cterm04 s:cterm05 s:cterm06 s:cterm07 s:cterm08 s:cterm09 s:cterm0A s:cterm0B s:cterm0C s:cterm0D s:cterm0E s:cterm0F s:ctermbg diff --git a/apps/nvim/hard-savanna-monobiome-dark.vim b/apps/nvim/hard-savanna-monobiome-dark.vim new file mode 100644 index 0000000..21dfa75 --- /dev/null +++ b/apps/nvim/hard-savanna-monobiome-dark.vim @@ -0,0 +1,882 @@ +" vi:syntax=vim +" +" Top-level remarks: +" +" - `hi` sets highlight colors for syntax groups, allowing one to specify fg and bg colors +" for GUI and terminal Vim. +" - `link` allows for linking one syntax group to another, reusing the same color +" settings. Language-specific groups can then point to one of the base color highlight +" groups, for example, without needing to repeat the raw color values. + +" GUI color definitions +let s:gui00 = "#181610" +let g:base16_gui00 = "#181610" +let s:gui01 = "#24211c" +let g:base16_gui01 = "#24211c" +let s:gui02 = "#302e28" +let g:base16_gui02 = "#302e28" +let s:gui03 = "#3d3a34" +let g:base16_gui03 = "#3d3a34" +let s:gui04 = "#a19e97" +let g:base16_gui04 = "#a19e97" +let s:gui05 = "#b0aea6" +let g:base16_gui05 = "#b0aea6" +let s:gui06 = "#c0bdb6" +let g:base16_gui06 = "#c0bdb6" +let s:gui07 = "#d0cec6" +let g:base16_gui07 = "#d0cec6" +let s:gui08 = "#dc4134" +let g:base16_gui08 = "#dc4134" +let s:gui09 = "#b86b05" +let g:base16_gui09 = "#b86b05" +let s:gui0A = "#888346" +let g:base16_gui0A = "#888346" +let s:gui0B = "#4f925a" +let g:base16_gui0B = "#4f925a" +let s:gui0C = "#4f925a" +let g:base16_gui0C = "#4f925a" +let s:gui0D = "#557ecc" +let g:base16_gui0D = "#557ecc" +let s:gui0E = "#557ecc" +let g:base16_gui0E = "#557ecc" +let s:gui0F = "#dc4134" +let g:base16_gui0F = "#dc4134" + +let s:grey = "#74716a" + +" Terminal color definitions +let s:cterm00 = "00" +let g:base16_cterm00 = "00" +let s:cterm03 = "08" +let g:base16_cterm03 = "08" +let s:cterm05 = "07" +let g:base16_cterm05 = "07" +let s:cterm07 = "15" +let g:base16_cterm07 = "15" +let s:cterm08 = "01" +let g:base16_cterm08 = "01" +let s:cterm0A = "03" +let g:base16_cterm0A = "03" +let s:cterm0B = "02" +let g:base16_cterm0B = "02" +let s:cterm0C = "06" +let g:base16_cterm0C = "06" +let s:cterm0D = "04" +let g:base16_cterm0D = "04" +let s:cterm0E = "05" +let g:base16_cterm0E = "05" + +let s:cterm01 = "10" +let g:base16_cterm01 = "10" +let s:cterm02 = "11" +let g:base16_cterm02 = "11" +let s:cterm04 = "12" +let g:base16_cterm04 = "12" +let s:cterm06 = "13" +let g:base16_cterm06 = "13" +let s:cterm09 = "09" +let g:base16_cterm09 = "09" +let s:cterm0F = "14" +let g:base16_cterm0F = "14" + +" Neovim terminal colours +if has("nvim") + let g:terminal_color_0 = "#181610" + let g:terminal_color_1 = "#dc4134" + let g:terminal_color_2 = "#4f925a" + let g:terminal_color_3 = "#888346" + let g:terminal_color_4 = "#557ecc" + let g:terminal_color_5 = "#557ecc" + let g:terminal_color_6 = "#4f925a" + let g:terminal_color_7 = "#b0aea6" + let g:terminal_color_8 = "#3d3a34" + let g:terminal_color_9 = "#dc4134" + let g:terminal_color_10 = "#4f925a" + let g:terminal_color_11 = "#888346" + let g:terminal_color_12 = "#557ecc" + let g:terminal_color_13 = "#557ecc" + let g:terminal_color_14 = "#4f925a" + let g:terminal_color_15 = "#d0cec6" + let g:terminal_color_background = g:terminal_color_0 + let g:terminal_color_foreground = g:terminal_color_5 + + if &background == "light" + let g:terminal_color_background = g:terminal_color_7 + let g:terminal_color_foreground = g:terminal_color_2 + endif + +elseif has("terminal") + let g:terminal_ansi_colors = [ + \ "#181610", + \ "#dc4134", + \ "#4f925a", + \ "#888346", + \ "#557ecc", + \ "#557ecc", + \ "#4f925a", + \ "#b0aea6", + \ "#3d3a34", + \ "#dc4134", + \ "#4f925a", + \ "#888346", + \ "#557ecc", + \ "#557ecc", + \ "#4f925a", + \ "#d0cec6", + \ ] +endif + +let s:guibg = s:gui00 +let s:ctermbg = s:cterm00 + +" Theme setup +hi clear +syntax reset +let g:colors_name = "active" + +" Highlighting function +" Optional variables are attributes and guisp +function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) + " For a given syntax group, sets the GUI and terminal foreground and backgrounds + " Optional parameters are interpreted as `attr` and `guisp`, the first of which appears + " to be a modifier for the group (e.g., bold, italic), and `guisp` appears to be + " 'special' colors used for underlines in the GUI. + let l:attr = get(a:, 1, "") + let l:guisp = get(a:, 2, "") + + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + + if a:guifg != "" + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=" . a:guifg + endif + endif + + if a:guibg != "" + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=" . a:guibg + endif + endif + + if a:ctermfg != "" + exec "hi " . a:group . " ctermfg=" . a:ctermfg + endif + + if a:ctermbg != "" + exec "hi " . a:group . " ctermbg=" . a:ctermbg + endif + + if l:attr != "" + exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr + endif + + if l:guisp != "" + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=" . l:guisp + endif + endif +endfunction + + +fun hi(group, guifg, guibg, ctermfg, ctermbg, attr, guisp) + call g:Base16hi(a:group, a:guifg, a:guibg, a:ctermfg, a:ctermbg, a:attr, a:guisp) +endfun + + +" color groups for interpretability +call hi("ThemeBg0", s:gui00, "", s:cterm00, "", "", "") +call hi("ThemeBg1", s:gui01, "", s:cterm01, "", "", "") +call hi("ThemeBg2", s:gui02, "", s:cterm02, "", "", "") +call hi("ThemeBg3", s:gui03, "", s:cterm03, "", "", "") +call hi("ThemeFg3", s:gui04, "", s:cterm04, "", "", "") +call hi("ThemeFg2", s:gui05, "", s:cterm05, "", "", "") +call hi("ThemeFg1", s:gui06, "", s:cterm06, "", "", "") +call hi("ThemeFg0", s:gui07, "", s:cterm07, "", "", "") +" +call hi("ThemeRed", s:gui08, "", s:cterm08, "", "", "") +call hi("ThemeOrange", s:gui09, "", s:cterm09, "", "", "") +call hi("ThemeYellow", s:gui0A, "", s:cterm0A, "", "", "") +call hi("ThemeGreen", s:gui0B, "", s:cterm0B, "", "", "") +call hi("ThemeCyan", s:gui0C, "", s:cterm0C, "", "", "") +call hi("ThemeBlue", s:gui0D, "", s:cterm0D, "", "", "") +call hi("ThemeViolet", s:gui0E, "", s:cterm0E, "", "", "") +call hi("ThemeMagenta", s:gui0F, "", s:cterm0F, "", "", "") + +call hi("ThemeRedBold", s:gui08, "", s:cterm08, "", "bold", "") +call hi("ThemeOrangeBold", s:gui09, "", s:cterm09, "", "bold", "") +call hi("ThemeYellowBold", s:gui0A, "", s:cterm0A, "", "bold", "") +call hi("ThemeGreenBold", s:gui0B, "", s:cterm0B, "", "bold", "") +call hi("ThemeCyanBold", s:gui0C, "", s:cterm0C, "", "bold", "") +call hi("ThemeBlueBold", s:gui0D, "", s:cterm0D, "", "bold", "") +call hi("ThemeVioletBold", s:gui0E, "", s:cterm0E, "", "bold", "") +call hi("ThemeMagentaBold", s:gui0F, "", s:cterm0F, "", "bold", "") + +call hi("ThemeRedItalic", s:gui08, "", s:cterm08, "", "italic", "") +call hi("ThemeOrangeItalic", s:gui09, "", s:cterm09, "", "italic", "") +call hi("ThemeYellowItalic", s:gui0A, "", s:cterm0A, "", "italic", "") +call hi("ThemeGreenItalic", s:gui0B, "", s:cterm0B, "", "italic", "") +call hi("ThemeCyanItalic", s:gui0C, "", s:cterm0C, "", "italic", "") +call hi("ThemeBlueItalic", s:gui0D, "", s:cterm0D, "", "italic", "") +call hi("ThemeVioletItalic", s:gui0E, "", s:cterm0E, "", "italic", "") +call hi("ThemeMagentaItalic", s:gui0F, "", s:cterm0F, "", "italic", "") + +call hi("ThemeGrey", s:grey, "", s:cterm03, "", "", "") +call hi("ThemeGreyItalic", s:grey, "", s:cterm03, "", "italic", "") + + +" Vim editor colors +call hi("Normal", s:gui05, s:guibg, s:cterm05, s:ctermbg, "", "") +call hi("Bold", "", "", "", "", "bold", "") +call hi("Debug", s:gui08, "", s:cterm08, "", "", "") +call hi("Directory", s:gui0D, "", s:cterm0D, "", "", "") +call hi("Error", s:guibg, s:gui08, s:ctermbg, s:cterm08, "", "") +call hi("ErrorMsg", s:gui08, s:guibg, s:cterm08, s:ctermbg, "", "") +call hi("Exception", s:gui08, "", s:cterm08, "", "", "") +call hi("FoldColumn", s:gui03, s:guibg, s:cterm03, s:ctermbg, "", "") +call hi("Folded", s:gui02, s:guibg, s:cterm02, s:ctermbg, "", "") +call hi("IncSearch", s:gui01, s:gui09, s:cterm01, s:cterm09, "none", "") +call hi("Italic", "", "", "", "", "italic", "") +call hi("Macro", s:gui0C, "", s:cterm0C, "", "", "") +call hi("MatchParen", "", s:gui03, "", s:cterm03, "", "") +call hi("ModeMsg", s:gui0B, "", s:cterm0B, "", "", "") +call hi("MoreMsg", s:gui0B, "", s:cterm0B, "", "", "") +call hi("Question", s:gui0D, "", s:cterm0D, "", "", "") +call hi("Search", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "", "") +call hi("Substitute", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "none", "") +call hi("SpecialKey", s:gui03, "", s:cterm03, "", "", "") +call hi("TooLong", s:gui08, "", s:cterm08, "", "", "") +call hi("Underlined", "", "", "", "", "underline", "fg") +call hi("Visual", "", s:gui02, "", s:cterm02, "", "") +call hi("VisualNOS", s:gui08, "", s:cterm08, "", "", "") +call hi("WarningMsg", s:gui08, "", s:cterm08, "", "", "") +call hi("WildMenu", s:guibg, s:gui06, s:ctermbg, s:cterm05, "", "") +call hi("Title", s:gui0D, "", s:cterm0D, "", "none", "") +call hi("Conceal", s:gui0D, s:guibg, s:cterm0D, s:ctermbg, "", "") +call hi("Cursor", s:gui05, s:guibg, "", "", "inverse", "") +call hi("NonText", s:gui03, "", s:cterm03, "", "", "") +call hi("Whitespace", s:gui03, "", s:cterm03, "", "", "") +call hi("LineNr", s:gui03, s:guibg, s:cterm03, s:ctermbg, "", "") +call hi("SignColumn", s:gui03, s:guibg, s:cterm03, s:ctermbg, "", "") +call hi("StatusLine", s:gui07, s:gui01, s:cterm07, s:cterm01, "none", "") +call hi("StatusLineNC", s:gui06, s:gui01, s:cterm05, s:cterm01, "none", "") +call hi("VertSplit", s:gui01, s:guibg, s:cterm01, s:ctermbg, "none", "") +call hi("ColorColumn", "", s:gui01, "", s:cterm01, "none", "") +call hi("CursorColumn", "", s:gui01, "", s:cterm01, "none", "") +call hi("CursorLine", "", s:gui01, "", s:cterm01, "none", "") +call hi("CursorLineNr", s:gui04, s:gui01, s:cterm04, s:cterm01, "bold", "") +call hi("QuickFixLine", "", s:gui01, "", s:cterm01, "none", "") +call hi("PMenu", s:gui06, s:gui01, s:cterm06, s:cterm01, "none", "") +call hi("PMenuSel", s:gui06, s:gui02, s:cterm06, s:cterm02, "", "") +call hi("PMenuSbar", "", s:gui03, "", s:cterm03, "", "") +call hi("PMenuThumb", "", s:gui04, "", s:cterm04, "", "") +call hi("TabLine", s:gui03, s:gui01, s:cterm03, s:cterm01, "none", "") +call hi("TabLineFill", s:gui03, s:gui01, s:cterm03, s:cterm01, "none", "") +call hi("TabLineSel", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "none", "") + +" Standard syntax +hi! link Boolean ThemeOrange +hi! link Character ThemeRed + +"call hi("Comment", s:gui03, "", s:cterm03, "", "italic", "") +hi! link Comment ThemeGreyItalic + +hi! link Conditional ThemeRed +hi! link Constant ThemeOrange +call hi("Define", s:gui0E, "", s:cterm0E, "", "none", "") +hi! link Delimiter ThemeFg1 + +if has("patch-8.0.1038") + call hi("Deprecated", "", "", "", "", "strikethrough", "") +endif + +hi! link Float ThemeOrange +hi! link Function ThemeBlue +call hi("Identifier", s:gui06, "", s:cterm05, "", "none", "") +hi! link Include ThemeBlue +hi! link Constant ThemeOrange +call hi("Keyword", s:gui0E, "", s:cterm0E, "", "none", "") +hi! link Label ThemeOrange +hi! link Number ThemeOrange +hi! link Operator ThemeYellow +hi! link PreProc ThemeOrange +hi! link Repeat ThemeViolet +hi! link Special ThemeYellow +hi! link SpecialChar ThemeMagenta +hi! link Statement ThemeRed +hi! link StorageClass ThemeOrange +hi! link String ThemeGreen +hi! link Structure ThemeOrange +hi! link Tag ThemeOrange + +call hi("Todo", s:gui08, s:guibg, s:cterm08, s:ctermbg, "italic", "") +call hi("Type", s:gui0A, "", s:cterm0A, "", "none", "") + +hi! link Typedef ThemeOrange + + +" Treesitter +if has("nvim-0.8.0") + call hi("@field", s:gui08, "", s:cterm08, "", "", "") + call hi("@property", s:gui08, "", s:cterm08, "", "", "") + call hi("@namespace", s:gui06, "", s:cterm05, "", "italic", "") + call hi("@variable.builtin", s:gui06, "", s:cterm05, "", "italic", "") + call hi("@text.reference", s:gui08, "", s:cterm08, "", "", "") + call hi("@text.uri", s:gui08, "", s:cterm08, "", "italic", "") + + " Annotations & Attributes + call hi("@annotation", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@attribute", s:gui0D, "", s:cterm0D, "", "", "") + + " Booleans, Characters & Comments + call hi("@boolean", s:gui09, "", s:cterm09, "", "", "") + call hi("@character", s:gui08, "", s:cterm08, "", "", "") + call hi("@character.special", s:gui0F, "", s:cterm0F, "", "", "") + call hi("@comment", s:gui03, "", s:cterm03, "", "", "") + + " Conditionals, Constants & Debugging + call hi("@keyword.conditional", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@constant", s:gui09, "", s:cterm09, "", "", "") + call hi("@constant.builtin", s:gui09, "", s:cterm09, "", "", "") + call hi("@constant.macro", s:gui08, "", s:cterm08, "", "", "") + call hi("@keyword.debug", s:gui08, "", s:cterm08, "", "", "") + + " Directives & Exceptions + call hi("@keyword.directive.define", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@keyword.exception", s:gui0E, "", s:cterm0E, "", "", "") + + " Floats & Functions + call hi("@number.float", s:gui09, "", s:cterm09, "", "", "") + call hi("@function", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@function.builtin", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@function.call", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@function.macro", s:gui08, "", s:cterm08, "", "", "") + + " Imports, Operators & Returns + call hi("@keyword.import", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@keyword.coroutine", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@keyword.operator", s:gui06, "", s:cterm05, "", "", "") + call hi("@keyword.return", s:gui0E, "", s:cterm0E, "", "", "") + + " Methods & Namespaces + call hi("@function.method", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@function.method.call", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@namespace.builtin", s:gui0E, "", s:cterm0E, "", "", "") + + " Numbers & Directives + call hi("@none", s:gui06, "", s:cterm05, "", "", "") + call hi("@number", s:gui09, "", s:cterm09, "", "", "") + call hi("@keyword.directive", s:gui0E, "", s:cterm0E, "", "", "") + + " Repeats, Storage & Strings + call hi("@keyword.repeat", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@keyword.storage", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@string", s:gui0B, "", s:cterm0B, "", "", "") + + " Tags & Markup + call hi("@markup.link.label", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.link.label.symbol", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@tag", s:gui08, "", s:cterm08, "", "", "") + call hi("@tag.attribute", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@tag.delimiter", s:gui0F, "", s:cterm0F, "", "", "") + + " More Markup + call hi("@markup", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.environment", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.environment.name", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.raw", s:gui09, "", s:cterm09, "", "", "") + call hi("@markup.math", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.strong", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.emphasis", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.strikethrough", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.underline", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.heading", s:gui0D, "", s:cterm0D, "", "", "") + + " Comments & Types + call hi("@comment.note", s:gui03, "", s:cterm03, "", "", "") + call hi("@comment.error", s:gui08, "", s:cterm08, "", "", "") + call hi("@comment.hint", s:gui0B, "", s:cterm0B, "", "", "") + call hi("@comment.info", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@comment.warning", s:gui09, "", s:cterm09, "", "", "") + call hi("@comment.todo", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.link.url", s:gui09, "", s:cterm09, "", "", "") + call hi("@type", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@type.definition", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@type.qualifier", s:gui0E, "", s:cterm0E, "", "", "") +endif + +" Standard highlights to be used by plugins +if has("patch-8.0.1038") + call hi("Deprecated", "", "", "", "", "strikethrough", "") +endif +call hi("SearchMatch", s:gui0C, "", s:cterm0C, "", "", "") + +call hi("GitAddSign", s:gui0B, "", s:cterm0B, "", "", "") +call hi("GitChangeSign", s:gui04, "", s:cterm04, "", "", "") +call hi("GitDeleteSign", s:gui08, "", s:cterm08, "", "", "") +call hi("GitChangeDeleteSign", s:gui04, "", s:cterm04, "", "", "") + +call hi("ErrorSign", s:gui08, "", s:cterm08, "", "", "") +call hi("WarningSign", s:gui09, "", s:cterm09, "", "", "") +call hi("InfoSign", s:gui0D, "", s:cterm0D, "", "", "") +call hi("HintSign", s:gui0C, "", s:cterm0C, "", "", "") +call hi("OkSign", s:gui0B, "", s:cterm0B, "", "", "") + +call hi("ErrorFloat", s:gui08, s:gui01, s:cterm08, s:cterm01, "", "") +call hi("WarningFloat", s:gui09, s:gui01, s:cterm09, s:cterm01, "", "") +call hi("InfoFloat", s:gui0D, s:gui01, s:cterm0D, s:cterm01, "", "") +call hi("HintFloat", s:gui0C, s:gui01, s:cterm0C, s:cterm01, "", "") +call hi("OkFloat", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "") + +call hi("ErrorHighlight", "", "", s:ctermbg, s:cterm08, "underline", s:gui08) +call hi("WarningHighlight", "", "", s:ctermbg, s:cterm09, "underline", s:gui09) +call hi("InfoHighlight", "", "", s:ctermbg, s:cterm0D, "underline", s:gui0D) +call hi("HintHighlight", "", "", s:ctermbg, s:cterm0C, "underline", s:gui0C) +call hi("OkHighlight", "", "", s:ctermbg, s:cterm0B, "underline", s:gui0B) + +call hi("SpellBad", "", "", s:ctermbg, s:cterm08, "undercurl", s:gui08) +call hi("SpellLocal", "", "", s:ctermbg, s:cterm0C, "undercurl", s:gui0C) +call hi("SpellCap", "", "", s:ctermbg, s:cterm0D, "undercurl", s:gui0D) +call hi("SpellRare", "", "", s:ctermbg, s:cterm0E, "undercurl", s:gui0E) + +call hi("ReferenceText", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "", "") +call hi("ReferenceRead", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "", "") +call hi("ReferenceWrite", s:gui01, s:gui08, s:cterm01, s:cterm08, "", "") + +" C +call hi("cOperator", s:gui0C, "", s:cterm0C, "", "", "") +call hi("cPreCondit", s:gui0E, "", s:cterm0E, "", "", "") + +" C# +call hi("csClass", s:gui0A, "", s:cterm0A, "", "", "") +call hi("csAttribute", s:gui0A, "", s:cterm0A, "", "", "") +call hi("csModifier", s:gui0E, "", s:cterm0E, "", "", "") +call hi("csType", s:gui08, "", s:cterm08, "", "", "") +call hi("csUnspecifiedStatement", s:gui0D, "", s:cterm0D, "", "", "") +call hi("csContextualStatement", s:gui0E, "", s:cterm0E, "", "", "") +call hi("csNewDecleration", s:gui08, "", s:cterm08, "", "", "") + +" Clap +hi! link ClapInput ColorColumn +hi! link ClapSpinner ColorColumn +hi! link ClapDisplay Default +hi! link ClapPreview ColorColumn +hi! link ClapCurrentSelection CursorLine +hi! link ClapNoMatchesFound ErrorFloat + +" Coc +hi! link CocErrorSign ErrorSign +hi! link CocWarningSign WarningSign +hi! link CocInfoSign InfoSign +hi! link CocHintSign HintSign + +hi! link CocErrorFloat ErrorFloat +hi! link CocWarningFloat WarningFloat +hi! link CocInfoFloat InfoFloat +hi! link CocHintFloat HintFloat + +hi! link CocErrorHighlight ErrorHighlight +hi! link CocWarningHighlight WarningHighlight +hi! link CocInfoHighlight InfoHighlight +hi! link CocHintHighlight HintHighlight + +hi! link CocSem_angle Keyword +hi! link CocSem_annotation Keyword +hi! link CocSem_attribute Type +hi! link CocSem_bitwise Keyword +hi! link CocSem_boolean Boolean +hi! link CocSem_brace Normal +hi! link CocSem_bracket Normal +hi! link CocSem_builtinAttribute Type +hi! link CocSem_builtinType Type +hi! link CocSem_character String +hi! link CocSem_class Structure +hi! link CocSem_colon Normal +hi! link CocSem_comma Normal +hi! link CocSem_comment Comment +hi! link CocSem_comparison Keyword +hi! link CocSem_concept Keyword +hi! link CocSem_constParameter Identifier +hi! link CocSem_dependent Keyword +hi! link CocSem_dot Keyword +hi! link CocSem_enum Structure +hi! link CocSem_enumMember Constant +hi! link CocSem_escapeSequence Type +hi! link CocSem_event Identifier +hi! link CocSem_formatSpecifier Type +hi! link CocSem_function Function +hi! link CocSem_interface Type +hi! link CocSem_keyword Keyword +hi! link CocSem_label Keyword +hi! link CocSem_logical Keyword +hi! link CocSem_macro Macro +hi! link CocSem_method Function +hi! link CocSem_modifier Keyword +hi! link CocSem_namespace Identifier +hi! link CocSem_number Number +hi! link CocSem_operator Operator +hi! link CocSem_parameter Identifier +hi! link CocSem_parenthesis Normal +hi! link CocSem_property Identifier +hi! link CocSem_punctuation Keyword +hi! link CocSem_regexp Type +hi! link CocSem_selfKeyword Constant +hi! link CocSem_semicolon Normal +hi! link CocSem_string String +hi! link CocSem_struct Structure +hi! link CocSem_type Type +hi! link CocSem_typeAlias Type +hi! link CocSem_typeParameter Type +hi! link CocSem_unknown Normal +hi! link CocSem_variable Identifier + +call hi("CocHighlightRead", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "") +call hi("CocHighlightText", s:gui0A, s:gui01, s:cterm0A, s:cterm01, "", "") +call hi("CocHighlightWrite", s:gui08, s:gui01, s:cterm08, s:cterm01, "", "") +call hi("CocListMode", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "bold", "") +call hi("CocListPath", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "", "") +call hi("CocSessionsName", s:gui06, "", s:cterm05, "", "", "") + +" CSS +hi! link cssBraces ThemeBlue +hi! link cssFunctionName ThemeYellow +hi! link cssIdentifier ThemeOrange +hi! link cssClassName ThemeGreen +hi! link cssColor ThemeBlue +hi! link cssSelectorOp ThemeBlue +hi! link cssSelectorOp2 ThemeBlue +hi! link cssImportant ThemeGreen +hi! link cssVendor ThemeFg1 + +hi! link cssTextProp ThemeCyan +hi! link cssAnimationProp ThemeCyan +hi! link cssUIProp ThemeYellow +hi! link cssTransformProp ThemeCyan +hi! link cssTransitionProp ThemeCyan +hi! link cssPrintProp ThemeCyan +hi! link cssPositioningProp ThemeYellow +hi! link cssBoxProp ThemeCyan +hi! link cssFontDescriptorProp ThemeCyan +hi! link cssFlexibleBoxProp ThemeCyan +hi! link cssBorderOutlineProp ThemeCyan +hi! link cssBackgroundProp ThemeCyan +hi! link cssMarginProp ThemeCyan +hi! link cssListProp ThemeCyan +hi! link cssTableProp ThemeCyan +hi! link cssFontProp ThemeCyan +hi! link cssPaddingProp ThemeCyan +hi! link cssDimensionProp ThemeCyan +hi! link cssRenderProp ThemeCyan +hi! link cssColorProp ThemeCyan +hi! link cssGeneratedContentProp ThemeCyan + + +" CMP +hi! link CmpItemAbbrDeprecated Deprecated +hi! link CmpItemAbbrMatch SearchMatch +hi! link CmpItemAbbrMatchFuzzy SearchMatch +hi! link CmpItemKindClass Type +hi! link CmpItemKindColor Keyword +hi! link CmpItemKindConstant Constant +hi! link CmpItemKindConstructor Special +hi! link CmpItemKindEnum Type +hi! link CmpItemKindEnumMember Constant +hi! link CmpItemKindEvent Identifier +hi! link CmpItemKindField Character +hi! link CmpItemKindFile Directory +hi! link CmpItemKindFolder Directory +hi! link CmpItemKindFunction Function +hi! link CmpItemKindInterface Type +hi! link CmpItemKindKeyword Keyword +hi! link CmpItemKindMethod Function +hi! link CmpItemKindModule Namespace +hi! link CmpItemKindOperator Operator +hi! link CmpItemKindProperty Identifier +hi! link CmpItemKindReference Character +hi! link CmpItemKindSnippet String +hi! link CmpItemKindStruct Type +hi! link CmpItemKindText Text +hi! link CmpItemKindUnit Namespace +hi! link CmpItemKindValue Comment +hi! link CmpItemKindVariable Identifier + +if has("nvim-0.8.0") + hi! link CmpItemKindField @field + hi! link CmpItemKindProperty @property +endif + +" Diff +call hi("DiffAdd", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "") +call hi("DiffChange", s:gui06, s:gui01, s:cterm05, s:cterm01, "", "") +call hi("DiffDelete", s:gui02, s:guibg, s:cterm02, s:ctermbg, "", "") +call hi("DiffText", s:gui0D, s:gui01, s:cterm0D, s:cterm01, "", "") +call hi("DiffAdded", s:gui0B, s:guibg, s:cterm0B, s:ctermbg, "", "") +call hi("DiffFile", s:gui08, s:guibg, s:cterm08, s:ctermbg, "", "") +call hi("DiffNewFile", s:gui0B, s:guibg, s:cterm0B, s:ctermbg, "", "") +call hi("DiffLine", s:gui0D, s:guibg, s:cterm0D, s:ctermbg, "", "") +call hi("DiffRemoved", s:gui08, s:guibg, s:cterm08, s:ctermbg, "", "") + +" Git +call hi("gitcommitOverflow", s:gui08, "", s:cterm08, "", "", "") +call hi("gitcommitSummary", s:gui0B, "", s:cterm0B, "", "", "") +call hi("gitcommitComment", s:gui03, "", s:cterm03, "", "", "") +call hi("gitcommitUntracked", s:gui03, "", s:cterm03, "", "", "") +call hi("gitcommitDiscarded", s:gui03, "", s:cterm03, "", "", "") +call hi("gitcommitSelected", s:gui03, "", s:cterm03, "", "", "") +call hi("gitcommitHeader", s:gui0E, "", s:cterm0E, "", "", "") +call hi("gitcommitSelectedType", s:gui0D, "", s:cterm0D, "", "", "") +call hi("gitcommitUnmergedType", s:gui0D, "", s:cterm0D, "", "", "") +call hi("gitcommitDiscardedType", s:gui0D, "", s:cterm0D, "", "", "") +call hi("gitcommitBranch", s:gui09, "", s:cterm09, "", "bold", "") +call hi("gitcommitUntrackedFile", s:gui0A, "", s:cterm0A, "", "", "") +call hi("gitcommitUnmergedFile", s:gui08, "", s:cterm08, "", "bold", "") +call hi("gitcommitDiscardedFile", s:gui08, "", s:cterm08, "", "bold", "") +call hi("gitcommitSelectedFile", s:gui0B, "", s:cterm0B, "", "bold", "") + +" GitGutter +hi! link GitGutterAdd GitAddSign +hi! link GitGutterChange GitChangeSign +hi! link GitGutterDelete GitDeleteSign +hi! link GitGutterChangeDelete GitChangeDeleteSign + +" indent-blankline (nvim) +if has("nvim") + call hi("@ibl.indent.char.1",s:gui01, "", s:cterm01, "", "", "") +endif + +" HTML +call hi("htmlBold", s:gui07, "", s:cterm0A, "", "bold", "") +call hi("htmlItalic", s:gui06, "", s:cterm0E, "", "italic", "") +call hi("htmlEndTag", s:gui06, "", s:cterm05, "", "", "") +call hi("htmlTag", s:gui06, "", s:cterm05, "", "", "") + +" JavaScript +call hi("javaScript", s:gui06, "", s:cterm05, "", "", "") +call hi("javaScriptBraces", s:gui06, "", s:cterm05, "", "", "") +call hi("javaScriptNumber", s:gui09, "", s:cterm09, "", "", "") +" pangloss/vim-javascript +call hi("jsOperator", s:gui0D, "", s:cterm0D, "", "", "") +call hi("jsStatement", s:gui0E, "", s:cterm0E, "", "", "") +call hi("jsReturn", s:gui0E, "", s:cterm0E, "", "", "") +call hi("jsThis", s:gui08, "", s:cterm08, "", "", "") +call hi("jsClassDefinition", s:gui0A, "", s:cterm0A, "", "", "") +call hi("jsFunction", s:gui0E, "", s:cterm0E, "", "", "") +call hi("jsFuncName", s:gui0D, "", s:cterm0D, "", "", "") +call hi("jsFuncCall", s:gui0D, "", s:cterm0D, "", "", "") +call hi("jsClassFuncName", s:gui0D, "", s:cterm0D, "", "", "") +call hi("jsClassMethodType", s:gui0E, "", s:cterm0E, "", "", "") +call hi("jsRegexpString", s:gui0C, "", s:cterm0C, "", "", "") +call hi("jsGlobalObjects", s:gui0A, "", s:cterm0A, "", "", "") +call hi("jsGlobalNodeObjects", s:gui0A, "", s:cterm0A, "", "", "") +call hi("jsExceptions", s:gui0A, "", s:cterm0A, "", "", "") +call hi("jsBuiltins", s:gui0A, "", s:cterm0A, "", "", "") + +" Mail +call hi("mailQuoted1", s:gui0A, "", s:cterm0A, "", "", "") +call hi("mailQuoted2", s:gui0B, "", s:cterm0B, "", "", "") +call hi("mailQuoted3", s:gui0E, "", s:cterm0E, "", "", "") +call hi("mailQuoted4", s:gui0C, "", s:cterm0C, "", "", "") +call hi("mailQuoted5", s:gui0D, "", s:cterm0D, "", "", "") +call hi("mailQuoted6", s:gui0A, "", s:cterm0A, "", "", "") +call hi("mailURL", s:gui0D, "", s:cterm0D, "", "", "") +call hi("mailEmail", s:gui0D, "", s:cterm0D, "", "", "") + +" Markdown +call hi("markdownCode", s:gui0B, "", s:cterm0B, "", "", "") +call hi("markdownError", s:gui06, s:guibg, s:cterm05, s:ctermbg, "", "") +call hi("markdownCodeBlock", s:gui0B, "", s:cterm0B, "", "", "") +call hi("markdownHeadingDelimiter", s:gui0D, "", s:cterm0D, "", "", "") + +" Matchup +call hi("MatchWord", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "underline", "") + +" NERDTree +call hi("NERDTreeDirSlash", s:gui0D, "", s:cterm0D, "", "", "") +call hi("NERDTreeExecFile", s:gui06, "", s:cterm05, "", "", "") + +" Netrw +hi! link netrwDir ThemeCyan +hi! link netrwClassify ThemeCyan +hi! link netrwLink ThemeBg3 +hi! link netrwSymLink ThemeFg1 +hi! link netrwExe ThemeYellow +hi! link netrwComment ThemeBg3 +hi! link netrwList ThemeBlue +hi! link netrwHelpCmd ThemeCyan +hi! link netrwCmdSep ThemeFg3 +hi! link netrwVersion ThemeGreen + +" PHP +call hi("phpMemberSelector", s:gui06, "", s:cterm05, "", "", "") +call hi("phpComparison", s:gui06, "", s:cterm05, "", "", "") +call hi("phpParent", s:gui06, "", s:cterm05, "", "", "") +call hi("phpMethodsVar", s:gui0C, "", s:cterm0C, "", "", "") + +" Python +"call hi("pythonOperator", s:gui0E, "", s:cterm0E, "", "", "") +"call hi("pythonRepeat", s:gui0E, "", s:cterm0E, "", "", "") +"call hi("pythonInclude", s:gui0E, "", s:cterm0E, "", "", "") +"call hi("pythonStatement", s:gui0E, "", s:cterm0E, "", "", "") + +" hi! link pythonBuiltin ThemeCyan +" hi! link pythonBuiltinObj ThemeCyan +" hi! link pythonBuiltinFunc ThemeGreen +" hi! link pythonFunction Function +hi! link pythonDecorator ThemeYellow +hi! link pythonDecoratorName ThemeYellow +" hi! link pythonTripleQuotes ThemeGreenItalic +" hi! link pythonInclude ThemeBlue +" hi! link pythonImport ThemeBlue +" hi! link pythonRun ThemeBlue +" hi! link pythonCoding ThemeBlue +" hi! link pythonOperator ThemeRed +" hi! link pythonException ThemeRed +" hi! link pythonExceptions ThemeYellow +" hi! link pythonBoolean ThemeYellow +" hi! link pythonDot ThemeFg3 +" hi! link pythonConditional ThemeCyan +" hi! link pythonRepeat ThemeRed +" hi! link pythonDottedName ThemeGreen + + +" Ruby +call hi("rubyAttribute", s:gui0D, "", s:cterm0D, "", "", "") +call hi("rubyConstant", s:gui0A, "", s:cterm0A, "", "", "") +call hi("rubyInterpolationDelimiter", s:gui0F, "", s:cterm0F, "", "", "") +call hi("rubyRegexp", s:gui0C, "", s:cterm0C, "", "", "") +call hi("rubySymbol", s:gui0B, "", s:cterm0B, "", "", "") +call hi("rubyStringDelimiter", s:gui0B, "", s:cterm0B, "", "", "") + +" SASS +call hi("sassidChar", s:gui08, "", s:cterm08, "", "", "") +call hi("sassClassChar", s:gui09, "", s:cterm09, "", "", "") +call hi("sassInclude", s:gui0E, "", s:cterm0E, "", "", "") +call hi("sassMixing", s:gui0E, "", s:cterm0E, "", "", "") +call hi("sassMixinName", s:gui0D, "", s:cterm0D, "", "", "") + +" Signify +hi! link SignifySignAdd GitAddSign +hi! link SignifySignChange GitChangeSign +hi! link SignifySignDelete GitDeleteSign + +" Startify +call hi("StartifyBracket", s:gui03, "", s:cterm03, "", "", "") +call hi("StartifyFile", s:gui07, "", s:cterm07, "", "", "") +call hi("StartifyFooter", s:gui03, "", s:cterm03, "", "", "") +call hi("StartifyHeader", s:gui0B, "", s:cterm0B, "", "", "") +call hi("StartifyNumber", s:gui09, "", s:cterm09, "", "", "") +call hi("StartifyPath", s:gui03, "", s:cterm03, "", "", "") +call hi("StartifySection", s:gui0E, "", s:cterm0E, "", "", "") +call hi("StartifySelect", s:gui0C, "", s:cterm0C, "", "", "") +call hi("StartifySlash", s:gui03, "", s:cterm03, "", "", "") +call hi("StartifySpecial", s:gui03, "", s:cterm03, "", "", "") + +" LSP +if has("nvim") + hi! link DiagnosticError ErrorSign + hi! link DiagnosticWarn WarningSign + hi! link DiagnosticInfo InfoSign + hi! link DiagnosticHint HintSign + hi! link DiagnosticOk OkSign + + hi! link DiagnosticFloatingError ErrorFloat + hi! link DiagnosticFloatingWarn WarningFloat + hi! link DiagnosticFloatingInfo InfoFloat + hi! link DiagnosticFloatingHint HintFloat + hi! link DiagnosticFloatingOk OkFloat + + hi! link DiagnosticUnderlineError ErrorHighlight + hi! link DiagnosticUnderlineWarn WarningHighlight + hi! link DiagnosticUnderlineInfo InfoHighlight + hi! link DiagnosticUnderlineHint HintHighlight + hi! link DiagnosticUnderlineOk OkHighlight + + hi! link DiagnosticsVirtualTextError ErrorSign + hi! link DiagnosticsVirtualTextWarning WarningSign + hi! link DiagnosticsVirtualTextInfo InfoSign + hi! link DiagnosticsVirtualTextHint HintSign + hi! link DiagnosticsVirtualTextOk OkSign + + " Remove untill endif on next nvim release + hi! link LspDiagnosticsSignError ErrorSign + hi! link LspDiagnosticsSignWarning WarningSign + hi! link LspDiagnosticsSignInfo InfoSign + hi! link LspDiagnosticsSignHint HintSign + + hi! link LspDiagnosticsVirtualTextError ErrorSign + hi! link LspDiagnosticsVirtualTextWarning WarningSign + hi! link LspDiagnosticsVirtualTextInfo InfoSign + hi! link LspDiagnosticsVirtualTextHint HintSign + + hi! link LspDiagnosticsFloatingError ErrorFloat + hi! link LspDiagnosticsFloatingWarning WarningFloat + hi! link LspDiagnosticsFloatingInfo InfoFloat + hi! link LspDiagnosticsFloatingHint HintFloat + + hi! link LspDiagnosticsUnderlineError ErrorHighlight + hi! link LspDiagnosticsUnderlineWarning WarningHighlight + hi! link LspDiagnosticsUnderlineInfo InfoHighlight + hi! link LspDiagnosticsUnderlineHint HintHighlight + + hi! link LspReferenceText ReferenceText + hi! link LspReferenceRead ReferenceRead + hi! link LspReferenceWrite ReferenceWrite +endif + +" Java +call hi("javaOperator", s:gui0D, "", s:cterm0D, "", "", "") + +" JSON +hi! link jsonKeyword ThemeGreen +hi! link jsonQuote ThemeGreen +hi! link jsonBraces ThemeFg1 +hi! link jsonString ThemeFg1 + +" Markdown +hi! link markdownH1 ThemeRedBold +hi! link markdownH2 ThemeRed +hi! link markdownH3 ThemeRed +hi! link markdownH4 ThemeRed +hi! link markdownH5 ThemeRed +hi! link markdownH6 ThemeRed + +hi! link markdownCode ThemeYellow +hi! link markdownCodeBlock ThemeYellow +hi! link markdownCodeDelimiter ThemeYellow + +hi! link markdownBlockquote ThemeGrey +hi! link markdownListMarker ThemeBlue +hi! link markdownOrderedListMarker ThemeBlue +hi! link markdownRule ThemeGrey +hi! link markdownHeadingRule ThemeGrey + +hi! link markdownUrlDelimiter ThemeFg3 +hi! link markdownLinkDelimiter ThemeFg3 +hi! link markdownLinkTextDelimiter ThemeFg3 +hi! link markdownHeadingDelimiter ThemeOrange +hi! link markdownUrlTitleDelimiter ThemeGreen + +hi! link markdownLink ThemeGreen +hi! link markdownWikiLink ThemeViolet +hi! link markdownUrl ThemeOrange +hi! link markdownInlineUrl ThemeOrange + +hi! link markdownLinkText ThemeViolet +hi! link markdownIdDeclaration markdownLinkText + +"call s:HL('markdownItalic', s:fg3, s:none, s:italic) +"call s:HL('markdownLinkText', s:gray, s:none, s:underline) + + +" Remove functions +delf hi + +" Remove color variables +unlet s:gui00 s:gui01 s:gui02 s:gui03 s:gui04 s:gui05 s:gui06 s:gui07 s:gui08 s:gui09 s:gui0A s:gui0B s:gui0C s:gui0D s:gui0E s:gui0F s:guibg +unlet s:cterm00 s:cterm01 s:cterm02 s:cterm03 s:cterm04 s:cterm05 s:cterm06 s:cterm07 s:cterm08 s:cterm09 s:cterm0A s:cterm0B s:cterm0C s:cterm0D s:cterm0E s:cterm0F s:ctermbg diff --git a/apps/nvim/hard-savanna-monobiome-light.vim b/apps/nvim/hard-savanna-monobiome-light.vim new file mode 100644 index 0000000..283b0a2 --- /dev/null +++ b/apps/nvim/hard-savanna-monobiome-light.vim @@ -0,0 +1,882 @@ +" vi:syntax=vim +" +" Top-level remarks: +" +" - `hi` sets highlight colors for syntax groups, allowing one to specify fg and bg colors +" for GUI and terminal Vim. +" - `link` allows for linking one syntax group to another, reusing the same color +" settings. Language-specific groups can then point to one of the base color highlight +" groups, for example, without needing to repeat the raw color values. + +" GUI color definitions +let s:gui00 = "#e1ded6" +let g:base16_gui00 = "#e1ded6" +let s:gui01 = "#d0cec6" +let g:base16_gui01 = "#d0cec6" +let s:gui02 = "#c0bdb6" +let g:base16_gui02 = "#c0bdb6" +let s:gui03 = "#b0aea6" +let g:base16_gui03 = "#b0aea6" +let s:gui04 = "#4a4841" +let g:base16_gui04 = "#4a4841" +let s:gui05 = "#3d3a34" +let g:base16_gui05 = "#3d3a34" +let s:gui06 = "#302e28" +let g:base16_gui06 = "#302e28" +let s:gui07 = "#24211c" +let g:base16_gui07 = "#24211c" +let s:gui08 = "#ca2e23" +let g:base16_gui08 = "#ca2e23" +let s:gui09 = "#a45e00" +let g:base16_gui09 = "#a45e00" +let s:gui0A = "#79743d" +let g:base16_gui0A = "#79743d" +let s:gui0B = "#42824e" +let g:base16_gui0B = "#42824e" +let s:gui0C = "#42824e" +let g:base16_gui0C = "#42824e" +let s:gui0D = "#456fbe" +let g:base16_gui0D = "#456fbe" +let s:gui0E = "#456fbe" +let g:base16_gui0E = "#456fbe" +let s:gui0F = "#ca2e23" +let g:base16_gui0F = "#ca2e23" + +let s:grey = "#74716a" + +" Terminal color definitions +let s:cterm00 = "00" +let g:base16_cterm00 = "00" +let s:cterm03 = "08" +let g:base16_cterm03 = "08" +let s:cterm05 = "07" +let g:base16_cterm05 = "07" +let s:cterm07 = "15" +let g:base16_cterm07 = "15" +let s:cterm08 = "01" +let g:base16_cterm08 = "01" +let s:cterm0A = "03" +let g:base16_cterm0A = "03" +let s:cterm0B = "02" +let g:base16_cterm0B = "02" +let s:cterm0C = "06" +let g:base16_cterm0C = "06" +let s:cterm0D = "04" +let g:base16_cterm0D = "04" +let s:cterm0E = "05" +let g:base16_cterm0E = "05" + +let s:cterm01 = "10" +let g:base16_cterm01 = "10" +let s:cterm02 = "11" +let g:base16_cterm02 = "11" +let s:cterm04 = "12" +let g:base16_cterm04 = "12" +let s:cterm06 = "13" +let g:base16_cterm06 = "13" +let s:cterm09 = "09" +let g:base16_cterm09 = "09" +let s:cterm0F = "14" +let g:base16_cterm0F = "14" + +" Neovim terminal colours +if has("nvim") + let g:terminal_color_0 = "#e1ded6" + let g:terminal_color_1 = "#ca2e23" + let g:terminal_color_2 = "#42824e" + let g:terminal_color_3 = "#79743d" + let g:terminal_color_4 = "#456fbe" + let g:terminal_color_5 = "#456fbe" + let g:terminal_color_6 = "#42824e" + let g:terminal_color_7 = "#3d3a34" + let g:terminal_color_8 = "#b0aea6" + let g:terminal_color_9 = "#ca2e23" + let g:terminal_color_10 = "#42824e" + let g:terminal_color_11 = "#79743d" + let g:terminal_color_12 = "#456fbe" + let g:terminal_color_13 = "#456fbe" + let g:terminal_color_14 = "#42824e" + let g:terminal_color_15 = "#24211c" + let g:terminal_color_background = g:terminal_color_0 + let g:terminal_color_foreground = g:terminal_color_5 + + if &background == "light" + let g:terminal_color_background = g:terminal_color_7 + let g:terminal_color_foreground = g:terminal_color_2 + endif + +elseif has("terminal") + let g:terminal_ansi_colors = [ + \ "#e1ded6", + \ "#ca2e23", + \ "#42824e", + \ "#79743d", + \ "#456fbe", + \ "#456fbe", + \ "#42824e", + \ "#3d3a34", + \ "#b0aea6", + \ "#ca2e23", + \ "#42824e", + \ "#79743d", + \ "#456fbe", + \ "#456fbe", + \ "#42824e", + \ "#24211c", + \ ] +endif + +let s:guibg = s:gui00 +let s:ctermbg = s:cterm00 + +" Theme setup +hi clear +syntax reset +let g:colors_name = "active" + +" Highlighting function +" Optional variables are attributes and guisp +function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) + " For a given syntax group, sets the GUI and terminal foreground and backgrounds + " Optional parameters are interpreted as `attr` and `guisp`, the first of which appears + " to be a modifier for the group (e.g., bold, italic), and `guisp` appears to be + " 'special' colors used for underlines in the GUI. + let l:attr = get(a:, 1, "") + let l:guisp = get(a:, 2, "") + + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + + if a:guifg != "" + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=" . a:guifg + endif + endif + + if a:guibg != "" + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=" . a:guibg + endif + endif + + if a:ctermfg != "" + exec "hi " . a:group . " ctermfg=" . a:ctermfg + endif + + if a:ctermbg != "" + exec "hi " . a:group . " ctermbg=" . a:ctermbg + endif + + if l:attr != "" + exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr + endif + + if l:guisp != "" + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=" . l:guisp + endif + endif +endfunction + + +fun hi(group, guifg, guibg, ctermfg, ctermbg, attr, guisp) + call g:Base16hi(a:group, a:guifg, a:guibg, a:ctermfg, a:ctermbg, a:attr, a:guisp) +endfun + + +" color groups for interpretability +call hi("ThemeBg0", s:gui00, "", s:cterm00, "", "", "") +call hi("ThemeBg1", s:gui01, "", s:cterm01, "", "", "") +call hi("ThemeBg2", s:gui02, "", s:cterm02, "", "", "") +call hi("ThemeBg3", s:gui03, "", s:cterm03, "", "", "") +call hi("ThemeFg3", s:gui04, "", s:cterm04, "", "", "") +call hi("ThemeFg2", s:gui05, "", s:cterm05, "", "", "") +call hi("ThemeFg1", s:gui06, "", s:cterm06, "", "", "") +call hi("ThemeFg0", s:gui07, "", s:cterm07, "", "", "") +" +call hi("ThemeRed", s:gui08, "", s:cterm08, "", "", "") +call hi("ThemeOrange", s:gui09, "", s:cterm09, "", "", "") +call hi("ThemeYellow", s:gui0A, "", s:cterm0A, "", "", "") +call hi("ThemeGreen", s:gui0B, "", s:cterm0B, "", "", "") +call hi("ThemeCyan", s:gui0C, "", s:cterm0C, "", "", "") +call hi("ThemeBlue", s:gui0D, "", s:cterm0D, "", "", "") +call hi("ThemeViolet", s:gui0E, "", s:cterm0E, "", "", "") +call hi("ThemeMagenta", s:gui0F, "", s:cterm0F, "", "", "") + +call hi("ThemeRedBold", s:gui08, "", s:cterm08, "", "bold", "") +call hi("ThemeOrangeBold", s:gui09, "", s:cterm09, "", "bold", "") +call hi("ThemeYellowBold", s:gui0A, "", s:cterm0A, "", "bold", "") +call hi("ThemeGreenBold", s:gui0B, "", s:cterm0B, "", "bold", "") +call hi("ThemeCyanBold", s:gui0C, "", s:cterm0C, "", "bold", "") +call hi("ThemeBlueBold", s:gui0D, "", s:cterm0D, "", "bold", "") +call hi("ThemeVioletBold", s:gui0E, "", s:cterm0E, "", "bold", "") +call hi("ThemeMagentaBold", s:gui0F, "", s:cterm0F, "", "bold", "") + +call hi("ThemeRedItalic", s:gui08, "", s:cterm08, "", "italic", "") +call hi("ThemeOrangeItalic", s:gui09, "", s:cterm09, "", "italic", "") +call hi("ThemeYellowItalic", s:gui0A, "", s:cterm0A, "", "italic", "") +call hi("ThemeGreenItalic", s:gui0B, "", s:cterm0B, "", "italic", "") +call hi("ThemeCyanItalic", s:gui0C, "", s:cterm0C, "", "italic", "") +call hi("ThemeBlueItalic", s:gui0D, "", s:cterm0D, "", "italic", "") +call hi("ThemeVioletItalic", s:gui0E, "", s:cterm0E, "", "italic", "") +call hi("ThemeMagentaItalic", s:gui0F, "", s:cterm0F, "", "italic", "") + +call hi("ThemeGrey", s:grey, "", s:cterm03, "", "", "") +call hi("ThemeGreyItalic", s:grey, "", s:cterm03, "", "italic", "") + + +" Vim editor colors +call hi("Normal", s:gui05, s:guibg, s:cterm05, s:ctermbg, "", "") +call hi("Bold", "", "", "", "", "bold", "") +call hi("Debug", s:gui08, "", s:cterm08, "", "", "") +call hi("Directory", s:gui0D, "", s:cterm0D, "", "", "") +call hi("Error", s:guibg, s:gui08, s:ctermbg, s:cterm08, "", "") +call hi("ErrorMsg", s:gui08, s:guibg, s:cterm08, s:ctermbg, "", "") +call hi("Exception", s:gui08, "", s:cterm08, "", "", "") +call hi("FoldColumn", s:gui03, s:guibg, s:cterm03, s:ctermbg, "", "") +call hi("Folded", s:gui02, s:guibg, s:cterm02, s:ctermbg, "", "") +call hi("IncSearch", s:gui01, s:gui09, s:cterm01, s:cterm09, "none", "") +call hi("Italic", "", "", "", "", "italic", "") +call hi("Macro", s:gui0C, "", s:cterm0C, "", "", "") +call hi("MatchParen", "", s:gui03, "", s:cterm03, "", "") +call hi("ModeMsg", s:gui0B, "", s:cterm0B, "", "", "") +call hi("MoreMsg", s:gui0B, "", s:cterm0B, "", "", "") +call hi("Question", s:gui0D, "", s:cterm0D, "", "", "") +call hi("Search", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "", "") +call hi("Substitute", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "none", "") +call hi("SpecialKey", s:gui03, "", s:cterm03, "", "", "") +call hi("TooLong", s:gui08, "", s:cterm08, "", "", "") +call hi("Underlined", "", "", "", "", "underline", "fg") +call hi("Visual", "", s:gui02, "", s:cterm02, "", "") +call hi("VisualNOS", s:gui08, "", s:cterm08, "", "", "") +call hi("WarningMsg", s:gui08, "", s:cterm08, "", "", "") +call hi("WildMenu", s:guibg, s:gui06, s:ctermbg, s:cterm05, "", "") +call hi("Title", s:gui0D, "", s:cterm0D, "", "none", "") +call hi("Conceal", s:gui0D, s:guibg, s:cterm0D, s:ctermbg, "", "") +call hi("Cursor", s:gui05, s:guibg, "", "", "inverse", "") +call hi("NonText", s:gui03, "", s:cterm03, "", "", "") +call hi("Whitespace", s:gui03, "", s:cterm03, "", "", "") +call hi("LineNr", s:gui03, s:guibg, s:cterm03, s:ctermbg, "", "") +call hi("SignColumn", s:gui03, s:guibg, s:cterm03, s:ctermbg, "", "") +call hi("StatusLine", s:gui07, s:gui01, s:cterm07, s:cterm01, "none", "") +call hi("StatusLineNC", s:gui06, s:gui01, s:cterm05, s:cterm01, "none", "") +call hi("VertSplit", s:gui01, s:guibg, s:cterm01, s:ctermbg, "none", "") +call hi("ColorColumn", "", s:gui01, "", s:cterm01, "none", "") +call hi("CursorColumn", "", s:gui01, "", s:cterm01, "none", "") +call hi("CursorLine", "", s:gui01, "", s:cterm01, "none", "") +call hi("CursorLineNr", s:gui04, s:gui01, s:cterm04, s:cterm01, "bold", "") +call hi("QuickFixLine", "", s:gui01, "", s:cterm01, "none", "") +call hi("PMenu", s:gui06, s:gui01, s:cterm06, s:cterm01, "none", "") +call hi("PMenuSel", s:gui06, s:gui02, s:cterm06, s:cterm02, "", "") +call hi("PMenuSbar", "", s:gui03, "", s:cterm03, "", "") +call hi("PMenuThumb", "", s:gui04, "", s:cterm04, "", "") +call hi("TabLine", s:gui03, s:gui01, s:cterm03, s:cterm01, "none", "") +call hi("TabLineFill", s:gui03, s:gui01, s:cterm03, s:cterm01, "none", "") +call hi("TabLineSel", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "none", "") + +" Standard syntax +hi! link Boolean ThemeOrange +hi! link Character ThemeRed + +"call hi("Comment", s:gui03, "", s:cterm03, "", "italic", "") +hi! link Comment ThemeGreyItalic + +hi! link Conditional ThemeRed +hi! link Constant ThemeOrange +call hi("Define", s:gui0E, "", s:cterm0E, "", "none", "") +hi! link Delimiter ThemeFg1 + +if has("patch-8.0.1038") + call hi("Deprecated", "", "", "", "", "strikethrough", "") +endif + +hi! link Float ThemeOrange +hi! link Function ThemeBlue +call hi("Identifier", s:gui06, "", s:cterm05, "", "none", "") +hi! link Include ThemeBlue +hi! link Constant ThemeOrange +call hi("Keyword", s:gui0E, "", s:cterm0E, "", "none", "") +hi! link Label ThemeOrange +hi! link Number ThemeOrange +hi! link Operator ThemeYellow +hi! link PreProc ThemeOrange +hi! link Repeat ThemeViolet +hi! link Special ThemeYellow +hi! link SpecialChar ThemeMagenta +hi! link Statement ThemeRed +hi! link StorageClass ThemeOrange +hi! link String ThemeGreen +hi! link Structure ThemeOrange +hi! link Tag ThemeOrange + +call hi("Todo", s:gui08, s:guibg, s:cterm08, s:ctermbg, "italic", "") +call hi("Type", s:gui0A, "", s:cterm0A, "", "none", "") + +hi! link Typedef ThemeOrange + + +" Treesitter +if has("nvim-0.8.0") + call hi("@field", s:gui08, "", s:cterm08, "", "", "") + call hi("@property", s:gui08, "", s:cterm08, "", "", "") + call hi("@namespace", s:gui06, "", s:cterm05, "", "italic", "") + call hi("@variable.builtin", s:gui06, "", s:cterm05, "", "italic", "") + call hi("@text.reference", s:gui08, "", s:cterm08, "", "", "") + call hi("@text.uri", s:gui08, "", s:cterm08, "", "italic", "") + + " Annotations & Attributes + call hi("@annotation", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@attribute", s:gui0D, "", s:cterm0D, "", "", "") + + " Booleans, Characters & Comments + call hi("@boolean", s:gui09, "", s:cterm09, "", "", "") + call hi("@character", s:gui08, "", s:cterm08, "", "", "") + call hi("@character.special", s:gui0F, "", s:cterm0F, "", "", "") + call hi("@comment", s:gui03, "", s:cterm03, "", "", "") + + " Conditionals, Constants & Debugging + call hi("@keyword.conditional", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@constant", s:gui09, "", s:cterm09, "", "", "") + call hi("@constant.builtin", s:gui09, "", s:cterm09, "", "", "") + call hi("@constant.macro", s:gui08, "", s:cterm08, "", "", "") + call hi("@keyword.debug", s:gui08, "", s:cterm08, "", "", "") + + " Directives & Exceptions + call hi("@keyword.directive.define", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@keyword.exception", s:gui0E, "", s:cterm0E, "", "", "") + + " Floats & Functions + call hi("@number.float", s:gui09, "", s:cterm09, "", "", "") + call hi("@function", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@function.builtin", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@function.call", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@function.macro", s:gui08, "", s:cterm08, "", "", "") + + " Imports, Operators & Returns + call hi("@keyword.import", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@keyword.coroutine", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@keyword.operator", s:gui06, "", s:cterm05, "", "", "") + call hi("@keyword.return", s:gui0E, "", s:cterm0E, "", "", "") + + " Methods & Namespaces + call hi("@function.method", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@function.method.call", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@namespace.builtin", s:gui0E, "", s:cterm0E, "", "", "") + + " Numbers & Directives + call hi("@none", s:gui06, "", s:cterm05, "", "", "") + call hi("@number", s:gui09, "", s:cterm09, "", "", "") + call hi("@keyword.directive", s:gui0E, "", s:cterm0E, "", "", "") + + " Repeats, Storage & Strings + call hi("@keyword.repeat", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@keyword.storage", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@string", s:gui0B, "", s:cterm0B, "", "", "") + + " Tags & Markup + call hi("@markup.link.label", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.link.label.symbol", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@tag", s:gui08, "", s:cterm08, "", "", "") + call hi("@tag.attribute", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@tag.delimiter", s:gui0F, "", s:cterm0F, "", "", "") + + " More Markup + call hi("@markup", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.environment", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.environment.name", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.raw", s:gui09, "", s:cterm09, "", "", "") + call hi("@markup.math", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.strong", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.emphasis", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.strikethrough", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.underline", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.heading", s:gui0D, "", s:cterm0D, "", "", "") + + " Comments & Types + call hi("@comment.note", s:gui03, "", s:cterm03, "", "", "") + call hi("@comment.error", s:gui08, "", s:cterm08, "", "", "") + call hi("@comment.hint", s:gui0B, "", s:cterm0B, "", "", "") + call hi("@comment.info", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@comment.warning", s:gui09, "", s:cterm09, "", "", "") + call hi("@comment.todo", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.link.url", s:gui09, "", s:cterm09, "", "", "") + call hi("@type", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@type.definition", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@type.qualifier", s:gui0E, "", s:cterm0E, "", "", "") +endif + +" Standard highlights to be used by plugins +if has("patch-8.0.1038") + call hi("Deprecated", "", "", "", "", "strikethrough", "") +endif +call hi("SearchMatch", s:gui0C, "", s:cterm0C, "", "", "") + +call hi("GitAddSign", s:gui0B, "", s:cterm0B, "", "", "") +call hi("GitChangeSign", s:gui04, "", s:cterm04, "", "", "") +call hi("GitDeleteSign", s:gui08, "", s:cterm08, "", "", "") +call hi("GitChangeDeleteSign", s:gui04, "", s:cterm04, "", "", "") + +call hi("ErrorSign", s:gui08, "", s:cterm08, "", "", "") +call hi("WarningSign", s:gui09, "", s:cterm09, "", "", "") +call hi("InfoSign", s:gui0D, "", s:cterm0D, "", "", "") +call hi("HintSign", s:gui0C, "", s:cterm0C, "", "", "") +call hi("OkSign", s:gui0B, "", s:cterm0B, "", "", "") + +call hi("ErrorFloat", s:gui08, s:gui01, s:cterm08, s:cterm01, "", "") +call hi("WarningFloat", s:gui09, s:gui01, s:cterm09, s:cterm01, "", "") +call hi("InfoFloat", s:gui0D, s:gui01, s:cterm0D, s:cterm01, "", "") +call hi("HintFloat", s:gui0C, s:gui01, s:cterm0C, s:cterm01, "", "") +call hi("OkFloat", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "") + +call hi("ErrorHighlight", "", "", s:ctermbg, s:cterm08, "underline", s:gui08) +call hi("WarningHighlight", "", "", s:ctermbg, s:cterm09, "underline", s:gui09) +call hi("InfoHighlight", "", "", s:ctermbg, s:cterm0D, "underline", s:gui0D) +call hi("HintHighlight", "", "", s:ctermbg, s:cterm0C, "underline", s:gui0C) +call hi("OkHighlight", "", "", s:ctermbg, s:cterm0B, "underline", s:gui0B) + +call hi("SpellBad", "", "", s:ctermbg, s:cterm08, "undercurl", s:gui08) +call hi("SpellLocal", "", "", s:ctermbg, s:cterm0C, "undercurl", s:gui0C) +call hi("SpellCap", "", "", s:ctermbg, s:cterm0D, "undercurl", s:gui0D) +call hi("SpellRare", "", "", s:ctermbg, s:cterm0E, "undercurl", s:gui0E) + +call hi("ReferenceText", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "", "") +call hi("ReferenceRead", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "", "") +call hi("ReferenceWrite", s:gui01, s:gui08, s:cterm01, s:cterm08, "", "") + +" C +call hi("cOperator", s:gui0C, "", s:cterm0C, "", "", "") +call hi("cPreCondit", s:gui0E, "", s:cterm0E, "", "", "") + +" C# +call hi("csClass", s:gui0A, "", s:cterm0A, "", "", "") +call hi("csAttribute", s:gui0A, "", s:cterm0A, "", "", "") +call hi("csModifier", s:gui0E, "", s:cterm0E, "", "", "") +call hi("csType", s:gui08, "", s:cterm08, "", "", "") +call hi("csUnspecifiedStatement", s:gui0D, "", s:cterm0D, "", "", "") +call hi("csContextualStatement", s:gui0E, "", s:cterm0E, "", "", "") +call hi("csNewDecleration", s:gui08, "", s:cterm08, "", "", "") + +" Clap +hi! link ClapInput ColorColumn +hi! link ClapSpinner ColorColumn +hi! link ClapDisplay Default +hi! link ClapPreview ColorColumn +hi! link ClapCurrentSelection CursorLine +hi! link ClapNoMatchesFound ErrorFloat + +" Coc +hi! link CocErrorSign ErrorSign +hi! link CocWarningSign WarningSign +hi! link CocInfoSign InfoSign +hi! link CocHintSign HintSign + +hi! link CocErrorFloat ErrorFloat +hi! link CocWarningFloat WarningFloat +hi! link CocInfoFloat InfoFloat +hi! link CocHintFloat HintFloat + +hi! link CocErrorHighlight ErrorHighlight +hi! link CocWarningHighlight WarningHighlight +hi! link CocInfoHighlight InfoHighlight +hi! link CocHintHighlight HintHighlight + +hi! link CocSem_angle Keyword +hi! link CocSem_annotation Keyword +hi! link CocSem_attribute Type +hi! link CocSem_bitwise Keyword +hi! link CocSem_boolean Boolean +hi! link CocSem_brace Normal +hi! link CocSem_bracket Normal +hi! link CocSem_builtinAttribute Type +hi! link CocSem_builtinType Type +hi! link CocSem_character String +hi! link CocSem_class Structure +hi! link CocSem_colon Normal +hi! link CocSem_comma Normal +hi! link CocSem_comment Comment +hi! link CocSem_comparison Keyword +hi! link CocSem_concept Keyword +hi! link CocSem_constParameter Identifier +hi! link CocSem_dependent Keyword +hi! link CocSem_dot Keyword +hi! link CocSem_enum Structure +hi! link CocSem_enumMember Constant +hi! link CocSem_escapeSequence Type +hi! link CocSem_event Identifier +hi! link CocSem_formatSpecifier Type +hi! link CocSem_function Function +hi! link CocSem_interface Type +hi! link CocSem_keyword Keyword +hi! link CocSem_label Keyword +hi! link CocSem_logical Keyword +hi! link CocSem_macro Macro +hi! link CocSem_method Function +hi! link CocSem_modifier Keyword +hi! link CocSem_namespace Identifier +hi! link CocSem_number Number +hi! link CocSem_operator Operator +hi! link CocSem_parameter Identifier +hi! link CocSem_parenthesis Normal +hi! link CocSem_property Identifier +hi! link CocSem_punctuation Keyword +hi! link CocSem_regexp Type +hi! link CocSem_selfKeyword Constant +hi! link CocSem_semicolon Normal +hi! link CocSem_string String +hi! link CocSem_struct Structure +hi! link CocSem_type Type +hi! link CocSem_typeAlias Type +hi! link CocSem_typeParameter Type +hi! link CocSem_unknown Normal +hi! link CocSem_variable Identifier + +call hi("CocHighlightRead", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "") +call hi("CocHighlightText", s:gui0A, s:gui01, s:cterm0A, s:cterm01, "", "") +call hi("CocHighlightWrite", s:gui08, s:gui01, s:cterm08, s:cterm01, "", "") +call hi("CocListMode", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "bold", "") +call hi("CocListPath", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "", "") +call hi("CocSessionsName", s:gui06, "", s:cterm05, "", "", "") + +" CSS +hi! link cssBraces ThemeBlue +hi! link cssFunctionName ThemeYellow +hi! link cssIdentifier ThemeOrange +hi! link cssClassName ThemeGreen +hi! link cssColor ThemeBlue +hi! link cssSelectorOp ThemeBlue +hi! link cssSelectorOp2 ThemeBlue +hi! link cssImportant ThemeGreen +hi! link cssVendor ThemeFg1 + +hi! link cssTextProp ThemeCyan +hi! link cssAnimationProp ThemeCyan +hi! link cssUIProp ThemeYellow +hi! link cssTransformProp ThemeCyan +hi! link cssTransitionProp ThemeCyan +hi! link cssPrintProp ThemeCyan +hi! link cssPositioningProp ThemeYellow +hi! link cssBoxProp ThemeCyan +hi! link cssFontDescriptorProp ThemeCyan +hi! link cssFlexibleBoxProp ThemeCyan +hi! link cssBorderOutlineProp ThemeCyan +hi! link cssBackgroundProp ThemeCyan +hi! link cssMarginProp ThemeCyan +hi! link cssListProp ThemeCyan +hi! link cssTableProp ThemeCyan +hi! link cssFontProp ThemeCyan +hi! link cssPaddingProp ThemeCyan +hi! link cssDimensionProp ThemeCyan +hi! link cssRenderProp ThemeCyan +hi! link cssColorProp ThemeCyan +hi! link cssGeneratedContentProp ThemeCyan + + +" CMP +hi! link CmpItemAbbrDeprecated Deprecated +hi! link CmpItemAbbrMatch SearchMatch +hi! link CmpItemAbbrMatchFuzzy SearchMatch +hi! link CmpItemKindClass Type +hi! link CmpItemKindColor Keyword +hi! link CmpItemKindConstant Constant +hi! link CmpItemKindConstructor Special +hi! link CmpItemKindEnum Type +hi! link CmpItemKindEnumMember Constant +hi! link CmpItemKindEvent Identifier +hi! link CmpItemKindField Character +hi! link CmpItemKindFile Directory +hi! link CmpItemKindFolder Directory +hi! link CmpItemKindFunction Function +hi! link CmpItemKindInterface Type +hi! link CmpItemKindKeyword Keyword +hi! link CmpItemKindMethod Function +hi! link CmpItemKindModule Namespace +hi! link CmpItemKindOperator Operator +hi! link CmpItemKindProperty Identifier +hi! link CmpItemKindReference Character +hi! link CmpItemKindSnippet String +hi! link CmpItemKindStruct Type +hi! link CmpItemKindText Text +hi! link CmpItemKindUnit Namespace +hi! link CmpItemKindValue Comment +hi! link CmpItemKindVariable Identifier + +if has("nvim-0.8.0") + hi! link CmpItemKindField @field + hi! link CmpItemKindProperty @property +endif + +" Diff +call hi("DiffAdd", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "") +call hi("DiffChange", s:gui06, s:gui01, s:cterm05, s:cterm01, "", "") +call hi("DiffDelete", s:gui02, s:guibg, s:cterm02, s:ctermbg, "", "") +call hi("DiffText", s:gui0D, s:gui01, s:cterm0D, s:cterm01, "", "") +call hi("DiffAdded", s:gui0B, s:guibg, s:cterm0B, s:ctermbg, "", "") +call hi("DiffFile", s:gui08, s:guibg, s:cterm08, s:ctermbg, "", "") +call hi("DiffNewFile", s:gui0B, s:guibg, s:cterm0B, s:ctermbg, "", "") +call hi("DiffLine", s:gui0D, s:guibg, s:cterm0D, s:ctermbg, "", "") +call hi("DiffRemoved", s:gui08, s:guibg, s:cterm08, s:ctermbg, "", "") + +" Git +call hi("gitcommitOverflow", s:gui08, "", s:cterm08, "", "", "") +call hi("gitcommitSummary", s:gui0B, "", s:cterm0B, "", "", "") +call hi("gitcommitComment", s:gui03, "", s:cterm03, "", "", "") +call hi("gitcommitUntracked", s:gui03, "", s:cterm03, "", "", "") +call hi("gitcommitDiscarded", s:gui03, "", s:cterm03, "", "", "") +call hi("gitcommitSelected", s:gui03, "", s:cterm03, "", "", "") +call hi("gitcommitHeader", s:gui0E, "", s:cterm0E, "", "", "") +call hi("gitcommitSelectedType", s:gui0D, "", s:cterm0D, "", "", "") +call hi("gitcommitUnmergedType", s:gui0D, "", s:cterm0D, "", "", "") +call hi("gitcommitDiscardedType", s:gui0D, "", s:cterm0D, "", "", "") +call hi("gitcommitBranch", s:gui09, "", s:cterm09, "", "bold", "") +call hi("gitcommitUntrackedFile", s:gui0A, "", s:cterm0A, "", "", "") +call hi("gitcommitUnmergedFile", s:gui08, "", s:cterm08, "", "bold", "") +call hi("gitcommitDiscardedFile", s:gui08, "", s:cterm08, "", "bold", "") +call hi("gitcommitSelectedFile", s:gui0B, "", s:cterm0B, "", "bold", "") + +" GitGutter +hi! link GitGutterAdd GitAddSign +hi! link GitGutterChange GitChangeSign +hi! link GitGutterDelete GitDeleteSign +hi! link GitGutterChangeDelete GitChangeDeleteSign + +" indent-blankline (nvim) +if has("nvim") + call hi("@ibl.indent.char.1",s:gui01, "", s:cterm01, "", "", "") +endif + +" HTML +call hi("htmlBold", s:gui07, "", s:cterm0A, "", "bold", "") +call hi("htmlItalic", s:gui06, "", s:cterm0E, "", "italic", "") +call hi("htmlEndTag", s:gui06, "", s:cterm05, "", "", "") +call hi("htmlTag", s:gui06, "", s:cterm05, "", "", "") + +" JavaScript +call hi("javaScript", s:gui06, "", s:cterm05, "", "", "") +call hi("javaScriptBraces", s:gui06, "", s:cterm05, "", "", "") +call hi("javaScriptNumber", s:gui09, "", s:cterm09, "", "", "") +" pangloss/vim-javascript +call hi("jsOperator", s:gui0D, "", s:cterm0D, "", "", "") +call hi("jsStatement", s:gui0E, "", s:cterm0E, "", "", "") +call hi("jsReturn", s:gui0E, "", s:cterm0E, "", "", "") +call hi("jsThis", s:gui08, "", s:cterm08, "", "", "") +call hi("jsClassDefinition", s:gui0A, "", s:cterm0A, "", "", "") +call hi("jsFunction", s:gui0E, "", s:cterm0E, "", "", "") +call hi("jsFuncName", s:gui0D, "", s:cterm0D, "", "", "") +call hi("jsFuncCall", s:gui0D, "", s:cterm0D, "", "", "") +call hi("jsClassFuncName", s:gui0D, "", s:cterm0D, "", "", "") +call hi("jsClassMethodType", s:gui0E, "", s:cterm0E, "", "", "") +call hi("jsRegexpString", s:gui0C, "", s:cterm0C, "", "", "") +call hi("jsGlobalObjects", s:gui0A, "", s:cterm0A, "", "", "") +call hi("jsGlobalNodeObjects", s:gui0A, "", s:cterm0A, "", "", "") +call hi("jsExceptions", s:gui0A, "", s:cterm0A, "", "", "") +call hi("jsBuiltins", s:gui0A, "", s:cterm0A, "", "", "") + +" Mail +call hi("mailQuoted1", s:gui0A, "", s:cterm0A, "", "", "") +call hi("mailQuoted2", s:gui0B, "", s:cterm0B, "", "", "") +call hi("mailQuoted3", s:gui0E, "", s:cterm0E, "", "", "") +call hi("mailQuoted4", s:gui0C, "", s:cterm0C, "", "", "") +call hi("mailQuoted5", s:gui0D, "", s:cterm0D, "", "", "") +call hi("mailQuoted6", s:gui0A, "", s:cterm0A, "", "", "") +call hi("mailURL", s:gui0D, "", s:cterm0D, "", "", "") +call hi("mailEmail", s:gui0D, "", s:cterm0D, "", "", "") + +" Markdown +call hi("markdownCode", s:gui0B, "", s:cterm0B, "", "", "") +call hi("markdownError", s:gui06, s:guibg, s:cterm05, s:ctermbg, "", "") +call hi("markdownCodeBlock", s:gui0B, "", s:cterm0B, "", "", "") +call hi("markdownHeadingDelimiter", s:gui0D, "", s:cterm0D, "", "", "") + +" Matchup +call hi("MatchWord", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "underline", "") + +" NERDTree +call hi("NERDTreeDirSlash", s:gui0D, "", s:cterm0D, "", "", "") +call hi("NERDTreeExecFile", s:gui06, "", s:cterm05, "", "", "") + +" Netrw +hi! link netrwDir ThemeCyan +hi! link netrwClassify ThemeCyan +hi! link netrwLink ThemeBg3 +hi! link netrwSymLink ThemeFg1 +hi! link netrwExe ThemeYellow +hi! link netrwComment ThemeBg3 +hi! link netrwList ThemeBlue +hi! link netrwHelpCmd ThemeCyan +hi! link netrwCmdSep ThemeFg3 +hi! link netrwVersion ThemeGreen + +" PHP +call hi("phpMemberSelector", s:gui06, "", s:cterm05, "", "", "") +call hi("phpComparison", s:gui06, "", s:cterm05, "", "", "") +call hi("phpParent", s:gui06, "", s:cterm05, "", "", "") +call hi("phpMethodsVar", s:gui0C, "", s:cterm0C, "", "", "") + +" Python +"call hi("pythonOperator", s:gui0E, "", s:cterm0E, "", "", "") +"call hi("pythonRepeat", s:gui0E, "", s:cterm0E, "", "", "") +"call hi("pythonInclude", s:gui0E, "", s:cterm0E, "", "", "") +"call hi("pythonStatement", s:gui0E, "", s:cterm0E, "", "", "") + +" hi! link pythonBuiltin ThemeCyan +" hi! link pythonBuiltinObj ThemeCyan +" hi! link pythonBuiltinFunc ThemeGreen +" hi! link pythonFunction Function +hi! link pythonDecorator ThemeYellow +hi! link pythonDecoratorName ThemeYellow +" hi! link pythonTripleQuotes ThemeGreenItalic +" hi! link pythonInclude ThemeBlue +" hi! link pythonImport ThemeBlue +" hi! link pythonRun ThemeBlue +" hi! link pythonCoding ThemeBlue +" hi! link pythonOperator ThemeRed +" hi! link pythonException ThemeRed +" hi! link pythonExceptions ThemeYellow +" hi! link pythonBoolean ThemeYellow +" hi! link pythonDot ThemeFg3 +" hi! link pythonConditional ThemeCyan +" hi! link pythonRepeat ThemeRed +" hi! link pythonDottedName ThemeGreen + + +" Ruby +call hi("rubyAttribute", s:gui0D, "", s:cterm0D, "", "", "") +call hi("rubyConstant", s:gui0A, "", s:cterm0A, "", "", "") +call hi("rubyInterpolationDelimiter", s:gui0F, "", s:cterm0F, "", "", "") +call hi("rubyRegexp", s:gui0C, "", s:cterm0C, "", "", "") +call hi("rubySymbol", s:gui0B, "", s:cterm0B, "", "", "") +call hi("rubyStringDelimiter", s:gui0B, "", s:cterm0B, "", "", "") + +" SASS +call hi("sassidChar", s:gui08, "", s:cterm08, "", "", "") +call hi("sassClassChar", s:gui09, "", s:cterm09, "", "", "") +call hi("sassInclude", s:gui0E, "", s:cterm0E, "", "", "") +call hi("sassMixing", s:gui0E, "", s:cterm0E, "", "", "") +call hi("sassMixinName", s:gui0D, "", s:cterm0D, "", "", "") + +" Signify +hi! link SignifySignAdd GitAddSign +hi! link SignifySignChange GitChangeSign +hi! link SignifySignDelete GitDeleteSign + +" Startify +call hi("StartifyBracket", s:gui03, "", s:cterm03, "", "", "") +call hi("StartifyFile", s:gui07, "", s:cterm07, "", "", "") +call hi("StartifyFooter", s:gui03, "", s:cterm03, "", "", "") +call hi("StartifyHeader", s:gui0B, "", s:cterm0B, "", "", "") +call hi("StartifyNumber", s:gui09, "", s:cterm09, "", "", "") +call hi("StartifyPath", s:gui03, "", s:cterm03, "", "", "") +call hi("StartifySection", s:gui0E, "", s:cterm0E, "", "", "") +call hi("StartifySelect", s:gui0C, "", s:cterm0C, "", "", "") +call hi("StartifySlash", s:gui03, "", s:cterm03, "", "", "") +call hi("StartifySpecial", s:gui03, "", s:cterm03, "", "", "") + +" LSP +if has("nvim") + hi! link DiagnosticError ErrorSign + hi! link DiagnosticWarn WarningSign + hi! link DiagnosticInfo InfoSign + hi! link DiagnosticHint HintSign + hi! link DiagnosticOk OkSign + + hi! link DiagnosticFloatingError ErrorFloat + hi! link DiagnosticFloatingWarn WarningFloat + hi! link DiagnosticFloatingInfo InfoFloat + hi! link DiagnosticFloatingHint HintFloat + hi! link DiagnosticFloatingOk OkFloat + + hi! link DiagnosticUnderlineError ErrorHighlight + hi! link DiagnosticUnderlineWarn WarningHighlight + hi! link DiagnosticUnderlineInfo InfoHighlight + hi! link DiagnosticUnderlineHint HintHighlight + hi! link DiagnosticUnderlineOk OkHighlight + + hi! link DiagnosticsVirtualTextError ErrorSign + hi! link DiagnosticsVirtualTextWarning WarningSign + hi! link DiagnosticsVirtualTextInfo InfoSign + hi! link DiagnosticsVirtualTextHint HintSign + hi! link DiagnosticsVirtualTextOk OkSign + + " Remove untill endif on next nvim release + hi! link LspDiagnosticsSignError ErrorSign + hi! link LspDiagnosticsSignWarning WarningSign + hi! link LspDiagnosticsSignInfo InfoSign + hi! link LspDiagnosticsSignHint HintSign + + hi! link LspDiagnosticsVirtualTextError ErrorSign + hi! link LspDiagnosticsVirtualTextWarning WarningSign + hi! link LspDiagnosticsVirtualTextInfo InfoSign + hi! link LspDiagnosticsVirtualTextHint HintSign + + hi! link LspDiagnosticsFloatingError ErrorFloat + hi! link LspDiagnosticsFloatingWarning WarningFloat + hi! link LspDiagnosticsFloatingInfo InfoFloat + hi! link LspDiagnosticsFloatingHint HintFloat + + hi! link LspDiagnosticsUnderlineError ErrorHighlight + hi! link LspDiagnosticsUnderlineWarning WarningHighlight + hi! link LspDiagnosticsUnderlineInfo InfoHighlight + hi! link LspDiagnosticsUnderlineHint HintHighlight + + hi! link LspReferenceText ReferenceText + hi! link LspReferenceRead ReferenceRead + hi! link LspReferenceWrite ReferenceWrite +endif + +" Java +call hi("javaOperator", s:gui0D, "", s:cterm0D, "", "", "") + +" JSON +hi! link jsonKeyword ThemeGreen +hi! link jsonQuote ThemeGreen +hi! link jsonBraces ThemeFg1 +hi! link jsonString ThemeFg1 + +" Markdown +hi! link markdownH1 ThemeRedBold +hi! link markdownH2 ThemeRed +hi! link markdownH3 ThemeRed +hi! link markdownH4 ThemeRed +hi! link markdownH5 ThemeRed +hi! link markdownH6 ThemeRed + +hi! link markdownCode ThemeYellow +hi! link markdownCodeBlock ThemeYellow +hi! link markdownCodeDelimiter ThemeYellow + +hi! link markdownBlockquote ThemeGrey +hi! link markdownListMarker ThemeBlue +hi! link markdownOrderedListMarker ThemeBlue +hi! link markdownRule ThemeGrey +hi! link markdownHeadingRule ThemeGrey + +hi! link markdownUrlDelimiter ThemeFg3 +hi! link markdownLinkDelimiter ThemeFg3 +hi! link markdownLinkTextDelimiter ThemeFg3 +hi! link markdownHeadingDelimiter ThemeOrange +hi! link markdownUrlTitleDelimiter ThemeGreen + +hi! link markdownLink ThemeGreen +hi! link markdownWikiLink ThemeViolet +hi! link markdownUrl ThemeOrange +hi! link markdownInlineUrl ThemeOrange + +hi! link markdownLinkText ThemeViolet +hi! link markdownIdDeclaration markdownLinkText + +"call s:HL('markdownItalic', s:fg3, s:none, s:italic) +"call s:HL('markdownLinkText', s:gray, s:none, s:underline) + + +" Remove functions +delf hi + +" Remove color variables +unlet s:gui00 s:gui01 s:gui02 s:gui03 s:gui04 s:gui05 s:gui06 s:gui07 s:gui08 s:gui09 s:gui0A s:gui0B s:gui0C s:gui0D s:gui0E s:gui0F s:guibg +unlet s:cterm00 s:cterm01 s:cterm02 s:cterm03 s:cterm04 s:cterm05 s:cterm06 s:cterm07 s:cterm08 s:cterm09 s:cterm0A s:cterm0B s:cterm0C s:cterm0D s:cterm0E s:cterm0F s:ctermbg diff --git a/apps/nvim/hard-tundra-monobiome-dark.vim b/apps/nvim/hard-tundra-monobiome-dark.vim new file mode 100644 index 0000000..d23c2a0 --- /dev/null +++ b/apps/nvim/hard-tundra-monobiome-dark.vim @@ -0,0 +1,882 @@ +" vi:syntax=vim +" +" Top-level remarks: +" +" - `hi` sets highlight colors for syntax groups, allowing one to specify fg and bg colors +" for GUI and terminal Vim. +" - `link` allows for linking one syntax group to another, reusing the same color +" settings. Language-specific groups can then point to one of the base color highlight +" groups, for example, without needing to repeat the raw color values. + +" GUI color definitions +let s:gui00 = "#12161b" +let g:base16_gui00 = "#12161b" +let s:gui01 = "#1e2227" +let g:base16_gui01 = "#1e2227" +let s:gui02 = "#2a2e33" +let g:base16_gui02 = "#2a2e33" +let s:gui03 = "#363b40" +let g:base16_gui03 = "#363b40" +let s:gui04 = "#999fa5" +let g:base16_gui04 = "#999fa5" +let s:gui05 = "#a9afb5" +let g:base16_gui05 = "#a9afb5" +let s:gui06 = "#b9bec5" +let g:base16_gui06 = "#b9bec5" +let s:gui07 = "#c8ced5" +let g:base16_gui07 = "#c8ced5" +let s:gui08 = "#dc4134" +let g:base16_gui08 = "#dc4134" +let s:gui09 = "#b86b05" +let g:base16_gui09 = "#b86b05" +let s:gui0A = "#888346" +let g:base16_gui0A = "#888346" +let s:gui0B = "#4f925a" +let g:base16_gui0B = "#4f925a" +let s:gui0C = "#4f925a" +let g:base16_gui0C = "#4f925a" +let s:gui0D = "#557ecc" +let g:base16_gui0D = "#557ecc" +let s:gui0E = "#557ecc" +let g:base16_gui0E = "#557ecc" +let s:gui0F = "#dc4134" +let g:base16_gui0F = "#dc4134" + +let s:grey = "#6d7278" + +" Terminal color definitions +let s:cterm00 = "00" +let g:base16_cterm00 = "00" +let s:cterm03 = "08" +let g:base16_cterm03 = "08" +let s:cterm05 = "07" +let g:base16_cterm05 = "07" +let s:cterm07 = "15" +let g:base16_cterm07 = "15" +let s:cterm08 = "01" +let g:base16_cterm08 = "01" +let s:cterm0A = "03" +let g:base16_cterm0A = "03" +let s:cterm0B = "02" +let g:base16_cterm0B = "02" +let s:cterm0C = "06" +let g:base16_cterm0C = "06" +let s:cterm0D = "04" +let g:base16_cterm0D = "04" +let s:cterm0E = "05" +let g:base16_cterm0E = "05" + +let s:cterm01 = "10" +let g:base16_cterm01 = "10" +let s:cterm02 = "11" +let g:base16_cterm02 = "11" +let s:cterm04 = "12" +let g:base16_cterm04 = "12" +let s:cterm06 = "13" +let g:base16_cterm06 = "13" +let s:cterm09 = "09" +let g:base16_cterm09 = "09" +let s:cterm0F = "14" +let g:base16_cterm0F = "14" + +" Neovim terminal colours +if has("nvim") + let g:terminal_color_0 = "#12161b" + let g:terminal_color_1 = "#dc4134" + let g:terminal_color_2 = "#4f925a" + let g:terminal_color_3 = "#888346" + let g:terminal_color_4 = "#557ecc" + let g:terminal_color_5 = "#557ecc" + let g:terminal_color_6 = "#4f925a" + let g:terminal_color_7 = "#a9afb5" + let g:terminal_color_8 = "#363b40" + let g:terminal_color_9 = "#dc4134" + let g:terminal_color_10 = "#4f925a" + let g:terminal_color_11 = "#888346" + let g:terminal_color_12 = "#557ecc" + let g:terminal_color_13 = "#557ecc" + let g:terminal_color_14 = "#4f925a" + let g:terminal_color_15 = "#c8ced5" + let g:terminal_color_background = g:terminal_color_0 + let g:terminal_color_foreground = g:terminal_color_5 + + if &background == "light" + let g:terminal_color_background = g:terminal_color_7 + let g:terminal_color_foreground = g:terminal_color_2 + endif + +elseif has("terminal") + let g:terminal_ansi_colors = [ + \ "#12161b", + \ "#dc4134", + \ "#4f925a", + \ "#888346", + \ "#557ecc", + \ "#557ecc", + \ "#4f925a", + \ "#a9afb5", + \ "#363b40", + \ "#dc4134", + \ "#4f925a", + \ "#888346", + \ "#557ecc", + \ "#557ecc", + \ "#4f925a", + \ "#c8ced5", + \ ] +endif + +let s:guibg = s:gui00 +let s:ctermbg = s:cterm00 + +" Theme setup +hi clear +syntax reset +let g:colors_name = "active" + +" Highlighting function +" Optional variables are attributes and guisp +function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) + " For a given syntax group, sets the GUI and terminal foreground and backgrounds + " Optional parameters are interpreted as `attr` and `guisp`, the first of which appears + " to be a modifier for the group (e.g., bold, italic), and `guisp` appears to be + " 'special' colors used for underlines in the GUI. + let l:attr = get(a:, 1, "") + let l:guisp = get(a:, 2, "") + + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + + if a:guifg != "" + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=" . a:guifg + endif + endif + + if a:guibg != "" + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=" . a:guibg + endif + endif + + if a:ctermfg != "" + exec "hi " . a:group . " ctermfg=" . a:ctermfg + endif + + if a:ctermbg != "" + exec "hi " . a:group . " ctermbg=" . a:ctermbg + endif + + if l:attr != "" + exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr + endif + + if l:guisp != "" + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=" . l:guisp + endif + endif +endfunction + + +fun hi(group, guifg, guibg, ctermfg, ctermbg, attr, guisp) + call g:Base16hi(a:group, a:guifg, a:guibg, a:ctermfg, a:ctermbg, a:attr, a:guisp) +endfun + + +" color groups for interpretability +call hi("ThemeBg0", s:gui00, "", s:cterm00, "", "", "") +call hi("ThemeBg1", s:gui01, "", s:cterm01, "", "", "") +call hi("ThemeBg2", s:gui02, "", s:cterm02, "", "", "") +call hi("ThemeBg3", s:gui03, "", s:cterm03, "", "", "") +call hi("ThemeFg3", s:gui04, "", s:cterm04, "", "", "") +call hi("ThemeFg2", s:gui05, "", s:cterm05, "", "", "") +call hi("ThemeFg1", s:gui06, "", s:cterm06, "", "", "") +call hi("ThemeFg0", s:gui07, "", s:cterm07, "", "", "") +" +call hi("ThemeRed", s:gui08, "", s:cterm08, "", "", "") +call hi("ThemeOrange", s:gui09, "", s:cterm09, "", "", "") +call hi("ThemeYellow", s:gui0A, "", s:cterm0A, "", "", "") +call hi("ThemeGreen", s:gui0B, "", s:cterm0B, "", "", "") +call hi("ThemeCyan", s:gui0C, "", s:cterm0C, "", "", "") +call hi("ThemeBlue", s:gui0D, "", s:cterm0D, "", "", "") +call hi("ThemeViolet", s:gui0E, "", s:cterm0E, "", "", "") +call hi("ThemeMagenta", s:gui0F, "", s:cterm0F, "", "", "") + +call hi("ThemeRedBold", s:gui08, "", s:cterm08, "", "bold", "") +call hi("ThemeOrangeBold", s:gui09, "", s:cterm09, "", "bold", "") +call hi("ThemeYellowBold", s:gui0A, "", s:cterm0A, "", "bold", "") +call hi("ThemeGreenBold", s:gui0B, "", s:cterm0B, "", "bold", "") +call hi("ThemeCyanBold", s:gui0C, "", s:cterm0C, "", "bold", "") +call hi("ThemeBlueBold", s:gui0D, "", s:cterm0D, "", "bold", "") +call hi("ThemeVioletBold", s:gui0E, "", s:cterm0E, "", "bold", "") +call hi("ThemeMagentaBold", s:gui0F, "", s:cterm0F, "", "bold", "") + +call hi("ThemeRedItalic", s:gui08, "", s:cterm08, "", "italic", "") +call hi("ThemeOrangeItalic", s:gui09, "", s:cterm09, "", "italic", "") +call hi("ThemeYellowItalic", s:gui0A, "", s:cterm0A, "", "italic", "") +call hi("ThemeGreenItalic", s:gui0B, "", s:cterm0B, "", "italic", "") +call hi("ThemeCyanItalic", s:gui0C, "", s:cterm0C, "", "italic", "") +call hi("ThemeBlueItalic", s:gui0D, "", s:cterm0D, "", "italic", "") +call hi("ThemeVioletItalic", s:gui0E, "", s:cterm0E, "", "italic", "") +call hi("ThemeMagentaItalic", s:gui0F, "", s:cterm0F, "", "italic", "") + +call hi("ThemeGrey", s:grey, "", s:cterm03, "", "", "") +call hi("ThemeGreyItalic", s:grey, "", s:cterm03, "", "italic", "") + + +" Vim editor colors +call hi("Normal", s:gui05, s:guibg, s:cterm05, s:ctermbg, "", "") +call hi("Bold", "", "", "", "", "bold", "") +call hi("Debug", s:gui08, "", s:cterm08, "", "", "") +call hi("Directory", s:gui0D, "", s:cterm0D, "", "", "") +call hi("Error", s:guibg, s:gui08, s:ctermbg, s:cterm08, "", "") +call hi("ErrorMsg", s:gui08, s:guibg, s:cterm08, s:ctermbg, "", "") +call hi("Exception", s:gui08, "", s:cterm08, "", "", "") +call hi("FoldColumn", s:gui03, s:guibg, s:cterm03, s:ctermbg, "", "") +call hi("Folded", s:gui02, s:guibg, s:cterm02, s:ctermbg, "", "") +call hi("IncSearch", s:gui01, s:gui09, s:cterm01, s:cterm09, "none", "") +call hi("Italic", "", "", "", "", "italic", "") +call hi("Macro", s:gui0C, "", s:cterm0C, "", "", "") +call hi("MatchParen", "", s:gui03, "", s:cterm03, "", "") +call hi("ModeMsg", s:gui0B, "", s:cterm0B, "", "", "") +call hi("MoreMsg", s:gui0B, "", s:cterm0B, "", "", "") +call hi("Question", s:gui0D, "", s:cterm0D, "", "", "") +call hi("Search", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "", "") +call hi("Substitute", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "none", "") +call hi("SpecialKey", s:gui03, "", s:cterm03, "", "", "") +call hi("TooLong", s:gui08, "", s:cterm08, "", "", "") +call hi("Underlined", "", "", "", "", "underline", "fg") +call hi("Visual", "", s:gui02, "", s:cterm02, "", "") +call hi("VisualNOS", s:gui08, "", s:cterm08, "", "", "") +call hi("WarningMsg", s:gui08, "", s:cterm08, "", "", "") +call hi("WildMenu", s:guibg, s:gui06, s:ctermbg, s:cterm05, "", "") +call hi("Title", s:gui0D, "", s:cterm0D, "", "none", "") +call hi("Conceal", s:gui0D, s:guibg, s:cterm0D, s:ctermbg, "", "") +call hi("Cursor", s:gui05, s:guibg, "", "", "inverse", "") +call hi("NonText", s:gui03, "", s:cterm03, "", "", "") +call hi("Whitespace", s:gui03, "", s:cterm03, "", "", "") +call hi("LineNr", s:gui03, s:guibg, s:cterm03, s:ctermbg, "", "") +call hi("SignColumn", s:gui03, s:guibg, s:cterm03, s:ctermbg, "", "") +call hi("StatusLine", s:gui07, s:gui01, s:cterm07, s:cterm01, "none", "") +call hi("StatusLineNC", s:gui06, s:gui01, s:cterm05, s:cterm01, "none", "") +call hi("VertSplit", s:gui01, s:guibg, s:cterm01, s:ctermbg, "none", "") +call hi("ColorColumn", "", s:gui01, "", s:cterm01, "none", "") +call hi("CursorColumn", "", s:gui01, "", s:cterm01, "none", "") +call hi("CursorLine", "", s:gui01, "", s:cterm01, "none", "") +call hi("CursorLineNr", s:gui04, s:gui01, s:cterm04, s:cterm01, "bold", "") +call hi("QuickFixLine", "", s:gui01, "", s:cterm01, "none", "") +call hi("PMenu", s:gui06, s:gui01, s:cterm06, s:cterm01, "none", "") +call hi("PMenuSel", s:gui06, s:gui02, s:cterm06, s:cterm02, "", "") +call hi("PMenuSbar", "", s:gui03, "", s:cterm03, "", "") +call hi("PMenuThumb", "", s:gui04, "", s:cterm04, "", "") +call hi("TabLine", s:gui03, s:gui01, s:cterm03, s:cterm01, "none", "") +call hi("TabLineFill", s:gui03, s:gui01, s:cterm03, s:cterm01, "none", "") +call hi("TabLineSel", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "none", "") + +" Standard syntax +hi! link Boolean ThemeOrange +hi! link Character ThemeRed + +"call hi("Comment", s:gui03, "", s:cterm03, "", "italic", "") +hi! link Comment ThemeGreyItalic + +hi! link Conditional ThemeRed +hi! link Constant ThemeOrange +call hi("Define", s:gui0E, "", s:cterm0E, "", "none", "") +hi! link Delimiter ThemeFg1 + +if has("patch-8.0.1038") + call hi("Deprecated", "", "", "", "", "strikethrough", "") +endif + +hi! link Float ThemeOrange +hi! link Function ThemeBlue +call hi("Identifier", s:gui06, "", s:cterm05, "", "none", "") +hi! link Include ThemeBlue +hi! link Constant ThemeOrange +call hi("Keyword", s:gui0E, "", s:cterm0E, "", "none", "") +hi! link Label ThemeOrange +hi! link Number ThemeOrange +hi! link Operator ThemeYellow +hi! link PreProc ThemeOrange +hi! link Repeat ThemeViolet +hi! link Special ThemeYellow +hi! link SpecialChar ThemeMagenta +hi! link Statement ThemeRed +hi! link StorageClass ThemeOrange +hi! link String ThemeGreen +hi! link Structure ThemeOrange +hi! link Tag ThemeOrange + +call hi("Todo", s:gui08, s:guibg, s:cterm08, s:ctermbg, "italic", "") +call hi("Type", s:gui0A, "", s:cterm0A, "", "none", "") + +hi! link Typedef ThemeOrange + + +" Treesitter +if has("nvim-0.8.0") + call hi("@field", s:gui08, "", s:cterm08, "", "", "") + call hi("@property", s:gui08, "", s:cterm08, "", "", "") + call hi("@namespace", s:gui06, "", s:cterm05, "", "italic", "") + call hi("@variable.builtin", s:gui06, "", s:cterm05, "", "italic", "") + call hi("@text.reference", s:gui08, "", s:cterm08, "", "", "") + call hi("@text.uri", s:gui08, "", s:cterm08, "", "italic", "") + + " Annotations & Attributes + call hi("@annotation", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@attribute", s:gui0D, "", s:cterm0D, "", "", "") + + " Booleans, Characters & Comments + call hi("@boolean", s:gui09, "", s:cterm09, "", "", "") + call hi("@character", s:gui08, "", s:cterm08, "", "", "") + call hi("@character.special", s:gui0F, "", s:cterm0F, "", "", "") + call hi("@comment", s:gui03, "", s:cterm03, "", "", "") + + " Conditionals, Constants & Debugging + call hi("@keyword.conditional", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@constant", s:gui09, "", s:cterm09, "", "", "") + call hi("@constant.builtin", s:gui09, "", s:cterm09, "", "", "") + call hi("@constant.macro", s:gui08, "", s:cterm08, "", "", "") + call hi("@keyword.debug", s:gui08, "", s:cterm08, "", "", "") + + " Directives & Exceptions + call hi("@keyword.directive.define", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@keyword.exception", s:gui0E, "", s:cterm0E, "", "", "") + + " Floats & Functions + call hi("@number.float", s:gui09, "", s:cterm09, "", "", "") + call hi("@function", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@function.builtin", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@function.call", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@function.macro", s:gui08, "", s:cterm08, "", "", "") + + " Imports, Operators & Returns + call hi("@keyword.import", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@keyword.coroutine", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@keyword.operator", s:gui06, "", s:cterm05, "", "", "") + call hi("@keyword.return", s:gui0E, "", s:cterm0E, "", "", "") + + " Methods & Namespaces + call hi("@function.method", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@function.method.call", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@namespace.builtin", s:gui0E, "", s:cterm0E, "", "", "") + + " Numbers & Directives + call hi("@none", s:gui06, "", s:cterm05, "", "", "") + call hi("@number", s:gui09, "", s:cterm09, "", "", "") + call hi("@keyword.directive", s:gui0E, "", s:cterm0E, "", "", "") + + " Repeats, Storage & Strings + call hi("@keyword.repeat", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@keyword.storage", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@string", s:gui0B, "", s:cterm0B, "", "", "") + + " Tags & Markup + call hi("@markup.link.label", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.link.label.symbol", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@tag", s:gui08, "", s:cterm08, "", "", "") + call hi("@tag.attribute", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@tag.delimiter", s:gui0F, "", s:cterm0F, "", "", "") + + " More Markup + call hi("@markup", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.environment", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.environment.name", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.raw", s:gui09, "", s:cterm09, "", "", "") + call hi("@markup.math", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.strong", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.emphasis", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.strikethrough", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.underline", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.heading", s:gui0D, "", s:cterm0D, "", "", "") + + " Comments & Types + call hi("@comment.note", s:gui03, "", s:cterm03, "", "", "") + call hi("@comment.error", s:gui08, "", s:cterm08, "", "", "") + call hi("@comment.hint", s:gui0B, "", s:cterm0B, "", "", "") + call hi("@comment.info", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@comment.warning", s:gui09, "", s:cterm09, "", "", "") + call hi("@comment.todo", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.link.url", s:gui09, "", s:cterm09, "", "", "") + call hi("@type", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@type.definition", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@type.qualifier", s:gui0E, "", s:cterm0E, "", "", "") +endif + +" Standard highlights to be used by plugins +if has("patch-8.0.1038") + call hi("Deprecated", "", "", "", "", "strikethrough", "") +endif +call hi("SearchMatch", s:gui0C, "", s:cterm0C, "", "", "") + +call hi("GitAddSign", s:gui0B, "", s:cterm0B, "", "", "") +call hi("GitChangeSign", s:gui04, "", s:cterm04, "", "", "") +call hi("GitDeleteSign", s:gui08, "", s:cterm08, "", "", "") +call hi("GitChangeDeleteSign", s:gui04, "", s:cterm04, "", "", "") + +call hi("ErrorSign", s:gui08, "", s:cterm08, "", "", "") +call hi("WarningSign", s:gui09, "", s:cterm09, "", "", "") +call hi("InfoSign", s:gui0D, "", s:cterm0D, "", "", "") +call hi("HintSign", s:gui0C, "", s:cterm0C, "", "", "") +call hi("OkSign", s:gui0B, "", s:cterm0B, "", "", "") + +call hi("ErrorFloat", s:gui08, s:gui01, s:cterm08, s:cterm01, "", "") +call hi("WarningFloat", s:gui09, s:gui01, s:cterm09, s:cterm01, "", "") +call hi("InfoFloat", s:gui0D, s:gui01, s:cterm0D, s:cterm01, "", "") +call hi("HintFloat", s:gui0C, s:gui01, s:cterm0C, s:cterm01, "", "") +call hi("OkFloat", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "") + +call hi("ErrorHighlight", "", "", s:ctermbg, s:cterm08, "underline", s:gui08) +call hi("WarningHighlight", "", "", s:ctermbg, s:cterm09, "underline", s:gui09) +call hi("InfoHighlight", "", "", s:ctermbg, s:cterm0D, "underline", s:gui0D) +call hi("HintHighlight", "", "", s:ctermbg, s:cterm0C, "underline", s:gui0C) +call hi("OkHighlight", "", "", s:ctermbg, s:cterm0B, "underline", s:gui0B) + +call hi("SpellBad", "", "", s:ctermbg, s:cterm08, "undercurl", s:gui08) +call hi("SpellLocal", "", "", s:ctermbg, s:cterm0C, "undercurl", s:gui0C) +call hi("SpellCap", "", "", s:ctermbg, s:cterm0D, "undercurl", s:gui0D) +call hi("SpellRare", "", "", s:ctermbg, s:cterm0E, "undercurl", s:gui0E) + +call hi("ReferenceText", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "", "") +call hi("ReferenceRead", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "", "") +call hi("ReferenceWrite", s:gui01, s:gui08, s:cterm01, s:cterm08, "", "") + +" C +call hi("cOperator", s:gui0C, "", s:cterm0C, "", "", "") +call hi("cPreCondit", s:gui0E, "", s:cterm0E, "", "", "") + +" C# +call hi("csClass", s:gui0A, "", s:cterm0A, "", "", "") +call hi("csAttribute", s:gui0A, "", s:cterm0A, "", "", "") +call hi("csModifier", s:gui0E, "", s:cterm0E, "", "", "") +call hi("csType", s:gui08, "", s:cterm08, "", "", "") +call hi("csUnspecifiedStatement", s:gui0D, "", s:cterm0D, "", "", "") +call hi("csContextualStatement", s:gui0E, "", s:cterm0E, "", "", "") +call hi("csNewDecleration", s:gui08, "", s:cterm08, "", "", "") + +" Clap +hi! link ClapInput ColorColumn +hi! link ClapSpinner ColorColumn +hi! link ClapDisplay Default +hi! link ClapPreview ColorColumn +hi! link ClapCurrentSelection CursorLine +hi! link ClapNoMatchesFound ErrorFloat + +" Coc +hi! link CocErrorSign ErrorSign +hi! link CocWarningSign WarningSign +hi! link CocInfoSign InfoSign +hi! link CocHintSign HintSign + +hi! link CocErrorFloat ErrorFloat +hi! link CocWarningFloat WarningFloat +hi! link CocInfoFloat InfoFloat +hi! link CocHintFloat HintFloat + +hi! link CocErrorHighlight ErrorHighlight +hi! link CocWarningHighlight WarningHighlight +hi! link CocInfoHighlight InfoHighlight +hi! link CocHintHighlight HintHighlight + +hi! link CocSem_angle Keyword +hi! link CocSem_annotation Keyword +hi! link CocSem_attribute Type +hi! link CocSem_bitwise Keyword +hi! link CocSem_boolean Boolean +hi! link CocSem_brace Normal +hi! link CocSem_bracket Normal +hi! link CocSem_builtinAttribute Type +hi! link CocSem_builtinType Type +hi! link CocSem_character String +hi! link CocSem_class Structure +hi! link CocSem_colon Normal +hi! link CocSem_comma Normal +hi! link CocSem_comment Comment +hi! link CocSem_comparison Keyword +hi! link CocSem_concept Keyword +hi! link CocSem_constParameter Identifier +hi! link CocSem_dependent Keyword +hi! link CocSem_dot Keyword +hi! link CocSem_enum Structure +hi! link CocSem_enumMember Constant +hi! link CocSem_escapeSequence Type +hi! link CocSem_event Identifier +hi! link CocSem_formatSpecifier Type +hi! link CocSem_function Function +hi! link CocSem_interface Type +hi! link CocSem_keyword Keyword +hi! link CocSem_label Keyword +hi! link CocSem_logical Keyword +hi! link CocSem_macro Macro +hi! link CocSem_method Function +hi! link CocSem_modifier Keyword +hi! link CocSem_namespace Identifier +hi! link CocSem_number Number +hi! link CocSem_operator Operator +hi! link CocSem_parameter Identifier +hi! link CocSem_parenthesis Normal +hi! link CocSem_property Identifier +hi! link CocSem_punctuation Keyword +hi! link CocSem_regexp Type +hi! link CocSem_selfKeyword Constant +hi! link CocSem_semicolon Normal +hi! link CocSem_string String +hi! link CocSem_struct Structure +hi! link CocSem_type Type +hi! link CocSem_typeAlias Type +hi! link CocSem_typeParameter Type +hi! link CocSem_unknown Normal +hi! link CocSem_variable Identifier + +call hi("CocHighlightRead", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "") +call hi("CocHighlightText", s:gui0A, s:gui01, s:cterm0A, s:cterm01, "", "") +call hi("CocHighlightWrite", s:gui08, s:gui01, s:cterm08, s:cterm01, "", "") +call hi("CocListMode", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "bold", "") +call hi("CocListPath", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "", "") +call hi("CocSessionsName", s:gui06, "", s:cterm05, "", "", "") + +" CSS +hi! link cssBraces ThemeBlue +hi! link cssFunctionName ThemeYellow +hi! link cssIdentifier ThemeOrange +hi! link cssClassName ThemeGreen +hi! link cssColor ThemeBlue +hi! link cssSelectorOp ThemeBlue +hi! link cssSelectorOp2 ThemeBlue +hi! link cssImportant ThemeGreen +hi! link cssVendor ThemeFg1 + +hi! link cssTextProp ThemeCyan +hi! link cssAnimationProp ThemeCyan +hi! link cssUIProp ThemeYellow +hi! link cssTransformProp ThemeCyan +hi! link cssTransitionProp ThemeCyan +hi! link cssPrintProp ThemeCyan +hi! link cssPositioningProp ThemeYellow +hi! link cssBoxProp ThemeCyan +hi! link cssFontDescriptorProp ThemeCyan +hi! link cssFlexibleBoxProp ThemeCyan +hi! link cssBorderOutlineProp ThemeCyan +hi! link cssBackgroundProp ThemeCyan +hi! link cssMarginProp ThemeCyan +hi! link cssListProp ThemeCyan +hi! link cssTableProp ThemeCyan +hi! link cssFontProp ThemeCyan +hi! link cssPaddingProp ThemeCyan +hi! link cssDimensionProp ThemeCyan +hi! link cssRenderProp ThemeCyan +hi! link cssColorProp ThemeCyan +hi! link cssGeneratedContentProp ThemeCyan + + +" CMP +hi! link CmpItemAbbrDeprecated Deprecated +hi! link CmpItemAbbrMatch SearchMatch +hi! link CmpItemAbbrMatchFuzzy SearchMatch +hi! link CmpItemKindClass Type +hi! link CmpItemKindColor Keyword +hi! link CmpItemKindConstant Constant +hi! link CmpItemKindConstructor Special +hi! link CmpItemKindEnum Type +hi! link CmpItemKindEnumMember Constant +hi! link CmpItemKindEvent Identifier +hi! link CmpItemKindField Character +hi! link CmpItemKindFile Directory +hi! link CmpItemKindFolder Directory +hi! link CmpItemKindFunction Function +hi! link CmpItemKindInterface Type +hi! link CmpItemKindKeyword Keyword +hi! link CmpItemKindMethod Function +hi! link CmpItemKindModule Namespace +hi! link CmpItemKindOperator Operator +hi! link CmpItemKindProperty Identifier +hi! link CmpItemKindReference Character +hi! link CmpItemKindSnippet String +hi! link CmpItemKindStruct Type +hi! link CmpItemKindText Text +hi! link CmpItemKindUnit Namespace +hi! link CmpItemKindValue Comment +hi! link CmpItemKindVariable Identifier + +if has("nvim-0.8.0") + hi! link CmpItemKindField @field + hi! link CmpItemKindProperty @property +endif + +" Diff +call hi("DiffAdd", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "") +call hi("DiffChange", s:gui06, s:gui01, s:cterm05, s:cterm01, "", "") +call hi("DiffDelete", s:gui02, s:guibg, s:cterm02, s:ctermbg, "", "") +call hi("DiffText", s:gui0D, s:gui01, s:cterm0D, s:cterm01, "", "") +call hi("DiffAdded", s:gui0B, s:guibg, s:cterm0B, s:ctermbg, "", "") +call hi("DiffFile", s:gui08, s:guibg, s:cterm08, s:ctermbg, "", "") +call hi("DiffNewFile", s:gui0B, s:guibg, s:cterm0B, s:ctermbg, "", "") +call hi("DiffLine", s:gui0D, s:guibg, s:cterm0D, s:ctermbg, "", "") +call hi("DiffRemoved", s:gui08, s:guibg, s:cterm08, s:ctermbg, "", "") + +" Git +call hi("gitcommitOverflow", s:gui08, "", s:cterm08, "", "", "") +call hi("gitcommitSummary", s:gui0B, "", s:cterm0B, "", "", "") +call hi("gitcommitComment", s:gui03, "", s:cterm03, "", "", "") +call hi("gitcommitUntracked", s:gui03, "", s:cterm03, "", "", "") +call hi("gitcommitDiscarded", s:gui03, "", s:cterm03, "", "", "") +call hi("gitcommitSelected", s:gui03, "", s:cterm03, "", "", "") +call hi("gitcommitHeader", s:gui0E, "", s:cterm0E, "", "", "") +call hi("gitcommitSelectedType", s:gui0D, "", s:cterm0D, "", "", "") +call hi("gitcommitUnmergedType", s:gui0D, "", s:cterm0D, "", "", "") +call hi("gitcommitDiscardedType", s:gui0D, "", s:cterm0D, "", "", "") +call hi("gitcommitBranch", s:gui09, "", s:cterm09, "", "bold", "") +call hi("gitcommitUntrackedFile", s:gui0A, "", s:cterm0A, "", "", "") +call hi("gitcommitUnmergedFile", s:gui08, "", s:cterm08, "", "bold", "") +call hi("gitcommitDiscardedFile", s:gui08, "", s:cterm08, "", "bold", "") +call hi("gitcommitSelectedFile", s:gui0B, "", s:cterm0B, "", "bold", "") + +" GitGutter +hi! link GitGutterAdd GitAddSign +hi! link GitGutterChange GitChangeSign +hi! link GitGutterDelete GitDeleteSign +hi! link GitGutterChangeDelete GitChangeDeleteSign + +" indent-blankline (nvim) +if has("nvim") + call hi("@ibl.indent.char.1",s:gui01, "", s:cterm01, "", "", "") +endif + +" HTML +call hi("htmlBold", s:gui07, "", s:cterm0A, "", "bold", "") +call hi("htmlItalic", s:gui06, "", s:cterm0E, "", "italic", "") +call hi("htmlEndTag", s:gui06, "", s:cterm05, "", "", "") +call hi("htmlTag", s:gui06, "", s:cterm05, "", "", "") + +" JavaScript +call hi("javaScript", s:gui06, "", s:cterm05, "", "", "") +call hi("javaScriptBraces", s:gui06, "", s:cterm05, "", "", "") +call hi("javaScriptNumber", s:gui09, "", s:cterm09, "", "", "") +" pangloss/vim-javascript +call hi("jsOperator", s:gui0D, "", s:cterm0D, "", "", "") +call hi("jsStatement", s:gui0E, "", s:cterm0E, "", "", "") +call hi("jsReturn", s:gui0E, "", s:cterm0E, "", "", "") +call hi("jsThis", s:gui08, "", s:cterm08, "", "", "") +call hi("jsClassDefinition", s:gui0A, "", s:cterm0A, "", "", "") +call hi("jsFunction", s:gui0E, "", s:cterm0E, "", "", "") +call hi("jsFuncName", s:gui0D, "", s:cterm0D, "", "", "") +call hi("jsFuncCall", s:gui0D, "", s:cterm0D, "", "", "") +call hi("jsClassFuncName", s:gui0D, "", s:cterm0D, "", "", "") +call hi("jsClassMethodType", s:gui0E, "", s:cterm0E, "", "", "") +call hi("jsRegexpString", s:gui0C, "", s:cterm0C, "", "", "") +call hi("jsGlobalObjects", s:gui0A, "", s:cterm0A, "", "", "") +call hi("jsGlobalNodeObjects", s:gui0A, "", s:cterm0A, "", "", "") +call hi("jsExceptions", s:gui0A, "", s:cterm0A, "", "", "") +call hi("jsBuiltins", s:gui0A, "", s:cterm0A, "", "", "") + +" Mail +call hi("mailQuoted1", s:gui0A, "", s:cterm0A, "", "", "") +call hi("mailQuoted2", s:gui0B, "", s:cterm0B, "", "", "") +call hi("mailQuoted3", s:gui0E, "", s:cterm0E, "", "", "") +call hi("mailQuoted4", s:gui0C, "", s:cterm0C, "", "", "") +call hi("mailQuoted5", s:gui0D, "", s:cterm0D, "", "", "") +call hi("mailQuoted6", s:gui0A, "", s:cterm0A, "", "", "") +call hi("mailURL", s:gui0D, "", s:cterm0D, "", "", "") +call hi("mailEmail", s:gui0D, "", s:cterm0D, "", "", "") + +" Markdown +call hi("markdownCode", s:gui0B, "", s:cterm0B, "", "", "") +call hi("markdownError", s:gui06, s:guibg, s:cterm05, s:ctermbg, "", "") +call hi("markdownCodeBlock", s:gui0B, "", s:cterm0B, "", "", "") +call hi("markdownHeadingDelimiter", s:gui0D, "", s:cterm0D, "", "", "") + +" Matchup +call hi("MatchWord", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "underline", "") + +" NERDTree +call hi("NERDTreeDirSlash", s:gui0D, "", s:cterm0D, "", "", "") +call hi("NERDTreeExecFile", s:gui06, "", s:cterm05, "", "", "") + +" Netrw +hi! link netrwDir ThemeCyan +hi! link netrwClassify ThemeCyan +hi! link netrwLink ThemeBg3 +hi! link netrwSymLink ThemeFg1 +hi! link netrwExe ThemeYellow +hi! link netrwComment ThemeBg3 +hi! link netrwList ThemeBlue +hi! link netrwHelpCmd ThemeCyan +hi! link netrwCmdSep ThemeFg3 +hi! link netrwVersion ThemeGreen + +" PHP +call hi("phpMemberSelector", s:gui06, "", s:cterm05, "", "", "") +call hi("phpComparison", s:gui06, "", s:cterm05, "", "", "") +call hi("phpParent", s:gui06, "", s:cterm05, "", "", "") +call hi("phpMethodsVar", s:gui0C, "", s:cterm0C, "", "", "") + +" Python +"call hi("pythonOperator", s:gui0E, "", s:cterm0E, "", "", "") +"call hi("pythonRepeat", s:gui0E, "", s:cterm0E, "", "", "") +"call hi("pythonInclude", s:gui0E, "", s:cterm0E, "", "", "") +"call hi("pythonStatement", s:gui0E, "", s:cterm0E, "", "", "") + +" hi! link pythonBuiltin ThemeCyan +" hi! link pythonBuiltinObj ThemeCyan +" hi! link pythonBuiltinFunc ThemeGreen +" hi! link pythonFunction Function +hi! link pythonDecorator ThemeYellow +hi! link pythonDecoratorName ThemeYellow +" hi! link pythonTripleQuotes ThemeGreenItalic +" hi! link pythonInclude ThemeBlue +" hi! link pythonImport ThemeBlue +" hi! link pythonRun ThemeBlue +" hi! link pythonCoding ThemeBlue +" hi! link pythonOperator ThemeRed +" hi! link pythonException ThemeRed +" hi! link pythonExceptions ThemeYellow +" hi! link pythonBoolean ThemeYellow +" hi! link pythonDot ThemeFg3 +" hi! link pythonConditional ThemeCyan +" hi! link pythonRepeat ThemeRed +" hi! link pythonDottedName ThemeGreen + + +" Ruby +call hi("rubyAttribute", s:gui0D, "", s:cterm0D, "", "", "") +call hi("rubyConstant", s:gui0A, "", s:cterm0A, "", "", "") +call hi("rubyInterpolationDelimiter", s:gui0F, "", s:cterm0F, "", "", "") +call hi("rubyRegexp", s:gui0C, "", s:cterm0C, "", "", "") +call hi("rubySymbol", s:gui0B, "", s:cterm0B, "", "", "") +call hi("rubyStringDelimiter", s:gui0B, "", s:cterm0B, "", "", "") + +" SASS +call hi("sassidChar", s:gui08, "", s:cterm08, "", "", "") +call hi("sassClassChar", s:gui09, "", s:cterm09, "", "", "") +call hi("sassInclude", s:gui0E, "", s:cterm0E, "", "", "") +call hi("sassMixing", s:gui0E, "", s:cterm0E, "", "", "") +call hi("sassMixinName", s:gui0D, "", s:cterm0D, "", "", "") + +" Signify +hi! link SignifySignAdd GitAddSign +hi! link SignifySignChange GitChangeSign +hi! link SignifySignDelete GitDeleteSign + +" Startify +call hi("StartifyBracket", s:gui03, "", s:cterm03, "", "", "") +call hi("StartifyFile", s:gui07, "", s:cterm07, "", "", "") +call hi("StartifyFooter", s:gui03, "", s:cterm03, "", "", "") +call hi("StartifyHeader", s:gui0B, "", s:cterm0B, "", "", "") +call hi("StartifyNumber", s:gui09, "", s:cterm09, "", "", "") +call hi("StartifyPath", s:gui03, "", s:cterm03, "", "", "") +call hi("StartifySection", s:gui0E, "", s:cterm0E, "", "", "") +call hi("StartifySelect", s:gui0C, "", s:cterm0C, "", "", "") +call hi("StartifySlash", s:gui03, "", s:cterm03, "", "", "") +call hi("StartifySpecial", s:gui03, "", s:cterm03, "", "", "") + +" LSP +if has("nvim") + hi! link DiagnosticError ErrorSign + hi! link DiagnosticWarn WarningSign + hi! link DiagnosticInfo InfoSign + hi! link DiagnosticHint HintSign + hi! link DiagnosticOk OkSign + + hi! link DiagnosticFloatingError ErrorFloat + hi! link DiagnosticFloatingWarn WarningFloat + hi! link DiagnosticFloatingInfo InfoFloat + hi! link DiagnosticFloatingHint HintFloat + hi! link DiagnosticFloatingOk OkFloat + + hi! link DiagnosticUnderlineError ErrorHighlight + hi! link DiagnosticUnderlineWarn WarningHighlight + hi! link DiagnosticUnderlineInfo InfoHighlight + hi! link DiagnosticUnderlineHint HintHighlight + hi! link DiagnosticUnderlineOk OkHighlight + + hi! link DiagnosticsVirtualTextError ErrorSign + hi! link DiagnosticsVirtualTextWarning WarningSign + hi! link DiagnosticsVirtualTextInfo InfoSign + hi! link DiagnosticsVirtualTextHint HintSign + hi! link DiagnosticsVirtualTextOk OkSign + + " Remove untill endif on next nvim release + hi! link LspDiagnosticsSignError ErrorSign + hi! link LspDiagnosticsSignWarning WarningSign + hi! link LspDiagnosticsSignInfo InfoSign + hi! link LspDiagnosticsSignHint HintSign + + hi! link LspDiagnosticsVirtualTextError ErrorSign + hi! link LspDiagnosticsVirtualTextWarning WarningSign + hi! link LspDiagnosticsVirtualTextInfo InfoSign + hi! link LspDiagnosticsVirtualTextHint HintSign + + hi! link LspDiagnosticsFloatingError ErrorFloat + hi! link LspDiagnosticsFloatingWarning WarningFloat + hi! link LspDiagnosticsFloatingInfo InfoFloat + hi! link LspDiagnosticsFloatingHint HintFloat + + hi! link LspDiagnosticsUnderlineError ErrorHighlight + hi! link LspDiagnosticsUnderlineWarning WarningHighlight + hi! link LspDiagnosticsUnderlineInfo InfoHighlight + hi! link LspDiagnosticsUnderlineHint HintHighlight + + hi! link LspReferenceText ReferenceText + hi! link LspReferenceRead ReferenceRead + hi! link LspReferenceWrite ReferenceWrite +endif + +" Java +call hi("javaOperator", s:gui0D, "", s:cterm0D, "", "", "") + +" JSON +hi! link jsonKeyword ThemeGreen +hi! link jsonQuote ThemeGreen +hi! link jsonBraces ThemeFg1 +hi! link jsonString ThemeFg1 + +" Markdown +hi! link markdownH1 ThemeRedBold +hi! link markdownH2 ThemeRed +hi! link markdownH3 ThemeRed +hi! link markdownH4 ThemeRed +hi! link markdownH5 ThemeRed +hi! link markdownH6 ThemeRed + +hi! link markdownCode ThemeYellow +hi! link markdownCodeBlock ThemeYellow +hi! link markdownCodeDelimiter ThemeYellow + +hi! link markdownBlockquote ThemeGrey +hi! link markdownListMarker ThemeBlue +hi! link markdownOrderedListMarker ThemeBlue +hi! link markdownRule ThemeGrey +hi! link markdownHeadingRule ThemeGrey + +hi! link markdownUrlDelimiter ThemeFg3 +hi! link markdownLinkDelimiter ThemeFg3 +hi! link markdownLinkTextDelimiter ThemeFg3 +hi! link markdownHeadingDelimiter ThemeOrange +hi! link markdownUrlTitleDelimiter ThemeGreen + +hi! link markdownLink ThemeGreen +hi! link markdownWikiLink ThemeViolet +hi! link markdownUrl ThemeOrange +hi! link markdownInlineUrl ThemeOrange + +hi! link markdownLinkText ThemeViolet +hi! link markdownIdDeclaration markdownLinkText + +"call s:HL('markdownItalic', s:fg3, s:none, s:italic) +"call s:HL('markdownLinkText', s:gray, s:none, s:underline) + + +" Remove functions +delf hi + +" Remove color variables +unlet s:gui00 s:gui01 s:gui02 s:gui03 s:gui04 s:gui05 s:gui06 s:gui07 s:gui08 s:gui09 s:gui0A s:gui0B s:gui0C s:gui0D s:gui0E s:gui0F s:guibg +unlet s:cterm00 s:cterm01 s:cterm02 s:cterm03 s:cterm04 s:cterm05 s:cterm06 s:cterm07 s:cterm08 s:cterm09 s:cterm0A s:cterm0B s:cterm0C s:cterm0D s:cterm0E s:cterm0F s:ctermbg diff --git a/apps/nvim/hard-tundra-monobiome-light.vim b/apps/nvim/hard-tundra-monobiome-light.vim new file mode 100644 index 0000000..4b67a77 --- /dev/null +++ b/apps/nvim/hard-tundra-monobiome-light.vim @@ -0,0 +1,882 @@ +" vi:syntax=vim +" +" Top-level remarks: +" +" - `hi` sets highlight colors for syntax groups, allowing one to specify fg and bg colors +" for GUI and terminal Vim. +" - `link` allows for linking one syntax group to another, reusing the same color +" settings. Language-specific groups can then point to one of the base color highlight +" groups, for example, without needing to repeat the raw color values. + +" GUI color definitions +let s:gui00 = "#d9dfe5" +let g:base16_gui00 = "#d9dfe5" +let s:gui01 = "#c8ced5" +let g:base16_gui01 = "#c8ced5" +let s:gui02 = "#b9bec5" +let g:base16_gui02 = "#b9bec5" +let s:gui03 = "#a9afb5" +let g:base16_gui03 = "#a9afb5" +let s:gui04 = "#43484e" +let g:base16_gui04 = "#43484e" +let s:gui05 = "#363b40" +let g:base16_gui05 = "#363b40" +let s:gui06 = "#2a2e33" +let g:base16_gui06 = "#2a2e33" +let s:gui07 = "#1e2227" +let g:base16_gui07 = "#1e2227" +let s:gui08 = "#ca2e23" +let g:base16_gui08 = "#ca2e23" +let s:gui09 = "#a45e00" +let g:base16_gui09 = "#a45e00" +let s:gui0A = "#79743d" +let g:base16_gui0A = "#79743d" +let s:gui0B = "#42824e" +let g:base16_gui0B = "#42824e" +let s:gui0C = "#42824e" +let g:base16_gui0C = "#42824e" +let s:gui0D = "#456fbe" +let g:base16_gui0D = "#456fbe" +let s:gui0E = "#456fbe" +let g:base16_gui0E = "#456fbe" +let s:gui0F = "#ca2e23" +let g:base16_gui0F = "#ca2e23" + +let s:grey = "#6d7278" + +" Terminal color definitions +let s:cterm00 = "00" +let g:base16_cterm00 = "00" +let s:cterm03 = "08" +let g:base16_cterm03 = "08" +let s:cterm05 = "07" +let g:base16_cterm05 = "07" +let s:cterm07 = "15" +let g:base16_cterm07 = "15" +let s:cterm08 = "01" +let g:base16_cterm08 = "01" +let s:cterm0A = "03" +let g:base16_cterm0A = "03" +let s:cterm0B = "02" +let g:base16_cterm0B = "02" +let s:cterm0C = "06" +let g:base16_cterm0C = "06" +let s:cterm0D = "04" +let g:base16_cterm0D = "04" +let s:cterm0E = "05" +let g:base16_cterm0E = "05" + +let s:cterm01 = "10" +let g:base16_cterm01 = "10" +let s:cterm02 = "11" +let g:base16_cterm02 = "11" +let s:cterm04 = "12" +let g:base16_cterm04 = "12" +let s:cterm06 = "13" +let g:base16_cterm06 = "13" +let s:cterm09 = "09" +let g:base16_cterm09 = "09" +let s:cterm0F = "14" +let g:base16_cterm0F = "14" + +" Neovim terminal colours +if has("nvim") + let g:terminal_color_0 = "#d9dfe5" + let g:terminal_color_1 = "#ca2e23" + let g:terminal_color_2 = "#42824e" + let g:terminal_color_3 = "#79743d" + let g:terminal_color_4 = "#456fbe" + let g:terminal_color_5 = "#456fbe" + let g:terminal_color_6 = "#42824e" + let g:terminal_color_7 = "#363b40" + let g:terminal_color_8 = "#a9afb5" + let g:terminal_color_9 = "#ca2e23" + let g:terminal_color_10 = "#42824e" + let g:terminal_color_11 = "#79743d" + let g:terminal_color_12 = "#456fbe" + let g:terminal_color_13 = "#456fbe" + let g:terminal_color_14 = "#42824e" + let g:terminal_color_15 = "#1e2227" + let g:terminal_color_background = g:terminal_color_0 + let g:terminal_color_foreground = g:terminal_color_5 + + if &background == "light" + let g:terminal_color_background = g:terminal_color_7 + let g:terminal_color_foreground = g:terminal_color_2 + endif + +elseif has("terminal") + let g:terminal_ansi_colors = [ + \ "#d9dfe5", + \ "#ca2e23", + \ "#42824e", + \ "#79743d", + \ "#456fbe", + \ "#456fbe", + \ "#42824e", + \ "#363b40", + \ "#a9afb5", + \ "#ca2e23", + \ "#42824e", + \ "#79743d", + \ "#456fbe", + \ "#456fbe", + \ "#42824e", + \ "#1e2227", + \ ] +endif + +let s:guibg = s:gui00 +let s:ctermbg = s:cterm00 + +" Theme setup +hi clear +syntax reset +let g:colors_name = "active" + +" Highlighting function +" Optional variables are attributes and guisp +function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) + " For a given syntax group, sets the GUI and terminal foreground and backgrounds + " Optional parameters are interpreted as `attr` and `guisp`, the first of which appears + " to be a modifier for the group (e.g., bold, italic), and `guisp` appears to be + " 'special' colors used for underlines in the GUI. + let l:attr = get(a:, 1, "") + let l:guisp = get(a:, 2, "") + + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + + if a:guifg != "" + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=" . a:guifg + endif + endif + + if a:guibg != "" + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=" . a:guibg + endif + endif + + if a:ctermfg != "" + exec "hi " . a:group . " ctermfg=" . a:ctermfg + endif + + if a:ctermbg != "" + exec "hi " . a:group . " ctermbg=" . a:ctermbg + endif + + if l:attr != "" + exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr + endif + + if l:guisp != "" + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=" . l:guisp + endif + endif +endfunction + + +fun hi(group, guifg, guibg, ctermfg, ctermbg, attr, guisp) + call g:Base16hi(a:group, a:guifg, a:guibg, a:ctermfg, a:ctermbg, a:attr, a:guisp) +endfun + + +" color groups for interpretability +call hi("ThemeBg0", s:gui00, "", s:cterm00, "", "", "") +call hi("ThemeBg1", s:gui01, "", s:cterm01, "", "", "") +call hi("ThemeBg2", s:gui02, "", s:cterm02, "", "", "") +call hi("ThemeBg3", s:gui03, "", s:cterm03, "", "", "") +call hi("ThemeFg3", s:gui04, "", s:cterm04, "", "", "") +call hi("ThemeFg2", s:gui05, "", s:cterm05, "", "", "") +call hi("ThemeFg1", s:gui06, "", s:cterm06, "", "", "") +call hi("ThemeFg0", s:gui07, "", s:cterm07, "", "", "") +" +call hi("ThemeRed", s:gui08, "", s:cterm08, "", "", "") +call hi("ThemeOrange", s:gui09, "", s:cterm09, "", "", "") +call hi("ThemeYellow", s:gui0A, "", s:cterm0A, "", "", "") +call hi("ThemeGreen", s:gui0B, "", s:cterm0B, "", "", "") +call hi("ThemeCyan", s:gui0C, "", s:cterm0C, "", "", "") +call hi("ThemeBlue", s:gui0D, "", s:cterm0D, "", "", "") +call hi("ThemeViolet", s:gui0E, "", s:cterm0E, "", "", "") +call hi("ThemeMagenta", s:gui0F, "", s:cterm0F, "", "", "") + +call hi("ThemeRedBold", s:gui08, "", s:cterm08, "", "bold", "") +call hi("ThemeOrangeBold", s:gui09, "", s:cterm09, "", "bold", "") +call hi("ThemeYellowBold", s:gui0A, "", s:cterm0A, "", "bold", "") +call hi("ThemeGreenBold", s:gui0B, "", s:cterm0B, "", "bold", "") +call hi("ThemeCyanBold", s:gui0C, "", s:cterm0C, "", "bold", "") +call hi("ThemeBlueBold", s:gui0D, "", s:cterm0D, "", "bold", "") +call hi("ThemeVioletBold", s:gui0E, "", s:cterm0E, "", "bold", "") +call hi("ThemeMagentaBold", s:gui0F, "", s:cterm0F, "", "bold", "") + +call hi("ThemeRedItalic", s:gui08, "", s:cterm08, "", "italic", "") +call hi("ThemeOrangeItalic", s:gui09, "", s:cterm09, "", "italic", "") +call hi("ThemeYellowItalic", s:gui0A, "", s:cterm0A, "", "italic", "") +call hi("ThemeGreenItalic", s:gui0B, "", s:cterm0B, "", "italic", "") +call hi("ThemeCyanItalic", s:gui0C, "", s:cterm0C, "", "italic", "") +call hi("ThemeBlueItalic", s:gui0D, "", s:cterm0D, "", "italic", "") +call hi("ThemeVioletItalic", s:gui0E, "", s:cterm0E, "", "italic", "") +call hi("ThemeMagentaItalic", s:gui0F, "", s:cterm0F, "", "italic", "") + +call hi("ThemeGrey", s:grey, "", s:cterm03, "", "", "") +call hi("ThemeGreyItalic", s:grey, "", s:cterm03, "", "italic", "") + + +" Vim editor colors +call hi("Normal", s:gui05, s:guibg, s:cterm05, s:ctermbg, "", "") +call hi("Bold", "", "", "", "", "bold", "") +call hi("Debug", s:gui08, "", s:cterm08, "", "", "") +call hi("Directory", s:gui0D, "", s:cterm0D, "", "", "") +call hi("Error", s:guibg, s:gui08, s:ctermbg, s:cterm08, "", "") +call hi("ErrorMsg", s:gui08, s:guibg, s:cterm08, s:ctermbg, "", "") +call hi("Exception", s:gui08, "", s:cterm08, "", "", "") +call hi("FoldColumn", s:gui03, s:guibg, s:cterm03, s:ctermbg, "", "") +call hi("Folded", s:gui02, s:guibg, s:cterm02, s:ctermbg, "", "") +call hi("IncSearch", s:gui01, s:gui09, s:cterm01, s:cterm09, "none", "") +call hi("Italic", "", "", "", "", "italic", "") +call hi("Macro", s:gui0C, "", s:cterm0C, "", "", "") +call hi("MatchParen", "", s:gui03, "", s:cterm03, "", "") +call hi("ModeMsg", s:gui0B, "", s:cterm0B, "", "", "") +call hi("MoreMsg", s:gui0B, "", s:cterm0B, "", "", "") +call hi("Question", s:gui0D, "", s:cterm0D, "", "", "") +call hi("Search", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "", "") +call hi("Substitute", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "none", "") +call hi("SpecialKey", s:gui03, "", s:cterm03, "", "", "") +call hi("TooLong", s:gui08, "", s:cterm08, "", "", "") +call hi("Underlined", "", "", "", "", "underline", "fg") +call hi("Visual", "", s:gui02, "", s:cterm02, "", "") +call hi("VisualNOS", s:gui08, "", s:cterm08, "", "", "") +call hi("WarningMsg", s:gui08, "", s:cterm08, "", "", "") +call hi("WildMenu", s:guibg, s:gui06, s:ctermbg, s:cterm05, "", "") +call hi("Title", s:gui0D, "", s:cterm0D, "", "none", "") +call hi("Conceal", s:gui0D, s:guibg, s:cterm0D, s:ctermbg, "", "") +call hi("Cursor", s:gui05, s:guibg, "", "", "inverse", "") +call hi("NonText", s:gui03, "", s:cterm03, "", "", "") +call hi("Whitespace", s:gui03, "", s:cterm03, "", "", "") +call hi("LineNr", s:gui03, s:guibg, s:cterm03, s:ctermbg, "", "") +call hi("SignColumn", s:gui03, s:guibg, s:cterm03, s:ctermbg, "", "") +call hi("StatusLine", s:gui07, s:gui01, s:cterm07, s:cterm01, "none", "") +call hi("StatusLineNC", s:gui06, s:gui01, s:cterm05, s:cterm01, "none", "") +call hi("VertSplit", s:gui01, s:guibg, s:cterm01, s:ctermbg, "none", "") +call hi("ColorColumn", "", s:gui01, "", s:cterm01, "none", "") +call hi("CursorColumn", "", s:gui01, "", s:cterm01, "none", "") +call hi("CursorLine", "", s:gui01, "", s:cterm01, "none", "") +call hi("CursorLineNr", s:gui04, s:gui01, s:cterm04, s:cterm01, "bold", "") +call hi("QuickFixLine", "", s:gui01, "", s:cterm01, "none", "") +call hi("PMenu", s:gui06, s:gui01, s:cterm06, s:cterm01, "none", "") +call hi("PMenuSel", s:gui06, s:gui02, s:cterm06, s:cterm02, "", "") +call hi("PMenuSbar", "", s:gui03, "", s:cterm03, "", "") +call hi("PMenuThumb", "", s:gui04, "", s:cterm04, "", "") +call hi("TabLine", s:gui03, s:gui01, s:cterm03, s:cterm01, "none", "") +call hi("TabLineFill", s:gui03, s:gui01, s:cterm03, s:cterm01, "none", "") +call hi("TabLineSel", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "none", "") + +" Standard syntax +hi! link Boolean ThemeOrange +hi! link Character ThemeRed + +"call hi("Comment", s:gui03, "", s:cterm03, "", "italic", "") +hi! link Comment ThemeGreyItalic + +hi! link Conditional ThemeRed +hi! link Constant ThemeOrange +call hi("Define", s:gui0E, "", s:cterm0E, "", "none", "") +hi! link Delimiter ThemeFg1 + +if has("patch-8.0.1038") + call hi("Deprecated", "", "", "", "", "strikethrough", "") +endif + +hi! link Float ThemeOrange +hi! link Function ThemeBlue +call hi("Identifier", s:gui06, "", s:cterm05, "", "none", "") +hi! link Include ThemeBlue +hi! link Constant ThemeOrange +call hi("Keyword", s:gui0E, "", s:cterm0E, "", "none", "") +hi! link Label ThemeOrange +hi! link Number ThemeOrange +hi! link Operator ThemeYellow +hi! link PreProc ThemeOrange +hi! link Repeat ThemeViolet +hi! link Special ThemeYellow +hi! link SpecialChar ThemeMagenta +hi! link Statement ThemeRed +hi! link StorageClass ThemeOrange +hi! link String ThemeGreen +hi! link Structure ThemeOrange +hi! link Tag ThemeOrange + +call hi("Todo", s:gui08, s:guibg, s:cterm08, s:ctermbg, "italic", "") +call hi("Type", s:gui0A, "", s:cterm0A, "", "none", "") + +hi! link Typedef ThemeOrange + + +" Treesitter +if has("nvim-0.8.0") + call hi("@field", s:gui08, "", s:cterm08, "", "", "") + call hi("@property", s:gui08, "", s:cterm08, "", "", "") + call hi("@namespace", s:gui06, "", s:cterm05, "", "italic", "") + call hi("@variable.builtin", s:gui06, "", s:cterm05, "", "italic", "") + call hi("@text.reference", s:gui08, "", s:cterm08, "", "", "") + call hi("@text.uri", s:gui08, "", s:cterm08, "", "italic", "") + + " Annotations & Attributes + call hi("@annotation", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@attribute", s:gui0D, "", s:cterm0D, "", "", "") + + " Booleans, Characters & Comments + call hi("@boolean", s:gui09, "", s:cterm09, "", "", "") + call hi("@character", s:gui08, "", s:cterm08, "", "", "") + call hi("@character.special", s:gui0F, "", s:cterm0F, "", "", "") + call hi("@comment", s:gui03, "", s:cterm03, "", "", "") + + " Conditionals, Constants & Debugging + call hi("@keyword.conditional", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@constant", s:gui09, "", s:cterm09, "", "", "") + call hi("@constant.builtin", s:gui09, "", s:cterm09, "", "", "") + call hi("@constant.macro", s:gui08, "", s:cterm08, "", "", "") + call hi("@keyword.debug", s:gui08, "", s:cterm08, "", "", "") + + " Directives & Exceptions + call hi("@keyword.directive.define", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@keyword.exception", s:gui0E, "", s:cterm0E, "", "", "") + + " Floats & Functions + call hi("@number.float", s:gui09, "", s:cterm09, "", "", "") + call hi("@function", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@function.builtin", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@function.call", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@function.macro", s:gui08, "", s:cterm08, "", "", "") + + " Imports, Operators & Returns + call hi("@keyword.import", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@keyword.coroutine", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@keyword.operator", s:gui06, "", s:cterm05, "", "", "") + call hi("@keyword.return", s:gui0E, "", s:cterm0E, "", "", "") + + " Methods & Namespaces + call hi("@function.method", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@function.method.call", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@namespace.builtin", s:gui0E, "", s:cterm0E, "", "", "") + + " Numbers & Directives + call hi("@none", s:gui06, "", s:cterm05, "", "", "") + call hi("@number", s:gui09, "", s:cterm09, "", "", "") + call hi("@keyword.directive", s:gui0E, "", s:cterm0E, "", "", "") + + " Repeats, Storage & Strings + call hi("@keyword.repeat", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@keyword.storage", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@string", s:gui0B, "", s:cterm0B, "", "", "") + + " Tags & Markup + call hi("@markup.link.label", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.link.label.symbol", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@tag", s:gui08, "", s:cterm08, "", "", "") + call hi("@tag.attribute", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@tag.delimiter", s:gui0F, "", s:cterm0F, "", "", "") + + " More Markup + call hi("@markup", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.environment", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.environment.name", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.raw", s:gui09, "", s:cterm09, "", "", "") + call hi("@markup.math", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.strong", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.emphasis", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.strikethrough", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.underline", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.heading", s:gui0D, "", s:cterm0D, "", "", "") + + " Comments & Types + call hi("@comment.note", s:gui03, "", s:cterm03, "", "", "") + call hi("@comment.error", s:gui08, "", s:cterm08, "", "", "") + call hi("@comment.hint", s:gui0B, "", s:cterm0B, "", "", "") + call hi("@comment.info", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@comment.warning", s:gui09, "", s:cterm09, "", "", "") + call hi("@comment.todo", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.link.url", s:gui09, "", s:cterm09, "", "", "") + call hi("@type", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@type.definition", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@type.qualifier", s:gui0E, "", s:cterm0E, "", "", "") +endif + +" Standard highlights to be used by plugins +if has("patch-8.0.1038") + call hi("Deprecated", "", "", "", "", "strikethrough", "") +endif +call hi("SearchMatch", s:gui0C, "", s:cterm0C, "", "", "") + +call hi("GitAddSign", s:gui0B, "", s:cterm0B, "", "", "") +call hi("GitChangeSign", s:gui04, "", s:cterm04, "", "", "") +call hi("GitDeleteSign", s:gui08, "", s:cterm08, "", "", "") +call hi("GitChangeDeleteSign", s:gui04, "", s:cterm04, "", "", "") + +call hi("ErrorSign", s:gui08, "", s:cterm08, "", "", "") +call hi("WarningSign", s:gui09, "", s:cterm09, "", "", "") +call hi("InfoSign", s:gui0D, "", s:cterm0D, "", "", "") +call hi("HintSign", s:gui0C, "", s:cterm0C, "", "", "") +call hi("OkSign", s:gui0B, "", s:cterm0B, "", "", "") + +call hi("ErrorFloat", s:gui08, s:gui01, s:cterm08, s:cterm01, "", "") +call hi("WarningFloat", s:gui09, s:gui01, s:cterm09, s:cterm01, "", "") +call hi("InfoFloat", s:gui0D, s:gui01, s:cterm0D, s:cterm01, "", "") +call hi("HintFloat", s:gui0C, s:gui01, s:cterm0C, s:cterm01, "", "") +call hi("OkFloat", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "") + +call hi("ErrorHighlight", "", "", s:ctermbg, s:cterm08, "underline", s:gui08) +call hi("WarningHighlight", "", "", s:ctermbg, s:cterm09, "underline", s:gui09) +call hi("InfoHighlight", "", "", s:ctermbg, s:cterm0D, "underline", s:gui0D) +call hi("HintHighlight", "", "", s:ctermbg, s:cterm0C, "underline", s:gui0C) +call hi("OkHighlight", "", "", s:ctermbg, s:cterm0B, "underline", s:gui0B) + +call hi("SpellBad", "", "", s:ctermbg, s:cterm08, "undercurl", s:gui08) +call hi("SpellLocal", "", "", s:ctermbg, s:cterm0C, "undercurl", s:gui0C) +call hi("SpellCap", "", "", s:ctermbg, s:cterm0D, "undercurl", s:gui0D) +call hi("SpellRare", "", "", s:ctermbg, s:cterm0E, "undercurl", s:gui0E) + +call hi("ReferenceText", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "", "") +call hi("ReferenceRead", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "", "") +call hi("ReferenceWrite", s:gui01, s:gui08, s:cterm01, s:cterm08, "", "") + +" C +call hi("cOperator", s:gui0C, "", s:cterm0C, "", "", "") +call hi("cPreCondit", s:gui0E, "", s:cterm0E, "", "", "") + +" C# +call hi("csClass", s:gui0A, "", s:cterm0A, "", "", "") +call hi("csAttribute", s:gui0A, "", s:cterm0A, "", "", "") +call hi("csModifier", s:gui0E, "", s:cterm0E, "", "", "") +call hi("csType", s:gui08, "", s:cterm08, "", "", "") +call hi("csUnspecifiedStatement", s:gui0D, "", s:cterm0D, "", "", "") +call hi("csContextualStatement", s:gui0E, "", s:cterm0E, "", "", "") +call hi("csNewDecleration", s:gui08, "", s:cterm08, "", "", "") + +" Clap +hi! link ClapInput ColorColumn +hi! link ClapSpinner ColorColumn +hi! link ClapDisplay Default +hi! link ClapPreview ColorColumn +hi! link ClapCurrentSelection CursorLine +hi! link ClapNoMatchesFound ErrorFloat + +" Coc +hi! link CocErrorSign ErrorSign +hi! link CocWarningSign WarningSign +hi! link CocInfoSign InfoSign +hi! link CocHintSign HintSign + +hi! link CocErrorFloat ErrorFloat +hi! link CocWarningFloat WarningFloat +hi! link CocInfoFloat InfoFloat +hi! link CocHintFloat HintFloat + +hi! link CocErrorHighlight ErrorHighlight +hi! link CocWarningHighlight WarningHighlight +hi! link CocInfoHighlight InfoHighlight +hi! link CocHintHighlight HintHighlight + +hi! link CocSem_angle Keyword +hi! link CocSem_annotation Keyword +hi! link CocSem_attribute Type +hi! link CocSem_bitwise Keyword +hi! link CocSem_boolean Boolean +hi! link CocSem_brace Normal +hi! link CocSem_bracket Normal +hi! link CocSem_builtinAttribute Type +hi! link CocSem_builtinType Type +hi! link CocSem_character String +hi! link CocSem_class Structure +hi! link CocSem_colon Normal +hi! link CocSem_comma Normal +hi! link CocSem_comment Comment +hi! link CocSem_comparison Keyword +hi! link CocSem_concept Keyword +hi! link CocSem_constParameter Identifier +hi! link CocSem_dependent Keyword +hi! link CocSem_dot Keyword +hi! link CocSem_enum Structure +hi! link CocSem_enumMember Constant +hi! link CocSem_escapeSequence Type +hi! link CocSem_event Identifier +hi! link CocSem_formatSpecifier Type +hi! link CocSem_function Function +hi! link CocSem_interface Type +hi! link CocSem_keyword Keyword +hi! link CocSem_label Keyword +hi! link CocSem_logical Keyword +hi! link CocSem_macro Macro +hi! link CocSem_method Function +hi! link CocSem_modifier Keyword +hi! link CocSem_namespace Identifier +hi! link CocSem_number Number +hi! link CocSem_operator Operator +hi! link CocSem_parameter Identifier +hi! link CocSem_parenthesis Normal +hi! link CocSem_property Identifier +hi! link CocSem_punctuation Keyword +hi! link CocSem_regexp Type +hi! link CocSem_selfKeyword Constant +hi! link CocSem_semicolon Normal +hi! link CocSem_string String +hi! link CocSem_struct Structure +hi! link CocSem_type Type +hi! link CocSem_typeAlias Type +hi! link CocSem_typeParameter Type +hi! link CocSem_unknown Normal +hi! link CocSem_variable Identifier + +call hi("CocHighlightRead", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "") +call hi("CocHighlightText", s:gui0A, s:gui01, s:cterm0A, s:cterm01, "", "") +call hi("CocHighlightWrite", s:gui08, s:gui01, s:cterm08, s:cterm01, "", "") +call hi("CocListMode", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "bold", "") +call hi("CocListPath", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "", "") +call hi("CocSessionsName", s:gui06, "", s:cterm05, "", "", "") + +" CSS +hi! link cssBraces ThemeBlue +hi! link cssFunctionName ThemeYellow +hi! link cssIdentifier ThemeOrange +hi! link cssClassName ThemeGreen +hi! link cssColor ThemeBlue +hi! link cssSelectorOp ThemeBlue +hi! link cssSelectorOp2 ThemeBlue +hi! link cssImportant ThemeGreen +hi! link cssVendor ThemeFg1 + +hi! link cssTextProp ThemeCyan +hi! link cssAnimationProp ThemeCyan +hi! link cssUIProp ThemeYellow +hi! link cssTransformProp ThemeCyan +hi! link cssTransitionProp ThemeCyan +hi! link cssPrintProp ThemeCyan +hi! link cssPositioningProp ThemeYellow +hi! link cssBoxProp ThemeCyan +hi! link cssFontDescriptorProp ThemeCyan +hi! link cssFlexibleBoxProp ThemeCyan +hi! link cssBorderOutlineProp ThemeCyan +hi! link cssBackgroundProp ThemeCyan +hi! link cssMarginProp ThemeCyan +hi! link cssListProp ThemeCyan +hi! link cssTableProp ThemeCyan +hi! link cssFontProp ThemeCyan +hi! link cssPaddingProp ThemeCyan +hi! link cssDimensionProp ThemeCyan +hi! link cssRenderProp ThemeCyan +hi! link cssColorProp ThemeCyan +hi! link cssGeneratedContentProp ThemeCyan + + +" CMP +hi! link CmpItemAbbrDeprecated Deprecated +hi! link CmpItemAbbrMatch SearchMatch +hi! link CmpItemAbbrMatchFuzzy SearchMatch +hi! link CmpItemKindClass Type +hi! link CmpItemKindColor Keyword +hi! link CmpItemKindConstant Constant +hi! link CmpItemKindConstructor Special +hi! link CmpItemKindEnum Type +hi! link CmpItemKindEnumMember Constant +hi! link CmpItemKindEvent Identifier +hi! link CmpItemKindField Character +hi! link CmpItemKindFile Directory +hi! link CmpItemKindFolder Directory +hi! link CmpItemKindFunction Function +hi! link CmpItemKindInterface Type +hi! link CmpItemKindKeyword Keyword +hi! link CmpItemKindMethod Function +hi! link CmpItemKindModule Namespace +hi! link CmpItemKindOperator Operator +hi! link CmpItemKindProperty Identifier +hi! link CmpItemKindReference Character +hi! link CmpItemKindSnippet String +hi! link CmpItemKindStruct Type +hi! link CmpItemKindText Text +hi! link CmpItemKindUnit Namespace +hi! link CmpItemKindValue Comment +hi! link CmpItemKindVariable Identifier + +if has("nvim-0.8.0") + hi! link CmpItemKindField @field + hi! link CmpItemKindProperty @property +endif + +" Diff +call hi("DiffAdd", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "") +call hi("DiffChange", s:gui06, s:gui01, s:cterm05, s:cterm01, "", "") +call hi("DiffDelete", s:gui02, s:guibg, s:cterm02, s:ctermbg, "", "") +call hi("DiffText", s:gui0D, s:gui01, s:cterm0D, s:cterm01, "", "") +call hi("DiffAdded", s:gui0B, s:guibg, s:cterm0B, s:ctermbg, "", "") +call hi("DiffFile", s:gui08, s:guibg, s:cterm08, s:ctermbg, "", "") +call hi("DiffNewFile", s:gui0B, s:guibg, s:cterm0B, s:ctermbg, "", "") +call hi("DiffLine", s:gui0D, s:guibg, s:cterm0D, s:ctermbg, "", "") +call hi("DiffRemoved", s:gui08, s:guibg, s:cterm08, s:ctermbg, "", "") + +" Git +call hi("gitcommitOverflow", s:gui08, "", s:cterm08, "", "", "") +call hi("gitcommitSummary", s:gui0B, "", s:cterm0B, "", "", "") +call hi("gitcommitComment", s:gui03, "", s:cterm03, "", "", "") +call hi("gitcommitUntracked", s:gui03, "", s:cterm03, "", "", "") +call hi("gitcommitDiscarded", s:gui03, "", s:cterm03, "", "", "") +call hi("gitcommitSelected", s:gui03, "", s:cterm03, "", "", "") +call hi("gitcommitHeader", s:gui0E, "", s:cterm0E, "", "", "") +call hi("gitcommitSelectedType", s:gui0D, "", s:cterm0D, "", "", "") +call hi("gitcommitUnmergedType", s:gui0D, "", s:cterm0D, "", "", "") +call hi("gitcommitDiscardedType", s:gui0D, "", s:cterm0D, "", "", "") +call hi("gitcommitBranch", s:gui09, "", s:cterm09, "", "bold", "") +call hi("gitcommitUntrackedFile", s:gui0A, "", s:cterm0A, "", "", "") +call hi("gitcommitUnmergedFile", s:gui08, "", s:cterm08, "", "bold", "") +call hi("gitcommitDiscardedFile", s:gui08, "", s:cterm08, "", "bold", "") +call hi("gitcommitSelectedFile", s:gui0B, "", s:cterm0B, "", "bold", "") + +" GitGutter +hi! link GitGutterAdd GitAddSign +hi! link GitGutterChange GitChangeSign +hi! link GitGutterDelete GitDeleteSign +hi! link GitGutterChangeDelete GitChangeDeleteSign + +" indent-blankline (nvim) +if has("nvim") + call hi("@ibl.indent.char.1",s:gui01, "", s:cterm01, "", "", "") +endif + +" HTML +call hi("htmlBold", s:gui07, "", s:cterm0A, "", "bold", "") +call hi("htmlItalic", s:gui06, "", s:cterm0E, "", "italic", "") +call hi("htmlEndTag", s:gui06, "", s:cterm05, "", "", "") +call hi("htmlTag", s:gui06, "", s:cterm05, "", "", "") + +" JavaScript +call hi("javaScript", s:gui06, "", s:cterm05, "", "", "") +call hi("javaScriptBraces", s:gui06, "", s:cterm05, "", "", "") +call hi("javaScriptNumber", s:gui09, "", s:cterm09, "", "", "") +" pangloss/vim-javascript +call hi("jsOperator", s:gui0D, "", s:cterm0D, "", "", "") +call hi("jsStatement", s:gui0E, "", s:cterm0E, "", "", "") +call hi("jsReturn", s:gui0E, "", s:cterm0E, "", "", "") +call hi("jsThis", s:gui08, "", s:cterm08, "", "", "") +call hi("jsClassDefinition", s:gui0A, "", s:cterm0A, "", "", "") +call hi("jsFunction", s:gui0E, "", s:cterm0E, "", "", "") +call hi("jsFuncName", s:gui0D, "", s:cterm0D, "", "", "") +call hi("jsFuncCall", s:gui0D, "", s:cterm0D, "", "", "") +call hi("jsClassFuncName", s:gui0D, "", s:cterm0D, "", "", "") +call hi("jsClassMethodType", s:gui0E, "", s:cterm0E, "", "", "") +call hi("jsRegexpString", s:gui0C, "", s:cterm0C, "", "", "") +call hi("jsGlobalObjects", s:gui0A, "", s:cterm0A, "", "", "") +call hi("jsGlobalNodeObjects", s:gui0A, "", s:cterm0A, "", "", "") +call hi("jsExceptions", s:gui0A, "", s:cterm0A, "", "", "") +call hi("jsBuiltins", s:gui0A, "", s:cterm0A, "", "", "") + +" Mail +call hi("mailQuoted1", s:gui0A, "", s:cterm0A, "", "", "") +call hi("mailQuoted2", s:gui0B, "", s:cterm0B, "", "", "") +call hi("mailQuoted3", s:gui0E, "", s:cterm0E, "", "", "") +call hi("mailQuoted4", s:gui0C, "", s:cterm0C, "", "", "") +call hi("mailQuoted5", s:gui0D, "", s:cterm0D, "", "", "") +call hi("mailQuoted6", s:gui0A, "", s:cterm0A, "", "", "") +call hi("mailURL", s:gui0D, "", s:cterm0D, "", "", "") +call hi("mailEmail", s:gui0D, "", s:cterm0D, "", "", "") + +" Markdown +call hi("markdownCode", s:gui0B, "", s:cterm0B, "", "", "") +call hi("markdownError", s:gui06, s:guibg, s:cterm05, s:ctermbg, "", "") +call hi("markdownCodeBlock", s:gui0B, "", s:cterm0B, "", "", "") +call hi("markdownHeadingDelimiter", s:gui0D, "", s:cterm0D, "", "", "") + +" Matchup +call hi("MatchWord", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "underline", "") + +" NERDTree +call hi("NERDTreeDirSlash", s:gui0D, "", s:cterm0D, "", "", "") +call hi("NERDTreeExecFile", s:gui06, "", s:cterm05, "", "", "") + +" Netrw +hi! link netrwDir ThemeCyan +hi! link netrwClassify ThemeCyan +hi! link netrwLink ThemeBg3 +hi! link netrwSymLink ThemeFg1 +hi! link netrwExe ThemeYellow +hi! link netrwComment ThemeBg3 +hi! link netrwList ThemeBlue +hi! link netrwHelpCmd ThemeCyan +hi! link netrwCmdSep ThemeFg3 +hi! link netrwVersion ThemeGreen + +" PHP +call hi("phpMemberSelector", s:gui06, "", s:cterm05, "", "", "") +call hi("phpComparison", s:gui06, "", s:cterm05, "", "", "") +call hi("phpParent", s:gui06, "", s:cterm05, "", "", "") +call hi("phpMethodsVar", s:gui0C, "", s:cterm0C, "", "", "") + +" Python +"call hi("pythonOperator", s:gui0E, "", s:cterm0E, "", "", "") +"call hi("pythonRepeat", s:gui0E, "", s:cterm0E, "", "", "") +"call hi("pythonInclude", s:gui0E, "", s:cterm0E, "", "", "") +"call hi("pythonStatement", s:gui0E, "", s:cterm0E, "", "", "") + +" hi! link pythonBuiltin ThemeCyan +" hi! link pythonBuiltinObj ThemeCyan +" hi! link pythonBuiltinFunc ThemeGreen +" hi! link pythonFunction Function +hi! link pythonDecorator ThemeYellow +hi! link pythonDecoratorName ThemeYellow +" hi! link pythonTripleQuotes ThemeGreenItalic +" hi! link pythonInclude ThemeBlue +" hi! link pythonImport ThemeBlue +" hi! link pythonRun ThemeBlue +" hi! link pythonCoding ThemeBlue +" hi! link pythonOperator ThemeRed +" hi! link pythonException ThemeRed +" hi! link pythonExceptions ThemeYellow +" hi! link pythonBoolean ThemeYellow +" hi! link pythonDot ThemeFg3 +" hi! link pythonConditional ThemeCyan +" hi! link pythonRepeat ThemeRed +" hi! link pythonDottedName ThemeGreen + + +" Ruby +call hi("rubyAttribute", s:gui0D, "", s:cterm0D, "", "", "") +call hi("rubyConstant", s:gui0A, "", s:cterm0A, "", "", "") +call hi("rubyInterpolationDelimiter", s:gui0F, "", s:cterm0F, "", "", "") +call hi("rubyRegexp", s:gui0C, "", s:cterm0C, "", "", "") +call hi("rubySymbol", s:gui0B, "", s:cterm0B, "", "", "") +call hi("rubyStringDelimiter", s:gui0B, "", s:cterm0B, "", "", "") + +" SASS +call hi("sassidChar", s:gui08, "", s:cterm08, "", "", "") +call hi("sassClassChar", s:gui09, "", s:cterm09, "", "", "") +call hi("sassInclude", s:gui0E, "", s:cterm0E, "", "", "") +call hi("sassMixing", s:gui0E, "", s:cterm0E, "", "", "") +call hi("sassMixinName", s:gui0D, "", s:cterm0D, "", "", "") + +" Signify +hi! link SignifySignAdd GitAddSign +hi! link SignifySignChange GitChangeSign +hi! link SignifySignDelete GitDeleteSign + +" Startify +call hi("StartifyBracket", s:gui03, "", s:cterm03, "", "", "") +call hi("StartifyFile", s:gui07, "", s:cterm07, "", "", "") +call hi("StartifyFooter", s:gui03, "", s:cterm03, "", "", "") +call hi("StartifyHeader", s:gui0B, "", s:cterm0B, "", "", "") +call hi("StartifyNumber", s:gui09, "", s:cterm09, "", "", "") +call hi("StartifyPath", s:gui03, "", s:cterm03, "", "", "") +call hi("StartifySection", s:gui0E, "", s:cterm0E, "", "", "") +call hi("StartifySelect", s:gui0C, "", s:cterm0C, "", "", "") +call hi("StartifySlash", s:gui03, "", s:cterm03, "", "", "") +call hi("StartifySpecial", s:gui03, "", s:cterm03, "", "", "") + +" LSP +if has("nvim") + hi! link DiagnosticError ErrorSign + hi! link DiagnosticWarn WarningSign + hi! link DiagnosticInfo InfoSign + hi! link DiagnosticHint HintSign + hi! link DiagnosticOk OkSign + + hi! link DiagnosticFloatingError ErrorFloat + hi! link DiagnosticFloatingWarn WarningFloat + hi! link DiagnosticFloatingInfo InfoFloat + hi! link DiagnosticFloatingHint HintFloat + hi! link DiagnosticFloatingOk OkFloat + + hi! link DiagnosticUnderlineError ErrorHighlight + hi! link DiagnosticUnderlineWarn WarningHighlight + hi! link DiagnosticUnderlineInfo InfoHighlight + hi! link DiagnosticUnderlineHint HintHighlight + hi! link DiagnosticUnderlineOk OkHighlight + + hi! link DiagnosticsVirtualTextError ErrorSign + hi! link DiagnosticsVirtualTextWarning WarningSign + hi! link DiagnosticsVirtualTextInfo InfoSign + hi! link DiagnosticsVirtualTextHint HintSign + hi! link DiagnosticsVirtualTextOk OkSign + + " Remove untill endif on next nvim release + hi! link LspDiagnosticsSignError ErrorSign + hi! link LspDiagnosticsSignWarning WarningSign + hi! link LspDiagnosticsSignInfo InfoSign + hi! link LspDiagnosticsSignHint HintSign + + hi! link LspDiagnosticsVirtualTextError ErrorSign + hi! link LspDiagnosticsVirtualTextWarning WarningSign + hi! link LspDiagnosticsVirtualTextInfo InfoSign + hi! link LspDiagnosticsVirtualTextHint HintSign + + hi! link LspDiagnosticsFloatingError ErrorFloat + hi! link LspDiagnosticsFloatingWarning WarningFloat + hi! link LspDiagnosticsFloatingInfo InfoFloat + hi! link LspDiagnosticsFloatingHint HintFloat + + hi! link LspDiagnosticsUnderlineError ErrorHighlight + hi! link LspDiagnosticsUnderlineWarning WarningHighlight + hi! link LspDiagnosticsUnderlineInfo InfoHighlight + hi! link LspDiagnosticsUnderlineHint HintHighlight + + hi! link LspReferenceText ReferenceText + hi! link LspReferenceRead ReferenceRead + hi! link LspReferenceWrite ReferenceWrite +endif + +" Java +call hi("javaOperator", s:gui0D, "", s:cterm0D, "", "", "") + +" JSON +hi! link jsonKeyword ThemeGreen +hi! link jsonQuote ThemeGreen +hi! link jsonBraces ThemeFg1 +hi! link jsonString ThemeFg1 + +" Markdown +hi! link markdownH1 ThemeRedBold +hi! link markdownH2 ThemeRed +hi! link markdownH3 ThemeRed +hi! link markdownH4 ThemeRed +hi! link markdownH5 ThemeRed +hi! link markdownH6 ThemeRed + +hi! link markdownCode ThemeYellow +hi! link markdownCodeBlock ThemeYellow +hi! link markdownCodeDelimiter ThemeYellow + +hi! link markdownBlockquote ThemeGrey +hi! link markdownListMarker ThemeBlue +hi! link markdownOrderedListMarker ThemeBlue +hi! link markdownRule ThemeGrey +hi! link markdownHeadingRule ThemeGrey + +hi! link markdownUrlDelimiter ThemeFg3 +hi! link markdownLinkDelimiter ThemeFg3 +hi! link markdownLinkTextDelimiter ThemeFg3 +hi! link markdownHeadingDelimiter ThemeOrange +hi! link markdownUrlTitleDelimiter ThemeGreen + +hi! link markdownLink ThemeGreen +hi! link markdownWikiLink ThemeViolet +hi! link markdownUrl ThemeOrange +hi! link markdownInlineUrl ThemeOrange + +hi! link markdownLinkText ThemeViolet +hi! link markdownIdDeclaration markdownLinkText + +"call s:HL('markdownItalic', s:fg3, s:none, s:italic) +"call s:HL('markdownLinkText', s:gray, s:none, s:underline) + + +" Remove functions +delf hi + +" Remove color variables +unlet s:gui00 s:gui01 s:gui02 s:gui03 s:gui04 s:gui05 s:gui06 s:gui07 s:gui08 s:gui09 s:gui0A s:gui0B s:gui0C s:gui0D s:gui0E s:gui0F s:guibg +unlet s:cterm00 s:cterm01 s:cterm02 s:cterm03 s:cterm04 s:cterm05 s:cterm06 s:cterm07 s:cterm08 s:cterm09 s:cterm0A s:cterm0B s:cterm0C s:cterm0D s:cterm0E s:cterm0F s:ctermbg diff --git a/apps/nvim/monobiome-dark.vim b/apps/nvim/monobiome-dark.vim new file mode 100644 index 0000000..fa9b798 --- /dev/null +++ b/apps/nvim/monobiome-dark.vim @@ -0,0 +1,882 @@ +" vi:syntax=vim +" +" Top-level remarks: +" +" - `hi` sets highlight colors for syntax groups, allowing one to specify fg and bg colors +" for GUI and terminal Vim. +" - `link` allows for linking one syntax group to another, reusing the same color +" settings. Language-specific groups can then point to one of the base color highlight +" groups, for example, without needing to repeat the raw color values. + +" GUI color definitions +let s:gui00 = "#222222" +let g:base16_gui00 = "#222222" +let s:gui01 = "#2e2e2e" +let g:base16_gui01 = "#2e2e2e" +let s:gui02 = "#3a3a3a" +let g:base16_gui02 = "#3a3a3a" +let s:gui03 = "#484848" +let g:base16_gui03 = "#484848" +let s:gui04 = "#aeaeae" +let g:base16_gui04 = "#aeaeae" +let s:gui05 = "#bebebe" +let g:base16_gui05 = "#bebebe" +let s:gui06 = "#cecece" +let g:base16_gui06 = "#cecece" +let s:gui07 = "#dedede" +let g:base16_gui07 = "#dedede" +let s:gui08 = "#e95949" +let g:base16_gui08 = "#e95949" +let s:gui09 = "#ca791c" +let g:base16_gui09 = "#ca791c" +let s:gui0A = "#989250" +let g:base16_gui0A = "#989250" +let s:gui0B = "#5da268" +let g:base16_gui0B = "#5da268" +let s:gui0C = "#5da268" +let g:base16_gui0C = "#5da268" +let s:gui0D = "#658ed9" +let g:base16_gui0D = "#658ed9" +let s:gui0E = "#658ed9" +let g:base16_gui0E = "#658ed9" +let s:gui0F = "#e95949" +let g:base16_gui0F = "#e95949" + +let s:grey = "#808080" + +" Terminal color definitions +let s:cterm00 = "00" +let g:base16_cterm00 = "00" +let s:cterm03 = "08" +let g:base16_cterm03 = "08" +let s:cterm05 = "07" +let g:base16_cterm05 = "07" +let s:cterm07 = "15" +let g:base16_cterm07 = "15" +let s:cterm08 = "01" +let g:base16_cterm08 = "01" +let s:cterm0A = "03" +let g:base16_cterm0A = "03" +let s:cterm0B = "02" +let g:base16_cterm0B = "02" +let s:cterm0C = "06" +let g:base16_cterm0C = "06" +let s:cterm0D = "04" +let g:base16_cterm0D = "04" +let s:cterm0E = "05" +let g:base16_cterm0E = "05" + +let s:cterm01 = "10" +let g:base16_cterm01 = "10" +let s:cterm02 = "11" +let g:base16_cterm02 = "11" +let s:cterm04 = "12" +let g:base16_cterm04 = "12" +let s:cterm06 = "13" +let g:base16_cterm06 = "13" +let s:cterm09 = "09" +let g:base16_cterm09 = "09" +let s:cterm0F = "14" +let g:base16_cterm0F = "14" + +" Neovim terminal colours +if has("nvim") + let g:terminal_color_0 = "#222222" + let g:terminal_color_1 = "#e95949" + let g:terminal_color_2 = "#5da268" + let g:terminal_color_3 = "#989250" + let g:terminal_color_4 = "#658ed9" + let g:terminal_color_5 = "#658ed9" + let g:terminal_color_6 = "#5da268" + let g:terminal_color_7 = "#bebebe" + let g:terminal_color_8 = "#484848" + let g:terminal_color_9 = "#e95949" + let g:terminal_color_10 = "#5da268" + let g:terminal_color_11 = "#989250" + let g:terminal_color_12 = "#658ed9" + let g:terminal_color_13 = "#658ed9" + let g:terminal_color_14 = "#5da268" + let g:terminal_color_15 = "#dedede" + let g:terminal_color_background = g:terminal_color_0 + let g:terminal_color_foreground = g:terminal_color_5 + + if &background == "light" + let g:terminal_color_background = g:terminal_color_7 + let g:terminal_color_foreground = g:terminal_color_2 + endif + +elseif has("terminal") + let g:terminal_ansi_colors = [ + \ "#222222", + \ "#e95949", + \ "#5da268", + \ "#989250", + \ "#658ed9", + \ "#658ed9", + \ "#5da268", + \ "#bebebe", + \ "#484848", + \ "#e95949", + \ "#5da268", + \ "#989250", + \ "#658ed9", + \ "#658ed9", + \ "#5da268", + \ "#dedede", + \ ] +endif + +let s:guibg = s:gui00 +let s:ctermbg = s:cterm00 + +" Theme setup +hi clear +syntax reset +let g:colors_name = "active" + +" Highlighting function +" Optional variables are attributes and guisp +function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) + " For a given syntax group, sets the GUI and terminal foreground and backgrounds + " Optional parameters are interpreted as `attr` and `guisp`, the first of which appears + " to be a modifier for the group (e.g., bold, italic), and `guisp` appears to be + " 'special' colors used for underlines in the GUI. + let l:attr = get(a:, 1, "") + let l:guisp = get(a:, 2, "") + + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + + if a:guifg != "" + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=" . a:guifg + endif + endif + + if a:guibg != "" + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=" . a:guibg + endif + endif + + if a:ctermfg != "" + exec "hi " . a:group . " ctermfg=" . a:ctermfg + endif + + if a:ctermbg != "" + exec "hi " . a:group . " ctermbg=" . a:ctermbg + endif + + if l:attr != "" + exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr + endif + + if l:guisp != "" + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=" . l:guisp + endif + endif +endfunction + + +fun hi(group, guifg, guibg, ctermfg, ctermbg, attr, guisp) + call g:Base16hi(a:group, a:guifg, a:guibg, a:ctermfg, a:ctermbg, a:attr, a:guisp) +endfun + + +" color groups for interpretability +call hi("ThemeBg0", s:gui00, "", s:cterm00, "", "", "") +call hi("ThemeBg1", s:gui01, "", s:cterm01, "", "", "") +call hi("ThemeBg2", s:gui02, "", s:cterm02, "", "", "") +call hi("ThemeBg3", s:gui03, "", s:cterm03, "", "", "") +call hi("ThemeFg3", s:gui04, "", s:cterm04, "", "", "") +call hi("ThemeFg2", s:gui05, "", s:cterm05, "", "", "") +call hi("ThemeFg1", s:gui06, "", s:cterm06, "", "", "") +call hi("ThemeFg0", s:gui07, "", s:cterm07, "", "", "") +" +call hi("ThemeRed", s:gui08, "", s:cterm08, "", "", "") +call hi("ThemeOrange", s:gui09, "", s:cterm09, "", "", "") +call hi("ThemeYellow", s:gui0A, "", s:cterm0A, "", "", "") +call hi("ThemeGreen", s:gui0B, "", s:cterm0B, "", "", "") +call hi("ThemeCyan", s:gui0C, "", s:cterm0C, "", "", "") +call hi("ThemeBlue", s:gui0D, "", s:cterm0D, "", "", "") +call hi("ThemeViolet", s:gui0E, "", s:cterm0E, "", "", "") +call hi("ThemeMagenta", s:gui0F, "", s:cterm0F, "", "", "") + +call hi("ThemeRedBold", s:gui08, "", s:cterm08, "", "bold", "") +call hi("ThemeOrangeBold", s:gui09, "", s:cterm09, "", "bold", "") +call hi("ThemeYellowBold", s:gui0A, "", s:cterm0A, "", "bold", "") +call hi("ThemeGreenBold", s:gui0B, "", s:cterm0B, "", "bold", "") +call hi("ThemeCyanBold", s:gui0C, "", s:cterm0C, "", "bold", "") +call hi("ThemeBlueBold", s:gui0D, "", s:cterm0D, "", "bold", "") +call hi("ThemeVioletBold", s:gui0E, "", s:cterm0E, "", "bold", "") +call hi("ThemeMagentaBold", s:gui0F, "", s:cterm0F, "", "bold", "") + +call hi("ThemeRedItalic", s:gui08, "", s:cterm08, "", "italic", "") +call hi("ThemeOrangeItalic", s:gui09, "", s:cterm09, "", "italic", "") +call hi("ThemeYellowItalic", s:gui0A, "", s:cterm0A, "", "italic", "") +call hi("ThemeGreenItalic", s:gui0B, "", s:cterm0B, "", "italic", "") +call hi("ThemeCyanItalic", s:gui0C, "", s:cterm0C, "", "italic", "") +call hi("ThemeBlueItalic", s:gui0D, "", s:cterm0D, "", "italic", "") +call hi("ThemeVioletItalic", s:gui0E, "", s:cterm0E, "", "italic", "") +call hi("ThemeMagentaItalic", s:gui0F, "", s:cterm0F, "", "italic", "") + +call hi("ThemeGrey", s:grey, "", s:cterm03, "", "", "") +call hi("ThemeGreyItalic", s:grey, "", s:cterm03, "", "italic", "") + + +" Vim editor colors +call hi("Normal", s:gui05, s:guibg, s:cterm05, s:ctermbg, "", "") +call hi("Bold", "", "", "", "", "bold", "") +call hi("Debug", s:gui08, "", s:cterm08, "", "", "") +call hi("Directory", s:gui0D, "", s:cterm0D, "", "", "") +call hi("Error", s:guibg, s:gui08, s:ctermbg, s:cterm08, "", "") +call hi("ErrorMsg", s:gui08, s:guibg, s:cterm08, s:ctermbg, "", "") +call hi("Exception", s:gui08, "", s:cterm08, "", "", "") +call hi("FoldColumn", s:gui03, s:guibg, s:cterm03, s:ctermbg, "", "") +call hi("Folded", s:gui02, s:guibg, s:cterm02, s:ctermbg, "", "") +call hi("IncSearch", s:gui01, s:gui09, s:cterm01, s:cterm09, "none", "") +call hi("Italic", "", "", "", "", "italic", "") +call hi("Macro", s:gui0C, "", s:cterm0C, "", "", "") +call hi("MatchParen", "", s:gui03, "", s:cterm03, "", "") +call hi("ModeMsg", s:gui0B, "", s:cterm0B, "", "", "") +call hi("MoreMsg", s:gui0B, "", s:cterm0B, "", "", "") +call hi("Question", s:gui0D, "", s:cterm0D, "", "", "") +call hi("Search", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "", "") +call hi("Substitute", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "none", "") +call hi("SpecialKey", s:gui03, "", s:cterm03, "", "", "") +call hi("TooLong", s:gui08, "", s:cterm08, "", "", "") +call hi("Underlined", "", "", "", "", "underline", "fg") +call hi("Visual", "", s:gui02, "", s:cterm02, "", "") +call hi("VisualNOS", s:gui08, "", s:cterm08, "", "", "") +call hi("WarningMsg", s:gui08, "", s:cterm08, "", "", "") +call hi("WildMenu", s:guibg, s:gui06, s:ctermbg, s:cterm05, "", "") +call hi("Title", s:gui0D, "", s:cterm0D, "", "none", "") +call hi("Conceal", s:gui0D, s:guibg, s:cterm0D, s:ctermbg, "", "") +call hi("Cursor", s:gui05, s:guibg, "", "", "inverse", "") +call hi("NonText", s:gui03, "", s:cterm03, "", "", "") +call hi("Whitespace", s:gui03, "", s:cterm03, "", "", "") +call hi("LineNr", s:gui03, s:guibg, s:cterm03, s:ctermbg, "", "") +call hi("SignColumn", s:gui03, s:guibg, s:cterm03, s:ctermbg, "", "") +call hi("StatusLine", s:gui07, s:gui01, s:cterm07, s:cterm01, "none", "") +call hi("StatusLineNC", s:gui06, s:gui01, s:cterm05, s:cterm01, "none", "") +call hi("VertSplit", s:gui01, s:guibg, s:cterm01, s:ctermbg, "none", "") +call hi("ColorColumn", "", s:gui01, "", s:cterm01, "none", "") +call hi("CursorColumn", "", s:gui01, "", s:cterm01, "none", "") +call hi("CursorLine", "", s:gui01, "", s:cterm01, "none", "") +call hi("CursorLineNr", s:gui04, s:gui01, s:cterm04, s:cterm01, "bold", "") +call hi("QuickFixLine", "", s:gui01, "", s:cterm01, "none", "") +call hi("PMenu", s:gui06, s:gui01, s:cterm06, s:cterm01, "none", "") +call hi("PMenuSel", s:gui06, s:gui02, s:cterm06, s:cterm02, "", "") +call hi("PMenuSbar", "", s:gui03, "", s:cterm03, "", "") +call hi("PMenuThumb", "", s:gui04, "", s:cterm04, "", "") +call hi("TabLine", s:gui03, s:gui01, s:cterm03, s:cterm01, "none", "") +call hi("TabLineFill", s:gui03, s:gui01, s:cterm03, s:cterm01, "none", "") +call hi("TabLineSel", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "none", "") + +" Standard syntax +hi! link Boolean ThemeOrange +hi! link Character ThemeRed + +"call hi("Comment", s:gui03, "", s:cterm03, "", "italic", "") +hi! link Comment ThemeGreyItalic + +hi! link Conditional ThemeRed +hi! link Constant ThemeOrange +call hi("Define", s:gui0E, "", s:cterm0E, "", "none", "") +hi! link Delimiter ThemeFg1 + +if has("patch-8.0.1038") + call hi("Deprecated", "", "", "", "", "strikethrough", "") +endif + +hi! link Float ThemeOrange +hi! link Function ThemeBlue +call hi("Identifier", s:gui06, "", s:cterm05, "", "none", "") +hi! link Include ThemeBlue +hi! link Constant ThemeOrange +call hi("Keyword", s:gui0E, "", s:cterm0E, "", "none", "") +hi! link Label ThemeOrange +hi! link Number ThemeOrange +hi! link Operator ThemeYellow +hi! link PreProc ThemeOrange +hi! link Repeat ThemeViolet +hi! link Special ThemeYellow +hi! link SpecialChar ThemeMagenta +hi! link Statement ThemeRed +hi! link StorageClass ThemeOrange +hi! link String ThemeGreen +hi! link Structure ThemeOrange +hi! link Tag ThemeOrange + +call hi("Todo", s:gui08, s:guibg, s:cterm08, s:ctermbg, "italic", "") +call hi("Type", s:gui0A, "", s:cterm0A, "", "none", "") + +hi! link Typedef ThemeOrange + + +" Treesitter +if has("nvim-0.8.0") + call hi("@field", s:gui08, "", s:cterm08, "", "", "") + call hi("@property", s:gui08, "", s:cterm08, "", "", "") + call hi("@namespace", s:gui06, "", s:cterm05, "", "italic", "") + call hi("@variable.builtin", s:gui06, "", s:cterm05, "", "italic", "") + call hi("@text.reference", s:gui08, "", s:cterm08, "", "", "") + call hi("@text.uri", s:gui08, "", s:cterm08, "", "italic", "") + + " Annotations & Attributes + call hi("@annotation", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@attribute", s:gui0D, "", s:cterm0D, "", "", "") + + " Booleans, Characters & Comments + call hi("@boolean", s:gui09, "", s:cterm09, "", "", "") + call hi("@character", s:gui08, "", s:cterm08, "", "", "") + call hi("@character.special", s:gui0F, "", s:cterm0F, "", "", "") + call hi("@comment", s:gui03, "", s:cterm03, "", "", "") + + " Conditionals, Constants & Debugging + call hi("@keyword.conditional", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@constant", s:gui09, "", s:cterm09, "", "", "") + call hi("@constant.builtin", s:gui09, "", s:cterm09, "", "", "") + call hi("@constant.macro", s:gui08, "", s:cterm08, "", "", "") + call hi("@keyword.debug", s:gui08, "", s:cterm08, "", "", "") + + " Directives & Exceptions + call hi("@keyword.directive.define", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@keyword.exception", s:gui0E, "", s:cterm0E, "", "", "") + + " Floats & Functions + call hi("@number.float", s:gui09, "", s:cterm09, "", "", "") + call hi("@function", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@function.builtin", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@function.call", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@function.macro", s:gui08, "", s:cterm08, "", "", "") + + " Imports, Operators & Returns + call hi("@keyword.import", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@keyword.coroutine", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@keyword.operator", s:gui06, "", s:cterm05, "", "", "") + call hi("@keyword.return", s:gui0E, "", s:cterm0E, "", "", "") + + " Methods & Namespaces + call hi("@function.method", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@function.method.call", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@namespace.builtin", s:gui0E, "", s:cterm0E, "", "", "") + + " Numbers & Directives + call hi("@none", s:gui06, "", s:cterm05, "", "", "") + call hi("@number", s:gui09, "", s:cterm09, "", "", "") + call hi("@keyword.directive", s:gui0E, "", s:cterm0E, "", "", "") + + " Repeats, Storage & Strings + call hi("@keyword.repeat", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@keyword.storage", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@string", s:gui0B, "", s:cterm0B, "", "", "") + + " Tags & Markup + call hi("@markup.link.label", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.link.label.symbol", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@tag", s:gui08, "", s:cterm08, "", "", "") + call hi("@tag.attribute", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@tag.delimiter", s:gui0F, "", s:cterm0F, "", "", "") + + " More Markup + call hi("@markup", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.environment", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.environment.name", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.raw", s:gui09, "", s:cterm09, "", "", "") + call hi("@markup.math", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.strong", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.emphasis", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.strikethrough", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.underline", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.heading", s:gui0D, "", s:cterm0D, "", "", "") + + " Comments & Types + call hi("@comment.note", s:gui03, "", s:cterm03, "", "", "") + call hi("@comment.error", s:gui08, "", s:cterm08, "", "", "") + call hi("@comment.hint", s:gui0B, "", s:cterm0B, "", "", "") + call hi("@comment.info", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@comment.warning", s:gui09, "", s:cterm09, "", "", "") + call hi("@comment.todo", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.link.url", s:gui09, "", s:cterm09, "", "", "") + call hi("@type", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@type.definition", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@type.qualifier", s:gui0E, "", s:cterm0E, "", "", "") +endif + +" Standard highlights to be used by plugins +if has("patch-8.0.1038") + call hi("Deprecated", "", "", "", "", "strikethrough", "") +endif +call hi("SearchMatch", s:gui0C, "", s:cterm0C, "", "", "") + +call hi("GitAddSign", s:gui0B, "", s:cterm0B, "", "", "") +call hi("GitChangeSign", s:gui04, "", s:cterm04, "", "", "") +call hi("GitDeleteSign", s:gui08, "", s:cterm08, "", "", "") +call hi("GitChangeDeleteSign", s:gui04, "", s:cterm04, "", "", "") + +call hi("ErrorSign", s:gui08, "", s:cterm08, "", "", "") +call hi("WarningSign", s:gui09, "", s:cterm09, "", "", "") +call hi("InfoSign", s:gui0D, "", s:cterm0D, "", "", "") +call hi("HintSign", s:gui0C, "", s:cterm0C, "", "", "") +call hi("OkSign", s:gui0B, "", s:cterm0B, "", "", "") + +call hi("ErrorFloat", s:gui08, s:gui01, s:cterm08, s:cterm01, "", "") +call hi("WarningFloat", s:gui09, s:gui01, s:cterm09, s:cterm01, "", "") +call hi("InfoFloat", s:gui0D, s:gui01, s:cterm0D, s:cterm01, "", "") +call hi("HintFloat", s:gui0C, s:gui01, s:cterm0C, s:cterm01, "", "") +call hi("OkFloat", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "") + +call hi("ErrorHighlight", "", "", s:ctermbg, s:cterm08, "underline", s:gui08) +call hi("WarningHighlight", "", "", s:ctermbg, s:cterm09, "underline", s:gui09) +call hi("InfoHighlight", "", "", s:ctermbg, s:cterm0D, "underline", s:gui0D) +call hi("HintHighlight", "", "", s:ctermbg, s:cterm0C, "underline", s:gui0C) +call hi("OkHighlight", "", "", s:ctermbg, s:cterm0B, "underline", s:gui0B) + +call hi("SpellBad", "", "", s:ctermbg, s:cterm08, "undercurl", s:gui08) +call hi("SpellLocal", "", "", s:ctermbg, s:cterm0C, "undercurl", s:gui0C) +call hi("SpellCap", "", "", s:ctermbg, s:cterm0D, "undercurl", s:gui0D) +call hi("SpellRare", "", "", s:ctermbg, s:cterm0E, "undercurl", s:gui0E) + +call hi("ReferenceText", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "", "") +call hi("ReferenceRead", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "", "") +call hi("ReferenceWrite", s:gui01, s:gui08, s:cterm01, s:cterm08, "", "") + +" C +call hi("cOperator", s:gui0C, "", s:cterm0C, "", "", "") +call hi("cPreCondit", s:gui0E, "", s:cterm0E, "", "", "") + +" C# +call hi("csClass", s:gui0A, "", s:cterm0A, "", "", "") +call hi("csAttribute", s:gui0A, "", s:cterm0A, "", "", "") +call hi("csModifier", s:gui0E, "", s:cterm0E, "", "", "") +call hi("csType", s:gui08, "", s:cterm08, "", "", "") +call hi("csUnspecifiedStatement", s:gui0D, "", s:cterm0D, "", "", "") +call hi("csContextualStatement", s:gui0E, "", s:cterm0E, "", "", "") +call hi("csNewDecleration", s:gui08, "", s:cterm08, "", "", "") + +" Clap +hi! link ClapInput ColorColumn +hi! link ClapSpinner ColorColumn +hi! link ClapDisplay Default +hi! link ClapPreview ColorColumn +hi! link ClapCurrentSelection CursorLine +hi! link ClapNoMatchesFound ErrorFloat + +" Coc +hi! link CocErrorSign ErrorSign +hi! link CocWarningSign WarningSign +hi! link CocInfoSign InfoSign +hi! link CocHintSign HintSign + +hi! link CocErrorFloat ErrorFloat +hi! link CocWarningFloat WarningFloat +hi! link CocInfoFloat InfoFloat +hi! link CocHintFloat HintFloat + +hi! link CocErrorHighlight ErrorHighlight +hi! link CocWarningHighlight WarningHighlight +hi! link CocInfoHighlight InfoHighlight +hi! link CocHintHighlight HintHighlight + +hi! link CocSem_angle Keyword +hi! link CocSem_annotation Keyword +hi! link CocSem_attribute Type +hi! link CocSem_bitwise Keyword +hi! link CocSem_boolean Boolean +hi! link CocSem_brace Normal +hi! link CocSem_bracket Normal +hi! link CocSem_builtinAttribute Type +hi! link CocSem_builtinType Type +hi! link CocSem_character String +hi! link CocSem_class Structure +hi! link CocSem_colon Normal +hi! link CocSem_comma Normal +hi! link CocSem_comment Comment +hi! link CocSem_comparison Keyword +hi! link CocSem_concept Keyword +hi! link CocSem_constParameter Identifier +hi! link CocSem_dependent Keyword +hi! link CocSem_dot Keyword +hi! link CocSem_enum Structure +hi! link CocSem_enumMember Constant +hi! link CocSem_escapeSequence Type +hi! link CocSem_event Identifier +hi! link CocSem_formatSpecifier Type +hi! link CocSem_function Function +hi! link CocSem_interface Type +hi! link CocSem_keyword Keyword +hi! link CocSem_label Keyword +hi! link CocSem_logical Keyword +hi! link CocSem_macro Macro +hi! link CocSem_method Function +hi! link CocSem_modifier Keyword +hi! link CocSem_namespace Identifier +hi! link CocSem_number Number +hi! link CocSem_operator Operator +hi! link CocSem_parameter Identifier +hi! link CocSem_parenthesis Normal +hi! link CocSem_property Identifier +hi! link CocSem_punctuation Keyword +hi! link CocSem_regexp Type +hi! link CocSem_selfKeyword Constant +hi! link CocSem_semicolon Normal +hi! link CocSem_string String +hi! link CocSem_struct Structure +hi! link CocSem_type Type +hi! link CocSem_typeAlias Type +hi! link CocSem_typeParameter Type +hi! link CocSem_unknown Normal +hi! link CocSem_variable Identifier + +call hi("CocHighlightRead", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "") +call hi("CocHighlightText", s:gui0A, s:gui01, s:cterm0A, s:cterm01, "", "") +call hi("CocHighlightWrite", s:gui08, s:gui01, s:cterm08, s:cterm01, "", "") +call hi("CocListMode", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "bold", "") +call hi("CocListPath", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "", "") +call hi("CocSessionsName", s:gui06, "", s:cterm05, "", "", "") + +" CSS +hi! link cssBraces ThemeBlue +hi! link cssFunctionName ThemeYellow +hi! link cssIdentifier ThemeOrange +hi! link cssClassName ThemeGreen +hi! link cssColor ThemeBlue +hi! link cssSelectorOp ThemeBlue +hi! link cssSelectorOp2 ThemeBlue +hi! link cssImportant ThemeGreen +hi! link cssVendor ThemeFg1 + +hi! link cssTextProp ThemeCyan +hi! link cssAnimationProp ThemeCyan +hi! link cssUIProp ThemeYellow +hi! link cssTransformProp ThemeCyan +hi! link cssTransitionProp ThemeCyan +hi! link cssPrintProp ThemeCyan +hi! link cssPositioningProp ThemeYellow +hi! link cssBoxProp ThemeCyan +hi! link cssFontDescriptorProp ThemeCyan +hi! link cssFlexibleBoxProp ThemeCyan +hi! link cssBorderOutlineProp ThemeCyan +hi! link cssBackgroundProp ThemeCyan +hi! link cssMarginProp ThemeCyan +hi! link cssListProp ThemeCyan +hi! link cssTableProp ThemeCyan +hi! link cssFontProp ThemeCyan +hi! link cssPaddingProp ThemeCyan +hi! link cssDimensionProp ThemeCyan +hi! link cssRenderProp ThemeCyan +hi! link cssColorProp ThemeCyan +hi! link cssGeneratedContentProp ThemeCyan + + +" CMP +hi! link CmpItemAbbrDeprecated Deprecated +hi! link CmpItemAbbrMatch SearchMatch +hi! link CmpItemAbbrMatchFuzzy SearchMatch +hi! link CmpItemKindClass Type +hi! link CmpItemKindColor Keyword +hi! link CmpItemKindConstant Constant +hi! link CmpItemKindConstructor Special +hi! link CmpItemKindEnum Type +hi! link CmpItemKindEnumMember Constant +hi! link CmpItemKindEvent Identifier +hi! link CmpItemKindField Character +hi! link CmpItemKindFile Directory +hi! link CmpItemKindFolder Directory +hi! link CmpItemKindFunction Function +hi! link CmpItemKindInterface Type +hi! link CmpItemKindKeyword Keyword +hi! link CmpItemKindMethod Function +hi! link CmpItemKindModule Namespace +hi! link CmpItemKindOperator Operator +hi! link CmpItemKindProperty Identifier +hi! link CmpItemKindReference Character +hi! link CmpItemKindSnippet String +hi! link CmpItemKindStruct Type +hi! link CmpItemKindText Text +hi! link CmpItemKindUnit Namespace +hi! link CmpItemKindValue Comment +hi! link CmpItemKindVariable Identifier + +if has("nvim-0.8.0") + hi! link CmpItemKindField @field + hi! link CmpItemKindProperty @property +endif + +" Diff +call hi("DiffAdd", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "") +call hi("DiffChange", s:gui06, s:gui01, s:cterm05, s:cterm01, "", "") +call hi("DiffDelete", s:gui02, s:guibg, s:cterm02, s:ctermbg, "", "") +call hi("DiffText", s:gui0D, s:gui01, s:cterm0D, s:cterm01, "", "") +call hi("DiffAdded", s:gui0B, s:guibg, s:cterm0B, s:ctermbg, "", "") +call hi("DiffFile", s:gui08, s:guibg, s:cterm08, s:ctermbg, "", "") +call hi("DiffNewFile", s:gui0B, s:guibg, s:cterm0B, s:ctermbg, "", "") +call hi("DiffLine", s:gui0D, s:guibg, s:cterm0D, s:ctermbg, "", "") +call hi("DiffRemoved", s:gui08, s:guibg, s:cterm08, s:ctermbg, "", "") + +" Git +call hi("gitcommitOverflow", s:gui08, "", s:cterm08, "", "", "") +call hi("gitcommitSummary", s:gui0B, "", s:cterm0B, "", "", "") +call hi("gitcommitComment", s:gui03, "", s:cterm03, "", "", "") +call hi("gitcommitUntracked", s:gui03, "", s:cterm03, "", "", "") +call hi("gitcommitDiscarded", s:gui03, "", s:cterm03, "", "", "") +call hi("gitcommitSelected", s:gui03, "", s:cterm03, "", "", "") +call hi("gitcommitHeader", s:gui0E, "", s:cterm0E, "", "", "") +call hi("gitcommitSelectedType", s:gui0D, "", s:cterm0D, "", "", "") +call hi("gitcommitUnmergedType", s:gui0D, "", s:cterm0D, "", "", "") +call hi("gitcommitDiscardedType", s:gui0D, "", s:cterm0D, "", "", "") +call hi("gitcommitBranch", s:gui09, "", s:cterm09, "", "bold", "") +call hi("gitcommitUntrackedFile", s:gui0A, "", s:cterm0A, "", "", "") +call hi("gitcommitUnmergedFile", s:gui08, "", s:cterm08, "", "bold", "") +call hi("gitcommitDiscardedFile", s:gui08, "", s:cterm08, "", "bold", "") +call hi("gitcommitSelectedFile", s:gui0B, "", s:cterm0B, "", "bold", "") + +" GitGutter +hi! link GitGutterAdd GitAddSign +hi! link GitGutterChange GitChangeSign +hi! link GitGutterDelete GitDeleteSign +hi! link GitGutterChangeDelete GitChangeDeleteSign + +" indent-blankline (nvim) +if has("nvim") + call hi("@ibl.indent.char.1",s:gui01, "", s:cterm01, "", "", "") +endif + +" HTML +call hi("htmlBold", s:gui07, "", s:cterm0A, "", "bold", "") +call hi("htmlItalic", s:gui06, "", s:cterm0E, "", "italic", "") +call hi("htmlEndTag", s:gui06, "", s:cterm05, "", "", "") +call hi("htmlTag", s:gui06, "", s:cterm05, "", "", "") + +" JavaScript +call hi("javaScript", s:gui06, "", s:cterm05, "", "", "") +call hi("javaScriptBraces", s:gui06, "", s:cterm05, "", "", "") +call hi("javaScriptNumber", s:gui09, "", s:cterm09, "", "", "") +" pangloss/vim-javascript +call hi("jsOperator", s:gui0D, "", s:cterm0D, "", "", "") +call hi("jsStatement", s:gui0E, "", s:cterm0E, "", "", "") +call hi("jsReturn", s:gui0E, "", s:cterm0E, "", "", "") +call hi("jsThis", s:gui08, "", s:cterm08, "", "", "") +call hi("jsClassDefinition", s:gui0A, "", s:cterm0A, "", "", "") +call hi("jsFunction", s:gui0E, "", s:cterm0E, "", "", "") +call hi("jsFuncName", s:gui0D, "", s:cterm0D, "", "", "") +call hi("jsFuncCall", s:gui0D, "", s:cterm0D, "", "", "") +call hi("jsClassFuncName", s:gui0D, "", s:cterm0D, "", "", "") +call hi("jsClassMethodType", s:gui0E, "", s:cterm0E, "", "", "") +call hi("jsRegexpString", s:gui0C, "", s:cterm0C, "", "", "") +call hi("jsGlobalObjects", s:gui0A, "", s:cterm0A, "", "", "") +call hi("jsGlobalNodeObjects", s:gui0A, "", s:cterm0A, "", "", "") +call hi("jsExceptions", s:gui0A, "", s:cterm0A, "", "", "") +call hi("jsBuiltins", s:gui0A, "", s:cterm0A, "", "", "") + +" Mail +call hi("mailQuoted1", s:gui0A, "", s:cterm0A, "", "", "") +call hi("mailQuoted2", s:gui0B, "", s:cterm0B, "", "", "") +call hi("mailQuoted3", s:gui0E, "", s:cterm0E, "", "", "") +call hi("mailQuoted4", s:gui0C, "", s:cterm0C, "", "", "") +call hi("mailQuoted5", s:gui0D, "", s:cterm0D, "", "", "") +call hi("mailQuoted6", s:gui0A, "", s:cterm0A, "", "", "") +call hi("mailURL", s:gui0D, "", s:cterm0D, "", "", "") +call hi("mailEmail", s:gui0D, "", s:cterm0D, "", "", "") + +" Markdown +call hi("markdownCode", s:gui0B, "", s:cterm0B, "", "", "") +call hi("markdownError", s:gui06, s:guibg, s:cterm05, s:ctermbg, "", "") +call hi("markdownCodeBlock", s:gui0B, "", s:cterm0B, "", "", "") +call hi("markdownHeadingDelimiter", s:gui0D, "", s:cterm0D, "", "", "") + +" Matchup +call hi("MatchWord", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "underline", "") + +" NERDTree +call hi("NERDTreeDirSlash", s:gui0D, "", s:cterm0D, "", "", "") +call hi("NERDTreeExecFile", s:gui06, "", s:cterm05, "", "", "") + +" Netrw +hi! link netrwDir ThemeCyan +hi! link netrwClassify ThemeCyan +hi! link netrwLink ThemeBg3 +hi! link netrwSymLink ThemeFg1 +hi! link netrwExe ThemeYellow +hi! link netrwComment ThemeBg3 +hi! link netrwList ThemeBlue +hi! link netrwHelpCmd ThemeCyan +hi! link netrwCmdSep ThemeFg3 +hi! link netrwVersion ThemeGreen + +" PHP +call hi("phpMemberSelector", s:gui06, "", s:cterm05, "", "", "") +call hi("phpComparison", s:gui06, "", s:cterm05, "", "", "") +call hi("phpParent", s:gui06, "", s:cterm05, "", "", "") +call hi("phpMethodsVar", s:gui0C, "", s:cterm0C, "", "", "") + +" Python +"call hi("pythonOperator", s:gui0E, "", s:cterm0E, "", "", "") +"call hi("pythonRepeat", s:gui0E, "", s:cterm0E, "", "", "") +"call hi("pythonInclude", s:gui0E, "", s:cterm0E, "", "", "") +"call hi("pythonStatement", s:gui0E, "", s:cterm0E, "", "", "") + +" hi! link pythonBuiltin ThemeCyan +" hi! link pythonBuiltinObj ThemeCyan +" hi! link pythonBuiltinFunc ThemeGreen +" hi! link pythonFunction Function +hi! link pythonDecorator ThemeYellow +hi! link pythonDecoratorName ThemeYellow +" hi! link pythonTripleQuotes ThemeGreenItalic +" hi! link pythonInclude ThemeBlue +" hi! link pythonImport ThemeBlue +" hi! link pythonRun ThemeBlue +" hi! link pythonCoding ThemeBlue +" hi! link pythonOperator ThemeRed +" hi! link pythonException ThemeRed +" hi! link pythonExceptions ThemeYellow +" hi! link pythonBoolean ThemeYellow +" hi! link pythonDot ThemeFg3 +" hi! link pythonConditional ThemeCyan +" hi! link pythonRepeat ThemeRed +" hi! link pythonDottedName ThemeGreen + + +" Ruby +call hi("rubyAttribute", s:gui0D, "", s:cterm0D, "", "", "") +call hi("rubyConstant", s:gui0A, "", s:cterm0A, "", "", "") +call hi("rubyInterpolationDelimiter", s:gui0F, "", s:cterm0F, "", "", "") +call hi("rubyRegexp", s:gui0C, "", s:cterm0C, "", "", "") +call hi("rubySymbol", s:gui0B, "", s:cterm0B, "", "", "") +call hi("rubyStringDelimiter", s:gui0B, "", s:cterm0B, "", "", "") + +" SASS +call hi("sassidChar", s:gui08, "", s:cterm08, "", "", "") +call hi("sassClassChar", s:gui09, "", s:cterm09, "", "", "") +call hi("sassInclude", s:gui0E, "", s:cterm0E, "", "", "") +call hi("sassMixing", s:gui0E, "", s:cterm0E, "", "", "") +call hi("sassMixinName", s:gui0D, "", s:cterm0D, "", "", "") + +" Signify +hi! link SignifySignAdd GitAddSign +hi! link SignifySignChange GitChangeSign +hi! link SignifySignDelete GitDeleteSign + +" Startify +call hi("StartifyBracket", s:gui03, "", s:cterm03, "", "", "") +call hi("StartifyFile", s:gui07, "", s:cterm07, "", "", "") +call hi("StartifyFooter", s:gui03, "", s:cterm03, "", "", "") +call hi("StartifyHeader", s:gui0B, "", s:cterm0B, "", "", "") +call hi("StartifyNumber", s:gui09, "", s:cterm09, "", "", "") +call hi("StartifyPath", s:gui03, "", s:cterm03, "", "", "") +call hi("StartifySection", s:gui0E, "", s:cterm0E, "", "", "") +call hi("StartifySelect", s:gui0C, "", s:cterm0C, "", "", "") +call hi("StartifySlash", s:gui03, "", s:cterm03, "", "", "") +call hi("StartifySpecial", s:gui03, "", s:cterm03, "", "", "") + +" LSP +if has("nvim") + hi! link DiagnosticError ErrorSign + hi! link DiagnosticWarn WarningSign + hi! link DiagnosticInfo InfoSign + hi! link DiagnosticHint HintSign + hi! link DiagnosticOk OkSign + + hi! link DiagnosticFloatingError ErrorFloat + hi! link DiagnosticFloatingWarn WarningFloat + hi! link DiagnosticFloatingInfo InfoFloat + hi! link DiagnosticFloatingHint HintFloat + hi! link DiagnosticFloatingOk OkFloat + + hi! link DiagnosticUnderlineError ErrorHighlight + hi! link DiagnosticUnderlineWarn WarningHighlight + hi! link DiagnosticUnderlineInfo InfoHighlight + hi! link DiagnosticUnderlineHint HintHighlight + hi! link DiagnosticUnderlineOk OkHighlight + + hi! link DiagnosticsVirtualTextError ErrorSign + hi! link DiagnosticsVirtualTextWarning WarningSign + hi! link DiagnosticsVirtualTextInfo InfoSign + hi! link DiagnosticsVirtualTextHint HintSign + hi! link DiagnosticsVirtualTextOk OkSign + + " Remove untill endif on next nvim release + hi! link LspDiagnosticsSignError ErrorSign + hi! link LspDiagnosticsSignWarning WarningSign + hi! link LspDiagnosticsSignInfo InfoSign + hi! link LspDiagnosticsSignHint HintSign + + hi! link LspDiagnosticsVirtualTextError ErrorSign + hi! link LspDiagnosticsVirtualTextWarning WarningSign + hi! link LspDiagnosticsVirtualTextInfo InfoSign + hi! link LspDiagnosticsVirtualTextHint HintSign + + hi! link LspDiagnosticsFloatingError ErrorFloat + hi! link LspDiagnosticsFloatingWarning WarningFloat + hi! link LspDiagnosticsFloatingInfo InfoFloat + hi! link LspDiagnosticsFloatingHint HintFloat + + hi! link LspDiagnosticsUnderlineError ErrorHighlight + hi! link LspDiagnosticsUnderlineWarning WarningHighlight + hi! link LspDiagnosticsUnderlineInfo InfoHighlight + hi! link LspDiagnosticsUnderlineHint HintHighlight + + hi! link LspReferenceText ReferenceText + hi! link LspReferenceRead ReferenceRead + hi! link LspReferenceWrite ReferenceWrite +endif + +" Java +call hi("javaOperator", s:gui0D, "", s:cterm0D, "", "", "") + +" JSON +hi! link jsonKeyword ThemeGreen +hi! link jsonQuote ThemeGreen +hi! link jsonBraces ThemeFg1 +hi! link jsonString ThemeFg1 + +" Markdown +hi! link markdownH1 ThemeRedBold +hi! link markdownH2 ThemeRed +hi! link markdownH3 ThemeRed +hi! link markdownH4 ThemeRed +hi! link markdownH5 ThemeRed +hi! link markdownH6 ThemeRed + +hi! link markdownCode ThemeYellow +hi! link markdownCodeBlock ThemeYellow +hi! link markdownCodeDelimiter ThemeYellow + +hi! link markdownBlockquote ThemeGrey +hi! link markdownListMarker ThemeBlue +hi! link markdownOrderedListMarker ThemeBlue +hi! link markdownRule ThemeGrey +hi! link markdownHeadingRule ThemeGrey + +hi! link markdownUrlDelimiter ThemeFg3 +hi! link markdownLinkDelimiter ThemeFg3 +hi! link markdownLinkTextDelimiter ThemeFg3 +hi! link markdownHeadingDelimiter ThemeOrange +hi! link markdownUrlTitleDelimiter ThemeGreen + +hi! link markdownLink ThemeGreen +hi! link markdownWikiLink ThemeViolet +hi! link markdownUrl ThemeOrange +hi! link markdownInlineUrl ThemeOrange + +hi! link markdownLinkText ThemeViolet +hi! link markdownIdDeclaration markdownLinkText + +"call s:HL('markdownItalic', s:fg3, s:none, s:italic) +"call s:HL('markdownLinkText', s:gray, s:none, s:underline) + + +" Remove functions +delf hi + +" Remove color variables +unlet s:gui00 s:gui01 s:gui02 s:gui03 s:gui04 s:gui05 s:gui06 s:gui07 s:gui08 s:gui09 s:gui0A s:gui0B s:gui0C s:gui0D s:gui0E s:gui0F s:guibg +unlet s:cterm00 s:cterm01 s:cterm02 s:cterm03 s:cterm04 s:cterm05 s:cterm06 s:cterm07 s:cterm08 s:cterm09 s:cterm0A s:cterm0B s:cterm0C s:cterm0D s:cterm0E s:cterm0F s:ctermbg diff --git a/apps/nvim/monobiome-light.vim b/apps/nvim/monobiome-light.vim new file mode 100644 index 0000000..cbe752c --- /dev/null +++ b/apps/nvim/monobiome-light.vim @@ -0,0 +1,882 @@ +" vi:syntax=vim +" +" Top-level remarks: +" +" - `hi` sets highlight colors for syntax groups, allowing one to specify fg and bg colors +" for GUI and terminal Vim. +" - `link` allows for linking one syntax group to another, reusing the same color +" settings. Language-specific groups can then point to one of the base color highlight +" groups, for example, without needing to repeat the raw color values. + +" GUI color definitions +let s:gui00 = "#cecece" +let g:base16_gui00 = "#cecece" +let s:gui01 = "#bebebe" +let g:base16_gui01 = "#bebebe" +let s:gui02 = "#aeaeae" +let g:base16_gui02 = "#aeaeae" +let s:gui03 = "#9e9e9e" +let g:base16_gui03 = "#9e9e9e" +let s:gui04 = "#3a3a3a" +let g:base16_gui04 = "#3a3a3a" +let s:gui05 = "#2e2e2e" +let g:base16_gui05 = "#2e2e2e" +let s:gui06 = "#222222" +let g:base16_gui06 = "#222222" +let s:gui07 = "#161616" +let g:base16_gui07 = "#161616" +let s:gui08 = "#b52119" +let g:base16_gui08 = "#b52119" +let s:gui09 = "#905201" +let g:base16_gui09 = "#905201" +let s:gui0A = "#6a6535" +let g:base16_gui0A = "#6a6535" +let s:gui0B = "#377242" +let g:base16_gui0B = "#377242" +let s:gui0C = "#377242" +let g:base16_gui0C = "#377242" +let s:gui0D = "#3860ac" +let g:base16_gui0D = "#3860ac" +let s:gui0E = "#3860ac" +let g:base16_gui0E = "#3860ac" +let s:gui0F = "#b52119" +let g:base16_gui0F = "#b52119" + +let s:grey = "#636363" + +" Terminal color definitions +let s:cterm00 = "00" +let g:base16_cterm00 = "00" +let s:cterm03 = "08" +let g:base16_cterm03 = "08" +let s:cterm05 = "07" +let g:base16_cterm05 = "07" +let s:cterm07 = "15" +let g:base16_cterm07 = "15" +let s:cterm08 = "01" +let g:base16_cterm08 = "01" +let s:cterm0A = "03" +let g:base16_cterm0A = "03" +let s:cterm0B = "02" +let g:base16_cterm0B = "02" +let s:cterm0C = "06" +let g:base16_cterm0C = "06" +let s:cterm0D = "04" +let g:base16_cterm0D = "04" +let s:cterm0E = "05" +let g:base16_cterm0E = "05" + +let s:cterm01 = "10" +let g:base16_cterm01 = "10" +let s:cterm02 = "11" +let g:base16_cterm02 = "11" +let s:cterm04 = "12" +let g:base16_cterm04 = "12" +let s:cterm06 = "13" +let g:base16_cterm06 = "13" +let s:cterm09 = "09" +let g:base16_cterm09 = "09" +let s:cterm0F = "14" +let g:base16_cterm0F = "14" + +" Neovim terminal colours +if has("nvim") + let g:terminal_color_0 = "#cecece" + let g:terminal_color_1 = "#b52119" + let g:terminal_color_2 = "#377242" + let g:terminal_color_3 = "#6a6535" + let g:terminal_color_4 = "#3860ac" + let g:terminal_color_5 = "#3860ac" + let g:terminal_color_6 = "#377242" + let g:terminal_color_7 = "#2e2e2e" + let g:terminal_color_8 = "#9e9e9e" + let g:terminal_color_9 = "#b52119" + let g:terminal_color_10 = "#377242" + let g:terminal_color_11 = "#6a6535" + let g:terminal_color_12 = "#3860ac" + let g:terminal_color_13 = "#3860ac" + let g:terminal_color_14 = "#377242" + let g:terminal_color_15 = "#161616" + let g:terminal_color_background = g:terminal_color_0 + let g:terminal_color_foreground = g:terminal_color_5 + + if &background == "light" + let g:terminal_color_background = g:terminal_color_7 + let g:terminal_color_foreground = g:terminal_color_2 + endif + +elseif has("terminal") + let g:terminal_ansi_colors = [ + \ "#cecece", + \ "#b52119", + \ "#377242", + \ "#6a6535", + \ "#3860ac", + \ "#3860ac", + \ "#377242", + \ "#2e2e2e", + \ "#9e9e9e", + \ "#b52119", + \ "#377242", + \ "#6a6535", + \ "#3860ac", + \ "#3860ac", + \ "#377242", + \ "#161616", + \ ] +endif + +let s:guibg = s:gui00 +let s:ctermbg = s:cterm00 + +" Theme setup +hi clear +syntax reset +let g:colors_name = "active" + +" Highlighting function +" Optional variables are attributes and guisp +function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) + " For a given syntax group, sets the GUI and terminal foreground and backgrounds + " Optional parameters are interpreted as `attr` and `guisp`, the first of which appears + " to be a modifier for the group (e.g., bold, italic), and `guisp` appears to be + " 'special' colors used for underlines in the GUI. + let l:attr = get(a:, 1, "") + let l:guisp = get(a:, 2, "") + + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + + if a:guifg != "" + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=" . a:guifg + endif + endif + + if a:guibg != "" + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=" . a:guibg + endif + endif + + if a:ctermfg != "" + exec "hi " . a:group . " ctermfg=" . a:ctermfg + endif + + if a:ctermbg != "" + exec "hi " . a:group . " ctermbg=" . a:ctermbg + endif + + if l:attr != "" + exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr + endif + + if l:guisp != "" + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=" . l:guisp + endif + endif +endfunction + + +fun hi(group, guifg, guibg, ctermfg, ctermbg, attr, guisp) + call g:Base16hi(a:group, a:guifg, a:guibg, a:ctermfg, a:ctermbg, a:attr, a:guisp) +endfun + + +" color groups for interpretability +call hi("ThemeBg0", s:gui00, "", s:cterm00, "", "", "") +call hi("ThemeBg1", s:gui01, "", s:cterm01, "", "", "") +call hi("ThemeBg2", s:gui02, "", s:cterm02, "", "", "") +call hi("ThemeBg3", s:gui03, "", s:cterm03, "", "", "") +call hi("ThemeFg3", s:gui04, "", s:cterm04, "", "", "") +call hi("ThemeFg2", s:gui05, "", s:cterm05, "", "", "") +call hi("ThemeFg1", s:gui06, "", s:cterm06, "", "", "") +call hi("ThemeFg0", s:gui07, "", s:cterm07, "", "", "") +" +call hi("ThemeRed", s:gui08, "", s:cterm08, "", "", "") +call hi("ThemeOrange", s:gui09, "", s:cterm09, "", "", "") +call hi("ThemeYellow", s:gui0A, "", s:cterm0A, "", "", "") +call hi("ThemeGreen", s:gui0B, "", s:cterm0B, "", "", "") +call hi("ThemeCyan", s:gui0C, "", s:cterm0C, "", "", "") +call hi("ThemeBlue", s:gui0D, "", s:cterm0D, "", "", "") +call hi("ThemeViolet", s:gui0E, "", s:cterm0E, "", "", "") +call hi("ThemeMagenta", s:gui0F, "", s:cterm0F, "", "", "") + +call hi("ThemeRedBold", s:gui08, "", s:cterm08, "", "bold", "") +call hi("ThemeOrangeBold", s:gui09, "", s:cterm09, "", "bold", "") +call hi("ThemeYellowBold", s:gui0A, "", s:cterm0A, "", "bold", "") +call hi("ThemeGreenBold", s:gui0B, "", s:cterm0B, "", "bold", "") +call hi("ThemeCyanBold", s:gui0C, "", s:cterm0C, "", "bold", "") +call hi("ThemeBlueBold", s:gui0D, "", s:cterm0D, "", "bold", "") +call hi("ThemeVioletBold", s:gui0E, "", s:cterm0E, "", "bold", "") +call hi("ThemeMagentaBold", s:gui0F, "", s:cterm0F, "", "bold", "") + +call hi("ThemeRedItalic", s:gui08, "", s:cterm08, "", "italic", "") +call hi("ThemeOrangeItalic", s:gui09, "", s:cterm09, "", "italic", "") +call hi("ThemeYellowItalic", s:gui0A, "", s:cterm0A, "", "italic", "") +call hi("ThemeGreenItalic", s:gui0B, "", s:cterm0B, "", "italic", "") +call hi("ThemeCyanItalic", s:gui0C, "", s:cterm0C, "", "italic", "") +call hi("ThemeBlueItalic", s:gui0D, "", s:cterm0D, "", "italic", "") +call hi("ThemeVioletItalic", s:gui0E, "", s:cterm0E, "", "italic", "") +call hi("ThemeMagentaItalic", s:gui0F, "", s:cterm0F, "", "italic", "") + +call hi("ThemeGrey", s:grey, "", s:cterm03, "", "", "") +call hi("ThemeGreyItalic", s:grey, "", s:cterm03, "", "italic", "") + + +" Vim editor colors +call hi("Normal", s:gui05, s:guibg, s:cterm05, s:ctermbg, "", "") +call hi("Bold", "", "", "", "", "bold", "") +call hi("Debug", s:gui08, "", s:cterm08, "", "", "") +call hi("Directory", s:gui0D, "", s:cterm0D, "", "", "") +call hi("Error", s:guibg, s:gui08, s:ctermbg, s:cterm08, "", "") +call hi("ErrorMsg", s:gui08, s:guibg, s:cterm08, s:ctermbg, "", "") +call hi("Exception", s:gui08, "", s:cterm08, "", "", "") +call hi("FoldColumn", s:gui03, s:guibg, s:cterm03, s:ctermbg, "", "") +call hi("Folded", s:gui02, s:guibg, s:cterm02, s:ctermbg, "", "") +call hi("IncSearch", s:gui01, s:gui09, s:cterm01, s:cterm09, "none", "") +call hi("Italic", "", "", "", "", "italic", "") +call hi("Macro", s:gui0C, "", s:cterm0C, "", "", "") +call hi("MatchParen", "", s:gui03, "", s:cterm03, "", "") +call hi("ModeMsg", s:gui0B, "", s:cterm0B, "", "", "") +call hi("MoreMsg", s:gui0B, "", s:cterm0B, "", "", "") +call hi("Question", s:gui0D, "", s:cterm0D, "", "", "") +call hi("Search", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "", "") +call hi("Substitute", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "none", "") +call hi("SpecialKey", s:gui03, "", s:cterm03, "", "", "") +call hi("TooLong", s:gui08, "", s:cterm08, "", "", "") +call hi("Underlined", "", "", "", "", "underline", "fg") +call hi("Visual", "", s:gui02, "", s:cterm02, "", "") +call hi("VisualNOS", s:gui08, "", s:cterm08, "", "", "") +call hi("WarningMsg", s:gui08, "", s:cterm08, "", "", "") +call hi("WildMenu", s:guibg, s:gui06, s:ctermbg, s:cterm05, "", "") +call hi("Title", s:gui0D, "", s:cterm0D, "", "none", "") +call hi("Conceal", s:gui0D, s:guibg, s:cterm0D, s:ctermbg, "", "") +call hi("Cursor", s:gui05, s:guibg, "", "", "inverse", "") +call hi("NonText", s:gui03, "", s:cterm03, "", "", "") +call hi("Whitespace", s:gui03, "", s:cterm03, "", "", "") +call hi("LineNr", s:gui03, s:guibg, s:cterm03, s:ctermbg, "", "") +call hi("SignColumn", s:gui03, s:guibg, s:cterm03, s:ctermbg, "", "") +call hi("StatusLine", s:gui07, s:gui01, s:cterm07, s:cterm01, "none", "") +call hi("StatusLineNC", s:gui06, s:gui01, s:cterm05, s:cterm01, "none", "") +call hi("VertSplit", s:gui01, s:guibg, s:cterm01, s:ctermbg, "none", "") +call hi("ColorColumn", "", s:gui01, "", s:cterm01, "none", "") +call hi("CursorColumn", "", s:gui01, "", s:cterm01, "none", "") +call hi("CursorLine", "", s:gui01, "", s:cterm01, "none", "") +call hi("CursorLineNr", s:gui04, s:gui01, s:cterm04, s:cterm01, "bold", "") +call hi("QuickFixLine", "", s:gui01, "", s:cterm01, "none", "") +call hi("PMenu", s:gui06, s:gui01, s:cterm06, s:cterm01, "none", "") +call hi("PMenuSel", s:gui06, s:gui02, s:cterm06, s:cterm02, "", "") +call hi("PMenuSbar", "", s:gui03, "", s:cterm03, "", "") +call hi("PMenuThumb", "", s:gui04, "", s:cterm04, "", "") +call hi("TabLine", s:gui03, s:gui01, s:cterm03, s:cterm01, "none", "") +call hi("TabLineFill", s:gui03, s:gui01, s:cterm03, s:cterm01, "none", "") +call hi("TabLineSel", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "none", "") + +" Standard syntax +hi! link Boolean ThemeOrange +hi! link Character ThemeRed + +"call hi("Comment", s:gui03, "", s:cterm03, "", "italic", "") +hi! link Comment ThemeGreyItalic + +hi! link Conditional ThemeRed +hi! link Constant ThemeOrange +call hi("Define", s:gui0E, "", s:cterm0E, "", "none", "") +hi! link Delimiter ThemeFg1 + +if has("patch-8.0.1038") + call hi("Deprecated", "", "", "", "", "strikethrough", "") +endif + +hi! link Float ThemeOrange +hi! link Function ThemeBlue +call hi("Identifier", s:gui06, "", s:cterm05, "", "none", "") +hi! link Include ThemeBlue +hi! link Constant ThemeOrange +call hi("Keyword", s:gui0E, "", s:cterm0E, "", "none", "") +hi! link Label ThemeOrange +hi! link Number ThemeOrange +hi! link Operator ThemeYellow +hi! link PreProc ThemeOrange +hi! link Repeat ThemeViolet +hi! link Special ThemeYellow +hi! link SpecialChar ThemeMagenta +hi! link Statement ThemeRed +hi! link StorageClass ThemeOrange +hi! link String ThemeGreen +hi! link Structure ThemeOrange +hi! link Tag ThemeOrange + +call hi("Todo", s:gui08, s:guibg, s:cterm08, s:ctermbg, "italic", "") +call hi("Type", s:gui0A, "", s:cterm0A, "", "none", "") + +hi! link Typedef ThemeOrange + + +" Treesitter +if has("nvim-0.8.0") + call hi("@field", s:gui08, "", s:cterm08, "", "", "") + call hi("@property", s:gui08, "", s:cterm08, "", "", "") + call hi("@namespace", s:gui06, "", s:cterm05, "", "italic", "") + call hi("@variable.builtin", s:gui06, "", s:cterm05, "", "italic", "") + call hi("@text.reference", s:gui08, "", s:cterm08, "", "", "") + call hi("@text.uri", s:gui08, "", s:cterm08, "", "italic", "") + + " Annotations & Attributes + call hi("@annotation", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@attribute", s:gui0D, "", s:cterm0D, "", "", "") + + " Booleans, Characters & Comments + call hi("@boolean", s:gui09, "", s:cterm09, "", "", "") + call hi("@character", s:gui08, "", s:cterm08, "", "", "") + call hi("@character.special", s:gui0F, "", s:cterm0F, "", "", "") + call hi("@comment", s:gui03, "", s:cterm03, "", "", "") + + " Conditionals, Constants & Debugging + call hi("@keyword.conditional", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@constant", s:gui09, "", s:cterm09, "", "", "") + call hi("@constant.builtin", s:gui09, "", s:cterm09, "", "", "") + call hi("@constant.macro", s:gui08, "", s:cterm08, "", "", "") + call hi("@keyword.debug", s:gui08, "", s:cterm08, "", "", "") + + " Directives & Exceptions + call hi("@keyword.directive.define", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@keyword.exception", s:gui0E, "", s:cterm0E, "", "", "") + + " Floats & Functions + call hi("@number.float", s:gui09, "", s:cterm09, "", "", "") + call hi("@function", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@function.builtin", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@function.call", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@function.macro", s:gui08, "", s:cterm08, "", "", "") + + " Imports, Operators & Returns + call hi("@keyword.import", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@keyword.coroutine", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@keyword.operator", s:gui06, "", s:cterm05, "", "", "") + call hi("@keyword.return", s:gui0E, "", s:cterm0E, "", "", "") + + " Methods & Namespaces + call hi("@function.method", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@function.method.call", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@namespace.builtin", s:gui0E, "", s:cterm0E, "", "", "") + + " Numbers & Directives + call hi("@none", s:gui06, "", s:cterm05, "", "", "") + call hi("@number", s:gui09, "", s:cterm09, "", "", "") + call hi("@keyword.directive", s:gui0E, "", s:cterm0E, "", "", "") + + " Repeats, Storage & Strings + call hi("@keyword.repeat", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@keyword.storage", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@string", s:gui0B, "", s:cterm0B, "", "", "") + + " Tags & Markup + call hi("@markup.link.label", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.link.label.symbol", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@tag", s:gui08, "", s:cterm08, "", "", "") + call hi("@tag.attribute", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@tag.delimiter", s:gui0F, "", s:cterm0F, "", "", "") + + " More Markup + call hi("@markup", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.environment", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.environment.name", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.raw", s:gui09, "", s:cterm09, "", "", "") + call hi("@markup.math", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.strong", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.emphasis", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.strikethrough", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.underline", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.heading", s:gui0D, "", s:cterm0D, "", "", "") + + " Comments & Types + call hi("@comment.note", s:gui03, "", s:cterm03, "", "", "") + call hi("@comment.error", s:gui08, "", s:cterm08, "", "", "") + call hi("@comment.hint", s:gui0B, "", s:cterm0B, "", "", "") + call hi("@comment.info", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@comment.warning", s:gui09, "", s:cterm09, "", "", "") + call hi("@comment.todo", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.link.url", s:gui09, "", s:cterm09, "", "", "") + call hi("@type", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@type.definition", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@type.qualifier", s:gui0E, "", s:cterm0E, "", "", "") +endif + +" Standard highlights to be used by plugins +if has("patch-8.0.1038") + call hi("Deprecated", "", "", "", "", "strikethrough", "") +endif +call hi("SearchMatch", s:gui0C, "", s:cterm0C, "", "", "") + +call hi("GitAddSign", s:gui0B, "", s:cterm0B, "", "", "") +call hi("GitChangeSign", s:gui04, "", s:cterm04, "", "", "") +call hi("GitDeleteSign", s:gui08, "", s:cterm08, "", "", "") +call hi("GitChangeDeleteSign", s:gui04, "", s:cterm04, "", "", "") + +call hi("ErrorSign", s:gui08, "", s:cterm08, "", "", "") +call hi("WarningSign", s:gui09, "", s:cterm09, "", "", "") +call hi("InfoSign", s:gui0D, "", s:cterm0D, "", "", "") +call hi("HintSign", s:gui0C, "", s:cterm0C, "", "", "") +call hi("OkSign", s:gui0B, "", s:cterm0B, "", "", "") + +call hi("ErrorFloat", s:gui08, s:gui01, s:cterm08, s:cterm01, "", "") +call hi("WarningFloat", s:gui09, s:gui01, s:cterm09, s:cterm01, "", "") +call hi("InfoFloat", s:gui0D, s:gui01, s:cterm0D, s:cterm01, "", "") +call hi("HintFloat", s:gui0C, s:gui01, s:cterm0C, s:cterm01, "", "") +call hi("OkFloat", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "") + +call hi("ErrorHighlight", "", "", s:ctermbg, s:cterm08, "underline", s:gui08) +call hi("WarningHighlight", "", "", s:ctermbg, s:cterm09, "underline", s:gui09) +call hi("InfoHighlight", "", "", s:ctermbg, s:cterm0D, "underline", s:gui0D) +call hi("HintHighlight", "", "", s:ctermbg, s:cterm0C, "underline", s:gui0C) +call hi("OkHighlight", "", "", s:ctermbg, s:cterm0B, "underline", s:gui0B) + +call hi("SpellBad", "", "", s:ctermbg, s:cterm08, "undercurl", s:gui08) +call hi("SpellLocal", "", "", s:ctermbg, s:cterm0C, "undercurl", s:gui0C) +call hi("SpellCap", "", "", s:ctermbg, s:cterm0D, "undercurl", s:gui0D) +call hi("SpellRare", "", "", s:ctermbg, s:cterm0E, "undercurl", s:gui0E) + +call hi("ReferenceText", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "", "") +call hi("ReferenceRead", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "", "") +call hi("ReferenceWrite", s:gui01, s:gui08, s:cterm01, s:cterm08, "", "") + +" C +call hi("cOperator", s:gui0C, "", s:cterm0C, "", "", "") +call hi("cPreCondit", s:gui0E, "", s:cterm0E, "", "", "") + +" C# +call hi("csClass", s:gui0A, "", s:cterm0A, "", "", "") +call hi("csAttribute", s:gui0A, "", s:cterm0A, "", "", "") +call hi("csModifier", s:gui0E, "", s:cterm0E, "", "", "") +call hi("csType", s:gui08, "", s:cterm08, "", "", "") +call hi("csUnspecifiedStatement", s:gui0D, "", s:cterm0D, "", "", "") +call hi("csContextualStatement", s:gui0E, "", s:cterm0E, "", "", "") +call hi("csNewDecleration", s:gui08, "", s:cterm08, "", "", "") + +" Clap +hi! link ClapInput ColorColumn +hi! link ClapSpinner ColorColumn +hi! link ClapDisplay Default +hi! link ClapPreview ColorColumn +hi! link ClapCurrentSelection CursorLine +hi! link ClapNoMatchesFound ErrorFloat + +" Coc +hi! link CocErrorSign ErrorSign +hi! link CocWarningSign WarningSign +hi! link CocInfoSign InfoSign +hi! link CocHintSign HintSign + +hi! link CocErrorFloat ErrorFloat +hi! link CocWarningFloat WarningFloat +hi! link CocInfoFloat InfoFloat +hi! link CocHintFloat HintFloat + +hi! link CocErrorHighlight ErrorHighlight +hi! link CocWarningHighlight WarningHighlight +hi! link CocInfoHighlight InfoHighlight +hi! link CocHintHighlight HintHighlight + +hi! link CocSem_angle Keyword +hi! link CocSem_annotation Keyword +hi! link CocSem_attribute Type +hi! link CocSem_bitwise Keyword +hi! link CocSem_boolean Boolean +hi! link CocSem_brace Normal +hi! link CocSem_bracket Normal +hi! link CocSem_builtinAttribute Type +hi! link CocSem_builtinType Type +hi! link CocSem_character String +hi! link CocSem_class Structure +hi! link CocSem_colon Normal +hi! link CocSem_comma Normal +hi! link CocSem_comment Comment +hi! link CocSem_comparison Keyword +hi! link CocSem_concept Keyword +hi! link CocSem_constParameter Identifier +hi! link CocSem_dependent Keyword +hi! link CocSem_dot Keyword +hi! link CocSem_enum Structure +hi! link CocSem_enumMember Constant +hi! link CocSem_escapeSequence Type +hi! link CocSem_event Identifier +hi! link CocSem_formatSpecifier Type +hi! link CocSem_function Function +hi! link CocSem_interface Type +hi! link CocSem_keyword Keyword +hi! link CocSem_label Keyword +hi! link CocSem_logical Keyword +hi! link CocSem_macro Macro +hi! link CocSem_method Function +hi! link CocSem_modifier Keyword +hi! link CocSem_namespace Identifier +hi! link CocSem_number Number +hi! link CocSem_operator Operator +hi! link CocSem_parameter Identifier +hi! link CocSem_parenthesis Normal +hi! link CocSem_property Identifier +hi! link CocSem_punctuation Keyword +hi! link CocSem_regexp Type +hi! link CocSem_selfKeyword Constant +hi! link CocSem_semicolon Normal +hi! link CocSem_string String +hi! link CocSem_struct Structure +hi! link CocSem_type Type +hi! link CocSem_typeAlias Type +hi! link CocSem_typeParameter Type +hi! link CocSem_unknown Normal +hi! link CocSem_variable Identifier + +call hi("CocHighlightRead", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "") +call hi("CocHighlightText", s:gui0A, s:gui01, s:cterm0A, s:cterm01, "", "") +call hi("CocHighlightWrite", s:gui08, s:gui01, s:cterm08, s:cterm01, "", "") +call hi("CocListMode", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "bold", "") +call hi("CocListPath", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "", "") +call hi("CocSessionsName", s:gui06, "", s:cterm05, "", "", "") + +" CSS +hi! link cssBraces ThemeBlue +hi! link cssFunctionName ThemeYellow +hi! link cssIdentifier ThemeOrange +hi! link cssClassName ThemeGreen +hi! link cssColor ThemeBlue +hi! link cssSelectorOp ThemeBlue +hi! link cssSelectorOp2 ThemeBlue +hi! link cssImportant ThemeGreen +hi! link cssVendor ThemeFg1 + +hi! link cssTextProp ThemeCyan +hi! link cssAnimationProp ThemeCyan +hi! link cssUIProp ThemeYellow +hi! link cssTransformProp ThemeCyan +hi! link cssTransitionProp ThemeCyan +hi! link cssPrintProp ThemeCyan +hi! link cssPositioningProp ThemeYellow +hi! link cssBoxProp ThemeCyan +hi! link cssFontDescriptorProp ThemeCyan +hi! link cssFlexibleBoxProp ThemeCyan +hi! link cssBorderOutlineProp ThemeCyan +hi! link cssBackgroundProp ThemeCyan +hi! link cssMarginProp ThemeCyan +hi! link cssListProp ThemeCyan +hi! link cssTableProp ThemeCyan +hi! link cssFontProp ThemeCyan +hi! link cssPaddingProp ThemeCyan +hi! link cssDimensionProp ThemeCyan +hi! link cssRenderProp ThemeCyan +hi! link cssColorProp ThemeCyan +hi! link cssGeneratedContentProp ThemeCyan + + +" CMP +hi! link CmpItemAbbrDeprecated Deprecated +hi! link CmpItemAbbrMatch SearchMatch +hi! link CmpItemAbbrMatchFuzzy SearchMatch +hi! link CmpItemKindClass Type +hi! link CmpItemKindColor Keyword +hi! link CmpItemKindConstant Constant +hi! link CmpItemKindConstructor Special +hi! link CmpItemKindEnum Type +hi! link CmpItemKindEnumMember Constant +hi! link CmpItemKindEvent Identifier +hi! link CmpItemKindField Character +hi! link CmpItemKindFile Directory +hi! link CmpItemKindFolder Directory +hi! link CmpItemKindFunction Function +hi! link CmpItemKindInterface Type +hi! link CmpItemKindKeyword Keyword +hi! link CmpItemKindMethod Function +hi! link CmpItemKindModule Namespace +hi! link CmpItemKindOperator Operator +hi! link CmpItemKindProperty Identifier +hi! link CmpItemKindReference Character +hi! link CmpItemKindSnippet String +hi! link CmpItemKindStruct Type +hi! link CmpItemKindText Text +hi! link CmpItemKindUnit Namespace +hi! link CmpItemKindValue Comment +hi! link CmpItemKindVariable Identifier + +if has("nvim-0.8.0") + hi! link CmpItemKindField @field + hi! link CmpItemKindProperty @property +endif + +" Diff +call hi("DiffAdd", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "") +call hi("DiffChange", s:gui06, s:gui01, s:cterm05, s:cterm01, "", "") +call hi("DiffDelete", s:gui02, s:guibg, s:cterm02, s:ctermbg, "", "") +call hi("DiffText", s:gui0D, s:gui01, s:cterm0D, s:cterm01, "", "") +call hi("DiffAdded", s:gui0B, s:guibg, s:cterm0B, s:ctermbg, "", "") +call hi("DiffFile", s:gui08, s:guibg, s:cterm08, s:ctermbg, "", "") +call hi("DiffNewFile", s:gui0B, s:guibg, s:cterm0B, s:ctermbg, "", "") +call hi("DiffLine", s:gui0D, s:guibg, s:cterm0D, s:ctermbg, "", "") +call hi("DiffRemoved", s:gui08, s:guibg, s:cterm08, s:ctermbg, "", "") + +" Git +call hi("gitcommitOverflow", s:gui08, "", s:cterm08, "", "", "") +call hi("gitcommitSummary", s:gui0B, "", s:cterm0B, "", "", "") +call hi("gitcommitComment", s:gui03, "", s:cterm03, "", "", "") +call hi("gitcommitUntracked", s:gui03, "", s:cterm03, "", "", "") +call hi("gitcommitDiscarded", s:gui03, "", s:cterm03, "", "", "") +call hi("gitcommitSelected", s:gui03, "", s:cterm03, "", "", "") +call hi("gitcommitHeader", s:gui0E, "", s:cterm0E, "", "", "") +call hi("gitcommitSelectedType", s:gui0D, "", s:cterm0D, "", "", "") +call hi("gitcommitUnmergedType", s:gui0D, "", s:cterm0D, "", "", "") +call hi("gitcommitDiscardedType", s:gui0D, "", s:cterm0D, "", "", "") +call hi("gitcommitBranch", s:gui09, "", s:cterm09, "", "bold", "") +call hi("gitcommitUntrackedFile", s:gui0A, "", s:cterm0A, "", "", "") +call hi("gitcommitUnmergedFile", s:gui08, "", s:cterm08, "", "bold", "") +call hi("gitcommitDiscardedFile", s:gui08, "", s:cterm08, "", "bold", "") +call hi("gitcommitSelectedFile", s:gui0B, "", s:cterm0B, "", "bold", "") + +" GitGutter +hi! link GitGutterAdd GitAddSign +hi! link GitGutterChange GitChangeSign +hi! link GitGutterDelete GitDeleteSign +hi! link GitGutterChangeDelete GitChangeDeleteSign + +" indent-blankline (nvim) +if has("nvim") + call hi("@ibl.indent.char.1",s:gui01, "", s:cterm01, "", "", "") +endif + +" HTML +call hi("htmlBold", s:gui07, "", s:cterm0A, "", "bold", "") +call hi("htmlItalic", s:gui06, "", s:cterm0E, "", "italic", "") +call hi("htmlEndTag", s:gui06, "", s:cterm05, "", "", "") +call hi("htmlTag", s:gui06, "", s:cterm05, "", "", "") + +" JavaScript +call hi("javaScript", s:gui06, "", s:cterm05, "", "", "") +call hi("javaScriptBraces", s:gui06, "", s:cterm05, "", "", "") +call hi("javaScriptNumber", s:gui09, "", s:cterm09, "", "", "") +" pangloss/vim-javascript +call hi("jsOperator", s:gui0D, "", s:cterm0D, "", "", "") +call hi("jsStatement", s:gui0E, "", s:cterm0E, "", "", "") +call hi("jsReturn", s:gui0E, "", s:cterm0E, "", "", "") +call hi("jsThis", s:gui08, "", s:cterm08, "", "", "") +call hi("jsClassDefinition", s:gui0A, "", s:cterm0A, "", "", "") +call hi("jsFunction", s:gui0E, "", s:cterm0E, "", "", "") +call hi("jsFuncName", s:gui0D, "", s:cterm0D, "", "", "") +call hi("jsFuncCall", s:gui0D, "", s:cterm0D, "", "", "") +call hi("jsClassFuncName", s:gui0D, "", s:cterm0D, "", "", "") +call hi("jsClassMethodType", s:gui0E, "", s:cterm0E, "", "", "") +call hi("jsRegexpString", s:gui0C, "", s:cterm0C, "", "", "") +call hi("jsGlobalObjects", s:gui0A, "", s:cterm0A, "", "", "") +call hi("jsGlobalNodeObjects", s:gui0A, "", s:cterm0A, "", "", "") +call hi("jsExceptions", s:gui0A, "", s:cterm0A, "", "", "") +call hi("jsBuiltins", s:gui0A, "", s:cterm0A, "", "", "") + +" Mail +call hi("mailQuoted1", s:gui0A, "", s:cterm0A, "", "", "") +call hi("mailQuoted2", s:gui0B, "", s:cterm0B, "", "", "") +call hi("mailQuoted3", s:gui0E, "", s:cterm0E, "", "", "") +call hi("mailQuoted4", s:gui0C, "", s:cterm0C, "", "", "") +call hi("mailQuoted5", s:gui0D, "", s:cterm0D, "", "", "") +call hi("mailQuoted6", s:gui0A, "", s:cterm0A, "", "", "") +call hi("mailURL", s:gui0D, "", s:cterm0D, "", "", "") +call hi("mailEmail", s:gui0D, "", s:cterm0D, "", "", "") + +" Markdown +call hi("markdownCode", s:gui0B, "", s:cterm0B, "", "", "") +call hi("markdownError", s:gui06, s:guibg, s:cterm05, s:ctermbg, "", "") +call hi("markdownCodeBlock", s:gui0B, "", s:cterm0B, "", "", "") +call hi("markdownHeadingDelimiter", s:gui0D, "", s:cterm0D, "", "", "") + +" Matchup +call hi("MatchWord", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "underline", "") + +" NERDTree +call hi("NERDTreeDirSlash", s:gui0D, "", s:cterm0D, "", "", "") +call hi("NERDTreeExecFile", s:gui06, "", s:cterm05, "", "", "") + +" Netrw +hi! link netrwDir ThemeCyan +hi! link netrwClassify ThemeCyan +hi! link netrwLink ThemeBg3 +hi! link netrwSymLink ThemeFg1 +hi! link netrwExe ThemeYellow +hi! link netrwComment ThemeBg3 +hi! link netrwList ThemeBlue +hi! link netrwHelpCmd ThemeCyan +hi! link netrwCmdSep ThemeFg3 +hi! link netrwVersion ThemeGreen + +" PHP +call hi("phpMemberSelector", s:gui06, "", s:cterm05, "", "", "") +call hi("phpComparison", s:gui06, "", s:cterm05, "", "", "") +call hi("phpParent", s:gui06, "", s:cterm05, "", "", "") +call hi("phpMethodsVar", s:gui0C, "", s:cterm0C, "", "", "") + +" Python +"call hi("pythonOperator", s:gui0E, "", s:cterm0E, "", "", "") +"call hi("pythonRepeat", s:gui0E, "", s:cterm0E, "", "", "") +"call hi("pythonInclude", s:gui0E, "", s:cterm0E, "", "", "") +"call hi("pythonStatement", s:gui0E, "", s:cterm0E, "", "", "") + +" hi! link pythonBuiltin ThemeCyan +" hi! link pythonBuiltinObj ThemeCyan +" hi! link pythonBuiltinFunc ThemeGreen +" hi! link pythonFunction Function +hi! link pythonDecorator ThemeYellow +hi! link pythonDecoratorName ThemeYellow +" hi! link pythonTripleQuotes ThemeGreenItalic +" hi! link pythonInclude ThemeBlue +" hi! link pythonImport ThemeBlue +" hi! link pythonRun ThemeBlue +" hi! link pythonCoding ThemeBlue +" hi! link pythonOperator ThemeRed +" hi! link pythonException ThemeRed +" hi! link pythonExceptions ThemeYellow +" hi! link pythonBoolean ThemeYellow +" hi! link pythonDot ThemeFg3 +" hi! link pythonConditional ThemeCyan +" hi! link pythonRepeat ThemeRed +" hi! link pythonDottedName ThemeGreen + + +" Ruby +call hi("rubyAttribute", s:gui0D, "", s:cterm0D, "", "", "") +call hi("rubyConstant", s:gui0A, "", s:cterm0A, "", "", "") +call hi("rubyInterpolationDelimiter", s:gui0F, "", s:cterm0F, "", "", "") +call hi("rubyRegexp", s:gui0C, "", s:cterm0C, "", "", "") +call hi("rubySymbol", s:gui0B, "", s:cterm0B, "", "", "") +call hi("rubyStringDelimiter", s:gui0B, "", s:cterm0B, "", "", "") + +" SASS +call hi("sassidChar", s:gui08, "", s:cterm08, "", "", "") +call hi("sassClassChar", s:gui09, "", s:cterm09, "", "", "") +call hi("sassInclude", s:gui0E, "", s:cterm0E, "", "", "") +call hi("sassMixing", s:gui0E, "", s:cterm0E, "", "", "") +call hi("sassMixinName", s:gui0D, "", s:cterm0D, "", "", "") + +" Signify +hi! link SignifySignAdd GitAddSign +hi! link SignifySignChange GitChangeSign +hi! link SignifySignDelete GitDeleteSign + +" Startify +call hi("StartifyBracket", s:gui03, "", s:cterm03, "", "", "") +call hi("StartifyFile", s:gui07, "", s:cterm07, "", "", "") +call hi("StartifyFooter", s:gui03, "", s:cterm03, "", "", "") +call hi("StartifyHeader", s:gui0B, "", s:cterm0B, "", "", "") +call hi("StartifyNumber", s:gui09, "", s:cterm09, "", "", "") +call hi("StartifyPath", s:gui03, "", s:cterm03, "", "", "") +call hi("StartifySection", s:gui0E, "", s:cterm0E, "", "", "") +call hi("StartifySelect", s:gui0C, "", s:cterm0C, "", "", "") +call hi("StartifySlash", s:gui03, "", s:cterm03, "", "", "") +call hi("StartifySpecial", s:gui03, "", s:cterm03, "", "", "") + +" LSP +if has("nvim") + hi! link DiagnosticError ErrorSign + hi! link DiagnosticWarn WarningSign + hi! link DiagnosticInfo InfoSign + hi! link DiagnosticHint HintSign + hi! link DiagnosticOk OkSign + + hi! link DiagnosticFloatingError ErrorFloat + hi! link DiagnosticFloatingWarn WarningFloat + hi! link DiagnosticFloatingInfo InfoFloat + hi! link DiagnosticFloatingHint HintFloat + hi! link DiagnosticFloatingOk OkFloat + + hi! link DiagnosticUnderlineError ErrorHighlight + hi! link DiagnosticUnderlineWarn WarningHighlight + hi! link DiagnosticUnderlineInfo InfoHighlight + hi! link DiagnosticUnderlineHint HintHighlight + hi! link DiagnosticUnderlineOk OkHighlight + + hi! link DiagnosticsVirtualTextError ErrorSign + hi! link DiagnosticsVirtualTextWarning WarningSign + hi! link DiagnosticsVirtualTextInfo InfoSign + hi! link DiagnosticsVirtualTextHint HintSign + hi! link DiagnosticsVirtualTextOk OkSign + + " Remove untill endif on next nvim release + hi! link LspDiagnosticsSignError ErrorSign + hi! link LspDiagnosticsSignWarning WarningSign + hi! link LspDiagnosticsSignInfo InfoSign + hi! link LspDiagnosticsSignHint HintSign + + hi! link LspDiagnosticsVirtualTextError ErrorSign + hi! link LspDiagnosticsVirtualTextWarning WarningSign + hi! link LspDiagnosticsVirtualTextInfo InfoSign + hi! link LspDiagnosticsVirtualTextHint HintSign + + hi! link LspDiagnosticsFloatingError ErrorFloat + hi! link LspDiagnosticsFloatingWarning WarningFloat + hi! link LspDiagnosticsFloatingInfo InfoFloat + hi! link LspDiagnosticsFloatingHint HintFloat + + hi! link LspDiagnosticsUnderlineError ErrorHighlight + hi! link LspDiagnosticsUnderlineWarning WarningHighlight + hi! link LspDiagnosticsUnderlineInfo InfoHighlight + hi! link LspDiagnosticsUnderlineHint HintHighlight + + hi! link LspReferenceText ReferenceText + hi! link LspReferenceRead ReferenceRead + hi! link LspReferenceWrite ReferenceWrite +endif + +" Java +call hi("javaOperator", s:gui0D, "", s:cterm0D, "", "", "") + +" JSON +hi! link jsonKeyword ThemeGreen +hi! link jsonQuote ThemeGreen +hi! link jsonBraces ThemeFg1 +hi! link jsonString ThemeFg1 + +" Markdown +hi! link markdownH1 ThemeRedBold +hi! link markdownH2 ThemeRed +hi! link markdownH3 ThemeRed +hi! link markdownH4 ThemeRed +hi! link markdownH5 ThemeRed +hi! link markdownH6 ThemeRed + +hi! link markdownCode ThemeYellow +hi! link markdownCodeBlock ThemeYellow +hi! link markdownCodeDelimiter ThemeYellow + +hi! link markdownBlockquote ThemeGrey +hi! link markdownListMarker ThemeBlue +hi! link markdownOrderedListMarker ThemeBlue +hi! link markdownRule ThemeGrey +hi! link markdownHeadingRule ThemeGrey + +hi! link markdownUrlDelimiter ThemeFg3 +hi! link markdownLinkDelimiter ThemeFg3 +hi! link markdownLinkTextDelimiter ThemeFg3 +hi! link markdownHeadingDelimiter ThemeOrange +hi! link markdownUrlTitleDelimiter ThemeGreen + +hi! link markdownLink ThemeGreen +hi! link markdownWikiLink ThemeViolet +hi! link markdownUrl ThemeOrange +hi! link markdownInlineUrl ThemeOrange + +hi! link markdownLinkText ThemeViolet +hi! link markdownIdDeclaration markdownLinkText + +"call s:HL('markdownItalic', s:fg3, s:none, s:italic) +"call s:HL('markdownLinkText', s:gray, s:none, s:underline) + + +" Remove functions +delf hi + +" Remove color variables +unlet s:gui00 s:gui01 s:gui02 s:gui03 s:gui04 s:gui05 s:gui06 s:gui07 s:gui08 s:gui09 s:gui0A s:gui0B s:gui0C s:gui0D s:gui0E s:gui0F s:guibg +unlet s:cterm00 s:cterm01 s:cterm02 s:cterm03 s:cterm04 s:cterm05 s:cterm06 s:cterm07 s:cterm08 s:cterm09 s:cterm0A s:cterm0B s:cterm0C s:cterm0D s:cterm0E s:cterm0F s:ctermbg diff --git a/apps/nvim/savanna-monobiome-dark.vim b/apps/nvim/savanna-monobiome-dark.vim new file mode 100644 index 0000000..837c290 --- /dev/null +++ b/apps/nvim/savanna-monobiome-dark.vim @@ -0,0 +1,882 @@ +" vi:syntax=vim +" +" Top-level remarks: +" +" - `hi` sets highlight colors for syntax groups, allowing one to specify fg and bg colors +" for GUI and terminal Vim. +" - `link` allows for linking one syntax group to another, reusing the same color +" settings. Language-specific groups can then point to one of the base color highlight +" groups, for example, without needing to repeat the raw color values. + +" GUI color definitions +let s:gui00 = "#24211c" +let g:base16_gui00 = "#24211c" +let s:gui01 = "#302e28" +let g:base16_gui01 = "#302e28" +let s:gui02 = "#3d3a34" +let g:base16_gui02 = "#3d3a34" +let s:gui03 = "#4a4841" +let g:base16_gui03 = "#4a4841" +let s:gui04 = "#b0aea6" +let g:base16_gui04 = "#b0aea6" +let s:gui05 = "#c0bdb6" +let g:base16_gui05 = "#c0bdb6" +let s:gui06 = "#d0cec6" +let g:base16_gui06 = "#d0cec6" +let s:gui07 = "#e1ded6" +let g:base16_gui07 = "#e1ded6" +let s:gui08 = "#e95949" +let g:base16_gui08 = "#e95949" +let s:gui09 = "#ca791c" +let g:base16_gui09 = "#ca791c" +let s:gui0A = "#989250" +let g:base16_gui0A = "#989250" +let s:gui0B = "#5da268" +let g:base16_gui0B = "#5da268" +let s:gui0C = "#5da268" +let g:base16_gui0C = "#5da268" +let s:gui0D = "#658ed9" +let g:base16_gui0D = "#658ed9" +let s:gui0E = "#658ed9" +let g:base16_gui0E = "#658ed9" +let s:gui0F = "#e95949" +let g:base16_gui0F = "#e95949" + +let s:grey = "#838079" + +" Terminal color definitions +let s:cterm00 = "00" +let g:base16_cterm00 = "00" +let s:cterm03 = "08" +let g:base16_cterm03 = "08" +let s:cterm05 = "07" +let g:base16_cterm05 = "07" +let s:cterm07 = "15" +let g:base16_cterm07 = "15" +let s:cterm08 = "01" +let g:base16_cterm08 = "01" +let s:cterm0A = "03" +let g:base16_cterm0A = "03" +let s:cterm0B = "02" +let g:base16_cterm0B = "02" +let s:cterm0C = "06" +let g:base16_cterm0C = "06" +let s:cterm0D = "04" +let g:base16_cterm0D = "04" +let s:cterm0E = "05" +let g:base16_cterm0E = "05" + +let s:cterm01 = "10" +let g:base16_cterm01 = "10" +let s:cterm02 = "11" +let g:base16_cterm02 = "11" +let s:cterm04 = "12" +let g:base16_cterm04 = "12" +let s:cterm06 = "13" +let g:base16_cterm06 = "13" +let s:cterm09 = "09" +let g:base16_cterm09 = "09" +let s:cterm0F = "14" +let g:base16_cterm0F = "14" + +" Neovim terminal colours +if has("nvim") + let g:terminal_color_0 = "#24211c" + let g:terminal_color_1 = "#e95949" + let g:terminal_color_2 = "#5da268" + let g:terminal_color_3 = "#989250" + let g:terminal_color_4 = "#658ed9" + let g:terminal_color_5 = "#658ed9" + let g:terminal_color_6 = "#5da268" + let g:terminal_color_7 = "#c0bdb6" + let g:terminal_color_8 = "#4a4841" + let g:terminal_color_9 = "#e95949" + let g:terminal_color_10 = "#5da268" + let g:terminal_color_11 = "#989250" + let g:terminal_color_12 = "#658ed9" + let g:terminal_color_13 = "#658ed9" + let g:terminal_color_14 = "#5da268" + let g:terminal_color_15 = "#e1ded6" + let g:terminal_color_background = g:terminal_color_0 + let g:terminal_color_foreground = g:terminal_color_5 + + if &background == "light" + let g:terminal_color_background = g:terminal_color_7 + let g:terminal_color_foreground = g:terminal_color_2 + endif + +elseif has("terminal") + let g:terminal_ansi_colors = [ + \ "#24211c", + \ "#e95949", + \ "#5da268", + \ "#989250", + \ "#658ed9", + \ "#658ed9", + \ "#5da268", + \ "#c0bdb6", + \ "#4a4841", + \ "#e95949", + \ "#5da268", + \ "#989250", + \ "#658ed9", + \ "#658ed9", + \ "#5da268", + \ "#e1ded6", + \ ] +endif + +let s:guibg = s:gui00 +let s:ctermbg = s:cterm00 + +" Theme setup +hi clear +syntax reset +let g:colors_name = "active" + +" Highlighting function +" Optional variables are attributes and guisp +function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) + " For a given syntax group, sets the GUI and terminal foreground and backgrounds + " Optional parameters are interpreted as `attr` and `guisp`, the first of which appears + " to be a modifier for the group (e.g., bold, italic), and `guisp` appears to be + " 'special' colors used for underlines in the GUI. + let l:attr = get(a:, 1, "") + let l:guisp = get(a:, 2, "") + + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + + if a:guifg != "" + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=" . a:guifg + endif + endif + + if a:guibg != "" + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=" . a:guibg + endif + endif + + if a:ctermfg != "" + exec "hi " . a:group . " ctermfg=" . a:ctermfg + endif + + if a:ctermbg != "" + exec "hi " . a:group . " ctermbg=" . a:ctermbg + endif + + if l:attr != "" + exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr + endif + + if l:guisp != "" + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=" . l:guisp + endif + endif +endfunction + + +fun hi(group, guifg, guibg, ctermfg, ctermbg, attr, guisp) + call g:Base16hi(a:group, a:guifg, a:guibg, a:ctermfg, a:ctermbg, a:attr, a:guisp) +endfun + + +" color groups for interpretability +call hi("ThemeBg0", s:gui00, "", s:cterm00, "", "", "") +call hi("ThemeBg1", s:gui01, "", s:cterm01, "", "", "") +call hi("ThemeBg2", s:gui02, "", s:cterm02, "", "", "") +call hi("ThemeBg3", s:gui03, "", s:cterm03, "", "", "") +call hi("ThemeFg3", s:gui04, "", s:cterm04, "", "", "") +call hi("ThemeFg2", s:gui05, "", s:cterm05, "", "", "") +call hi("ThemeFg1", s:gui06, "", s:cterm06, "", "", "") +call hi("ThemeFg0", s:gui07, "", s:cterm07, "", "", "") +" +call hi("ThemeRed", s:gui08, "", s:cterm08, "", "", "") +call hi("ThemeOrange", s:gui09, "", s:cterm09, "", "", "") +call hi("ThemeYellow", s:gui0A, "", s:cterm0A, "", "", "") +call hi("ThemeGreen", s:gui0B, "", s:cterm0B, "", "", "") +call hi("ThemeCyan", s:gui0C, "", s:cterm0C, "", "", "") +call hi("ThemeBlue", s:gui0D, "", s:cterm0D, "", "", "") +call hi("ThemeViolet", s:gui0E, "", s:cterm0E, "", "", "") +call hi("ThemeMagenta", s:gui0F, "", s:cterm0F, "", "", "") + +call hi("ThemeRedBold", s:gui08, "", s:cterm08, "", "bold", "") +call hi("ThemeOrangeBold", s:gui09, "", s:cterm09, "", "bold", "") +call hi("ThemeYellowBold", s:gui0A, "", s:cterm0A, "", "bold", "") +call hi("ThemeGreenBold", s:gui0B, "", s:cterm0B, "", "bold", "") +call hi("ThemeCyanBold", s:gui0C, "", s:cterm0C, "", "bold", "") +call hi("ThemeBlueBold", s:gui0D, "", s:cterm0D, "", "bold", "") +call hi("ThemeVioletBold", s:gui0E, "", s:cterm0E, "", "bold", "") +call hi("ThemeMagentaBold", s:gui0F, "", s:cterm0F, "", "bold", "") + +call hi("ThemeRedItalic", s:gui08, "", s:cterm08, "", "italic", "") +call hi("ThemeOrangeItalic", s:gui09, "", s:cterm09, "", "italic", "") +call hi("ThemeYellowItalic", s:gui0A, "", s:cterm0A, "", "italic", "") +call hi("ThemeGreenItalic", s:gui0B, "", s:cterm0B, "", "italic", "") +call hi("ThemeCyanItalic", s:gui0C, "", s:cterm0C, "", "italic", "") +call hi("ThemeBlueItalic", s:gui0D, "", s:cterm0D, "", "italic", "") +call hi("ThemeVioletItalic", s:gui0E, "", s:cterm0E, "", "italic", "") +call hi("ThemeMagentaItalic", s:gui0F, "", s:cterm0F, "", "italic", "") + +call hi("ThemeGrey", s:grey, "", s:cterm03, "", "", "") +call hi("ThemeGreyItalic", s:grey, "", s:cterm03, "", "italic", "") + + +" Vim editor colors +call hi("Normal", s:gui05, s:guibg, s:cterm05, s:ctermbg, "", "") +call hi("Bold", "", "", "", "", "bold", "") +call hi("Debug", s:gui08, "", s:cterm08, "", "", "") +call hi("Directory", s:gui0D, "", s:cterm0D, "", "", "") +call hi("Error", s:guibg, s:gui08, s:ctermbg, s:cterm08, "", "") +call hi("ErrorMsg", s:gui08, s:guibg, s:cterm08, s:ctermbg, "", "") +call hi("Exception", s:gui08, "", s:cterm08, "", "", "") +call hi("FoldColumn", s:gui03, s:guibg, s:cterm03, s:ctermbg, "", "") +call hi("Folded", s:gui02, s:guibg, s:cterm02, s:ctermbg, "", "") +call hi("IncSearch", s:gui01, s:gui09, s:cterm01, s:cterm09, "none", "") +call hi("Italic", "", "", "", "", "italic", "") +call hi("Macro", s:gui0C, "", s:cterm0C, "", "", "") +call hi("MatchParen", "", s:gui03, "", s:cterm03, "", "") +call hi("ModeMsg", s:gui0B, "", s:cterm0B, "", "", "") +call hi("MoreMsg", s:gui0B, "", s:cterm0B, "", "", "") +call hi("Question", s:gui0D, "", s:cterm0D, "", "", "") +call hi("Search", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "", "") +call hi("Substitute", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "none", "") +call hi("SpecialKey", s:gui03, "", s:cterm03, "", "", "") +call hi("TooLong", s:gui08, "", s:cterm08, "", "", "") +call hi("Underlined", "", "", "", "", "underline", "fg") +call hi("Visual", "", s:gui02, "", s:cterm02, "", "") +call hi("VisualNOS", s:gui08, "", s:cterm08, "", "", "") +call hi("WarningMsg", s:gui08, "", s:cterm08, "", "", "") +call hi("WildMenu", s:guibg, s:gui06, s:ctermbg, s:cterm05, "", "") +call hi("Title", s:gui0D, "", s:cterm0D, "", "none", "") +call hi("Conceal", s:gui0D, s:guibg, s:cterm0D, s:ctermbg, "", "") +call hi("Cursor", s:gui05, s:guibg, "", "", "inverse", "") +call hi("NonText", s:gui03, "", s:cterm03, "", "", "") +call hi("Whitespace", s:gui03, "", s:cterm03, "", "", "") +call hi("LineNr", s:gui03, s:guibg, s:cterm03, s:ctermbg, "", "") +call hi("SignColumn", s:gui03, s:guibg, s:cterm03, s:ctermbg, "", "") +call hi("StatusLine", s:gui07, s:gui01, s:cterm07, s:cterm01, "none", "") +call hi("StatusLineNC", s:gui06, s:gui01, s:cterm05, s:cterm01, "none", "") +call hi("VertSplit", s:gui01, s:guibg, s:cterm01, s:ctermbg, "none", "") +call hi("ColorColumn", "", s:gui01, "", s:cterm01, "none", "") +call hi("CursorColumn", "", s:gui01, "", s:cterm01, "none", "") +call hi("CursorLine", "", s:gui01, "", s:cterm01, "none", "") +call hi("CursorLineNr", s:gui04, s:gui01, s:cterm04, s:cterm01, "bold", "") +call hi("QuickFixLine", "", s:gui01, "", s:cterm01, "none", "") +call hi("PMenu", s:gui06, s:gui01, s:cterm06, s:cterm01, "none", "") +call hi("PMenuSel", s:gui06, s:gui02, s:cterm06, s:cterm02, "", "") +call hi("PMenuSbar", "", s:gui03, "", s:cterm03, "", "") +call hi("PMenuThumb", "", s:gui04, "", s:cterm04, "", "") +call hi("TabLine", s:gui03, s:gui01, s:cterm03, s:cterm01, "none", "") +call hi("TabLineFill", s:gui03, s:gui01, s:cterm03, s:cterm01, "none", "") +call hi("TabLineSel", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "none", "") + +" Standard syntax +hi! link Boolean ThemeOrange +hi! link Character ThemeRed + +"call hi("Comment", s:gui03, "", s:cterm03, "", "italic", "") +hi! link Comment ThemeGreyItalic + +hi! link Conditional ThemeRed +hi! link Constant ThemeOrange +call hi("Define", s:gui0E, "", s:cterm0E, "", "none", "") +hi! link Delimiter ThemeFg1 + +if has("patch-8.0.1038") + call hi("Deprecated", "", "", "", "", "strikethrough", "") +endif + +hi! link Float ThemeOrange +hi! link Function ThemeBlue +call hi("Identifier", s:gui06, "", s:cterm05, "", "none", "") +hi! link Include ThemeBlue +hi! link Constant ThemeOrange +call hi("Keyword", s:gui0E, "", s:cterm0E, "", "none", "") +hi! link Label ThemeOrange +hi! link Number ThemeOrange +hi! link Operator ThemeYellow +hi! link PreProc ThemeOrange +hi! link Repeat ThemeViolet +hi! link Special ThemeYellow +hi! link SpecialChar ThemeMagenta +hi! link Statement ThemeRed +hi! link StorageClass ThemeOrange +hi! link String ThemeGreen +hi! link Structure ThemeOrange +hi! link Tag ThemeOrange + +call hi("Todo", s:gui08, s:guibg, s:cterm08, s:ctermbg, "italic", "") +call hi("Type", s:gui0A, "", s:cterm0A, "", "none", "") + +hi! link Typedef ThemeOrange + + +" Treesitter +if has("nvim-0.8.0") + call hi("@field", s:gui08, "", s:cterm08, "", "", "") + call hi("@property", s:gui08, "", s:cterm08, "", "", "") + call hi("@namespace", s:gui06, "", s:cterm05, "", "italic", "") + call hi("@variable.builtin", s:gui06, "", s:cterm05, "", "italic", "") + call hi("@text.reference", s:gui08, "", s:cterm08, "", "", "") + call hi("@text.uri", s:gui08, "", s:cterm08, "", "italic", "") + + " Annotations & Attributes + call hi("@annotation", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@attribute", s:gui0D, "", s:cterm0D, "", "", "") + + " Booleans, Characters & Comments + call hi("@boolean", s:gui09, "", s:cterm09, "", "", "") + call hi("@character", s:gui08, "", s:cterm08, "", "", "") + call hi("@character.special", s:gui0F, "", s:cterm0F, "", "", "") + call hi("@comment", s:gui03, "", s:cterm03, "", "", "") + + " Conditionals, Constants & Debugging + call hi("@keyword.conditional", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@constant", s:gui09, "", s:cterm09, "", "", "") + call hi("@constant.builtin", s:gui09, "", s:cterm09, "", "", "") + call hi("@constant.macro", s:gui08, "", s:cterm08, "", "", "") + call hi("@keyword.debug", s:gui08, "", s:cterm08, "", "", "") + + " Directives & Exceptions + call hi("@keyword.directive.define", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@keyword.exception", s:gui0E, "", s:cterm0E, "", "", "") + + " Floats & Functions + call hi("@number.float", s:gui09, "", s:cterm09, "", "", "") + call hi("@function", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@function.builtin", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@function.call", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@function.macro", s:gui08, "", s:cterm08, "", "", "") + + " Imports, Operators & Returns + call hi("@keyword.import", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@keyword.coroutine", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@keyword.operator", s:gui06, "", s:cterm05, "", "", "") + call hi("@keyword.return", s:gui0E, "", s:cterm0E, "", "", "") + + " Methods & Namespaces + call hi("@function.method", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@function.method.call", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@namespace.builtin", s:gui0E, "", s:cterm0E, "", "", "") + + " Numbers & Directives + call hi("@none", s:gui06, "", s:cterm05, "", "", "") + call hi("@number", s:gui09, "", s:cterm09, "", "", "") + call hi("@keyword.directive", s:gui0E, "", s:cterm0E, "", "", "") + + " Repeats, Storage & Strings + call hi("@keyword.repeat", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@keyword.storage", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@string", s:gui0B, "", s:cterm0B, "", "", "") + + " Tags & Markup + call hi("@markup.link.label", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.link.label.symbol", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@tag", s:gui08, "", s:cterm08, "", "", "") + call hi("@tag.attribute", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@tag.delimiter", s:gui0F, "", s:cterm0F, "", "", "") + + " More Markup + call hi("@markup", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.environment", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.environment.name", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.raw", s:gui09, "", s:cterm09, "", "", "") + call hi("@markup.math", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.strong", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.emphasis", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.strikethrough", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.underline", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.heading", s:gui0D, "", s:cterm0D, "", "", "") + + " Comments & Types + call hi("@comment.note", s:gui03, "", s:cterm03, "", "", "") + call hi("@comment.error", s:gui08, "", s:cterm08, "", "", "") + call hi("@comment.hint", s:gui0B, "", s:cterm0B, "", "", "") + call hi("@comment.info", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@comment.warning", s:gui09, "", s:cterm09, "", "", "") + call hi("@comment.todo", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.link.url", s:gui09, "", s:cterm09, "", "", "") + call hi("@type", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@type.definition", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@type.qualifier", s:gui0E, "", s:cterm0E, "", "", "") +endif + +" Standard highlights to be used by plugins +if has("patch-8.0.1038") + call hi("Deprecated", "", "", "", "", "strikethrough", "") +endif +call hi("SearchMatch", s:gui0C, "", s:cterm0C, "", "", "") + +call hi("GitAddSign", s:gui0B, "", s:cterm0B, "", "", "") +call hi("GitChangeSign", s:gui04, "", s:cterm04, "", "", "") +call hi("GitDeleteSign", s:gui08, "", s:cterm08, "", "", "") +call hi("GitChangeDeleteSign", s:gui04, "", s:cterm04, "", "", "") + +call hi("ErrorSign", s:gui08, "", s:cterm08, "", "", "") +call hi("WarningSign", s:gui09, "", s:cterm09, "", "", "") +call hi("InfoSign", s:gui0D, "", s:cterm0D, "", "", "") +call hi("HintSign", s:gui0C, "", s:cterm0C, "", "", "") +call hi("OkSign", s:gui0B, "", s:cterm0B, "", "", "") + +call hi("ErrorFloat", s:gui08, s:gui01, s:cterm08, s:cterm01, "", "") +call hi("WarningFloat", s:gui09, s:gui01, s:cterm09, s:cterm01, "", "") +call hi("InfoFloat", s:gui0D, s:gui01, s:cterm0D, s:cterm01, "", "") +call hi("HintFloat", s:gui0C, s:gui01, s:cterm0C, s:cterm01, "", "") +call hi("OkFloat", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "") + +call hi("ErrorHighlight", "", "", s:ctermbg, s:cterm08, "underline", s:gui08) +call hi("WarningHighlight", "", "", s:ctermbg, s:cterm09, "underline", s:gui09) +call hi("InfoHighlight", "", "", s:ctermbg, s:cterm0D, "underline", s:gui0D) +call hi("HintHighlight", "", "", s:ctermbg, s:cterm0C, "underline", s:gui0C) +call hi("OkHighlight", "", "", s:ctermbg, s:cterm0B, "underline", s:gui0B) + +call hi("SpellBad", "", "", s:ctermbg, s:cterm08, "undercurl", s:gui08) +call hi("SpellLocal", "", "", s:ctermbg, s:cterm0C, "undercurl", s:gui0C) +call hi("SpellCap", "", "", s:ctermbg, s:cterm0D, "undercurl", s:gui0D) +call hi("SpellRare", "", "", s:ctermbg, s:cterm0E, "undercurl", s:gui0E) + +call hi("ReferenceText", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "", "") +call hi("ReferenceRead", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "", "") +call hi("ReferenceWrite", s:gui01, s:gui08, s:cterm01, s:cterm08, "", "") + +" C +call hi("cOperator", s:gui0C, "", s:cterm0C, "", "", "") +call hi("cPreCondit", s:gui0E, "", s:cterm0E, "", "", "") + +" C# +call hi("csClass", s:gui0A, "", s:cterm0A, "", "", "") +call hi("csAttribute", s:gui0A, "", s:cterm0A, "", "", "") +call hi("csModifier", s:gui0E, "", s:cterm0E, "", "", "") +call hi("csType", s:gui08, "", s:cterm08, "", "", "") +call hi("csUnspecifiedStatement", s:gui0D, "", s:cterm0D, "", "", "") +call hi("csContextualStatement", s:gui0E, "", s:cterm0E, "", "", "") +call hi("csNewDecleration", s:gui08, "", s:cterm08, "", "", "") + +" Clap +hi! link ClapInput ColorColumn +hi! link ClapSpinner ColorColumn +hi! link ClapDisplay Default +hi! link ClapPreview ColorColumn +hi! link ClapCurrentSelection CursorLine +hi! link ClapNoMatchesFound ErrorFloat + +" Coc +hi! link CocErrorSign ErrorSign +hi! link CocWarningSign WarningSign +hi! link CocInfoSign InfoSign +hi! link CocHintSign HintSign + +hi! link CocErrorFloat ErrorFloat +hi! link CocWarningFloat WarningFloat +hi! link CocInfoFloat InfoFloat +hi! link CocHintFloat HintFloat + +hi! link CocErrorHighlight ErrorHighlight +hi! link CocWarningHighlight WarningHighlight +hi! link CocInfoHighlight InfoHighlight +hi! link CocHintHighlight HintHighlight + +hi! link CocSem_angle Keyword +hi! link CocSem_annotation Keyword +hi! link CocSem_attribute Type +hi! link CocSem_bitwise Keyword +hi! link CocSem_boolean Boolean +hi! link CocSem_brace Normal +hi! link CocSem_bracket Normal +hi! link CocSem_builtinAttribute Type +hi! link CocSem_builtinType Type +hi! link CocSem_character String +hi! link CocSem_class Structure +hi! link CocSem_colon Normal +hi! link CocSem_comma Normal +hi! link CocSem_comment Comment +hi! link CocSem_comparison Keyword +hi! link CocSem_concept Keyword +hi! link CocSem_constParameter Identifier +hi! link CocSem_dependent Keyword +hi! link CocSem_dot Keyword +hi! link CocSem_enum Structure +hi! link CocSem_enumMember Constant +hi! link CocSem_escapeSequence Type +hi! link CocSem_event Identifier +hi! link CocSem_formatSpecifier Type +hi! link CocSem_function Function +hi! link CocSem_interface Type +hi! link CocSem_keyword Keyword +hi! link CocSem_label Keyword +hi! link CocSem_logical Keyword +hi! link CocSem_macro Macro +hi! link CocSem_method Function +hi! link CocSem_modifier Keyword +hi! link CocSem_namespace Identifier +hi! link CocSem_number Number +hi! link CocSem_operator Operator +hi! link CocSem_parameter Identifier +hi! link CocSem_parenthesis Normal +hi! link CocSem_property Identifier +hi! link CocSem_punctuation Keyword +hi! link CocSem_regexp Type +hi! link CocSem_selfKeyword Constant +hi! link CocSem_semicolon Normal +hi! link CocSem_string String +hi! link CocSem_struct Structure +hi! link CocSem_type Type +hi! link CocSem_typeAlias Type +hi! link CocSem_typeParameter Type +hi! link CocSem_unknown Normal +hi! link CocSem_variable Identifier + +call hi("CocHighlightRead", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "") +call hi("CocHighlightText", s:gui0A, s:gui01, s:cterm0A, s:cterm01, "", "") +call hi("CocHighlightWrite", s:gui08, s:gui01, s:cterm08, s:cterm01, "", "") +call hi("CocListMode", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "bold", "") +call hi("CocListPath", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "", "") +call hi("CocSessionsName", s:gui06, "", s:cterm05, "", "", "") + +" CSS +hi! link cssBraces ThemeBlue +hi! link cssFunctionName ThemeYellow +hi! link cssIdentifier ThemeOrange +hi! link cssClassName ThemeGreen +hi! link cssColor ThemeBlue +hi! link cssSelectorOp ThemeBlue +hi! link cssSelectorOp2 ThemeBlue +hi! link cssImportant ThemeGreen +hi! link cssVendor ThemeFg1 + +hi! link cssTextProp ThemeCyan +hi! link cssAnimationProp ThemeCyan +hi! link cssUIProp ThemeYellow +hi! link cssTransformProp ThemeCyan +hi! link cssTransitionProp ThemeCyan +hi! link cssPrintProp ThemeCyan +hi! link cssPositioningProp ThemeYellow +hi! link cssBoxProp ThemeCyan +hi! link cssFontDescriptorProp ThemeCyan +hi! link cssFlexibleBoxProp ThemeCyan +hi! link cssBorderOutlineProp ThemeCyan +hi! link cssBackgroundProp ThemeCyan +hi! link cssMarginProp ThemeCyan +hi! link cssListProp ThemeCyan +hi! link cssTableProp ThemeCyan +hi! link cssFontProp ThemeCyan +hi! link cssPaddingProp ThemeCyan +hi! link cssDimensionProp ThemeCyan +hi! link cssRenderProp ThemeCyan +hi! link cssColorProp ThemeCyan +hi! link cssGeneratedContentProp ThemeCyan + + +" CMP +hi! link CmpItemAbbrDeprecated Deprecated +hi! link CmpItemAbbrMatch SearchMatch +hi! link CmpItemAbbrMatchFuzzy SearchMatch +hi! link CmpItemKindClass Type +hi! link CmpItemKindColor Keyword +hi! link CmpItemKindConstant Constant +hi! link CmpItemKindConstructor Special +hi! link CmpItemKindEnum Type +hi! link CmpItemKindEnumMember Constant +hi! link CmpItemKindEvent Identifier +hi! link CmpItemKindField Character +hi! link CmpItemKindFile Directory +hi! link CmpItemKindFolder Directory +hi! link CmpItemKindFunction Function +hi! link CmpItemKindInterface Type +hi! link CmpItemKindKeyword Keyword +hi! link CmpItemKindMethod Function +hi! link CmpItemKindModule Namespace +hi! link CmpItemKindOperator Operator +hi! link CmpItemKindProperty Identifier +hi! link CmpItemKindReference Character +hi! link CmpItemKindSnippet String +hi! link CmpItemKindStruct Type +hi! link CmpItemKindText Text +hi! link CmpItemKindUnit Namespace +hi! link CmpItemKindValue Comment +hi! link CmpItemKindVariable Identifier + +if has("nvim-0.8.0") + hi! link CmpItemKindField @field + hi! link CmpItemKindProperty @property +endif + +" Diff +call hi("DiffAdd", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "") +call hi("DiffChange", s:gui06, s:gui01, s:cterm05, s:cterm01, "", "") +call hi("DiffDelete", s:gui02, s:guibg, s:cterm02, s:ctermbg, "", "") +call hi("DiffText", s:gui0D, s:gui01, s:cterm0D, s:cterm01, "", "") +call hi("DiffAdded", s:gui0B, s:guibg, s:cterm0B, s:ctermbg, "", "") +call hi("DiffFile", s:gui08, s:guibg, s:cterm08, s:ctermbg, "", "") +call hi("DiffNewFile", s:gui0B, s:guibg, s:cterm0B, s:ctermbg, "", "") +call hi("DiffLine", s:gui0D, s:guibg, s:cterm0D, s:ctermbg, "", "") +call hi("DiffRemoved", s:gui08, s:guibg, s:cterm08, s:ctermbg, "", "") + +" Git +call hi("gitcommitOverflow", s:gui08, "", s:cterm08, "", "", "") +call hi("gitcommitSummary", s:gui0B, "", s:cterm0B, "", "", "") +call hi("gitcommitComment", s:gui03, "", s:cterm03, "", "", "") +call hi("gitcommitUntracked", s:gui03, "", s:cterm03, "", "", "") +call hi("gitcommitDiscarded", s:gui03, "", s:cterm03, "", "", "") +call hi("gitcommitSelected", s:gui03, "", s:cterm03, "", "", "") +call hi("gitcommitHeader", s:gui0E, "", s:cterm0E, "", "", "") +call hi("gitcommitSelectedType", s:gui0D, "", s:cterm0D, "", "", "") +call hi("gitcommitUnmergedType", s:gui0D, "", s:cterm0D, "", "", "") +call hi("gitcommitDiscardedType", s:gui0D, "", s:cterm0D, "", "", "") +call hi("gitcommitBranch", s:gui09, "", s:cterm09, "", "bold", "") +call hi("gitcommitUntrackedFile", s:gui0A, "", s:cterm0A, "", "", "") +call hi("gitcommitUnmergedFile", s:gui08, "", s:cterm08, "", "bold", "") +call hi("gitcommitDiscardedFile", s:gui08, "", s:cterm08, "", "bold", "") +call hi("gitcommitSelectedFile", s:gui0B, "", s:cterm0B, "", "bold", "") + +" GitGutter +hi! link GitGutterAdd GitAddSign +hi! link GitGutterChange GitChangeSign +hi! link GitGutterDelete GitDeleteSign +hi! link GitGutterChangeDelete GitChangeDeleteSign + +" indent-blankline (nvim) +if has("nvim") + call hi("@ibl.indent.char.1",s:gui01, "", s:cterm01, "", "", "") +endif + +" HTML +call hi("htmlBold", s:gui07, "", s:cterm0A, "", "bold", "") +call hi("htmlItalic", s:gui06, "", s:cterm0E, "", "italic", "") +call hi("htmlEndTag", s:gui06, "", s:cterm05, "", "", "") +call hi("htmlTag", s:gui06, "", s:cterm05, "", "", "") + +" JavaScript +call hi("javaScript", s:gui06, "", s:cterm05, "", "", "") +call hi("javaScriptBraces", s:gui06, "", s:cterm05, "", "", "") +call hi("javaScriptNumber", s:gui09, "", s:cterm09, "", "", "") +" pangloss/vim-javascript +call hi("jsOperator", s:gui0D, "", s:cterm0D, "", "", "") +call hi("jsStatement", s:gui0E, "", s:cterm0E, "", "", "") +call hi("jsReturn", s:gui0E, "", s:cterm0E, "", "", "") +call hi("jsThis", s:gui08, "", s:cterm08, "", "", "") +call hi("jsClassDefinition", s:gui0A, "", s:cterm0A, "", "", "") +call hi("jsFunction", s:gui0E, "", s:cterm0E, "", "", "") +call hi("jsFuncName", s:gui0D, "", s:cterm0D, "", "", "") +call hi("jsFuncCall", s:gui0D, "", s:cterm0D, "", "", "") +call hi("jsClassFuncName", s:gui0D, "", s:cterm0D, "", "", "") +call hi("jsClassMethodType", s:gui0E, "", s:cterm0E, "", "", "") +call hi("jsRegexpString", s:gui0C, "", s:cterm0C, "", "", "") +call hi("jsGlobalObjects", s:gui0A, "", s:cterm0A, "", "", "") +call hi("jsGlobalNodeObjects", s:gui0A, "", s:cterm0A, "", "", "") +call hi("jsExceptions", s:gui0A, "", s:cterm0A, "", "", "") +call hi("jsBuiltins", s:gui0A, "", s:cterm0A, "", "", "") + +" Mail +call hi("mailQuoted1", s:gui0A, "", s:cterm0A, "", "", "") +call hi("mailQuoted2", s:gui0B, "", s:cterm0B, "", "", "") +call hi("mailQuoted3", s:gui0E, "", s:cterm0E, "", "", "") +call hi("mailQuoted4", s:gui0C, "", s:cterm0C, "", "", "") +call hi("mailQuoted5", s:gui0D, "", s:cterm0D, "", "", "") +call hi("mailQuoted6", s:gui0A, "", s:cterm0A, "", "", "") +call hi("mailURL", s:gui0D, "", s:cterm0D, "", "", "") +call hi("mailEmail", s:gui0D, "", s:cterm0D, "", "", "") + +" Markdown +call hi("markdownCode", s:gui0B, "", s:cterm0B, "", "", "") +call hi("markdownError", s:gui06, s:guibg, s:cterm05, s:ctermbg, "", "") +call hi("markdownCodeBlock", s:gui0B, "", s:cterm0B, "", "", "") +call hi("markdownHeadingDelimiter", s:gui0D, "", s:cterm0D, "", "", "") + +" Matchup +call hi("MatchWord", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "underline", "") + +" NERDTree +call hi("NERDTreeDirSlash", s:gui0D, "", s:cterm0D, "", "", "") +call hi("NERDTreeExecFile", s:gui06, "", s:cterm05, "", "", "") + +" Netrw +hi! link netrwDir ThemeCyan +hi! link netrwClassify ThemeCyan +hi! link netrwLink ThemeBg3 +hi! link netrwSymLink ThemeFg1 +hi! link netrwExe ThemeYellow +hi! link netrwComment ThemeBg3 +hi! link netrwList ThemeBlue +hi! link netrwHelpCmd ThemeCyan +hi! link netrwCmdSep ThemeFg3 +hi! link netrwVersion ThemeGreen + +" PHP +call hi("phpMemberSelector", s:gui06, "", s:cterm05, "", "", "") +call hi("phpComparison", s:gui06, "", s:cterm05, "", "", "") +call hi("phpParent", s:gui06, "", s:cterm05, "", "", "") +call hi("phpMethodsVar", s:gui0C, "", s:cterm0C, "", "", "") + +" Python +"call hi("pythonOperator", s:gui0E, "", s:cterm0E, "", "", "") +"call hi("pythonRepeat", s:gui0E, "", s:cterm0E, "", "", "") +"call hi("pythonInclude", s:gui0E, "", s:cterm0E, "", "", "") +"call hi("pythonStatement", s:gui0E, "", s:cterm0E, "", "", "") + +" hi! link pythonBuiltin ThemeCyan +" hi! link pythonBuiltinObj ThemeCyan +" hi! link pythonBuiltinFunc ThemeGreen +" hi! link pythonFunction Function +hi! link pythonDecorator ThemeYellow +hi! link pythonDecoratorName ThemeYellow +" hi! link pythonTripleQuotes ThemeGreenItalic +" hi! link pythonInclude ThemeBlue +" hi! link pythonImport ThemeBlue +" hi! link pythonRun ThemeBlue +" hi! link pythonCoding ThemeBlue +" hi! link pythonOperator ThemeRed +" hi! link pythonException ThemeRed +" hi! link pythonExceptions ThemeYellow +" hi! link pythonBoolean ThemeYellow +" hi! link pythonDot ThemeFg3 +" hi! link pythonConditional ThemeCyan +" hi! link pythonRepeat ThemeRed +" hi! link pythonDottedName ThemeGreen + + +" Ruby +call hi("rubyAttribute", s:gui0D, "", s:cterm0D, "", "", "") +call hi("rubyConstant", s:gui0A, "", s:cterm0A, "", "", "") +call hi("rubyInterpolationDelimiter", s:gui0F, "", s:cterm0F, "", "", "") +call hi("rubyRegexp", s:gui0C, "", s:cterm0C, "", "", "") +call hi("rubySymbol", s:gui0B, "", s:cterm0B, "", "", "") +call hi("rubyStringDelimiter", s:gui0B, "", s:cterm0B, "", "", "") + +" SASS +call hi("sassidChar", s:gui08, "", s:cterm08, "", "", "") +call hi("sassClassChar", s:gui09, "", s:cterm09, "", "", "") +call hi("sassInclude", s:gui0E, "", s:cterm0E, "", "", "") +call hi("sassMixing", s:gui0E, "", s:cterm0E, "", "", "") +call hi("sassMixinName", s:gui0D, "", s:cterm0D, "", "", "") + +" Signify +hi! link SignifySignAdd GitAddSign +hi! link SignifySignChange GitChangeSign +hi! link SignifySignDelete GitDeleteSign + +" Startify +call hi("StartifyBracket", s:gui03, "", s:cterm03, "", "", "") +call hi("StartifyFile", s:gui07, "", s:cterm07, "", "", "") +call hi("StartifyFooter", s:gui03, "", s:cterm03, "", "", "") +call hi("StartifyHeader", s:gui0B, "", s:cterm0B, "", "", "") +call hi("StartifyNumber", s:gui09, "", s:cterm09, "", "", "") +call hi("StartifyPath", s:gui03, "", s:cterm03, "", "", "") +call hi("StartifySection", s:gui0E, "", s:cterm0E, "", "", "") +call hi("StartifySelect", s:gui0C, "", s:cterm0C, "", "", "") +call hi("StartifySlash", s:gui03, "", s:cterm03, "", "", "") +call hi("StartifySpecial", s:gui03, "", s:cterm03, "", "", "") + +" LSP +if has("nvim") + hi! link DiagnosticError ErrorSign + hi! link DiagnosticWarn WarningSign + hi! link DiagnosticInfo InfoSign + hi! link DiagnosticHint HintSign + hi! link DiagnosticOk OkSign + + hi! link DiagnosticFloatingError ErrorFloat + hi! link DiagnosticFloatingWarn WarningFloat + hi! link DiagnosticFloatingInfo InfoFloat + hi! link DiagnosticFloatingHint HintFloat + hi! link DiagnosticFloatingOk OkFloat + + hi! link DiagnosticUnderlineError ErrorHighlight + hi! link DiagnosticUnderlineWarn WarningHighlight + hi! link DiagnosticUnderlineInfo InfoHighlight + hi! link DiagnosticUnderlineHint HintHighlight + hi! link DiagnosticUnderlineOk OkHighlight + + hi! link DiagnosticsVirtualTextError ErrorSign + hi! link DiagnosticsVirtualTextWarning WarningSign + hi! link DiagnosticsVirtualTextInfo InfoSign + hi! link DiagnosticsVirtualTextHint HintSign + hi! link DiagnosticsVirtualTextOk OkSign + + " Remove untill endif on next nvim release + hi! link LspDiagnosticsSignError ErrorSign + hi! link LspDiagnosticsSignWarning WarningSign + hi! link LspDiagnosticsSignInfo InfoSign + hi! link LspDiagnosticsSignHint HintSign + + hi! link LspDiagnosticsVirtualTextError ErrorSign + hi! link LspDiagnosticsVirtualTextWarning WarningSign + hi! link LspDiagnosticsVirtualTextInfo InfoSign + hi! link LspDiagnosticsVirtualTextHint HintSign + + hi! link LspDiagnosticsFloatingError ErrorFloat + hi! link LspDiagnosticsFloatingWarning WarningFloat + hi! link LspDiagnosticsFloatingInfo InfoFloat + hi! link LspDiagnosticsFloatingHint HintFloat + + hi! link LspDiagnosticsUnderlineError ErrorHighlight + hi! link LspDiagnosticsUnderlineWarning WarningHighlight + hi! link LspDiagnosticsUnderlineInfo InfoHighlight + hi! link LspDiagnosticsUnderlineHint HintHighlight + + hi! link LspReferenceText ReferenceText + hi! link LspReferenceRead ReferenceRead + hi! link LspReferenceWrite ReferenceWrite +endif + +" Java +call hi("javaOperator", s:gui0D, "", s:cterm0D, "", "", "") + +" JSON +hi! link jsonKeyword ThemeGreen +hi! link jsonQuote ThemeGreen +hi! link jsonBraces ThemeFg1 +hi! link jsonString ThemeFg1 + +" Markdown +hi! link markdownH1 ThemeRedBold +hi! link markdownH2 ThemeRed +hi! link markdownH3 ThemeRed +hi! link markdownH4 ThemeRed +hi! link markdownH5 ThemeRed +hi! link markdownH6 ThemeRed + +hi! link markdownCode ThemeYellow +hi! link markdownCodeBlock ThemeYellow +hi! link markdownCodeDelimiter ThemeYellow + +hi! link markdownBlockquote ThemeGrey +hi! link markdownListMarker ThemeBlue +hi! link markdownOrderedListMarker ThemeBlue +hi! link markdownRule ThemeGrey +hi! link markdownHeadingRule ThemeGrey + +hi! link markdownUrlDelimiter ThemeFg3 +hi! link markdownLinkDelimiter ThemeFg3 +hi! link markdownLinkTextDelimiter ThemeFg3 +hi! link markdownHeadingDelimiter ThemeOrange +hi! link markdownUrlTitleDelimiter ThemeGreen + +hi! link markdownLink ThemeGreen +hi! link markdownWikiLink ThemeViolet +hi! link markdownUrl ThemeOrange +hi! link markdownInlineUrl ThemeOrange + +hi! link markdownLinkText ThemeViolet +hi! link markdownIdDeclaration markdownLinkText + +"call s:HL('markdownItalic', s:fg3, s:none, s:italic) +"call s:HL('markdownLinkText', s:gray, s:none, s:underline) + + +" Remove functions +delf hi + +" Remove color variables +unlet s:gui00 s:gui01 s:gui02 s:gui03 s:gui04 s:gui05 s:gui06 s:gui07 s:gui08 s:gui09 s:gui0A s:gui0B s:gui0C s:gui0D s:gui0E s:gui0F s:guibg +unlet s:cterm00 s:cterm01 s:cterm02 s:cterm03 s:cterm04 s:cterm05 s:cterm06 s:cterm07 s:cterm08 s:cterm09 s:cterm0A s:cterm0B s:cterm0C s:cterm0D s:cterm0E s:cterm0F s:ctermbg diff --git a/apps/nvim/savanna-monobiome-light.vim b/apps/nvim/savanna-monobiome-light.vim new file mode 100644 index 0000000..c3da421 --- /dev/null +++ b/apps/nvim/savanna-monobiome-light.vim @@ -0,0 +1,882 @@ +" vi:syntax=vim +" +" Top-level remarks: +" +" - `hi` sets highlight colors for syntax groups, allowing one to specify fg and bg colors +" for GUI and terminal Vim. +" - `link` allows for linking one syntax group to another, reusing the same color +" settings. Language-specific groups can then point to one of the base color highlight +" groups, for example, without needing to repeat the raw color values. + +" GUI color definitions +let s:gui00 = "#d0cec6" +let g:base16_gui00 = "#d0cec6" +let s:gui01 = "#c0bdb6" +let g:base16_gui01 = "#c0bdb6" +let s:gui02 = "#b0aea6" +let g:base16_gui02 = "#b0aea6" +let s:gui03 = "#a19e97" +let g:base16_gui03 = "#a19e97" +let s:gui04 = "#3d3a34" +let g:base16_gui04 = "#3d3a34" +let s:gui05 = "#302e28" +let g:base16_gui05 = "#302e28" +let s:gui06 = "#24211c" +let g:base16_gui06 = "#24211c" +let s:gui07 = "#181610" +let g:base16_gui07 = "#181610" +let s:gui08 = "#b52119" +let g:base16_gui08 = "#b52119" +let s:gui09 = "#905201" +let g:base16_gui09 = "#905201" +let s:gui0A = "#6a6535" +let g:base16_gui0A = "#6a6535" +let s:gui0B = "#377242" +let g:base16_gui0B = "#377242" +let s:gui0C = "#377242" +let g:base16_gui0C = "#377242" +let s:gui0D = "#3860ac" +let g:base16_gui0D = "#3860ac" +let s:gui0E = "#3860ac" +let g:base16_gui0E = "#3860ac" +let s:gui0F = "#b52119" +let g:base16_gui0F = "#b52119" + +let s:grey = "#66635c" + +" Terminal color definitions +let s:cterm00 = "00" +let g:base16_cterm00 = "00" +let s:cterm03 = "08" +let g:base16_cterm03 = "08" +let s:cterm05 = "07" +let g:base16_cterm05 = "07" +let s:cterm07 = "15" +let g:base16_cterm07 = "15" +let s:cterm08 = "01" +let g:base16_cterm08 = "01" +let s:cterm0A = "03" +let g:base16_cterm0A = "03" +let s:cterm0B = "02" +let g:base16_cterm0B = "02" +let s:cterm0C = "06" +let g:base16_cterm0C = "06" +let s:cterm0D = "04" +let g:base16_cterm0D = "04" +let s:cterm0E = "05" +let g:base16_cterm0E = "05" + +let s:cterm01 = "10" +let g:base16_cterm01 = "10" +let s:cterm02 = "11" +let g:base16_cterm02 = "11" +let s:cterm04 = "12" +let g:base16_cterm04 = "12" +let s:cterm06 = "13" +let g:base16_cterm06 = "13" +let s:cterm09 = "09" +let g:base16_cterm09 = "09" +let s:cterm0F = "14" +let g:base16_cterm0F = "14" + +" Neovim terminal colours +if has("nvim") + let g:terminal_color_0 = "#d0cec6" + let g:terminal_color_1 = "#b52119" + let g:terminal_color_2 = "#377242" + let g:terminal_color_3 = "#6a6535" + let g:terminal_color_4 = "#3860ac" + let g:terminal_color_5 = "#3860ac" + let g:terminal_color_6 = "#377242" + let g:terminal_color_7 = "#302e28" + let g:terminal_color_8 = "#a19e97" + let g:terminal_color_9 = "#b52119" + let g:terminal_color_10 = "#377242" + let g:terminal_color_11 = "#6a6535" + let g:terminal_color_12 = "#3860ac" + let g:terminal_color_13 = "#3860ac" + let g:terminal_color_14 = "#377242" + let g:terminal_color_15 = "#181610" + let g:terminal_color_background = g:terminal_color_0 + let g:terminal_color_foreground = g:terminal_color_5 + + if &background == "light" + let g:terminal_color_background = g:terminal_color_7 + let g:terminal_color_foreground = g:terminal_color_2 + endif + +elseif has("terminal") + let g:terminal_ansi_colors = [ + \ "#d0cec6", + \ "#b52119", + \ "#377242", + \ "#6a6535", + \ "#3860ac", + \ "#3860ac", + \ "#377242", + \ "#302e28", + \ "#a19e97", + \ "#b52119", + \ "#377242", + \ "#6a6535", + \ "#3860ac", + \ "#3860ac", + \ "#377242", + \ "#181610", + \ ] +endif + +let s:guibg = s:gui00 +let s:ctermbg = s:cterm00 + +" Theme setup +hi clear +syntax reset +let g:colors_name = "active" + +" Highlighting function +" Optional variables are attributes and guisp +function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) + " For a given syntax group, sets the GUI and terminal foreground and backgrounds + " Optional parameters are interpreted as `attr` and `guisp`, the first of which appears + " to be a modifier for the group (e.g., bold, italic), and `guisp` appears to be + " 'special' colors used for underlines in the GUI. + let l:attr = get(a:, 1, "") + let l:guisp = get(a:, 2, "") + + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + + if a:guifg != "" + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=" . a:guifg + endif + endif + + if a:guibg != "" + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=" . a:guibg + endif + endif + + if a:ctermfg != "" + exec "hi " . a:group . " ctermfg=" . a:ctermfg + endif + + if a:ctermbg != "" + exec "hi " . a:group . " ctermbg=" . a:ctermbg + endif + + if l:attr != "" + exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr + endif + + if l:guisp != "" + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=" . l:guisp + endif + endif +endfunction + + +fun hi(group, guifg, guibg, ctermfg, ctermbg, attr, guisp) + call g:Base16hi(a:group, a:guifg, a:guibg, a:ctermfg, a:ctermbg, a:attr, a:guisp) +endfun + + +" color groups for interpretability +call hi("ThemeBg0", s:gui00, "", s:cterm00, "", "", "") +call hi("ThemeBg1", s:gui01, "", s:cterm01, "", "", "") +call hi("ThemeBg2", s:gui02, "", s:cterm02, "", "", "") +call hi("ThemeBg3", s:gui03, "", s:cterm03, "", "", "") +call hi("ThemeFg3", s:gui04, "", s:cterm04, "", "", "") +call hi("ThemeFg2", s:gui05, "", s:cterm05, "", "", "") +call hi("ThemeFg1", s:gui06, "", s:cterm06, "", "", "") +call hi("ThemeFg0", s:gui07, "", s:cterm07, "", "", "") +" +call hi("ThemeRed", s:gui08, "", s:cterm08, "", "", "") +call hi("ThemeOrange", s:gui09, "", s:cterm09, "", "", "") +call hi("ThemeYellow", s:gui0A, "", s:cterm0A, "", "", "") +call hi("ThemeGreen", s:gui0B, "", s:cterm0B, "", "", "") +call hi("ThemeCyan", s:gui0C, "", s:cterm0C, "", "", "") +call hi("ThemeBlue", s:gui0D, "", s:cterm0D, "", "", "") +call hi("ThemeViolet", s:gui0E, "", s:cterm0E, "", "", "") +call hi("ThemeMagenta", s:gui0F, "", s:cterm0F, "", "", "") + +call hi("ThemeRedBold", s:gui08, "", s:cterm08, "", "bold", "") +call hi("ThemeOrangeBold", s:gui09, "", s:cterm09, "", "bold", "") +call hi("ThemeYellowBold", s:gui0A, "", s:cterm0A, "", "bold", "") +call hi("ThemeGreenBold", s:gui0B, "", s:cterm0B, "", "bold", "") +call hi("ThemeCyanBold", s:gui0C, "", s:cterm0C, "", "bold", "") +call hi("ThemeBlueBold", s:gui0D, "", s:cterm0D, "", "bold", "") +call hi("ThemeVioletBold", s:gui0E, "", s:cterm0E, "", "bold", "") +call hi("ThemeMagentaBold", s:gui0F, "", s:cterm0F, "", "bold", "") + +call hi("ThemeRedItalic", s:gui08, "", s:cterm08, "", "italic", "") +call hi("ThemeOrangeItalic", s:gui09, "", s:cterm09, "", "italic", "") +call hi("ThemeYellowItalic", s:gui0A, "", s:cterm0A, "", "italic", "") +call hi("ThemeGreenItalic", s:gui0B, "", s:cterm0B, "", "italic", "") +call hi("ThemeCyanItalic", s:gui0C, "", s:cterm0C, "", "italic", "") +call hi("ThemeBlueItalic", s:gui0D, "", s:cterm0D, "", "italic", "") +call hi("ThemeVioletItalic", s:gui0E, "", s:cterm0E, "", "italic", "") +call hi("ThemeMagentaItalic", s:gui0F, "", s:cterm0F, "", "italic", "") + +call hi("ThemeGrey", s:grey, "", s:cterm03, "", "", "") +call hi("ThemeGreyItalic", s:grey, "", s:cterm03, "", "italic", "") + + +" Vim editor colors +call hi("Normal", s:gui05, s:guibg, s:cterm05, s:ctermbg, "", "") +call hi("Bold", "", "", "", "", "bold", "") +call hi("Debug", s:gui08, "", s:cterm08, "", "", "") +call hi("Directory", s:gui0D, "", s:cterm0D, "", "", "") +call hi("Error", s:guibg, s:gui08, s:ctermbg, s:cterm08, "", "") +call hi("ErrorMsg", s:gui08, s:guibg, s:cterm08, s:ctermbg, "", "") +call hi("Exception", s:gui08, "", s:cterm08, "", "", "") +call hi("FoldColumn", s:gui03, s:guibg, s:cterm03, s:ctermbg, "", "") +call hi("Folded", s:gui02, s:guibg, s:cterm02, s:ctermbg, "", "") +call hi("IncSearch", s:gui01, s:gui09, s:cterm01, s:cterm09, "none", "") +call hi("Italic", "", "", "", "", "italic", "") +call hi("Macro", s:gui0C, "", s:cterm0C, "", "", "") +call hi("MatchParen", "", s:gui03, "", s:cterm03, "", "") +call hi("ModeMsg", s:gui0B, "", s:cterm0B, "", "", "") +call hi("MoreMsg", s:gui0B, "", s:cterm0B, "", "", "") +call hi("Question", s:gui0D, "", s:cterm0D, "", "", "") +call hi("Search", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "", "") +call hi("Substitute", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "none", "") +call hi("SpecialKey", s:gui03, "", s:cterm03, "", "", "") +call hi("TooLong", s:gui08, "", s:cterm08, "", "", "") +call hi("Underlined", "", "", "", "", "underline", "fg") +call hi("Visual", "", s:gui02, "", s:cterm02, "", "") +call hi("VisualNOS", s:gui08, "", s:cterm08, "", "", "") +call hi("WarningMsg", s:gui08, "", s:cterm08, "", "", "") +call hi("WildMenu", s:guibg, s:gui06, s:ctermbg, s:cterm05, "", "") +call hi("Title", s:gui0D, "", s:cterm0D, "", "none", "") +call hi("Conceal", s:gui0D, s:guibg, s:cterm0D, s:ctermbg, "", "") +call hi("Cursor", s:gui05, s:guibg, "", "", "inverse", "") +call hi("NonText", s:gui03, "", s:cterm03, "", "", "") +call hi("Whitespace", s:gui03, "", s:cterm03, "", "", "") +call hi("LineNr", s:gui03, s:guibg, s:cterm03, s:ctermbg, "", "") +call hi("SignColumn", s:gui03, s:guibg, s:cterm03, s:ctermbg, "", "") +call hi("StatusLine", s:gui07, s:gui01, s:cterm07, s:cterm01, "none", "") +call hi("StatusLineNC", s:gui06, s:gui01, s:cterm05, s:cterm01, "none", "") +call hi("VertSplit", s:gui01, s:guibg, s:cterm01, s:ctermbg, "none", "") +call hi("ColorColumn", "", s:gui01, "", s:cterm01, "none", "") +call hi("CursorColumn", "", s:gui01, "", s:cterm01, "none", "") +call hi("CursorLine", "", s:gui01, "", s:cterm01, "none", "") +call hi("CursorLineNr", s:gui04, s:gui01, s:cterm04, s:cterm01, "bold", "") +call hi("QuickFixLine", "", s:gui01, "", s:cterm01, "none", "") +call hi("PMenu", s:gui06, s:gui01, s:cterm06, s:cterm01, "none", "") +call hi("PMenuSel", s:gui06, s:gui02, s:cterm06, s:cterm02, "", "") +call hi("PMenuSbar", "", s:gui03, "", s:cterm03, "", "") +call hi("PMenuThumb", "", s:gui04, "", s:cterm04, "", "") +call hi("TabLine", s:gui03, s:gui01, s:cterm03, s:cterm01, "none", "") +call hi("TabLineFill", s:gui03, s:gui01, s:cterm03, s:cterm01, "none", "") +call hi("TabLineSel", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "none", "") + +" Standard syntax +hi! link Boolean ThemeOrange +hi! link Character ThemeRed + +"call hi("Comment", s:gui03, "", s:cterm03, "", "italic", "") +hi! link Comment ThemeGreyItalic + +hi! link Conditional ThemeRed +hi! link Constant ThemeOrange +call hi("Define", s:gui0E, "", s:cterm0E, "", "none", "") +hi! link Delimiter ThemeFg1 + +if has("patch-8.0.1038") + call hi("Deprecated", "", "", "", "", "strikethrough", "") +endif + +hi! link Float ThemeOrange +hi! link Function ThemeBlue +call hi("Identifier", s:gui06, "", s:cterm05, "", "none", "") +hi! link Include ThemeBlue +hi! link Constant ThemeOrange +call hi("Keyword", s:gui0E, "", s:cterm0E, "", "none", "") +hi! link Label ThemeOrange +hi! link Number ThemeOrange +hi! link Operator ThemeYellow +hi! link PreProc ThemeOrange +hi! link Repeat ThemeViolet +hi! link Special ThemeYellow +hi! link SpecialChar ThemeMagenta +hi! link Statement ThemeRed +hi! link StorageClass ThemeOrange +hi! link String ThemeGreen +hi! link Structure ThemeOrange +hi! link Tag ThemeOrange + +call hi("Todo", s:gui08, s:guibg, s:cterm08, s:ctermbg, "italic", "") +call hi("Type", s:gui0A, "", s:cterm0A, "", "none", "") + +hi! link Typedef ThemeOrange + + +" Treesitter +if has("nvim-0.8.0") + call hi("@field", s:gui08, "", s:cterm08, "", "", "") + call hi("@property", s:gui08, "", s:cterm08, "", "", "") + call hi("@namespace", s:gui06, "", s:cterm05, "", "italic", "") + call hi("@variable.builtin", s:gui06, "", s:cterm05, "", "italic", "") + call hi("@text.reference", s:gui08, "", s:cterm08, "", "", "") + call hi("@text.uri", s:gui08, "", s:cterm08, "", "italic", "") + + " Annotations & Attributes + call hi("@annotation", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@attribute", s:gui0D, "", s:cterm0D, "", "", "") + + " Booleans, Characters & Comments + call hi("@boolean", s:gui09, "", s:cterm09, "", "", "") + call hi("@character", s:gui08, "", s:cterm08, "", "", "") + call hi("@character.special", s:gui0F, "", s:cterm0F, "", "", "") + call hi("@comment", s:gui03, "", s:cterm03, "", "", "") + + " Conditionals, Constants & Debugging + call hi("@keyword.conditional", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@constant", s:gui09, "", s:cterm09, "", "", "") + call hi("@constant.builtin", s:gui09, "", s:cterm09, "", "", "") + call hi("@constant.macro", s:gui08, "", s:cterm08, "", "", "") + call hi("@keyword.debug", s:gui08, "", s:cterm08, "", "", "") + + " Directives & Exceptions + call hi("@keyword.directive.define", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@keyword.exception", s:gui0E, "", s:cterm0E, "", "", "") + + " Floats & Functions + call hi("@number.float", s:gui09, "", s:cterm09, "", "", "") + call hi("@function", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@function.builtin", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@function.call", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@function.macro", s:gui08, "", s:cterm08, "", "", "") + + " Imports, Operators & Returns + call hi("@keyword.import", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@keyword.coroutine", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@keyword.operator", s:gui06, "", s:cterm05, "", "", "") + call hi("@keyword.return", s:gui0E, "", s:cterm0E, "", "", "") + + " Methods & Namespaces + call hi("@function.method", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@function.method.call", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@namespace.builtin", s:gui0E, "", s:cterm0E, "", "", "") + + " Numbers & Directives + call hi("@none", s:gui06, "", s:cterm05, "", "", "") + call hi("@number", s:gui09, "", s:cterm09, "", "", "") + call hi("@keyword.directive", s:gui0E, "", s:cterm0E, "", "", "") + + " Repeats, Storage & Strings + call hi("@keyword.repeat", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@keyword.storage", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@string", s:gui0B, "", s:cterm0B, "", "", "") + + " Tags & Markup + call hi("@markup.link.label", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.link.label.symbol", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@tag", s:gui08, "", s:cterm08, "", "", "") + call hi("@tag.attribute", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@tag.delimiter", s:gui0F, "", s:cterm0F, "", "", "") + + " More Markup + call hi("@markup", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.environment", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.environment.name", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.raw", s:gui09, "", s:cterm09, "", "", "") + call hi("@markup.math", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.strong", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.emphasis", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.strikethrough", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.underline", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.heading", s:gui0D, "", s:cterm0D, "", "", "") + + " Comments & Types + call hi("@comment.note", s:gui03, "", s:cterm03, "", "", "") + call hi("@comment.error", s:gui08, "", s:cterm08, "", "", "") + call hi("@comment.hint", s:gui0B, "", s:cterm0B, "", "", "") + call hi("@comment.info", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@comment.warning", s:gui09, "", s:cterm09, "", "", "") + call hi("@comment.todo", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.link.url", s:gui09, "", s:cterm09, "", "", "") + call hi("@type", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@type.definition", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@type.qualifier", s:gui0E, "", s:cterm0E, "", "", "") +endif + +" Standard highlights to be used by plugins +if has("patch-8.0.1038") + call hi("Deprecated", "", "", "", "", "strikethrough", "") +endif +call hi("SearchMatch", s:gui0C, "", s:cterm0C, "", "", "") + +call hi("GitAddSign", s:gui0B, "", s:cterm0B, "", "", "") +call hi("GitChangeSign", s:gui04, "", s:cterm04, "", "", "") +call hi("GitDeleteSign", s:gui08, "", s:cterm08, "", "", "") +call hi("GitChangeDeleteSign", s:gui04, "", s:cterm04, "", "", "") + +call hi("ErrorSign", s:gui08, "", s:cterm08, "", "", "") +call hi("WarningSign", s:gui09, "", s:cterm09, "", "", "") +call hi("InfoSign", s:gui0D, "", s:cterm0D, "", "", "") +call hi("HintSign", s:gui0C, "", s:cterm0C, "", "", "") +call hi("OkSign", s:gui0B, "", s:cterm0B, "", "", "") + +call hi("ErrorFloat", s:gui08, s:gui01, s:cterm08, s:cterm01, "", "") +call hi("WarningFloat", s:gui09, s:gui01, s:cterm09, s:cterm01, "", "") +call hi("InfoFloat", s:gui0D, s:gui01, s:cterm0D, s:cterm01, "", "") +call hi("HintFloat", s:gui0C, s:gui01, s:cterm0C, s:cterm01, "", "") +call hi("OkFloat", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "") + +call hi("ErrorHighlight", "", "", s:ctermbg, s:cterm08, "underline", s:gui08) +call hi("WarningHighlight", "", "", s:ctermbg, s:cterm09, "underline", s:gui09) +call hi("InfoHighlight", "", "", s:ctermbg, s:cterm0D, "underline", s:gui0D) +call hi("HintHighlight", "", "", s:ctermbg, s:cterm0C, "underline", s:gui0C) +call hi("OkHighlight", "", "", s:ctermbg, s:cterm0B, "underline", s:gui0B) + +call hi("SpellBad", "", "", s:ctermbg, s:cterm08, "undercurl", s:gui08) +call hi("SpellLocal", "", "", s:ctermbg, s:cterm0C, "undercurl", s:gui0C) +call hi("SpellCap", "", "", s:ctermbg, s:cterm0D, "undercurl", s:gui0D) +call hi("SpellRare", "", "", s:ctermbg, s:cterm0E, "undercurl", s:gui0E) + +call hi("ReferenceText", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "", "") +call hi("ReferenceRead", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "", "") +call hi("ReferenceWrite", s:gui01, s:gui08, s:cterm01, s:cterm08, "", "") + +" C +call hi("cOperator", s:gui0C, "", s:cterm0C, "", "", "") +call hi("cPreCondit", s:gui0E, "", s:cterm0E, "", "", "") + +" C# +call hi("csClass", s:gui0A, "", s:cterm0A, "", "", "") +call hi("csAttribute", s:gui0A, "", s:cterm0A, "", "", "") +call hi("csModifier", s:gui0E, "", s:cterm0E, "", "", "") +call hi("csType", s:gui08, "", s:cterm08, "", "", "") +call hi("csUnspecifiedStatement", s:gui0D, "", s:cterm0D, "", "", "") +call hi("csContextualStatement", s:gui0E, "", s:cterm0E, "", "", "") +call hi("csNewDecleration", s:gui08, "", s:cterm08, "", "", "") + +" Clap +hi! link ClapInput ColorColumn +hi! link ClapSpinner ColorColumn +hi! link ClapDisplay Default +hi! link ClapPreview ColorColumn +hi! link ClapCurrentSelection CursorLine +hi! link ClapNoMatchesFound ErrorFloat + +" Coc +hi! link CocErrorSign ErrorSign +hi! link CocWarningSign WarningSign +hi! link CocInfoSign InfoSign +hi! link CocHintSign HintSign + +hi! link CocErrorFloat ErrorFloat +hi! link CocWarningFloat WarningFloat +hi! link CocInfoFloat InfoFloat +hi! link CocHintFloat HintFloat + +hi! link CocErrorHighlight ErrorHighlight +hi! link CocWarningHighlight WarningHighlight +hi! link CocInfoHighlight InfoHighlight +hi! link CocHintHighlight HintHighlight + +hi! link CocSem_angle Keyword +hi! link CocSem_annotation Keyword +hi! link CocSem_attribute Type +hi! link CocSem_bitwise Keyword +hi! link CocSem_boolean Boolean +hi! link CocSem_brace Normal +hi! link CocSem_bracket Normal +hi! link CocSem_builtinAttribute Type +hi! link CocSem_builtinType Type +hi! link CocSem_character String +hi! link CocSem_class Structure +hi! link CocSem_colon Normal +hi! link CocSem_comma Normal +hi! link CocSem_comment Comment +hi! link CocSem_comparison Keyword +hi! link CocSem_concept Keyword +hi! link CocSem_constParameter Identifier +hi! link CocSem_dependent Keyword +hi! link CocSem_dot Keyword +hi! link CocSem_enum Structure +hi! link CocSem_enumMember Constant +hi! link CocSem_escapeSequence Type +hi! link CocSem_event Identifier +hi! link CocSem_formatSpecifier Type +hi! link CocSem_function Function +hi! link CocSem_interface Type +hi! link CocSem_keyword Keyword +hi! link CocSem_label Keyword +hi! link CocSem_logical Keyword +hi! link CocSem_macro Macro +hi! link CocSem_method Function +hi! link CocSem_modifier Keyword +hi! link CocSem_namespace Identifier +hi! link CocSem_number Number +hi! link CocSem_operator Operator +hi! link CocSem_parameter Identifier +hi! link CocSem_parenthesis Normal +hi! link CocSem_property Identifier +hi! link CocSem_punctuation Keyword +hi! link CocSem_regexp Type +hi! link CocSem_selfKeyword Constant +hi! link CocSem_semicolon Normal +hi! link CocSem_string String +hi! link CocSem_struct Structure +hi! link CocSem_type Type +hi! link CocSem_typeAlias Type +hi! link CocSem_typeParameter Type +hi! link CocSem_unknown Normal +hi! link CocSem_variable Identifier + +call hi("CocHighlightRead", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "") +call hi("CocHighlightText", s:gui0A, s:gui01, s:cterm0A, s:cterm01, "", "") +call hi("CocHighlightWrite", s:gui08, s:gui01, s:cterm08, s:cterm01, "", "") +call hi("CocListMode", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "bold", "") +call hi("CocListPath", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "", "") +call hi("CocSessionsName", s:gui06, "", s:cterm05, "", "", "") + +" CSS +hi! link cssBraces ThemeBlue +hi! link cssFunctionName ThemeYellow +hi! link cssIdentifier ThemeOrange +hi! link cssClassName ThemeGreen +hi! link cssColor ThemeBlue +hi! link cssSelectorOp ThemeBlue +hi! link cssSelectorOp2 ThemeBlue +hi! link cssImportant ThemeGreen +hi! link cssVendor ThemeFg1 + +hi! link cssTextProp ThemeCyan +hi! link cssAnimationProp ThemeCyan +hi! link cssUIProp ThemeYellow +hi! link cssTransformProp ThemeCyan +hi! link cssTransitionProp ThemeCyan +hi! link cssPrintProp ThemeCyan +hi! link cssPositioningProp ThemeYellow +hi! link cssBoxProp ThemeCyan +hi! link cssFontDescriptorProp ThemeCyan +hi! link cssFlexibleBoxProp ThemeCyan +hi! link cssBorderOutlineProp ThemeCyan +hi! link cssBackgroundProp ThemeCyan +hi! link cssMarginProp ThemeCyan +hi! link cssListProp ThemeCyan +hi! link cssTableProp ThemeCyan +hi! link cssFontProp ThemeCyan +hi! link cssPaddingProp ThemeCyan +hi! link cssDimensionProp ThemeCyan +hi! link cssRenderProp ThemeCyan +hi! link cssColorProp ThemeCyan +hi! link cssGeneratedContentProp ThemeCyan + + +" CMP +hi! link CmpItemAbbrDeprecated Deprecated +hi! link CmpItemAbbrMatch SearchMatch +hi! link CmpItemAbbrMatchFuzzy SearchMatch +hi! link CmpItemKindClass Type +hi! link CmpItemKindColor Keyword +hi! link CmpItemKindConstant Constant +hi! link CmpItemKindConstructor Special +hi! link CmpItemKindEnum Type +hi! link CmpItemKindEnumMember Constant +hi! link CmpItemKindEvent Identifier +hi! link CmpItemKindField Character +hi! link CmpItemKindFile Directory +hi! link CmpItemKindFolder Directory +hi! link CmpItemKindFunction Function +hi! link CmpItemKindInterface Type +hi! link CmpItemKindKeyword Keyword +hi! link CmpItemKindMethod Function +hi! link CmpItemKindModule Namespace +hi! link CmpItemKindOperator Operator +hi! link CmpItemKindProperty Identifier +hi! link CmpItemKindReference Character +hi! link CmpItemKindSnippet String +hi! link CmpItemKindStruct Type +hi! link CmpItemKindText Text +hi! link CmpItemKindUnit Namespace +hi! link CmpItemKindValue Comment +hi! link CmpItemKindVariable Identifier + +if has("nvim-0.8.0") + hi! link CmpItemKindField @field + hi! link CmpItemKindProperty @property +endif + +" Diff +call hi("DiffAdd", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "") +call hi("DiffChange", s:gui06, s:gui01, s:cterm05, s:cterm01, "", "") +call hi("DiffDelete", s:gui02, s:guibg, s:cterm02, s:ctermbg, "", "") +call hi("DiffText", s:gui0D, s:gui01, s:cterm0D, s:cterm01, "", "") +call hi("DiffAdded", s:gui0B, s:guibg, s:cterm0B, s:ctermbg, "", "") +call hi("DiffFile", s:gui08, s:guibg, s:cterm08, s:ctermbg, "", "") +call hi("DiffNewFile", s:gui0B, s:guibg, s:cterm0B, s:ctermbg, "", "") +call hi("DiffLine", s:gui0D, s:guibg, s:cterm0D, s:ctermbg, "", "") +call hi("DiffRemoved", s:gui08, s:guibg, s:cterm08, s:ctermbg, "", "") + +" Git +call hi("gitcommitOverflow", s:gui08, "", s:cterm08, "", "", "") +call hi("gitcommitSummary", s:gui0B, "", s:cterm0B, "", "", "") +call hi("gitcommitComment", s:gui03, "", s:cterm03, "", "", "") +call hi("gitcommitUntracked", s:gui03, "", s:cterm03, "", "", "") +call hi("gitcommitDiscarded", s:gui03, "", s:cterm03, "", "", "") +call hi("gitcommitSelected", s:gui03, "", s:cterm03, "", "", "") +call hi("gitcommitHeader", s:gui0E, "", s:cterm0E, "", "", "") +call hi("gitcommitSelectedType", s:gui0D, "", s:cterm0D, "", "", "") +call hi("gitcommitUnmergedType", s:gui0D, "", s:cterm0D, "", "", "") +call hi("gitcommitDiscardedType", s:gui0D, "", s:cterm0D, "", "", "") +call hi("gitcommitBranch", s:gui09, "", s:cterm09, "", "bold", "") +call hi("gitcommitUntrackedFile", s:gui0A, "", s:cterm0A, "", "", "") +call hi("gitcommitUnmergedFile", s:gui08, "", s:cterm08, "", "bold", "") +call hi("gitcommitDiscardedFile", s:gui08, "", s:cterm08, "", "bold", "") +call hi("gitcommitSelectedFile", s:gui0B, "", s:cterm0B, "", "bold", "") + +" GitGutter +hi! link GitGutterAdd GitAddSign +hi! link GitGutterChange GitChangeSign +hi! link GitGutterDelete GitDeleteSign +hi! link GitGutterChangeDelete GitChangeDeleteSign + +" indent-blankline (nvim) +if has("nvim") + call hi("@ibl.indent.char.1",s:gui01, "", s:cterm01, "", "", "") +endif + +" HTML +call hi("htmlBold", s:gui07, "", s:cterm0A, "", "bold", "") +call hi("htmlItalic", s:gui06, "", s:cterm0E, "", "italic", "") +call hi("htmlEndTag", s:gui06, "", s:cterm05, "", "", "") +call hi("htmlTag", s:gui06, "", s:cterm05, "", "", "") + +" JavaScript +call hi("javaScript", s:gui06, "", s:cterm05, "", "", "") +call hi("javaScriptBraces", s:gui06, "", s:cterm05, "", "", "") +call hi("javaScriptNumber", s:gui09, "", s:cterm09, "", "", "") +" pangloss/vim-javascript +call hi("jsOperator", s:gui0D, "", s:cterm0D, "", "", "") +call hi("jsStatement", s:gui0E, "", s:cterm0E, "", "", "") +call hi("jsReturn", s:gui0E, "", s:cterm0E, "", "", "") +call hi("jsThis", s:gui08, "", s:cterm08, "", "", "") +call hi("jsClassDefinition", s:gui0A, "", s:cterm0A, "", "", "") +call hi("jsFunction", s:gui0E, "", s:cterm0E, "", "", "") +call hi("jsFuncName", s:gui0D, "", s:cterm0D, "", "", "") +call hi("jsFuncCall", s:gui0D, "", s:cterm0D, "", "", "") +call hi("jsClassFuncName", s:gui0D, "", s:cterm0D, "", "", "") +call hi("jsClassMethodType", s:gui0E, "", s:cterm0E, "", "", "") +call hi("jsRegexpString", s:gui0C, "", s:cterm0C, "", "", "") +call hi("jsGlobalObjects", s:gui0A, "", s:cterm0A, "", "", "") +call hi("jsGlobalNodeObjects", s:gui0A, "", s:cterm0A, "", "", "") +call hi("jsExceptions", s:gui0A, "", s:cterm0A, "", "", "") +call hi("jsBuiltins", s:gui0A, "", s:cterm0A, "", "", "") + +" Mail +call hi("mailQuoted1", s:gui0A, "", s:cterm0A, "", "", "") +call hi("mailQuoted2", s:gui0B, "", s:cterm0B, "", "", "") +call hi("mailQuoted3", s:gui0E, "", s:cterm0E, "", "", "") +call hi("mailQuoted4", s:gui0C, "", s:cterm0C, "", "", "") +call hi("mailQuoted5", s:gui0D, "", s:cterm0D, "", "", "") +call hi("mailQuoted6", s:gui0A, "", s:cterm0A, "", "", "") +call hi("mailURL", s:gui0D, "", s:cterm0D, "", "", "") +call hi("mailEmail", s:gui0D, "", s:cterm0D, "", "", "") + +" Markdown +call hi("markdownCode", s:gui0B, "", s:cterm0B, "", "", "") +call hi("markdownError", s:gui06, s:guibg, s:cterm05, s:ctermbg, "", "") +call hi("markdownCodeBlock", s:gui0B, "", s:cterm0B, "", "", "") +call hi("markdownHeadingDelimiter", s:gui0D, "", s:cterm0D, "", "", "") + +" Matchup +call hi("MatchWord", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "underline", "") + +" NERDTree +call hi("NERDTreeDirSlash", s:gui0D, "", s:cterm0D, "", "", "") +call hi("NERDTreeExecFile", s:gui06, "", s:cterm05, "", "", "") + +" Netrw +hi! link netrwDir ThemeCyan +hi! link netrwClassify ThemeCyan +hi! link netrwLink ThemeBg3 +hi! link netrwSymLink ThemeFg1 +hi! link netrwExe ThemeYellow +hi! link netrwComment ThemeBg3 +hi! link netrwList ThemeBlue +hi! link netrwHelpCmd ThemeCyan +hi! link netrwCmdSep ThemeFg3 +hi! link netrwVersion ThemeGreen + +" PHP +call hi("phpMemberSelector", s:gui06, "", s:cterm05, "", "", "") +call hi("phpComparison", s:gui06, "", s:cterm05, "", "", "") +call hi("phpParent", s:gui06, "", s:cterm05, "", "", "") +call hi("phpMethodsVar", s:gui0C, "", s:cterm0C, "", "", "") + +" Python +"call hi("pythonOperator", s:gui0E, "", s:cterm0E, "", "", "") +"call hi("pythonRepeat", s:gui0E, "", s:cterm0E, "", "", "") +"call hi("pythonInclude", s:gui0E, "", s:cterm0E, "", "", "") +"call hi("pythonStatement", s:gui0E, "", s:cterm0E, "", "", "") + +" hi! link pythonBuiltin ThemeCyan +" hi! link pythonBuiltinObj ThemeCyan +" hi! link pythonBuiltinFunc ThemeGreen +" hi! link pythonFunction Function +hi! link pythonDecorator ThemeYellow +hi! link pythonDecoratorName ThemeYellow +" hi! link pythonTripleQuotes ThemeGreenItalic +" hi! link pythonInclude ThemeBlue +" hi! link pythonImport ThemeBlue +" hi! link pythonRun ThemeBlue +" hi! link pythonCoding ThemeBlue +" hi! link pythonOperator ThemeRed +" hi! link pythonException ThemeRed +" hi! link pythonExceptions ThemeYellow +" hi! link pythonBoolean ThemeYellow +" hi! link pythonDot ThemeFg3 +" hi! link pythonConditional ThemeCyan +" hi! link pythonRepeat ThemeRed +" hi! link pythonDottedName ThemeGreen + + +" Ruby +call hi("rubyAttribute", s:gui0D, "", s:cterm0D, "", "", "") +call hi("rubyConstant", s:gui0A, "", s:cterm0A, "", "", "") +call hi("rubyInterpolationDelimiter", s:gui0F, "", s:cterm0F, "", "", "") +call hi("rubyRegexp", s:gui0C, "", s:cterm0C, "", "", "") +call hi("rubySymbol", s:gui0B, "", s:cterm0B, "", "", "") +call hi("rubyStringDelimiter", s:gui0B, "", s:cterm0B, "", "", "") + +" SASS +call hi("sassidChar", s:gui08, "", s:cterm08, "", "", "") +call hi("sassClassChar", s:gui09, "", s:cterm09, "", "", "") +call hi("sassInclude", s:gui0E, "", s:cterm0E, "", "", "") +call hi("sassMixing", s:gui0E, "", s:cterm0E, "", "", "") +call hi("sassMixinName", s:gui0D, "", s:cterm0D, "", "", "") + +" Signify +hi! link SignifySignAdd GitAddSign +hi! link SignifySignChange GitChangeSign +hi! link SignifySignDelete GitDeleteSign + +" Startify +call hi("StartifyBracket", s:gui03, "", s:cterm03, "", "", "") +call hi("StartifyFile", s:gui07, "", s:cterm07, "", "", "") +call hi("StartifyFooter", s:gui03, "", s:cterm03, "", "", "") +call hi("StartifyHeader", s:gui0B, "", s:cterm0B, "", "", "") +call hi("StartifyNumber", s:gui09, "", s:cterm09, "", "", "") +call hi("StartifyPath", s:gui03, "", s:cterm03, "", "", "") +call hi("StartifySection", s:gui0E, "", s:cterm0E, "", "", "") +call hi("StartifySelect", s:gui0C, "", s:cterm0C, "", "", "") +call hi("StartifySlash", s:gui03, "", s:cterm03, "", "", "") +call hi("StartifySpecial", s:gui03, "", s:cterm03, "", "", "") + +" LSP +if has("nvim") + hi! link DiagnosticError ErrorSign + hi! link DiagnosticWarn WarningSign + hi! link DiagnosticInfo InfoSign + hi! link DiagnosticHint HintSign + hi! link DiagnosticOk OkSign + + hi! link DiagnosticFloatingError ErrorFloat + hi! link DiagnosticFloatingWarn WarningFloat + hi! link DiagnosticFloatingInfo InfoFloat + hi! link DiagnosticFloatingHint HintFloat + hi! link DiagnosticFloatingOk OkFloat + + hi! link DiagnosticUnderlineError ErrorHighlight + hi! link DiagnosticUnderlineWarn WarningHighlight + hi! link DiagnosticUnderlineInfo InfoHighlight + hi! link DiagnosticUnderlineHint HintHighlight + hi! link DiagnosticUnderlineOk OkHighlight + + hi! link DiagnosticsVirtualTextError ErrorSign + hi! link DiagnosticsVirtualTextWarning WarningSign + hi! link DiagnosticsVirtualTextInfo InfoSign + hi! link DiagnosticsVirtualTextHint HintSign + hi! link DiagnosticsVirtualTextOk OkSign + + " Remove untill endif on next nvim release + hi! link LspDiagnosticsSignError ErrorSign + hi! link LspDiagnosticsSignWarning WarningSign + hi! link LspDiagnosticsSignInfo InfoSign + hi! link LspDiagnosticsSignHint HintSign + + hi! link LspDiagnosticsVirtualTextError ErrorSign + hi! link LspDiagnosticsVirtualTextWarning WarningSign + hi! link LspDiagnosticsVirtualTextInfo InfoSign + hi! link LspDiagnosticsVirtualTextHint HintSign + + hi! link LspDiagnosticsFloatingError ErrorFloat + hi! link LspDiagnosticsFloatingWarning WarningFloat + hi! link LspDiagnosticsFloatingInfo InfoFloat + hi! link LspDiagnosticsFloatingHint HintFloat + + hi! link LspDiagnosticsUnderlineError ErrorHighlight + hi! link LspDiagnosticsUnderlineWarning WarningHighlight + hi! link LspDiagnosticsUnderlineInfo InfoHighlight + hi! link LspDiagnosticsUnderlineHint HintHighlight + + hi! link LspReferenceText ReferenceText + hi! link LspReferenceRead ReferenceRead + hi! link LspReferenceWrite ReferenceWrite +endif + +" Java +call hi("javaOperator", s:gui0D, "", s:cterm0D, "", "", "") + +" JSON +hi! link jsonKeyword ThemeGreen +hi! link jsonQuote ThemeGreen +hi! link jsonBraces ThemeFg1 +hi! link jsonString ThemeFg1 + +" Markdown +hi! link markdownH1 ThemeRedBold +hi! link markdownH2 ThemeRed +hi! link markdownH3 ThemeRed +hi! link markdownH4 ThemeRed +hi! link markdownH5 ThemeRed +hi! link markdownH6 ThemeRed + +hi! link markdownCode ThemeYellow +hi! link markdownCodeBlock ThemeYellow +hi! link markdownCodeDelimiter ThemeYellow + +hi! link markdownBlockquote ThemeGrey +hi! link markdownListMarker ThemeBlue +hi! link markdownOrderedListMarker ThemeBlue +hi! link markdownRule ThemeGrey +hi! link markdownHeadingRule ThemeGrey + +hi! link markdownUrlDelimiter ThemeFg3 +hi! link markdownLinkDelimiter ThemeFg3 +hi! link markdownLinkTextDelimiter ThemeFg3 +hi! link markdownHeadingDelimiter ThemeOrange +hi! link markdownUrlTitleDelimiter ThemeGreen + +hi! link markdownLink ThemeGreen +hi! link markdownWikiLink ThemeViolet +hi! link markdownUrl ThemeOrange +hi! link markdownInlineUrl ThemeOrange + +hi! link markdownLinkText ThemeViolet +hi! link markdownIdDeclaration markdownLinkText + +"call s:HL('markdownItalic', s:fg3, s:none, s:italic) +"call s:HL('markdownLinkText', s:gray, s:none, s:underline) + + +" Remove functions +delf hi + +" Remove color variables +unlet s:gui00 s:gui01 s:gui02 s:gui03 s:gui04 s:gui05 s:gui06 s:gui07 s:gui08 s:gui09 s:gui0A s:gui0B s:gui0C s:gui0D s:gui0E s:gui0F s:guibg +unlet s:cterm00 s:cterm01 s:cterm02 s:cterm03 s:cterm04 s:cterm05 s:cterm06 s:cterm07 s:cterm08 s:cterm09 s:cterm0A s:cterm0B s:cterm0C s:cterm0D s:cterm0E s:cterm0F s:ctermbg diff --git a/apps/nvim/soft-grassland-monobiome-dark.vim b/apps/nvim/soft-grassland-monobiome-dark.vim new file mode 100644 index 0000000..0317314 --- /dev/null +++ b/apps/nvim/soft-grassland-monobiome-dark.vim @@ -0,0 +1,882 @@ +" vi:syntax=vim +" +" Top-level remarks: +" +" - `hi` sets highlight colors for syntax groups, allowing one to specify fg and bg colors +" for GUI and terminal Vim. +" - `link` allows for linking one syntax group to another, reusing the same color +" settings. Language-specific groups can then point to one of the base color highlight +" groups, for example, without needing to repeat the raw color values. + +" GUI color definitions +let s:gui00 = "#29302d" +let g:base16_gui00 = "#29302d" +let s:gui01 = "#353c3a" +let g:base16_gui01 = "#353c3a" +let s:gui02 = "#424a47" +let g:base16_gui02 = "#424a47" +let s:gui03 = "#505754" +let g:base16_gui03 = "#505754" +let s:gui04 = "#b7c0bc" +let g:base16_gui04 = "#b7c0bc" +let s:gui05 = "#c7d0cc" +let g:base16_gui05 = "#c7d0cc" +let s:gui06 = "#d7e0dd" +let g:base16_gui06 = "#d7e0dd" +let s:gui07 = "#e8f1ed" +let g:base16_gui07 = "#e8f1ed" +let s:gui08 = "#f37060" +let g:base16_gui08 = "#f37060" +let s:gui09 = "#da8934" +let g:base16_gui09 = "#da8934" +let s:gui0A = "#a7a15f" +let g:base16_gui0A = "#a7a15f" +let s:gui0B = "#6eb178" +let g:base16_gui0B = "#6eb178" +let s:gui0C = "#6eb178" +let g:base16_gui0C = "#6eb178" +let s:gui0D = "#799ee3" +let g:base16_gui0D = "#799ee3" +let s:gui0E = "#799ee3" +let g:base16_gui0E = "#799ee3" +let s:gui0F = "#f37060" +let g:base16_gui0F = "#f37060" + +let s:grey = "#89918e" + +" Terminal color definitions +let s:cterm00 = "00" +let g:base16_cterm00 = "00" +let s:cterm03 = "08" +let g:base16_cterm03 = "08" +let s:cterm05 = "07" +let g:base16_cterm05 = "07" +let s:cterm07 = "15" +let g:base16_cterm07 = "15" +let s:cterm08 = "01" +let g:base16_cterm08 = "01" +let s:cterm0A = "03" +let g:base16_cterm0A = "03" +let s:cterm0B = "02" +let g:base16_cterm0B = "02" +let s:cterm0C = "06" +let g:base16_cterm0C = "06" +let s:cterm0D = "04" +let g:base16_cterm0D = "04" +let s:cterm0E = "05" +let g:base16_cterm0E = "05" + +let s:cterm01 = "10" +let g:base16_cterm01 = "10" +let s:cterm02 = "11" +let g:base16_cterm02 = "11" +let s:cterm04 = "12" +let g:base16_cterm04 = "12" +let s:cterm06 = "13" +let g:base16_cterm06 = "13" +let s:cterm09 = "09" +let g:base16_cterm09 = "09" +let s:cterm0F = "14" +let g:base16_cterm0F = "14" + +" Neovim terminal colours +if has("nvim") + let g:terminal_color_0 = "#29302d" + let g:terminal_color_1 = "#f37060" + let g:terminal_color_2 = "#6eb178" + let g:terminal_color_3 = "#a7a15f" + let g:terminal_color_4 = "#799ee3" + let g:terminal_color_5 = "#799ee3" + let g:terminal_color_6 = "#6eb178" + let g:terminal_color_7 = "#c7d0cc" + let g:terminal_color_8 = "#505754" + let g:terminal_color_9 = "#f37060" + let g:terminal_color_10 = "#6eb178" + let g:terminal_color_11 = "#a7a15f" + let g:terminal_color_12 = "#799ee3" + let g:terminal_color_13 = "#799ee3" + let g:terminal_color_14 = "#6eb178" + let g:terminal_color_15 = "#e8f1ed" + let g:terminal_color_background = g:terminal_color_0 + let g:terminal_color_foreground = g:terminal_color_5 + + if &background == "light" + let g:terminal_color_background = g:terminal_color_7 + let g:terminal_color_foreground = g:terminal_color_2 + endif + +elseif has("terminal") + let g:terminal_ansi_colors = [ + \ "#29302d", + \ "#f37060", + \ "#6eb178", + \ "#a7a15f", + \ "#799ee3", + \ "#799ee3", + \ "#6eb178", + \ "#c7d0cc", + \ "#505754", + \ "#f37060", + \ "#6eb178", + \ "#a7a15f", + \ "#799ee3", + \ "#799ee3", + \ "#6eb178", + \ "#e8f1ed", + \ ] +endif + +let s:guibg = s:gui00 +let s:ctermbg = s:cterm00 + +" Theme setup +hi clear +syntax reset +let g:colors_name = "active" + +" Highlighting function +" Optional variables are attributes and guisp +function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) + " For a given syntax group, sets the GUI and terminal foreground and backgrounds + " Optional parameters are interpreted as `attr` and `guisp`, the first of which appears + " to be a modifier for the group (e.g., bold, italic), and `guisp` appears to be + " 'special' colors used for underlines in the GUI. + let l:attr = get(a:, 1, "") + let l:guisp = get(a:, 2, "") + + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + + if a:guifg != "" + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=" . a:guifg + endif + endif + + if a:guibg != "" + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=" . a:guibg + endif + endif + + if a:ctermfg != "" + exec "hi " . a:group . " ctermfg=" . a:ctermfg + endif + + if a:ctermbg != "" + exec "hi " . a:group . " ctermbg=" . a:ctermbg + endif + + if l:attr != "" + exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr + endif + + if l:guisp != "" + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=" . l:guisp + endif + endif +endfunction + + +fun hi(group, guifg, guibg, ctermfg, ctermbg, attr, guisp) + call g:Base16hi(a:group, a:guifg, a:guibg, a:ctermfg, a:ctermbg, a:attr, a:guisp) +endfun + + +" color groups for interpretability +call hi("ThemeBg0", s:gui00, "", s:cterm00, "", "", "") +call hi("ThemeBg1", s:gui01, "", s:cterm01, "", "", "") +call hi("ThemeBg2", s:gui02, "", s:cterm02, "", "", "") +call hi("ThemeBg3", s:gui03, "", s:cterm03, "", "", "") +call hi("ThemeFg3", s:gui04, "", s:cterm04, "", "", "") +call hi("ThemeFg2", s:gui05, "", s:cterm05, "", "", "") +call hi("ThemeFg1", s:gui06, "", s:cterm06, "", "", "") +call hi("ThemeFg0", s:gui07, "", s:cterm07, "", "", "") +" +call hi("ThemeRed", s:gui08, "", s:cterm08, "", "", "") +call hi("ThemeOrange", s:gui09, "", s:cterm09, "", "", "") +call hi("ThemeYellow", s:gui0A, "", s:cterm0A, "", "", "") +call hi("ThemeGreen", s:gui0B, "", s:cterm0B, "", "", "") +call hi("ThemeCyan", s:gui0C, "", s:cterm0C, "", "", "") +call hi("ThemeBlue", s:gui0D, "", s:cterm0D, "", "", "") +call hi("ThemeViolet", s:gui0E, "", s:cterm0E, "", "", "") +call hi("ThemeMagenta", s:gui0F, "", s:cterm0F, "", "", "") + +call hi("ThemeRedBold", s:gui08, "", s:cterm08, "", "bold", "") +call hi("ThemeOrangeBold", s:gui09, "", s:cterm09, "", "bold", "") +call hi("ThemeYellowBold", s:gui0A, "", s:cterm0A, "", "bold", "") +call hi("ThemeGreenBold", s:gui0B, "", s:cterm0B, "", "bold", "") +call hi("ThemeCyanBold", s:gui0C, "", s:cterm0C, "", "bold", "") +call hi("ThemeBlueBold", s:gui0D, "", s:cterm0D, "", "bold", "") +call hi("ThemeVioletBold", s:gui0E, "", s:cterm0E, "", "bold", "") +call hi("ThemeMagentaBold", s:gui0F, "", s:cterm0F, "", "bold", "") + +call hi("ThemeRedItalic", s:gui08, "", s:cterm08, "", "italic", "") +call hi("ThemeOrangeItalic", s:gui09, "", s:cterm09, "", "italic", "") +call hi("ThemeYellowItalic", s:gui0A, "", s:cterm0A, "", "italic", "") +call hi("ThemeGreenItalic", s:gui0B, "", s:cterm0B, "", "italic", "") +call hi("ThemeCyanItalic", s:gui0C, "", s:cterm0C, "", "italic", "") +call hi("ThemeBlueItalic", s:gui0D, "", s:cterm0D, "", "italic", "") +call hi("ThemeVioletItalic", s:gui0E, "", s:cterm0E, "", "italic", "") +call hi("ThemeMagentaItalic", s:gui0F, "", s:cterm0F, "", "italic", "") + +call hi("ThemeGrey", s:grey, "", s:cterm03, "", "", "") +call hi("ThemeGreyItalic", s:grey, "", s:cterm03, "", "italic", "") + + +" Vim editor colors +call hi("Normal", s:gui05, s:guibg, s:cterm05, s:ctermbg, "", "") +call hi("Bold", "", "", "", "", "bold", "") +call hi("Debug", s:gui08, "", s:cterm08, "", "", "") +call hi("Directory", s:gui0D, "", s:cterm0D, "", "", "") +call hi("Error", s:guibg, s:gui08, s:ctermbg, s:cterm08, "", "") +call hi("ErrorMsg", s:gui08, s:guibg, s:cterm08, s:ctermbg, "", "") +call hi("Exception", s:gui08, "", s:cterm08, "", "", "") +call hi("FoldColumn", s:gui03, s:guibg, s:cterm03, s:ctermbg, "", "") +call hi("Folded", s:gui02, s:guibg, s:cterm02, s:ctermbg, "", "") +call hi("IncSearch", s:gui01, s:gui09, s:cterm01, s:cterm09, "none", "") +call hi("Italic", "", "", "", "", "italic", "") +call hi("Macro", s:gui0C, "", s:cterm0C, "", "", "") +call hi("MatchParen", "", s:gui03, "", s:cterm03, "", "") +call hi("ModeMsg", s:gui0B, "", s:cterm0B, "", "", "") +call hi("MoreMsg", s:gui0B, "", s:cterm0B, "", "", "") +call hi("Question", s:gui0D, "", s:cterm0D, "", "", "") +call hi("Search", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "", "") +call hi("Substitute", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "none", "") +call hi("SpecialKey", s:gui03, "", s:cterm03, "", "", "") +call hi("TooLong", s:gui08, "", s:cterm08, "", "", "") +call hi("Underlined", "", "", "", "", "underline", "fg") +call hi("Visual", "", s:gui02, "", s:cterm02, "", "") +call hi("VisualNOS", s:gui08, "", s:cterm08, "", "", "") +call hi("WarningMsg", s:gui08, "", s:cterm08, "", "", "") +call hi("WildMenu", s:guibg, s:gui06, s:ctermbg, s:cterm05, "", "") +call hi("Title", s:gui0D, "", s:cterm0D, "", "none", "") +call hi("Conceal", s:gui0D, s:guibg, s:cterm0D, s:ctermbg, "", "") +call hi("Cursor", s:gui05, s:guibg, "", "", "inverse", "") +call hi("NonText", s:gui03, "", s:cterm03, "", "", "") +call hi("Whitespace", s:gui03, "", s:cterm03, "", "", "") +call hi("LineNr", s:gui03, s:guibg, s:cterm03, s:ctermbg, "", "") +call hi("SignColumn", s:gui03, s:guibg, s:cterm03, s:ctermbg, "", "") +call hi("StatusLine", s:gui07, s:gui01, s:cterm07, s:cterm01, "none", "") +call hi("StatusLineNC", s:gui06, s:gui01, s:cterm05, s:cterm01, "none", "") +call hi("VertSplit", s:gui01, s:guibg, s:cterm01, s:ctermbg, "none", "") +call hi("ColorColumn", "", s:gui01, "", s:cterm01, "none", "") +call hi("CursorColumn", "", s:gui01, "", s:cterm01, "none", "") +call hi("CursorLine", "", s:gui01, "", s:cterm01, "none", "") +call hi("CursorLineNr", s:gui04, s:gui01, s:cterm04, s:cterm01, "bold", "") +call hi("QuickFixLine", "", s:gui01, "", s:cterm01, "none", "") +call hi("PMenu", s:gui06, s:gui01, s:cterm06, s:cterm01, "none", "") +call hi("PMenuSel", s:gui06, s:gui02, s:cterm06, s:cterm02, "", "") +call hi("PMenuSbar", "", s:gui03, "", s:cterm03, "", "") +call hi("PMenuThumb", "", s:gui04, "", s:cterm04, "", "") +call hi("TabLine", s:gui03, s:gui01, s:cterm03, s:cterm01, "none", "") +call hi("TabLineFill", s:gui03, s:gui01, s:cterm03, s:cterm01, "none", "") +call hi("TabLineSel", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "none", "") + +" Standard syntax +hi! link Boolean ThemeOrange +hi! link Character ThemeRed + +"call hi("Comment", s:gui03, "", s:cterm03, "", "italic", "") +hi! link Comment ThemeGreyItalic + +hi! link Conditional ThemeRed +hi! link Constant ThemeOrange +call hi("Define", s:gui0E, "", s:cterm0E, "", "none", "") +hi! link Delimiter ThemeFg1 + +if has("patch-8.0.1038") + call hi("Deprecated", "", "", "", "", "strikethrough", "") +endif + +hi! link Float ThemeOrange +hi! link Function ThemeBlue +call hi("Identifier", s:gui06, "", s:cterm05, "", "none", "") +hi! link Include ThemeBlue +hi! link Constant ThemeOrange +call hi("Keyword", s:gui0E, "", s:cterm0E, "", "none", "") +hi! link Label ThemeOrange +hi! link Number ThemeOrange +hi! link Operator ThemeYellow +hi! link PreProc ThemeOrange +hi! link Repeat ThemeViolet +hi! link Special ThemeYellow +hi! link SpecialChar ThemeMagenta +hi! link Statement ThemeRed +hi! link StorageClass ThemeOrange +hi! link String ThemeGreen +hi! link Structure ThemeOrange +hi! link Tag ThemeOrange + +call hi("Todo", s:gui08, s:guibg, s:cterm08, s:ctermbg, "italic", "") +call hi("Type", s:gui0A, "", s:cterm0A, "", "none", "") + +hi! link Typedef ThemeOrange + + +" Treesitter +if has("nvim-0.8.0") + call hi("@field", s:gui08, "", s:cterm08, "", "", "") + call hi("@property", s:gui08, "", s:cterm08, "", "", "") + call hi("@namespace", s:gui06, "", s:cterm05, "", "italic", "") + call hi("@variable.builtin", s:gui06, "", s:cterm05, "", "italic", "") + call hi("@text.reference", s:gui08, "", s:cterm08, "", "", "") + call hi("@text.uri", s:gui08, "", s:cterm08, "", "italic", "") + + " Annotations & Attributes + call hi("@annotation", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@attribute", s:gui0D, "", s:cterm0D, "", "", "") + + " Booleans, Characters & Comments + call hi("@boolean", s:gui09, "", s:cterm09, "", "", "") + call hi("@character", s:gui08, "", s:cterm08, "", "", "") + call hi("@character.special", s:gui0F, "", s:cterm0F, "", "", "") + call hi("@comment", s:gui03, "", s:cterm03, "", "", "") + + " Conditionals, Constants & Debugging + call hi("@keyword.conditional", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@constant", s:gui09, "", s:cterm09, "", "", "") + call hi("@constant.builtin", s:gui09, "", s:cterm09, "", "", "") + call hi("@constant.macro", s:gui08, "", s:cterm08, "", "", "") + call hi("@keyword.debug", s:gui08, "", s:cterm08, "", "", "") + + " Directives & Exceptions + call hi("@keyword.directive.define", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@keyword.exception", s:gui0E, "", s:cterm0E, "", "", "") + + " Floats & Functions + call hi("@number.float", s:gui09, "", s:cterm09, "", "", "") + call hi("@function", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@function.builtin", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@function.call", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@function.macro", s:gui08, "", s:cterm08, "", "", "") + + " Imports, Operators & Returns + call hi("@keyword.import", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@keyword.coroutine", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@keyword.operator", s:gui06, "", s:cterm05, "", "", "") + call hi("@keyword.return", s:gui0E, "", s:cterm0E, "", "", "") + + " Methods & Namespaces + call hi("@function.method", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@function.method.call", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@namespace.builtin", s:gui0E, "", s:cterm0E, "", "", "") + + " Numbers & Directives + call hi("@none", s:gui06, "", s:cterm05, "", "", "") + call hi("@number", s:gui09, "", s:cterm09, "", "", "") + call hi("@keyword.directive", s:gui0E, "", s:cterm0E, "", "", "") + + " Repeats, Storage & Strings + call hi("@keyword.repeat", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@keyword.storage", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@string", s:gui0B, "", s:cterm0B, "", "", "") + + " Tags & Markup + call hi("@markup.link.label", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.link.label.symbol", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@tag", s:gui08, "", s:cterm08, "", "", "") + call hi("@tag.attribute", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@tag.delimiter", s:gui0F, "", s:cterm0F, "", "", "") + + " More Markup + call hi("@markup", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.environment", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.environment.name", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.raw", s:gui09, "", s:cterm09, "", "", "") + call hi("@markup.math", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.strong", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.emphasis", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.strikethrough", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.underline", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.heading", s:gui0D, "", s:cterm0D, "", "", "") + + " Comments & Types + call hi("@comment.note", s:gui03, "", s:cterm03, "", "", "") + call hi("@comment.error", s:gui08, "", s:cterm08, "", "", "") + call hi("@comment.hint", s:gui0B, "", s:cterm0B, "", "", "") + call hi("@comment.info", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@comment.warning", s:gui09, "", s:cterm09, "", "", "") + call hi("@comment.todo", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.link.url", s:gui09, "", s:cterm09, "", "", "") + call hi("@type", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@type.definition", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@type.qualifier", s:gui0E, "", s:cterm0E, "", "", "") +endif + +" Standard highlights to be used by plugins +if has("patch-8.0.1038") + call hi("Deprecated", "", "", "", "", "strikethrough", "") +endif +call hi("SearchMatch", s:gui0C, "", s:cterm0C, "", "", "") + +call hi("GitAddSign", s:gui0B, "", s:cterm0B, "", "", "") +call hi("GitChangeSign", s:gui04, "", s:cterm04, "", "", "") +call hi("GitDeleteSign", s:gui08, "", s:cterm08, "", "", "") +call hi("GitChangeDeleteSign", s:gui04, "", s:cterm04, "", "", "") + +call hi("ErrorSign", s:gui08, "", s:cterm08, "", "", "") +call hi("WarningSign", s:gui09, "", s:cterm09, "", "", "") +call hi("InfoSign", s:gui0D, "", s:cterm0D, "", "", "") +call hi("HintSign", s:gui0C, "", s:cterm0C, "", "", "") +call hi("OkSign", s:gui0B, "", s:cterm0B, "", "", "") + +call hi("ErrorFloat", s:gui08, s:gui01, s:cterm08, s:cterm01, "", "") +call hi("WarningFloat", s:gui09, s:gui01, s:cterm09, s:cterm01, "", "") +call hi("InfoFloat", s:gui0D, s:gui01, s:cterm0D, s:cterm01, "", "") +call hi("HintFloat", s:gui0C, s:gui01, s:cterm0C, s:cterm01, "", "") +call hi("OkFloat", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "") + +call hi("ErrorHighlight", "", "", s:ctermbg, s:cterm08, "underline", s:gui08) +call hi("WarningHighlight", "", "", s:ctermbg, s:cterm09, "underline", s:gui09) +call hi("InfoHighlight", "", "", s:ctermbg, s:cterm0D, "underline", s:gui0D) +call hi("HintHighlight", "", "", s:ctermbg, s:cterm0C, "underline", s:gui0C) +call hi("OkHighlight", "", "", s:ctermbg, s:cterm0B, "underline", s:gui0B) + +call hi("SpellBad", "", "", s:ctermbg, s:cterm08, "undercurl", s:gui08) +call hi("SpellLocal", "", "", s:ctermbg, s:cterm0C, "undercurl", s:gui0C) +call hi("SpellCap", "", "", s:ctermbg, s:cterm0D, "undercurl", s:gui0D) +call hi("SpellRare", "", "", s:ctermbg, s:cterm0E, "undercurl", s:gui0E) + +call hi("ReferenceText", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "", "") +call hi("ReferenceRead", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "", "") +call hi("ReferenceWrite", s:gui01, s:gui08, s:cterm01, s:cterm08, "", "") + +" C +call hi("cOperator", s:gui0C, "", s:cterm0C, "", "", "") +call hi("cPreCondit", s:gui0E, "", s:cterm0E, "", "", "") + +" C# +call hi("csClass", s:gui0A, "", s:cterm0A, "", "", "") +call hi("csAttribute", s:gui0A, "", s:cterm0A, "", "", "") +call hi("csModifier", s:gui0E, "", s:cterm0E, "", "", "") +call hi("csType", s:gui08, "", s:cterm08, "", "", "") +call hi("csUnspecifiedStatement", s:gui0D, "", s:cterm0D, "", "", "") +call hi("csContextualStatement", s:gui0E, "", s:cterm0E, "", "", "") +call hi("csNewDecleration", s:gui08, "", s:cterm08, "", "", "") + +" Clap +hi! link ClapInput ColorColumn +hi! link ClapSpinner ColorColumn +hi! link ClapDisplay Default +hi! link ClapPreview ColorColumn +hi! link ClapCurrentSelection CursorLine +hi! link ClapNoMatchesFound ErrorFloat + +" Coc +hi! link CocErrorSign ErrorSign +hi! link CocWarningSign WarningSign +hi! link CocInfoSign InfoSign +hi! link CocHintSign HintSign + +hi! link CocErrorFloat ErrorFloat +hi! link CocWarningFloat WarningFloat +hi! link CocInfoFloat InfoFloat +hi! link CocHintFloat HintFloat + +hi! link CocErrorHighlight ErrorHighlight +hi! link CocWarningHighlight WarningHighlight +hi! link CocInfoHighlight InfoHighlight +hi! link CocHintHighlight HintHighlight + +hi! link CocSem_angle Keyword +hi! link CocSem_annotation Keyword +hi! link CocSem_attribute Type +hi! link CocSem_bitwise Keyword +hi! link CocSem_boolean Boolean +hi! link CocSem_brace Normal +hi! link CocSem_bracket Normal +hi! link CocSem_builtinAttribute Type +hi! link CocSem_builtinType Type +hi! link CocSem_character String +hi! link CocSem_class Structure +hi! link CocSem_colon Normal +hi! link CocSem_comma Normal +hi! link CocSem_comment Comment +hi! link CocSem_comparison Keyword +hi! link CocSem_concept Keyword +hi! link CocSem_constParameter Identifier +hi! link CocSem_dependent Keyword +hi! link CocSem_dot Keyword +hi! link CocSem_enum Structure +hi! link CocSem_enumMember Constant +hi! link CocSem_escapeSequence Type +hi! link CocSem_event Identifier +hi! link CocSem_formatSpecifier Type +hi! link CocSem_function Function +hi! link CocSem_interface Type +hi! link CocSem_keyword Keyword +hi! link CocSem_label Keyword +hi! link CocSem_logical Keyword +hi! link CocSem_macro Macro +hi! link CocSem_method Function +hi! link CocSem_modifier Keyword +hi! link CocSem_namespace Identifier +hi! link CocSem_number Number +hi! link CocSem_operator Operator +hi! link CocSem_parameter Identifier +hi! link CocSem_parenthesis Normal +hi! link CocSem_property Identifier +hi! link CocSem_punctuation Keyword +hi! link CocSem_regexp Type +hi! link CocSem_selfKeyword Constant +hi! link CocSem_semicolon Normal +hi! link CocSem_string String +hi! link CocSem_struct Structure +hi! link CocSem_type Type +hi! link CocSem_typeAlias Type +hi! link CocSem_typeParameter Type +hi! link CocSem_unknown Normal +hi! link CocSem_variable Identifier + +call hi("CocHighlightRead", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "") +call hi("CocHighlightText", s:gui0A, s:gui01, s:cterm0A, s:cterm01, "", "") +call hi("CocHighlightWrite", s:gui08, s:gui01, s:cterm08, s:cterm01, "", "") +call hi("CocListMode", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "bold", "") +call hi("CocListPath", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "", "") +call hi("CocSessionsName", s:gui06, "", s:cterm05, "", "", "") + +" CSS +hi! link cssBraces ThemeBlue +hi! link cssFunctionName ThemeYellow +hi! link cssIdentifier ThemeOrange +hi! link cssClassName ThemeGreen +hi! link cssColor ThemeBlue +hi! link cssSelectorOp ThemeBlue +hi! link cssSelectorOp2 ThemeBlue +hi! link cssImportant ThemeGreen +hi! link cssVendor ThemeFg1 + +hi! link cssTextProp ThemeCyan +hi! link cssAnimationProp ThemeCyan +hi! link cssUIProp ThemeYellow +hi! link cssTransformProp ThemeCyan +hi! link cssTransitionProp ThemeCyan +hi! link cssPrintProp ThemeCyan +hi! link cssPositioningProp ThemeYellow +hi! link cssBoxProp ThemeCyan +hi! link cssFontDescriptorProp ThemeCyan +hi! link cssFlexibleBoxProp ThemeCyan +hi! link cssBorderOutlineProp ThemeCyan +hi! link cssBackgroundProp ThemeCyan +hi! link cssMarginProp ThemeCyan +hi! link cssListProp ThemeCyan +hi! link cssTableProp ThemeCyan +hi! link cssFontProp ThemeCyan +hi! link cssPaddingProp ThemeCyan +hi! link cssDimensionProp ThemeCyan +hi! link cssRenderProp ThemeCyan +hi! link cssColorProp ThemeCyan +hi! link cssGeneratedContentProp ThemeCyan + + +" CMP +hi! link CmpItemAbbrDeprecated Deprecated +hi! link CmpItemAbbrMatch SearchMatch +hi! link CmpItemAbbrMatchFuzzy SearchMatch +hi! link CmpItemKindClass Type +hi! link CmpItemKindColor Keyword +hi! link CmpItemKindConstant Constant +hi! link CmpItemKindConstructor Special +hi! link CmpItemKindEnum Type +hi! link CmpItemKindEnumMember Constant +hi! link CmpItemKindEvent Identifier +hi! link CmpItemKindField Character +hi! link CmpItemKindFile Directory +hi! link CmpItemKindFolder Directory +hi! link CmpItemKindFunction Function +hi! link CmpItemKindInterface Type +hi! link CmpItemKindKeyword Keyword +hi! link CmpItemKindMethod Function +hi! link CmpItemKindModule Namespace +hi! link CmpItemKindOperator Operator +hi! link CmpItemKindProperty Identifier +hi! link CmpItemKindReference Character +hi! link CmpItemKindSnippet String +hi! link CmpItemKindStruct Type +hi! link CmpItemKindText Text +hi! link CmpItemKindUnit Namespace +hi! link CmpItemKindValue Comment +hi! link CmpItemKindVariable Identifier + +if has("nvim-0.8.0") + hi! link CmpItemKindField @field + hi! link CmpItemKindProperty @property +endif + +" Diff +call hi("DiffAdd", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "") +call hi("DiffChange", s:gui06, s:gui01, s:cterm05, s:cterm01, "", "") +call hi("DiffDelete", s:gui02, s:guibg, s:cterm02, s:ctermbg, "", "") +call hi("DiffText", s:gui0D, s:gui01, s:cterm0D, s:cterm01, "", "") +call hi("DiffAdded", s:gui0B, s:guibg, s:cterm0B, s:ctermbg, "", "") +call hi("DiffFile", s:gui08, s:guibg, s:cterm08, s:ctermbg, "", "") +call hi("DiffNewFile", s:gui0B, s:guibg, s:cterm0B, s:ctermbg, "", "") +call hi("DiffLine", s:gui0D, s:guibg, s:cterm0D, s:ctermbg, "", "") +call hi("DiffRemoved", s:gui08, s:guibg, s:cterm08, s:ctermbg, "", "") + +" Git +call hi("gitcommitOverflow", s:gui08, "", s:cterm08, "", "", "") +call hi("gitcommitSummary", s:gui0B, "", s:cterm0B, "", "", "") +call hi("gitcommitComment", s:gui03, "", s:cterm03, "", "", "") +call hi("gitcommitUntracked", s:gui03, "", s:cterm03, "", "", "") +call hi("gitcommitDiscarded", s:gui03, "", s:cterm03, "", "", "") +call hi("gitcommitSelected", s:gui03, "", s:cterm03, "", "", "") +call hi("gitcommitHeader", s:gui0E, "", s:cterm0E, "", "", "") +call hi("gitcommitSelectedType", s:gui0D, "", s:cterm0D, "", "", "") +call hi("gitcommitUnmergedType", s:gui0D, "", s:cterm0D, "", "", "") +call hi("gitcommitDiscardedType", s:gui0D, "", s:cterm0D, "", "", "") +call hi("gitcommitBranch", s:gui09, "", s:cterm09, "", "bold", "") +call hi("gitcommitUntrackedFile", s:gui0A, "", s:cterm0A, "", "", "") +call hi("gitcommitUnmergedFile", s:gui08, "", s:cterm08, "", "bold", "") +call hi("gitcommitDiscardedFile", s:gui08, "", s:cterm08, "", "bold", "") +call hi("gitcommitSelectedFile", s:gui0B, "", s:cterm0B, "", "bold", "") + +" GitGutter +hi! link GitGutterAdd GitAddSign +hi! link GitGutterChange GitChangeSign +hi! link GitGutterDelete GitDeleteSign +hi! link GitGutterChangeDelete GitChangeDeleteSign + +" indent-blankline (nvim) +if has("nvim") + call hi("@ibl.indent.char.1",s:gui01, "", s:cterm01, "", "", "") +endif + +" HTML +call hi("htmlBold", s:gui07, "", s:cterm0A, "", "bold", "") +call hi("htmlItalic", s:gui06, "", s:cterm0E, "", "italic", "") +call hi("htmlEndTag", s:gui06, "", s:cterm05, "", "", "") +call hi("htmlTag", s:gui06, "", s:cterm05, "", "", "") + +" JavaScript +call hi("javaScript", s:gui06, "", s:cterm05, "", "", "") +call hi("javaScriptBraces", s:gui06, "", s:cterm05, "", "", "") +call hi("javaScriptNumber", s:gui09, "", s:cterm09, "", "", "") +" pangloss/vim-javascript +call hi("jsOperator", s:gui0D, "", s:cterm0D, "", "", "") +call hi("jsStatement", s:gui0E, "", s:cterm0E, "", "", "") +call hi("jsReturn", s:gui0E, "", s:cterm0E, "", "", "") +call hi("jsThis", s:gui08, "", s:cterm08, "", "", "") +call hi("jsClassDefinition", s:gui0A, "", s:cterm0A, "", "", "") +call hi("jsFunction", s:gui0E, "", s:cterm0E, "", "", "") +call hi("jsFuncName", s:gui0D, "", s:cterm0D, "", "", "") +call hi("jsFuncCall", s:gui0D, "", s:cterm0D, "", "", "") +call hi("jsClassFuncName", s:gui0D, "", s:cterm0D, "", "", "") +call hi("jsClassMethodType", s:gui0E, "", s:cterm0E, "", "", "") +call hi("jsRegexpString", s:gui0C, "", s:cterm0C, "", "", "") +call hi("jsGlobalObjects", s:gui0A, "", s:cterm0A, "", "", "") +call hi("jsGlobalNodeObjects", s:gui0A, "", s:cterm0A, "", "", "") +call hi("jsExceptions", s:gui0A, "", s:cterm0A, "", "", "") +call hi("jsBuiltins", s:gui0A, "", s:cterm0A, "", "", "") + +" Mail +call hi("mailQuoted1", s:gui0A, "", s:cterm0A, "", "", "") +call hi("mailQuoted2", s:gui0B, "", s:cterm0B, "", "", "") +call hi("mailQuoted3", s:gui0E, "", s:cterm0E, "", "", "") +call hi("mailQuoted4", s:gui0C, "", s:cterm0C, "", "", "") +call hi("mailQuoted5", s:gui0D, "", s:cterm0D, "", "", "") +call hi("mailQuoted6", s:gui0A, "", s:cterm0A, "", "", "") +call hi("mailURL", s:gui0D, "", s:cterm0D, "", "", "") +call hi("mailEmail", s:gui0D, "", s:cterm0D, "", "", "") + +" Markdown +call hi("markdownCode", s:gui0B, "", s:cterm0B, "", "", "") +call hi("markdownError", s:gui06, s:guibg, s:cterm05, s:ctermbg, "", "") +call hi("markdownCodeBlock", s:gui0B, "", s:cterm0B, "", "", "") +call hi("markdownHeadingDelimiter", s:gui0D, "", s:cterm0D, "", "", "") + +" Matchup +call hi("MatchWord", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "underline", "") + +" NERDTree +call hi("NERDTreeDirSlash", s:gui0D, "", s:cterm0D, "", "", "") +call hi("NERDTreeExecFile", s:gui06, "", s:cterm05, "", "", "") + +" Netrw +hi! link netrwDir ThemeCyan +hi! link netrwClassify ThemeCyan +hi! link netrwLink ThemeBg3 +hi! link netrwSymLink ThemeFg1 +hi! link netrwExe ThemeYellow +hi! link netrwComment ThemeBg3 +hi! link netrwList ThemeBlue +hi! link netrwHelpCmd ThemeCyan +hi! link netrwCmdSep ThemeFg3 +hi! link netrwVersion ThemeGreen + +" PHP +call hi("phpMemberSelector", s:gui06, "", s:cterm05, "", "", "") +call hi("phpComparison", s:gui06, "", s:cterm05, "", "", "") +call hi("phpParent", s:gui06, "", s:cterm05, "", "", "") +call hi("phpMethodsVar", s:gui0C, "", s:cterm0C, "", "", "") + +" Python +"call hi("pythonOperator", s:gui0E, "", s:cterm0E, "", "", "") +"call hi("pythonRepeat", s:gui0E, "", s:cterm0E, "", "", "") +"call hi("pythonInclude", s:gui0E, "", s:cterm0E, "", "", "") +"call hi("pythonStatement", s:gui0E, "", s:cterm0E, "", "", "") + +" hi! link pythonBuiltin ThemeCyan +" hi! link pythonBuiltinObj ThemeCyan +" hi! link pythonBuiltinFunc ThemeGreen +" hi! link pythonFunction Function +hi! link pythonDecorator ThemeYellow +hi! link pythonDecoratorName ThemeYellow +" hi! link pythonTripleQuotes ThemeGreenItalic +" hi! link pythonInclude ThemeBlue +" hi! link pythonImport ThemeBlue +" hi! link pythonRun ThemeBlue +" hi! link pythonCoding ThemeBlue +" hi! link pythonOperator ThemeRed +" hi! link pythonException ThemeRed +" hi! link pythonExceptions ThemeYellow +" hi! link pythonBoolean ThemeYellow +" hi! link pythonDot ThemeFg3 +" hi! link pythonConditional ThemeCyan +" hi! link pythonRepeat ThemeRed +" hi! link pythonDottedName ThemeGreen + + +" Ruby +call hi("rubyAttribute", s:gui0D, "", s:cterm0D, "", "", "") +call hi("rubyConstant", s:gui0A, "", s:cterm0A, "", "", "") +call hi("rubyInterpolationDelimiter", s:gui0F, "", s:cterm0F, "", "", "") +call hi("rubyRegexp", s:gui0C, "", s:cterm0C, "", "", "") +call hi("rubySymbol", s:gui0B, "", s:cterm0B, "", "", "") +call hi("rubyStringDelimiter", s:gui0B, "", s:cterm0B, "", "", "") + +" SASS +call hi("sassidChar", s:gui08, "", s:cterm08, "", "", "") +call hi("sassClassChar", s:gui09, "", s:cterm09, "", "", "") +call hi("sassInclude", s:gui0E, "", s:cterm0E, "", "", "") +call hi("sassMixing", s:gui0E, "", s:cterm0E, "", "", "") +call hi("sassMixinName", s:gui0D, "", s:cterm0D, "", "", "") + +" Signify +hi! link SignifySignAdd GitAddSign +hi! link SignifySignChange GitChangeSign +hi! link SignifySignDelete GitDeleteSign + +" Startify +call hi("StartifyBracket", s:gui03, "", s:cterm03, "", "", "") +call hi("StartifyFile", s:gui07, "", s:cterm07, "", "", "") +call hi("StartifyFooter", s:gui03, "", s:cterm03, "", "", "") +call hi("StartifyHeader", s:gui0B, "", s:cterm0B, "", "", "") +call hi("StartifyNumber", s:gui09, "", s:cterm09, "", "", "") +call hi("StartifyPath", s:gui03, "", s:cterm03, "", "", "") +call hi("StartifySection", s:gui0E, "", s:cterm0E, "", "", "") +call hi("StartifySelect", s:gui0C, "", s:cterm0C, "", "", "") +call hi("StartifySlash", s:gui03, "", s:cterm03, "", "", "") +call hi("StartifySpecial", s:gui03, "", s:cterm03, "", "", "") + +" LSP +if has("nvim") + hi! link DiagnosticError ErrorSign + hi! link DiagnosticWarn WarningSign + hi! link DiagnosticInfo InfoSign + hi! link DiagnosticHint HintSign + hi! link DiagnosticOk OkSign + + hi! link DiagnosticFloatingError ErrorFloat + hi! link DiagnosticFloatingWarn WarningFloat + hi! link DiagnosticFloatingInfo InfoFloat + hi! link DiagnosticFloatingHint HintFloat + hi! link DiagnosticFloatingOk OkFloat + + hi! link DiagnosticUnderlineError ErrorHighlight + hi! link DiagnosticUnderlineWarn WarningHighlight + hi! link DiagnosticUnderlineInfo InfoHighlight + hi! link DiagnosticUnderlineHint HintHighlight + hi! link DiagnosticUnderlineOk OkHighlight + + hi! link DiagnosticsVirtualTextError ErrorSign + hi! link DiagnosticsVirtualTextWarning WarningSign + hi! link DiagnosticsVirtualTextInfo InfoSign + hi! link DiagnosticsVirtualTextHint HintSign + hi! link DiagnosticsVirtualTextOk OkSign + + " Remove untill endif on next nvim release + hi! link LspDiagnosticsSignError ErrorSign + hi! link LspDiagnosticsSignWarning WarningSign + hi! link LspDiagnosticsSignInfo InfoSign + hi! link LspDiagnosticsSignHint HintSign + + hi! link LspDiagnosticsVirtualTextError ErrorSign + hi! link LspDiagnosticsVirtualTextWarning WarningSign + hi! link LspDiagnosticsVirtualTextInfo InfoSign + hi! link LspDiagnosticsVirtualTextHint HintSign + + hi! link LspDiagnosticsFloatingError ErrorFloat + hi! link LspDiagnosticsFloatingWarning WarningFloat + hi! link LspDiagnosticsFloatingInfo InfoFloat + hi! link LspDiagnosticsFloatingHint HintFloat + + hi! link LspDiagnosticsUnderlineError ErrorHighlight + hi! link LspDiagnosticsUnderlineWarning WarningHighlight + hi! link LspDiagnosticsUnderlineInfo InfoHighlight + hi! link LspDiagnosticsUnderlineHint HintHighlight + + hi! link LspReferenceText ReferenceText + hi! link LspReferenceRead ReferenceRead + hi! link LspReferenceWrite ReferenceWrite +endif + +" Java +call hi("javaOperator", s:gui0D, "", s:cterm0D, "", "", "") + +" JSON +hi! link jsonKeyword ThemeGreen +hi! link jsonQuote ThemeGreen +hi! link jsonBraces ThemeFg1 +hi! link jsonString ThemeFg1 + +" Markdown +hi! link markdownH1 ThemeRedBold +hi! link markdownH2 ThemeRed +hi! link markdownH3 ThemeRed +hi! link markdownH4 ThemeRed +hi! link markdownH5 ThemeRed +hi! link markdownH6 ThemeRed + +hi! link markdownCode ThemeYellow +hi! link markdownCodeBlock ThemeYellow +hi! link markdownCodeDelimiter ThemeYellow + +hi! link markdownBlockquote ThemeGrey +hi! link markdownListMarker ThemeBlue +hi! link markdownOrderedListMarker ThemeBlue +hi! link markdownRule ThemeGrey +hi! link markdownHeadingRule ThemeGrey + +hi! link markdownUrlDelimiter ThemeFg3 +hi! link markdownLinkDelimiter ThemeFg3 +hi! link markdownLinkTextDelimiter ThemeFg3 +hi! link markdownHeadingDelimiter ThemeOrange +hi! link markdownUrlTitleDelimiter ThemeGreen + +hi! link markdownLink ThemeGreen +hi! link markdownWikiLink ThemeViolet +hi! link markdownUrl ThemeOrange +hi! link markdownInlineUrl ThemeOrange + +hi! link markdownLinkText ThemeViolet +hi! link markdownIdDeclaration markdownLinkText + +"call s:HL('markdownItalic', s:fg3, s:none, s:italic) +"call s:HL('markdownLinkText', s:gray, s:none, s:underline) + + +" Remove functions +delf hi + +" Remove color variables +unlet s:gui00 s:gui01 s:gui02 s:gui03 s:gui04 s:gui05 s:gui06 s:gui07 s:gui08 s:gui09 s:gui0A s:gui0B s:gui0C s:gui0D s:gui0E s:gui0F s:guibg +unlet s:cterm00 s:cterm01 s:cterm02 s:cterm03 s:cterm04 s:cterm05 s:cterm06 s:cterm07 s:cterm08 s:cterm09 s:cterm0A s:cterm0B s:cterm0C s:cterm0D s:cterm0E s:cterm0F s:ctermbg diff --git a/apps/nvim/soft-grassland-monobiome-light.vim b/apps/nvim/soft-grassland-monobiome-light.vim new file mode 100644 index 0000000..ae3dbb7 --- /dev/null +++ b/apps/nvim/soft-grassland-monobiome-light.vim @@ -0,0 +1,882 @@ +" vi:syntax=vim +" +" Top-level remarks: +" +" - `hi` sets highlight colors for syntax groups, allowing one to specify fg and bg colors +" for GUI and terminal Vim. +" - `link` allows for linking one syntax group to another, reusing the same color +" settings. Language-specific groups can then point to one of the base color highlight +" groups, for example, without needing to repeat the raw color values. + +" GUI color definitions +let s:gui00 = "#b7c0bc" +let g:base16_gui00 = "#b7c0bc" +let s:gui01 = "#a8b0ad" +let g:base16_gui01 = "#a8b0ad" +let s:gui02 = "#98a19d" +let g:base16_gui02 = "#98a19d" +let s:gui03 = "#89918e" +let g:base16_gui03 = "#89918e" +let s:gui04 = "#29302d" +let g:base16_gui04 = "#29302d" +let s:gui05 = "#1d2321" +let g:base16_gui05 = "#1d2321" +let s:gui06 = "#111815" +let g:base16_gui06 = "#111815" +let s:gui07 = "#070d0a" +let g:base16_gui07 = "#070d0a" +let s:gui08 = "#9d1912" +let g:base16_gui08 = "#9d1912" +let s:gui09 = "#7c4706" +let g:base16_gui09 = "#7c4706" +let s:gui0A = "#5b572e" +let g:base16_gui0A = "#5b572e" +let s:gui0B = "#2e6337" +let g:base16_gui0B = "#2e6337" +let s:gui0C = "#2e6337" +let g:base16_gui0C = "#2e6337" +let s:gui0D = "#2d5299" +let g:base16_gui0D = "#2d5299" +let s:gui0E = "#2d5299" +let g:base16_gui0E = "#2d5299" +let s:gui0F = "#9d1912" +let g:base16_gui0F = "#9d1912" + +let s:grey = "#505754" + +" Terminal color definitions +let s:cterm00 = "00" +let g:base16_cterm00 = "00" +let s:cterm03 = "08" +let g:base16_cterm03 = "08" +let s:cterm05 = "07" +let g:base16_cterm05 = "07" +let s:cterm07 = "15" +let g:base16_cterm07 = "15" +let s:cterm08 = "01" +let g:base16_cterm08 = "01" +let s:cterm0A = "03" +let g:base16_cterm0A = "03" +let s:cterm0B = "02" +let g:base16_cterm0B = "02" +let s:cterm0C = "06" +let g:base16_cterm0C = "06" +let s:cterm0D = "04" +let g:base16_cterm0D = "04" +let s:cterm0E = "05" +let g:base16_cterm0E = "05" + +let s:cterm01 = "10" +let g:base16_cterm01 = "10" +let s:cterm02 = "11" +let g:base16_cterm02 = "11" +let s:cterm04 = "12" +let g:base16_cterm04 = "12" +let s:cterm06 = "13" +let g:base16_cterm06 = "13" +let s:cterm09 = "09" +let g:base16_cterm09 = "09" +let s:cterm0F = "14" +let g:base16_cterm0F = "14" + +" Neovim terminal colours +if has("nvim") + let g:terminal_color_0 = "#b7c0bc" + let g:terminal_color_1 = "#9d1912" + let g:terminal_color_2 = "#2e6337" + let g:terminal_color_3 = "#5b572e" + let g:terminal_color_4 = "#2d5299" + let g:terminal_color_5 = "#2d5299" + let g:terminal_color_6 = "#2e6337" + let g:terminal_color_7 = "#1d2321" + let g:terminal_color_8 = "#89918e" + let g:terminal_color_9 = "#9d1912" + let g:terminal_color_10 = "#2e6337" + let g:terminal_color_11 = "#5b572e" + let g:terminal_color_12 = "#2d5299" + let g:terminal_color_13 = "#2d5299" + let g:terminal_color_14 = "#2e6337" + let g:terminal_color_15 = "#070d0a" + let g:terminal_color_background = g:terminal_color_0 + let g:terminal_color_foreground = g:terminal_color_5 + + if &background == "light" + let g:terminal_color_background = g:terminal_color_7 + let g:terminal_color_foreground = g:terminal_color_2 + endif + +elseif has("terminal") + let g:terminal_ansi_colors = [ + \ "#b7c0bc", + \ "#9d1912", + \ "#2e6337", + \ "#5b572e", + \ "#2d5299", + \ "#2d5299", + \ "#2e6337", + \ "#1d2321", + \ "#89918e", + \ "#9d1912", + \ "#2e6337", + \ "#5b572e", + \ "#2d5299", + \ "#2d5299", + \ "#2e6337", + \ "#070d0a", + \ ] +endif + +let s:guibg = s:gui00 +let s:ctermbg = s:cterm00 + +" Theme setup +hi clear +syntax reset +let g:colors_name = "active" + +" Highlighting function +" Optional variables are attributes and guisp +function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) + " For a given syntax group, sets the GUI and terminal foreground and backgrounds + " Optional parameters are interpreted as `attr` and `guisp`, the first of which appears + " to be a modifier for the group (e.g., bold, italic), and `guisp` appears to be + " 'special' colors used for underlines in the GUI. + let l:attr = get(a:, 1, "") + let l:guisp = get(a:, 2, "") + + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + + if a:guifg != "" + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=" . a:guifg + endif + endif + + if a:guibg != "" + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=" . a:guibg + endif + endif + + if a:ctermfg != "" + exec "hi " . a:group . " ctermfg=" . a:ctermfg + endif + + if a:ctermbg != "" + exec "hi " . a:group . " ctermbg=" . a:ctermbg + endif + + if l:attr != "" + exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr + endif + + if l:guisp != "" + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=" . l:guisp + endif + endif +endfunction + + +fun hi(group, guifg, guibg, ctermfg, ctermbg, attr, guisp) + call g:Base16hi(a:group, a:guifg, a:guibg, a:ctermfg, a:ctermbg, a:attr, a:guisp) +endfun + + +" color groups for interpretability +call hi("ThemeBg0", s:gui00, "", s:cterm00, "", "", "") +call hi("ThemeBg1", s:gui01, "", s:cterm01, "", "", "") +call hi("ThemeBg2", s:gui02, "", s:cterm02, "", "", "") +call hi("ThemeBg3", s:gui03, "", s:cterm03, "", "", "") +call hi("ThemeFg3", s:gui04, "", s:cterm04, "", "", "") +call hi("ThemeFg2", s:gui05, "", s:cterm05, "", "", "") +call hi("ThemeFg1", s:gui06, "", s:cterm06, "", "", "") +call hi("ThemeFg0", s:gui07, "", s:cterm07, "", "", "") +" +call hi("ThemeRed", s:gui08, "", s:cterm08, "", "", "") +call hi("ThemeOrange", s:gui09, "", s:cterm09, "", "", "") +call hi("ThemeYellow", s:gui0A, "", s:cterm0A, "", "", "") +call hi("ThemeGreen", s:gui0B, "", s:cterm0B, "", "", "") +call hi("ThemeCyan", s:gui0C, "", s:cterm0C, "", "", "") +call hi("ThemeBlue", s:gui0D, "", s:cterm0D, "", "", "") +call hi("ThemeViolet", s:gui0E, "", s:cterm0E, "", "", "") +call hi("ThemeMagenta", s:gui0F, "", s:cterm0F, "", "", "") + +call hi("ThemeRedBold", s:gui08, "", s:cterm08, "", "bold", "") +call hi("ThemeOrangeBold", s:gui09, "", s:cterm09, "", "bold", "") +call hi("ThemeYellowBold", s:gui0A, "", s:cterm0A, "", "bold", "") +call hi("ThemeGreenBold", s:gui0B, "", s:cterm0B, "", "bold", "") +call hi("ThemeCyanBold", s:gui0C, "", s:cterm0C, "", "bold", "") +call hi("ThemeBlueBold", s:gui0D, "", s:cterm0D, "", "bold", "") +call hi("ThemeVioletBold", s:gui0E, "", s:cterm0E, "", "bold", "") +call hi("ThemeMagentaBold", s:gui0F, "", s:cterm0F, "", "bold", "") + +call hi("ThemeRedItalic", s:gui08, "", s:cterm08, "", "italic", "") +call hi("ThemeOrangeItalic", s:gui09, "", s:cterm09, "", "italic", "") +call hi("ThemeYellowItalic", s:gui0A, "", s:cterm0A, "", "italic", "") +call hi("ThemeGreenItalic", s:gui0B, "", s:cterm0B, "", "italic", "") +call hi("ThemeCyanItalic", s:gui0C, "", s:cterm0C, "", "italic", "") +call hi("ThemeBlueItalic", s:gui0D, "", s:cterm0D, "", "italic", "") +call hi("ThemeVioletItalic", s:gui0E, "", s:cterm0E, "", "italic", "") +call hi("ThemeMagentaItalic", s:gui0F, "", s:cterm0F, "", "italic", "") + +call hi("ThemeGrey", s:grey, "", s:cterm03, "", "", "") +call hi("ThemeGreyItalic", s:grey, "", s:cterm03, "", "italic", "") + + +" Vim editor colors +call hi("Normal", s:gui05, s:guibg, s:cterm05, s:ctermbg, "", "") +call hi("Bold", "", "", "", "", "bold", "") +call hi("Debug", s:gui08, "", s:cterm08, "", "", "") +call hi("Directory", s:gui0D, "", s:cterm0D, "", "", "") +call hi("Error", s:guibg, s:gui08, s:ctermbg, s:cterm08, "", "") +call hi("ErrorMsg", s:gui08, s:guibg, s:cterm08, s:ctermbg, "", "") +call hi("Exception", s:gui08, "", s:cterm08, "", "", "") +call hi("FoldColumn", s:gui03, s:guibg, s:cterm03, s:ctermbg, "", "") +call hi("Folded", s:gui02, s:guibg, s:cterm02, s:ctermbg, "", "") +call hi("IncSearch", s:gui01, s:gui09, s:cterm01, s:cterm09, "none", "") +call hi("Italic", "", "", "", "", "italic", "") +call hi("Macro", s:gui0C, "", s:cterm0C, "", "", "") +call hi("MatchParen", "", s:gui03, "", s:cterm03, "", "") +call hi("ModeMsg", s:gui0B, "", s:cterm0B, "", "", "") +call hi("MoreMsg", s:gui0B, "", s:cterm0B, "", "", "") +call hi("Question", s:gui0D, "", s:cterm0D, "", "", "") +call hi("Search", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "", "") +call hi("Substitute", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "none", "") +call hi("SpecialKey", s:gui03, "", s:cterm03, "", "", "") +call hi("TooLong", s:gui08, "", s:cterm08, "", "", "") +call hi("Underlined", "", "", "", "", "underline", "fg") +call hi("Visual", "", s:gui02, "", s:cterm02, "", "") +call hi("VisualNOS", s:gui08, "", s:cterm08, "", "", "") +call hi("WarningMsg", s:gui08, "", s:cterm08, "", "", "") +call hi("WildMenu", s:guibg, s:gui06, s:ctermbg, s:cterm05, "", "") +call hi("Title", s:gui0D, "", s:cterm0D, "", "none", "") +call hi("Conceal", s:gui0D, s:guibg, s:cterm0D, s:ctermbg, "", "") +call hi("Cursor", s:gui05, s:guibg, "", "", "inverse", "") +call hi("NonText", s:gui03, "", s:cterm03, "", "", "") +call hi("Whitespace", s:gui03, "", s:cterm03, "", "", "") +call hi("LineNr", s:gui03, s:guibg, s:cterm03, s:ctermbg, "", "") +call hi("SignColumn", s:gui03, s:guibg, s:cterm03, s:ctermbg, "", "") +call hi("StatusLine", s:gui07, s:gui01, s:cterm07, s:cterm01, "none", "") +call hi("StatusLineNC", s:gui06, s:gui01, s:cterm05, s:cterm01, "none", "") +call hi("VertSplit", s:gui01, s:guibg, s:cterm01, s:ctermbg, "none", "") +call hi("ColorColumn", "", s:gui01, "", s:cterm01, "none", "") +call hi("CursorColumn", "", s:gui01, "", s:cterm01, "none", "") +call hi("CursorLine", "", s:gui01, "", s:cterm01, "none", "") +call hi("CursorLineNr", s:gui04, s:gui01, s:cterm04, s:cterm01, "bold", "") +call hi("QuickFixLine", "", s:gui01, "", s:cterm01, "none", "") +call hi("PMenu", s:gui06, s:gui01, s:cterm06, s:cterm01, "none", "") +call hi("PMenuSel", s:gui06, s:gui02, s:cterm06, s:cterm02, "", "") +call hi("PMenuSbar", "", s:gui03, "", s:cterm03, "", "") +call hi("PMenuThumb", "", s:gui04, "", s:cterm04, "", "") +call hi("TabLine", s:gui03, s:gui01, s:cterm03, s:cterm01, "none", "") +call hi("TabLineFill", s:gui03, s:gui01, s:cterm03, s:cterm01, "none", "") +call hi("TabLineSel", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "none", "") + +" Standard syntax +hi! link Boolean ThemeOrange +hi! link Character ThemeRed + +"call hi("Comment", s:gui03, "", s:cterm03, "", "italic", "") +hi! link Comment ThemeGreyItalic + +hi! link Conditional ThemeRed +hi! link Constant ThemeOrange +call hi("Define", s:gui0E, "", s:cterm0E, "", "none", "") +hi! link Delimiter ThemeFg1 + +if has("patch-8.0.1038") + call hi("Deprecated", "", "", "", "", "strikethrough", "") +endif + +hi! link Float ThemeOrange +hi! link Function ThemeBlue +call hi("Identifier", s:gui06, "", s:cterm05, "", "none", "") +hi! link Include ThemeBlue +hi! link Constant ThemeOrange +call hi("Keyword", s:gui0E, "", s:cterm0E, "", "none", "") +hi! link Label ThemeOrange +hi! link Number ThemeOrange +hi! link Operator ThemeYellow +hi! link PreProc ThemeOrange +hi! link Repeat ThemeViolet +hi! link Special ThemeYellow +hi! link SpecialChar ThemeMagenta +hi! link Statement ThemeRed +hi! link StorageClass ThemeOrange +hi! link String ThemeGreen +hi! link Structure ThemeOrange +hi! link Tag ThemeOrange + +call hi("Todo", s:gui08, s:guibg, s:cterm08, s:ctermbg, "italic", "") +call hi("Type", s:gui0A, "", s:cterm0A, "", "none", "") + +hi! link Typedef ThemeOrange + + +" Treesitter +if has("nvim-0.8.0") + call hi("@field", s:gui08, "", s:cterm08, "", "", "") + call hi("@property", s:gui08, "", s:cterm08, "", "", "") + call hi("@namespace", s:gui06, "", s:cterm05, "", "italic", "") + call hi("@variable.builtin", s:gui06, "", s:cterm05, "", "italic", "") + call hi("@text.reference", s:gui08, "", s:cterm08, "", "", "") + call hi("@text.uri", s:gui08, "", s:cterm08, "", "italic", "") + + " Annotations & Attributes + call hi("@annotation", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@attribute", s:gui0D, "", s:cterm0D, "", "", "") + + " Booleans, Characters & Comments + call hi("@boolean", s:gui09, "", s:cterm09, "", "", "") + call hi("@character", s:gui08, "", s:cterm08, "", "", "") + call hi("@character.special", s:gui0F, "", s:cterm0F, "", "", "") + call hi("@comment", s:gui03, "", s:cterm03, "", "", "") + + " Conditionals, Constants & Debugging + call hi("@keyword.conditional", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@constant", s:gui09, "", s:cterm09, "", "", "") + call hi("@constant.builtin", s:gui09, "", s:cterm09, "", "", "") + call hi("@constant.macro", s:gui08, "", s:cterm08, "", "", "") + call hi("@keyword.debug", s:gui08, "", s:cterm08, "", "", "") + + " Directives & Exceptions + call hi("@keyword.directive.define", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@keyword.exception", s:gui0E, "", s:cterm0E, "", "", "") + + " Floats & Functions + call hi("@number.float", s:gui09, "", s:cterm09, "", "", "") + call hi("@function", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@function.builtin", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@function.call", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@function.macro", s:gui08, "", s:cterm08, "", "", "") + + " Imports, Operators & Returns + call hi("@keyword.import", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@keyword.coroutine", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@keyword.operator", s:gui06, "", s:cterm05, "", "", "") + call hi("@keyword.return", s:gui0E, "", s:cterm0E, "", "", "") + + " Methods & Namespaces + call hi("@function.method", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@function.method.call", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@namespace.builtin", s:gui0E, "", s:cterm0E, "", "", "") + + " Numbers & Directives + call hi("@none", s:gui06, "", s:cterm05, "", "", "") + call hi("@number", s:gui09, "", s:cterm09, "", "", "") + call hi("@keyword.directive", s:gui0E, "", s:cterm0E, "", "", "") + + " Repeats, Storage & Strings + call hi("@keyword.repeat", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@keyword.storage", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@string", s:gui0B, "", s:cterm0B, "", "", "") + + " Tags & Markup + call hi("@markup.link.label", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.link.label.symbol", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@tag", s:gui08, "", s:cterm08, "", "", "") + call hi("@tag.attribute", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@tag.delimiter", s:gui0F, "", s:cterm0F, "", "", "") + + " More Markup + call hi("@markup", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.environment", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.environment.name", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.raw", s:gui09, "", s:cterm09, "", "", "") + call hi("@markup.math", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.strong", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.emphasis", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.strikethrough", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.underline", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.heading", s:gui0D, "", s:cterm0D, "", "", "") + + " Comments & Types + call hi("@comment.note", s:gui03, "", s:cterm03, "", "", "") + call hi("@comment.error", s:gui08, "", s:cterm08, "", "", "") + call hi("@comment.hint", s:gui0B, "", s:cterm0B, "", "", "") + call hi("@comment.info", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@comment.warning", s:gui09, "", s:cterm09, "", "", "") + call hi("@comment.todo", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.link.url", s:gui09, "", s:cterm09, "", "", "") + call hi("@type", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@type.definition", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@type.qualifier", s:gui0E, "", s:cterm0E, "", "", "") +endif + +" Standard highlights to be used by plugins +if has("patch-8.0.1038") + call hi("Deprecated", "", "", "", "", "strikethrough", "") +endif +call hi("SearchMatch", s:gui0C, "", s:cterm0C, "", "", "") + +call hi("GitAddSign", s:gui0B, "", s:cterm0B, "", "", "") +call hi("GitChangeSign", s:gui04, "", s:cterm04, "", "", "") +call hi("GitDeleteSign", s:gui08, "", s:cterm08, "", "", "") +call hi("GitChangeDeleteSign", s:gui04, "", s:cterm04, "", "", "") + +call hi("ErrorSign", s:gui08, "", s:cterm08, "", "", "") +call hi("WarningSign", s:gui09, "", s:cterm09, "", "", "") +call hi("InfoSign", s:gui0D, "", s:cterm0D, "", "", "") +call hi("HintSign", s:gui0C, "", s:cterm0C, "", "", "") +call hi("OkSign", s:gui0B, "", s:cterm0B, "", "", "") + +call hi("ErrorFloat", s:gui08, s:gui01, s:cterm08, s:cterm01, "", "") +call hi("WarningFloat", s:gui09, s:gui01, s:cterm09, s:cterm01, "", "") +call hi("InfoFloat", s:gui0D, s:gui01, s:cterm0D, s:cterm01, "", "") +call hi("HintFloat", s:gui0C, s:gui01, s:cterm0C, s:cterm01, "", "") +call hi("OkFloat", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "") + +call hi("ErrorHighlight", "", "", s:ctermbg, s:cterm08, "underline", s:gui08) +call hi("WarningHighlight", "", "", s:ctermbg, s:cterm09, "underline", s:gui09) +call hi("InfoHighlight", "", "", s:ctermbg, s:cterm0D, "underline", s:gui0D) +call hi("HintHighlight", "", "", s:ctermbg, s:cterm0C, "underline", s:gui0C) +call hi("OkHighlight", "", "", s:ctermbg, s:cterm0B, "underline", s:gui0B) + +call hi("SpellBad", "", "", s:ctermbg, s:cterm08, "undercurl", s:gui08) +call hi("SpellLocal", "", "", s:ctermbg, s:cterm0C, "undercurl", s:gui0C) +call hi("SpellCap", "", "", s:ctermbg, s:cterm0D, "undercurl", s:gui0D) +call hi("SpellRare", "", "", s:ctermbg, s:cterm0E, "undercurl", s:gui0E) + +call hi("ReferenceText", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "", "") +call hi("ReferenceRead", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "", "") +call hi("ReferenceWrite", s:gui01, s:gui08, s:cterm01, s:cterm08, "", "") + +" C +call hi("cOperator", s:gui0C, "", s:cterm0C, "", "", "") +call hi("cPreCondit", s:gui0E, "", s:cterm0E, "", "", "") + +" C# +call hi("csClass", s:gui0A, "", s:cterm0A, "", "", "") +call hi("csAttribute", s:gui0A, "", s:cterm0A, "", "", "") +call hi("csModifier", s:gui0E, "", s:cterm0E, "", "", "") +call hi("csType", s:gui08, "", s:cterm08, "", "", "") +call hi("csUnspecifiedStatement", s:gui0D, "", s:cterm0D, "", "", "") +call hi("csContextualStatement", s:gui0E, "", s:cterm0E, "", "", "") +call hi("csNewDecleration", s:gui08, "", s:cterm08, "", "", "") + +" Clap +hi! link ClapInput ColorColumn +hi! link ClapSpinner ColorColumn +hi! link ClapDisplay Default +hi! link ClapPreview ColorColumn +hi! link ClapCurrentSelection CursorLine +hi! link ClapNoMatchesFound ErrorFloat + +" Coc +hi! link CocErrorSign ErrorSign +hi! link CocWarningSign WarningSign +hi! link CocInfoSign InfoSign +hi! link CocHintSign HintSign + +hi! link CocErrorFloat ErrorFloat +hi! link CocWarningFloat WarningFloat +hi! link CocInfoFloat InfoFloat +hi! link CocHintFloat HintFloat + +hi! link CocErrorHighlight ErrorHighlight +hi! link CocWarningHighlight WarningHighlight +hi! link CocInfoHighlight InfoHighlight +hi! link CocHintHighlight HintHighlight + +hi! link CocSem_angle Keyword +hi! link CocSem_annotation Keyword +hi! link CocSem_attribute Type +hi! link CocSem_bitwise Keyword +hi! link CocSem_boolean Boolean +hi! link CocSem_brace Normal +hi! link CocSem_bracket Normal +hi! link CocSem_builtinAttribute Type +hi! link CocSem_builtinType Type +hi! link CocSem_character String +hi! link CocSem_class Structure +hi! link CocSem_colon Normal +hi! link CocSem_comma Normal +hi! link CocSem_comment Comment +hi! link CocSem_comparison Keyword +hi! link CocSem_concept Keyword +hi! link CocSem_constParameter Identifier +hi! link CocSem_dependent Keyword +hi! link CocSem_dot Keyword +hi! link CocSem_enum Structure +hi! link CocSem_enumMember Constant +hi! link CocSem_escapeSequence Type +hi! link CocSem_event Identifier +hi! link CocSem_formatSpecifier Type +hi! link CocSem_function Function +hi! link CocSem_interface Type +hi! link CocSem_keyword Keyword +hi! link CocSem_label Keyword +hi! link CocSem_logical Keyword +hi! link CocSem_macro Macro +hi! link CocSem_method Function +hi! link CocSem_modifier Keyword +hi! link CocSem_namespace Identifier +hi! link CocSem_number Number +hi! link CocSem_operator Operator +hi! link CocSem_parameter Identifier +hi! link CocSem_parenthesis Normal +hi! link CocSem_property Identifier +hi! link CocSem_punctuation Keyword +hi! link CocSem_regexp Type +hi! link CocSem_selfKeyword Constant +hi! link CocSem_semicolon Normal +hi! link CocSem_string String +hi! link CocSem_struct Structure +hi! link CocSem_type Type +hi! link CocSem_typeAlias Type +hi! link CocSem_typeParameter Type +hi! link CocSem_unknown Normal +hi! link CocSem_variable Identifier + +call hi("CocHighlightRead", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "") +call hi("CocHighlightText", s:gui0A, s:gui01, s:cterm0A, s:cterm01, "", "") +call hi("CocHighlightWrite", s:gui08, s:gui01, s:cterm08, s:cterm01, "", "") +call hi("CocListMode", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "bold", "") +call hi("CocListPath", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "", "") +call hi("CocSessionsName", s:gui06, "", s:cterm05, "", "", "") + +" CSS +hi! link cssBraces ThemeBlue +hi! link cssFunctionName ThemeYellow +hi! link cssIdentifier ThemeOrange +hi! link cssClassName ThemeGreen +hi! link cssColor ThemeBlue +hi! link cssSelectorOp ThemeBlue +hi! link cssSelectorOp2 ThemeBlue +hi! link cssImportant ThemeGreen +hi! link cssVendor ThemeFg1 + +hi! link cssTextProp ThemeCyan +hi! link cssAnimationProp ThemeCyan +hi! link cssUIProp ThemeYellow +hi! link cssTransformProp ThemeCyan +hi! link cssTransitionProp ThemeCyan +hi! link cssPrintProp ThemeCyan +hi! link cssPositioningProp ThemeYellow +hi! link cssBoxProp ThemeCyan +hi! link cssFontDescriptorProp ThemeCyan +hi! link cssFlexibleBoxProp ThemeCyan +hi! link cssBorderOutlineProp ThemeCyan +hi! link cssBackgroundProp ThemeCyan +hi! link cssMarginProp ThemeCyan +hi! link cssListProp ThemeCyan +hi! link cssTableProp ThemeCyan +hi! link cssFontProp ThemeCyan +hi! link cssPaddingProp ThemeCyan +hi! link cssDimensionProp ThemeCyan +hi! link cssRenderProp ThemeCyan +hi! link cssColorProp ThemeCyan +hi! link cssGeneratedContentProp ThemeCyan + + +" CMP +hi! link CmpItemAbbrDeprecated Deprecated +hi! link CmpItemAbbrMatch SearchMatch +hi! link CmpItemAbbrMatchFuzzy SearchMatch +hi! link CmpItemKindClass Type +hi! link CmpItemKindColor Keyword +hi! link CmpItemKindConstant Constant +hi! link CmpItemKindConstructor Special +hi! link CmpItemKindEnum Type +hi! link CmpItemKindEnumMember Constant +hi! link CmpItemKindEvent Identifier +hi! link CmpItemKindField Character +hi! link CmpItemKindFile Directory +hi! link CmpItemKindFolder Directory +hi! link CmpItemKindFunction Function +hi! link CmpItemKindInterface Type +hi! link CmpItemKindKeyword Keyword +hi! link CmpItemKindMethod Function +hi! link CmpItemKindModule Namespace +hi! link CmpItemKindOperator Operator +hi! link CmpItemKindProperty Identifier +hi! link CmpItemKindReference Character +hi! link CmpItemKindSnippet String +hi! link CmpItemKindStruct Type +hi! link CmpItemKindText Text +hi! link CmpItemKindUnit Namespace +hi! link CmpItemKindValue Comment +hi! link CmpItemKindVariable Identifier + +if has("nvim-0.8.0") + hi! link CmpItemKindField @field + hi! link CmpItemKindProperty @property +endif + +" Diff +call hi("DiffAdd", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "") +call hi("DiffChange", s:gui06, s:gui01, s:cterm05, s:cterm01, "", "") +call hi("DiffDelete", s:gui02, s:guibg, s:cterm02, s:ctermbg, "", "") +call hi("DiffText", s:gui0D, s:gui01, s:cterm0D, s:cterm01, "", "") +call hi("DiffAdded", s:gui0B, s:guibg, s:cterm0B, s:ctermbg, "", "") +call hi("DiffFile", s:gui08, s:guibg, s:cterm08, s:ctermbg, "", "") +call hi("DiffNewFile", s:gui0B, s:guibg, s:cterm0B, s:ctermbg, "", "") +call hi("DiffLine", s:gui0D, s:guibg, s:cterm0D, s:ctermbg, "", "") +call hi("DiffRemoved", s:gui08, s:guibg, s:cterm08, s:ctermbg, "", "") + +" Git +call hi("gitcommitOverflow", s:gui08, "", s:cterm08, "", "", "") +call hi("gitcommitSummary", s:gui0B, "", s:cterm0B, "", "", "") +call hi("gitcommitComment", s:gui03, "", s:cterm03, "", "", "") +call hi("gitcommitUntracked", s:gui03, "", s:cterm03, "", "", "") +call hi("gitcommitDiscarded", s:gui03, "", s:cterm03, "", "", "") +call hi("gitcommitSelected", s:gui03, "", s:cterm03, "", "", "") +call hi("gitcommitHeader", s:gui0E, "", s:cterm0E, "", "", "") +call hi("gitcommitSelectedType", s:gui0D, "", s:cterm0D, "", "", "") +call hi("gitcommitUnmergedType", s:gui0D, "", s:cterm0D, "", "", "") +call hi("gitcommitDiscardedType", s:gui0D, "", s:cterm0D, "", "", "") +call hi("gitcommitBranch", s:gui09, "", s:cterm09, "", "bold", "") +call hi("gitcommitUntrackedFile", s:gui0A, "", s:cterm0A, "", "", "") +call hi("gitcommitUnmergedFile", s:gui08, "", s:cterm08, "", "bold", "") +call hi("gitcommitDiscardedFile", s:gui08, "", s:cterm08, "", "bold", "") +call hi("gitcommitSelectedFile", s:gui0B, "", s:cterm0B, "", "bold", "") + +" GitGutter +hi! link GitGutterAdd GitAddSign +hi! link GitGutterChange GitChangeSign +hi! link GitGutterDelete GitDeleteSign +hi! link GitGutterChangeDelete GitChangeDeleteSign + +" indent-blankline (nvim) +if has("nvim") + call hi("@ibl.indent.char.1",s:gui01, "", s:cterm01, "", "", "") +endif + +" HTML +call hi("htmlBold", s:gui07, "", s:cterm0A, "", "bold", "") +call hi("htmlItalic", s:gui06, "", s:cterm0E, "", "italic", "") +call hi("htmlEndTag", s:gui06, "", s:cterm05, "", "", "") +call hi("htmlTag", s:gui06, "", s:cterm05, "", "", "") + +" JavaScript +call hi("javaScript", s:gui06, "", s:cterm05, "", "", "") +call hi("javaScriptBraces", s:gui06, "", s:cterm05, "", "", "") +call hi("javaScriptNumber", s:gui09, "", s:cterm09, "", "", "") +" pangloss/vim-javascript +call hi("jsOperator", s:gui0D, "", s:cterm0D, "", "", "") +call hi("jsStatement", s:gui0E, "", s:cterm0E, "", "", "") +call hi("jsReturn", s:gui0E, "", s:cterm0E, "", "", "") +call hi("jsThis", s:gui08, "", s:cterm08, "", "", "") +call hi("jsClassDefinition", s:gui0A, "", s:cterm0A, "", "", "") +call hi("jsFunction", s:gui0E, "", s:cterm0E, "", "", "") +call hi("jsFuncName", s:gui0D, "", s:cterm0D, "", "", "") +call hi("jsFuncCall", s:gui0D, "", s:cterm0D, "", "", "") +call hi("jsClassFuncName", s:gui0D, "", s:cterm0D, "", "", "") +call hi("jsClassMethodType", s:gui0E, "", s:cterm0E, "", "", "") +call hi("jsRegexpString", s:gui0C, "", s:cterm0C, "", "", "") +call hi("jsGlobalObjects", s:gui0A, "", s:cterm0A, "", "", "") +call hi("jsGlobalNodeObjects", s:gui0A, "", s:cterm0A, "", "", "") +call hi("jsExceptions", s:gui0A, "", s:cterm0A, "", "", "") +call hi("jsBuiltins", s:gui0A, "", s:cterm0A, "", "", "") + +" Mail +call hi("mailQuoted1", s:gui0A, "", s:cterm0A, "", "", "") +call hi("mailQuoted2", s:gui0B, "", s:cterm0B, "", "", "") +call hi("mailQuoted3", s:gui0E, "", s:cterm0E, "", "", "") +call hi("mailQuoted4", s:gui0C, "", s:cterm0C, "", "", "") +call hi("mailQuoted5", s:gui0D, "", s:cterm0D, "", "", "") +call hi("mailQuoted6", s:gui0A, "", s:cterm0A, "", "", "") +call hi("mailURL", s:gui0D, "", s:cterm0D, "", "", "") +call hi("mailEmail", s:gui0D, "", s:cterm0D, "", "", "") + +" Markdown +call hi("markdownCode", s:gui0B, "", s:cterm0B, "", "", "") +call hi("markdownError", s:gui06, s:guibg, s:cterm05, s:ctermbg, "", "") +call hi("markdownCodeBlock", s:gui0B, "", s:cterm0B, "", "", "") +call hi("markdownHeadingDelimiter", s:gui0D, "", s:cterm0D, "", "", "") + +" Matchup +call hi("MatchWord", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "underline", "") + +" NERDTree +call hi("NERDTreeDirSlash", s:gui0D, "", s:cterm0D, "", "", "") +call hi("NERDTreeExecFile", s:gui06, "", s:cterm05, "", "", "") + +" Netrw +hi! link netrwDir ThemeCyan +hi! link netrwClassify ThemeCyan +hi! link netrwLink ThemeBg3 +hi! link netrwSymLink ThemeFg1 +hi! link netrwExe ThemeYellow +hi! link netrwComment ThemeBg3 +hi! link netrwList ThemeBlue +hi! link netrwHelpCmd ThemeCyan +hi! link netrwCmdSep ThemeFg3 +hi! link netrwVersion ThemeGreen + +" PHP +call hi("phpMemberSelector", s:gui06, "", s:cterm05, "", "", "") +call hi("phpComparison", s:gui06, "", s:cterm05, "", "", "") +call hi("phpParent", s:gui06, "", s:cterm05, "", "", "") +call hi("phpMethodsVar", s:gui0C, "", s:cterm0C, "", "", "") + +" Python +"call hi("pythonOperator", s:gui0E, "", s:cterm0E, "", "", "") +"call hi("pythonRepeat", s:gui0E, "", s:cterm0E, "", "", "") +"call hi("pythonInclude", s:gui0E, "", s:cterm0E, "", "", "") +"call hi("pythonStatement", s:gui0E, "", s:cterm0E, "", "", "") + +" hi! link pythonBuiltin ThemeCyan +" hi! link pythonBuiltinObj ThemeCyan +" hi! link pythonBuiltinFunc ThemeGreen +" hi! link pythonFunction Function +hi! link pythonDecorator ThemeYellow +hi! link pythonDecoratorName ThemeYellow +" hi! link pythonTripleQuotes ThemeGreenItalic +" hi! link pythonInclude ThemeBlue +" hi! link pythonImport ThemeBlue +" hi! link pythonRun ThemeBlue +" hi! link pythonCoding ThemeBlue +" hi! link pythonOperator ThemeRed +" hi! link pythonException ThemeRed +" hi! link pythonExceptions ThemeYellow +" hi! link pythonBoolean ThemeYellow +" hi! link pythonDot ThemeFg3 +" hi! link pythonConditional ThemeCyan +" hi! link pythonRepeat ThemeRed +" hi! link pythonDottedName ThemeGreen + + +" Ruby +call hi("rubyAttribute", s:gui0D, "", s:cterm0D, "", "", "") +call hi("rubyConstant", s:gui0A, "", s:cterm0A, "", "", "") +call hi("rubyInterpolationDelimiter", s:gui0F, "", s:cterm0F, "", "", "") +call hi("rubyRegexp", s:gui0C, "", s:cterm0C, "", "", "") +call hi("rubySymbol", s:gui0B, "", s:cterm0B, "", "", "") +call hi("rubyStringDelimiter", s:gui0B, "", s:cterm0B, "", "", "") + +" SASS +call hi("sassidChar", s:gui08, "", s:cterm08, "", "", "") +call hi("sassClassChar", s:gui09, "", s:cterm09, "", "", "") +call hi("sassInclude", s:gui0E, "", s:cterm0E, "", "", "") +call hi("sassMixing", s:gui0E, "", s:cterm0E, "", "", "") +call hi("sassMixinName", s:gui0D, "", s:cterm0D, "", "", "") + +" Signify +hi! link SignifySignAdd GitAddSign +hi! link SignifySignChange GitChangeSign +hi! link SignifySignDelete GitDeleteSign + +" Startify +call hi("StartifyBracket", s:gui03, "", s:cterm03, "", "", "") +call hi("StartifyFile", s:gui07, "", s:cterm07, "", "", "") +call hi("StartifyFooter", s:gui03, "", s:cterm03, "", "", "") +call hi("StartifyHeader", s:gui0B, "", s:cterm0B, "", "", "") +call hi("StartifyNumber", s:gui09, "", s:cterm09, "", "", "") +call hi("StartifyPath", s:gui03, "", s:cterm03, "", "", "") +call hi("StartifySection", s:gui0E, "", s:cterm0E, "", "", "") +call hi("StartifySelect", s:gui0C, "", s:cterm0C, "", "", "") +call hi("StartifySlash", s:gui03, "", s:cterm03, "", "", "") +call hi("StartifySpecial", s:gui03, "", s:cterm03, "", "", "") + +" LSP +if has("nvim") + hi! link DiagnosticError ErrorSign + hi! link DiagnosticWarn WarningSign + hi! link DiagnosticInfo InfoSign + hi! link DiagnosticHint HintSign + hi! link DiagnosticOk OkSign + + hi! link DiagnosticFloatingError ErrorFloat + hi! link DiagnosticFloatingWarn WarningFloat + hi! link DiagnosticFloatingInfo InfoFloat + hi! link DiagnosticFloatingHint HintFloat + hi! link DiagnosticFloatingOk OkFloat + + hi! link DiagnosticUnderlineError ErrorHighlight + hi! link DiagnosticUnderlineWarn WarningHighlight + hi! link DiagnosticUnderlineInfo InfoHighlight + hi! link DiagnosticUnderlineHint HintHighlight + hi! link DiagnosticUnderlineOk OkHighlight + + hi! link DiagnosticsVirtualTextError ErrorSign + hi! link DiagnosticsVirtualTextWarning WarningSign + hi! link DiagnosticsVirtualTextInfo InfoSign + hi! link DiagnosticsVirtualTextHint HintSign + hi! link DiagnosticsVirtualTextOk OkSign + + " Remove untill endif on next nvim release + hi! link LspDiagnosticsSignError ErrorSign + hi! link LspDiagnosticsSignWarning WarningSign + hi! link LspDiagnosticsSignInfo InfoSign + hi! link LspDiagnosticsSignHint HintSign + + hi! link LspDiagnosticsVirtualTextError ErrorSign + hi! link LspDiagnosticsVirtualTextWarning WarningSign + hi! link LspDiagnosticsVirtualTextInfo InfoSign + hi! link LspDiagnosticsVirtualTextHint HintSign + + hi! link LspDiagnosticsFloatingError ErrorFloat + hi! link LspDiagnosticsFloatingWarning WarningFloat + hi! link LspDiagnosticsFloatingInfo InfoFloat + hi! link LspDiagnosticsFloatingHint HintFloat + + hi! link LspDiagnosticsUnderlineError ErrorHighlight + hi! link LspDiagnosticsUnderlineWarning WarningHighlight + hi! link LspDiagnosticsUnderlineInfo InfoHighlight + hi! link LspDiagnosticsUnderlineHint HintHighlight + + hi! link LspReferenceText ReferenceText + hi! link LspReferenceRead ReferenceRead + hi! link LspReferenceWrite ReferenceWrite +endif + +" Java +call hi("javaOperator", s:gui0D, "", s:cterm0D, "", "", "") + +" JSON +hi! link jsonKeyword ThemeGreen +hi! link jsonQuote ThemeGreen +hi! link jsonBraces ThemeFg1 +hi! link jsonString ThemeFg1 + +" Markdown +hi! link markdownH1 ThemeRedBold +hi! link markdownH2 ThemeRed +hi! link markdownH3 ThemeRed +hi! link markdownH4 ThemeRed +hi! link markdownH5 ThemeRed +hi! link markdownH6 ThemeRed + +hi! link markdownCode ThemeYellow +hi! link markdownCodeBlock ThemeYellow +hi! link markdownCodeDelimiter ThemeYellow + +hi! link markdownBlockquote ThemeGrey +hi! link markdownListMarker ThemeBlue +hi! link markdownOrderedListMarker ThemeBlue +hi! link markdownRule ThemeGrey +hi! link markdownHeadingRule ThemeGrey + +hi! link markdownUrlDelimiter ThemeFg3 +hi! link markdownLinkDelimiter ThemeFg3 +hi! link markdownLinkTextDelimiter ThemeFg3 +hi! link markdownHeadingDelimiter ThemeOrange +hi! link markdownUrlTitleDelimiter ThemeGreen + +hi! link markdownLink ThemeGreen +hi! link markdownWikiLink ThemeViolet +hi! link markdownUrl ThemeOrange +hi! link markdownInlineUrl ThemeOrange + +hi! link markdownLinkText ThemeViolet +hi! link markdownIdDeclaration markdownLinkText + +"call s:HL('markdownItalic', s:fg3, s:none, s:italic) +"call s:HL('markdownLinkText', s:gray, s:none, s:underline) + + +" Remove functions +delf hi + +" Remove color variables +unlet s:gui00 s:gui01 s:gui02 s:gui03 s:gui04 s:gui05 s:gui06 s:gui07 s:gui08 s:gui09 s:gui0A s:gui0B s:gui0C s:gui0D s:gui0E s:gui0F s:guibg +unlet s:cterm00 s:cterm01 s:cterm02 s:cterm03 s:cterm04 s:cterm05 s:cterm06 s:cterm07 s:cterm08 s:cterm09 s:cterm0A s:cterm0B s:cterm0C s:cterm0D s:cterm0E s:cterm0F s:ctermbg diff --git a/apps/nvim/soft-monobiome-dark.vim b/apps/nvim/soft-monobiome-dark.vim new file mode 100644 index 0000000..12a15ad --- /dev/null +++ b/apps/nvim/soft-monobiome-dark.vim @@ -0,0 +1,882 @@ +" vi:syntax=vim +" +" Top-level remarks: +" +" - `hi` sets highlight colors for syntax groups, allowing one to specify fg and bg colors +" for GUI and terminal Vim. +" - `link` allows for linking one syntax group to another, reusing the same color +" settings. Language-specific groups can then point to one of the base color highlight +" groups, for example, without needing to repeat the raw color values. + +" GUI color definitions +let s:gui00 = "#2e2e2e" +let g:base16_gui00 = "#2e2e2e" +let s:gui01 = "#3a3a3a" +let g:base16_gui01 = "#3a3a3a" +let s:gui02 = "#484848" +let g:base16_gui02 = "#484848" +let s:gui03 = "#555555" +let g:base16_gui03 = "#555555" +let s:gui04 = "#bebebe" +let g:base16_gui04 = "#bebebe" +let s:gui05 = "#cecece" +let g:base16_gui05 = "#cecece" +let s:gui06 = "#dedede" +let g:base16_gui06 = "#dedede" +let s:gui07 = "#eeeeee" +let g:base16_gui07 = "#eeeeee" +let s:gui08 = "#f37060" +let g:base16_gui08 = "#f37060" +let s:gui09 = "#da8934" +let g:base16_gui09 = "#da8934" +let s:gui0A = "#a7a15f" +let g:base16_gui0A = "#a7a15f" +let s:gui0B = "#6eb178" +let g:base16_gui0B = "#6eb178" +let s:gui0C = "#6eb178" +let g:base16_gui0C = "#6eb178" +let s:gui0D = "#799ee3" +let g:base16_gui0D = "#799ee3" +let s:gui0E = "#799ee3" +let g:base16_gui0E = "#799ee3" +let s:gui0F = "#f37060" +let g:base16_gui0F = "#f37060" + +let s:grey = "#8f8f8f" + +" Terminal color definitions +let s:cterm00 = "00" +let g:base16_cterm00 = "00" +let s:cterm03 = "08" +let g:base16_cterm03 = "08" +let s:cterm05 = "07" +let g:base16_cterm05 = "07" +let s:cterm07 = "15" +let g:base16_cterm07 = "15" +let s:cterm08 = "01" +let g:base16_cterm08 = "01" +let s:cterm0A = "03" +let g:base16_cterm0A = "03" +let s:cterm0B = "02" +let g:base16_cterm0B = "02" +let s:cterm0C = "06" +let g:base16_cterm0C = "06" +let s:cterm0D = "04" +let g:base16_cterm0D = "04" +let s:cterm0E = "05" +let g:base16_cterm0E = "05" + +let s:cterm01 = "10" +let g:base16_cterm01 = "10" +let s:cterm02 = "11" +let g:base16_cterm02 = "11" +let s:cterm04 = "12" +let g:base16_cterm04 = "12" +let s:cterm06 = "13" +let g:base16_cterm06 = "13" +let s:cterm09 = "09" +let g:base16_cterm09 = "09" +let s:cterm0F = "14" +let g:base16_cterm0F = "14" + +" Neovim terminal colours +if has("nvim") + let g:terminal_color_0 = "#2e2e2e" + let g:terminal_color_1 = "#f37060" + let g:terminal_color_2 = "#6eb178" + let g:terminal_color_3 = "#a7a15f" + let g:terminal_color_4 = "#799ee3" + let g:terminal_color_5 = "#799ee3" + let g:terminal_color_6 = "#6eb178" + let g:terminal_color_7 = "#cecece" + let g:terminal_color_8 = "#555555" + let g:terminal_color_9 = "#f37060" + let g:terminal_color_10 = "#6eb178" + let g:terminal_color_11 = "#a7a15f" + let g:terminal_color_12 = "#799ee3" + let g:terminal_color_13 = "#799ee3" + let g:terminal_color_14 = "#6eb178" + let g:terminal_color_15 = "#eeeeee" + let g:terminal_color_background = g:terminal_color_0 + let g:terminal_color_foreground = g:terminal_color_5 + + if &background == "light" + let g:terminal_color_background = g:terminal_color_7 + let g:terminal_color_foreground = g:terminal_color_2 + endif + +elseif has("terminal") + let g:terminal_ansi_colors = [ + \ "#2e2e2e", + \ "#f37060", + \ "#6eb178", + \ "#a7a15f", + \ "#799ee3", + \ "#799ee3", + \ "#6eb178", + \ "#cecece", + \ "#555555", + \ "#f37060", + \ "#6eb178", + \ "#a7a15f", + \ "#799ee3", + \ "#799ee3", + \ "#6eb178", + \ "#eeeeee", + \ ] +endif + +let s:guibg = s:gui00 +let s:ctermbg = s:cterm00 + +" Theme setup +hi clear +syntax reset +let g:colors_name = "active" + +" Highlighting function +" Optional variables are attributes and guisp +function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) + " For a given syntax group, sets the GUI and terminal foreground and backgrounds + " Optional parameters are interpreted as `attr` and `guisp`, the first of which appears + " to be a modifier for the group (e.g., bold, italic), and `guisp` appears to be + " 'special' colors used for underlines in the GUI. + let l:attr = get(a:, 1, "") + let l:guisp = get(a:, 2, "") + + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + + if a:guifg != "" + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=" . a:guifg + endif + endif + + if a:guibg != "" + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=" . a:guibg + endif + endif + + if a:ctermfg != "" + exec "hi " . a:group . " ctermfg=" . a:ctermfg + endif + + if a:ctermbg != "" + exec "hi " . a:group . " ctermbg=" . a:ctermbg + endif + + if l:attr != "" + exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr + endif + + if l:guisp != "" + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=" . l:guisp + endif + endif +endfunction + + +fun hi(group, guifg, guibg, ctermfg, ctermbg, attr, guisp) + call g:Base16hi(a:group, a:guifg, a:guibg, a:ctermfg, a:ctermbg, a:attr, a:guisp) +endfun + + +" color groups for interpretability +call hi("ThemeBg0", s:gui00, "", s:cterm00, "", "", "") +call hi("ThemeBg1", s:gui01, "", s:cterm01, "", "", "") +call hi("ThemeBg2", s:gui02, "", s:cterm02, "", "", "") +call hi("ThemeBg3", s:gui03, "", s:cterm03, "", "", "") +call hi("ThemeFg3", s:gui04, "", s:cterm04, "", "", "") +call hi("ThemeFg2", s:gui05, "", s:cterm05, "", "", "") +call hi("ThemeFg1", s:gui06, "", s:cterm06, "", "", "") +call hi("ThemeFg0", s:gui07, "", s:cterm07, "", "", "") +" +call hi("ThemeRed", s:gui08, "", s:cterm08, "", "", "") +call hi("ThemeOrange", s:gui09, "", s:cterm09, "", "", "") +call hi("ThemeYellow", s:gui0A, "", s:cterm0A, "", "", "") +call hi("ThemeGreen", s:gui0B, "", s:cterm0B, "", "", "") +call hi("ThemeCyan", s:gui0C, "", s:cterm0C, "", "", "") +call hi("ThemeBlue", s:gui0D, "", s:cterm0D, "", "", "") +call hi("ThemeViolet", s:gui0E, "", s:cterm0E, "", "", "") +call hi("ThemeMagenta", s:gui0F, "", s:cterm0F, "", "", "") + +call hi("ThemeRedBold", s:gui08, "", s:cterm08, "", "bold", "") +call hi("ThemeOrangeBold", s:gui09, "", s:cterm09, "", "bold", "") +call hi("ThemeYellowBold", s:gui0A, "", s:cterm0A, "", "bold", "") +call hi("ThemeGreenBold", s:gui0B, "", s:cterm0B, "", "bold", "") +call hi("ThemeCyanBold", s:gui0C, "", s:cterm0C, "", "bold", "") +call hi("ThemeBlueBold", s:gui0D, "", s:cterm0D, "", "bold", "") +call hi("ThemeVioletBold", s:gui0E, "", s:cterm0E, "", "bold", "") +call hi("ThemeMagentaBold", s:gui0F, "", s:cterm0F, "", "bold", "") + +call hi("ThemeRedItalic", s:gui08, "", s:cterm08, "", "italic", "") +call hi("ThemeOrangeItalic", s:gui09, "", s:cterm09, "", "italic", "") +call hi("ThemeYellowItalic", s:gui0A, "", s:cterm0A, "", "italic", "") +call hi("ThemeGreenItalic", s:gui0B, "", s:cterm0B, "", "italic", "") +call hi("ThemeCyanItalic", s:gui0C, "", s:cterm0C, "", "italic", "") +call hi("ThemeBlueItalic", s:gui0D, "", s:cterm0D, "", "italic", "") +call hi("ThemeVioletItalic", s:gui0E, "", s:cterm0E, "", "italic", "") +call hi("ThemeMagentaItalic", s:gui0F, "", s:cterm0F, "", "italic", "") + +call hi("ThemeGrey", s:grey, "", s:cterm03, "", "", "") +call hi("ThemeGreyItalic", s:grey, "", s:cterm03, "", "italic", "") + + +" Vim editor colors +call hi("Normal", s:gui05, s:guibg, s:cterm05, s:ctermbg, "", "") +call hi("Bold", "", "", "", "", "bold", "") +call hi("Debug", s:gui08, "", s:cterm08, "", "", "") +call hi("Directory", s:gui0D, "", s:cterm0D, "", "", "") +call hi("Error", s:guibg, s:gui08, s:ctermbg, s:cterm08, "", "") +call hi("ErrorMsg", s:gui08, s:guibg, s:cterm08, s:ctermbg, "", "") +call hi("Exception", s:gui08, "", s:cterm08, "", "", "") +call hi("FoldColumn", s:gui03, s:guibg, s:cterm03, s:ctermbg, "", "") +call hi("Folded", s:gui02, s:guibg, s:cterm02, s:ctermbg, "", "") +call hi("IncSearch", s:gui01, s:gui09, s:cterm01, s:cterm09, "none", "") +call hi("Italic", "", "", "", "", "italic", "") +call hi("Macro", s:gui0C, "", s:cterm0C, "", "", "") +call hi("MatchParen", "", s:gui03, "", s:cterm03, "", "") +call hi("ModeMsg", s:gui0B, "", s:cterm0B, "", "", "") +call hi("MoreMsg", s:gui0B, "", s:cterm0B, "", "", "") +call hi("Question", s:gui0D, "", s:cterm0D, "", "", "") +call hi("Search", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "", "") +call hi("Substitute", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "none", "") +call hi("SpecialKey", s:gui03, "", s:cterm03, "", "", "") +call hi("TooLong", s:gui08, "", s:cterm08, "", "", "") +call hi("Underlined", "", "", "", "", "underline", "fg") +call hi("Visual", "", s:gui02, "", s:cterm02, "", "") +call hi("VisualNOS", s:gui08, "", s:cterm08, "", "", "") +call hi("WarningMsg", s:gui08, "", s:cterm08, "", "", "") +call hi("WildMenu", s:guibg, s:gui06, s:ctermbg, s:cterm05, "", "") +call hi("Title", s:gui0D, "", s:cterm0D, "", "none", "") +call hi("Conceal", s:gui0D, s:guibg, s:cterm0D, s:ctermbg, "", "") +call hi("Cursor", s:gui05, s:guibg, "", "", "inverse", "") +call hi("NonText", s:gui03, "", s:cterm03, "", "", "") +call hi("Whitespace", s:gui03, "", s:cterm03, "", "", "") +call hi("LineNr", s:gui03, s:guibg, s:cterm03, s:ctermbg, "", "") +call hi("SignColumn", s:gui03, s:guibg, s:cterm03, s:ctermbg, "", "") +call hi("StatusLine", s:gui07, s:gui01, s:cterm07, s:cterm01, "none", "") +call hi("StatusLineNC", s:gui06, s:gui01, s:cterm05, s:cterm01, "none", "") +call hi("VertSplit", s:gui01, s:guibg, s:cterm01, s:ctermbg, "none", "") +call hi("ColorColumn", "", s:gui01, "", s:cterm01, "none", "") +call hi("CursorColumn", "", s:gui01, "", s:cterm01, "none", "") +call hi("CursorLine", "", s:gui01, "", s:cterm01, "none", "") +call hi("CursorLineNr", s:gui04, s:gui01, s:cterm04, s:cterm01, "bold", "") +call hi("QuickFixLine", "", s:gui01, "", s:cterm01, "none", "") +call hi("PMenu", s:gui06, s:gui01, s:cterm06, s:cterm01, "none", "") +call hi("PMenuSel", s:gui06, s:gui02, s:cterm06, s:cterm02, "", "") +call hi("PMenuSbar", "", s:gui03, "", s:cterm03, "", "") +call hi("PMenuThumb", "", s:gui04, "", s:cterm04, "", "") +call hi("TabLine", s:gui03, s:gui01, s:cterm03, s:cterm01, "none", "") +call hi("TabLineFill", s:gui03, s:gui01, s:cterm03, s:cterm01, "none", "") +call hi("TabLineSel", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "none", "") + +" Standard syntax +hi! link Boolean ThemeOrange +hi! link Character ThemeRed + +"call hi("Comment", s:gui03, "", s:cterm03, "", "italic", "") +hi! link Comment ThemeGreyItalic + +hi! link Conditional ThemeRed +hi! link Constant ThemeOrange +call hi("Define", s:gui0E, "", s:cterm0E, "", "none", "") +hi! link Delimiter ThemeFg1 + +if has("patch-8.0.1038") + call hi("Deprecated", "", "", "", "", "strikethrough", "") +endif + +hi! link Float ThemeOrange +hi! link Function ThemeBlue +call hi("Identifier", s:gui06, "", s:cterm05, "", "none", "") +hi! link Include ThemeBlue +hi! link Constant ThemeOrange +call hi("Keyword", s:gui0E, "", s:cterm0E, "", "none", "") +hi! link Label ThemeOrange +hi! link Number ThemeOrange +hi! link Operator ThemeYellow +hi! link PreProc ThemeOrange +hi! link Repeat ThemeViolet +hi! link Special ThemeYellow +hi! link SpecialChar ThemeMagenta +hi! link Statement ThemeRed +hi! link StorageClass ThemeOrange +hi! link String ThemeGreen +hi! link Structure ThemeOrange +hi! link Tag ThemeOrange + +call hi("Todo", s:gui08, s:guibg, s:cterm08, s:ctermbg, "italic", "") +call hi("Type", s:gui0A, "", s:cterm0A, "", "none", "") + +hi! link Typedef ThemeOrange + + +" Treesitter +if has("nvim-0.8.0") + call hi("@field", s:gui08, "", s:cterm08, "", "", "") + call hi("@property", s:gui08, "", s:cterm08, "", "", "") + call hi("@namespace", s:gui06, "", s:cterm05, "", "italic", "") + call hi("@variable.builtin", s:gui06, "", s:cterm05, "", "italic", "") + call hi("@text.reference", s:gui08, "", s:cterm08, "", "", "") + call hi("@text.uri", s:gui08, "", s:cterm08, "", "italic", "") + + " Annotations & Attributes + call hi("@annotation", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@attribute", s:gui0D, "", s:cterm0D, "", "", "") + + " Booleans, Characters & Comments + call hi("@boolean", s:gui09, "", s:cterm09, "", "", "") + call hi("@character", s:gui08, "", s:cterm08, "", "", "") + call hi("@character.special", s:gui0F, "", s:cterm0F, "", "", "") + call hi("@comment", s:gui03, "", s:cterm03, "", "", "") + + " Conditionals, Constants & Debugging + call hi("@keyword.conditional", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@constant", s:gui09, "", s:cterm09, "", "", "") + call hi("@constant.builtin", s:gui09, "", s:cterm09, "", "", "") + call hi("@constant.macro", s:gui08, "", s:cterm08, "", "", "") + call hi("@keyword.debug", s:gui08, "", s:cterm08, "", "", "") + + " Directives & Exceptions + call hi("@keyword.directive.define", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@keyword.exception", s:gui0E, "", s:cterm0E, "", "", "") + + " Floats & Functions + call hi("@number.float", s:gui09, "", s:cterm09, "", "", "") + call hi("@function", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@function.builtin", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@function.call", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@function.macro", s:gui08, "", s:cterm08, "", "", "") + + " Imports, Operators & Returns + call hi("@keyword.import", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@keyword.coroutine", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@keyword.operator", s:gui06, "", s:cterm05, "", "", "") + call hi("@keyword.return", s:gui0E, "", s:cterm0E, "", "", "") + + " Methods & Namespaces + call hi("@function.method", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@function.method.call", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@namespace.builtin", s:gui0E, "", s:cterm0E, "", "", "") + + " Numbers & Directives + call hi("@none", s:gui06, "", s:cterm05, "", "", "") + call hi("@number", s:gui09, "", s:cterm09, "", "", "") + call hi("@keyword.directive", s:gui0E, "", s:cterm0E, "", "", "") + + " Repeats, Storage & Strings + call hi("@keyword.repeat", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@keyword.storage", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@string", s:gui0B, "", s:cterm0B, "", "", "") + + " Tags & Markup + call hi("@markup.link.label", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.link.label.symbol", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@tag", s:gui08, "", s:cterm08, "", "", "") + call hi("@tag.attribute", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@tag.delimiter", s:gui0F, "", s:cterm0F, "", "", "") + + " More Markup + call hi("@markup", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.environment", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.environment.name", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.raw", s:gui09, "", s:cterm09, "", "", "") + call hi("@markup.math", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.strong", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.emphasis", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.strikethrough", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.underline", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.heading", s:gui0D, "", s:cterm0D, "", "", "") + + " Comments & Types + call hi("@comment.note", s:gui03, "", s:cterm03, "", "", "") + call hi("@comment.error", s:gui08, "", s:cterm08, "", "", "") + call hi("@comment.hint", s:gui0B, "", s:cterm0B, "", "", "") + call hi("@comment.info", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@comment.warning", s:gui09, "", s:cterm09, "", "", "") + call hi("@comment.todo", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.link.url", s:gui09, "", s:cterm09, "", "", "") + call hi("@type", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@type.definition", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@type.qualifier", s:gui0E, "", s:cterm0E, "", "", "") +endif + +" Standard highlights to be used by plugins +if has("patch-8.0.1038") + call hi("Deprecated", "", "", "", "", "strikethrough", "") +endif +call hi("SearchMatch", s:gui0C, "", s:cterm0C, "", "", "") + +call hi("GitAddSign", s:gui0B, "", s:cterm0B, "", "", "") +call hi("GitChangeSign", s:gui04, "", s:cterm04, "", "", "") +call hi("GitDeleteSign", s:gui08, "", s:cterm08, "", "", "") +call hi("GitChangeDeleteSign", s:gui04, "", s:cterm04, "", "", "") + +call hi("ErrorSign", s:gui08, "", s:cterm08, "", "", "") +call hi("WarningSign", s:gui09, "", s:cterm09, "", "", "") +call hi("InfoSign", s:gui0D, "", s:cterm0D, "", "", "") +call hi("HintSign", s:gui0C, "", s:cterm0C, "", "", "") +call hi("OkSign", s:gui0B, "", s:cterm0B, "", "", "") + +call hi("ErrorFloat", s:gui08, s:gui01, s:cterm08, s:cterm01, "", "") +call hi("WarningFloat", s:gui09, s:gui01, s:cterm09, s:cterm01, "", "") +call hi("InfoFloat", s:gui0D, s:gui01, s:cterm0D, s:cterm01, "", "") +call hi("HintFloat", s:gui0C, s:gui01, s:cterm0C, s:cterm01, "", "") +call hi("OkFloat", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "") + +call hi("ErrorHighlight", "", "", s:ctermbg, s:cterm08, "underline", s:gui08) +call hi("WarningHighlight", "", "", s:ctermbg, s:cterm09, "underline", s:gui09) +call hi("InfoHighlight", "", "", s:ctermbg, s:cterm0D, "underline", s:gui0D) +call hi("HintHighlight", "", "", s:ctermbg, s:cterm0C, "underline", s:gui0C) +call hi("OkHighlight", "", "", s:ctermbg, s:cterm0B, "underline", s:gui0B) + +call hi("SpellBad", "", "", s:ctermbg, s:cterm08, "undercurl", s:gui08) +call hi("SpellLocal", "", "", s:ctermbg, s:cterm0C, "undercurl", s:gui0C) +call hi("SpellCap", "", "", s:ctermbg, s:cterm0D, "undercurl", s:gui0D) +call hi("SpellRare", "", "", s:ctermbg, s:cterm0E, "undercurl", s:gui0E) + +call hi("ReferenceText", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "", "") +call hi("ReferenceRead", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "", "") +call hi("ReferenceWrite", s:gui01, s:gui08, s:cterm01, s:cterm08, "", "") + +" C +call hi("cOperator", s:gui0C, "", s:cterm0C, "", "", "") +call hi("cPreCondit", s:gui0E, "", s:cterm0E, "", "", "") + +" C# +call hi("csClass", s:gui0A, "", s:cterm0A, "", "", "") +call hi("csAttribute", s:gui0A, "", s:cterm0A, "", "", "") +call hi("csModifier", s:gui0E, "", s:cterm0E, "", "", "") +call hi("csType", s:gui08, "", s:cterm08, "", "", "") +call hi("csUnspecifiedStatement", s:gui0D, "", s:cterm0D, "", "", "") +call hi("csContextualStatement", s:gui0E, "", s:cterm0E, "", "", "") +call hi("csNewDecleration", s:gui08, "", s:cterm08, "", "", "") + +" Clap +hi! link ClapInput ColorColumn +hi! link ClapSpinner ColorColumn +hi! link ClapDisplay Default +hi! link ClapPreview ColorColumn +hi! link ClapCurrentSelection CursorLine +hi! link ClapNoMatchesFound ErrorFloat + +" Coc +hi! link CocErrorSign ErrorSign +hi! link CocWarningSign WarningSign +hi! link CocInfoSign InfoSign +hi! link CocHintSign HintSign + +hi! link CocErrorFloat ErrorFloat +hi! link CocWarningFloat WarningFloat +hi! link CocInfoFloat InfoFloat +hi! link CocHintFloat HintFloat + +hi! link CocErrorHighlight ErrorHighlight +hi! link CocWarningHighlight WarningHighlight +hi! link CocInfoHighlight InfoHighlight +hi! link CocHintHighlight HintHighlight + +hi! link CocSem_angle Keyword +hi! link CocSem_annotation Keyword +hi! link CocSem_attribute Type +hi! link CocSem_bitwise Keyword +hi! link CocSem_boolean Boolean +hi! link CocSem_brace Normal +hi! link CocSem_bracket Normal +hi! link CocSem_builtinAttribute Type +hi! link CocSem_builtinType Type +hi! link CocSem_character String +hi! link CocSem_class Structure +hi! link CocSem_colon Normal +hi! link CocSem_comma Normal +hi! link CocSem_comment Comment +hi! link CocSem_comparison Keyword +hi! link CocSem_concept Keyword +hi! link CocSem_constParameter Identifier +hi! link CocSem_dependent Keyword +hi! link CocSem_dot Keyword +hi! link CocSem_enum Structure +hi! link CocSem_enumMember Constant +hi! link CocSem_escapeSequence Type +hi! link CocSem_event Identifier +hi! link CocSem_formatSpecifier Type +hi! link CocSem_function Function +hi! link CocSem_interface Type +hi! link CocSem_keyword Keyword +hi! link CocSem_label Keyword +hi! link CocSem_logical Keyword +hi! link CocSem_macro Macro +hi! link CocSem_method Function +hi! link CocSem_modifier Keyword +hi! link CocSem_namespace Identifier +hi! link CocSem_number Number +hi! link CocSem_operator Operator +hi! link CocSem_parameter Identifier +hi! link CocSem_parenthesis Normal +hi! link CocSem_property Identifier +hi! link CocSem_punctuation Keyword +hi! link CocSem_regexp Type +hi! link CocSem_selfKeyword Constant +hi! link CocSem_semicolon Normal +hi! link CocSem_string String +hi! link CocSem_struct Structure +hi! link CocSem_type Type +hi! link CocSem_typeAlias Type +hi! link CocSem_typeParameter Type +hi! link CocSem_unknown Normal +hi! link CocSem_variable Identifier + +call hi("CocHighlightRead", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "") +call hi("CocHighlightText", s:gui0A, s:gui01, s:cterm0A, s:cterm01, "", "") +call hi("CocHighlightWrite", s:gui08, s:gui01, s:cterm08, s:cterm01, "", "") +call hi("CocListMode", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "bold", "") +call hi("CocListPath", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "", "") +call hi("CocSessionsName", s:gui06, "", s:cterm05, "", "", "") + +" CSS +hi! link cssBraces ThemeBlue +hi! link cssFunctionName ThemeYellow +hi! link cssIdentifier ThemeOrange +hi! link cssClassName ThemeGreen +hi! link cssColor ThemeBlue +hi! link cssSelectorOp ThemeBlue +hi! link cssSelectorOp2 ThemeBlue +hi! link cssImportant ThemeGreen +hi! link cssVendor ThemeFg1 + +hi! link cssTextProp ThemeCyan +hi! link cssAnimationProp ThemeCyan +hi! link cssUIProp ThemeYellow +hi! link cssTransformProp ThemeCyan +hi! link cssTransitionProp ThemeCyan +hi! link cssPrintProp ThemeCyan +hi! link cssPositioningProp ThemeYellow +hi! link cssBoxProp ThemeCyan +hi! link cssFontDescriptorProp ThemeCyan +hi! link cssFlexibleBoxProp ThemeCyan +hi! link cssBorderOutlineProp ThemeCyan +hi! link cssBackgroundProp ThemeCyan +hi! link cssMarginProp ThemeCyan +hi! link cssListProp ThemeCyan +hi! link cssTableProp ThemeCyan +hi! link cssFontProp ThemeCyan +hi! link cssPaddingProp ThemeCyan +hi! link cssDimensionProp ThemeCyan +hi! link cssRenderProp ThemeCyan +hi! link cssColorProp ThemeCyan +hi! link cssGeneratedContentProp ThemeCyan + + +" CMP +hi! link CmpItemAbbrDeprecated Deprecated +hi! link CmpItemAbbrMatch SearchMatch +hi! link CmpItemAbbrMatchFuzzy SearchMatch +hi! link CmpItemKindClass Type +hi! link CmpItemKindColor Keyword +hi! link CmpItemKindConstant Constant +hi! link CmpItemKindConstructor Special +hi! link CmpItemKindEnum Type +hi! link CmpItemKindEnumMember Constant +hi! link CmpItemKindEvent Identifier +hi! link CmpItemKindField Character +hi! link CmpItemKindFile Directory +hi! link CmpItemKindFolder Directory +hi! link CmpItemKindFunction Function +hi! link CmpItemKindInterface Type +hi! link CmpItemKindKeyword Keyword +hi! link CmpItemKindMethod Function +hi! link CmpItemKindModule Namespace +hi! link CmpItemKindOperator Operator +hi! link CmpItemKindProperty Identifier +hi! link CmpItemKindReference Character +hi! link CmpItemKindSnippet String +hi! link CmpItemKindStruct Type +hi! link CmpItemKindText Text +hi! link CmpItemKindUnit Namespace +hi! link CmpItemKindValue Comment +hi! link CmpItemKindVariable Identifier + +if has("nvim-0.8.0") + hi! link CmpItemKindField @field + hi! link CmpItemKindProperty @property +endif + +" Diff +call hi("DiffAdd", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "") +call hi("DiffChange", s:gui06, s:gui01, s:cterm05, s:cterm01, "", "") +call hi("DiffDelete", s:gui02, s:guibg, s:cterm02, s:ctermbg, "", "") +call hi("DiffText", s:gui0D, s:gui01, s:cterm0D, s:cterm01, "", "") +call hi("DiffAdded", s:gui0B, s:guibg, s:cterm0B, s:ctermbg, "", "") +call hi("DiffFile", s:gui08, s:guibg, s:cterm08, s:ctermbg, "", "") +call hi("DiffNewFile", s:gui0B, s:guibg, s:cterm0B, s:ctermbg, "", "") +call hi("DiffLine", s:gui0D, s:guibg, s:cterm0D, s:ctermbg, "", "") +call hi("DiffRemoved", s:gui08, s:guibg, s:cterm08, s:ctermbg, "", "") + +" Git +call hi("gitcommitOverflow", s:gui08, "", s:cterm08, "", "", "") +call hi("gitcommitSummary", s:gui0B, "", s:cterm0B, "", "", "") +call hi("gitcommitComment", s:gui03, "", s:cterm03, "", "", "") +call hi("gitcommitUntracked", s:gui03, "", s:cterm03, "", "", "") +call hi("gitcommitDiscarded", s:gui03, "", s:cterm03, "", "", "") +call hi("gitcommitSelected", s:gui03, "", s:cterm03, "", "", "") +call hi("gitcommitHeader", s:gui0E, "", s:cterm0E, "", "", "") +call hi("gitcommitSelectedType", s:gui0D, "", s:cterm0D, "", "", "") +call hi("gitcommitUnmergedType", s:gui0D, "", s:cterm0D, "", "", "") +call hi("gitcommitDiscardedType", s:gui0D, "", s:cterm0D, "", "", "") +call hi("gitcommitBranch", s:gui09, "", s:cterm09, "", "bold", "") +call hi("gitcommitUntrackedFile", s:gui0A, "", s:cterm0A, "", "", "") +call hi("gitcommitUnmergedFile", s:gui08, "", s:cterm08, "", "bold", "") +call hi("gitcommitDiscardedFile", s:gui08, "", s:cterm08, "", "bold", "") +call hi("gitcommitSelectedFile", s:gui0B, "", s:cterm0B, "", "bold", "") + +" GitGutter +hi! link GitGutterAdd GitAddSign +hi! link GitGutterChange GitChangeSign +hi! link GitGutterDelete GitDeleteSign +hi! link GitGutterChangeDelete GitChangeDeleteSign + +" indent-blankline (nvim) +if has("nvim") + call hi("@ibl.indent.char.1",s:gui01, "", s:cterm01, "", "", "") +endif + +" HTML +call hi("htmlBold", s:gui07, "", s:cterm0A, "", "bold", "") +call hi("htmlItalic", s:gui06, "", s:cterm0E, "", "italic", "") +call hi("htmlEndTag", s:gui06, "", s:cterm05, "", "", "") +call hi("htmlTag", s:gui06, "", s:cterm05, "", "", "") + +" JavaScript +call hi("javaScript", s:gui06, "", s:cterm05, "", "", "") +call hi("javaScriptBraces", s:gui06, "", s:cterm05, "", "", "") +call hi("javaScriptNumber", s:gui09, "", s:cterm09, "", "", "") +" pangloss/vim-javascript +call hi("jsOperator", s:gui0D, "", s:cterm0D, "", "", "") +call hi("jsStatement", s:gui0E, "", s:cterm0E, "", "", "") +call hi("jsReturn", s:gui0E, "", s:cterm0E, "", "", "") +call hi("jsThis", s:gui08, "", s:cterm08, "", "", "") +call hi("jsClassDefinition", s:gui0A, "", s:cterm0A, "", "", "") +call hi("jsFunction", s:gui0E, "", s:cterm0E, "", "", "") +call hi("jsFuncName", s:gui0D, "", s:cterm0D, "", "", "") +call hi("jsFuncCall", s:gui0D, "", s:cterm0D, "", "", "") +call hi("jsClassFuncName", s:gui0D, "", s:cterm0D, "", "", "") +call hi("jsClassMethodType", s:gui0E, "", s:cterm0E, "", "", "") +call hi("jsRegexpString", s:gui0C, "", s:cterm0C, "", "", "") +call hi("jsGlobalObjects", s:gui0A, "", s:cterm0A, "", "", "") +call hi("jsGlobalNodeObjects", s:gui0A, "", s:cterm0A, "", "", "") +call hi("jsExceptions", s:gui0A, "", s:cterm0A, "", "", "") +call hi("jsBuiltins", s:gui0A, "", s:cterm0A, "", "", "") + +" Mail +call hi("mailQuoted1", s:gui0A, "", s:cterm0A, "", "", "") +call hi("mailQuoted2", s:gui0B, "", s:cterm0B, "", "", "") +call hi("mailQuoted3", s:gui0E, "", s:cterm0E, "", "", "") +call hi("mailQuoted4", s:gui0C, "", s:cterm0C, "", "", "") +call hi("mailQuoted5", s:gui0D, "", s:cterm0D, "", "", "") +call hi("mailQuoted6", s:gui0A, "", s:cterm0A, "", "", "") +call hi("mailURL", s:gui0D, "", s:cterm0D, "", "", "") +call hi("mailEmail", s:gui0D, "", s:cterm0D, "", "", "") + +" Markdown +call hi("markdownCode", s:gui0B, "", s:cterm0B, "", "", "") +call hi("markdownError", s:gui06, s:guibg, s:cterm05, s:ctermbg, "", "") +call hi("markdownCodeBlock", s:gui0B, "", s:cterm0B, "", "", "") +call hi("markdownHeadingDelimiter", s:gui0D, "", s:cterm0D, "", "", "") + +" Matchup +call hi("MatchWord", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "underline", "") + +" NERDTree +call hi("NERDTreeDirSlash", s:gui0D, "", s:cterm0D, "", "", "") +call hi("NERDTreeExecFile", s:gui06, "", s:cterm05, "", "", "") + +" Netrw +hi! link netrwDir ThemeCyan +hi! link netrwClassify ThemeCyan +hi! link netrwLink ThemeBg3 +hi! link netrwSymLink ThemeFg1 +hi! link netrwExe ThemeYellow +hi! link netrwComment ThemeBg3 +hi! link netrwList ThemeBlue +hi! link netrwHelpCmd ThemeCyan +hi! link netrwCmdSep ThemeFg3 +hi! link netrwVersion ThemeGreen + +" PHP +call hi("phpMemberSelector", s:gui06, "", s:cterm05, "", "", "") +call hi("phpComparison", s:gui06, "", s:cterm05, "", "", "") +call hi("phpParent", s:gui06, "", s:cterm05, "", "", "") +call hi("phpMethodsVar", s:gui0C, "", s:cterm0C, "", "", "") + +" Python +"call hi("pythonOperator", s:gui0E, "", s:cterm0E, "", "", "") +"call hi("pythonRepeat", s:gui0E, "", s:cterm0E, "", "", "") +"call hi("pythonInclude", s:gui0E, "", s:cterm0E, "", "", "") +"call hi("pythonStatement", s:gui0E, "", s:cterm0E, "", "", "") + +" hi! link pythonBuiltin ThemeCyan +" hi! link pythonBuiltinObj ThemeCyan +" hi! link pythonBuiltinFunc ThemeGreen +" hi! link pythonFunction Function +hi! link pythonDecorator ThemeYellow +hi! link pythonDecoratorName ThemeYellow +" hi! link pythonTripleQuotes ThemeGreenItalic +" hi! link pythonInclude ThemeBlue +" hi! link pythonImport ThemeBlue +" hi! link pythonRun ThemeBlue +" hi! link pythonCoding ThemeBlue +" hi! link pythonOperator ThemeRed +" hi! link pythonException ThemeRed +" hi! link pythonExceptions ThemeYellow +" hi! link pythonBoolean ThemeYellow +" hi! link pythonDot ThemeFg3 +" hi! link pythonConditional ThemeCyan +" hi! link pythonRepeat ThemeRed +" hi! link pythonDottedName ThemeGreen + + +" Ruby +call hi("rubyAttribute", s:gui0D, "", s:cterm0D, "", "", "") +call hi("rubyConstant", s:gui0A, "", s:cterm0A, "", "", "") +call hi("rubyInterpolationDelimiter", s:gui0F, "", s:cterm0F, "", "", "") +call hi("rubyRegexp", s:gui0C, "", s:cterm0C, "", "", "") +call hi("rubySymbol", s:gui0B, "", s:cterm0B, "", "", "") +call hi("rubyStringDelimiter", s:gui0B, "", s:cterm0B, "", "", "") + +" SASS +call hi("sassidChar", s:gui08, "", s:cterm08, "", "", "") +call hi("sassClassChar", s:gui09, "", s:cterm09, "", "", "") +call hi("sassInclude", s:gui0E, "", s:cterm0E, "", "", "") +call hi("sassMixing", s:gui0E, "", s:cterm0E, "", "", "") +call hi("sassMixinName", s:gui0D, "", s:cterm0D, "", "", "") + +" Signify +hi! link SignifySignAdd GitAddSign +hi! link SignifySignChange GitChangeSign +hi! link SignifySignDelete GitDeleteSign + +" Startify +call hi("StartifyBracket", s:gui03, "", s:cterm03, "", "", "") +call hi("StartifyFile", s:gui07, "", s:cterm07, "", "", "") +call hi("StartifyFooter", s:gui03, "", s:cterm03, "", "", "") +call hi("StartifyHeader", s:gui0B, "", s:cterm0B, "", "", "") +call hi("StartifyNumber", s:gui09, "", s:cterm09, "", "", "") +call hi("StartifyPath", s:gui03, "", s:cterm03, "", "", "") +call hi("StartifySection", s:gui0E, "", s:cterm0E, "", "", "") +call hi("StartifySelect", s:gui0C, "", s:cterm0C, "", "", "") +call hi("StartifySlash", s:gui03, "", s:cterm03, "", "", "") +call hi("StartifySpecial", s:gui03, "", s:cterm03, "", "", "") + +" LSP +if has("nvim") + hi! link DiagnosticError ErrorSign + hi! link DiagnosticWarn WarningSign + hi! link DiagnosticInfo InfoSign + hi! link DiagnosticHint HintSign + hi! link DiagnosticOk OkSign + + hi! link DiagnosticFloatingError ErrorFloat + hi! link DiagnosticFloatingWarn WarningFloat + hi! link DiagnosticFloatingInfo InfoFloat + hi! link DiagnosticFloatingHint HintFloat + hi! link DiagnosticFloatingOk OkFloat + + hi! link DiagnosticUnderlineError ErrorHighlight + hi! link DiagnosticUnderlineWarn WarningHighlight + hi! link DiagnosticUnderlineInfo InfoHighlight + hi! link DiagnosticUnderlineHint HintHighlight + hi! link DiagnosticUnderlineOk OkHighlight + + hi! link DiagnosticsVirtualTextError ErrorSign + hi! link DiagnosticsVirtualTextWarning WarningSign + hi! link DiagnosticsVirtualTextInfo InfoSign + hi! link DiagnosticsVirtualTextHint HintSign + hi! link DiagnosticsVirtualTextOk OkSign + + " Remove untill endif on next nvim release + hi! link LspDiagnosticsSignError ErrorSign + hi! link LspDiagnosticsSignWarning WarningSign + hi! link LspDiagnosticsSignInfo InfoSign + hi! link LspDiagnosticsSignHint HintSign + + hi! link LspDiagnosticsVirtualTextError ErrorSign + hi! link LspDiagnosticsVirtualTextWarning WarningSign + hi! link LspDiagnosticsVirtualTextInfo InfoSign + hi! link LspDiagnosticsVirtualTextHint HintSign + + hi! link LspDiagnosticsFloatingError ErrorFloat + hi! link LspDiagnosticsFloatingWarning WarningFloat + hi! link LspDiagnosticsFloatingInfo InfoFloat + hi! link LspDiagnosticsFloatingHint HintFloat + + hi! link LspDiagnosticsUnderlineError ErrorHighlight + hi! link LspDiagnosticsUnderlineWarning WarningHighlight + hi! link LspDiagnosticsUnderlineInfo InfoHighlight + hi! link LspDiagnosticsUnderlineHint HintHighlight + + hi! link LspReferenceText ReferenceText + hi! link LspReferenceRead ReferenceRead + hi! link LspReferenceWrite ReferenceWrite +endif + +" Java +call hi("javaOperator", s:gui0D, "", s:cterm0D, "", "", "") + +" JSON +hi! link jsonKeyword ThemeGreen +hi! link jsonQuote ThemeGreen +hi! link jsonBraces ThemeFg1 +hi! link jsonString ThemeFg1 + +" Markdown +hi! link markdownH1 ThemeRedBold +hi! link markdownH2 ThemeRed +hi! link markdownH3 ThemeRed +hi! link markdownH4 ThemeRed +hi! link markdownH5 ThemeRed +hi! link markdownH6 ThemeRed + +hi! link markdownCode ThemeYellow +hi! link markdownCodeBlock ThemeYellow +hi! link markdownCodeDelimiter ThemeYellow + +hi! link markdownBlockquote ThemeGrey +hi! link markdownListMarker ThemeBlue +hi! link markdownOrderedListMarker ThemeBlue +hi! link markdownRule ThemeGrey +hi! link markdownHeadingRule ThemeGrey + +hi! link markdownUrlDelimiter ThemeFg3 +hi! link markdownLinkDelimiter ThemeFg3 +hi! link markdownLinkTextDelimiter ThemeFg3 +hi! link markdownHeadingDelimiter ThemeOrange +hi! link markdownUrlTitleDelimiter ThemeGreen + +hi! link markdownLink ThemeGreen +hi! link markdownWikiLink ThemeViolet +hi! link markdownUrl ThemeOrange +hi! link markdownInlineUrl ThemeOrange + +hi! link markdownLinkText ThemeViolet +hi! link markdownIdDeclaration markdownLinkText + +"call s:HL('markdownItalic', s:fg3, s:none, s:italic) +"call s:HL('markdownLinkText', s:gray, s:none, s:underline) + + +" Remove functions +delf hi + +" Remove color variables +unlet s:gui00 s:gui01 s:gui02 s:gui03 s:gui04 s:gui05 s:gui06 s:gui07 s:gui08 s:gui09 s:gui0A s:gui0B s:gui0C s:gui0D s:gui0E s:gui0F s:guibg +unlet s:cterm00 s:cterm01 s:cterm02 s:cterm03 s:cterm04 s:cterm05 s:cterm06 s:cterm07 s:cterm08 s:cterm09 s:cterm0A s:cterm0B s:cterm0C s:cterm0D s:cterm0E s:cterm0F s:ctermbg diff --git a/apps/nvim/soft-monobiome-light.vim b/apps/nvim/soft-monobiome-light.vim new file mode 100644 index 0000000..affea3e --- /dev/null +++ b/apps/nvim/soft-monobiome-light.vim @@ -0,0 +1,882 @@ +" vi:syntax=vim +" +" Top-level remarks: +" +" - `hi` sets highlight colors for syntax groups, allowing one to specify fg and bg colors +" for GUI and terminal Vim. +" - `link` allows for linking one syntax group to another, reusing the same color +" settings. Language-specific groups can then point to one of the base color highlight +" groups, for example, without needing to repeat the raw color values. + +" GUI color definitions +let s:gui00 = "#bebebe" +let g:base16_gui00 = "#bebebe" +let s:gui01 = "#aeaeae" +let g:base16_gui01 = "#aeaeae" +let s:gui02 = "#9e9e9e" +let g:base16_gui02 = "#9e9e9e" +let s:gui03 = "#8f8f8f" +let g:base16_gui03 = "#8f8f8f" +let s:gui04 = "#2e2e2e" +let g:base16_gui04 = "#2e2e2e" +let s:gui05 = "#222222" +let g:base16_gui05 = "#222222" +let s:gui06 = "#161616" +let g:base16_gui06 = "#161616" +let s:gui07 = "#0b0b0b" +let g:base16_gui07 = "#0b0b0b" +let s:gui08 = "#9d1912" +let g:base16_gui08 = "#9d1912" +let s:gui09 = "#7c4706" +let g:base16_gui09 = "#7c4706" +let s:gui0A = "#5b572e" +let g:base16_gui0A = "#5b572e" +let s:gui0B = "#2e6337" +let g:base16_gui0B = "#2e6337" +let s:gui0C = "#2e6337" +let g:base16_gui0C = "#2e6337" +let s:gui0D = "#2d5299" +let g:base16_gui0D = "#2d5299" +let s:gui0E = "#2d5299" +let g:base16_gui0E = "#2d5299" +let s:gui0F = "#9d1912" +let g:base16_gui0F = "#9d1912" + +let s:grey = "#555555" + +" Terminal color definitions +let s:cterm00 = "00" +let g:base16_cterm00 = "00" +let s:cterm03 = "08" +let g:base16_cterm03 = "08" +let s:cterm05 = "07" +let g:base16_cterm05 = "07" +let s:cterm07 = "15" +let g:base16_cterm07 = "15" +let s:cterm08 = "01" +let g:base16_cterm08 = "01" +let s:cterm0A = "03" +let g:base16_cterm0A = "03" +let s:cterm0B = "02" +let g:base16_cterm0B = "02" +let s:cterm0C = "06" +let g:base16_cterm0C = "06" +let s:cterm0D = "04" +let g:base16_cterm0D = "04" +let s:cterm0E = "05" +let g:base16_cterm0E = "05" + +let s:cterm01 = "10" +let g:base16_cterm01 = "10" +let s:cterm02 = "11" +let g:base16_cterm02 = "11" +let s:cterm04 = "12" +let g:base16_cterm04 = "12" +let s:cterm06 = "13" +let g:base16_cterm06 = "13" +let s:cterm09 = "09" +let g:base16_cterm09 = "09" +let s:cterm0F = "14" +let g:base16_cterm0F = "14" + +" Neovim terminal colours +if has("nvim") + let g:terminal_color_0 = "#bebebe" + let g:terminal_color_1 = "#9d1912" + let g:terminal_color_2 = "#2e6337" + let g:terminal_color_3 = "#5b572e" + let g:terminal_color_4 = "#2d5299" + let g:terminal_color_5 = "#2d5299" + let g:terminal_color_6 = "#2e6337" + let g:terminal_color_7 = "#222222" + let g:terminal_color_8 = "#8f8f8f" + let g:terminal_color_9 = "#9d1912" + let g:terminal_color_10 = "#2e6337" + let g:terminal_color_11 = "#5b572e" + let g:terminal_color_12 = "#2d5299" + let g:terminal_color_13 = "#2d5299" + let g:terminal_color_14 = "#2e6337" + let g:terminal_color_15 = "#0b0b0b" + let g:terminal_color_background = g:terminal_color_0 + let g:terminal_color_foreground = g:terminal_color_5 + + if &background == "light" + let g:terminal_color_background = g:terminal_color_7 + let g:terminal_color_foreground = g:terminal_color_2 + endif + +elseif has("terminal") + let g:terminal_ansi_colors = [ + \ "#bebebe", + \ "#9d1912", + \ "#2e6337", + \ "#5b572e", + \ "#2d5299", + \ "#2d5299", + \ "#2e6337", + \ "#222222", + \ "#8f8f8f", + \ "#9d1912", + \ "#2e6337", + \ "#5b572e", + \ "#2d5299", + \ "#2d5299", + \ "#2e6337", + \ "#0b0b0b", + \ ] +endif + +let s:guibg = s:gui00 +let s:ctermbg = s:cterm00 + +" Theme setup +hi clear +syntax reset +let g:colors_name = "active" + +" Highlighting function +" Optional variables are attributes and guisp +function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) + " For a given syntax group, sets the GUI and terminal foreground and backgrounds + " Optional parameters are interpreted as `attr` and `guisp`, the first of which appears + " to be a modifier for the group (e.g., bold, italic), and `guisp` appears to be + " 'special' colors used for underlines in the GUI. + let l:attr = get(a:, 1, "") + let l:guisp = get(a:, 2, "") + + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + + if a:guifg != "" + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=" . a:guifg + endif + endif + + if a:guibg != "" + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=" . a:guibg + endif + endif + + if a:ctermfg != "" + exec "hi " . a:group . " ctermfg=" . a:ctermfg + endif + + if a:ctermbg != "" + exec "hi " . a:group . " ctermbg=" . a:ctermbg + endif + + if l:attr != "" + exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr + endif + + if l:guisp != "" + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=" . l:guisp + endif + endif +endfunction + + +fun hi(group, guifg, guibg, ctermfg, ctermbg, attr, guisp) + call g:Base16hi(a:group, a:guifg, a:guibg, a:ctermfg, a:ctermbg, a:attr, a:guisp) +endfun + + +" color groups for interpretability +call hi("ThemeBg0", s:gui00, "", s:cterm00, "", "", "") +call hi("ThemeBg1", s:gui01, "", s:cterm01, "", "", "") +call hi("ThemeBg2", s:gui02, "", s:cterm02, "", "", "") +call hi("ThemeBg3", s:gui03, "", s:cterm03, "", "", "") +call hi("ThemeFg3", s:gui04, "", s:cterm04, "", "", "") +call hi("ThemeFg2", s:gui05, "", s:cterm05, "", "", "") +call hi("ThemeFg1", s:gui06, "", s:cterm06, "", "", "") +call hi("ThemeFg0", s:gui07, "", s:cterm07, "", "", "") +" +call hi("ThemeRed", s:gui08, "", s:cterm08, "", "", "") +call hi("ThemeOrange", s:gui09, "", s:cterm09, "", "", "") +call hi("ThemeYellow", s:gui0A, "", s:cterm0A, "", "", "") +call hi("ThemeGreen", s:gui0B, "", s:cterm0B, "", "", "") +call hi("ThemeCyan", s:gui0C, "", s:cterm0C, "", "", "") +call hi("ThemeBlue", s:gui0D, "", s:cterm0D, "", "", "") +call hi("ThemeViolet", s:gui0E, "", s:cterm0E, "", "", "") +call hi("ThemeMagenta", s:gui0F, "", s:cterm0F, "", "", "") + +call hi("ThemeRedBold", s:gui08, "", s:cterm08, "", "bold", "") +call hi("ThemeOrangeBold", s:gui09, "", s:cterm09, "", "bold", "") +call hi("ThemeYellowBold", s:gui0A, "", s:cterm0A, "", "bold", "") +call hi("ThemeGreenBold", s:gui0B, "", s:cterm0B, "", "bold", "") +call hi("ThemeCyanBold", s:gui0C, "", s:cterm0C, "", "bold", "") +call hi("ThemeBlueBold", s:gui0D, "", s:cterm0D, "", "bold", "") +call hi("ThemeVioletBold", s:gui0E, "", s:cterm0E, "", "bold", "") +call hi("ThemeMagentaBold", s:gui0F, "", s:cterm0F, "", "bold", "") + +call hi("ThemeRedItalic", s:gui08, "", s:cterm08, "", "italic", "") +call hi("ThemeOrangeItalic", s:gui09, "", s:cterm09, "", "italic", "") +call hi("ThemeYellowItalic", s:gui0A, "", s:cterm0A, "", "italic", "") +call hi("ThemeGreenItalic", s:gui0B, "", s:cterm0B, "", "italic", "") +call hi("ThemeCyanItalic", s:gui0C, "", s:cterm0C, "", "italic", "") +call hi("ThemeBlueItalic", s:gui0D, "", s:cterm0D, "", "italic", "") +call hi("ThemeVioletItalic", s:gui0E, "", s:cterm0E, "", "italic", "") +call hi("ThemeMagentaItalic", s:gui0F, "", s:cterm0F, "", "italic", "") + +call hi("ThemeGrey", s:grey, "", s:cterm03, "", "", "") +call hi("ThemeGreyItalic", s:grey, "", s:cterm03, "", "italic", "") + + +" Vim editor colors +call hi("Normal", s:gui05, s:guibg, s:cterm05, s:ctermbg, "", "") +call hi("Bold", "", "", "", "", "bold", "") +call hi("Debug", s:gui08, "", s:cterm08, "", "", "") +call hi("Directory", s:gui0D, "", s:cterm0D, "", "", "") +call hi("Error", s:guibg, s:gui08, s:ctermbg, s:cterm08, "", "") +call hi("ErrorMsg", s:gui08, s:guibg, s:cterm08, s:ctermbg, "", "") +call hi("Exception", s:gui08, "", s:cterm08, "", "", "") +call hi("FoldColumn", s:gui03, s:guibg, s:cterm03, s:ctermbg, "", "") +call hi("Folded", s:gui02, s:guibg, s:cterm02, s:ctermbg, "", "") +call hi("IncSearch", s:gui01, s:gui09, s:cterm01, s:cterm09, "none", "") +call hi("Italic", "", "", "", "", "italic", "") +call hi("Macro", s:gui0C, "", s:cterm0C, "", "", "") +call hi("MatchParen", "", s:gui03, "", s:cterm03, "", "") +call hi("ModeMsg", s:gui0B, "", s:cterm0B, "", "", "") +call hi("MoreMsg", s:gui0B, "", s:cterm0B, "", "", "") +call hi("Question", s:gui0D, "", s:cterm0D, "", "", "") +call hi("Search", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "", "") +call hi("Substitute", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "none", "") +call hi("SpecialKey", s:gui03, "", s:cterm03, "", "", "") +call hi("TooLong", s:gui08, "", s:cterm08, "", "", "") +call hi("Underlined", "", "", "", "", "underline", "fg") +call hi("Visual", "", s:gui02, "", s:cterm02, "", "") +call hi("VisualNOS", s:gui08, "", s:cterm08, "", "", "") +call hi("WarningMsg", s:gui08, "", s:cterm08, "", "", "") +call hi("WildMenu", s:guibg, s:gui06, s:ctermbg, s:cterm05, "", "") +call hi("Title", s:gui0D, "", s:cterm0D, "", "none", "") +call hi("Conceal", s:gui0D, s:guibg, s:cterm0D, s:ctermbg, "", "") +call hi("Cursor", s:gui05, s:guibg, "", "", "inverse", "") +call hi("NonText", s:gui03, "", s:cterm03, "", "", "") +call hi("Whitespace", s:gui03, "", s:cterm03, "", "", "") +call hi("LineNr", s:gui03, s:guibg, s:cterm03, s:ctermbg, "", "") +call hi("SignColumn", s:gui03, s:guibg, s:cterm03, s:ctermbg, "", "") +call hi("StatusLine", s:gui07, s:gui01, s:cterm07, s:cterm01, "none", "") +call hi("StatusLineNC", s:gui06, s:gui01, s:cterm05, s:cterm01, "none", "") +call hi("VertSplit", s:gui01, s:guibg, s:cterm01, s:ctermbg, "none", "") +call hi("ColorColumn", "", s:gui01, "", s:cterm01, "none", "") +call hi("CursorColumn", "", s:gui01, "", s:cterm01, "none", "") +call hi("CursorLine", "", s:gui01, "", s:cterm01, "none", "") +call hi("CursorLineNr", s:gui04, s:gui01, s:cterm04, s:cterm01, "bold", "") +call hi("QuickFixLine", "", s:gui01, "", s:cterm01, "none", "") +call hi("PMenu", s:gui06, s:gui01, s:cterm06, s:cterm01, "none", "") +call hi("PMenuSel", s:gui06, s:gui02, s:cterm06, s:cterm02, "", "") +call hi("PMenuSbar", "", s:gui03, "", s:cterm03, "", "") +call hi("PMenuThumb", "", s:gui04, "", s:cterm04, "", "") +call hi("TabLine", s:gui03, s:gui01, s:cterm03, s:cterm01, "none", "") +call hi("TabLineFill", s:gui03, s:gui01, s:cterm03, s:cterm01, "none", "") +call hi("TabLineSel", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "none", "") + +" Standard syntax +hi! link Boolean ThemeOrange +hi! link Character ThemeRed + +"call hi("Comment", s:gui03, "", s:cterm03, "", "italic", "") +hi! link Comment ThemeGreyItalic + +hi! link Conditional ThemeRed +hi! link Constant ThemeOrange +call hi("Define", s:gui0E, "", s:cterm0E, "", "none", "") +hi! link Delimiter ThemeFg1 + +if has("patch-8.0.1038") + call hi("Deprecated", "", "", "", "", "strikethrough", "") +endif + +hi! link Float ThemeOrange +hi! link Function ThemeBlue +call hi("Identifier", s:gui06, "", s:cterm05, "", "none", "") +hi! link Include ThemeBlue +hi! link Constant ThemeOrange +call hi("Keyword", s:gui0E, "", s:cterm0E, "", "none", "") +hi! link Label ThemeOrange +hi! link Number ThemeOrange +hi! link Operator ThemeYellow +hi! link PreProc ThemeOrange +hi! link Repeat ThemeViolet +hi! link Special ThemeYellow +hi! link SpecialChar ThemeMagenta +hi! link Statement ThemeRed +hi! link StorageClass ThemeOrange +hi! link String ThemeGreen +hi! link Structure ThemeOrange +hi! link Tag ThemeOrange + +call hi("Todo", s:gui08, s:guibg, s:cterm08, s:ctermbg, "italic", "") +call hi("Type", s:gui0A, "", s:cterm0A, "", "none", "") + +hi! link Typedef ThemeOrange + + +" Treesitter +if has("nvim-0.8.0") + call hi("@field", s:gui08, "", s:cterm08, "", "", "") + call hi("@property", s:gui08, "", s:cterm08, "", "", "") + call hi("@namespace", s:gui06, "", s:cterm05, "", "italic", "") + call hi("@variable.builtin", s:gui06, "", s:cterm05, "", "italic", "") + call hi("@text.reference", s:gui08, "", s:cterm08, "", "", "") + call hi("@text.uri", s:gui08, "", s:cterm08, "", "italic", "") + + " Annotations & Attributes + call hi("@annotation", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@attribute", s:gui0D, "", s:cterm0D, "", "", "") + + " Booleans, Characters & Comments + call hi("@boolean", s:gui09, "", s:cterm09, "", "", "") + call hi("@character", s:gui08, "", s:cterm08, "", "", "") + call hi("@character.special", s:gui0F, "", s:cterm0F, "", "", "") + call hi("@comment", s:gui03, "", s:cterm03, "", "", "") + + " Conditionals, Constants & Debugging + call hi("@keyword.conditional", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@constant", s:gui09, "", s:cterm09, "", "", "") + call hi("@constant.builtin", s:gui09, "", s:cterm09, "", "", "") + call hi("@constant.macro", s:gui08, "", s:cterm08, "", "", "") + call hi("@keyword.debug", s:gui08, "", s:cterm08, "", "", "") + + " Directives & Exceptions + call hi("@keyword.directive.define", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@keyword.exception", s:gui0E, "", s:cterm0E, "", "", "") + + " Floats & Functions + call hi("@number.float", s:gui09, "", s:cterm09, "", "", "") + call hi("@function", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@function.builtin", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@function.call", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@function.macro", s:gui08, "", s:cterm08, "", "", "") + + " Imports, Operators & Returns + call hi("@keyword.import", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@keyword.coroutine", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@keyword.operator", s:gui06, "", s:cterm05, "", "", "") + call hi("@keyword.return", s:gui0E, "", s:cterm0E, "", "", "") + + " Methods & Namespaces + call hi("@function.method", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@function.method.call", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@namespace.builtin", s:gui0E, "", s:cterm0E, "", "", "") + + " Numbers & Directives + call hi("@none", s:gui06, "", s:cterm05, "", "", "") + call hi("@number", s:gui09, "", s:cterm09, "", "", "") + call hi("@keyword.directive", s:gui0E, "", s:cterm0E, "", "", "") + + " Repeats, Storage & Strings + call hi("@keyword.repeat", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@keyword.storage", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@string", s:gui0B, "", s:cterm0B, "", "", "") + + " Tags & Markup + call hi("@markup.link.label", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.link.label.symbol", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@tag", s:gui08, "", s:cterm08, "", "", "") + call hi("@tag.attribute", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@tag.delimiter", s:gui0F, "", s:cterm0F, "", "", "") + + " More Markup + call hi("@markup", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.environment", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.environment.name", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.raw", s:gui09, "", s:cterm09, "", "", "") + call hi("@markup.math", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.strong", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.emphasis", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.strikethrough", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.underline", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.heading", s:gui0D, "", s:cterm0D, "", "", "") + + " Comments & Types + call hi("@comment.note", s:gui03, "", s:cterm03, "", "", "") + call hi("@comment.error", s:gui08, "", s:cterm08, "", "", "") + call hi("@comment.hint", s:gui0B, "", s:cterm0B, "", "", "") + call hi("@comment.info", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@comment.warning", s:gui09, "", s:cterm09, "", "", "") + call hi("@comment.todo", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.link.url", s:gui09, "", s:cterm09, "", "", "") + call hi("@type", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@type.definition", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@type.qualifier", s:gui0E, "", s:cterm0E, "", "", "") +endif + +" Standard highlights to be used by plugins +if has("patch-8.0.1038") + call hi("Deprecated", "", "", "", "", "strikethrough", "") +endif +call hi("SearchMatch", s:gui0C, "", s:cterm0C, "", "", "") + +call hi("GitAddSign", s:gui0B, "", s:cterm0B, "", "", "") +call hi("GitChangeSign", s:gui04, "", s:cterm04, "", "", "") +call hi("GitDeleteSign", s:gui08, "", s:cterm08, "", "", "") +call hi("GitChangeDeleteSign", s:gui04, "", s:cterm04, "", "", "") + +call hi("ErrorSign", s:gui08, "", s:cterm08, "", "", "") +call hi("WarningSign", s:gui09, "", s:cterm09, "", "", "") +call hi("InfoSign", s:gui0D, "", s:cterm0D, "", "", "") +call hi("HintSign", s:gui0C, "", s:cterm0C, "", "", "") +call hi("OkSign", s:gui0B, "", s:cterm0B, "", "", "") + +call hi("ErrorFloat", s:gui08, s:gui01, s:cterm08, s:cterm01, "", "") +call hi("WarningFloat", s:gui09, s:gui01, s:cterm09, s:cterm01, "", "") +call hi("InfoFloat", s:gui0D, s:gui01, s:cterm0D, s:cterm01, "", "") +call hi("HintFloat", s:gui0C, s:gui01, s:cterm0C, s:cterm01, "", "") +call hi("OkFloat", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "") + +call hi("ErrorHighlight", "", "", s:ctermbg, s:cterm08, "underline", s:gui08) +call hi("WarningHighlight", "", "", s:ctermbg, s:cterm09, "underline", s:gui09) +call hi("InfoHighlight", "", "", s:ctermbg, s:cterm0D, "underline", s:gui0D) +call hi("HintHighlight", "", "", s:ctermbg, s:cterm0C, "underline", s:gui0C) +call hi("OkHighlight", "", "", s:ctermbg, s:cterm0B, "underline", s:gui0B) + +call hi("SpellBad", "", "", s:ctermbg, s:cterm08, "undercurl", s:gui08) +call hi("SpellLocal", "", "", s:ctermbg, s:cterm0C, "undercurl", s:gui0C) +call hi("SpellCap", "", "", s:ctermbg, s:cterm0D, "undercurl", s:gui0D) +call hi("SpellRare", "", "", s:ctermbg, s:cterm0E, "undercurl", s:gui0E) + +call hi("ReferenceText", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "", "") +call hi("ReferenceRead", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "", "") +call hi("ReferenceWrite", s:gui01, s:gui08, s:cterm01, s:cterm08, "", "") + +" C +call hi("cOperator", s:gui0C, "", s:cterm0C, "", "", "") +call hi("cPreCondit", s:gui0E, "", s:cterm0E, "", "", "") + +" C# +call hi("csClass", s:gui0A, "", s:cterm0A, "", "", "") +call hi("csAttribute", s:gui0A, "", s:cterm0A, "", "", "") +call hi("csModifier", s:gui0E, "", s:cterm0E, "", "", "") +call hi("csType", s:gui08, "", s:cterm08, "", "", "") +call hi("csUnspecifiedStatement", s:gui0D, "", s:cterm0D, "", "", "") +call hi("csContextualStatement", s:gui0E, "", s:cterm0E, "", "", "") +call hi("csNewDecleration", s:gui08, "", s:cterm08, "", "", "") + +" Clap +hi! link ClapInput ColorColumn +hi! link ClapSpinner ColorColumn +hi! link ClapDisplay Default +hi! link ClapPreview ColorColumn +hi! link ClapCurrentSelection CursorLine +hi! link ClapNoMatchesFound ErrorFloat + +" Coc +hi! link CocErrorSign ErrorSign +hi! link CocWarningSign WarningSign +hi! link CocInfoSign InfoSign +hi! link CocHintSign HintSign + +hi! link CocErrorFloat ErrorFloat +hi! link CocWarningFloat WarningFloat +hi! link CocInfoFloat InfoFloat +hi! link CocHintFloat HintFloat + +hi! link CocErrorHighlight ErrorHighlight +hi! link CocWarningHighlight WarningHighlight +hi! link CocInfoHighlight InfoHighlight +hi! link CocHintHighlight HintHighlight + +hi! link CocSem_angle Keyword +hi! link CocSem_annotation Keyword +hi! link CocSem_attribute Type +hi! link CocSem_bitwise Keyword +hi! link CocSem_boolean Boolean +hi! link CocSem_brace Normal +hi! link CocSem_bracket Normal +hi! link CocSem_builtinAttribute Type +hi! link CocSem_builtinType Type +hi! link CocSem_character String +hi! link CocSem_class Structure +hi! link CocSem_colon Normal +hi! link CocSem_comma Normal +hi! link CocSem_comment Comment +hi! link CocSem_comparison Keyword +hi! link CocSem_concept Keyword +hi! link CocSem_constParameter Identifier +hi! link CocSem_dependent Keyword +hi! link CocSem_dot Keyword +hi! link CocSem_enum Structure +hi! link CocSem_enumMember Constant +hi! link CocSem_escapeSequence Type +hi! link CocSem_event Identifier +hi! link CocSem_formatSpecifier Type +hi! link CocSem_function Function +hi! link CocSem_interface Type +hi! link CocSem_keyword Keyword +hi! link CocSem_label Keyword +hi! link CocSem_logical Keyword +hi! link CocSem_macro Macro +hi! link CocSem_method Function +hi! link CocSem_modifier Keyword +hi! link CocSem_namespace Identifier +hi! link CocSem_number Number +hi! link CocSem_operator Operator +hi! link CocSem_parameter Identifier +hi! link CocSem_parenthesis Normal +hi! link CocSem_property Identifier +hi! link CocSem_punctuation Keyword +hi! link CocSem_regexp Type +hi! link CocSem_selfKeyword Constant +hi! link CocSem_semicolon Normal +hi! link CocSem_string String +hi! link CocSem_struct Structure +hi! link CocSem_type Type +hi! link CocSem_typeAlias Type +hi! link CocSem_typeParameter Type +hi! link CocSem_unknown Normal +hi! link CocSem_variable Identifier + +call hi("CocHighlightRead", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "") +call hi("CocHighlightText", s:gui0A, s:gui01, s:cterm0A, s:cterm01, "", "") +call hi("CocHighlightWrite", s:gui08, s:gui01, s:cterm08, s:cterm01, "", "") +call hi("CocListMode", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "bold", "") +call hi("CocListPath", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "", "") +call hi("CocSessionsName", s:gui06, "", s:cterm05, "", "", "") + +" CSS +hi! link cssBraces ThemeBlue +hi! link cssFunctionName ThemeYellow +hi! link cssIdentifier ThemeOrange +hi! link cssClassName ThemeGreen +hi! link cssColor ThemeBlue +hi! link cssSelectorOp ThemeBlue +hi! link cssSelectorOp2 ThemeBlue +hi! link cssImportant ThemeGreen +hi! link cssVendor ThemeFg1 + +hi! link cssTextProp ThemeCyan +hi! link cssAnimationProp ThemeCyan +hi! link cssUIProp ThemeYellow +hi! link cssTransformProp ThemeCyan +hi! link cssTransitionProp ThemeCyan +hi! link cssPrintProp ThemeCyan +hi! link cssPositioningProp ThemeYellow +hi! link cssBoxProp ThemeCyan +hi! link cssFontDescriptorProp ThemeCyan +hi! link cssFlexibleBoxProp ThemeCyan +hi! link cssBorderOutlineProp ThemeCyan +hi! link cssBackgroundProp ThemeCyan +hi! link cssMarginProp ThemeCyan +hi! link cssListProp ThemeCyan +hi! link cssTableProp ThemeCyan +hi! link cssFontProp ThemeCyan +hi! link cssPaddingProp ThemeCyan +hi! link cssDimensionProp ThemeCyan +hi! link cssRenderProp ThemeCyan +hi! link cssColorProp ThemeCyan +hi! link cssGeneratedContentProp ThemeCyan + + +" CMP +hi! link CmpItemAbbrDeprecated Deprecated +hi! link CmpItemAbbrMatch SearchMatch +hi! link CmpItemAbbrMatchFuzzy SearchMatch +hi! link CmpItemKindClass Type +hi! link CmpItemKindColor Keyword +hi! link CmpItemKindConstant Constant +hi! link CmpItemKindConstructor Special +hi! link CmpItemKindEnum Type +hi! link CmpItemKindEnumMember Constant +hi! link CmpItemKindEvent Identifier +hi! link CmpItemKindField Character +hi! link CmpItemKindFile Directory +hi! link CmpItemKindFolder Directory +hi! link CmpItemKindFunction Function +hi! link CmpItemKindInterface Type +hi! link CmpItemKindKeyword Keyword +hi! link CmpItemKindMethod Function +hi! link CmpItemKindModule Namespace +hi! link CmpItemKindOperator Operator +hi! link CmpItemKindProperty Identifier +hi! link CmpItemKindReference Character +hi! link CmpItemKindSnippet String +hi! link CmpItemKindStruct Type +hi! link CmpItemKindText Text +hi! link CmpItemKindUnit Namespace +hi! link CmpItemKindValue Comment +hi! link CmpItemKindVariable Identifier + +if has("nvim-0.8.0") + hi! link CmpItemKindField @field + hi! link CmpItemKindProperty @property +endif + +" Diff +call hi("DiffAdd", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "") +call hi("DiffChange", s:gui06, s:gui01, s:cterm05, s:cterm01, "", "") +call hi("DiffDelete", s:gui02, s:guibg, s:cterm02, s:ctermbg, "", "") +call hi("DiffText", s:gui0D, s:gui01, s:cterm0D, s:cterm01, "", "") +call hi("DiffAdded", s:gui0B, s:guibg, s:cterm0B, s:ctermbg, "", "") +call hi("DiffFile", s:gui08, s:guibg, s:cterm08, s:ctermbg, "", "") +call hi("DiffNewFile", s:gui0B, s:guibg, s:cterm0B, s:ctermbg, "", "") +call hi("DiffLine", s:gui0D, s:guibg, s:cterm0D, s:ctermbg, "", "") +call hi("DiffRemoved", s:gui08, s:guibg, s:cterm08, s:ctermbg, "", "") + +" Git +call hi("gitcommitOverflow", s:gui08, "", s:cterm08, "", "", "") +call hi("gitcommitSummary", s:gui0B, "", s:cterm0B, "", "", "") +call hi("gitcommitComment", s:gui03, "", s:cterm03, "", "", "") +call hi("gitcommitUntracked", s:gui03, "", s:cterm03, "", "", "") +call hi("gitcommitDiscarded", s:gui03, "", s:cterm03, "", "", "") +call hi("gitcommitSelected", s:gui03, "", s:cterm03, "", "", "") +call hi("gitcommitHeader", s:gui0E, "", s:cterm0E, "", "", "") +call hi("gitcommitSelectedType", s:gui0D, "", s:cterm0D, "", "", "") +call hi("gitcommitUnmergedType", s:gui0D, "", s:cterm0D, "", "", "") +call hi("gitcommitDiscardedType", s:gui0D, "", s:cterm0D, "", "", "") +call hi("gitcommitBranch", s:gui09, "", s:cterm09, "", "bold", "") +call hi("gitcommitUntrackedFile", s:gui0A, "", s:cterm0A, "", "", "") +call hi("gitcommitUnmergedFile", s:gui08, "", s:cterm08, "", "bold", "") +call hi("gitcommitDiscardedFile", s:gui08, "", s:cterm08, "", "bold", "") +call hi("gitcommitSelectedFile", s:gui0B, "", s:cterm0B, "", "bold", "") + +" GitGutter +hi! link GitGutterAdd GitAddSign +hi! link GitGutterChange GitChangeSign +hi! link GitGutterDelete GitDeleteSign +hi! link GitGutterChangeDelete GitChangeDeleteSign + +" indent-blankline (nvim) +if has("nvim") + call hi("@ibl.indent.char.1",s:gui01, "", s:cterm01, "", "", "") +endif + +" HTML +call hi("htmlBold", s:gui07, "", s:cterm0A, "", "bold", "") +call hi("htmlItalic", s:gui06, "", s:cterm0E, "", "italic", "") +call hi("htmlEndTag", s:gui06, "", s:cterm05, "", "", "") +call hi("htmlTag", s:gui06, "", s:cterm05, "", "", "") + +" JavaScript +call hi("javaScript", s:gui06, "", s:cterm05, "", "", "") +call hi("javaScriptBraces", s:gui06, "", s:cterm05, "", "", "") +call hi("javaScriptNumber", s:gui09, "", s:cterm09, "", "", "") +" pangloss/vim-javascript +call hi("jsOperator", s:gui0D, "", s:cterm0D, "", "", "") +call hi("jsStatement", s:gui0E, "", s:cterm0E, "", "", "") +call hi("jsReturn", s:gui0E, "", s:cterm0E, "", "", "") +call hi("jsThis", s:gui08, "", s:cterm08, "", "", "") +call hi("jsClassDefinition", s:gui0A, "", s:cterm0A, "", "", "") +call hi("jsFunction", s:gui0E, "", s:cterm0E, "", "", "") +call hi("jsFuncName", s:gui0D, "", s:cterm0D, "", "", "") +call hi("jsFuncCall", s:gui0D, "", s:cterm0D, "", "", "") +call hi("jsClassFuncName", s:gui0D, "", s:cterm0D, "", "", "") +call hi("jsClassMethodType", s:gui0E, "", s:cterm0E, "", "", "") +call hi("jsRegexpString", s:gui0C, "", s:cterm0C, "", "", "") +call hi("jsGlobalObjects", s:gui0A, "", s:cterm0A, "", "", "") +call hi("jsGlobalNodeObjects", s:gui0A, "", s:cterm0A, "", "", "") +call hi("jsExceptions", s:gui0A, "", s:cterm0A, "", "", "") +call hi("jsBuiltins", s:gui0A, "", s:cterm0A, "", "", "") + +" Mail +call hi("mailQuoted1", s:gui0A, "", s:cterm0A, "", "", "") +call hi("mailQuoted2", s:gui0B, "", s:cterm0B, "", "", "") +call hi("mailQuoted3", s:gui0E, "", s:cterm0E, "", "", "") +call hi("mailQuoted4", s:gui0C, "", s:cterm0C, "", "", "") +call hi("mailQuoted5", s:gui0D, "", s:cterm0D, "", "", "") +call hi("mailQuoted6", s:gui0A, "", s:cterm0A, "", "", "") +call hi("mailURL", s:gui0D, "", s:cterm0D, "", "", "") +call hi("mailEmail", s:gui0D, "", s:cterm0D, "", "", "") + +" Markdown +call hi("markdownCode", s:gui0B, "", s:cterm0B, "", "", "") +call hi("markdownError", s:gui06, s:guibg, s:cterm05, s:ctermbg, "", "") +call hi("markdownCodeBlock", s:gui0B, "", s:cterm0B, "", "", "") +call hi("markdownHeadingDelimiter", s:gui0D, "", s:cterm0D, "", "", "") + +" Matchup +call hi("MatchWord", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "underline", "") + +" NERDTree +call hi("NERDTreeDirSlash", s:gui0D, "", s:cterm0D, "", "", "") +call hi("NERDTreeExecFile", s:gui06, "", s:cterm05, "", "", "") + +" Netrw +hi! link netrwDir ThemeCyan +hi! link netrwClassify ThemeCyan +hi! link netrwLink ThemeBg3 +hi! link netrwSymLink ThemeFg1 +hi! link netrwExe ThemeYellow +hi! link netrwComment ThemeBg3 +hi! link netrwList ThemeBlue +hi! link netrwHelpCmd ThemeCyan +hi! link netrwCmdSep ThemeFg3 +hi! link netrwVersion ThemeGreen + +" PHP +call hi("phpMemberSelector", s:gui06, "", s:cterm05, "", "", "") +call hi("phpComparison", s:gui06, "", s:cterm05, "", "", "") +call hi("phpParent", s:gui06, "", s:cterm05, "", "", "") +call hi("phpMethodsVar", s:gui0C, "", s:cterm0C, "", "", "") + +" Python +"call hi("pythonOperator", s:gui0E, "", s:cterm0E, "", "", "") +"call hi("pythonRepeat", s:gui0E, "", s:cterm0E, "", "", "") +"call hi("pythonInclude", s:gui0E, "", s:cterm0E, "", "", "") +"call hi("pythonStatement", s:gui0E, "", s:cterm0E, "", "", "") + +" hi! link pythonBuiltin ThemeCyan +" hi! link pythonBuiltinObj ThemeCyan +" hi! link pythonBuiltinFunc ThemeGreen +" hi! link pythonFunction Function +hi! link pythonDecorator ThemeYellow +hi! link pythonDecoratorName ThemeYellow +" hi! link pythonTripleQuotes ThemeGreenItalic +" hi! link pythonInclude ThemeBlue +" hi! link pythonImport ThemeBlue +" hi! link pythonRun ThemeBlue +" hi! link pythonCoding ThemeBlue +" hi! link pythonOperator ThemeRed +" hi! link pythonException ThemeRed +" hi! link pythonExceptions ThemeYellow +" hi! link pythonBoolean ThemeYellow +" hi! link pythonDot ThemeFg3 +" hi! link pythonConditional ThemeCyan +" hi! link pythonRepeat ThemeRed +" hi! link pythonDottedName ThemeGreen + + +" Ruby +call hi("rubyAttribute", s:gui0D, "", s:cterm0D, "", "", "") +call hi("rubyConstant", s:gui0A, "", s:cterm0A, "", "", "") +call hi("rubyInterpolationDelimiter", s:gui0F, "", s:cterm0F, "", "", "") +call hi("rubyRegexp", s:gui0C, "", s:cterm0C, "", "", "") +call hi("rubySymbol", s:gui0B, "", s:cterm0B, "", "", "") +call hi("rubyStringDelimiter", s:gui0B, "", s:cterm0B, "", "", "") + +" SASS +call hi("sassidChar", s:gui08, "", s:cterm08, "", "", "") +call hi("sassClassChar", s:gui09, "", s:cterm09, "", "", "") +call hi("sassInclude", s:gui0E, "", s:cterm0E, "", "", "") +call hi("sassMixing", s:gui0E, "", s:cterm0E, "", "", "") +call hi("sassMixinName", s:gui0D, "", s:cterm0D, "", "", "") + +" Signify +hi! link SignifySignAdd GitAddSign +hi! link SignifySignChange GitChangeSign +hi! link SignifySignDelete GitDeleteSign + +" Startify +call hi("StartifyBracket", s:gui03, "", s:cterm03, "", "", "") +call hi("StartifyFile", s:gui07, "", s:cterm07, "", "", "") +call hi("StartifyFooter", s:gui03, "", s:cterm03, "", "", "") +call hi("StartifyHeader", s:gui0B, "", s:cterm0B, "", "", "") +call hi("StartifyNumber", s:gui09, "", s:cterm09, "", "", "") +call hi("StartifyPath", s:gui03, "", s:cterm03, "", "", "") +call hi("StartifySection", s:gui0E, "", s:cterm0E, "", "", "") +call hi("StartifySelect", s:gui0C, "", s:cterm0C, "", "", "") +call hi("StartifySlash", s:gui03, "", s:cterm03, "", "", "") +call hi("StartifySpecial", s:gui03, "", s:cterm03, "", "", "") + +" LSP +if has("nvim") + hi! link DiagnosticError ErrorSign + hi! link DiagnosticWarn WarningSign + hi! link DiagnosticInfo InfoSign + hi! link DiagnosticHint HintSign + hi! link DiagnosticOk OkSign + + hi! link DiagnosticFloatingError ErrorFloat + hi! link DiagnosticFloatingWarn WarningFloat + hi! link DiagnosticFloatingInfo InfoFloat + hi! link DiagnosticFloatingHint HintFloat + hi! link DiagnosticFloatingOk OkFloat + + hi! link DiagnosticUnderlineError ErrorHighlight + hi! link DiagnosticUnderlineWarn WarningHighlight + hi! link DiagnosticUnderlineInfo InfoHighlight + hi! link DiagnosticUnderlineHint HintHighlight + hi! link DiagnosticUnderlineOk OkHighlight + + hi! link DiagnosticsVirtualTextError ErrorSign + hi! link DiagnosticsVirtualTextWarning WarningSign + hi! link DiagnosticsVirtualTextInfo InfoSign + hi! link DiagnosticsVirtualTextHint HintSign + hi! link DiagnosticsVirtualTextOk OkSign + + " Remove untill endif on next nvim release + hi! link LspDiagnosticsSignError ErrorSign + hi! link LspDiagnosticsSignWarning WarningSign + hi! link LspDiagnosticsSignInfo InfoSign + hi! link LspDiagnosticsSignHint HintSign + + hi! link LspDiagnosticsVirtualTextError ErrorSign + hi! link LspDiagnosticsVirtualTextWarning WarningSign + hi! link LspDiagnosticsVirtualTextInfo InfoSign + hi! link LspDiagnosticsVirtualTextHint HintSign + + hi! link LspDiagnosticsFloatingError ErrorFloat + hi! link LspDiagnosticsFloatingWarning WarningFloat + hi! link LspDiagnosticsFloatingInfo InfoFloat + hi! link LspDiagnosticsFloatingHint HintFloat + + hi! link LspDiagnosticsUnderlineError ErrorHighlight + hi! link LspDiagnosticsUnderlineWarning WarningHighlight + hi! link LspDiagnosticsUnderlineInfo InfoHighlight + hi! link LspDiagnosticsUnderlineHint HintHighlight + + hi! link LspReferenceText ReferenceText + hi! link LspReferenceRead ReferenceRead + hi! link LspReferenceWrite ReferenceWrite +endif + +" Java +call hi("javaOperator", s:gui0D, "", s:cterm0D, "", "", "") + +" JSON +hi! link jsonKeyword ThemeGreen +hi! link jsonQuote ThemeGreen +hi! link jsonBraces ThemeFg1 +hi! link jsonString ThemeFg1 + +" Markdown +hi! link markdownH1 ThemeRedBold +hi! link markdownH2 ThemeRed +hi! link markdownH3 ThemeRed +hi! link markdownH4 ThemeRed +hi! link markdownH5 ThemeRed +hi! link markdownH6 ThemeRed + +hi! link markdownCode ThemeYellow +hi! link markdownCodeBlock ThemeYellow +hi! link markdownCodeDelimiter ThemeYellow + +hi! link markdownBlockquote ThemeGrey +hi! link markdownListMarker ThemeBlue +hi! link markdownOrderedListMarker ThemeBlue +hi! link markdownRule ThemeGrey +hi! link markdownHeadingRule ThemeGrey + +hi! link markdownUrlDelimiter ThemeFg3 +hi! link markdownLinkDelimiter ThemeFg3 +hi! link markdownLinkTextDelimiter ThemeFg3 +hi! link markdownHeadingDelimiter ThemeOrange +hi! link markdownUrlTitleDelimiter ThemeGreen + +hi! link markdownLink ThemeGreen +hi! link markdownWikiLink ThemeViolet +hi! link markdownUrl ThemeOrange +hi! link markdownInlineUrl ThemeOrange + +hi! link markdownLinkText ThemeViolet +hi! link markdownIdDeclaration markdownLinkText + +"call s:HL('markdownItalic', s:fg3, s:none, s:italic) +"call s:HL('markdownLinkText', s:gray, s:none, s:underline) + + +" Remove functions +delf hi + +" Remove color variables +unlet s:gui00 s:gui01 s:gui02 s:gui03 s:gui04 s:gui05 s:gui06 s:gui07 s:gui08 s:gui09 s:gui0A s:gui0B s:gui0C s:gui0D s:gui0E s:gui0F s:guibg +unlet s:cterm00 s:cterm01 s:cterm02 s:cterm03 s:cterm04 s:cterm05 s:cterm06 s:cterm07 s:cterm08 s:cterm09 s:cterm0A s:cterm0B s:cterm0C s:cterm0D s:cterm0E s:cterm0F s:ctermbg diff --git a/apps/nvim/soft-savanna-monobiome-dark.vim b/apps/nvim/soft-savanna-monobiome-dark.vim new file mode 100644 index 0000000..ec13ef0 --- /dev/null +++ b/apps/nvim/soft-savanna-monobiome-dark.vim @@ -0,0 +1,882 @@ +" vi:syntax=vim +" +" Top-level remarks: +" +" - `hi` sets highlight colors for syntax groups, allowing one to specify fg and bg colors +" for GUI and terminal Vim. +" - `link` allows for linking one syntax group to another, reusing the same color +" settings. Language-specific groups can then point to one of the base color highlight +" groups, for example, without needing to repeat the raw color values. + +" GUI color definitions +let s:gui00 = "#302e28" +let g:base16_gui00 = "#302e28" +let s:gui01 = "#3d3a34" +let g:base16_gui01 = "#3d3a34" +let s:gui02 = "#4a4841" +let g:base16_gui02 = "#4a4841" +let s:gui03 = "#58554e" +let g:base16_gui03 = "#58554e" +let s:gui04 = "#c0bdb6" +let g:base16_gui04 = "#c0bdb6" +let s:gui05 = "#d0cec6" +let g:base16_gui05 = "#d0cec6" +let s:gui06 = "#e1ded6" +let g:base16_gui06 = "#e1ded6" +let s:gui07 = "#f1eee6" +let g:base16_gui07 = "#f1eee6" +let s:gui08 = "#f37060" +let g:base16_gui08 = "#f37060" +let s:gui09 = "#da8934" +let g:base16_gui09 = "#da8934" +let s:gui0A = "#a7a15f" +let g:base16_gui0A = "#a7a15f" +let s:gui0B = "#6eb178" +let g:base16_gui0B = "#6eb178" +let s:gui0C = "#6eb178" +let g:base16_gui0C = "#6eb178" +let s:gui0D = "#799ee3" +let g:base16_gui0D = "#799ee3" +let s:gui0E = "#799ee3" +let g:base16_gui0E = "#799ee3" +let s:gui0F = "#f37060" +let g:base16_gui0F = "#f37060" + +let s:grey = "#928f88" + +" Terminal color definitions +let s:cterm00 = "00" +let g:base16_cterm00 = "00" +let s:cterm03 = "08" +let g:base16_cterm03 = "08" +let s:cterm05 = "07" +let g:base16_cterm05 = "07" +let s:cterm07 = "15" +let g:base16_cterm07 = "15" +let s:cterm08 = "01" +let g:base16_cterm08 = "01" +let s:cterm0A = "03" +let g:base16_cterm0A = "03" +let s:cterm0B = "02" +let g:base16_cterm0B = "02" +let s:cterm0C = "06" +let g:base16_cterm0C = "06" +let s:cterm0D = "04" +let g:base16_cterm0D = "04" +let s:cterm0E = "05" +let g:base16_cterm0E = "05" + +let s:cterm01 = "10" +let g:base16_cterm01 = "10" +let s:cterm02 = "11" +let g:base16_cterm02 = "11" +let s:cterm04 = "12" +let g:base16_cterm04 = "12" +let s:cterm06 = "13" +let g:base16_cterm06 = "13" +let s:cterm09 = "09" +let g:base16_cterm09 = "09" +let s:cterm0F = "14" +let g:base16_cterm0F = "14" + +" Neovim terminal colours +if has("nvim") + let g:terminal_color_0 = "#302e28" + let g:terminal_color_1 = "#f37060" + let g:terminal_color_2 = "#6eb178" + let g:terminal_color_3 = "#a7a15f" + let g:terminal_color_4 = "#799ee3" + let g:terminal_color_5 = "#799ee3" + let g:terminal_color_6 = "#6eb178" + let g:terminal_color_7 = "#d0cec6" + let g:terminal_color_8 = "#58554e" + let g:terminal_color_9 = "#f37060" + let g:terminal_color_10 = "#6eb178" + let g:terminal_color_11 = "#a7a15f" + let g:terminal_color_12 = "#799ee3" + let g:terminal_color_13 = "#799ee3" + let g:terminal_color_14 = "#6eb178" + let g:terminal_color_15 = "#f1eee6" + let g:terminal_color_background = g:terminal_color_0 + let g:terminal_color_foreground = g:terminal_color_5 + + if &background == "light" + let g:terminal_color_background = g:terminal_color_7 + let g:terminal_color_foreground = g:terminal_color_2 + endif + +elseif has("terminal") + let g:terminal_ansi_colors = [ + \ "#302e28", + \ "#f37060", + \ "#6eb178", + \ "#a7a15f", + \ "#799ee3", + \ "#799ee3", + \ "#6eb178", + \ "#d0cec6", + \ "#58554e", + \ "#f37060", + \ "#6eb178", + \ "#a7a15f", + \ "#799ee3", + \ "#799ee3", + \ "#6eb178", + \ "#f1eee6", + \ ] +endif + +let s:guibg = s:gui00 +let s:ctermbg = s:cterm00 + +" Theme setup +hi clear +syntax reset +let g:colors_name = "active" + +" Highlighting function +" Optional variables are attributes and guisp +function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) + " For a given syntax group, sets the GUI and terminal foreground and backgrounds + " Optional parameters are interpreted as `attr` and `guisp`, the first of which appears + " to be a modifier for the group (e.g., bold, italic), and `guisp` appears to be + " 'special' colors used for underlines in the GUI. + let l:attr = get(a:, 1, "") + let l:guisp = get(a:, 2, "") + + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + + if a:guifg != "" + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=" . a:guifg + endif + endif + + if a:guibg != "" + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=" . a:guibg + endif + endif + + if a:ctermfg != "" + exec "hi " . a:group . " ctermfg=" . a:ctermfg + endif + + if a:ctermbg != "" + exec "hi " . a:group . " ctermbg=" . a:ctermbg + endif + + if l:attr != "" + exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr + endif + + if l:guisp != "" + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=" . l:guisp + endif + endif +endfunction + + +fun hi(group, guifg, guibg, ctermfg, ctermbg, attr, guisp) + call g:Base16hi(a:group, a:guifg, a:guibg, a:ctermfg, a:ctermbg, a:attr, a:guisp) +endfun + + +" color groups for interpretability +call hi("ThemeBg0", s:gui00, "", s:cterm00, "", "", "") +call hi("ThemeBg1", s:gui01, "", s:cterm01, "", "", "") +call hi("ThemeBg2", s:gui02, "", s:cterm02, "", "", "") +call hi("ThemeBg3", s:gui03, "", s:cterm03, "", "", "") +call hi("ThemeFg3", s:gui04, "", s:cterm04, "", "", "") +call hi("ThemeFg2", s:gui05, "", s:cterm05, "", "", "") +call hi("ThemeFg1", s:gui06, "", s:cterm06, "", "", "") +call hi("ThemeFg0", s:gui07, "", s:cterm07, "", "", "") +" +call hi("ThemeRed", s:gui08, "", s:cterm08, "", "", "") +call hi("ThemeOrange", s:gui09, "", s:cterm09, "", "", "") +call hi("ThemeYellow", s:gui0A, "", s:cterm0A, "", "", "") +call hi("ThemeGreen", s:gui0B, "", s:cterm0B, "", "", "") +call hi("ThemeCyan", s:gui0C, "", s:cterm0C, "", "", "") +call hi("ThemeBlue", s:gui0D, "", s:cterm0D, "", "", "") +call hi("ThemeViolet", s:gui0E, "", s:cterm0E, "", "", "") +call hi("ThemeMagenta", s:gui0F, "", s:cterm0F, "", "", "") + +call hi("ThemeRedBold", s:gui08, "", s:cterm08, "", "bold", "") +call hi("ThemeOrangeBold", s:gui09, "", s:cterm09, "", "bold", "") +call hi("ThemeYellowBold", s:gui0A, "", s:cterm0A, "", "bold", "") +call hi("ThemeGreenBold", s:gui0B, "", s:cterm0B, "", "bold", "") +call hi("ThemeCyanBold", s:gui0C, "", s:cterm0C, "", "bold", "") +call hi("ThemeBlueBold", s:gui0D, "", s:cterm0D, "", "bold", "") +call hi("ThemeVioletBold", s:gui0E, "", s:cterm0E, "", "bold", "") +call hi("ThemeMagentaBold", s:gui0F, "", s:cterm0F, "", "bold", "") + +call hi("ThemeRedItalic", s:gui08, "", s:cterm08, "", "italic", "") +call hi("ThemeOrangeItalic", s:gui09, "", s:cterm09, "", "italic", "") +call hi("ThemeYellowItalic", s:gui0A, "", s:cterm0A, "", "italic", "") +call hi("ThemeGreenItalic", s:gui0B, "", s:cterm0B, "", "italic", "") +call hi("ThemeCyanItalic", s:gui0C, "", s:cterm0C, "", "italic", "") +call hi("ThemeBlueItalic", s:gui0D, "", s:cterm0D, "", "italic", "") +call hi("ThemeVioletItalic", s:gui0E, "", s:cterm0E, "", "italic", "") +call hi("ThemeMagentaItalic", s:gui0F, "", s:cterm0F, "", "italic", "") + +call hi("ThemeGrey", s:grey, "", s:cterm03, "", "", "") +call hi("ThemeGreyItalic", s:grey, "", s:cterm03, "", "italic", "") + + +" Vim editor colors +call hi("Normal", s:gui05, s:guibg, s:cterm05, s:ctermbg, "", "") +call hi("Bold", "", "", "", "", "bold", "") +call hi("Debug", s:gui08, "", s:cterm08, "", "", "") +call hi("Directory", s:gui0D, "", s:cterm0D, "", "", "") +call hi("Error", s:guibg, s:gui08, s:ctermbg, s:cterm08, "", "") +call hi("ErrorMsg", s:gui08, s:guibg, s:cterm08, s:ctermbg, "", "") +call hi("Exception", s:gui08, "", s:cterm08, "", "", "") +call hi("FoldColumn", s:gui03, s:guibg, s:cterm03, s:ctermbg, "", "") +call hi("Folded", s:gui02, s:guibg, s:cterm02, s:ctermbg, "", "") +call hi("IncSearch", s:gui01, s:gui09, s:cterm01, s:cterm09, "none", "") +call hi("Italic", "", "", "", "", "italic", "") +call hi("Macro", s:gui0C, "", s:cterm0C, "", "", "") +call hi("MatchParen", "", s:gui03, "", s:cterm03, "", "") +call hi("ModeMsg", s:gui0B, "", s:cterm0B, "", "", "") +call hi("MoreMsg", s:gui0B, "", s:cterm0B, "", "", "") +call hi("Question", s:gui0D, "", s:cterm0D, "", "", "") +call hi("Search", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "", "") +call hi("Substitute", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "none", "") +call hi("SpecialKey", s:gui03, "", s:cterm03, "", "", "") +call hi("TooLong", s:gui08, "", s:cterm08, "", "", "") +call hi("Underlined", "", "", "", "", "underline", "fg") +call hi("Visual", "", s:gui02, "", s:cterm02, "", "") +call hi("VisualNOS", s:gui08, "", s:cterm08, "", "", "") +call hi("WarningMsg", s:gui08, "", s:cterm08, "", "", "") +call hi("WildMenu", s:guibg, s:gui06, s:ctermbg, s:cterm05, "", "") +call hi("Title", s:gui0D, "", s:cterm0D, "", "none", "") +call hi("Conceal", s:gui0D, s:guibg, s:cterm0D, s:ctermbg, "", "") +call hi("Cursor", s:gui05, s:guibg, "", "", "inverse", "") +call hi("NonText", s:gui03, "", s:cterm03, "", "", "") +call hi("Whitespace", s:gui03, "", s:cterm03, "", "", "") +call hi("LineNr", s:gui03, s:guibg, s:cterm03, s:ctermbg, "", "") +call hi("SignColumn", s:gui03, s:guibg, s:cterm03, s:ctermbg, "", "") +call hi("StatusLine", s:gui07, s:gui01, s:cterm07, s:cterm01, "none", "") +call hi("StatusLineNC", s:gui06, s:gui01, s:cterm05, s:cterm01, "none", "") +call hi("VertSplit", s:gui01, s:guibg, s:cterm01, s:ctermbg, "none", "") +call hi("ColorColumn", "", s:gui01, "", s:cterm01, "none", "") +call hi("CursorColumn", "", s:gui01, "", s:cterm01, "none", "") +call hi("CursorLine", "", s:gui01, "", s:cterm01, "none", "") +call hi("CursorLineNr", s:gui04, s:gui01, s:cterm04, s:cterm01, "bold", "") +call hi("QuickFixLine", "", s:gui01, "", s:cterm01, "none", "") +call hi("PMenu", s:gui06, s:gui01, s:cterm06, s:cterm01, "none", "") +call hi("PMenuSel", s:gui06, s:gui02, s:cterm06, s:cterm02, "", "") +call hi("PMenuSbar", "", s:gui03, "", s:cterm03, "", "") +call hi("PMenuThumb", "", s:gui04, "", s:cterm04, "", "") +call hi("TabLine", s:gui03, s:gui01, s:cterm03, s:cterm01, "none", "") +call hi("TabLineFill", s:gui03, s:gui01, s:cterm03, s:cterm01, "none", "") +call hi("TabLineSel", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "none", "") + +" Standard syntax +hi! link Boolean ThemeOrange +hi! link Character ThemeRed + +"call hi("Comment", s:gui03, "", s:cterm03, "", "italic", "") +hi! link Comment ThemeGreyItalic + +hi! link Conditional ThemeRed +hi! link Constant ThemeOrange +call hi("Define", s:gui0E, "", s:cterm0E, "", "none", "") +hi! link Delimiter ThemeFg1 + +if has("patch-8.0.1038") + call hi("Deprecated", "", "", "", "", "strikethrough", "") +endif + +hi! link Float ThemeOrange +hi! link Function ThemeBlue +call hi("Identifier", s:gui06, "", s:cterm05, "", "none", "") +hi! link Include ThemeBlue +hi! link Constant ThemeOrange +call hi("Keyword", s:gui0E, "", s:cterm0E, "", "none", "") +hi! link Label ThemeOrange +hi! link Number ThemeOrange +hi! link Operator ThemeYellow +hi! link PreProc ThemeOrange +hi! link Repeat ThemeViolet +hi! link Special ThemeYellow +hi! link SpecialChar ThemeMagenta +hi! link Statement ThemeRed +hi! link StorageClass ThemeOrange +hi! link String ThemeGreen +hi! link Structure ThemeOrange +hi! link Tag ThemeOrange + +call hi("Todo", s:gui08, s:guibg, s:cterm08, s:ctermbg, "italic", "") +call hi("Type", s:gui0A, "", s:cterm0A, "", "none", "") + +hi! link Typedef ThemeOrange + + +" Treesitter +if has("nvim-0.8.0") + call hi("@field", s:gui08, "", s:cterm08, "", "", "") + call hi("@property", s:gui08, "", s:cterm08, "", "", "") + call hi("@namespace", s:gui06, "", s:cterm05, "", "italic", "") + call hi("@variable.builtin", s:gui06, "", s:cterm05, "", "italic", "") + call hi("@text.reference", s:gui08, "", s:cterm08, "", "", "") + call hi("@text.uri", s:gui08, "", s:cterm08, "", "italic", "") + + " Annotations & Attributes + call hi("@annotation", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@attribute", s:gui0D, "", s:cterm0D, "", "", "") + + " Booleans, Characters & Comments + call hi("@boolean", s:gui09, "", s:cterm09, "", "", "") + call hi("@character", s:gui08, "", s:cterm08, "", "", "") + call hi("@character.special", s:gui0F, "", s:cterm0F, "", "", "") + call hi("@comment", s:gui03, "", s:cterm03, "", "", "") + + " Conditionals, Constants & Debugging + call hi("@keyword.conditional", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@constant", s:gui09, "", s:cterm09, "", "", "") + call hi("@constant.builtin", s:gui09, "", s:cterm09, "", "", "") + call hi("@constant.macro", s:gui08, "", s:cterm08, "", "", "") + call hi("@keyword.debug", s:gui08, "", s:cterm08, "", "", "") + + " Directives & Exceptions + call hi("@keyword.directive.define", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@keyword.exception", s:gui0E, "", s:cterm0E, "", "", "") + + " Floats & Functions + call hi("@number.float", s:gui09, "", s:cterm09, "", "", "") + call hi("@function", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@function.builtin", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@function.call", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@function.macro", s:gui08, "", s:cterm08, "", "", "") + + " Imports, Operators & Returns + call hi("@keyword.import", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@keyword.coroutine", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@keyword.operator", s:gui06, "", s:cterm05, "", "", "") + call hi("@keyword.return", s:gui0E, "", s:cterm0E, "", "", "") + + " Methods & Namespaces + call hi("@function.method", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@function.method.call", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@namespace.builtin", s:gui0E, "", s:cterm0E, "", "", "") + + " Numbers & Directives + call hi("@none", s:gui06, "", s:cterm05, "", "", "") + call hi("@number", s:gui09, "", s:cterm09, "", "", "") + call hi("@keyword.directive", s:gui0E, "", s:cterm0E, "", "", "") + + " Repeats, Storage & Strings + call hi("@keyword.repeat", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@keyword.storage", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@string", s:gui0B, "", s:cterm0B, "", "", "") + + " Tags & Markup + call hi("@markup.link.label", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.link.label.symbol", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@tag", s:gui08, "", s:cterm08, "", "", "") + call hi("@tag.attribute", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@tag.delimiter", s:gui0F, "", s:cterm0F, "", "", "") + + " More Markup + call hi("@markup", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.environment", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.environment.name", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.raw", s:gui09, "", s:cterm09, "", "", "") + call hi("@markup.math", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.strong", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.emphasis", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.strikethrough", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.underline", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.heading", s:gui0D, "", s:cterm0D, "", "", "") + + " Comments & Types + call hi("@comment.note", s:gui03, "", s:cterm03, "", "", "") + call hi("@comment.error", s:gui08, "", s:cterm08, "", "", "") + call hi("@comment.hint", s:gui0B, "", s:cterm0B, "", "", "") + call hi("@comment.info", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@comment.warning", s:gui09, "", s:cterm09, "", "", "") + call hi("@comment.todo", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.link.url", s:gui09, "", s:cterm09, "", "", "") + call hi("@type", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@type.definition", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@type.qualifier", s:gui0E, "", s:cterm0E, "", "", "") +endif + +" Standard highlights to be used by plugins +if has("patch-8.0.1038") + call hi("Deprecated", "", "", "", "", "strikethrough", "") +endif +call hi("SearchMatch", s:gui0C, "", s:cterm0C, "", "", "") + +call hi("GitAddSign", s:gui0B, "", s:cterm0B, "", "", "") +call hi("GitChangeSign", s:gui04, "", s:cterm04, "", "", "") +call hi("GitDeleteSign", s:gui08, "", s:cterm08, "", "", "") +call hi("GitChangeDeleteSign", s:gui04, "", s:cterm04, "", "", "") + +call hi("ErrorSign", s:gui08, "", s:cterm08, "", "", "") +call hi("WarningSign", s:gui09, "", s:cterm09, "", "", "") +call hi("InfoSign", s:gui0D, "", s:cterm0D, "", "", "") +call hi("HintSign", s:gui0C, "", s:cterm0C, "", "", "") +call hi("OkSign", s:gui0B, "", s:cterm0B, "", "", "") + +call hi("ErrorFloat", s:gui08, s:gui01, s:cterm08, s:cterm01, "", "") +call hi("WarningFloat", s:gui09, s:gui01, s:cterm09, s:cterm01, "", "") +call hi("InfoFloat", s:gui0D, s:gui01, s:cterm0D, s:cterm01, "", "") +call hi("HintFloat", s:gui0C, s:gui01, s:cterm0C, s:cterm01, "", "") +call hi("OkFloat", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "") + +call hi("ErrorHighlight", "", "", s:ctermbg, s:cterm08, "underline", s:gui08) +call hi("WarningHighlight", "", "", s:ctermbg, s:cterm09, "underline", s:gui09) +call hi("InfoHighlight", "", "", s:ctermbg, s:cterm0D, "underline", s:gui0D) +call hi("HintHighlight", "", "", s:ctermbg, s:cterm0C, "underline", s:gui0C) +call hi("OkHighlight", "", "", s:ctermbg, s:cterm0B, "underline", s:gui0B) + +call hi("SpellBad", "", "", s:ctermbg, s:cterm08, "undercurl", s:gui08) +call hi("SpellLocal", "", "", s:ctermbg, s:cterm0C, "undercurl", s:gui0C) +call hi("SpellCap", "", "", s:ctermbg, s:cterm0D, "undercurl", s:gui0D) +call hi("SpellRare", "", "", s:ctermbg, s:cterm0E, "undercurl", s:gui0E) + +call hi("ReferenceText", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "", "") +call hi("ReferenceRead", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "", "") +call hi("ReferenceWrite", s:gui01, s:gui08, s:cterm01, s:cterm08, "", "") + +" C +call hi("cOperator", s:gui0C, "", s:cterm0C, "", "", "") +call hi("cPreCondit", s:gui0E, "", s:cterm0E, "", "", "") + +" C# +call hi("csClass", s:gui0A, "", s:cterm0A, "", "", "") +call hi("csAttribute", s:gui0A, "", s:cterm0A, "", "", "") +call hi("csModifier", s:gui0E, "", s:cterm0E, "", "", "") +call hi("csType", s:gui08, "", s:cterm08, "", "", "") +call hi("csUnspecifiedStatement", s:gui0D, "", s:cterm0D, "", "", "") +call hi("csContextualStatement", s:gui0E, "", s:cterm0E, "", "", "") +call hi("csNewDecleration", s:gui08, "", s:cterm08, "", "", "") + +" Clap +hi! link ClapInput ColorColumn +hi! link ClapSpinner ColorColumn +hi! link ClapDisplay Default +hi! link ClapPreview ColorColumn +hi! link ClapCurrentSelection CursorLine +hi! link ClapNoMatchesFound ErrorFloat + +" Coc +hi! link CocErrorSign ErrorSign +hi! link CocWarningSign WarningSign +hi! link CocInfoSign InfoSign +hi! link CocHintSign HintSign + +hi! link CocErrorFloat ErrorFloat +hi! link CocWarningFloat WarningFloat +hi! link CocInfoFloat InfoFloat +hi! link CocHintFloat HintFloat + +hi! link CocErrorHighlight ErrorHighlight +hi! link CocWarningHighlight WarningHighlight +hi! link CocInfoHighlight InfoHighlight +hi! link CocHintHighlight HintHighlight + +hi! link CocSem_angle Keyword +hi! link CocSem_annotation Keyword +hi! link CocSem_attribute Type +hi! link CocSem_bitwise Keyword +hi! link CocSem_boolean Boolean +hi! link CocSem_brace Normal +hi! link CocSem_bracket Normal +hi! link CocSem_builtinAttribute Type +hi! link CocSem_builtinType Type +hi! link CocSem_character String +hi! link CocSem_class Structure +hi! link CocSem_colon Normal +hi! link CocSem_comma Normal +hi! link CocSem_comment Comment +hi! link CocSem_comparison Keyword +hi! link CocSem_concept Keyword +hi! link CocSem_constParameter Identifier +hi! link CocSem_dependent Keyword +hi! link CocSem_dot Keyword +hi! link CocSem_enum Structure +hi! link CocSem_enumMember Constant +hi! link CocSem_escapeSequence Type +hi! link CocSem_event Identifier +hi! link CocSem_formatSpecifier Type +hi! link CocSem_function Function +hi! link CocSem_interface Type +hi! link CocSem_keyword Keyword +hi! link CocSem_label Keyword +hi! link CocSem_logical Keyword +hi! link CocSem_macro Macro +hi! link CocSem_method Function +hi! link CocSem_modifier Keyword +hi! link CocSem_namespace Identifier +hi! link CocSem_number Number +hi! link CocSem_operator Operator +hi! link CocSem_parameter Identifier +hi! link CocSem_parenthesis Normal +hi! link CocSem_property Identifier +hi! link CocSem_punctuation Keyword +hi! link CocSem_regexp Type +hi! link CocSem_selfKeyword Constant +hi! link CocSem_semicolon Normal +hi! link CocSem_string String +hi! link CocSem_struct Structure +hi! link CocSem_type Type +hi! link CocSem_typeAlias Type +hi! link CocSem_typeParameter Type +hi! link CocSem_unknown Normal +hi! link CocSem_variable Identifier + +call hi("CocHighlightRead", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "") +call hi("CocHighlightText", s:gui0A, s:gui01, s:cterm0A, s:cterm01, "", "") +call hi("CocHighlightWrite", s:gui08, s:gui01, s:cterm08, s:cterm01, "", "") +call hi("CocListMode", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "bold", "") +call hi("CocListPath", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "", "") +call hi("CocSessionsName", s:gui06, "", s:cterm05, "", "", "") + +" CSS +hi! link cssBraces ThemeBlue +hi! link cssFunctionName ThemeYellow +hi! link cssIdentifier ThemeOrange +hi! link cssClassName ThemeGreen +hi! link cssColor ThemeBlue +hi! link cssSelectorOp ThemeBlue +hi! link cssSelectorOp2 ThemeBlue +hi! link cssImportant ThemeGreen +hi! link cssVendor ThemeFg1 + +hi! link cssTextProp ThemeCyan +hi! link cssAnimationProp ThemeCyan +hi! link cssUIProp ThemeYellow +hi! link cssTransformProp ThemeCyan +hi! link cssTransitionProp ThemeCyan +hi! link cssPrintProp ThemeCyan +hi! link cssPositioningProp ThemeYellow +hi! link cssBoxProp ThemeCyan +hi! link cssFontDescriptorProp ThemeCyan +hi! link cssFlexibleBoxProp ThemeCyan +hi! link cssBorderOutlineProp ThemeCyan +hi! link cssBackgroundProp ThemeCyan +hi! link cssMarginProp ThemeCyan +hi! link cssListProp ThemeCyan +hi! link cssTableProp ThemeCyan +hi! link cssFontProp ThemeCyan +hi! link cssPaddingProp ThemeCyan +hi! link cssDimensionProp ThemeCyan +hi! link cssRenderProp ThemeCyan +hi! link cssColorProp ThemeCyan +hi! link cssGeneratedContentProp ThemeCyan + + +" CMP +hi! link CmpItemAbbrDeprecated Deprecated +hi! link CmpItemAbbrMatch SearchMatch +hi! link CmpItemAbbrMatchFuzzy SearchMatch +hi! link CmpItemKindClass Type +hi! link CmpItemKindColor Keyword +hi! link CmpItemKindConstant Constant +hi! link CmpItemKindConstructor Special +hi! link CmpItemKindEnum Type +hi! link CmpItemKindEnumMember Constant +hi! link CmpItemKindEvent Identifier +hi! link CmpItemKindField Character +hi! link CmpItemKindFile Directory +hi! link CmpItemKindFolder Directory +hi! link CmpItemKindFunction Function +hi! link CmpItemKindInterface Type +hi! link CmpItemKindKeyword Keyword +hi! link CmpItemKindMethod Function +hi! link CmpItemKindModule Namespace +hi! link CmpItemKindOperator Operator +hi! link CmpItemKindProperty Identifier +hi! link CmpItemKindReference Character +hi! link CmpItemKindSnippet String +hi! link CmpItemKindStruct Type +hi! link CmpItemKindText Text +hi! link CmpItemKindUnit Namespace +hi! link CmpItemKindValue Comment +hi! link CmpItemKindVariable Identifier + +if has("nvim-0.8.0") + hi! link CmpItemKindField @field + hi! link CmpItemKindProperty @property +endif + +" Diff +call hi("DiffAdd", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "") +call hi("DiffChange", s:gui06, s:gui01, s:cterm05, s:cterm01, "", "") +call hi("DiffDelete", s:gui02, s:guibg, s:cterm02, s:ctermbg, "", "") +call hi("DiffText", s:gui0D, s:gui01, s:cterm0D, s:cterm01, "", "") +call hi("DiffAdded", s:gui0B, s:guibg, s:cterm0B, s:ctermbg, "", "") +call hi("DiffFile", s:gui08, s:guibg, s:cterm08, s:ctermbg, "", "") +call hi("DiffNewFile", s:gui0B, s:guibg, s:cterm0B, s:ctermbg, "", "") +call hi("DiffLine", s:gui0D, s:guibg, s:cterm0D, s:ctermbg, "", "") +call hi("DiffRemoved", s:gui08, s:guibg, s:cterm08, s:ctermbg, "", "") + +" Git +call hi("gitcommitOverflow", s:gui08, "", s:cterm08, "", "", "") +call hi("gitcommitSummary", s:gui0B, "", s:cterm0B, "", "", "") +call hi("gitcommitComment", s:gui03, "", s:cterm03, "", "", "") +call hi("gitcommitUntracked", s:gui03, "", s:cterm03, "", "", "") +call hi("gitcommitDiscarded", s:gui03, "", s:cterm03, "", "", "") +call hi("gitcommitSelected", s:gui03, "", s:cterm03, "", "", "") +call hi("gitcommitHeader", s:gui0E, "", s:cterm0E, "", "", "") +call hi("gitcommitSelectedType", s:gui0D, "", s:cterm0D, "", "", "") +call hi("gitcommitUnmergedType", s:gui0D, "", s:cterm0D, "", "", "") +call hi("gitcommitDiscardedType", s:gui0D, "", s:cterm0D, "", "", "") +call hi("gitcommitBranch", s:gui09, "", s:cterm09, "", "bold", "") +call hi("gitcommitUntrackedFile", s:gui0A, "", s:cterm0A, "", "", "") +call hi("gitcommitUnmergedFile", s:gui08, "", s:cterm08, "", "bold", "") +call hi("gitcommitDiscardedFile", s:gui08, "", s:cterm08, "", "bold", "") +call hi("gitcommitSelectedFile", s:gui0B, "", s:cterm0B, "", "bold", "") + +" GitGutter +hi! link GitGutterAdd GitAddSign +hi! link GitGutterChange GitChangeSign +hi! link GitGutterDelete GitDeleteSign +hi! link GitGutterChangeDelete GitChangeDeleteSign + +" indent-blankline (nvim) +if has("nvim") + call hi("@ibl.indent.char.1",s:gui01, "", s:cterm01, "", "", "") +endif + +" HTML +call hi("htmlBold", s:gui07, "", s:cterm0A, "", "bold", "") +call hi("htmlItalic", s:gui06, "", s:cterm0E, "", "italic", "") +call hi("htmlEndTag", s:gui06, "", s:cterm05, "", "", "") +call hi("htmlTag", s:gui06, "", s:cterm05, "", "", "") + +" JavaScript +call hi("javaScript", s:gui06, "", s:cterm05, "", "", "") +call hi("javaScriptBraces", s:gui06, "", s:cterm05, "", "", "") +call hi("javaScriptNumber", s:gui09, "", s:cterm09, "", "", "") +" pangloss/vim-javascript +call hi("jsOperator", s:gui0D, "", s:cterm0D, "", "", "") +call hi("jsStatement", s:gui0E, "", s:cterm0E, "", "", "") +call hi("jsReturn", s:gui0E, "", s:cterm0E, "", "", "") +call hi("jsThis", s:gui08, "", s:cterm08, "", "", "") +call hi("jsClassDefinition", s:gui0A, "", s:cterm0A, "", "", "") +call hi("jsFunction", s:gui0E, "", s:cterm0E, "", "", "") +call hi("jsFuncName", s:gui0D, "", s:cterm0D, "", "", "") +call hi("jsFuncCall", s:gui0D, "", s:cterm0D, "", "", "") +call hi("jsClassFuncName", s:gui0D, "", s:cterm0D, "", "", "") +call hi("jsClassMethodType", s:gui0E, "", s:cterm0E, "", "", "") +call hi("jsRegexpString", s:gui0C, "", s:cterm0C, "", "", "") +call hi("jsGlobalObjects", s:gui0A, "", s:cterm0A, "", "", "") +call hi("jsGlobalNodeObjects", s:gui0A, "", s:cterm0A, "", "", "") +call hi("jsExceptions", s:gui0A, "", s:cterm0A, "", "", "") +call hi("jsBuiltins", s:gui0A, "", s:cterm0A, "", "", "") + +" Mail +call hi("mailQuoted1", s:gui0A, "", s:cterm0A, "", "", "") +call hi("mailQuoted2", s:gui0B, "", s:cterm0B, "", "", "") +call hi("mailQuoted3", s:gui0E, "", s:cterm0E, "", "", "") +call hi("mailQuoted4", s:gui0C, "", s:cterm0C, "", "", "") +call hi("mailQuoted5", s:gui0D, "", s:cterm0D, "", "", "") +call hi("mailQuoted6", s:gui0A, "", s:cterm0A, "", "", "") +call hi("mailURL", s:gui0D, "", s:cterm0D, "", "", "") +call hi("mailEmail", s:gui0D, "", s:cterm0D, "", "", "") + +" Markdown +call hi("markdownCode", s:gui0B, "", s:cterm0B, "", "", "") +call hi("markdownError", s:gui06, s:guibg, s:cterm05, s:ctermbg, "", "") +call hi("markdownCodeBlock", s:gui0B, "", s:cterm0B, "", "", "") +call hi("markdownHeadingDelimiter", s:gui0D, "", s:cterm0D, "", "", "") + +" Matchup +call hi("MatchWord", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "underline", "") + +" NERDTree +call hi("NERDTreeDirSlash", s:gui0D, "", s:cterm0D, "", "", "") +call hi("NERDTreeExecFile", s:gui06, "", s:cterm05, "", "", "") + +" Netrw +hi! link netrwDir ThemeCyan +hi! link netrwClassify ThemeCyan +hi! link netrwLink ThemeBg3 +hi! link netrwSymLink ThemeFg1 +hi! link netrwExe ThemeYellow +hi! link netrwComment ThemeBg3 +hi! link netrwList ThemeBlue +hi! link netrwHelpCmd ThemeCyan +hi! link netrwCmdSep ThemeFg3 +hi! link netrwVersion ThemeGreen + +" PHP +call hi("phpMemberSelector", s:gui06, "", s:cterm05, "", "", "") +call hi("phpComparison", s:gui06, "", s:cterm05, "", "", "") +call hi("phpParent", s:gui06, "", s:cterm05, "", "", "") +call hi("phpMethodsVar", s:gui0C, "", s:cterm0C, "", "", "") + +" Python +"call hi("pythonOperator", s:gui0E, "", s:cterm0E, "", "", "") +"call hi("pythonRepeat", s:gui0E, "", s:cterm0E, "", "", "") +"call hi("pythonInclude", s:gui0E, "", s:cterm0E, "", "", "") +"call hi("pythonStatement", s:gui0E, "", s:cterm0E, "", "", "") + +" hi! link pythonBuiltin ThemeCyan +" hi! link pythonBuiltinObj ThemeCyan +" hi! link pythonBuiltinFunc ThemeGreen +" hi! link pythonFunction Function +hi! link pythonDecorator ThemeYellow +hi! link pythonDecoratorName ThemeYellow +" hi! link pythonTripleQuotes ThemeGreenItalic +" hi! link pythonInclude ThemeBlue +" hi! link pythonImport ThemeBlue +" hi! link pythonRun ThemeBlue +" hi! link pythonCoding ThemeBlue +" hi! link pythonOperator ThemeRed +" hi! link pythonException ThemeRed +" hi! link pythonExceptions ThemeYellow +" hi! link pythonBoolean ThemeYellow +" hi! link pythonDot ThemeFg3 +" hi! link pythonConditional ThemeCyan +" hi! link pythonRepeat ThemeRed +" hi! link pythonDottedName ThemeGreen + + +" Ruby +call hi("rubyAttribute", s:gui0D, "", s:cterm0D, "", "", "") +call hi("rubyConstant", s:gui0A, "", s:cterm0A, "", "", "") +call hi("rubyInterpolationDelimiter", s:gui0F, "", s:cterm0F, "", "", "") +call hi("rubyRegexp", s:gui0C, "", s:cterm0C, "", "", "") +call hi("rubySymbol", s:gui0B, "", s:cterm0B, "", "", "") +call hi("rubyStringDelimiter", s:gui0B, "", s:cterm0B, "", "", "") + +" SASS +call hi("sassidChar", s:gui08, "", s:cterm08, "", "", "") +call hi("sassClassChar", s:gui09, "", s:cterm09, "", "", "") +call hi("sassInclude", s:gui0E, "", s:cterm0E, "", "", "") +call hi("sassMixing", s:gui0E, "", s:cterm0E, "", "", "") +call hi("sassMixinName", s:gui0D, "", s:cterm0D, "", "", "") + +" Signify +hi! link SignifySignAdd GitAddSign +hi! link SignifySignChange GitChangeSign +hi! link SignifySignDelete GitDeleteSign + +" Startify +call hi("StartifyBracket", s:gui03, "", s:cterm03, "", "", "") +call hi("StartifyFile", s:gui07, "", s:cterm07, "", "", "") +call hi("StartifyFooter", s:gui03, "", s:cterm03, "", "", "") +call hi("StartifyHeader", s:gui0B, "", s:cterm0B, "", "", "") +call hi("StartifyNumber", s:gui09, "", s:cterm09, "", "", "") +call hi("StartifyPath", s:gui03, "", s:cterm03, "", "", "") +call hi("StartifySection", s:gui0E, "", s:cterm0E, "", "", "") +call hi("StartifySelect", s:gui0C, "", s:cterm0C, "", "", "") +call hi("StartifySlash", s:gui03, "", s:cterm03, "", "", "") +call hi("StartifySpecial", s:gui03, "", s:cterm03, "", "", "") + +" LSP +if has("nvim") + hi! link DiagnosticError ErrorSign + hi! link DiagnosticWarn WarningSign + hi! link DiagnosticInfo InfoSign + hi! link DiagnosticHint HintSign + hi! link DiagnosticOk OkSign + + hi! link DiagnosticFloatingError ErrorFloat + hi! link DiagnosticFloatingWarn WarningFloat + hi! link DiagnosticFloatingInfo InfoFloat + hi! link DiagnosticFloatingHint HintFloat + hi! link DiagnosticFloatingOk OkFloat + + hi! link DiagnosticUnderlineError ErrorHighlight + hi! link DiagnosticUnderlineWarn WarningHighlight + hi! link DiagnosticUnderlineInfo InfoHighlight + hi! link DiagnosticUnderlineHint HintHighlight + hi! link DiagnosticUnderlineOk OkHighlight + + hi! link DiagnosticsVirtualTextError ErrorSign + hi! link DiagnosticsVirtualTextWarning WarningSign + hi! link DiagnosticsVirtualTextInfo InfoSign + hi! link DiagnosticsVirtualTextHint HintSign + hi! link DiagnosticsVirtualTextOk OkSign + + " Remove untill endif on next nvim release + hi! link LspDiagnosticsSignError ErrorSign + hi! link LspDiagnosticsSignWarning WarningSign + hi! link LspDiagnosticsSignInfo InfoSign + hi! link LspDiagnosticsSignHint HintSign + + hi! link LspDiagnosticsVirtualTextError ErrorSign + hi! link LspDiagnosticsVirtualTextWarning WarningSign + hi! link LspDiagnosticsVirtualTextInfo InfoSign + hi! link LspDiagnosticsVirtualTextHint HintSign + + hi! link LspDiagnosticsFloatingError ErrorFloat + hi! link LspDiagnosticsFloatingWarning WarningFloat + hi! link LspDiagnosticsFloatingInfo InfoFloat + hi! link LspDiagnosticsFloatingHint HintFloat + + hi! link LspDiagnosticsUnderlineError ErrorHighlight + hi! link LspDiagnosticsUnderlineWarning WarningHighlight + hi! link LspDiagnosticsUnderlineInfo InfoHighlight + hi! link LspDiagnosticsUnderlineHint HintHighlight + + hi! link LspReferenceText ReferenceText + hi! link LspReferenceRead ReferenceRead + hi! link LspReferenceWrite ReferenceWrite +endif + +" Java +call hi("javaOperator", s:gui0D, "", s:cterm0D, "", "", "") + +" JSON +hi! link jsonKeyword ThemeGreen +hi! link jsonQuote ThemeGreen +hi! link jsonBraces ThemeFg1 +hi! link jsonString ThemeFg1 + +" Markdown +hi! link markdownH1 ThemeRedBold +hi! link markdownH2 ThemeRed +hi! link markdownH3 ThemeRed +hi! link markdownH4 ThemeRed +hi! link markdownH5 ThemeRed +hi! link markdownH6 ThemeRed + +hi! link markdownCode ThemeYellow +hi! link markdownCodeBlock ThemeYellow +hi! link markdownCodeDelimiter ThemeYellow + +hi! link markdownBlockquote ThemeGrey +hi! link markdownListMarker ThemeBlue +hi! link markdownOrderedListMarker ThemeBlue +hi! link markdownRule ThemeGrey +hi! link markdownHeadingRule ThemeGrey + +hi! link markdownUrlDelimiter ThemeFg3 +hi! link markdownLinkDelimiter ThemeFg3 +hi! link markdownLinkTextDelimiter ThemeFg3 +hi! link markdownHeadingDelimiter ThemeOrange +hi! link markdownUrlTitleDelimiter ThemeGreen + +hi! link markdownLink ThemeGreen +hi! link markdownWikiLink ThemeViolet +hi! link markdownUrl ThemeOrange +hi! link markdownInlineUrl ThemeOrange + +hi! link markdownLinkText ThemeViolet +hi! link markdownIdDeclaration markdownLinkText + +"call s:HL('markdownItalic', s:fg3, s:none, s:italic) +"call s:HL('markdownLinkText', s:gray, s:none, s:underline) + + +" Remove functions +delf hi + +" Remove color variables +unlet s:gui00 s:gui01 s:gui02 s:gui03 s:gui04 s:gui05 s:gui06 s:gui07 s:gui08 s:gui09 s:gui0A s:gui0B s:gui0C s:gui0D s:gui0E s:gui0F s:guibg +unlet s:cterm00 s:cterm01 s:cterm02 s:cterm03 s:cterm04 s:cterm05 s:cterm06 s:cterm07 s:cterm08 s:cterm09 s:cterm0A s:cterm0B s:cterm0C s:cterm0D s:cterm0E s:cterm0F s:ctermbg diff --git a/apps/nvim/soft-savanna-monobiome-light.vim b/apps/nvim/soft-savanna-monobiome-light.vim new file mode 100644 index 0000000..cf9754e --- /dev/null +++ b/apps/nvim/soft-savanna-monobiome-light.vim @@ -0,0 +1,882 @@ +" vi:syntax=vim +" +" Top-level remarks: +" +" - `hi` sets highlight colors for syntax groups, allowing one to specify fg and bg colors +" for GUI and terminal Vim. +" - `link` allows for linking one syntax group to another, reusing the same color +" settings. Language-specific groups can then point to one of the base color highlight +" groups, for example, without needing to repeat the raw color values. + +" GUI color definitions +let s:gui00 = "#c0bdb6" +let g:base16_gui00 = "#c0bdb6" +let s:gui01 = "#b0aea6" +let g:base16_gui01 = "#b0aea6" +let s:gui02 = "#a19e97" +let g:base16_gui02 = "#a19e97" +let s:gui03 = "#928f88" +let g:base16_gui03 = "#928f88" +let s:gui04 = "#302e28" +let g:base16_gui04 = "#302e28" +let s:gui05 = "#24211c" +let g:base16_gui05 = "#24211c" +let s:gui06 = "#181610" +let g:base16_gui06 = "#181610" +let s:gui07 = "#0d0b06" +let g:base16_gui07 = "#0d0b06" +let s:gui08 = "#9d1912" +let g:base16_gui08 = "#9d1912" +let s:gui09 = "#7c4706" +let g:base16_gui09 = "#7c4706" +let s:gui0A = "#5b572e" +let g:base16_gui0A = "#5b572e" +let s:gui0B = "#2e6337" +let g:base16_gui0B = "#2e6337" +let s:gui0C = "#2e6337" +let g:base16_gui0C = "#2e6337" +let s:gui0D = "#2d5299" +let g:base16_gui0D = "#2d5299" +let s:gui0E = "#2d5299" +let g:base16_gui0E = "#2d5299" +let s:gui0F = "#9d1912" +let g:base16_gui0F = "#9d1912" + +let s:grey = "#58554e" + +" Terminal color definitions +let s:cterm00 = "00" +let g:base16_cterm00 = "00" +let s:cterm03 = "08" +let g:base16_cterm03 = "08" +let s:cterm05 = "07" +let g:base16_cterm05 = "07" +let s:cterm07 = "15" +let g:base16_cterm07 = "15" +let s:cterm08 = "01" +let g:base16_cterm08 = "01" +let s:cterm0A = "03" +let g:base16_cterm0A = "03" +let s:cterm0B = "02" +let g:base16_cterm0B = "02" +let s:cterm0C = "06" +let g:base16_cterm0C = "06" +let s:cterm0D = "04" +let g:base16_cterm0D = "04" +let s:cterm0E = "05" +let g:base16_cterm0E = "05" + +let s:cterm01 = "10" +let g:base16_cterm01 = "10" +let s:cterm02 = "11" +let g:base16_cterm02 = "11" +let s:cterm04 = "12" +let g:base16_cterm04 = "12" +let s:cterm06 = "13" +let g:base16_cterm06 = "13" +let s:cterm09 = "09" +let g:base16_cterm09 = "09" +let s:cterm0F = "14" +let g:base16_cterm0F = "14" + +" Neovim terminal colours +if has("nvim") + let g:terminal_color_0 = "#c0bdb6" + let g:terminal_color_1 = "#9d1912" + let g:terminal_color_2 = "#2e6337" + let g:terminal_color_3 = "#5b572e" + let g:terminal_color_4 = "#2d5299" + let g:terminal_color_5 = "#2d5299" + let g:terminal_color_6 = "#2e6337" + let g:terminal_color_7 = "#24211c" + let g:terminal_color_8 = "#928f88" + let g:terminal_color_9 = "#9d1912" + let g:terminal_color_10 = "#2e6337" + let g:terminal_color_11 = "#5b572e" + let g:terminal_color_12 = "#2d5299" + let g:terminal_color_13 = "#2d5299" + let g:terminal_color_14 = "#2e6337" + let g:terminal_color_15 = "#0d0b06" + let g:terminal_color_background = g:terminal_color_0 + let g:terminal_color_foreground = g:terminal_color_5 + + if &background == "light" + let g:terminal_color_background = g:terminal_color_7 + let g:terminal_color_foreground = g:terminal_color_2 + endif + +elseif has("terminal") + let g:terminal_ansi_colors = [ + \ "#c0bdb6", + \ "#9d1912", + \ "#2e6337", + \ "#5b572e", + \ "#2d5299", + \ "#2d5299", + \ "#2e6337", + \ "#24211c", + \ "#928f88", + \ "#9d1912", + \ "#2e6337", + \ "#5b572e", + \ "#2d5299", + \ "#2d5299", + \ "#2e6337", + \ "#0d0b06", + \ ] +endif + +let s:guibg = s:gui00 +let s:ctermbg = s:cterm00 + +" Theme setup +hi clear +syntax reset +let g:colors_name = "active" + +" Highlighting function +" Optional variables are attributes and guisp +function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) + " For a given syntax group, sets the GUI and terminal foreground and backgrounds + " Optional parameters are interpreted as `attr` and `guisp`, the first of which appears + " to be a modifier for the group (e.g., bold, italic), and `guisp` appears to be + " 'special' colors used for underlines in the GUI. + let l:attr = get(a:, 1, "") + let l:guisp = get(a:, 2, "") + + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + + if a:guifg != "" + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=" . a:guifg + endif + endif + + if a:guibg != "" + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=" . a:guibg + endif + endif + + if a:ctermfg != "" + exec "hi " . a:group . " ctermfg=" . a:ctermfg + endif + + if a:ctermbg != "" + exec "hi " . a:group . " ctermbg=" . a:ctermbg + endif + + if l:attr != "" + exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr + endif + + if l:guisp != "" + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=" . l:guisp + endif + endif +endfunction + + +fun hi(group, guifg, guibg, ctermfg, ctermbg, attr, guisp) + call g:Base16hi(a:group, a:guifg, a:guibg, a:ctermfg, a:ctermbg, a:attr, a:guisp) +endfun + + +" color groups for interpretability +call hi("ThemeBg0", s:gui00, "", s:cterm00, "", "", "") +call hi("ThemeBg1", s:gui01, "", s:cterm01, "", "", "") +call hi("ThemeBg2", s:gui02, "", s:cterm02, "", "", "") +call hi("ThemeBg3", s:gui03, "", s:cterm03, "", "", "") +call hi("ThemeFg3", s:gui04, "", s:cterm04, "", "", "") +call hi("ThemeFg2", s:gui05, "", s:cterm05, "", "", "") +call hi("ThemeFg1", s:gui06, "", s:cterm06, "", "", "") +call hi("ThemeFg0", s:gui07, "", s:cterm07, "", "", "") +" +call hi("ThemeRed", s:gui08, "", s:cterm08, "", "", "") +call hi("ThemeOrange", s:gui09, "", s:cterm09, "", "", "") +call hi("ThemeYellow", s:gui0A, "", s:cterm0A, "", "", "") +call hi("ThemeGreen", s:gui0B, "", s:cterm0B, "", "", "") +call hi("ThemeCyan", s:gui0C, "", s:cterm0C, "", "", "") +call hi("ThemeBlue", s:gui0D, "", s:cterm0D, "", "", "") +call hi("ThemeViolet", s:gui0E, "", s:cterm0E, "", "", "") +call hi("ThemeMagenta", s:gui0F, "", s:cterm0F, "", "", "") + +call hi("ThemeRedBold", s:gui08, "", s:cterm08, "", "bold", "") +call hi("ThemeOrangeBold", s:gui09, "", s:cterm09, "", "bold", "") +call hi("ThemeYellowBold", s:gui0A, "", s:cterm0A, "", "bold", "") +call hi("ThemeGreenBold", s:gui0B, "", s:cterm0B, "", "bold", "") +call hi("ThemeCyanBold", s:gui0C, "", s:cterm0C, "", "bold", "") +call hi("ThemeBlueBold", s:gui0D, "", s:cterm0D, "", "bold", "") +call hi("ThemeVioletBold", s:gui0E, "", s:cterm0E, "", "bold", "") +call hi("ThemeMagentaBold", s:gui0F, "", s:cterm0F, "", "bold", "") + +call hi("ThemeRedItalic", s:gui08, "", s:cterm08, "", "italic", "") +call hi("ThemeOrangeItalic", s:gui09, "", s:cterm09, "", "italic", "") +call hi("ThemeYellowItalic", s:gui0A, "", s:cterm0A, "", "italic", "") +call hi("ThemeGreenItalic", s:gui0B, "", s:cterm0B, "", "italic", "") +call hi("ThemeCyanItalic", s:gui0C, "", s:cterm0C, "", "italic", "") +call hi("ThemeBlueItalic", s:gui0D, "", s:cterm0D, "", "italic", "") +call hi("ThemeVioletItalic", s:gui0E, "", s:cterm0E, "", "italic", "") +call hi("ThemeMagentaItalic", s:gui0F, "", s:cterm0F, "", "italic", "") + +call hi("ThemeGrey", s:grey, "", s:cterm03, "", "", "") +call hi("ThemeGreyItalic", s:grey, "", s:cterm03, "", "italic", "") + + +" Vim editor colors +call hi("Normal", s:gui05, s:guibg, s:cterm05, s:ctermbg, "", "") +call hi("Bold", "", "", "", "", "bold", "") +call hi("Debug", s:gui08, "", s:cterm08, "", "", "") +call hi("Directory", s:gui0D, "", s:cterm0D, "", "", "") +call hi("Error", s:guibg, s:gui08, s:ctermbg, s:cterm08, "", "") +call hi("ErrorMsg", s:gui08, s:guibg, s:cterm08, s:ctermbg, "", "") +call hi("Exception", s:gui08, "", s:cterm08, "", "", "") +call hi("FoldColumn", s:gui03, s:guibg, s:cterm03, s:ctermbg, "", "") +call hi("Folded", s:gui02, s:guibg, s:cterm02, s:ctermbg, "", "") +call hi("IncSearch", s:gui01, s:gui09, s:cterm01, s:cterm09, "none", "") +call hi("Italic", "", "", "", "", "italic", "") +call hi("Macro", s:gui0C, "", s:cterm0C, "", "", "") +call hi("MatchParen", "", s:gui03, "", s:cterm03, "", "") +call hi("ModeMsg", s:gui0B, "", s:cterm0B, "", "", "") +call hi("MoreMsg", s:gui0B, "", s:cterm0B, "", "", "") +call hi("Question", s:gui0D, "", s:cterm0D, "", "", "") +call hi("Search", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "", "") +call hi("Substitute", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "none", "") +call hi("SpecialKey", s:gui03, "", s:cterm03, "", "", "") +call hi("TooLong", s:gui08, "", s:cterm08, "", "", "") +call hi("Underlined", "", "", "", "", "underline", "fg") +call hi("Visual", "", s:gui02, "", s:cterm02, "", "") +call hi("VisualNOS", s:gui08, "", s:cterm08, "", "", "") +call hi("WarningMsg", s:gui08, "", s:cterm08, "", "", "") +call hi("WildMenu", s:guibg, s:gui06, s:ctermbg, s:cterm05, "", "") +call hi("Title", s:gui0D, "", s:cterm0D, "", "none", "") +call hi("Conceal", s:gui0D, s:guibg, s:cterm0D, s:ctermbg, "", "") +call hi("Cursor", s:gui05, s:guibg, "", "", "inverse", "") +call hi("NonText", s:gui03, "", s:cterm03, "", "", "") +call hi("Whitespace", s:gui03, "", s:cterm03, "", "", "") +call hi("LineNr", s:gui03, s:guibg, s:cterm03, s:ctermbg, "", "") +call hi("SignColumn", s:gui03, s:guibg, s:cterm03, s:ctermbg, "", "") +call hi("StatusLine", s:gui07, s:gui01, s:cterm07, s:cterm01, "none", "") +call hi("StatusLineNC", s:gui06, s:gui01, s:cterm05, s:cterm01, "none", "") +call hi("VertSplit", s:gui01, s:guibg, s:cterm01, s:ctermbg, "none", "") +call hi("ColorColumn", "", s:gui01, "", s:cterm01, "none", "") +call hi("CursorColumn", "", s:gui01, "", s:cterm01, "none", "") +call hi("CursorLine", "", s:gui01, "", s:cterm01, "none", "") +call hi("CursorLineNr", s:gui04, s:gui01, s:cterm04, s:cterm01, "bold", "") +call hi("QuickFixLine", "", s:gui01, "", s:cterm01, "none", "") +call hi("PMenu", s:gui06, s:gui01, s:cterm06, s:cterm01, "none", "") +call hi("PMenuSel", s:gui06, s:gui02, s:cterm06, s:cterm02, "", "") +call hi("PMenuSbar", "", s:gui03, "", s:cterm03, "", "") +call hi("PMenuThumb", "", s:gui04, "", s:cterm04, "", "") +call hi("TabLine", s:gui03, s:gui01, s:cterm03, s:cterm01, "none", "") +call hi("TabLineFill", s:gui03, s:gui01, s:cterm03, s:cterm01, "none", "") +call hi("TabLineSel", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "none", "") + +" Standard syntax +hi! link Boolean ThemeOrange +hi! link Character ThemeRed + +"call hi("Comment", s:gui03, "", s:cterm03, "", "italic", "") +hi! link Comment ThemeGreyItalic + +hi! link Conditional ThemeRed +hi! link Constant ThemeOrange +call hi("Define", s:gui0E, "", s:cterm0E, "", "none", "") +hi! link Delimiter ThemeFg1 + +if has("patch-8.0.1038") + call hi("Deprecated", "", "", "", "", "strikethrough", "") +endif + +hi! link Float ThemeOrange +hi! link Function ThemeBlue +call hi("Identifier", s:gui06, "", s:cterm05, "", "none", "") +hi! link Include ThemeBlue +hi! link Constant ThemeOrange +call hi("Keyword", s:gui0E, "", s:cterm0E, "", "none", "") +hi! link Label ThemeOrange +hi! link Number ThemeOrange +hi! link Operator ThemeYellow +hi! link PreProc ThemeOrange +hi! link Repeat ThemeViolet +hi! link Special ThemeYellow +hi! link SpecialChar ThemeMagenta +hi! link Statement ThemeRed +hi! link StorageClass ThemeOrange +hi! link String ThemeGreen +hi! link Structure ThemeOrange +hi! link Tag ThemeOrange + +call hi("Todo", s:gui08, s:guibg, s:cterm08, s:ctermbg, "italic", "") +call hi("Type", s:gui0A, "", s:cterm0A, "", "none", "") + +hi! link Typedef ThemeOrange + + +" Treesitter +if has("nvim-0.8.0") + call hi("@field", s:gui08, "", s:cterm08, "", "", "") + call hi("@property", s:gui08, "", s:cterm08, "", "", "") + call hi("@namespace", s:gui06, "", s:cterm05, "", "italic", "") + call hi("@variable.builtin", s:gui06, "", s:cterm05, "", "italic", "") + call hi("@text.reference", s:gui08, "", s:cterm08, "", "", "") + call hi("@text.uri", s:gui08, "", s:cterm08, "", "italic", "") + + " Annotations & Attributes + call hi("@annotation", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@attribute", s:gui0D, "", s:cterm0D, "", "", "") + + " Booleans, Characters & Comments + call hi("@boolean", s:gui09, "", s:cterm09, "", "", "") + call hi("@character", s:gui08, "", s:cterm08, "", "", "") + call hi("@character.special", s:gui0F, "", s:cterm0F, "", "", "") + call hi("@comment", s:gui03, "", s:cterm03, "", "", "") + + " Conditionals, Constants & Debugging + call hi("@keyword.conditional", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@constant", s:gui09, "", s:cterm09, "", "", "") + call hi("@constant.builtin", s:gui09, "", s:cterm09, "", "", "") + call hi("@constant.macro", s:gui08, "", s:cterm08, "", "", "") + call hi("@keyword.debug", s:gui08, "", s:cterm08, "", "", "") + + " Directives & Exceptions + call hi("@keyword.directive.define", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@keyword.exception", s:gui0E, "", s:cterm0E, "", "", "") + + " Floats & Functions + call hi("@number.float", s:gui09, "", s:cterm09, "", "", "") + call hi("@function", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@function.builtin", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@function.call", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@function.macro", s:gui08, "", s:cterm08, "", "", "") + + " Imports, Operators & Returns + call hi("@keyword.import", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@keyword.coroutine", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@keyword.operator", s:gui06, "", s:cterm05, "", "", "") + call hi("@keyword.return", s:gui0E, "", s:cterm0E, "", "", "") + + " Methods & Namespaces + call hi("@function.method", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@function.method.call", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@namespace.builtin", s:gui0E, "", s:cterm0E, "", "", "") + + " Numbers & Directives + call hi("@none", s:gui06, "", s:cterm05, "", "", "") + call hi("@number", s:gui09, "", s:cterm09, "", "", "") + call hi("@keyword.directive", s:gui0E, "", s:cterm0E, "", "", "") + + " Repeats, Storage & Strings + call hi("@keyword.repeat", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@keyword.storage", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@string", s:gui0B, "", s:cterm0B, "", "", "") + + " Tags & Markup + call hi("@markup.link.label", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.link.label.symbol", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@tag", s:gui08, "", s:cterm08, "", "", "") + call hi("@tag.attribute", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@tag.delimiter", s:gui0F, "", s:cterm0F, "", "", "") + + " More Markup + call hi("@markup", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.environment", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.environment.name", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.raw", s:gui09, "", s:cterm09, "", "", "") + call hi("@markup.math", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.strong", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.emphasis", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.strikethrough", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.underline", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.heading", s:gui0D, "", s:cterm0D, "", "", "") + + " Comments & Types + call hi("@comment.note", s:gui03, "", s:cterm03, "", "", "") + call hi("@comment.error", s:gui08, "", s:cterm08, "", "", "") + call hi("@comment.hint", s:gui0B, "", s:cterm0B, "", "", "") + call hi("@comment.info", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@comment.warning", s:gui09, "", s:cterm09, "", "", "") + call hi("@comment.todo", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.link.url", s:gui09, "", s:cterm09, "", "", "") + call hi("@type", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@type.definition", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@type.qualifier", s:gui0E, "", s:cterm0E, "", "", "") +endif + +" Standard highlights to be used by plugins +if has("patch-8.0.1038") + call hi("Deprecated", "", "", "", "", "strikethrough", "") +endif +call hi("SearchMatch", s:gui0C, "", s:cterm0C, "", "", "") + +call hi("GitAddSign", s:gui0B, "", s:cterm0B, "", "", "") +call hi("GitChangeSign", s:gui04, "", s:cterm04, "", "", "") +call hi("GitDeleteSign", s:gui08, "", s:cterm08, "", "", "") +call hi("GitChangeDeleteSign", s:gui04, "", s:cterm04, "", "", "") + +call hi("ErrorSign", s:gui08, "", s:cterm08, "", "", "") +call hi("WarningSign", s:gui09, "", s:cterm09, "", "", "") +call hi("InfoSign", s:gui0D, "", s:cterm0D, "", "", "") +call hi("HintSign", s:gui0C, "", s:cterm0C, "", "", "") +call hi("OkSign", s:gui0B, "", s:cterm0B, "", "", "") + +call hi("ErrorFloat", s:gui08, s:gui01, s:cterm08, s:cterm01, "", "") +call hi("WarningFloat", s:gui09, s:gui01, s:cterm09, s:cterm01, "", "") +call hi("InfoFloat", s:gui0D, s:gui01, s:cterm0D, s:cterm01, "", "") +call hi("HintFloat", s:gui0C, s:gui01, s:cterm0C, s:cterm01, "", "") +call hi("OkFloat", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "") + +call hi("ErrorHighlight", "", "", s:ctermbg, s:cterm08, "underline", s:gui08) +call hi("WarningHighlight", "", "", s:ctermbg, s:cterm09, "underline", s:gui09) +call hi("InfoHighlight", "", "", s:ctermbg, s:cterm0D, "underline", s:gui0D) +call hi("HintHighlight", "", "", s:ctermbg, s:cterm0C, "underline", s:gui0C) +call hi("OkHighlight", "", "", s:ctermbg, s:cterm0B, "underline", s:gui0B) + +call hi("SpellBad", "", "", s:ctermbg, s:cterm08, "undercurl", s:gui08) +call hi("SpellLocal", "", "", s:ctermbg, s:cterm0C, "undercurl", s:gui0C) +call hi("SpellCap", "", "", s:ctermbg, s:cterm0D, "undercurl", s:gui0D) +call hi("SpellRare", "", "", s:ctermbg, s:cterm0E, "undercurl", s:gui0E) + +call hi("ReferenceText", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "", "") +call hi("ReferenceRead", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "", "") +call hi("ReferenceWrite", s:gui01, s:gui08, s:cterm01, s:cterm08, "", "") + +" C +call hi("cOperator", s:gui0C, "", s:cterm0C, "", "", "") +call hi("cPreCondit", s:gui0E, "", s:cterm0E, "", "", "") + +" C# +call hi("csClass", s:gui0A, "", s:cterm0A, "", "", "") +call hi("csAttribute", s:gui0A, "", s:cterm0A, "", "", "") +call hi("csModifier", s:gui0E, "", s:cterm0E, "", "", "") +call hi("csType", s:gui08, "", s:cterm08, "", "", "") +call hi("csUnspecifiedStatement", s:gui0D, "", s:cterm0D, "", "", "") +call hi("csContextualStatement", s:gui0E, "", s:cterm0E, "", "", "") +call hi("csNewDecleration", s:gui08, "", s:cterm08, "", "", "") + +" Clap +hi! link ClapInput ColorColumn +hi! link ClapSpinner ColorColumn +hi! link ClapDisplay Default +hi! link ClapPreview ColorColumn +hi! link ClapCurrentSelection CursorLine +hi! link ClapNoMatchesFound ErrorFloat + +" Coc +hi! link CocErrorSign ErrorSign +hi! link CocWarningSign WarningSign +hi! link CocInfoSign InfoSign +hi! link CocHintSign HintSign + +hi! link CocErrorFloat ErrorFloat +hi! link CocWarningFloat WarningFloat +hi! link CocInfoFloat InfoFloat +hi! link CocHintFloat HintFloat + +hi! link CocErrorHighlight ErrorHighlight +hi! link CocWarningHighlight WarningHighlight +hi! link CocInfoHighlight InfoHighlight +hi! link CocHintHighlight HintHighlight + +hi! link CocSem_angle Keyword +hi! link CocSem_annotation Keyword +hi! link CocSem_attribute Type +hi! link CocSem_bitwise Keyword +hi! link CocSem_boolean Boolean +hi! link CocSem_brace Normal +hi! link CocSem_bracket Normal +hi! link CocSem_builtinAttribute Type +hi! link CocSem_builtinType Type +hi! link CocSem_character String +hi! link CocSem_class Structure +hi! link CocSem_colon Normal +hi! link CocSem_comma Normal +hi! link CocSem_comment Comment +hi! link CocSem_comparison Keyword +hi! link CocSem_concept Keyword +hi! link CocSem_constParameter Identifier +hi! link CocSem_dependent Keyword +hi! link CocSem_dot Keyword +hi! link CocSem_enum Structure +hi! link CocSem_enumMember Constant +hi! link CocSem_escapeSequence Type +hi! link CocSem_event Identifier +hi! link CocSem_formatSpecifier Type +hi! link CocSem_function Function +hi! link CocSem_interface Type +hi! link CocSem_keyword Keyword +hi! link CocSem_label Keyword +hi! link CocSem_logical Keyword +hi! link CocSem_macro Macro +hi! link CocSem_method Function +hi! link CocSem_modifier Keyword +hi! link CocSem_namespace Identifier +hi! link CocSem_number Number +hi! link CocSem_operator Operator +hi! link CocSem_parameter Identifier +hi! link CocSem_parenthesis Normal +hi! link CocSem_property Identifier +hi! link CocSem_punctuation Keyword +hi! link CocSem_regexp Type +hi! link CocSem_selfKeyword Constant +hi! link CocSem_semicolon Normal +hi! link CocSem_string String +hi! link CocSem_struct Structure +hi! link CocSem_type Type +hi! link CocSem_typeAlias Type +hi! link CocSem_typeParameter Type +hi! link CocSem_unknown Normal +hi! link CocSem_variable Identifier + +call hi("CocHighlightRead", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "") +call hi("CocHighlightText", s:gui0A, s:gui01, s:cterm0A, s:cterm01, "", "") +call hi("CocHighlightWrite", s:gui08, s:gui01, s:cterm08, s:cterm01, "", "") +call hi("CocListMode", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "bold", "") +call hi("CocListPath", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "", "") +call hi("CocSessionsName", s:gui06, "", s:cterm05, "", "", "") + +" CSS +hi! link cssBraces ThemeBlue +hi! link cssFunctionName ThemeYellow +hi! link cssIdentifier ThemeOrange +hi! link cssClassName ThemeGreen +hi! link cssColor ThemeBlue +hi! link cssSelectorOp ThemeBlue +hi! link cssSelectorOp2 ThemeBlue +hi! link cssImportant ThemeGreen +hi! link cssVendor ThemeFg1 + +hi! link cssTextProp ThemeCyan +hi! link cssAnimationProp ThemeCyan +hi! link cssUIProp ThemeYellow +hi! link cssTransformProp ThemeCyan +hi! link cssTransitionProp ThemeCyan +hi! link cssPrintProp ThemeCyan +hi! link cssPositioningProp ThemeYellow +hi! link cssBoxProp ThemeCyan +hi! link cssFontDescriptorProp ThemeCyan +hi! link cssFlexibleBoxProp ThemeCyan +hi! link cssBorderOutlineProp ThemeCyan +hi! link cssBackgroundProp ThemeCyan +hi! link cssMarginProp ThemeCyan +hi! link cssListProp ThemeCyan +hi! link cssTableProp ThemeCyan +hi! link cssFontProp ThemeCyan +hi! link cssPaddingProp ThemeCyan +hi! link cssDimensionProp ThemeCyan +hi! link cssRenderProp ThemeCyan +hi! link cssColorProp ThemeCyan +hi! link cssGeneratedContentProp ThemeCyan + + +" CMP +hi! link CmpItemAbbrDeprecated Deprecated +hi! link CmpItemAbbrMatch SearchMatch +hi! link CmpItemAbbrMatchFuzzy SearchMatch +hi! link CmpItemKindClass Type +hi! link CmpItemKindColor Keyword +hi! link CmpItemKindConstant Constant +hi! link CmpItemKindConstructor Special +hi! link CmpItemKindEnum Type +hi! link CmpItemKindEnumMember Constant +hi! link CmpItemKindEvent Identifier +hi! link CmpItemKindField Character +hi! link CmpItemKindFile Directory +hi! link CmpItemKindFolder Directory +hi! link CmpItemKindFunction Function +hi! link CmpItemKindInterface Type +hi! link CmpItemKindKeyword Keyword +hi! link CmpItemKindMethod Function +hi! link CmpItemKindModule Namespace +hi! link CmpItemKindOperator Operator +hi! link CmpItemKindProperty Identifier +hi! link CmpItemKindReference Character +hi! link CmpItemKindSnippet String +hi! link CmpItemKindStruct Type +hi! link CmpItemKindText Text +hi! link CmpItemKindUnit Namespace +hi! link CmpItemKindValue Comment +hi! link CmpItemKindVariable Identifier + +if has("nvim-0.8.0") + hi! link CmpItemKindField @field + hi! link CmpItemKindProperty @property +endif + +" Diff +call hi("DiffAdd", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "") +call hi("DiffChange", s:gui06, s:gui01, s:cterm05, s:cterm01, "", "") +call hi("DiffDelete", s:gui02, s:guibg, s:cterm02, s:ctermbg, "", "") +call hi("DiffText", s:gui0D, s:gui01, s:cterm0D, s:cterm01, "", "") +call hi("DiffAdded", s:gui0B, s:guibg, s:cterm0B, s:ctermbg, "", "") +call hi("DiffFile", s:gui08, s:guibg, s:cterm08, s:ctermbg, "", "") +call hi("DiffNewFile", s:gui0B, s:guibg, s:cterm0B, s:ctermbg, "", "") +call hi("DiffLine", s:gui0D, s:guibg, s:cterm0D, s:ctermbg, "", "") +call hi("DiffRemoved", s:gui08, s:guibg, s:cterm08, s:ctermbg, "", "") + +" Git +call hi("gitcommitOverflow", s:gui08, "", s:cterm08, "", "", "") +call hi("gitcommitSummary", s:gui0B, "", s:cterm0B, "", "", "") +call hi("gitcommitComment", s:gui03, "", s:cterm03, "", "", "") +call hi("gitcommitUntracked", s:gui03, "", s:cterm03, "", "", "") +call hi("gitcommitDiscarded", s:gui03, "", s:cterm03, "", "", "") +call hi("gitcommitSelected", s:gui03, "", s:cterm03, "", "", "") +call hi("gitcommitHeader", s:gui0E, "", s:cterm0E, "", "", "") +call hi("gitcommitSelectedType", s:gui0D, "", s:cterm0D, "", "", "") +call hi("gitcommitUnmergedType", s:gui0D, "", s:cterm0D, "", "", "") +call hi("gitcommitDiscardedType", s:gui0D, "", s:cterm0D, "", "", "") +call hi("gitcommitBranch", s:gui09, "", s:cterm09, "", "bold", "") +call hi("gitcommitUntrackedFile", s:gui0A, "", s:cterm0A, "", "", "") +call hi("gitcommitUnmergedFile", s:gui08, "", s:cterm08, "", "bold", "") +call hi("gitcommitDiscardedFile", s:gui08, "", s:cterm08, "", "bold", "") +call hi("gitcommitSelectedFile", s:gui0B, "", s:cterm0B, "", "bold", "") + +" GitGutter +hi! link GitGutterAdd GitAddSign +hi! link GitGutterChange GitChangeSign +hi! link GitGutterDelete GitDeleteSign +hi! link GitGutterChangeDelete GitChangeDeleteSign + +" indent-blankline (nvim) +if has("nvim") + call hi("@ibl.indent.char.1",s:gui01, "", s:cterm01, "", "", "") +endif + +" HTML +call hi("htmlBold", s:gui07, "", s:cterm0A, "", "bold", "") +call hi("htmlItalic", s:gui06, "", s:cterm0E, "", "italic", "") +call hi("htmlEndTag", s:gui06, "", s:cterm05, "", "", "") +call hi("htmlTag", s:gui06, "", s:cterm05, "", "", "") + +" JavaScript +call hi("javaScript", s:gui06, "", s:cterm05, "", "", "") +call hi("javaScriptBraces", s:gui06, "", s:cterm05, "", "", "") +call hi("javaScriptNumber", s:gui09, "", s:cterm09, "", "", "") +" pangloss/vim-javascript +call hi("jsOperator", s:gui0D, "", s:cterm0D, "", "", "") +call hi("jsStatement", s:gui0E, "", s:cterm0E, "", "", "") +call hi("jsReturn", s:gui0E, "", s:cterm0E, "", "", "") +call hi("jsThis", s:gui08, "", s:cterm08, "", "", "") +call hi("jsClassDefinition", s:gui0A, "", s:cterm0A, "", "", "") +call hi("jsFunction", s:gui0E, "", s:cterm0E, "", "", "") +call hi("jsFuncName", s:gui0D, "", s:cterm0D, "", "", "") +call hi("jsFuncCall", s:gui0D, "", s:cterm0D, "", "", "") +call hi("jsClassFuncName", s:gui0D, "", s:cterm0D, "", "", "") +call hi("jsClassMethodType", s:gui0E, "", s:cterm0E, "", "", "") +call hi("jsRegexpString", s:gui0C, "", s:cterm0C, "", "", "") +call hi("jsGlobalObjects", s:gui0A, "", s:cterm0A, "", "", "") +call hi("jsGlobalNodeObjects", s:gui0A, "", s:cterm0A, "", "", "") +call hi("jsExceptions", s:gui0A, "", s:cterm0A, "", "", "") +call hi("jsBuiltins", s:gui0A, "", s:cterm0A, "", "", "") + +" Mail +call hi("mailQuoted1", s:gui0A, "", s:cterm0A, "", "", "") +call hi("mailQuoted2", s:gui0B, "", s:cterm0B, "", "", "") +call hi("mailQuoted3", s:gui0E, "", s:cterm0E, "", "", "") +call hi("mailQuoted4", s:gui0C, "", s:cterm0C, "", "", "") +call hi("mailQuoted5", s:gui0D, "", s:cterm0D, "", "", "") +call hi("mailQuoted6", s:gui0A, "", s:cterm0A, "", "", "") +call hi("mailURL", s:gui0D, "", s:cterm0D, "", "", "") +call hi("mailEmail", s:gui0D, "", s:cterm0D, "", "", "") + +" Markdown +call hi("markdownCode", s:gui0B, "", s:cterm0B, "", "", "") +call hi("markdownError", s:gui06, s:guibg, s:cterm05, s:ctermbg, "", "") +call hi("markdownCodeBlock", s:gui0B, "", s:cterm0B, "", "", "") +call hi("markdownHeadingDelimiter", s:gui0D, "", s:cterm0D, "", "", "") + +" Matchup +call hi("MatchWord", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "underline", "") + +" NERDTree +call hi("NERDTreeDirSlash", s:gui0D, "", s:cterm0D, "", "", "") +call hi("NERDTreeExecFile", s:gui06, "", s:cterm05, "", "", "") + +" Netrw +hi! link netrwDir ThemeCyan +hi! link netrwClassify ThemeCyan +hi! link netrwLink ThemeBg3 +hi! link netrwSymLink ThemeFg1 +hi! link netrwExe ThemeYellow +hi! link netrwComment ThemeBg3 +hi! link netrwList ThemeBlue +hi! link netrwHelpCmd ThemeCyan +hi! link netrwCmdSep ThemeFg3 +hi! link netrwVersion ThemeGreen + +" PHP +call hi("phpMemberSelector", s:gui06, "", s:cterm05, "", "", "") +call hi("phpComparison", s:gui06, "", s:cterm05, "", "", "") +call hi("phpParent", s:gui06, "", s:cterm05, "", "", "") +call hi("phpMethodsVar", s:gui0C, "", s:cterm0C, "", "", "") + +" Python +"call hi("pythonOperator", s:gui0E, "", s:cterm0E, "", "", "") +"call hi("pythonRepeat", s:gui0E, "", s:cterm0E, "", "", "") +"call hi("pythonInclude", s:gui0E, "", s:cterm0E, "", "", "") +"call hi("pythonStatement", s:gui0E, "", s:cterm0E, "", "", "") + +" hi! link pythonBuiltin ThemeCyan +" hi! link pythonBuiltinObj ThemeCyan +" hi! link pythonBuiltinFunc ThemeGreen +" hi! link pythonFunction Function +hi! link pythonDecorator ThemeYellow +hi! link pythonDecoratorName ThemeYellow +" hi! link pythonTripleQuotes ThemeGreenItalic +" hi! link pythonInclude ThemeBlue +" hi! link pythonImport ThemeBlue +" hi! link pythonRun ThemeBlue +" hi! link pythonCoding ThemeBlue +" hi! link pythonOperator ThemeRed +" hi! link pythonException ThemeRed +" hi! link pythonExceptions ThemeYellow +" hi! link pythonBoolean ThemeYellow +" hi! link pythonDot ThemeFg3 +" hi! link pythonConditional ThemeCyan +" hi! link pythonRepeat ThemeRed +" hi! link pythonDottedName ThemeGreen + + +" Ruby +call hi("rubyAttribute", s:gui0D, "", s:cterm0D, "", "", "") +call hi("rubyConstant", s:gui0A, "", s:cterm0A, "", "", "") +call hi("rubyInterpolationDelimiter", s:gui0F, "", s:cterm0F, "", "", "") +call hi("rubyRegexp", s:gui0C, "", s:cterm0C, "", "", "") +call hi("rubySymbol", s:gui0B, "", s:cterm0B, "", "", "") +call hi("rubyStringDelimiter", s:gui0B, "", s:cterm0B, "", "", "") + +" SASS +call hi("sassidChar", s:gui08, "", s:cterm08, "", "", "") +call hi("sassClassChar", s:gui09, "", s:cterm09, "", "", "") +call hi("sassInclude", s:gui0E, "", s:cterm0E, "", "", "") +call hi("sassMixing", s:gui0E, "", s:cterm0E, "", "", "") +call hi("sassMixinName", s:gui0D, "", s:cterm0D, "", "", "") + +" Signify +hi! link SignifySignAdd GitAddSign +hi! link SignifySignChange GitChangeSign +hi! link SignifySignDelete GitDeleteSign + +" Startify +call hi("StartifyBracket", s:gui03, "", s:cterm03, "", "", "") +call hi("StartifyFile", s:gui07, "", s:cterm07, "", "", "") +call hi("StartifyFooter", s:gui03, "", s:cterm03, "", "", "") +call hi("StartifyHeader", s:gui0B, "", s:cterm0B, "", "", "") +call hi("StartifyNumber", s:gui09, "", s:cterm09, "", "", "") +call hi("StartifyPath", s:gui03, "", s:cterm03, "", "", "") +call hi("StartifySection", s:gui0E, "", s:cterm0E, "", "", "") +call hi("StartifySelect", s:gui0C, "", s:cterm0C, "", "", "") +call hi("StartifySlash", s:gui03, "", s:cterm03, "", "", "") +call hi("StartifySpecial", s:gui03, "", s:cterm03, "", "", "") + +" LSP +if has("nvim") + hi! link DiagnosticError ErrorSign + hi! link DiagnosticWarn WarningSign + hi! link DiagnosticInfo InfoSign + hi! link DiagnosticHint HintSign + hi! link DiagnosticOk OkSign + + hi! link DiagnosticFloatingError ErrorFloat + hi! link DiagnosticFloatingWarn WarningFloat + hi! link DiagnosticFloatingInfo InfoFloat + hi! link DiagnosticFloatingHint HintFloat + hi! link DiagnosticFloatingOk OkFloat + + hi! link DiagnosticUnderlineError ErrorHighlight + hi! link DiagnosticUnderlineWarn WarningHighlight + hi! link DiagnosticUnderlineInfo InfoHighlight + hi! link DiagnosticUnderlineHint HintHighlight + hi! link DiagnosticUnderlineOk OkHighlight + + hi! link DiagnosticsVirtualTextError ErrorSign + hi! link DiagnosticsVirtualTextWarning WarningSign + hi! link DiagnosticsVirtualTextInfo InfoSign + hi! link DiagnosticsVirtualTextHint HintSign + hi! link DiagnosticsVirtualTextOk OkSign + + " Remove untill endif on next nvim release + hi! link LspDiagnosticsSignError ErrorSign + hi! link LspDiagnosticsSignWarning WarningSign + hi! link LspDiagnosticsSignInfo InfoSign + hi! link LspDiagnosticsSignHint HintSign + + hi! link LspDiagnosticsVirtualTextError ErrorSign + hi! link LspDiagnosticsVirtualTextWarning WarningSign + hi! link LspDiagnosticsVirtualTextInfo InfoSign + hi! link LspDiagnosticsVirtualTextHint HintSign + + hi! link LspDiagnosticsFloatingError ErrorFloat + hi! link LspDiagnosticsFloatingWarning WarningFloat + hi! link LspDiagnosticsFloatingInfo InfoFloat + hi! link LspDiagnosticsFloatingHint HintFloat + + hi! link LspDiagnosticsUnderlineError ErrorHighlight + hi! link LspDiagnosticsUnderlineWarning WarningHighlight + hi! link LspDiagnosticsUnderlineInfo InfoHighlight + hi! link LspDiagnosticsUnderlineHint HintHighlight + + hi! link LspReferenceText ReferenceText + hi! link LspReferenceRead ReferenceRead + hi! link LspReferenceWrite ReferenceWrite +endif + +" Java +call hi("javaOperator", s:gui0D, "", s:cterm0D, "", "", "") + +" JSON +hi! link jsonKeyword ThemeGreen +hi! link jsonQuote ThemeGreen +hi! link jsonBraces ThemeFg1 +hi! link jsonString ThemeFg1 + +" Markdown +hi! link markdownH1 ThemeRedBold +hi! link markdownH2 ThemeRed +hi! link markdownH3 ThemeRed +hi! link markdownH4 ThemeRed +hi! link markdownH5 ThemeRed +hi! link markdownH6 ThemeRed + +hi! link markdownCode ThemeYellow +hi! link markdownCodeBlock ThemeYellow +hi! link markdownCodeDelimiter ThemeYellow + +hi! link markdownBlockquote ThemeGrey +hi! link markdownListMarker ThemeBlue +hi! link markdownOrderedListMarker ThemeBlue +hi! link markdownRule ThemeGrey +hi! link markdownHeadingRule ThemeGrey + +hi! link markdownUrlDelimiter ThemeFg3 +hi! link markdownLinkDelimiter ThemeFg3 +hi! link markdownLinkTextDelimiter ThemeFg3 +hi! link markdownHeadingDelimiter ThemeOrange +hi! link markdownUrlTitleDelimiter ThemeGreen + +hi! link markdownLink ThemeGreen +hi! link markdownWikiLink ThemeViolet +hi! link markdownUrl ThemeOrange +hi! link markdownInlineUrl ThemeOrange + +hi! link markdownLinkText ThemeViolet +hi! link markdownIdDeclaration markdownLinkText + +"call s:HL('markdownItalic', s:fg3, s:none, s:italic) +"call s:HL('markdownLinkText', s:gray, s:none, s:underline) + + +" Remove functions +delf hi + +" Remove color variables +unlet s:gui00 s:gui01 s:gui02 s:gui03 s:gui04 s:gui05 s:gui06 s:gui07 s:gui08 s:gui09 s:gui0A s:gui0B s:gui0C s:gui0D s:gui0E s:gui0F s:guibg +unlet s:cterm00 s:cterm01 s:cterm02 s:cterm03 s:cterm04 s:cterm05 s:cterm06 s:cterm07 s:cterm08 s:cterm09 s:cterm0A s:cterm0B s:cterm0C s:cterm0D s:cterm0E s:cterm0F s:ctermbg diff --git a/apps/nvim/soft-tundra-monobiome-dark.vim b/apps/nvim/soft-tundra-monobiome-dark.vim new file mode 100644 index 0000000..650732a --- /dev/null +++ b/apps/nvim/soft-tundra-monobiome-dark.vim @@ -0,0 +1,882 @@ +" vi:syntax=vim +" +" Top-level remarks: +" +" - `hi` sets highlight colors for syntax groups, allowing one to specify fg and bg colors +" for GUI and terminal Vim. +" - `link` allows for linking one syntax group to another, reusing the same color +" settings. Language-specific groups can then point to one of the base color highlight +" groups, for example, without needing to repeat the raw color values. + +" GUI color definitions +let s:gui00 = "#2a2e33" +let g:base16_gui00 = "#2a2e33" +let s:gui01 = "#363b40" +let g:base16_gui01 = "#363b40" +let s:gui02 = "#43484e" +let g:base16_gui02 = "#43484e" +let s:gui03 = "#51565b" +let g:base16_gui03 = "#51565b" +let s:gui04 = "#b9bec5" +let g:base16_gui04 = "#b9bec5" +let s:gui05 = "#c8ced5" +let g:base16_gui05 = "#c8ced5" +let s:gui06 = "#d9dfe5" +let g:base16_gui06 = "#d9dfe5" +let s:gui07 = "#e9eff6" +let g:base16_gui07 = "#e9eff6" +let s:gui08 = "#f37060" +let g:base16_gui08 = "#f37060" +let s:gui09 = "#da8934" +let g:base16_gui09 = "#da8934" +let s:gui0A = "#a7a15f" +let g:base16_gui0A = "#a7a15f" +let s:gui0B = "#6eb178" +let g:base16_gui0B = "#6eb178" +let s:gui0C = "#6eb178" +let g:base16_gui0C = "#6eb178" +let s:gui0D = "#799ee3" +let g:base16_gui0D = "#799ee3" +let s:gui0E = "#799ee3" +let g:base16_gui0E = "#799ee3" +let s:gui0F = "#f37060" +let g:base16_gui0F = "#f37060" + +let s:grey = "#8a9096" + +" Terminal color definitions +let s:cterm00 = "00" +let g:base16_cterm00 = "00" +let s:cterm03 = "08" +let g:base16_cterm03 = "08" +let s:cterm05 = "07" +let g:base16_cterm05 = "07" +let s:cterm07 = "15" +let g:base16_cterm07 = "15" +let s:cterm08 = "01" +let g:base16_cterm08 = "01" +let s:cterm0A = "03" +let g:base16_cterm0A = "03" +let s:cterm0B = "02" +let g:base16_cterm0B = "02" +let s:cterm0C = "06" +let g:base16_cterm0C = "06" +let s:cterm0D = "04" +let g:base16_cterm0D = "04" +let s:cterm0E = "05" +let g:base16_cterm0E = "05" + +let s:cterm01 = "10" +let g:base16_cterm01 = "10" +let s:cterm02 = "11" +let g:base16_cterm02 = "11" +let s:cterm04 = "12" +let g:base16_cterm04 = "12" +let s:cterm06 = "13" +let g:base16_cterm06 = "13" +let s:cterm09 = "09" +let g:base16_cterm09 = "09" +let s:cterm0F = "14" +let g:base16_cterm0F = "14" + +" Neovim terminal colours +if has("nvim") + let g:terminal_color_0 = "#2a2e33" + let g:terminal_color_1 = "#f37060" + let g:terminal_color_2 = "#6eb178" + let g:terminal_color_3 = "#a7a15f" + let g:terminal_color_4 = "#799ee3" + let g:terminal_color_5 = "#799ee3" + let g:terminal_color_6 = "#6eb178" + let g:terminal_color_7 = "#c8ced5" + let g:terminal_color_8 = "#51565b" + let g:terminal_color_9 = "#f37060" + let g:terminal_color_10 = "#6eb178" + let g:terminal_color_11 = "#a7a15f" + let g:terminal_color_12 = "#799ee3" + let g:terminal_color_13 = "#799ee3" + let g:terminal_color_14 = "#6eb178" + let g:terminal_color_15 = "#e9eff6" + let g:terminal_color_background = g:terminal_color_0 + let g:terminal_color_foreground = g:terminal_color_5 + + if &background == "light" + let g:terminal_color_background = g:terminal_color_7 + let g:terminal_color_foreground = g:terminal_color_2 + endif + +elseif has("terminal") + let g:terminal_ansi_colors = [ + \ "#2a2e33", + \ "#f37060", + \ "#6eb178", + \ "#a7a15f", + \ "#799ee3", + \ "#799ee3", + \ "#6eb178", + \ "#c8ced5", + \ "#51565b", + \ "#f37060", + \ "#6eb178", + \ "#a7a15f", + \ "#799ee3", + \ "#799ee3", + \ "#6eb178", + \ "#e9eff6", + \ ] +endif + +let s:guibg = s:gui00 +let s:ctermbg = s:cterm00 + +" Theme setup +hi clear +syntax reset +let g:colors_name = "active" + +" Highlighting function +" Optional variables are attributes and guisp +function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) + " For a given syntax group, sets the GUI and terminal foreground and backgrounds + " Optional parameters are interpreted as `attr` and `guisp`, the first of which appears + " to be a modifier for the group (e.g., bold, italic), and `guisp` appears to be + " 'special' colors used for underlines in the GUI. + let l:attr = get(a:, 1, "") + let l:guisp = get(a:, 2, "") + + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + + if a:guifg != "" + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=" . a:guifg + endif + endif + + if a:guibg != "" + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=" . a:guibg + endif + endif + + if a:ctermfg != "" + exec "hi " . a:group . " ctermfg=" . a:ctermfg + endif + + if a:ctermbg != "" + exec "hi " . a:group . " ctermbg=" . a:ctermbg + endif + + if l:attr != "" + exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr + endif + + if l:guisp != "" + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=" . l:guisp + endif + endif +endfunction + + +fun hi(group, guifg, guibg, ctermfg, ctermbg, attr, guisp) + call g:Base16hi(a:group, a:guifg, a:guibg, a:ctermfg, a:ctermbg, a:attr, a:guisp) +endfun + + +" color groups for interpretability +call hi("ThemeBg0", s:gui00, "", s:cterm00, "", "", "") +call hi("ThemeBg1", s:gui01, "", s:cterm01, "", "", "") +call hi("ThemeBg2", s:gui02, "", s:cterm02, "", "", "") +call hi("ThemeBg3", s:gui03, "", s:cterm03, "", "", "") +call hi("ThemeFg3", s:gui04, "", s:cterm04, "", "", "") +call hi("ThemeFg2", s:gui05, "", s:cterm05, "", "", "") +call hi("ThemeFg1", s:gui06, "", s:cterm06, "", "", "") +call hi("ThemeFg0", s:gui07, "", s:cterm07, "", "", "") +" +call hi("ThemeRed", s:gui08, "", s:cterm08, "", "", "") +call hi("ThemeOrange", s:gui09, "", s:cterm09, "", "", "") +call hi("ThemeYellow", s:gui0A, "", s:cterm0A, "", "", "") +call hi("ThemeGreen", s:gui0B, "", s:cterm0B, "", "", "") +call hi("ThemeCyan", s:gui0C, "", s:cterm0C, "", "", "") +call hi("ThemeBlue", s:gui0D, "", s:cterm0D, "", "", "") +call hi("ThemeViolet", s:gui0E, "", s:cterm0E, "", "", "") +call hi("ThemeMagenta", s:gui0F, "", s:cterm0F, "", "", "") + +call hi("ThemeRedBold", s:gui08, "", s:cterm08, "", "bold", "") +call hi("ThemeOrangeBold", s:gui09, "", s:cterm09, "", "bold", "") +call hi("ThemeYellowBold", s:gui0A, "", s:cterm0A, "", "bold", "") +call hi("ThemeGreenBold", s:gui0B, "", s:cterm0B, "", "bold", "") +call hi("ThemeCyanBold", s:gui0C, "", s:cterm0C, "", "bold", "") +call hi("ThemeBlueBold", s:gui0D, "", s:cterm0D, "", "bold", "") +call hi("ThemeVioletBold", s:gui0E, "", s:cterm0E, "", "bold", "") +call hi("ThemeMagentaBold", s:gui0F, "", s:cterm0F, "", "bold", "") + +call hi("ThemeRedItalic", s:gui08, "", s:cterm08, "", "italic", "") +call hi("ThemeOrangeItalic", s:gui09, "", s:cterm09, "", "italic", "") +call hi("ThemeYellowItalic", s:gui0A, "", s:cterm0A, "", "italic", "") +call hi("ThemeGreenItalic", s:gui0B, "", s:cterm0B, "", "italic", "") +call hi("ThemeCyanItalic", s:gui0C, "", s:cterm0C, "", "italic", "") +call hi("ThemeBlueItalic", s:gui0D, "", s:cterm0D, "", "italic", "") +call hi("ThemeVioletItalic", s:gui0E, "", s:cterm0E, "", "italic", "") +call hi("ThemeMagentaItalic", s:gui0F, "", s:cterm0F, "", "italic", "") + +call hi("ThemeGrey", s:grey, "", s:cterm03, "", "", "") +call hi("ThemeGreyItalic", s:grey, "", s:cterm03, "", "italic", "") + + +" Vim editor colors +call hi("Normal", s:gui05, s:guibg, s:cterm05, s:ctermbg, "", "") +call hi("Bold", "", "", "", "", "bold", "") +call hi("Debug", s:gui08, "", s:cterm08, "", "", "") +call hi("Directory", s:gui0D, "", s:cterm0D, "", "", "") +call hi("Error", s:guibg, s:gui08, s:ctermbg, s:cterm08, "", "") +call hi("ErrorMsg", s:gui08, s:guibg, s:cterm08, s:ctermbg, "", "") +call hi("Exception", s:gui08, "", s:cterm08, "", "", "") +call hi("FoldColumn", s:gui03, s:guibg, s:cterm03, s:ctermbg, "", "") +call hi("Folded", s:gui02, s:guibg, s:cterm02, s:ctermbg, "", "") +call hi("IncSearch", s:gui01, s:gui09, s:cterm01, s:cterm09, "none", "") +call hi("Italic", "", "", "", "", "italic", "") +call hi("Macro", s:gui0C, "", s:cterm0C, "", "", "") +call hi("MatchParen", "", s:gui03, "", s:cterm03, "", "") +call hi("ModeMsg", s:gui0B, "", s:cterm0B, "", "", "") +call hi("MoreMsg", s:gui0B, "", s:cterm0B, "", "", "") +call hi("Question", s:gui0D, "", s:cterm0D, "", "", "") +call hi("Search", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "", "") +call hi("Substitute", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "none", "") +call hi("SpecialKey", s:gui03, "", s:cterm03, "", "", "") +call hi("TooLong", s:gui08, "", s:cterm08, "", "", "") +call hi("Underlined", "", "", "", "", "underline", "fg") +call hi("Visual", "", s:gui02, "", s:cterm02, "", "") +call hi("VisualNOS", s:gui08, "", s:cterm08, "", "", "") +call hi("WarningMsg", s:gui08, "", s:cterm08, "", "", "") +call hi("WildMenu", s:guibg, s:gui06, s:ctermbg, s:cterm05, "", "") +call hi("Title", s:gui0D, "", s:cterm0D, "", "none", "") +call hi("Conceal", s:gui0D, s:guibg, s:cterm0D, s:ctermbg, "", "") +call hi("Cursor", s:gui05, s:guibg, "", "", "inverse", "") +call hi("NonText", s:gui03, "", s:cterm03, "", "", "") +call hi("Whitespace", s:gui03, "", s:cterm03, "", "", "") +call hi("LineNr", s:gui03, s:guibg, s:cterm03, s:ctermbg, "", "") +call hi("SignColumn", s:gui03, s:guibg, s:cterm03, s:ctermbg, "", "") +call hi("StatusLine", s:gui07, s:gui01, s:cterm07, s:cterm01, "none", "") +call hi("StatusLineNC", s:gui06, s:gui01, s:cterm05, s:cterm01, "none", "") +call hi("VertSplit", s:gui01, s:guibg, s:cterm01, s:ctermbg, "none", "") +call hi("ColorColumn", "", s:gui01, "", s:cterm01, "none", "") +call hi("CursorColumn", "", s:gui01, "", s:cterm01, "none", "") +call hi("CursorLine", "", s:gui01, "", s:cterm01, "none", "") +call hi("CursorLineNr", s:gui04, s:gui01, s:cterm04, s:cterm01, "bold", "") +call hi("QuickFixLine", "", s:gui01, "", s:cterm01, "none", "") +call hi("PMenu", s:gui06, s:gui01, s:cterm06, s:cterm01, "none", "") +call hi("PMenuSel", s:gui06, s:gui02, s:cterm06, s:cterm02, "", "") +call hi("PMenuSbar", "", s:gui03, "", s:cterm03, "", "") +call hi("PMenuThumb", "", s:gui04, "", s:cterm04, "", "") +call hi("TabLine", s:gui03, s:gui01, s:cterm03, s:cterm01, "none", "") +call hi("TabLineFill", s:gui03, s:gui01, s:cterm03, s:cterm01, "none", "") +call hi("TabLineSel", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "none", "") + +" Standard syntax +hi! link Boolean ThemeOrange +hi! link Character ThemeRed + +"call hi("Comment", s:gui03, "", s:cterm03, "", "italic", "") +hi! link Comment ThemeGreyItalic + +hi! link Conditional ThemeRed +hi! link Constant ThemeOrange +call hi("Define", s:gui0E, "", s:cterm0E, "", "none", "") +hi! link Delimiter ThemeFg1 + +if has("patch-8.0.1038") + call hi("Deprecated", "", "", "", "", "strikethrough", "") +endif + +hi! link Float ThemeOrange +hi! link Function ThemeBlue +call hi("Identifier", s:gui06, "", s:cterm05, "", "none", "") +hi! link Include ThemeBlue +hi! link Constant ThemeOrange +call hi("Keyword", s:gui0E, "", s:cterm0E, "", "none", "") +hi! link Label ThemeOrange +hi! link Number ThemeOrange +hi! link Operator ThemeYellow +hi! link PreProc ThemeOrange +hi! link Repeat ThemeViolet +hi! link Special ThemeYellow +hi! link SpecialChar ThemeMagenta +hi! link Statement ThemeRed +hi! link StorageClass ThemeOrange +hi! link String ThemeGreen +hi! link Structure ThemeOrange +hi! link Tag ThemeOrange + +call hi("Todo", s:gui08, s:guibg, s:cterm08, s:ctermbg, "italic", "") +call hi("Type", s:gui0A, "", s:cterm0A, "", "none", "") + +hi! link Typedef ThemeOrange + + +" Treesitter +if has("nvim-0.8.0") + call hi("@field", s:gui08, "", s:cterm08, "", "", "") + call hi("@property", s:gui08, "", s:cterm08, "", "", "") + call hi("@namespace", s:gui06, "", s:cterm05, "", "italic", "") + call hi("@variable.builtin", s:gui06, "", s:cterm05, "", "italic", "") + call hi("@text.reference", s:gui08, "", s:cterm08, "", "", "") + call hi("@text.uri", s:gui08, "", s:cterm08, "", "italic", "") + + " Annotations & Attributes + call hi("@annotation", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@attribute", s:gui0D, "", s:cterm0D, "", "", "") + + " Booleans, Characters & Comments + call hi("@boolean", s:gui09, "", s:cterm09, "", "", "") + call hi("@character", s:gui08, "", s:cterm08, "", "", "") + call hi("@character.special", s:gui0F, "", s:cterm0F, "", "", "") + call hi("@comment", s:gui03, "", s:cterm03, "", "", "") + + " Conditionals, Constants & Debugging + call hi("@keyword.conditional", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@constant", s:gui09, "", s:cterm09, "", "", "") + call hi("@constant.builtin", s:gui09, "", s:cterm09, "", "", "") + call hi("@constant.macro", s:gui08, "", s:cterm08, "", "", "") + call hi("@keyword.debug", s:gui08, "", s:cterm08, "", "", "") + + " Directives & Exceptions + call hi("@keyword.directive.define", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@keyword.exception", s:gui0E, "", s:cterm0E, "", "", "") + + " Floats & Functions + call hi("@number.float", s:gui09, "", s:cterm09, "", "", "") + call hi("@function", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@function.builtin", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@function.call", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@function.macro", s:gui08, "", s:cterm08, "", "", "") + + " Imports, Operators & Returns + call hi("@keyword.import", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@keyword.coroutine", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@keyword.operator", s:gui06, "", s:cterm05, "", "", "") + call hi("@keyword.return", s:gui0E, "", s:cterm0E, "", "", "") + + " Methods & Namespaces + call hi("@function.method", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@function.method.call", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@namespace.builtin", s:gui0E, "", s:cterm0E, "", "", "") + + " Numbers & Directives + call hi("@none", s:gui06, "", s:cterm05, "", "", "") + call hi("@number", s:gui09, "", s:cterm09, "", "", "") + call hi("@keyword.directive", s:gui0E, "", s:cterm0E, "", "", "") + + " Repeats, Storage & Strings + call hi("@keyword.repeat", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@keyword.storage", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@string", s:gui0B, "", s:cterm0B, "", "", "") + + " Tags & Markup + call hi("@markup.link.label", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.link.label.symbol", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@tag", s:gui08, "", s:cterm08, "", "", "") + call hi("@tag.attribute", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@tag.delimiter", s:gui0F, "", s:cterm0F, "", "", "") + + " More Markup + call hi("@markup", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.environment", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.environment.name", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.raw", s:gui09, "", s:cterm09, "", "", "") + call hi("@markup.math", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.strong", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.emphasis", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.strikethrough", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.underline", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.heading", s:gui0D, "", s:cterm0D, "", "", "") + + " Comments & Types + call hi("@comment.note", s:gui03, "", s:cterm03, "", "", "") + call hi("@comment.error", s:gui08, "", s:cterm08, "", "", "") + call hi("@comment.hint", s:gui0B, "", s:cterm0B, "", "", "") + call hi("@comment.info", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@comment.warning", s:gui09, "", s:cterm09, "", "", "") + call hi("@comment.todo", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.link.url", s:gui09, "", s:cterm09, "", "", "") + call hi("@type", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@type.definition", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@type.qualifier", s:gui0E, "", s:cterm0E, "", "", "") +endif + +" Standard highlights to be used by plugins +if has("patch-8.0.1038") + call hi("Deprecated", "", "", "", "", "strikethrough", "") +endif +call hi("SearchMatch", s:gui0C, "", s:cterm0C, "", "", "") + +call hi("GitAddSign", s:gui0B, "", s:cterm0B, "", "", "") +call hi("GitChangeSign", s:gui04, "", s:cterm04, "", "", "") +call hi("GitDeleteSign", s:gui08, "", s:cterm08, "", "", "") +call hi("GitChangeDeleteSign", s:gui04, "", s:cterm04, "", "", "") + +call hi("ErrorSign", s:gui08, "", s:cterm08, "", "", "") +call hi("WarningSign", s:gui09, "", s:cterm09, "", "", "") +call hi("InfoSign", s:gui0D, "", s:cterm0D, "", "", "") +call hi("HintSign", s:gui0C, "", s:cterm0C, "", "", "") +call hi("OkSign", s:gui0B, "", s:cterm0B, "", "", "") + +call hi("ErrorFloat", s:gui08, s:gui01, s:cterm08, s:cterm01, "", "") +call hi("WarningFloat", s:gui09, s:gui01, s:cterm09, s:cterm01, "", "") +call hi("InfoFloat", s:gui0D, s:gui01, s:cterm0D, s:cterm01, "", "") +call hi("HintFloat", s:gui0C, s:gui01, s:cterm0C, s:cterm01, "", "") +call hi("OkFloat", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "") + +call hi("ErrorHighlight", "", "", s:ctermbg, s:cterm08, "underline", s:gui08) +call hi("WarningHighlight", "", "", s:ctermbg, s:cterm09, "underline", s:gui09) +call hi("InfoHighlight", "", "", s:ctermbg, s:cterm0D, "underline", s:gui0D) +call hi("HintHighlight", "", "", s:ctermbg, s:cterm0C, "underline", s:gui0C) +call hi("OkHighlight", "", "", s:ctermbg, s:cterm0B, "underline", s:gui0B) + +call hi("SpellBad", "", "", s:ctermbg, s:cterm08, "undercurl", s:gui08) +call hi("SpellLocal", "", "", s:ctermbg, s:cterm0C, "undercurl", s:gui0C) +call hi("SpellCap", "", "", s:ctermbg, s:cterm0D, "undercurl", s:gui0D) +call hi("SpellRare", "", "", s:ctermbg, s:cterm0E, "undercurl", s:gui0E) + +call hi("ReferenceText", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "", "") +call hi("ReferenceRead", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "", "") +call hi("ReferenceWrite", s:gui01, s:gui08, s:cterm01, s:cterm08, "", "") + +" C +call hi("cOperator", s:gui0C, "", s:cterm0C, "", "", "") +call hi("cPreCondit", s:gui0E, "", s:cterm0E, "", "", "") + +" C# +call hi("csClass", s:gui0A, "", s:cterm0A, "", "", "") +call hi("csAttribute", s:gui0A, "", s:cterm0A, "", "", "") +call hi("csModifier", s:gui0E, "", s:cterm0E, "", "", "") +call hi("csType", s:gui08, "", s:cterm08, "", "", "") +call hi("csUnspecifiedStatement", s:gui0D, "", s:cterm0D, "", "", "") +call hi("csContextualStatement", s:gui0E, "", s:cterm0E, "", "", "") +call hi("csNewDecleration", s:gui08, "", s:cterm08, "", "", "") + +" Clap +hi! link ClapInput ColorColumn +hi! link ClapSpinner ColorColumn +hi! link ClapDisplay Default +hi! link ClapPreview ColorColumn +hi! link ClapCurrentSelection CursorLine +hi! link ClapNoMatchesFound ErrorFloat + +" Coc +hi! link CocErrorSign ErrorSign +hi! link CocWarningSign WarningSign +hi! link CocInfoSign InfoSign +hi! link CocHintSign HintSign + +hi! link CocErrorFloat ErrorFloat +hi! link CocWarningFloat WarningFloat +hi! link CocInfoFloat InfoFloat +hi! link CocHintFloat HintFloat + +hi! link CocErrorHighlight ErrorHighlight +hi! link CocWarningHighlight WarningHighlight +hi! link CocInfoHighlight InfoHighlight +hi! link CocHintHighlight HintHighlight + +hi! link CocSem_angle Keyword +hi! link CocSem_annotation Keyword +hi! link CocSem_attribute Type +hi! link CocSem_bitwise Keyword +hi! link CocSem_boolean Boolean +hi! link CocSem_brace Normal +hi! link CocSem_bracket Normal +hi! link CocSem_builtinAttribute Type +hi! link CocSem_builtinType Type +hi! link CocSem_character String +hi! link CocSem_class Structure +hi! link CocSem_colon Normal +hi! link CocSem_comma Normal +hi! link CocSem_comment Comment +hi! link CocSem_comparison Keyword +hi! link CocSem_concept Keyword +hi! link CocSem_constParameter Identifier +hi! link CocSem_dependent Keyword +hi! link CocSem_dot Keyword +hi! link CocSem_enum Structure +hi! link CocSem_enumMember Constant +hi! link CocSem_escapeSequence Type +hi! link CocSem_event Identifier +hi! link CocSem_formatSpecifier Type +hi! link CocSem_function Function +hi! link CocSem_interface Type +hi! link CocSem_keyword Keyword +hi! link CocSem_label Keyword +hi! link CocSem_logical Keyword +hi! link CocSem_macro Macro +hi! link CocSem_method Function +hi! link CocSem_modifier Keyword +hi! link CocSem_namespace Identifier +hi! link CocSem_number Number +hi! link CocSem_operator Operator +hi! link CocSem_parameter Identifier +hi! link CocSem_parenthesis Normal +hi! link CocSem_property Identifier +hi! link CocSem_punctuation Keyword +hi! link CocSem_regexp Type +hi! link CocSem_selfKeyword Constant +hi! link CocSem_semicolon Normal +hi! link CocSem_string String +hi! link CocSem_struct Structure +hi! link CocSem_type Type +hi! link CocSem_typeAlias Type +hi! link CocSem_typeParameter Type +hi! link CocSem_unknown Normal +hi! link CocSem_variable Identifier + +call hi("CocHighlightRead", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "") +call hi("CocHighlightText", s:gui0A, s:gui01, s:cterm0A, s:cterm01, "", "") +call hi("CocHighlightWrite", s:gui08, s:gui01, s:cterm08, s:cterm01, "", "") +call hi("CocListMode", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "bold", "") +call hi("CocListPath", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "", "") +call hi("CocSessionsName", s:gui06, "", s:cterm05, "", "", "") + +" CSS +hi! link cssBraces ThemeBlue +hi! link cssFunctionName ThemeYellow +hi! link cssIdentifier ThemeOrange +hi! link cssClassName ThemeGreen +hi! link cssColor ThemeBlue +hi! link cssSelectorOp ThemeBlue +hi! link cssSelectorOp2 ThemeBlue +hi! link cssImportant ThemeGreen +hi! link cssVendor ThemeFg1 + +hi! link cssTextProp ThemeCyan +hi! link cssAnimationProp ThemeCyan +hi! link cssUIProp ThemeYellow +hi! link cssTransformProp ThemeCyan +hi! link cssTransitionProp ThemeCyan +hi! link cssPrintProp ThemeCyan +hi! link cssPositioningProp ThemeYellow +hi! link cssBoxProp ThemeCyan +hi! link cssFontDescriptorProp ThemeCyan +hi! link cssFlexibleBoxProp ThemeCyan +hi! link cssBorderOutlineProp ThemeCyan +hi! link cssBackgroundProp ThemeCyan +hi! link cssMarginProp ThemeCyan +hi! link cssListProp ThemeCyan +hi! link cssTableProp ThemeCyan +hi! link cssFontProp ThemeCyan +hi! link cssPaddingProp ThemeCyan +hi! link cssDimensionProp ThemeCyan +hi! link cssRenderProp ThemeCyan +hi! link cssColorProp ThemeCyan +hi! link cssGeneratedContentProp ThemeCyan + + +" CMP +hi! link CmpItemAbbrDeprecated Deprecated +hi! link CmpItemAbbrMatch SearchMatch +hi! link CmpItemAbbrMatchFuzzy SearchMatch +hi! link CmpItemKindClass Type +hi! link CmpItemKindColor Keyword +hi! link CmpItemKindConstant Constant +hi! link CmpItemKindConstructor Special +hi! link CmpItemKindEnum Type +hi! link CmpItemKindEnumMember Constant +hi! link CmpItemKindEvent Identifier +hi! link CmpItemKindField Character +hi! link CmpItemKindFile Directory +hi! link CmpItemKindFolder Directory +hi! link CmpItemKindFunction Function +hi! link CmpItemKindInterface Type +hi! link CmpItemKindKeyword Keyword +hi! link CmpItemKindMethod Function +hi! link CmpItemKindModule Namespace +hi! link CmpItemKindOperator Operator +hi! link CmpItemKindProperty Identifier +hi! link CmpItemKindReference Character +hi! link CmpItemKindSnippet String +hi! link CmpItemKindStruct Type +hi! link CmpItemKindText Text +hi! link CmpItemKindUnit Namespace +hi! link CmpItemKindValue Comment +hi! link CmpItemKindVariable Identifier + +if has("nvim-0.8.0") + hi! link CmpItemKindField @field + hi! link CmpItemKindProperty @property +endif + +" Diff +call hi("DiffAdd", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "") +call hi("DiffChange", s:gui06, s:gui01, s:cterm05, s:cterm01, "", "") +call hi("DiffDelete", s:gui02, s:guibg, s:cterm02, s:ctermbg, "", "") +call hi("DiffText", s:gui0D, s:gui01, s:cterm0D, s:cterm01, "", "") +call hi("DiffAdded", s:gui0B, s:guibg, s:cterm0B, s:ctermbg, "", "") +call hi("DiffFile", s:gui08, s:guibg, s:cterm08, s:ctermbg, "", "") +call hi("DiffNewFile", s:gui0B, s:guibg, s:cterm0B, s:ctermbg, "", "") +call hi("DiffLine", s:gui0D, s:guibg, s:cterm0D, s:ctermbg, "", "") +call hi("DiffRemoved", s:gui08, s:guibg, s:cterm08, s:ctermbg, "", "") + +" Git +call hi("gitcommitOverflow", s:gui08, "", s:cterm08, "", "", "") +call hi("gitcommitSummary", s:gui0B, "", s:cterm0B, "", "", "") +call hi("gitcommitComment", s:gui03, "", s:cterm03, "", "", "") +call hi("gitcommitUntracked", s:gui03, "", s:cterm03, "", "", "") +call hi("gitcommitDiscarded", s:gui03, "", s:cterm03, "", "", "") +call hi("gitcommitSelected", s:gui03, "", s:cterm03, "", "", "") +call hi("gitcommitHeader", s:gui0E, "", s:cterm0E, "", "", "") +call hi("gitcommitSelectedType", s:gui0D, "", s:cterm0D, "", "", "") +call hi("gitcommitUnmergedType", s:gui0D, "", s:cterm0D, "", "", "") +call hi("gitcommitDiscardedType", s:gui0D, "", s:cterm0D, "", "", "") +call hi("gitcommitBranch", s:gui09, "", s:cterm09, "", "bold", "") +call hi("gitcommitUntrackedFile", s:gui0A, "", s:cterm0A, "", "", "") +call hi("gitcommitUnmergedFile", s:gui08, "", s:cterm08, "", "bold", "") +call hi("gitcommitDiscardedFile", s:gui08, "", s:cterm08, "", "bold", "") +call hi("gitcommitSelectedFile", s:gui0B, "", s:cterm0B, "", "bold", "") + +" GitGutter +hi! link GitGutterAdd GitAddSign +hi! link GitGutterChange GitChangeSign +hi! link GitGutterDelete GitDeleteSign +hi! link GitGutterChangeDelete GitChangeDeleteSign + +" indent-blankline (nvim) +if has("nvim") + call hi("@ibl.indent.char.1",s:gui01, "", s:cterm01, "", "", "") +endif + +" HTML +call hi("htmlBold", s:gui07, "", s:cterm0A, "", "bold", "") +call hi("htmlItalic", s:gui06, "", s:cterm0E, "", "italic", "") +call hi("htmlEndTag", s:gui06, "", s:cterm05, "", "", "") +call hi("htmlTag", s:gui06, "", s:cterm05, "", "", "") + +" JavaScript +call hi("javaScript", s:gui06, "", s:cterm05, "", "", "") +call hi("javaScriptBraces", s:gui06, "", s:cterm05, "", "", "") +call hi("javaScriptNumber", s:gui09, "", s:cterm09, "", "", "") +" pangloss/vim-javascript +call hi("jsOperator", s:gui0D, "", s:cterm0D, "", "", "") +call hi("jsStatement", s:gui0E, "", s:cterm0E, "", "", "") +call hi("jsReturn", s:gui0E, "", s:cterm0E, "", "", "") +call hi("jsThis", s:gui08, "", s:cterm08, "", "", "") +call hi("jsClassDefinition", s:gui0A, "", s:cterm0A, "", "", "") +call hi("jsFunction", s:gui0E, "", s:cterm0E, "", "", "") +call hi("jsFuncName", s:gui0D, "", s:cterm0D, "", "", "") +call hi("jsFuncCall", s:gui0D, "", s:cterm0D, "", "", "") +call hi("jsClassFuncName", s:gui0D, "", s:cterm0D, "", "", "") +call hi("jsClassMethodType", s:gui0E, "", s:cterm0E, "", "", "") +call hi("jsRegexpString", s:gui0C, "", s:cterm0C, "", "", "") +call hi("jsGlobalObjects", s:gui0A, "", s:cterm0A, "", "", "") +call hi("jsGlobalNodeObjects", s:gui0A, "", s:cterm0A, "", "", "") +call hi("jsExceptions", s:gui0A, "", s:cterm0A, "", "", "") +call hi("jsBuiltins", s:gui0A, "", s:cterm0A, "", "", "") + +" Mail +call hi("mailQuoted1", s:gui0A, "", s:cterm0A, "", "", "") +call hi("mailQuoted2", s:gui0B, "", s:cterm0B, "", "", "") +call hi("mailQuoted3", s:gui0E, "", s:cterm0E, "", "", "") +call hi("mailQuoted4", s:gui0C, "", s:cterm0C, "", "", "") +call hi("mailQuoted5", s:gui0D, "", s:cterm0D, "", "", "") +call hi("mailQuoted6", s:gui0A, "", s:cterm0A, "", "", "") +call hi("mailURL", s:gui0D, "", s:cterm0D, "", "", "") +call hi("mailEmail", s:gui0D, "", s:cterm0D, "", "", "") + +" Markdown +call hi("markdownCode", s:gui0B, "", s:cterm0B, "", "", "") +call hi("markdownError", s:gui06, s:guibg, s:cterm05, s:ctermbg, "", "") +call hi("markdownCodeBlock", s:gui0B, "", s:cterm0B, "", "", "") +call hi("markdownHeadingDelimiter", s:gui0D, "", s:cterm0D, "", "", "") + +" Matchup +call hi("MatchWord", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "underline", "") + +" NERDTree +call hi("NERDTreeDirSlash", s:gui0D, "", s:cterm0D, "", "", "") +call hi("NERDTreeExecFile", s:gui06, "", s:cterm05, "", "", "") + +" Netrw +hi! link netrwDir ThemeCyan +hi! link netrwClassify ThemeCyan +hi! link netrwLink ThemeBg3 +hi! link netrwSymLink ThemeFg1 +hi! link netrwExe ThemeYellow +hi! link netrwComment ThemeBg3 +hi! link netrwList ThemeBlue +hi! link netrwHelpCmd ThemeCyan +hi! link netrwCmdSep ThemeFg3 +hi! link netrwVersion ThemeGreen + +" PHP +call hi("phpMemberSelector", s:gui06, "", s:cterm05, "", "", "") +call hi("phpComparison", s:gui06, "", s:cterm05, "", "", "") +call hi("phpParent", s:gui06, "", s:cterm05, "", "", "") +call hi("phpMethodsVar", s:gui0C, "", s:cterm0C, "", "", "") + +" Python +"call hi("pythonOperator", s:gui0E, "", s:cterm0E, "", "", "") +"call hi("pythonRepeat", s:gui0E, "", s:cterm0E, "", "", "") +"call hi("pythonInclude", s:gui0E, "", s:cterm0E, "", "", "") +"call hi("pythonStatement", s:gui0E, "", s:cterm0E, "", "", "") + +" hi! link pythonBuiltin ThemeCyan +" hi! link pythonBuiltinObj ThemeCyan +" hi! link pythonBuiltinFunc ThemeGreen +" hi! link pythonFunction Function +hi! link pythonDecorator ThemeYellow +hi! link pythonDecoratorName ThemeYellow +" hi! link pythonTripleQuotes ThemeGreenItalic +" hi! link pythonInclude ThemeBlue +" hi! link pythonImport ThemeBlue +" hi! link pythonRun ThemeBlue +" hi! link pythonCoding ThemeBlue +" hi! link pythonOperator ThemeRed +" hi! link pythonException ThemeRed +" hi! link pythonExceptions ThemeYellow +" hi! link pythonBoolean ThemeYellow +" hi! link pythonDot ThemeFg3 +" hi! link pythonConditional ThemeCyan +" hi! link pythonRepeat ThemeRed +" hi! link pythonDottedName ThemeGreen + + +" Ruby +call hi("rubyAttribute", s:gui0D, "", s:cterm0D, "", "", "") +call hi("rubyConstant", s:gui0A, "", s:cterm0A, "", "", "") +call hi("rubyInterpolationDelimiter", s:gui0F, "", s:cterm0F, "", "", "") +call hi("rubyRegexp", s:gui0C, "", s:cterm0C, "", "", "") +call hi("rubySymbol", s:gui0B, "", s:cterm0B, "", "", "") +call hi("rubyStringDelimiter", s:gui0B, "", s:cterm0B, "", "", "") + +" SASS +call hi("sassidChar", s:gui08, "", s:cterm08, "", "", "") +call hi("sassClassChar", s:gui09, "", s:cterm09, "", "", "") +call hi("sassInclude", s:gui0E, "", s:cterm0E, "", "", "") +call hi("sassMixing", s:gui0E, "", s:cterm0E, "", "", "") +call hi("sassMixinName", s:gui0D, "", s:cterm0D, "", "", "") + +" Signify +hi! link SignifySignAdd GitAddSign +hi! link SignifySignChange GitChangeSign +hi! link SignifySignDelete GitDeleteSign + +" Startify +call hi("StartifyBracket", s:gui03, "", s:cterm03, "", "", "") +call hi("StartifyFile", s:gui07, "", s:cterm07, "", "", "") +call hi("StartifyFooter", s:gui03, "", s:cterm03, "", "", "") +call hi("StartifyHeader", s:gui0B, "", s:cterm0B, "", "", "") +call hi("StartifyNumber", s:gui09, "", s:cterm09, "", "", "") +call hi("StartifyPath", s:gui03, "", s:cterm03, "", "", "") +call hi("StartifySection", s:gui0E, "", s:cterm0E, "", "", "") +call hi("StartifySelect", s:gui0C, "", s:cterm0C, "", "", "") +call hi("StartifySlash", s:gui03, "", s:cterm03, "", "", "") +call hi("StartifySpecial", s:gui03, "", s:cterm03, "", "", "") + +" LSP +if has("nvim") + hi! link DiagnosticError ErrorSign + hi! link DiagnosticWarn WarningSign + hi! link DiagnosticInfo InfoSign + hi! link DiagnosticHint HintSign + hi! link DiagnosticOk OkSign + + hi! link DiagnosticFloatingError ErrorFloat + hi! link DiagnosticFloatingWarn WarningFloat + hi! link DiagnosticFloatingInfo InfoFloat + hi! link DiagnosticFloatingHint HintFloat + hi! link DiagnosticFloatingOk OkFloat + + hi! link DiagnosticUnderlineError ErrorHighlight + hi! link DiagnosticUnderlineWarn WarningHighlight + hi! link DiagnosticUnderlineInfo InfoHighlight + hi! link DiagnosticUnderlineHint HintHighlight + hi! link DiagnosticUnderlineOk OkHighlight + + hi! link DiagnosticsVirtualTextError ErrorSign + hi! link DiagnosticsVirtualTextWarning WarningSign + hi! link DiagnosticsVirtualTextInfo InfoSign + hi! link DiagnosticsVirtualTextHint HintSign + hi! link DiagnosticsVirtualTextOk OkSign + + " Remove untill endif on next nvim release + hi! link LspDiagnosticsSignError ErrorSign + hi! link LspDiagnosticsSignWarning WarningSign + hi! link LspDiagnosticsSignInfo InfoSign + hi! link LspDiagnosticsSignHint HintSign + + hi! link LspDiagnosticsVirtualTextError ErrorSign + hi! link LspDiagnosticsVirtualTextWarning WarningSign + hi! link LspDiagnosticsVirtualTextInfo InfoSign + hi! link LspDiagnosticsVirtualTextHint HintSign + + hi! link LspDiagnosticsFloatingError ErrorFloat + hi! link LspDiagnosticsFloatingWarning WarningFloat + hi! link LspDiagnosticsFloatingInfo InfoFloat + hi! link LspDiagnosticsFloatingHint HintFloat + + hi! link LspDiagnosticsUnderlineError ErrorHighlight + hi! link LspDiagnosticsUnderlineWarning WarningHighlight + hi! link LspDiagnosticsUnderlineInfo InfoHighlight + hi! link LspDiagnosticsUnderlineHint HintHighlight + + hi! link LspReferenceText ReferenceText + hi! link LspReferenceRead ReferenceRead + hi! link LspReferenceWrite ReferenceWrite +endif + +" Java +call hi("javaOperator", s:gui0D, "", s:cterm0D, "", "", "") + +" JSON +hi! link jsonKeyword ThemeGreen +hi! link jsonQuote ThemeGreen +hi! link jsonBraces ThemeFg1 +hi! link jsonString ThemeFg1 + +" Markdown +hi! link markdownH1 ThemeRedBold +hi! link markdownH2 ThemeRed +hi! link markdownH3 ThemeRed +hi! link markdownH4 ThemeRed +hi! link markdownH5 ThemeRed +hi! link markdownH6 ThemeRed + +hi! link markdownCode ThemeYellow +hi! link markdownCodeBlock ThemeYellow +hi! link markdownCodeDelimiter ThemeYellow + +hi! link markdownBlockquote ThemeGrey +hi! link markdownListMarker ThemeBlue +hi! link markdownOrderedListMarker ThemeBlue +hi! link markdownRule ThemeGrey +hi! link markdownHeadingRule ThemeGrey + +hi! link markdownUrlDelimiter ThemeFg3 +hi! link markdownLinkDelimiter ThemeFg3 +hi! link markdownLinkTextDelimiter ThemeFg3 +hi! link markdownHeadingDelimiter ThemeOrange +hi! link markdownUrlTitleDelimiter ThemeGreen + +hi! link markdownLink ThemeGreen +hi! link markdownWikiLink ThemeViolet +hi! link markdownUrl ThemeOrange +hi! link markdownInlineUrl ThemeOrange + +hi! link markdownLinkText ThemeViolet +hi! link markdownIdDeclaration markdownLinkText + +"call s:HL('markdownItalic', s:fg3, s:none, s:italic) +"call s:HL('markdownLinkText', s:gray, s:none, s:underline) + + +" Remove functions +delf hi + +" Remove color variables +unlet s:gui00 s:gui01 s:gui02 s:gui03 s:gui04 s:gui05 s:gui06 s:gui07 s:gui08 s:gui09 s:gui0A s:gui0B s:gui0C s:gui0D s:gui0E s:gui0F s:guibg +unlet s:cterm00 s:cterm01 s:cterm02 s:cterm03 s:cterm04 s:cterm05 s:cterm06 s:cterm07 s:cterm08 s:cterm09 s:cterm0A s:cterm0B s:cterm0C s:cterm0D s:cterm0E s:cterm0F s:ctermbg diff --git a/apps/nvim/soft-tundra-monobiome-light.vim b/apps/nvim/soft-tundra-monobiome-light.vim new file mode 100644 index 0000000..a4bbf69 --- /dev/null +++ b/apps/nvim/soft-tundra-monobiome-light.vim @@ -0,0 +1,882 @@ +" vi:syntax=vim +" +" Top-level remarks: +" +" - `hi` sets highlight colors for syntax groups, allowing one to specify fg and bg colors +" for GUI and terminal Vim. +" - `link` allows for linking one syntax group to another, reusing the same color +" settings. Language-specific groups can then point to one of the base color highlight +" groups, for example, without needing to repeat the raw color values. + +" GUI color definitions +let s:gui00 = "#b9bec5" +let g:base16_gui00 = "#b9bec5" +let s:gui01 = "#a9afb5" +let g:base16_gui01 = "#a9afb5" +let s:gui02 = "#999fa5" +let g:base16_gui02 = "#999fa5" +let s:gui03 = "#8a9096" +let g:base16_gui03 = "#8a9096" +let s:gui04 = "#2a2e33" +let g:base16_gui04 = "#2a2e33" +let s:gui05 = "#1e2227" +let g:base16_gui05 = "#1e2227" +let s:gui06 = "#12161b" +let g:base16_gui06 = "#12161b" +let s:gui07 = "#080c10" +let g:base16_gui07 = "#080c10" +let s:gui08 = "#9d1912" +let g:base16_gui08 = "#9d1912" +let s:gui09 = "#7c4706" +let g:base16_gui09 = "#7c4706" +let s:gui0A = "#5b572e" +let g:base16_gui0A = "#5b572e" +let s:gui0B = "#2e6337" +let g:base16_gui0B = "#2e6337" +let s:gui0C = "#2e6337" +let g:base16_gui0C = "#2e6337" +let s:gui0D = "#2d5299" +let g:base16_gui0D = "#2d5299" +let s:gui0E = "#2d5299" +let g:base16_gui0E = "#2d5299" +let s:gui0F = "#9d1912" +let g:base16_gui0F = "#9d1912" + +let s:grey = "#51565b" + +" Terminal color definitions +let s:cterm00 = "00" +let g:base16_cterm00 = "00" +let s:cterm03 = "08" +let g:base16_cterm03 = "08" +let s:cterm05 = "07" +let g:base16_cterm05 = "07" +let s:cterm07 = "15" +let g:base16_cterm07 = "15" +let s:cterm08 = "01" +let g:base16_cterm08 = "01" +let s:cterm0A = "03" +let g:base16_cterm0A = "03" +let s:cterm0B = "02" +let g:base16_cterm0B = "02" +let s:cterm0C = "06" +let g:base16_cterm0C = "06" +let s:cterm0D = "04" +let g:base16_cterm0D = "04" +let s:cterm0E = "05" +let g:base16_cterm0E = "05" + +let s:cterm01 = "10" +let g:base16_cterm01 = "10" +let s:cterm02 = "11" +let g:base16_cterm02 = "11" +let s:cterm04 = "12" +let g:base16_cterm04 = "12" +let s:cterm06 = "13" +let g:base16_cterm06 = "13" +let s:cterm09 = "09" +let g:base16_cterm09 = "09" +let s:cterm0F = "14" +let g:base16_cterm0F = "14" + +" Neovim terminal colours +if has("nvim") + let g:terminal_color_0 = "#b9bec5" + let g:terminal_color_1 = "#9d1912" + let g:terminal_color_2 = "#2e6337" + let g:terminal_color_3 = "#5b572e" + let g:terminal_color_4 = "#2d5299" + let g:terminal_color_5 = "#2d5299" + let g:terminal_color_6 = "#2e6337" + let g:terminal_color_7 = "#1e2227" + let g:terminal_color_8 = "#8a9096" + let g:terminal_color_9 = "#9d1912" + let g:terminal_color_10 = "#2e6337" + let g:terminal_color_11 = "#5b572e" + let g:terminal_color_12 = "#2d5299" + let g:terminal_color_13 = "#2d5299" + let g:terminal_color_14 = "#2e6337" + let g:terminal_color_15 = "#080c10" + let g:terminal_color_background = g:terminal_color_0 + let g:terminal_color_foreground = g:terminal_color_5 + + if &background == "light" + let g:terminal_color_background = g:terminal_color_7 + let g:terminal_color_foreground = g:terminal_color_2 + endif + +elseif has("terminal") + let g:terminal_ansi_colors = [ + \ "#b9bec5", + \ "#9d1912", + \ "#2e6337", + \ "#5b572e", + \ "#2d5299", + \ "#2d5299", + \ "#2e6337", + \ "#1e2227", + \ "#8a9096", + \ "#9d1912", + \ "#2e6337", + \ "#5b572e", + \ "#2d5299", + \ "#2d5299", + \ "#2e6337", + \ "#080c10", + \ ] +endif + +let s:guibg = s:gui00 +let s:ctermbg = s:cterm00 + +" Theme setup +hi clear +syntax reset +let g:colors_name = "active" + +" Highlighting function +" Optional variables are attributes and guisp +function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) + " For a given syntax group, sets the GUI and terminal foreground and backgrounds + " Optional parameters are interpreted as `attr` and `guisp`, the first of which appears + " to be a modifier for the group (e.g., bold, italic), and `guisp` appears to be + " 'special' colors used for underlines in the GUI. + let l:attr = get(a:, 1, "") + let l:guisp = get(a:, 2, "") + + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + + if a:guifg != "" + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=" . a:guifg + endif + endif + + if a:guibg != "" + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=" . a:guibg + endif + endif + + if a:ctermfg != "" + exec "hi " . a:group . " ctermfg=" . a:ctermfg + endif + + if a:ctermbg != "" + exec "hi " . a:group . " ctermbg=" . a:ctermbg + endif + + if l:attr != "" + exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr + endif + + if l:guisp != "" + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=" . l:guisp + endif + endif +endfunction + + +fun hi(group, guifg, guibg, ctermfg, ctermbg, attr, guisp) + call g:Base16hi(a:group, a:guifg, a:guibg, a:ctermfg, a:ctermbg, a:attr, a:guisp) +endfun + + +" color groups for interpretability +call hi("ThemeBg0", s:gui00, "", s:cterm00, "", "", "") +call hi("ThemeBg1", s:gui01, "", s:cterm01, "", "", "") +call hi("ThemeBg2", s:gui02, "", s:cterm02, "", "", "") +call hi("ThemeBg3", s:gui03, "", s:cterm03, "", "", "") +call hi("ThemeFg3", s:gui04, "", s:cterm04, "", "", "") +call hi("ThemeFg2", s:gui05, "", s:cterm05, "", "", "") +call hi("ThemeFg1", s:gui06, "", s:cterm06, "", "", "") +call hi("ThemeFg0", s:gui07, "", s:cterm07, "", "", "") +" +call hi("ThemeRed", s:gui08, "", s:cterm08, "", "", "") +call hi("ThemeOrange", s:gui09, "", s:cterm09, "", "", "") +call hi("ThemeYellow", s:gui0A, "", s:cterm0A, "", "", "") +call hi("ThemeGreen", s:gui0B, "", s:cterm0B, "", "", "") +call hi("ThemeCyan", s:gui0C, "", s:cterm0C, "", "", "") +call hi("ThemeBlue", s:gui0D, "", s:cterm0D, "", "", "") +call hi("ThemeViolet", s:gui0E, "", s:cterm0E, "", "", "") +call hi("ThemeMagenta", s:gui0F, "", s:cterm0F, "", "", "") + +call hi("ThemeRedBold", s:gui08, "", s:cterm08, "", "bold", "") +call hi("ThemeOrangeBold", s:gui09, "", s:cterm09, "", "bold", "") +call hi("ThemeYellowBold", s:gui0A, "", s:cterm0A, "", "bold", "") +call hi("ThemeGreenBold", s:gui0B, "", s:cterm0B, "", "bold", "") +call hi("ThemeCyanBold", s:gui0C, "", s:cterm0C, "", "bold", "") +call hi("ThemeBlueBold", s:gui0D, "", s:cterm0D, "", "bold", "") +call hi("ThemeVioletBold", s:gui0E, "", s:cterm0E, "", "bold", "") +call hi("ThemeMagentaBold", s:gui0F, "", s:cterm0F, "", "bold", "") + +call hi("ThemeRedItalic", s:gui08, "", s:cterm08, "", "italic", "") +call hi("ThemeOrangeItalic", s:gui09, "", s:cterm09, "", "italic", "") +call hi("ThemeYellowItalic", s:gui0A, "", s:cterm0A, "", "italic", "") +call hi("ThemeGreenItalic", s:gui0B, "", s:cterm0B, "", "italic", "") +call hi("ThemeCyanItalic", s:gui0C, "", s:cterm0C, "", "italic", "") +call hi("ThemeBlueItalic", s:gui0D, "", s:cterm0D, "", "italic", "") +call hi("ThemeVioletItalic", s:gui0E, "", s:cterm0E, "", "italic", "") +call hi("ThemeMagentaItalic", s:gui0F, "", s:cterm0F, "", "italic", "") + +call hi("ThemeGrey", s:grey, "", s:cterm03, "", "", "") +call hi("ThemeGreyItalic", s:grey, "", s:cterm03, "", "italic", "") + + +" Vim editor colors +call hi("Normal", s:gui05, s:guibg, s:cterm05, s:ctermbg, "", "") +call hi("Bold", "", "", "", "", "bold", "") +call hi("Debug", s:gui08, "", s:cterm08, "", "", "") +call hi("Directory", s:gui0D, "", s:cterm0D, "", "", "") +call hi("Error", s:guibg, s:gui08, s:ctermbg, s:cterm08, "", "") +call hi("ErrorMsg", s:gui08, s:guibg, s:cterm08, s:ctermbg, "", "") +call hi("Exception", s:gui08, "", s:cterm08, "", "", "") +call hi("FoldColumn", s:gui03, s:guibg, s:cterm03, s:ctermbg, "", "") +call hi("Folded", s:gui02, s:guibg, s:cterm02, s:ctermbg, "", "") +call hi("IncSearch", s:gui01, s:gui09, s:cterm01, s:cterm09, "none", "") +call hi("Italic", "", "", "", "", "italic", "") +call hi("Macro", s:gui0C, "", s:cterm0C, "", "", "") +call hi("MatchParen", "", s:gui03, "", s:cterm03, "", "") +call hi("ModeMsg", s:gui0B, "", s:cterm0B, "", "", "") +call hi("MoreMsg", s:gui0B, "", s:cterm0B, "", "", "") +call hi("Question", s:gui0D, "", s:cterm0D, "", "", "") +call hi("Search", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "", "") +call hi("Substitute", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "none", "") +call hi("SpecialKey", s:gui03, "", s:cterm03, "", "", "") +call hi("TooLong", s:gui08, "", s:cterm08, "", "", "") +call hi("Underlined", "", "", "", "", "underline", "fg") +call hi("Visual", "", s:gui02, "", s:cterm02, "", "") +call hi("VisualNOS", s:gui08, "", s:cterm08, "", "", "") +call hi("WarningMsg", s:gui08, "", s:cterm08, "", "", "") +call hi("WildMenu", s:guibg, s:gui06, s:ctermbg, s:cterm05, "", "") +call hi("Title", s:gui0D, "", s:cterm0D, "", "none", "") +call hi("Conceal", s:gui0D, s:guibg, s:cterm0D, s:ctermbg, "", "") +call hi("Cursor", s:gui05, s:guibg, "", "", "inverse", "") +call hi("NonText", s:gui03, "", s:cterm03, "", "", "") +call hi("Whitespace", s:gui03, "", s:cterm03, "", "", "") +call hi("LineNr", s:gui03, s:guibg, s:cterm03, s:ctermbg, "", "") +call hi("SignColumn", s:gui03, s:guibg, s:cterm03, s:ctermbg, "", "") +call hi("StatusLine", s:gui07, s:gui01, s:cterm07, s:cterm01, "none", "") +call hi("StatusLineNC", s:gui06, s:gui01, s:cterm05, s:cterm01, "none", "") +call hi("VertSplit", s:gui01, s:guibg, s:cterm01, s:ctermbg, "none", "") +call hi("ColorColumn", "", s:gui01, "", s:cterm01, "none", "") +call hi("CursorColumn", "", s:gui01, "", s:cterm01, "none", "") +call hi("CursorLine", "", s:gui01, "", s:cterm01, "none", "") +call hi("CursorLineNr", s:gui04, s:gui01, s:cterm04, s:cterm01, "bold", "") +call hi("QuickFixLine", "", s:gui01, "", s:cterm01, "none", "") +call hi("PMenu", s:gui06, s:gui01, s:cterm06, s:cterm01, "none", "") +call hi("PMenuSel", s:gui06, s:gui02, s:cterm06, s:cterm02, "", "") +call hi("PMenuSbar", "", s:gui03, "", s:cterm03, "", "") +call hi("PMenuThumb", "", s:gui04, "", s:cterm04, "", "") +call hi("TabLine", s:gui03, s:gui01, s:cterm03, s:cterm01, "none", "") +call hi("TabLineFill", s:gui03, s:gui01, s:cterm03, s:cterm01, "none", "") +call hi("TabLineSel", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "none", "") + +" Standard syntax +hi! link Boolean ThemeOrange +hi! link Character ThemeRed + +"call hi("Comment", s:gui03, "", s:cterm03, "", "italic", "") +hi! link Comment ThemeGreyItalic + +hi! link Conditional ThemeRed +hi! link Constant ThemeOrange +call hi("Define", s:gui0E, "", s:cterm0E, "", "none", "") +hi! link Delimiter ThemeFg1 + +if has("patch-8.0.1038") + call hi("Deprecated", "", "", "", "", "strikethrough", "") +endif + +hi! link Float ThemeOrange +hi! link Function ThemeBlue +call hi("Identifier", s:gui06, "", s:cterm05, "", "none", "") +hi! link Include ThemeBlue +hi! link Constant ThemeOrange +call hi("Keyword", s:gui0E, "", s:cterm0E, "", "none", "") +hi! link Label ThemeOrange +hi! link Number ThemeOrange +hi! link Operator ThemeYellow +hi! link PreProc ThemeOrange +hi! link Repeat ThemeViolet +hi! link Special ThemeYellow +hi! link SpecialChar ThemeMagenta +hi! link Statement ThemeRed +hi! link StorageClass ThemeOrange +hi! link String ThemeGreen +hi! link Structure ThemeOrange +hi! link Tag ThemeOrange + +call hi("Todo", s:gui08, s:guibg, s:cterm08, s:ctermbg, "italic", "") +call hi("Type", s:gui0A, "", s:cterm0A, "", "none", "") + +hi! link Typedef ThemeOrange + + +" Treesitter +if has("nvim-0.8.0") + call hi("@field", s:gui08, "", s:cterm08, "", "", "") + call hi("@property", s:gui08, "", s:cterm08, "", "", "") + call hi("@namespace", s:gui06, "", s:cterm05, "", "italic", "") + call hi("@variable.builtin", s:gui06, "", s:cterm05, "", "italic", "") + call hi("@text.reference", s:gui08, "", s:cterm08, "", "", "") + call hi("@text.uri", s:gui08, "", s:cterm08, "", "italic", "") + + " Annotations & Attributes + call hi("@annotation", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@attribute", s:gui0D, "", s:cterm0D, "", "", "") + + " Booleans, Characters & Comments + call hi("@boolean", s:gui09, "", s:cterm09, "", "", "") + call hi("@character", s:gui08, "", s:cterm08, "", "", "") + call hi("@character.special", s:gui0F, "", s:cterm0F, "", "", "") + call hi("@comment", s:gui03, "", s:cterm03, "", "", "") + + " Conditionals, Constants & Debugging + call hi("@keyword.conditional", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@constant", s:gui09, "", s:cterm09, "", "", "") + call hi("@constant.builtin", s:gui09, "", s:cterm09, "", "", "") + call hi("@constant.macro", s:gui08, "", s:cterm08, "", "", "") + call hi("@keyword.debug", s:gui08, "", s:cterm08, "", "", "") + + " Directives & Exceptions + call hi("@keyword.directive.define", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@keyword.exception", s:gui0E, "", s:cterm0E, "", "", "") + + " Floats & Functions + call hi("@number.float", s:gui09, "", s:cterm09, "", "", "") + call hi("@function", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@function.builtin", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@function.call", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@function.macro", s:gui08, "", s:cterm08, "", "", "") + + " Imports, Operators & Returns + call hi("@keyword.import", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@keyword.coroutine", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@keyword.operator", s:gui06, "", s:cterm05, "", "", "") + call hi("@keyword.return", s:gui0E, "", s:cterm0E, "", "", "") + + " Methods & Namespaces + call hi("@function.method", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@function.method.call", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@namespace.builtin", s:gui0E, "", s:cterm0E, "", "", "") + + " Numbers & Directives + call hi("@none", s:gui06, "", s:cterm05, "", "", "") + call hi("@number", s:gui09, "", s:cterm09, "", "", "") + call hi("@keyword.directive", s:gui0E, "", s:cterm0E, "", "", "") + + " Repeats, Storage & Strings + call hi("@keyword.repeat", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@keyword.storage", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@string", s:gui0B, "", s:cterm0B, "", "", "") + + " Tags & Markup + call hi("@markup.link.label", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.link.label.symbol", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@tag", s:gui08, "", s:cterm08, "", "", "") + call hi("@tag.attribute", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@tag.delimiter", s:gui0F, "", s:cterm0F, "", "", "") + + " More Markup + call hi("@markup", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.environment", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.environment.name", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.raw", s:gui09, "", s:cterm09, "", "", "") + call hi("@markup.math", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.strong", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.emphasis", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.strikethrough", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.underline", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.heading", s:gui0D, "", s:cterm0D, "", "", "") + + " Comments & Types + call hi("@comment.note", s:gui03, "", s:cterm03, "", "", "") + call hi("@comment.error", s:gui08, "", s:cterm08, "", "", "") + call hi("@comment.hint", s:gui0B, "", s:cterm0B, "", "", "") + call hi("@comment.info", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@comment.warning", s:gui09, "", s:cterm09, "", "", "") + call hi("@comment.todo", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.link.url", s:gui09, "", s:cterm09, "", "", "") + call hi("@type", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@type.definition", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@type.qualifier", s:gui0E, "", s:cterm0E, "", "", "") +endif + +" Standard highlights to be used by plugins +if has("patch-8.0.1038") + call hi("Deprecated", "", "", "", "", "strikethrough", "") +endif +call hi("SearchMatch", s:gui0C, "", s:cterm0C, "", "", "") + +call hi("GitAddSign", s:gui0B, "", s:cterm0B, "", "", "") +call hi("GitChangeSign", s:gui04, "", s:cterm04, "", "", "") +call hi("GitDeleteSign", s:gui08, "", s:cterm08, "", "", "") +call hi("GitChangeDeleteSign", s:gui04, "", s:cterm04, "", "", "") + +call hi("ErrorSign", s:gui08, "", s:cterm08, "", "", "") +call hi("WarningSign", s:gui09, "", s:cterm09, "", "", "") +call hi("InfoSign", s:gui0D, "", s:cterm0D, "", "", "") +call hi("HintSign", s:gui0C, "", s:cterm0C, "", "", "") +call hi("OkSign", s:gui0B, "", s:cterm0B, "", "", "") + +call hi("ErrorFloat", s:gui08, s:gui01, s:cterm08, s:cterm01, "", "") +call hi("WarningFloat", s:gui09, s:gui01, s:cterm09, s:cterm01, "", "") +call hi("InfoFloat", s:gui0D, s:gui01, s:cterm0D, s:cterm01, "", "") +call hi("HintFloat", s:gui0C, s:gui01, s:cterm0C, s:cterm01, "", "") +call hi("OkFloat", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "") + +call hi("ErrorHighlight", "", "", s:ctermbg, s:cterm08, "underline", s:gui08) +call hi("WarningHighlight", "", "", s:ctermbg, s:cterm09, "underline", s:gui09) +call hi("InfoHighlight", "", "", s:ctermbg, s:cterm0D, "underline", s:gui0D) +call hi("HintHighlight", "", "", s:ctermbg, s:cterm0C, "underline", s:gui0C) +call hi("OkHighlight", "", "", s:ctermbg, s:cterm0B, "underline", s:gui0B) + +call hi("SpellBad", "", "", s:ctermbg, s:cterm08, "undercurl", s:gui08) +call hi("SpellLocal", "", "", s:ctermbg, s:cterm0C, "undercurl", s:gui0C) +call hi("SpellCap", "", "", s:ctermbg, s:cterm0D, "undercurl", s:gui0D) +call hi("SpellRare", "", "", s:ctermbg, s:cterm0E, "undercurl", s:gui0E) + +call hi("ReferenceText", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "", "") +call hi("ReferenceRead", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "", "") +call hi("ReferenceWrite", s:gui01, s:gui08, s:cterm01, s:cterm08, "", "") + +" C +call hi("cOperator", s:gui0C, "", s:cterm0C, "", "", "") +call hi("cPreCondit", s:gui0E, "", s:cterm0E, "", "", "") + +" C# +call hi("csClass", s:gui0A, "", s:cterm0A, "", "", "") +call hi("csAttribute", s:gui0A, "", s:cterm0A, "", "", "") +call hi("csModifier", s:gui0E, "", s:cterm0E, "", "", "") +call hi("csType", s:gui08, "", s:cterm08, "", "", "") +call hi("csUnspecifiedStatement", s:gui0D, "", s:cterm0D, "", "", "") +call hi("csContextualStatement", s:gui0E, "", s:cterm0E, "", "", "") +call hi("csNewDecleration", s:gui08, "", s:cterm08, "", "", "") + +" Clap +hi! link ClapInput ColorColumn +hi! link ClapSpinner ColorColumn +hi! link ClapDisplay Default +hi! link ClapPreview ColorColumn +hi! link ClapCurrentSelection CursorLine +hi! link ClapNoMatchesFound ErrorFloat + +" Coc +hi! link CocErrorSign ErrorSign +hi! link CocWarningSign WarningSign +hi! link CocInfoSign InfoSign +hi! link CocHintSign HintSign + +hi! link CocErrorFloat ErrorFloat +hi! link CocWarningFloat WarningFloat +hi! link CocInfoFloat InfoFloat +hi! link CocHintFloat HintFloat + +hi! link CocErrorHighlight ErrorHighlight +hi! link CocWarningHighlight WarningHighlight +hi! link CocInfoHighlight InfoHighlight +hi! link CocHintHighlight HintHighlight + +hi! link CocSem_angle Keyword +hi! link CocSem_annotation Keyword +hi! link CocSem_attribute Type +hi! link CocSem_bitwise Keyword +hi! link CocSem_boolean Boolean +hi! link CocSem_brace Normal +hi! link CocSem_bracket Normal +hi! link CocSem_builtinAttribute Type +hi! link CocSem_builtinType Type +hi! link CocSem_character String +hi! link CocSem_class Structure +hi! link CocSem_colon Normal +hi! link CocSem_comma Normal +hi! link CocSem_comment Comment +hi! link CocSem_comparison Keyword +hi! link CocSem_concept Keyword +hi! link CocSem_constParameter Identifier +hi! link CocSem_dependent Keyword +hi! link CocSem_dot Keyword +hi! link CocSem_enum Structure +hi! link CocSem_enumMember Constant +hi! link CocSem_escapeSequence Type +hi! link CocSem_event Identifier +hi! link CocSem_formatSpecifier Type +hi! link CocSem_function Function +hi! link CocSem_interface Type +hi! link CocSem_keyword Keyword +hi! link CocSem_label Keyword +hi! link CocSem_logical Keyword +hi! link CocSem_macro Macro +hi! link CocSem_method Function +hi! link CocSem_modifier Keyword +hi! link CocSem_namespace Identifier +hi! link CocSem_number Number +hi! link CocSem_operator Operator +hi! link CocSem_parameter Identifier +hi! link CocSem_parenthesis Normal +hi! link CocSem_property Identifier +hi! link CocSem_punctuation Keyword +hi! link CocSem_regexp Type +hi! link CocSem_selfKeyword Constant +hi! link CocSem_semicolon Normal +hi! link CocSem_string String +hi! link CocSem_struct Structure +hi! link CocSem_type Type +hi! link CocSem_typeAlias Type +hi! link CocSem_typeParameter Type +hi! link CocSem_unknown Normal +hi! link CocSem_variable Identifier + +call hi("CocHighlightRead", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "") +call hi("CocHighlightText", s:gui0A, s:gui01, s:cterm0A, s:cterm01, "", "") +call hi("CocHighlightWrite", s:gui08, s:gui01, s:cterm08, s:cterm01, "", "") +call hi("CocListMode", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "bold", "") +call hi("CocListPath", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "", "") +call hi("CocSessionsName", s:gui06, "", s:cterm05, "", "", "") + +" CSS +hi! link cssBraces ThemeBlue +hi! link cssFunctionName ThemeYellow +hi! link cssIdentifier ThemeOrange +hi! link cssClassName ThemeGreen +hi! link cssColor ThemeBlue +hi! link cssSelectorOp ThemeBlue +hi! link cssSelectorOp2 ThemeBlue +hi! link cssImportant ThemeGreen +hi! link cssVendor ThemeFg1 + +hi! link cssTextProp ThemeCyan +hi! link cssAnimationProp ThemeCyan +hi! link cssUIProp ThemeYellow +hi! link cssTransformProp ThemeCyan +hi! link cssTransitionProp ThemeCyan +hi! link cssPrintProp ThemeCyan +hi! link cssPositioningProp ThemeYellow +hi! link cssBoxProp ThemeCyan +hi! link cssFontDescriptorProp ThemeCyan +hi! link cssFlexibleBoxProp ThemeCyan +hi! link cssBorderOutlineProp ThemeCyan +hi! link cssBackgroundProp ThemeCyan +hi! link cssMarginProp ThemeCyan +hi! link cssListProp ThemeCyan +hi! link cssTableProp ThemeCyan +hi! link cssFontProp ThemeCyan +hi! link cssPaddingProp ThemeCyan +hi! link cssDimensionProp ThemeCyan +hi! link cssRenderProp ThemeCyan +hi! link cssColorProp ThemeCyan +hi! link cssGeneratedContentProp ThemeCyan + + +" CMP +hi! link CmpItemAbbrDeprecated Deprecated +hi! link CmpItemAbbrMatch SearchMatch +hi! link CmpItemAbbrMatchFuzzy SearchMatch +hi! link CmpItemKindClass Type +hi! link CmpItemKindColor Keyword +hi! link CmpItemKindConstant Constant +hi! link CmpItemKindConstructor Special +hi! link CmpItemKindEnum Type +hi! link CmpItemKindEnumMember Constant +hi! link CmpItemKindEvent Identifier +hi! link CmpItemKindField Character +hi! link CmpItemKindFile Directory +hi! link CmpItemKindFolder Directory +hi! link CmpItemKindFunction Function +hi! link CmpItemKindInterface Type +hi! link CmpItemKindKeyword Keyword +hi! link CmpItemKindMethod Function +hi! link CmpItemKindModule Namespace +hi! link CmpItemKindOperator Operator +hi! link CmpItemKindProperty Identifier +hi! link CmpItemKindReference Character +hi! link CmpItemKindSnippet String +hi! link CmpItemKindStruct Type +hi! link CmpItemKindText Text +hi! link CmpItemKindUnit Namespace +hi! link CmpItemKindValue Comment +hi! link CmpItemKindVariable Identifier + +if has("nvim-0.8.0") + hi! link CmpItemKindField @field + hi! link CmpItemKindProperty @property +endif + +" Diff +call hi("DiffAdd", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "") +call hi("DiffChange", s:gui06, s:gui01, s:cterm05, s:cterm01, "", "") +call hi("DiffDelete", s:gui02, s:guibg, s:cterm02, s:ctermbg, "", "") +call hi("DiffText", s:gui0D, s:gui01, s:cterm0D, s:cterm01, "", "") +call hi("DiffAdded", s:gui0B, s:guibg, s:cterm0B, s:ctermbg, "", "") +call hi("DiffFile", s:gui08, s:guibg, s:cterm08, s:ctermbg, "", "") +call hi("DiffNewFile", s:gui0B, s:guibg, s:cterm0B, s:ctermbg, "", "") +call hi("DiffLine", s:gui0D, s:guibg, s:cterm0D, s:ctermbg, "", "") +call hi("DiffRemoved", s:gui08, s:guibg, s:cterm08, s:ctermbg, "", "") + +" Git +call hi("gitcommitOverflow", s:gui08, "", s:cterm08, "", "", "") +call hi("gitcommitSummary", s:gui0B, "", s:cterm0B, "", "", "") +call hi("gitcommitComment", s:gui03, "", s:cterm03, "", "", "") +call hi("gitcommitUntracked", s:gui03, "", s:cterm03, "", "", "") +call hi("gitcommitDiscarded", s:gui03, "", s:cterm03, "", "", "") +call hi("gitcommitSelected", s:gui03, "", s:cterm03, "", "", "") +call hi("gitcommitHeader", s:gui0E, "", s:cterm0E, "", "", "") +call hi("gitcommitSelectedType", s:gui0D, "", s:cterm0D, "", "", "") +call hi("gitcommitUnmergedType", s:gui0D, "", s:cterm0D, "", "", "") +call hi("gitcommitDiscardedType", s:gui0D, "", s:cterm0D, "", "", "") +call hi("gitcommitBranch", s:gui09, "", s:cterm09, "", "bold", "") +call hi("gitcommitUntrackedFile", s:gui0A, "", s:cterm0A, "", "", "") +call hi("gitcommitUnmergedFile", s:gui08, "", s:cterm08, "", "bold", "") +call hi("gitcommitDiscardedFile", s:gui08, "", s:cterm08, "", "bold", "") +call hi("gitcommitSelectedFile", s:gui0B, "", s:cterm0B, "", "bold", "") + +" GitGutter +hi! link GitGutterAdd GitAddSign +hi! link GitGutterChange GitChangeSign +hi! link GitGutterDelete GitDeleteSign +hi! link GitGutterChangeDelete GitChangeDeleteSign + +" indent-blankline (nvim) +if has("nvim") + call hi("@ibl.indent.char.1",s:gui01, "", s:cterm01, "", "", "") +endif + +" HTML +call hi("htmlBold", s:gui07, "", s:cterm0A, "", "bold", "") +call hi("htmlItalic", s:gui06, "", s:cterm0E, "", "italic", "") +call hi("htmlEndTag", s:gui06, "", s:cterm05, "", "", "") +call hi("htmlTag", s:gui06, "", s:cterm05, "", "", "") + +" JavaScript +call hi("javaScript", s:gui06, "", s:cterm05, "", "", "") +call hi("javaScriptBraces", s:gui06, "", s:cterm05, "", "", "") +call hi("javaScriptNumber", s:gui09, "", s:cterm09, "", "", "") +" pangloss/vim-javascript +call hi("jsOperator", s:gui0D, "", s:cterm0D, "", "", "") +call hi("jsStatement", s:gui0E, "", s:cterm0E, "", "", "") +call hi("jsReturn", s:gui0E, "", s:cterm0E, "", "", "") +call hi("jsThis", s:gui08, "", s:cterm08, "", "", "") +call hi("jsClassDefinition", s:gui0A, "", s:cterm0A, "", "", "") +call hi("jsFunction", s:gui0E, "", s:cterm0E, "", "", "") +call hi("jsFuncName", s:gui0D, "", s:cterm0D, "", "", "") +call hi("jsFuncCall", s:gui0D, "", s:cterm0D, "", "", "") +call hi("jsClassFuncName", s:gui0D, "", s:cterm0D, "", "", "") +call hi("jsClassMethodType", s:gui0E, "", s:cterm0E, "", "", "") +call hi("jsRegexpString", s:gui0C, "", s:cterm0C, "", "", "") +call hi("jsGlobalObjects", s:gui0A, "", s:cterm0A, "", "", "") +call hi("jsGlobalNodeObjects", s:gui0A, "", s:cterm0A, "", "", "") +call hi("jsExceptions", s:gui0A, "", s:cterm0A, "", "", "") +call hi("jsBuiltins", s:gui0A, "", s:cterm0A, "", "", "") + +" Mail +call hi("mailQuoted1", s:gui0A, "", s:cterm0A, "", "", "") +call hi("mailQuoted2", s:gui0B, "", s:cterm0B, "", "", "") +call hi("mailQuoted3", s:gui0E, "", s:cterm0E, "", "", "") +call hi("mailQuoted4", s:gui0C, "", s:cterm0C, "", "", "") +call hi("mailQuoted5", s:gui0D, "", s:cterm0D, "", "", "") +call hi("mailQuoted6", s:gui0A, "", s:cterm0A, "", "", "") +call hi("mailURL", s:gui0D, "", s:cterm0D, "", "", "") +call hi("mailEmail", s:gui0D, "", s:cterm0D, "", "", "") + +" Markdown +call hi("markdownCode", s:gui0B, "", s:cterm0B, "", "", "") +call hi("markdownError", s:gui06, s:guibg, s:cterm05, s:ctermbg, "", "") +call hi("markdownCodeBlock", s:gui0B, "", s:cterm0B, "", "", "") +call hi("markdownHeadingDelimiter", s:gui0D, "", s:cterm0D, "", "", "") + +" Matchup +call hi("MatchWord", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "underline", "") + +" NERDTree +call hi("NERDTreeDirSlash", s:gui0D, "", s:cterm0D, "", "", "") +call hi("NERDTreeExecFile", s:gui06, "", s:cterm05, "", "", "") + +" Netrw +hi! link netrwDir ThemeCyan +hi! link netrwClassify ThemeCyan +hi! link netrwLink ThemeBg3 +hi! link netrwSymLink ThemeFg1 +hi! link netrwExe ThemeYellow +hi! link netrwComment ThemeBg3 +hi! link netrwList ThemeBlue +hi! link netrwHelpCmd ThemeCyan +hi! link netrwCmdSep ThemeFg3 +hi! link netrwVersion ThemeGreen + +" PHP +call hi("phpMemberSelector", s:gui06, "", s:cterm05, "", "", "") +call hi("phpComparison", s:gui06, "", s:cterm05, "", "", "") +call hi("phpParent", s:gui06, "", s:cterm05, "", "", "") +call hi("phpMethodsVar", s:gui0C, "", s:cterm0C, "", "", "") + +" Python +"call hi("pythonOperator", s:gui0E, "", s:cterm0E, "", "", "") +"call hi("pythonRepeat", s:gui0E, "", s:cterm0E, "", "", "") +"call hi("pythonInclude", s:gui0E, "", s:cterm0E, "", "", "") +"call hi("pythonStatement", s:gui0E, "", s:cterm0E, "", "", "") + +" hi! link pythonBuiltin ThemeCyan +" hi! link pythonBuiltinObj ThemeCyan +" hi! link pythonBuiltinFunc ThemeGreen +" hi! link pythonFunction Function +hi! link pythonDecorator ThemeYellow +hi! link pythonDecoratorName ThemeYellow +" hi! link pythonTripleQuotes ThemeGreenItalic +" hi! link pythonInclude ThemeBlue +" hi! link pythonImport ThemeBlue +" hi! link pythonRun ThemeBlue +" hi! link pythonCoding ThemeBlue +" hi! link pythonOperator ThemeRed +" hi! link pythonException ThemeRed +" hi! link pythonExceptions ThemeYellow +" hi! link pythonBoolean ThemeYellow +" hi! link pythonDot ThemeFg3 +" hi! link pythonConditional ThemeCyan +" hi! link pythonRepeat ThemeRed +" hi! link pythonDottedName ThemeGreen + + +" Ruby +call hi("rubyAttribute", s:gui0D, "", s:cterm0D, "", "", "") +call hi("rubyConstant", s:gui0A, "", s:cterm0A, "", "", "") +call hi("rubyInterpolationDelimiter", s:gui0F, "", s:cterm0F, "", "", "") +call hi("rubyRegexp", s:gui0C, "", s:cterm0C, "", "", "") +call hi("rubySymbol", s:gui0B, "", s:cterm0B, "", "", "") +call hi("rubyStringDelimiter", s:gui0B, "", s:cterm0B, "", "", "") + +" SASS +call hi("sassidChar", s:gui08, "", s:cterm08, "", "", "") +call hi("sassClassChar", s:gui09, "", s:cterm09, "", "", "") +call hi("sassInclude", s:gui0E, "", s:cterm0E, "", "", "") +call hi("sassMixing", s:gui0E, "", s:cterm0E, "", "", "") +call hi("sassMixinName", s:gui0D, "", s:cterm0D, "", "", "") + +" Signify +hi! link SignifySignAdd GitAddSign +hi! link SignifySignChange GitChangeSign +hi! link SignifySignDelete GitDeleteSign + +" Startify +call hi("StartifyBracket", s:gui03, "", s:cterm03, "", "", "") +call hi("StartifyFile", s:gui07, "", s:cterm07, "", "", "") +call hi("StartifyFooter", s:gui03, "", s:cterm03, "", "", "") +call hi("StartifyHeader", s:gui0B, "", s:cterm0B, "", "", "") +call hi("StartifyNumber", s:gui09, "", s:cterm09, "", "", "") +call hi("StartifyPath", s:gui03, "", s:cterm03, "", "", "") +call hi("StartifySection", s:gui0E, "", s:cterm0E, "", "", "") +call hi("StartifySelect", s:gui0C, "", s:cterm0C, "", "", "") +call hi("StartifySlash", s:gui03, "", s:cterm03, "", "", "") +call hi("StartifySpecial", s:gui03, "", s:cterm03, "", "", "") + +" LSP +if has("nvim") + hi! link DiagnosticError ErrorSign + hi! link DiagnosticWarn WarningSign + hi! link DiagnosticInfo InfoSign + hi! link DiagnosticHint HintSign + hi! link DiagnosticOk OkSign + + hi! link DiagnosticFloatingError ErrorFloat + hi! link DiagnosticFloatingWarn WarningFloat + hi! link DiagnosticFloatingInfo InfoFloat + hi! link DiagnosticFloatingHint HintFloat + hi! link DiagnosticFloatingOk OkFloat + + hi! link DiagnosticUnderlineError ErrorHighlight + hi! link DiagnosticUnderlineWarn WarningHighlight + hi! link DiagnosticUnderlineInfo InfoHighlight + hi! link DiagnosticUnderlineHint HintHighlight + hi! link DiagnosticUnderlineOk OkHighlight + + hi! link DiagnosticsVirtualTextError ErrorSign + hi! link DiagnosticsVirtualTextWarning WarningSign + hi! link DiagnosticsVirtualTextInfo InfoSign + hi! link DiagnosticsVirtualTextHint HintSign + hi! link DiagnosticsVirtualTextOk OkSign + + " Remove untill endif on next nvim release + hi! link LspDiagnosticsSignError ErrorSign + hi! link LspDiagnosticsSignWarning WarningSign + hi! link LspDiagnosticsSignInfo InfoSign + hi! link LspDiagnosticsSignHint HintSign + + hi! link LspDiagnosticsVirtualTextError ErrorSign + hi! link LspDiagnosticsVirtualTextWarning WarningSign + hi! link LspDiagnosticsVirtualTextInfo InfoSign + hi! link LspDiagnosticsVirtualTextHint HintSign + + hi! link LspDiagnosticsFloatingError ErrorFloat + hi! link LspDiagnosticsFloatingWarning WarningFloat + hi! link LspDiagnosticsFloatingInfo InfoFloat + hi! link LspDiagnosticsFloatingHint HintFloat + + hi! link LspDiagnosticsUnderlineError ErrorHighlight + hi! link LspDiagnosticsUnderlineWarning WarningHighlight + hi! link LspDiagnosticsUnderlineInfo InfoHighlight + hi! link LspDiagnosticsUnderlineHint HintHighlight + + hi! link LspReferenceText ReferenceText + hi! link LspReferenceRead ReferenceRead + hi! link LspReferenceWrite ReferenceWrite +endif + +" Java +call hi("javaOperator", s:gui0D, "", s:cterm0D, "", "", "") + +" JSON +hi! link jsonKeyword ThemeGreen +hi! link jsonQuote ThemeGreen +hi! link jsonBraces ThemeFg1 +hi! link jsonString ThemeFg1 + +" Markdown +hi! link markdownH1 ThemeRedBold +hi! link markdownH2 ThemeRed +hi! link markdownH3 ThemeRed +hi! link markdownH4 ThemeRed +hi! link markdownH5 ThemeRed +hi! link markdownH6 ThemeRed + +hi! link markdownCode ThemeYellow +hi! link markdownCodeBlock ThemeYellow +hi! link markdownCodeDelimiter ThemeYellow + +hi! link markdownBlockquote ThemeGrey +hi! link markdownListMarker ThemeBlue +hi! link markdownOrderedListMarker ThemeBlue +hi! link markdownRule ThemeGrey +hi! link markdownHeadingRule ThemeGrey + +hi! link markdownUrlDelimiter ThemeFg3 +hi! link markdownLinkDelimiter ThemeFg3 +hi! link markdownLinkTextDelimiter ThemeFg3 +hi! link markdownHeadingDelimiter ThemeOrange +hi! link markdownUrlTitleDelimiter ThemeGreen + +hi! link markdownLink ThemeGreen +hi! link markdownWikiLink ThemeViolet +hi! link markdownUrl ThemeOrange +hi! link markdownInlineUrl ThemeOrange + +hi! link markdownLinkText ThemeViolet +hi! link markdownIdDeclaration markdownLinkText + +"call s:HL('markdownItalic', s:fg3, s:none, s:italic) +"call s:HL('markdownLinkText', s:gray, s:none, s:underline) + + +" Remove functions +delf hi + +" Remove color variables +unlet s:gui00 s:gui01 s:gui02 s:gui03 s:gui04 s:gui05 s:gui06 s:gui07 s:gui08 s:gui09 s:gui0A s:gui0B s:gui0C s:gui0D s:gui0E s:gui0F s:guibg +unlet s:cterm00 s:cterm01 s:cterm02 s:cterm03 s:cterm04 s:cterm05 s:cterm06 s:cterm07 s:cterm08 s:cterm09 s:cterm0A s:cterm0B s:cterm0C s:cterm0D s:cterm0E s:cterm0F s:ctermbg diff --git a/apps/nvim/tundra-monobiome-dark.vim b/apps/nvim/tundra-monobiome-dark.vim new file mode 100644 index 0000000..bc9f79e --- /dev/null +++ b/apps/nvim/tundra-monobiome-dark.vim @@ -0,0 +1,882 @@ +" vi:syntax=vim +" +" Top-level remarks: +" +" - `hi` sets highlight colors for syntax groups, allowing one to specify fg and bg colors +" for GUI and terminal Vim. +" - `link` allows for linking one syntax group to another, reusing the same color +" settings. Language-specific groups can then point to one of the base color highlight +" groups, for example, without needing to repeat the raw color values. + +" GUI color definitions +let s:gui00 = "#1e2227" +let g:base16_gui00 = "#1e2227" +let s:gui01 = "#2a2e33" +let g:base16_gui01 = "#2a2e33" +let s:gui02 = "#363b40" +let g:base16_gui02 = "#363b40" +let s:gui03 = "#43484e" +let g:base16_gui03 = "#43484e" +let s:gui04 = "#a9afb5" +let g:base16_gui04 = "#a9afb5" +let s:gui05 = "#b9bec5" +let g:base16_gui05 = "#b9bec5" +let s:gui06 = "#c8ced5" +let g:base16_gui06 = "#c8ced5" +let s:gui07 = "#d9dfe5" +let g:base16_gui07 = "#d9dfe5" +let s:gui08 = "#e95949" +let g:base16_gui08 = "#e95949" +let s:gui09 = "#ca791c" +let g:base16_gui09 = "#ca791c" +let s:gui0A = "#989250" +let g:base16_gui0A = "#989250" +let s:gui0B = "#5da268" +let g:base16_gui0B = "#5da268" +let s:gui0C = "#5da268" +let g:base16_gui0C = "#5da268" +let s:gui0D = "#658ed9" +let g:base16_gui0D = "#658ed9" +let s:gui0E = "#658ed9" +let g:base16_gui0E = "#658ed9" +let s:gui0F = "#e95949" +let g:base16_gui0F = "#e95949" + +let s:grey = "#7b8187" + +" Terminal color definitions +let s:cterm00 = "00" +let g:base16_cterm00 = "00" +let s:cterm03 = "08" +let g:base16_cterm03 = "08" +let s:cterm05 = "07" +let g:base16_cterm05 = "07" +let s:cterm07 = "15" +let g:base16_cterm07 = "15" +let s:cterm08 = "01" +let g:base16_cterm08 = "01" +let s:cterm0A = "03" +let g:base16_cterm0A = "03" +let s:cterm0B = "02" +let g:base16_cterm0B = "02" +let s:cterm0C = "06" +let g:base16_cterm0C = "06" +let s:cterm0D = "04" +let g:base16_cterm0D = "04" +let s:cterm0E = "05" +let g:base16_cterm0E = "05" + +let s:cterm01 = "10" +let g:base16_cterm01 = "10" +let s:cterm02 = "11" +let g:base16_cterm02 = "11" +let s:cterm04 = "12" +let g:base16_cterm04 = "12" +let s:cterm06 = "13" +let g:base16_cterm06 = "13" +let s:cterm09 = "09" +let g:base16_cterm09 = "09" +let s:cterm0F = "14" +let g:base16_cterm0F = "14" + +" Neovim terminal colours +if has("nvim") + let g:terminal_color_0 = "#1e2227" + let g:terminal_color_1 = "#e95949" + let g:terminal_color_2 = "#5da268" + let g:terminal_color_3 = "#989250" + let g:terminal_color_4 = "#658ed9" + let g:terminal_color_5 = "#658ed9" + let g:terminal_color_6 = "#5da268" + let g:terminal_color_7 = "#b9bec5" + let g:terminal_color_8 = "#43484e" + let g:terminal_color_9 = "#e95949" + let g:terminal_color_10 = "#5da268" + let g:terminal_color_11 = "#989250" + let g:terminal_color_12 = "#658ed9" + let g:terminal_color_13 = "#658ed9" + let g:terminal_color_14 = "#5da268" + let g:terminal_color_15 = "#d9dfe5" + let g:terminal_color_background = g:terminal_color_0 + let g:terminal_color_foreground = g:terminal_color_5 + + if &background == "light" + let g:terminal_color_background = g:terminal_color_7 + let g:terminal_color_foreground = g:terminal_color_2 + endif + +elseif has("terminal") + let g:terminal_ansi_colors = [ + \ "#1e2227", + \ "#e95949", + \ "#5da268", + \ "#989250", + \ "#658ed9", + \ "#658ed9", + \ "#5da268", + \ "#b9bec5", + \ "#43484e", + \ "#e95949", + \ "#5da268", + \ "#989250", + \ "#658ed9", + \ "#658ed9", + \ "#5da268", + \ "#d9dfe5", + \ ] +endif + +let s:guibg = s:gui00 +let s:ctermbg = s:cterm00 + +" Theme setup +hi clear +syntax reset +let g:colors_name = "active" + +" Highlighting function +" Optional variables are attributes and guisp +function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) + " For a given syntax group, sets the GUI and terminal foreground and backgrounds + " Optional parameters are interpreted as `attr` and `guisp`, the first of which appears + " to be a modifier for the group (e.g., bold, italic), and `guisp` appears to be + " 'special' colors used for underlines in the GUI. + let l:attr = get(a:, 1, "") + let l:guisp = get(a:, 2, "") + + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + + if a:guifg != "" + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=" . a:guifg + endif + endif + + if a:guibg != "" + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=" . a:guibg + endif + endif + + if a:ctermfg != "" + exec "hi " . a:group . " ctermfg=" . a:ctermfg + endif + + if a:ctermbg != "" + exec "hi " . a:group . " ctermbg=" . a:ctermbg + endif + + if l:attr != "" + exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr + endif + + if l:guisp != "" + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=" . l:guisp + endif + endif +endfunction + + +fun hi(group, guifg, guibg, ctermfg, ctermbg, attr, guisp) + call g:Base16hi(a:group, a:guifg, a:guibg, a:ctermfg, a:ctermbg, a:attr, a:guisp) +endfun + + +" color groups for interpretability +call hi("ThemeBg0", s:gui00, "", s:cterm00, "", "", "") +call hi("ThemeBg1", s:gui01, "", s:cterm01, "", "", "") +call hi("ThemeBg2", s:gui02, "", s:cterm02, "", "", "") +call hi("ThemeBg3", s:gui03, "", s:cterm03, "", "", "") +call hi("ThemeFg3", s:gui04, "", s:cterm04, "", "", "") +call hi("ThemeFg2", s:gui05, "", s:cterm05, "", "", "") +call hi("ThemeFg1", s:gui06, "", s:cterm06, "", "", "") +call hi("ThemeFg0", s:gui07, "", s:cterm07, "", "", "") +" +call hi("ThemeRed", s:gui08, "", s:cterm08, "", "", "") +call hi("ThemeOrange", s:gui09, "", s:cterm09, "", "", "") +call hi("ThemeYellow", s:gui0A, "", s:cterm0A, "", "", "") +call hi("ThemeGreen", s:gui0B, "", s:cterm0B, "", "", "") +call hi("ThemeCyan", s:gui0C, "", s:cterm0C, "", "", "") +call hi("ThemeBlue", s:gui0D, "", s:cterm0D, "", "", "") +call hi("ThemeViolet", s:gui0E, "", s:cterm0E, "", "", "") +call hi("ThemeMagenta", s:gui0F, "", s:cterm0F, "", "", "") + +call hi("ThemeRedBold", s:gui08, "", s:cterm08, "", "bold", "") +call hi("ThemeOrangeBold", s:gui09, "", s:cterm09, "", "bold", "") +call hi("ThemeYellowBold", s:gui0A, "", s:cterm0A, "", "bold", "") +call hi("ThemeGreenBold", s:gui0B, "", s:cterm0B, "", "bold", "") +call hi("ThemeCyanBold", s:gui0C, "", s:cterm0C, "", "bold", "") +call hi("ThemeBlueBold", s:gui0D, "", s:cterm0D, "", "bold", "") +call hi("ThemeVioletBold", s:gui0E, "", s:cterm0E, "", "bold", "") +call hi("ThemeMagentaBold", s:gui0F, "", s:cterm0F, "", "bold", "") + +call hi("ThemeRedItalic", s:gui08, "", s:cterm08, "", "italic", "") +call hi("ThemeOrangeItalic", s:gui09, "", s:cterm09, "", "italic", "") +call hi("ThemeYellowItalic", s:gui0A, "", s:cterm0A, "", "italic", "") +call hi("ThemeGreenItalic", s:gui0B, "", s:cterm0B, "", "italic", "") +call hi("ThemeCyanItalic", s:gui0C, "", s:cterm0C, "", "italic", "") +call hi("ThemeBlueItalic", s:gui0D, "", s:cterm0D, "", "italic", "") +call hi("ThemeVioletItalic", s:gui0E, "", s:cterm0E, "", "italic", "") +call hi("ThemeMagentaItalic", s:gui0F, "", s:cterm0F, "", "italic", "") + +call hi("ThemeGrey", s:grey, "", s:cterm03, "", "", "") +call hi("ThemeGreyItalic", s:grey, "", s:cterm03, "", "italic", "") + + +" Vim editor colors +call hi("Normal", s:gui05, s:guibg, s:cterm05, s:ctermbg, "", "") +call hi("Bold", "", "", "", "", "bold", "") +call hi("Debug", s:gui08, "", s:cterm08, "", "", "") +call hi("Directory", s:gui0D, "", s:cterm0D, "", "", "") +call hi("Error", s:guibg, s:gui08, s:ctermbg, s:cterm08, "", "") +call hi("ErrorMsg", s:gui08, s:guibg, s:cterm08, s:ctermbg, "", "") +call hi("Exception", s:gui08, "", s:cterm08, "", "", "") +call hi("FoldColumn", s:gui03, s:guibg, s:cterm03, s:ctermbg, "", "") +call hi("Folded", s:gui02, s:guibg, s:cterm02, s:ctermbg, "", "") +call hi("IncSearch", s:gui01, s:gui09, s:cterm01, s:cterm09, "none", "") +call hi("Italic", "", "", "", "", "italic", "") +call hi("Macro", s:gui0C, "", s:cterm0C, "", "", "") +call hi("MatchParen", "", s:gui03, "", s:cterm03, "", "") +call hi("ModeMsg", s:gui0B, "", s:cterm0B, "", "", "") +call hi("MoreMsg", s:gui0B, "", s:cterm0B, "", "", "") +call hi("Question", s:gui0D, "", s:cterm0D, "", "", "") +call hi("Search", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "", "") +call hi("Substitute", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "none", "") +call hi("SpecialKey", s:gui03, "", s:cterm03, "", "", "") +call hi("TooLong", s:gui08, "", s:cterm08, "", "", "") +call hi("Underlined", "", "", "", "", "underline", "fg") +call hi("Visual", "", s:gui02, "", s:cterm02, "", "") +call hi("VisualNOS", s:gui08, "", s:cterm08, "", "", "") +call hi("WarningMsg", s:gui08, "", s:cterm08, "", "", "") +call hi("WildMenu", s:guibg, s:gui06, s:ctermbg, s:cterm05, "", "") +call hi("Title", s:gui0D, "", s:cterm0D, "", "none", "") +call hi("Conceal", s:gui0D, s:guibg, s:cterm0D, s:ctermbg, "", "") +call hi("Cursor", s:gui05, s:guibg, "", "", "inverse", "") +call hi("NonText", s:gui03, "", s:cterm03, "", "", "") +call hi("Whitespace", s:gui03, "", s:cterm03, "", "", "") +call hi("LineNr", s:gui03, s:guibg, s:cterm03, s:ctermbg, "", "") +call hi("SignColumn", s:gui03, s:guibg, s:cterm03, s:ctermbg, "", "") +call hi("StatusLine", s:gui07, s:gui01, s:cterm07, s:cterm01, "none", "") +call hi("StatusLineNC", s:gui06, s:gui01, s:cterm05, s:cterm01, "none", "") +call hi("VertSplit", s:gui01, s:guibg, s:cterm01, s:ctermbg, "none", "") +call hi("ColorColumn", "", s:gui01, "", s:cterm01, "none", "") +call hi("CursorColumn", "", s:gui01, "", s:cterm01, "none", "") +call hi("CursorLine", "", s:gui01, "", s:cterm01, "none", "") +call hi("CursorLineNr", s:gui04, s:gui01, s:cterm04, s:cterm01, "bold", "") +call hi("QuickFixLine", "", s:gui01, "", s:cterm01, "none", "") +call hi("PMenu", s:gui06, s:gui01, s:cterm06, s:cterm01, "none", "") +call hi("PMenuSel", s:gui06, s:gui02, s:cterm06, s:cterm02, "", "") +call hi("PMenuSbar", "", s:gui03, "", s:cterm03, "", "") +call hi("PMenuThumb", "", s:gui04, "", s:cterm04, "", "") +call hi("TabLine", s:gui03, s:gui01, s:cterm03, s:cterm01, "none", "") +call hi("TabLineFill", s:gui03, s:gui01, s:cterm03, s:cterm01, "none", "") +call hi("TabLineSel", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "none", "") + +" Standard syntax +hi! link Boolean ThemeOrange +hi! link Character ThemeRed + +"call hi("Comment", s:gui03, "", s:cterm03, "", "italic", "") +hi! link Comment ThemeGreyItalic + +hi! link Conditional ThemeRed +hi! link Constant ThemeOrange +call hi("Define", s:gui0E, "", s:cterm0E, "", "none", "") +hi! link Delimiter ThemeFg1 + +if has("patch-8.0.1038") + call hi("Deprecated", "", "", "", "", "strikethrough", "") +endif + +hi! link Float ThemeOrange +hi! link Function ThemeBlue +call hi("Identifier", s:gui06, "", s:cterm05, "", "none", "") +hi! link Include ThemeBlue +hi! link Constant ThemeOrange +call hi("Keyword", s:gui0E, "", s:cterm0E, "", "none", "") +hi! link Label ThemeOrange +hi! link Number ThemeOrange +hi! link Operator ThemeYellow +hi! link PreProc ThemeOrange +hi! link Repeat ThemeViolet +hi! link Special ThemeYellow +hi! link SpecialChar ThemeMagenta +hi! link Statement ThemeRed +hi! link StorageClass ThemeOrange +hi! link String ThemeGreen +hi! link Structure ThemeOrange +hi! link Tag ThemeOrange + +call hi("Todo", s:gui08, s:guibg, s:cterm08, s:ctermbg, "italic", "") +call hi("Type", s:gui0A, "", s:cterm0A, "", "none", "") + +hi! link Typedef ThemeOrange + + +" Treesitter +if has("nvim-0.8.0") + call hi("@field", s:gui08, "", s:cterm08, "", "", "") + call hi("@property", s:gui08, "", s:cterm08, "", "", "") + call hi("@namespace", s:gui06, "", s:cterm05, "", "italic", "") + call hi("@variable.builtin", s:gui06, "", s:cterm05, "", "italic", "") + call hi("@text.reference", s:gui08, "", s:cterm08, "", "", "") + call hi("@text.uri", s:gui08, "", s:cterm08, "", "italic", "") + + " Annotations & Attributes + call hi("@annotation", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@attribute", s:gui0D, "", s:cterm0D, "", "", "") + + " Booleans, Characters & Comments + call hi("@boolean", s:gui09, "", s:cterm09, "", "", "") + call hi("@character", s:gui08, "", s:cterm08, "", "", "") + call hi("@character.special", s:gui0F, "", s:cterm0F, "", "", "") + call hi("@comment", s:gui03, "", s:cterm03, "", "", "") + + " Conditionals, Constants & Debugging + call hi("@keyword.conditional", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@constant", s:gui09, "", s:cterm09, "", "", "") + call hi("@constant.builtin", s:gui09, "", s:cterm09, "", "", "") + call hi("@constant.macro", s:gui08, "", s:cterm08, "", "", "") + call hi("@keyword.debug", s:gui08, "", s:cterm08, "", "", "") + + " Directives & Exceptions + call hi("@keyword.directive.define", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@keyword.exception", s:gui0E, "", s:cterm0E, "", "", "") + + " Floats & Functions + call hi("@number.float", s:gui09, "", s:cterm09, "", "", "") + call hi("@function", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@function.builtin", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@function.call", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@function.macro", s:gui08, "", s:cterm08, "", "", "") + + " Imports, Operators & Returns + call hi("@keyword.import", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@keyword.coroutine", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@keyword.operator", s:gui06, "", s:cterm05, "", "", "") + call hi("@keyword.return", s:gui0E, "", s:cterm0E, "", "", "") + + " Methods & Namespaces + call hi("@function.method", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@function.method.call", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@namespace.builtin", s:gui0E, "", s:cterm0E, "", "", "") + + " Numbers & Directives + call hi("@none", s:gui06, "", s:cterm05, "", "", "") + call hi("@number", s:gui09, "", s:cterm09, "", "", "") + call hi("@keyword.directive", s:gui0E, "", s:cterm0E, "", "", "") + + " Repeats, Storage & Strings + call hi("@keyword.repeat", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@keyword.storage", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@string", s:gui0B, "", s:cterm0B, "", "", "") + + " Tags & Markup + call hi("@markup.link.label", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.link.label.symbol", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@tag", s:gui08, "", s:cterm08, "", "", "") + call hi("@tag.attribute", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@tag.delimiter", s:gui0F, "", s:cterm0F, "", "", "") + + " More Markup + call hi("@markup", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.environment", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.environment.name", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.raw", s:gui09, "", s:cterm09, "", "", "") + call hi("@markup.math", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.strong", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.emphasis", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.strikethrough", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.underline", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.heading", s:gui0D, "", s:cterm0D, "", "", "") + + " Comments & Types + call hi("@comment.note", s:gui03, "", s:cterm03, "", "", "") + call hi("@comment.error", s:gui08, "", s:cterm08, "", "", "") + call hi("@comment.hint", s:gui0B, "", s:cterm0B, "", "", "") + call hi("@comment.info", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@comment.warning", s:gui09, "", s:cterm09, "", "", "") + call hi("@comment.todo", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.link.url", s:gui09, "", s:cterm09, "", "", "") + call hi("@type", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@type.definition", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@type.qualifier", s:gui0E, "", s:cterm0E, "", "", "") +endif + +" Standard highlights to be used by plugins +if has("patch-8.0.1038") + call hi("Deprecated", "", "", "", "", "strikethrough", "") +endif +call hi("SearchMatch", s:gui0C, "", s:cterm0C, "", "", "") + +call hi("GitAddSign", s:gui0B, "", s:cterm0B, "", "", "") +call hi("GitChangeSign", s:gui04, "", s:cterm04, "", "", "") +call hi("GitDeleteSign", s:gui08, "", s:cterm08, "", "", "") +call hi("GitChangeDeleteSign", s:gui04, "", s:cterm04, "", "", "") + +call hi("ErrorSign", s:gui08, "", s:cterm08, "", "", "") +call hi("WarningSign", s:gui09, "", s:cterm09, "", "", "") +call hi("InfoSign", s:gui0D, "", s:cterm0D, "", "", "") +call hi("HintSign", s:gui0C, "", s:cterm0C, "", "", "") +call hi("OkSign", s:gui0B, "", s:cterm0B, "", "", "") + +call hi("ErrorFloat", s:gui08, s:gui01, s:cterm08, s:cterm01, "", "") +call hi("WarningFloat", s:gui09, s:gui01, s:cterm09, s:cterm01, "", "") +call hi("InfoFloat", s:gui0D, s:gui01, s:cterm0D, s:cterm01, "", "") +call hi("HintFloat", s:gui0C, s:gui01, s:cterm0C, s:cterm01, "", "") +call hi("OkFloat", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "") + +call hi("ErrorHighlight", "", "", s:ctermbg, s:cterm08, "underline", s:gui08) +call hi("WarningHighlight", "", "", s:ctermbg, s:cterm09, "underline", s:gui09) +call hi("InfoHighlight", "", "", s:ctermbg, s:cterm0D, "underline", s:gui0D) +call hi("HintHighlight", "", "", s:ctermbg, s:cterm0C, "underline", s:gui0C) +call hi("OkHighlight", "", "", s:ctermbg, s:cterm0B, "underline", s:gui0B) + +call hi("SpellBad", "", "", s:ctermbg, s:cterm08, "undercurl", s:gui08) +call hi("SpellLocal", "", "", s:ctermbg, s:cterm0C, "undercurl", s:gui0C) +call hi("SpellCap", "", "", s:ctermbg, s:cterm0D, "undercurl", s:gui0D) +call hi("SpellRare", "", "", s:ctermbg, s:cterm0E, "undercurl", s:gui0E) + +call hi("ReferenceText", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "", "") +call hi("ReferenceRead", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "", "") +call hi("ReferenceWrite", s:gui01, s:gui08, s:cterm01, s:cterm08, "", "") + +" C +call hi("cOperator", s:gui0C, "", s:cterm0C, "", "", "") +call hi("cPreCondit", s:gui0E, "", s:cterm0E, "", "", "") + +" C# +call hi("csClass", s:gui0A, "", s:cterm0A, "", "", "") +call hi("csAttribute", s:gui0A, "", s:cterm0A, "", "", "") +call hi("csModifier", s:gui0E, "", s:cterm0E, "", "", "") +call hi("csType", s:gui08, "", s:cterm08, "", "", "") +call hi("csUnspecifiedStatement", s:gui0D, "", s:cterm0D, "", "", "") +call hi("csContextualStatement", s:gui0E, "", s:cterm0E, "", "", "") +call hi("csNewDecleration", s:gui08, "", s:cterm08, "", "", "") + +" Clap +hi! link ClapInput ColorColumn +hi! link ClapSpinner ColorColumn +hi! link ClapDisplay Default +hi! link ClapPreview ColorColumn +hi! link ClapCurrentSelection CursorLine +hi! link ClapNoMatchesFound ErrorFloat + +" Coc +hi! link CocErrorSign ErrorSign +hi! link CocWarningSign WarningSign +hi! link CocInfoSign InfoSign +hi! link CocHintSign HintSign + +hi! link CocErrorFloat ErrorFloat +hi! link CocWarningFloat WarningFloat +hi! link CocInfoFloat InfoFloat +hi! link CocHintFloat HintFloat + +hi! link CocErrorHighlight ErrorHighlight +hi! link CocWarningHighlight WarningHighlight +hi! link CocInfoHighlight InfoHighlight +hi! link CocHintHighlight HintHighlight + +hi! link CocSem_angle Keyword +hi! link CocSem_annotation Keyword +hi! link CocSem_attribute Type +hi! link CocSem_bitwise Keyword +hi! link CocSem_boolean Boolean +hi! link CocSem_brace Normal +hi! link CocSem_bracket Normal +hi! link CocSem_builtinAttribute Type +hi! link CocSem_builtinType Type +hi! link CocSem_character String +hi! link CocSem_class Structure +hi! link CocSem_colon Normal +hi! link CocSem_comma Normal +hi! link CocSem_comment Comment +hi! link CocSem_comparison Keyword +hi! link CocSem_concept Keyword +hi! link CocSem_constParameter Identifier +hi! link CocSem_dependent Keyword +hi! link CocSem_dot Keyword +hi! link CocSem_enum Structure +hi! link CocSem_enumMember Constant +hi! link CocSem_escapeSequence Type +hi! link CocSem_event Identifier +hi! link CocSem_formatSpecifier Type +hi! link CocSem_function Function +hi! link CocSem_interface Type +hi! link CocSem_keyword Keyword +hi! link CocSem_label Keyword +hi! link CocSem_logical Keyword +hi! link CocSem_macro Macro +hi! link CocSem_method Function +hi! link CocSem_modifier Keyword +hi! link CocSem_namespace Identifier +hi! link CocSem_number Number +hi! link CocSem_operator Operator +hi! link CocSem_parameter Identifier +hi! link CocSem_parenthesis Normal +hi! link CocSem_property Identifier +hi! link CocSem_punctuation Keyword +hi! link CocSem_regexp Type +hi! link CocSem_selfKeyword Constant +hi! link CocSem_semicolon Normal +hi! link CocSem_string String +hi! link CocSem_struct Structure +hi! link CocSem_type Type +hi! link CocSem_typeAlias Type +hi! link CocSem_typeParameter Type +hi! link CocSem_unknown Normal +hi! link CocSem_variable Identifier + +call hi("CocHighlightRead", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "") +call hi("CocHighlightText", s:gui0A, s:gui01, s:cterm0A, s:cterm01, "", "") +call hi("CocHighlightWrite", s:gui08, s:gui01, s:cterm08, s:cterm01, "", "") +call hi("CocListMode", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "bold", "") +call hi("CocListPath", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "", "") +call hi("CocSessionsName", s:gui06, "", s:cterm05, "", "", "") + +" CSS +hi! link cssBraces ThemeBlue +hi! link cssFunctionName ThemeYellow +hi! link cssIdentifier ThemeOrange +hi! link cssClassName ThemeGreen +hi! link cssColor ThemeBlue +hi! link cssSelectorOp ThemeBlue +hi! link cssSelectorOp2 ThemeBlue +hi! link cssImportant ThemeGreen +hi! link cssVendor ThemeFg1 + +hi! link cssTextProp ThemeCyan +hi! link cssAnimationProp ThemeCyan +hi! link cssUIProp ThemeYellow +hi! link cssTransformProp ThemeCyan +hi! link cssTransitionProp ThemeCyan +hi! link cssPrintProp ThemeCyan +hi! link cssPositioningProp ThemeYellow +hi! link cssBoxProp ThemeCyan +hi! link cssFontDescriptorProp ThemeCyan +hi! link cssFlexibleBoxProp ThemeCyan +hi! link cssBorderOutlineProp ThemeCyan +hi! link cssBackgroundProp ThemeCyan +hi! link cssMarginProp ThemeCyan +hi! link cssListProp ThemeCyan +hi! link cssTableProp ThemeCyan +hi! link cssFontProp ThemeCyan +hi! link cssPaddingProp ThemeCyan +hi! link cssDimensionProp ThemeCyan +hi! link cssRenderProp ThemeCyan +hi! link cssColorProp ThemeCyan +hi! link cssGeneratedContentProp ThemeCyan + + +" CMP +hi! link CmpItemAbbrDeprecated Deprecated +hi! link CmpItemAbbrMatch SearchMatch +hi! link CmpItemAbbrMatchFuzzy SearchMatch +hi! link CmpItemKindClass Type +hi! link CmpItemKindColor Keyword +hi! link CmpItemKindConstant Constant +hi! link CmpItemKindConstructor Special +hi! link CmpItemKindEnum Type +hi! link CmpItemKindEnumMember Constant +hi! link CmpItemKindEvent Identifier +hi! link CmpItemKindField Character +hi! link CmpItemKindFile Directory +hi! link CmpItemKindFolder Directory +hi! link CmpItemKindFunction Function +hi! link CmpItemKindInterface Type +hi! link CmpItemKindKeyword Keyword +hi! link CmpItemKindMethod Function +hi! link CmpItemKindModule Namespace +hi! link CmpItemKindOperator Operator +hi! link CmpItemKindProperty Identifier +hi! link CmpItemKindReference Character +hi! link CmpItemKindSnippet String +hi! link CmpItemKindStruct Type +hi! link CmpItemKindText Text +hi! link CmpItemKindUnit Namespace +hi! link CmpItemKindValue Comment +hi! link CmpItemKindVariable Identifier + +if has("nvim-0.8.0") + hi! link CmpItemKindField @field + hi! link CmpItemKindProperty @property +endif + +" Diff +call hi("DiffAdd", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "") +call hi("DiffChange", s:gui06, s:gui01, s:cterm05, s:cterm01, "", "") +call hi("DiffDelete", s:gui02, s:guibg, s:cterm02, s:ctermbg, "", "") +call hi("DiffText", s:gui0D, s:gui01, s:cterm0D, s:cterm01, "", "") +call hi("DiffAdded", s:gui0B, s:guibg, s:cterm0B, s:ctermbg, "", "") +call hi("DiffFile", s:gui08, s:guibg, s:cterm08, s:ctermbg, "", "") +call hi("DiffNewFile", s:gui0B, s:guibg, s:cterm0B, s:ctermbg, "", "") +call hi("DiffLine", s:gui0D, s:guibg, s:cterm0D, s:ctermbg, "", "") +call hi("DiffRemoved", s:gui08, s:guibg, s:cterm08, s:ctermbg, "", "") + +" Git +call hi("gitcommitOverflow", s:gui08, "", s:cterm08, "", "", "") +call hi("gitcommitSummary", s:gui0B, "", s:cterm0B, "", "", "") +call hi("gitcommitComment", s:gui03, "", s:cterm03, "", "", "") +call hi("gitcommitUntracked", s:gui03, "", s:cterm03, "", "", "") +call hi("gitcommitDiscarded", s:gui03, "", s:cterm03, "", "", "") +call hi("gitcommitSelected", s:gui03, "", s:cterm03, "", "", "") +call hi("gitcommitHeader", s:gui0E, "", s:cterm0E, "", "", "") +call hi("gitcommitSelectedType", s:gui0D, "", s:cterm0D, "", "", "") +call hi("gitcommitUnmergedType", s:gui0D, "", s:cterm0D, "", "", "") +call hi("gitcommitDiscardedType", s:gui0D, "", s:cterm0D, "", "", "") +call hi("gitcommitBranch", s:gui09, "", s:cterm09, "", "bold", "") +call hi("gitcommitUntrackedFile", s:gui0A, "", s:cterm0A, "", "", "") +call hi("gitcommitUnmergedFile", s:gui08, "", s:cterm08, "", "bold", "") +call hi("gitcommitDiscardedFile", s:gui08, "", s:cterm08, "", "bold", "") +call hi("gitcommitSelectedFile", s:gui0B, "", s:cterm0B, "", "bold", "") + +" GitGutter +hi! link GitGutterAdd GitAddSign +hi! link GitGutterChange GitChangeSign +hi! link GitGutterDelete GitDeleteSign +hi! link GitGutterChangeDelete GitChangeDeleteSign + +" indent-blankline (nvim) +if has("nvim") + call hi("@ibl.indent.char.1",s:gui01, "", s:cterm01, "", "", "") +endif + +" HTML +call hi("htmlBold", s:gui07, "", s:cterm0A, "", "bold", "") +call hi("htmlItalic", s:gui06, "", s:cterm0E, "", "italic", "") +call hi("htmlEndTag", s:gui06, "", s:cterm05, "", "", "") +call hi("htmlTag", s:gui06, "", s:cterm05, "", "", "") + +" JavaScript +call hi("javaScript", s:gui06, "", s:cterm05, "", "", "") +call hi("javaScriptBraces", s:gui06, "", s:cterm05, "", "", "") +call hi("javaScriptNumber", s:gui09, "", s:cterm09, "", "", "") +" pangloss/vim-javascript +call hi("jsOperator", s:gui0D, "", s:cterm0D, "", "", "") +call hi("jsStatement", s:gui0E, "", s:cterm0E, "", "", "") +call hi("jsReturn", s:gui0E, "", s:cterm0E, "", "", "") +call hi("jsThis", s:gui08, "", s:cterm08, "", "", "") +call hi("jsClassDefinition", s:gui0A, "", s:cterm0A, "", "", "") +call hi("jsFunction", s:gui0E, "", s:cterm0E, "", "", "") +call hi("jsFuncName", s:gui0D, "", s:cterm0D, "", "", "") +call hi("jsFuncCall", s:gui0D, "", s:cterm0D, "", "", "") +call hi("jsClassFuncName", s:gui0D, "", s:cterm0D, "", "", "") +call hi("jsClassMethodType", s:gui0E, "", s:cterm0E, "", "", "") +call hi("jsRegexpString", s:gui0C, "", s:cterm0C, "", "", "") +call hi("jsGlobalObjects", s:gui0A, "", s:cterm0A, "", "", "") +call hi("jsGlobalNodeObjects", s:gui0A, "", s:cterm0A, "", "", "") +call hi("jsExceptions", s:gui0A, "", s:cterm0A, "", "", "") +call hi("jsBuiltins", s:gui0A, "", s:cterm0A, "", "", "") + +" Mail +call hi("mailQuoted1", s:gui0A, "", s:cterm0A, "", "", "") +call hi("mailQuoted2", s:gui0B, "", s:cterm0B, "", "", "") +call hi("mailQuoted3", s:gui0E, "", s:cterm0E, "", "", "") +call hi("mailQuoted4", s:gui0C, "", s:cterm0C, "", "", "") +call hi("mailQuoted5", s:gui0D, "", s:cterm0D, "", "", "") +call hi("mailQuoted6", s:gui0A, "", s:cterm0A, "", "", "") +call hi("mailURL", s:gui0D, "", s:cterm0D, "", "", "") +call hi("mailEmail", s:gui0D, "", s:cterm0D, "", "", "") + +" Markdown +call hi("markdownCode", s:gui0B, "", s:cterm0B, "", "", "") +call hi("markdownError", s:gui06, s:guibg, s:cterm05, s:ctermbg, "", "") +call hi("markdownCodeBlock", s:gui0B, "", s:cterm0B, "", "", "") +call hi("markdownHeadingDelimiter", s:gui0D, "", s:cterm0D, "", "", "") + +" Matchup +call hi("MatchWord", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "underline", "") + +" NERDTree +call hi("NERDTreeDirSlash", s:gui0D, "", s:cterm0D, "", "", "") +call hi("NERDTreeExecFile", s:gui06, "", s:cterm05, "", "", "") + +" Netrw +hi! link netrwDir ThemeCyan +hi! link netrwClassify ThemeCyan +hi! link netrwLink ThemeBg3 +hi! link netrwSymLink ThemeFg1 +hi! link netrwExe ThemeYellow +hi! link netrwComment ThemeBg3 +hi! link netrwList ThemeBlue +hi! link netrwHelpCmd ThemeCyan +hi! link netrwCmdSep ThemeFg3 +hi! link netrwVersion ThemeGreen + +" PHP +call hi("phpMemberSelector", s:gui06, "", s:cterm05, "", "", "") +call hi("phpComparison", s:gui06, "", s:cterm05, "", "", "") +call hi("phpParent", s:gui06, "", s:cterm05, "", "", "") +call hi("phpMethodsVar", s:gui0C, "", s:cterm0C, "", "", "") + +" Python +"call hi("pythonOperator", s:gui0E, "", s:cterm0E, "", "", "") +"call hi("pythonRepeat", s:gui0E, "", s:cterm0E, "", "", "") +"call hi("pythonInclude", s:gui0E, "", s:cterm0E, "", "", "") +"call hi("pythonStatement", s:gui0E, "", s:cterm0E, "", "", "") + +" hi! link pythonBuiltin ThemeCyan +" hi! link pythonBuiltinObj ThemeCyan +" hi! link pythonBuiltinFunc ThemeGreen +" hi! link pythonFunction Function +hi! link pythonDecorator ThemeYellow +hi! link pythonDecoratorName ThemeYellow +" hi! link pythonTripleQuotes ThemeGreenItalic +" hi! link pythonInclude ThemeBlue +" hi! link pythonImport ThemeBlue +" hi! link pythonRun ThemeBlue +" hi! link pythonCoding ThemeBlue +" hi! link pythonOperator ThemeRed +" hi! link pythonException ThemeRed +" hi! link pythonExceptions ThemeYellow +" hi! link pythonBoolean ThemeYellow +" hi! link pythonDot ThemeFg3 +" hi! link pythonConditional ThemeCyan +" hi! link pythonRepeat ThemeRed +" hi! link pythonDottedName ThemeGreen + + +" Ruby +call hi("rubyAttribute", s:gui0D, "", s:cterm0D, "", "", "") +call hi("rubyConstant", s:gui0A, "", s:cterm0A, "", "", "") +call hi("rubyInterpolationDelimiter", s:gui0F, "", s:cterm0F, "", "", "") +call hi("rubyRegexp", s:gui0C, "", s:cterm0C, "", "", "") +call hi("rubySymbol", s:gui0B, "", s:cterm0B, "", "", "") +call hi("rubyStringDelimiter", s:gui0B, "", s:cterm0B, "", "", "") + +" SASS +call hi("sassidChar", s:gui08, "", s:cterm08, "", "", "") +call hi("sassClassChar", s:gui09, "", s:cterm09, "", "", "") +call hi("sassInclude", s:gui0E, "", s:cterm0E, "", "", "") +call hi("sassMixing", s:gui0E, "", s:cterm0E, "", "", "") +call hi("sassMixinName", s:gui0D, "", s:cterm0D, "", "", "") + +" Signify +hi! link SignifySignAdd GitAddSign +hi! link SignifySignChange GitChangeSign +hi! link SignifySignDelete GitDeleteSign + +" Startify +call hi("StartifyBracket", s:gui03, "", s:cterm03, "", "", "") +call hi("StartifyFile", s:gui07, "", s:cterm07, "", "", "") +call hi("StartifyFooter", s:gui03, "", s:cterm03, "", "", "") +call hi("StartifyHeader", s:gui0B, "", s:cterm0B, "", "", "") +call hi("StartifyNumber", s:gui09, "", s:cterm09, "", "", "") +call hi("StartifyPath", s:gui03, "", s:cterm03, "", "", "") +call hi("StartifySection", s:gui0E, "", s:cterm0E, "", "", "") +call hi("StartifySelect", s:gui0C, "", s:cterm0C, "", "", "") +call hi("StartifySlash", s:gui03, "", s:cterm03, "", "", "") +call hi("StartifySpecial", s:gui03, "", s:cterm03, "", "", "") + +" LSP +if has("nvim") + hi! link DiagnosticError ErrorSign + hi! link DiagnosticWarn WarningSign + hi! link DiagnosticInfo InfoSign + hi! link DiagnosticHint HintSign + hi! link DiagnosticOk OkSign + + hi! link DiagnosticFloatingError ErrorFloat + hi! link DiagnosticFloatingWarn WarningFloat + hi! link DiagnosticFloatingInfo InfoFloat + hi! link DiagnosticFloatingHint HintFloat + hi! link DiagnosticFloatingOk OkFloat + + hi! link DiagnosticUnderlineError ErrorHighlight + hi! link DiagnosticUnderlineWarn WarningHighlight + hi! link DiagnosticUnderlineInfo InfoHighlight + hi! link DiagnosticUnderlineHint HintHighlight + hi! link DiagnosticUnderlineOk OkHighlight + + hi! link DiagnosticsVirtualTextError ErrorSign + hi! link DiagnosticsVirtualTextWarning WarningSign + hi! link DiagnosticsVirtualTextInfo InfoSign + hi! link DiagnosticsVirtualTextHint HintSign + hi! link DiagnosticsVirtualTextOk OkSign + + " Remove untill endif on next nvim release + hi! link LspDiagnosticsSignError ErrorSign + hi! link LspDiagnosticsSignWarning WarningSign + hi! link LspDiagnosticsSignInfo InfoSign + hi! link LspDiagnosticsSignHint HintSign + + hi! link LspDiagnosticsVirtualTextError ErrorSign + hi! link LspDiagnosticsVirtualTextWarning WarningSign + hi! link LspDiagnosticsVirtualTextInfo InfoSign + hi! link LspDiagnosticsVirtualTextHint HintSign + + hi! link LspDiagnosticsFloatingError ErrorFloat + hi! link LspDiagnosticsFloatingWarning WarningFloat + hi! link LspDiagnosticsFloatingInfo InfoFloat + hi! link LspDiagnosticsFloatingHint HintFloat + + hi! link LspDiagnosticsUnderlineError ErrorHighlight + hi! link LspDiagnosticsUnderlineWarning WarningHighlight + hi! link LspDiagnosticsUnderlineInfo InfoHighlight + hi! link LspDiagnosticsUnderlineHint HintHighlight + + hi! link LspReferenceText ReferenceText + hi! link LspReferenceRead ReferenceRead + hi! link LspReferenceWrite ReferenceWrite +endif + +" Java +call hi("javaOperator", s:gui0D, "", s:cterm0D, "", "", "") + +" JSON +hi! link jsonKeyword ThemeGreen +hi! link jsonQuote ThemeGreen +hi! link jsonBraces ThemeFg1 +hi! link jsonString ThemeFg1 + +" Markdown +hi! link markdownH1 ThemeRedBold +hi! link markdownH2 ThemeRed +hi! link markdownH3 ThemeRed +hi! link markdownH4 ThemeRed +hi! link markdownH5 ThemeRed +hi! link markdownH6 ThemeRed + +hi! link markdownCode ThemeYellow +hi! link markdownCodeBlock ThemeYellow +hi! link markdownCodeDelimiter ThemeYellow + +hi! link markdownBlockquote ThemeGrey +hi! link markdownListMarker ThemeBlue +hi! link markdownOrderedListMarker ThemeBlue +hi! link markdownRule ThemeGrey +hi! link markdownHeadingRule ThemeGrey + +hi! link markdownUrlDelimiter ThemeFg3 +hi! link markdownLinkDelimiter ThemeFg3 +hi! link markdownLinkTextDelimiter ThemeFg3 +hi! link markdownHeadingDelimiter ThemeOrange +hi! link markdownUrlTitleDelimiter ThemeGreen + +hi! link markdownLink ThemeGreen +hi! link markdownWikiLink ThemeViolet +hi! link markdownUrl ThemeOrange +hi! link markdownInlineUrl ThemeOrange + +hi! link markdownLinkText ThemeViolet +hi! link markdownIdDeclaration markdownLinkText + +"call s:HL('markdownItalic', s:fg3, s:none, s:italic) +"call s:HL('markdownLinkText', s:gray, s:none, s:underline) + + +" Remove functions +delf hi + +" Remove color variables +unlet s:gui00 s:gui01 s:gui02 s:gui03 s:gui04 s:gui05 s:gui06 s:gui07 s:gui08 s:gui09 s:gui0A s:gui0B s:gui0C s:gui0D s:gui0E s:gui0F s:guibg +unlet s:cterm00 s:cterm01 s:cterm02 s:cterm03 s:cterm04 s:cterm05 s:cterm06 s:cterm07 s:cterm08 s:cterm09 s:cterm0A s:cterm0B s:cterm0C s:cterm0D s:cterm0E s:cterm0F s:ctermbg diff --git a/apps/nvim/tundra-monobiome-light.vim b/apps/nvim/tundra-monobiome-light.vim new file mode 100644 index 0000000..993c27d --- /dev/null +++ b/apps/nvim/tundra-monobiome-light.vim @@ -0,0 +1,882 @@ +" vi:syntax=vim +" +" Top-level remarks: +" +" - `hi` sets highlight colors for syntax groups, allowing one to specify fg and bg colors +" for GUI and terminal Vim. +" - `link` allows for linking one syntax group to another, reusing the same color +" settings. Language-specific groups can then point to one of the base color highlight +" groups, for example, without needing to repeat the raw color values. + +" GUI color definitions +let s:gui00 = "#c8ced5" +let g:base16_gui00 = "#c8ced5" +let s:gui01 = "#b9bec5" +let g:base16_gui01 = "#b9bec5" +let s:gui02 = "#a9afb5" +let g:base16_gui02 = "#a9afb5" +let s:gui03 = "#999fa5" +let g:base16_gui03 = "#999fa5" +let s:gui04 = "#363b40" +let g:base16_gui04 = "#363b40" +let s:gui05 = "#2a2e33" +let g:base16_gui05 = "#2a2e33" +let s:gui06 = "#1e2227" +let g:base16_gui06 = "#1e2227" +let s:gui07 = "#12161b" +let g:base16_gui07 = "#12161b" +let s:gui08 = "#b52119" +let g:base16_gui08 = "#b52119" +let s:gui09 = "#905201" +let g:base16_gui09 = "#905201" +let s:gui0A = "#6a6535" +let g:base16_gui0A = "#6a6535" +let s:gui0B = "#377242" +let g:base16_gui0B = "#377242" +let s:gui0C = "#377242" +let g:base16_gui0C = "#377242" +let s:gui0D = "#3860ac" +let g:base16_gui0D = "#3860ac" +let s:gui0E = "#3860ac" +let g:base16_gui0E = "#3860ac" +let s:gui0F = "#b52119" +let g:base16_gui0F = "#b52119" + +let s:grey = "#5f6469" + +" Terminal color definitions +let s:cterm00 = "00" +let g:base16_cterm00 = "00" +let s:cterm03 = "08" +let g:base16_cterm03 = "08" +let s:cterm05 = "07" +let g:base16_cterm05 = "07" +let s:cterm07 = "15" +let g:base16_cterm07 = "15" +let s:cterm08 = "01" +let g:base16_cterm08 = "01" +let s:cterm0A = "03" +let g:base16_cterm0A = "03" +let s:cterm0B = "02" +let g:base16_cterm0B = "02" +let s:cterm0C = "06" +let g:base16_cterm0C = "06" +let s:cterm0D = "04" +let g:base16_cterm0D = "04" +let s:cterm0E = "05" +let g:base16_cterm0E = "05" + +let s:cterm01 = "10" +let g:base16_cterm01 = "10" +let s:cterm02 = "11" +let g:base16_cterm02 = "11" +let s:cterm04 = "12" +let g:base16_cterm04 = "12" +let s:cterm06 = "13" +let g:base16_cterm06 = "13" +let s:cterm09 = "09" +let g:base16_cterm09 = "09" +let s:cterm0F = "14" +let g:base16_cterm0F = "14" + +" Neovim terminal colours +if has("nvim") + let g:terminal_color_0 = "#c8ced5" + let g:terminal_color_1 = "#b52119" + let g:terminal_color_2 = "#377242" + let g:terminal_color_3 = "#6a6535" + let g:terminal_color_4 = "#3860ac" + let g:terminal_color_5 = "#3860ac" + let g:terminal_color_6 = "#377242" + let g:terminal_color_7 = "#2a2e33" + let g:terminal_color_8 = "#999fa5" + let g:terminal_color_9 = "#b52119" + let g:terminal_color_10 = "#377242" + let g:terminal_color_11 = "#6a6535" + let g:terminal_color_12 = "#3860ac" + let g:terminal_color_13 = "#3860ac" + let g:terminal_color_14 = "#377242" + let g:terminal_color_15 = "#12161b" + let g:terminal_color_background = g:terminal_color_0 + let g:terminal_color_foreground = g:terminal_color_5 + + if &background == "light" + let g:terminal_color_background = g:terminal_color_7 + let g:terminal_color_foreground = g:terminal_color_2 + endif + +elseif has("terminal") + let g:terminal_ansi_colors = [ + \ "#c8ced5", + \ "#b52119", + \ "#377242", + \ "#6a6535", + \ "#3860ac", + \ "#3860ac", + \ "#377242", + \ "#2a2e33", + \ "#999fa5", + \ "#b52119", + \ "#377242", + \ "#6a6535", + \ "#3860ac", + \ "#3860ac", + \ "#377242", + \ "#12161b", + \ ] +endif + +let s:guibg = s:gui00 +let s:ctermbg = s:cterm00 + +" Theme setup +hi clear +syntax reset +let g:colors_name = "active" + +" Highlighting function +" Optional variables are attributes and guisp +function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...) + " For a given syntax group, sets the GUI and terminal foreground and backgrounds + " Optional parameters are interpreted as `attr` and `guisp`, the first of which appears + " to be a modifier for the group (e.g., bold, italic), and `guisp` appears to be + " 'special' colors used for underlines in the GUI. + let l:attr = get(a:, 1, "") + let l:guisp = get(a:, 2, "") + + " See :help highlight-guifg + let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"] + + if a:guifg != "" + if index(l:gui_special_names, a:guifg) >= 0 + exec "hi " . a:group . " guifg=" . a:guifg + else + exec "hi " . a:group . " guifg=" . a:guifg + endif + endif + + if a:guibg != "" + if index(l:gui_special_names, a:guibg) >= 0 + exec "hi " . a:group . " guibg=" . a:guibg + else + exec "hi " . a:group . " guibg=" . a:guibg + endif + endif + + if a:ctermfg != "" + exec "hi " . a:group . " ctermfg=" . a:ctermfg + endif + + if a:ctermbg != "" + exec "hi " . a:group . " ctermbg=" . a:ctermbg + endif + + if l:attr != "" + exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr + endif + + if l:guisp != "" + if index(l:gui_special_names, l:guisp) >= 0 + exec "hi " . a:group . " guisp=" . l:guisp + else + exec "hi " . a:group . " guisp=" . l:guisp + endif + endif +endfunction + + +fun hi(group, guifg, guibg, ctermfg, ctermbg, attr, guisp) + call g:Base16hi(a:group, a:guifg, a:guibg, a:ctermfg, a:ctermbg, a:attr, a:guisp) +endfun + + +" color groups for interpretability +call hi("ThemeBg0", s:gui00, "", s:cterm00, "", "", "") +call hi("ThemeBg1", s:gui01, "", s:cterm01, "", "", "") +call hi("ThemeBg2", s:gui02, "", s:cterm02, "", "", "") +call hi("ThemeBg3", s:gui03, "", s:cterm03, "", "", "") +call hi("ThemeFg3", s:gui04, "", s:cterm04, "", "", "") +call hi("ThemeFg2", s:gui05, "", s:cterm05, "", "", "") +call hi("ThemeFg1", s:gui06, "", s:cterm06, "", "", "") +call hi("ThemeFg0", s:gui07, "", s:cterm07, "", "", "") +" +call hi("ThemeRed", s:gui08, "", s:cterm08, "", "", "") +call hi("ThemeOrange", s:gui09, "", s:cterm09, "", "", "") +call hi("ThemeYellow", s:gui0A, "", s:cterm0A, "", "", "") +call hi("ThemeGreen", s:gui0B, "", s:cterm0B, "", "", "") +call hi("ThemeCyan", s:gui0C, "", s:cterm0C, "", "", "") +call hi("ThemeBlue", s:gui0D, "", s:cterm0D, "", "", "") +call hi("ThemeViolet", s:gui0E, "", s:cterm0E, "", "", "") +call hi("ThemeMagenta", s:gui0F, "", s:cterm0F, "", "", "") + +call hi("ThemeRedBold", s:gui08, "", s:cterm08, "", "bold", "") +call hi("ThemeOrangeBold", s:gui09, "", s:cterm09, "", "bold", "") +call hi("ThemeYellowBold", s:gui0A, "", s:cterm0A, "", "bold", "") +call hi("ThemeGreenBold", s:gui0B, "", s:cterm0B, "", "bold", "") +call hi("ThemeCyanBold", s:gui0C, "", s:cterm0C, "", "bold", "") +call hi("ThemeBlueBold", s:gui0D, "", s:cterm0D, "", "bold", "") +call hi("ThemeVioletBold", s:gui0E, "", s:cterm0E, "", "bold", "") +call hi("ThemeMagentaBold", s:gui0F, "", s:cterm0F, "", "bold", "") + +call hi("ThemeRedItalic", s:gui08, "", s:cterm08, "", "italic", "") +call hi("ThemeOrangeItalic", s:gui09, "", s:cterm09, "", "italic", "") +call hi("ThemeYellowItalic", s:gui0A, "", s:cterm0A, "", "italic", "") +call hi("ThemeGreenItalic", s:gui0B, "", s:cterm0B, "", "italic", "") +call hi("ThemeCyanItalic", s:gui0C, "", s:cterm0C, "", "italic", "") +call hi("ThemeBlueItalic", s:gui0D, "", s:cterm0D, "", "italic", "") +call hi("ThemeVioletItalic", s:gui0E, "", s:cterm0E, "", "italic", "") +call hi("ThemeMagentaItalic", s:gui0F, "", s:cterm0F, "", "italic", "") + +call hi("ThemeGrey", s:grey, "", s:cterm03, "", "", "") +call hi("ThemeGreyItalic", s:grey, "", s:cterm03, "", "italic", "") + + +" Vim editor colors +call hi("Normal", s:gui05, s:guibg, s:cterm05, s:ctermbg, "", "") +call hi("Bold", "", "", "", "", "bold", "") +call hi("Debug", s:gui08, "", s:cterm08, "", "", "") +call hi("Directory", s:gui0D, "", s:cterm0D, "", "", "") +call hi("Error", s:guibg, s:gui08, s:ctermbg, s:cterm08, "", "") +call hi("ErrorMsg", s:gui08, s:guibg, s:cterm08, s:ctermbg, "", "") +call hi("Exception", s:gui08, "", s:cterm08, "", "", "") +call hi("FoldColumn", s:gui03, s:guibg, s:cterm03, s:ctermbg, "", "") +call hi("Folded", s:gui02, s:guibg, s:cterm02, s:ctermbg, "", "") +call hi("IncSearch", s:gui01, s:gui09, s:cterm01, s:cterm09, "none", "") +call hi("Italic", "", "", "", "", "italic", "") +call hi("Macro", s:gui0C, "", s:cterm0C, "", "", "") +call hi("MatchParen", "", s:gui03, "", s:cterm03, "", "") +call hi("ModeMsg", s:gui0B, "", s:cterm0B, "", "", "") +call hi("MoreMsg", s:gui0B, "", s:cterm0B, "", "", "") +call hi("Question", s:gui0D, "", s:cterm0D, "", "", "") +call hi("Search", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "", "") +call hi("Substitute", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "none", "") +call hi("SpecialKey", s:gui03, "", s:cterm03, "", "", "") +call hi("TooLong", s:gui08, "", s:cterm08, "", "", "") +call hi("Underlined", "", "", "", "", "underline", "fg") +call hi("Visual", "", s:gui02, "", s:cterm02, "", "") +call hi("VisualNOS", s:gui08, "", s:cterm08, "", "", "") +call hi("WarningMsg", s:gui08, "", s:cterm08, "", "", "") +call hi("WildMenu", s:guibg, s:gui06, s:ctermbg, s:cterm05, "", "") +call hi("Title", s:gui0D, "", s:cterm0D, "", "none", "") +call hi("Conceal", s:gui0D, s:guibg, s:cterm0D, s:ctermbg, "", "") +call hi("Cursor", s:gui05, s:guibg, "", "", "inverse", "") +call hi("NonText", s:gui03, "", s:cterm03, "", "", "") +call hi("Whitespace", s:gui03, "", s:cterm03, "", "", "") +call hi("LineNr", s:gui03, s:guibg, s:cterm03, s:ctermbg, "", "") +call hi("SignColumn", s:gui03, s:guibg, s:cterm03, s:ctermbg, "", "") +call hi("StatusLine", s:gui07, s:gui01, s:cterm07, s:cterm01, "none", "") +call hi("StatusLineNC", s:gui06, s:gui01, s:cterm05, s:cterm01, "none", "") +call hi("VertSplit", s:gui01, s:guibg, s:cterm01, s:ctermbg, "none", "") +call hi("ColorColumn", "", s:gui01, "", s:cterm01, "none", "") +call hi("CursorColumn", "", s:gui01, "", s:cterm01, "none", "") +call hi("CursorLine", "", s:gui01, "", s:cterm01, "none", "") +call hi("CursorLineNr", s:gui04, s:gui01, s:cterm04, s:cterm01, "bold", "") +call hi("QuickFixLine", "", s:gui01, "", s:cterm01, "none", "") +call hi("PMenu", s:gui06, s:gui01, s:cterm06, s:cterm01, "none", "") +call hi("PMenuSel", s:gui06, s:gui02, s:cterm06, s:cterm02, "", "") +call hi("PMenuSbar", "", s:gui03, "", s:cterm03, "", "") +call hi("PMenuThumb", "", s:gui04, "", s:cterm04, "", "") +call hi("TabLine", s:gui03, s:gui01, s:cterm03, s:cterm01, "none", "") +call hi("TabLineFill", s:gui03, s:gui01, s:cterm03, s:cterm01, "none", "") +call hi("TabLineSel", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "none", "") + +" Standard syntax +hi! link Boolean ThemeOrange +hi! link Character ThemeRed + +"call hi("Comment", s:gui03, "", s:cterm03, "", "italic", "") +hi! link Comment ThemeGreyItalic + +hi! link Conditional ThemeRed +hi! link Constant ThemeOrange +call hi("Define", s:gui0E, "", s:cterm0E, "", "none", "") +hi! link Delimiter ThemeFg1 + +if has("patch-8.0.1038") + call hi("Deprecated", "", "", "", "", "strikethrough", "") +endif + +hi! link Float ThemeOrange +hi! link Function ThemeBlue +call hi("Identifier", s:gui06, "", s:cterm05, "", "none", "") +hi! link Include ThemeBlue +hi! link Constant ThemeOrange +call hi("Keyword", s:gui0E, "", s:cterm0E, "", "none", "") +hi! link Label ThemeOrange +hi! link Number ThemeOrange +hi! link Operator ThemeYellow +hi! link PreProc ThemeOrange +hi! link Repeat ThemeViolet +hi! link Special ThemeYellow +hi! link SpecialChar ThemeMagenta +hi! link Statement ThemeRed +hi! link StorageClass ThemeOrange +hi! link String ThemeGreen +hi! link Structure ThemeOrange +hi! link Tag ThemeOrange + +call hi("Todo", s:gui08, s:guibg, s:cterm08, s:ctermbg, "italic", "") +call hi("Type", s:gui0A, "", s:cterm0A, "", "none", "") + +hi! link Typedef ThemeOrange + + +" Treesitter +if has("nvim-0.8.0") + call hi("@field", s:gui08, "", s:cterm08, "", "", "") + call hi("@property", s:gui08, "", s:cterm08, "", "", "") + call hi("@namespace", s:gui06, "", s:cterm05, "", "italic", "") + call hi("@variable.builtin", s:gui06, "", s:cterm05, "", "italic", "") + call hi("@text.reference", s:gui08, "", s:cterm08, "", "", "") + call hi("@text.uri", s:gui08, "", s:cterm08, "", "italic", "") + + " Annotations & Attributes + call hi("@annotation", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@attribute", s:gui0D, "", s:cterm0D, "", "", "") + + " Booleans, Characters & Comments + call hi("@boolean", s:gui09, "", s:cterm09, "", "", "") + call hi("@character", s:gui08, "", s:cterm08, "", "", "") + call hi("@character.special", s:gui0F, "", s:cterm0F, "", "", "") + call hi("@comment", s:gui03, "", s:cterm03, "", "", "") + + " Conditionals, Constants & Debugging + call hi("@keyword.conditional", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@constant", s:gui09, "", s:cterm09, "", "", "") + call hi("@constant.builtin", s:gui09, "", s:cterm09, "", "", "") + call hi("@constant.macro", s:gui08, "", s:cterm08, "", "", "") + call hi("@keyword.debug", s:gui08, "", s:cterm08, "", "", "") + + " Directives & Exceptions + call hi("@keyword.directive.define", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@keyword.exception", s:gui0E, "", s:cterm0E, "", "", "") + + " Floats & Functions + call hi("@number.float", s:gui09, "", s:cterm09, "", "", "") + call hi("@function", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@function.builtin", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@function.call", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@function.macro", s:gui08, "", s:cterm08, "", "", "") + + " Imports, Operators & Returns + call hi("@keyword.import", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@keyword.coroutine", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@keyword.operator", s:gui06, "", s:cterm05, "", "", "") + call hi("@keyword.return", s:gui0E, "", s:cterm0E, "", "", "") + + " Methods & Namespaces + call hi("@function.method", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@function.method.call", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@namespace.builtin", s:gui0E, "", s:cterm0E, "", "", "") + + " Numbers & Directives + call hi("@none", s:gui06, "", s:cterm05, "", "", "") + call hi("@number", s:gui09, "", s:cterm09, "", "", "") + call hi("@keyword.directive", s:gui0E, "", s:cterm0E, "", "", "") + + " Repeats, Storage & Strings + call hi("@keyword.repeat", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@keyword.storage", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@string", s:gui0B, "", s:cterm0B, "", "", "") + + " Tags & Markup + call hi("@markup.link.label", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.link.label.symbol", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@tag", s:gui08, "", s:cterm08, "", "", "") + call hi("@tag.attribute", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@tag.delimiter", s:gui0F, "", s:cterm0F, "", "", "") + + " More Markup + call hi("@markup", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.environment", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.environment.name", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.raw", s:gui09, "", s:cterm09, "", "", "") + call hi("@markup.math", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.strong", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.emphasis", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.strikethrough", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.underline", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.heading", s:gui0D, "", s:cterm0D, "", "", "") + + " Comments & Types + call hi("@comment.note", s:gui03, "", s:cterm03, "", "", "") + call hi("@comment.error", s:gui08, "", s:cterm08, "", "", "") + call hi("@comment.hint", s:gui0B, "", s:cterm0B, "", "", "") + call hi("@comment.info", s:gui0D, "", s:cterm0D, "", "", "") + call hi("@comment.warning", s:gui09, "", s:cterm09, "", "", "") + call hi("@comment.todo", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@markup.link.url", s:gui09, "", s:cterm09, "", "", "") + call hi("@type", s:gui0A, "", s:cterm0A, "", "", "") + call hi("@type.definition", s:gui0E, "", s:cterm0E, "", "", "") + call hi("@type.qualifier", s:gui0E, "", s:cterm0E, "", "", "") +endif + +" Standard highlights to be used by plugins +if has("patch-8.0.1038") + call hi("Deprecated", "", "", "", "", "strikethrough", "") +endif +call hi("SearchMatch", s:gui0C, "", s:cterm0C, "", "", "") + +call hi("GitAddSign", s:gui0B, "", s:cterm0B, "", "", "") +call hi("GitChangeSign", s:gui04, "", s:cterm04, "", "", "") +call hi("GitDeleteSign", s:gui08, "", s:cterm08, "", "", "") +call hi("GitChangeDeleteSign", s:gui04, "", s:cterm04, "", "", "") + +call hi("ErrorSign", s:gui08, "", s:cterm08, "", "", "") +call hi("WarningSign", s:gui09, "", s:cterm09, "", "", "") +call hi("InfoSign", s:gui0D, "", s:cterm0D, "", "", "") +call hi("HintSign", s:gui0C, "", s:cterm0C, "", "", "") +call hi("OkSign", s:gui0B, "", s:cterm0B, "", "", "") + +call hi("ErrorFloat", s:gui08, s:gui01, s:cterm08, s:cterm01, "", "") +call hi("WarningFloat", s:gui09, s:gui01, s:cterm09, s:cterm01, "", "") +call hi("InfoFloat", s:gui0D, s:gui01, s:cterm0D, s:cterm01, "", "") +call hi("HintFloat", s:gui0C, s:gui01, s:cterm0C, s:cterm01, "", "") +call hi("OkFloat", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "") + +call hi("ErrorHighlight", "", "", s:ctermbg, s:cterm08, "underline", s:gui08) +call hi("WarningHighlight", "", "", s:ctermbg, s:cterm09, "underline", s:gui09) +call hi("InfoHighlight", "", "", s:ctermbg, s:cterm0D, "underline", s:gui0D) +call hi("HintHighlight", "", "", s:ctermbg, s:cterm0C, "underline", s:gui0C) +call hi("OkHighlight", "", "", s:ctermbg, s:cterm0B, "underline", s:gui0B) + +call hi("SpellBad", "", "", s:ctermbg, s:cterm08, "undercurl", s:gui08) +call hi("SpellLocal", "", "", s:ctermbg, s:cterm0C, "undercurl", s:gui0C) +call hi("SpellCap", "", "", s:ctermbg, s:cterm0D, "undercurl", s:gui0D) +call hi("SpellRare", "", "", s:ctermbg, s:cterm0E, "undercurl", s:gui0E) + +call hi("ReferenceText", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "", "") +call hi("ReferenceRead", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "", "") +call hi("ReferenceWrite", s:gui01, s:gui08, s:cterm01, s:cterm08, "", "") + +" C +call hi("cOperator", s:gui0C, "", s:cterm0C, "", "", "") +call hi("cPreCondit", s:gui0E, "", s:cterm0E, "", "", "") + +" C# +call hi("csClass", s:gui0A, "", s:cterm0A, "", "", "") +call hi("csAttribute", s:gui0A, "", s:cterm0A, "", "", "") +call hi("csModifier", s:gui0E, "", s:cterm0E, "", "", "") +call hi("csType", s:gui08, "", s:cterm08, "", "", "") +call hi("csUnspecifiedStatement", s:gui0D, "", s:cterm0D, "", "", "") +call hi("csContextualStatement", s:gui0E, "", s:cterm0E, "", "", "") +call hi("csNewDecleration", s:gui08, "", s:cterm08, "", "", "") + +" Clap +hi! link ClapInput ColorColumn +hi! link ClapSpinner ColorColumn +hi! link ClapDisplay Default +hi! link ClapPreview ColorColumn +hi! link ClapCurrentSelection CursorLine +hi! link ClapNoMatchesFound ErrorFloat + +" Coc +hi! link CocErrorSign ErrorSign +hi! link CocWarningSign WarningSign +hi! link CocInfoSign InfoSign +hi! link CocHintSign HintSign + +hi! link CocErrorFloat ErrorFloat +hi! link CocWarningFloat WarningFloat +hi! link CocInfoFloat InfoFloat +hi! link CocHintFloat HintFloat + +hi! link CocErrorHighlight ErrorHighlight +hi! link CocWarningHighlight WarningHighlight +hi! link CocInfoHighlight InfoHighlight +hi! link CocHintHighlight HintHighlight + +hi! link CocSem_angle Keyword +hi! link CocSem_annotation Keyword +hi! link CocSem_attribute Type +hi! link CocSem_bitwise Keyword +hi! link CocSem_boolean Boolean +hi! link CocSem_brace Normal +hi! link CocSem_bracket Normal +hi! link CocSem_builtinAttribute Type +hi! link CocSem_builtinType Type +hi! link CocSem_character String +hi! link CocSem_class Structure +hi! link CocSem_colon Normal +hi! link CocSem_comma Normal +hi! link CocSem_comment Comment +hi! link CocSem_comparison Keyword +hi! link CocSem_concept Keyword +hi! link CocSem_constParameter Identifier +hi! link CocSem_dependent Keyword +hi! link CocSem_dot Keyword +hi! link CocSem_enum Structure +hi! link CocSem_enumMember Constant +hi! link CocSem_escapeSequence Type +hi! link CocSem_event Identifier +hi! link CocSem_formatSpecifier Type +hi! link CocSem_function Function +hi! link CocSem_interface Type +hi! link CocSem_keyword Keyword +hi! link CocSem_label Keyword +hi! link CocSem_logical Keyword +hi! link CocSem_macro Macro +hi! link CocSem_method Function +hi! link CocSem_modifier Keyword +hi! link CocSem_namespace Identifier +hi! link CocSem_number Number +hi! link CocSem_operator Operator +hi! link CocSem_parameter Identifier +hi! link CocSem_parenthesis Normal +hi! link CocSem_property Identifier +hi! link CocSem_punctuation Keyword +hi! link CocSem_regexp Type +hi! link CocSem_selfKeyword Constant +hi! link CocSem_semicolon Normal +hi! link CocSem_string String +hi! link CocSem_struct Structure +hi! link CocSem_type Type +hi! link CocSem_typeAlias Type +hi! link CocSem_typeParameter Type +hi! link CocSem_unknown Normal +hi! link CocSem_variable Identifier + +call hi("CocHighlightRead", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "") +call hi("CocHighlightText", s:gui0A, s:gui01, s:cterm0A, s:cterm01, "", "") +call hi("CocHighlightWrite", s:gui08, s:gui01, s:cterm08, s:cterm01, "", "") +call hi("CocListMode", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "bold", "") +call hi("CocListPath", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "", "") +call hi("CocSessionsName", s:gui06, "", s:cterm05, "", "", "") + +" CSS +hi! link cssBraces ThemeBlue +hi! link cssFunctionName ThemeYellow +hi! link cssIdentifier ThemeOrange +hi! link cssClassName ThemeGreen +hi! link cssColor ThemeBlue +hi! link cssSelectorOp ThemeBlue +hi! link cssSelectorOp2 ThemeBlue +hi! link cssImportant ThemeGreen +hi! link cssVendor ThemeFg1 + +hi! link cssTextProp ThemeCyan +hi! link cssAnimationProp ThemeCyan +hi! link cssUIProp ThemeYellow +hi! link cssTransformProp ThemeCyan +hi! link cssTransitionProp ThemeCyan +hi! link cssPrintProp ThemeCyan +hi! link cssPositioningProp ThemeYellow +hi! link cssBoxProp ThemeCyan +hi! link cssFontDescriptorProp ThemeCyan +hi! link cssFlexibleBoxProp ThemeCyan +hi! link cssBorderOutlineProp ThemeCyan +hi! link cssBackgroundProp ThemeCyan +hi! link cssMarginProp ThemeCyan +hi! link cssListProp ThemeCyan +hi! link cssTableProp ThemeCyan +hi! link cssFontProp ThemeCyan +hi! link cssPaddingProp ThemeCyan +hi! link cssDimensionProp ThemeCyan +hi! link cssRenderProp ThemeCyan +hi! link cssColorProp ThemeCyan +hi! link cssGeneratedContentProp ThemeCyan + + +" CMP +hi! link CmpItemAbbrDeprecated Deprecated +hi! link CmpItemAbbrMatch SearchMatch +hi! link CmpItemAbbrMatchFuzzy SearchMatch +hi! link CmpItemKindClass Type +hi! link CmpItemKindColor Keyword +hi! link CmpItemKindConstant Constant +hi! link CmpItemKindConstructor Special +hi! link CmpItemKindEnum Type +hi! link CmpItemKindEnumMember Constant +hi! link CmpItemKindEvent Identifier +hi! link CmpItemKindField Character +hi! link CmpItemKindFile Directory +hi! link CmpItemKindFolder Directory +hi! link CmpItemKindFunction Function +hi! link CmpItemKindInterface Type +hi! link CmpItemKindKeyword Keyword +hi! link CmpItemKindMethod Function +hi! link CmpItemKindModule Namespace +hi! link CmpItemKindOperator Operator +hi! link CmpItemKindProperty Identifier +hi! link CmpItemKindReference Character +hi! link CmpItemKindSnippet String +hi! link CmpItemKindStruct Type +hi! link CmpItemKindText Text +hi! link CmpItemKindUnit Namespace +hi! link CmpItemKindValue Comment +hi! link CmpItemKindVariable Identifier + +if has("nvim-0.8.0") + hi! link CmpItemKindField @field + hi! link CmpItemKindProperty @property +endif + +" Diff +call hi("DiffAdd", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "") +call hi("DiffChange", s:gui06, s:gui01, s:cterm05, s:cterm01, "", "") +call hi("DiffDelete", s:gui02, s:guibg, s:cterm02, s:ctermbg, "", "") +call hi("DiffText", s:gui0D, s:gui01, s:cterm0D, s:cterm01, "", "") +call hi("DiffAdded", s:gui0B, s:guibg, s:cterm0B, s:ctermbg, "", "") +call hi("DiffFile", s:gui08, s:guibg, s:cterm08, s:ctermbg, "", "") +call hi("DiffNewFile", s:gui0B, s:guibg, s:cterm0B, s:ctermbg, "", "") +call hi("DiffLine", s:gui0D, s:guibg, s:cterm0D, s:ctermbg, "", "") +call hi("DiffRemoved", s:gui08, s:guibg, s:cterm08, s:ctermbg, "", "") + +" Git +call hi("gitcommitOverflow", s:gui08, "", s:cterm08, "", "", "") +call hi("gitcommitSummary", s:gui0B, "", s:cterm0B, "", "", "") +call hi("gitcommitComment", s:gui03, "", s:cterm03, "", "", "") +call hi("gitcommitUntracked", s:gui03, "", s:cterm03, "", "", "") +call hi("gitcommitDiscarded", s:gui03, "", s:cterm03, "", "", "") +call hi("gitcommitSelected", s:gui03, "", s:cterm03, "", "", "") +call hi("gitcommitHeader", s:gui0E, "", s:cterm0E, "", "", "") +call hi("gitcommitSelectedType", s:gui0D, "", s:cterm0D, "", "", "") +call hi("gitcommitUnmergedType", s:gui0D, "", s:cterm0D, "", "", "") +call hi("gitcommitDiscardedType", s:gui0D, "", s:cterm0D, "", "", "") +call hi("gitcommitBranch", s:gui09, "", s:cterm09, "", "bold", "") +call hi("gitcommitUntrackedFile", s:gui0A, "", s:cterm0A, "", "", "") +call hi("gitcommitUnmergedFile", s:gui08, "", s:cterm08, "", "bold", "") +call hi("gitcommitDiscardedFile", s:gui08, "", s:cterm08, "", "bold", "") +call hi("gitcommitSelectedFile", s:gui0B, "", s:cterm0B, "", "bold", "") + +" GitGutter +hi! link GitGutterAdd GitAddSign +hi! link GitGutterChange GitChangeSign +hi! link GitGutterDelete GitDeleteSign +hi! link GitGutterChangeDelete GitChangeDeleteSign + +" indent-blankline (nvim) +if has("nvim") + call hi("@ibl.indent.char.1",s:gui01, "", s:cterm01, "", "", "") +endif + +" HTML +call hi("htmlBold", s:gui07, "", s:cterm0A, "", "bold", "") +call hi("htmlItalic", s:gui06, "", s:cterm0E, "", "italic", "") +call hi("htmlEndTag", s:gui06, "", s:cterm05, "", "", "") +call hi("htmlTag", s:gui06, "", s:cterm05, "", "", "") + +" JavaScript +call hi("javaScript", s:gui06, "", s:cterm05, "", "", "") +call hi("javaScriptBraces", s:gui06, "", s:cterm05, "", "", "") +call hi("javaScriptNumber", s:gui09, "", s:cterm09, "", "", "") +" pangloss/vim-javascript +call hi("jsOperator", s:gui0D, "", s:cterm0D, "", "", "") +call hi("jsStatement", s:gui0E, "", s:cterm0E, "", "", "") +call hi("jsReturn", s:gui0E, "", s:cterm0E, "", "", "") +call hi("jsThis", s:gui08, "", s:cterm08, "", "", "") +call hi("jsClassDefinition", s:gui0A, "", s:cterm0A, "", "", "") +call hi("jsFunction", s:gui0E, "", s:cterm0E, "", "", "") +call hi("jsFuncName", s:gui0D, "", s:cterm0D, "", "", "") +call hi("jsFuncCall", s:gui0D, "", s:cterm0D, "", "", "") +call hi("jsClassFuncName", s:gui0D, "", s:cterm0D, "", "", "") +call hi("jsClassMethodType", s:gui0E, "", s:cterm0E, "", "", "") +call hi("jsRegexpString", s:gui0C, "", s:cterm0C, "", "", "") +call hi("jsGlobalObjects", s:gui0A, "", s:cterm0A, "", "", "") +call hi("jsGlobalNodeObjects", s:gui0A, "", s:cterm0A, "", "", "") +call hi("jsExceptions", s:gui0A, "", s:cterm0A, "", "", "") +call hi("jsBuiltins", s:gui0A, "", s:cterm0A, "", "", "") + +" Mail +call hi("mailQuoted1", s:gui0A, "", s:cterm0A, "", "", "") +call hi("mailQuoted2", s:gui0B, "", s:cterm0B, "", "", "") +call hi("mailQuoted3", s:gui0E, "", s:cterm0E, "", "", "") +call hi("mailQuoted4", s:gui0C, "", s:cterm0C, "", "", "") +call hi("mailQuoted5", s:gui0D, "", s:cterm0D, "", "", "") +call hi("mailQuoted6", s:gui0A, "", s:cterm0A, "", "", "") +call hi("mailURL", s:gui0D, "", s:cterm0D, "", "", "") +call hi("mailEmail", s:gui0D, "", s:cterm0D, "", "", "") + +" Markdown +call hi("markdownCode", s:gui0B, "", s:cterm0B, "", "", "") +call hi("markdownError", s:gui06, s:guibg, s:cterm05, s:ctermbg, "", "") +call hi("markdownCodeBlock", s:gui0B, "", s:cterm0B, "", "", "") +call hi("markdownHeadingDelimiter", s:gui0D, "", s:cterm0D, "", "", "") + +" Matchup +call hi("MatchWord", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "underline", "") + +" NERDTree +call hi("NERDTreeDirSlash", s:gui0D, "", s:cterm0D, "", "", "") +call hi("NERDTreeExecFile", s:gui06, "", s:cterm05, "", "", "") + +" Netrw +hi! link netrwDir ThemeCyan +hi! link netrwClassify ThemeCyan +hi! link netrwLink ThemeBg3 +hi! link netrwSymLink ThemeFg1 +hi! link netrwExe ThemeYellow +hi! link netrwComment ThemeBg3 +hi! link netrwList ThemeBlue +hi! link netrwHelpCmd ThemeCyan +hi! link netrwCmdSep ThemeFg3 +hi! link netrwVersion ThemeGreen + +" PHP +call hi("phpMemberSelector", s:gui06, "", s:cterm05, "", "", "") +call hi("phpComparison", s:gui06, "", s:cterm05, "", "", "") +call hi("phpParent", s:gui06, "", s:cterm05, "", "", "") +call hi("phpMethodsVar", s:gui0C, "", s:cterm0C, "", "", "") + +" Python +"call hi("pythonOperator", s:gui0E, "", s:cterm0E, "", "", "") +"call hi("pythonRepeat", s:gui0E, "", s:cterm0E, "", "", "") +"call hi("pythonInclude", s:gui0E, "", s:cterm0E, "", "", "") +"call hi("pythonStatement", s:gui0E, "", s:cterm0E, "", "", "") + +" hi! link pythonBuiltin ThemeCyan +" hi! link pythonBuiltinObj ThemeCyan +" hi! link pythonBuiltinFunc ThemeGreen +" hi! link pythonFunction Function +hi! link pythonDecorator ThemeYellow +hi! link pythonDecoratorName ThemeYellow +" hi! link pythonTripleQuotes ThemeGreenItalic +" hi! link pythonInclude ThemeBlue +" hi! link pythonImport ThemeBlue +" hi! link pythonRun ThemeBlue +" hi! link pythonCoding ThemeBlue +" hi! link pythonOperator ThemeRed +" hi! link pythonException ThemeRed +" hi! link pythonExceptions ThemeYellow +" hi! link pythonBoolean ThemeYellow +" hi! link pythonDot ThemeFg3 +" hi! link pythonConditional ThemeCyan +" hi! link pythonRepeat ThemeRed +" hi! link pythonDottedName ThemeGreen + + +" Ruby +call hi("rubyAttribute", s:gui0D, "", s:cterm0D, "", "", "") +call hi("rubyConstant", s:gui0A, "", s:cterm0A, "", "", "") +call hi("rubyInterpolationDelimiter", s:gui0F, "", s:cterm0F, "", "", "") +call hi("rubyRegexp", s:gui0C, "", s:cterm0C, "", "", "") +call hi("rubySymbol", s:gui0B, "", s:cterm0B, "", "", "") +call hi("rubyStringDelimiter", s:gui0B, "", s:cterm0B, "", "", "") + +" SASS +call hi("sassidChar", s:gui08, "", s:cterm08, "", "", "") +call hi("sassClassChar", s:gui09, "", s:cterm09, "", "", "") +call hi("sassInclude", s:gui0E, "", s:cterm0E, "", "", "") +call hi("sassMixing", s:gui0E, "", s:cterm0E, "", "", "") +call hi("sassMixinName", s:gui0D, "", s:cterm0D, "", "", "") + +" Signify +hi! link SignifySignAdd GitAddSign +hi! link SignifySignChange GitChangeSign +hi! link SignifySignDelete GitDeleteSign + +" Startify +call hi("StartifyBracket", s:gui03, "", s:cterm03, "", "", "") +call hi("StartifyFile", s:gui07, "", s:cterm07, "", "", "") +call hi("StartifyFooter", s:gui03, "", s:cterm03, "", "", "") +call hi("StartifyHeader", s:gui0B, "", s:cterm0B, "", "", "") +call hi("StartifyNumber", s:gui09, "", s:cterm09, "", "", "") +call hi("StartifyPath", s:gui03, "", s:cterm03, "", "", "") +call hi("StartifySection", s:gui0E, "", s:cterm0E, "", "", "") +call hi("StartifySelect", s:gui0C, "", s:cterm0C, "", "", "") +call hi("StartifySlash", s:gui03, "", s:cterm03, "", "", "") +call hi("StartifySpecial", s:gui03, "", s:cterm03, "", "", "") + +" LSP +if has("nvim") + hi! link DiagnosticError ErrorSign + hi! link DiagnosticWarn WarningSign + hi! link DiagnosticInfo InfoSign + hi! link DiagnosticHint HintSign + hi! link DiagnosticOk OkSign + + hi! link DiagnosticFloatingError ErrorFloat + hi! link DiagnosticFloatingWarn WarningFloat + hi! link DiagnosticFloatingInfo InfoFloat + hi! link DiagnosticFloatingHint HintFloat + hi! link DiagnosticFloatingOk OkFloat + + hi! link DiagnosticUnderlineError ErrorHighlight + hi! link DiagnosticUnderlineWarn WarningHighlight + hi! link DiagnosticUnderlineInfo InfoHighlight + hi! link DiagnosticUnderlineHint HintHighlight + hi! link DiagnosticUnderlineOk OkHighlight + + hi! link DiagnosticsVirtualTextError ErrorSign + hi! link DiagnosticsVirtualTextWarning WarningSign + hi! link DiagnosticsVirtualTextInfo InfoSign + hi! link DiagnosticsVirtualTextHint HintSign + hi! link DiagnosticsVirtualTextOk OkSign + + " Remove untill endif on next nvim release + hi! link LspDiagnosticsSignError ErrorSign + hi! link LspDiagnosticsSignWarning WarningSign + hi! link LspDiagnosticsSignInfo InfoSign + hi! link LspDiagnosticsSignHint HintSign + + hi! link LspDiagnosticsVirtualTextError ErrorSign + hi! link LspDiagnosticsVirtualTextWarning WarningSign + hi! link LspDiagnosticsVirtualTextInfo InfoSign + hi! link LspDiagnosticsVirtualTextHint HintSign + + hi! link LspDiagnosticsFloatingError ErrorFloat + hi! link LspDiagnosticsFloatingWarning WarningFloat + hi! link LspDiagnosticsFloatingInfo InfoFloat + hi! link LspDiagnosticsFloatingHint HintFloat + + hi! link LspDiagnosticsUnderlineError ErrorHighlight + hi! link LspDiagnosticsUnderlineWarning WarningHighlight + hi! link LspDiagnosticsUnderlineInfo InfoHighlight + hi! link LspDiagnosticsUnderlineHint HintHighlight + + hi! link LspReferenceText ReferenceText + hi! link LspReferenceRead ReferenceRead + hi! link LspReferenceWrite ReferenceWrite +endif + +" Java +call hi("javaOperator", s:gui0D, "", s:cterm0D, "", "", "") + +" JSON +hi! link jsonKeyword ThemeGreen +hi! link jsonQuote ThemeGreen +hi! link jsonBraces ThemeFg1 +hi! link jsonString ThemeFg1 + +" Markdown +hi! link markdownH1 ThemeRedBold +hi! link markdownH2 ThemeRed +hi! link markdownH3 ThemeRed +hi! link markdownH4 ThemeRed +hi! link markdownH5 ThemeRed +hi! link markdownH6 ThemeRed + +hi! link markdownCode ThemeYellow +hi! link markdownCodeBlock ThemeYellow +hi! link markdownCodeDelimiter ThemeYellow + +hi! link markdownBlockquote ThemeGrey +hi! link markdownListMarker ThemeBlue +hi! link markdownOrderedListMarker ThemeBlue +hi! link markdownRule ThemeGrey +hi! link markdownHeadingRule ThemeGrey + +hi! link markdownUrlDelimiter ThemeFg3 +hi! link markdownLinkDelimiter ThemeFg3 +hi! link markdownLinkTextDelimiter ThemeFg3 +hi! link markdownHeadingDelimiter ThemeOrange +hi! link markdownUrlTitleDelimiter ThemeGreen + +hi! link markdownLink ThemeGreen +hi! link markdownWikiLink ThemeViolet +hi! link markdownUrl ThemeOrange +hi! link markdownInlineUrl ThemeOrange + +hi! link markdownLinkText ThemeViolet +hi! link markdownIdDeclaration markdownLinkText + +"call s:HL('markdownItalic', s:fg3, s:none, s:italic) +"call s:HL('markdownLinkText', s:gray, s:none, s:underline) + + +" Remove functions +delf hi + +" Remove color variables +unlet s:gui00 s:gui01 s:gui02 s:gui03 s:gui04 s:gui05 s:gui06 s:gui07 s:gui08 s:gui09 s:gui0A s:gui0B s:gui0C s:gui0D s:gui0E s:gui0F s:guibg +unlet s:cterm00 s:cterm01 s:cterm02 s:cterm03 s:cterm04 s:cterm05 s:cterm06 s:cterm07 s:cterm08 s:cterm09 s:cterm0A s:cterm0B s:cterm0C s:cterm0D s:cterm0E s:cterm0F s:ctermbg diff --git a/apps/vim-airline/grassland-monobiome-dark.statusline.vim b/apps/vim-airline/grassland-monobiome-dark.statusline.vim new file mode 100644 index 0000000..00f9341 --- /dev/null +++ b/apps/vim-airline/grassland-monobiome-dark.statusline.vim @@ -0,0 +1,110 @@ +" ----------------------------------------------------------------------------- +" File: active.vim +" Description: SOLR color scheme for Airline +" Author: samgriesemer +" Source: https://github.com/samgriesemer/active +" ----------------------------------------------------------------------------- +" -> generated_color_map(s1, s2, s3) will generate colors for the airline suffixes: +" +" -> _a :: s1 +" -> _b :: s2 +" -> _c :: s3 +" -> _x :: s3 +" -> _y :: s2 +" -> _z :: s1 +" +" It simply generates a dictionary, and below we do this for several modes. + +let g:airline#themes#active#palette = {} +let s:gui_bg0 = "#1d2321" +let s:gui_bg1 = "#29302d" +let s:gui_bg2 = "#353c3a" +let s:gui_bg3 = "#424a47" +let s:gui_fg3 = "#a8b0ad" +let s:gui_fg2 = "#b7c0bc" +let s:gui_fg1 = "#c7d0cc" +let s:gui_fg0 = "#d7e0dd" +let s:gui_red = "#e95949" +let s:gui_ora = "#ca791c" +let s:gui_yel = "#989250" +let s:gui_gre = "#5da268" +let s:gui_cya = "#5da268" +let s:gui_blu = "#658ed9" +let s:gui_vio = "#658ed9" +let s:gui_mag = "#e95949" + +let s:grey = "#7a827f" + +" Terminal color definitions +let s:cterm00 = 0 +let s:cterm01 = 10 +let s:cterm02 = 11 +let s:cterm03 = 8 +let s:cterm04 = 12 +let s:cterm05 = 7 +let s:cterm06 = 13 +let s:cterm07 = 15 +let s:cterm08 = 1 +let s:cterm09 = 9 +let s:cterm0A = 3 +let s:cterm0B = 2 +let s:cterm0C = 6 +let s:cterm0D = 4 +let s:cterm0E = 5 +let s:cterm0F = 14 + +let M0 = airline#themes#get_highlight('Title') +let accents_group = airline#themes#get_highlight('Statement') +let modified_group = [M0[0], '', M0[2], '', ''] + +let warning_group = airline#themes#get_highlight2(['Normal', 'bg'], ['Structure', 'fg']) +"let warning_group = airline#themes#get_highlight2(['Structure', 'fg'], ['Normal', 'bg']) +let error_group = airline#themes#get_highlight2(['Normal', 'bg'], ['WarningMsg', 'fg']) + + +" status line settings +" [ guifg guibg ctermfg ctermbg ] +let s:N1 = [ s:gui_bg0, s:gui_fg3, s:cterm01, s:cterm0B ] +let s:N2 = [ s:gui_fg1, s:gui_bg2, s:cterm06, s:cterm02 ] +let s:N3 = [ s:gui_fg2, s:gui_bg1, s:cterm09, s:cterm01 ] +let g:airline#themes#active#palette.normal = airline#themes#generate_color_map(s:N1, s:N2, s:N3) + +let modified_group = [ s:gui_yel, '', s:cterm01, '' ] +let warning_group = [ s:gui_gre, s:gui_bg1, s:cterm01, s:cterm0B ] +let g:airline#themes#active#palette.normal_modified = { 'airline_c': modified_group } +let g:airline#themes#active#palette.normal.airline_warning = warning_group +let g:airline#themes#active#palette.normal_modified.airline_warning = warning_group +"let g:airline#themes#active#palette.normal.airline_error = error_group +"let g:airline#themes#active#palette.normal_modified.airline_error = error_group + + +let s:I1 = [ s:gui_bg0, s:gui_gre, s:cterm01, s:cterm0D ] +let s:I2 = [ s:gui_fg1, s:gui_bg2, s:cterm06, s:cterm02 ] +let s:I3 = [ s:gui_fg2, s:gui_bg1, s:cterm09, s:cterm01 ] +let g:airline#themes#active#palette.insert = airline#themes#generate_color_map(s:I1, s:I2, s:I3) + +let g:airline#themes#active#palette.insert.airline_warning = warning_group + + +let s:R1 = [ s:gui_bg0, s:gui_red, s:cterm01, s:cterm08 ] +let s:R2 = [ s:gui_fg1, s:gui_bg2, s:cterm06, s:cterm02 ] +let s:R3 = [ s:gui_fg2, s:gui_bg1, s:cterm09, s:cterm01 ] +let g:airline#themes#active#palette.replace = airline#themes#generate_color_map(s:R1, s:R2, s:R3) + +let g:airline#themes#active#palette.replace.airline_warning = warning_group + + +let s:V1 = [ s:gui_bg0, s:gui_yel, s:cterm01, s:cterm0E ] +let s:V2 = [ s:gui_fg1, s:gui_bg2, s:cterm06, s:cterm02 ] +let s:V3 = [ s:gui_fg2, s:gui_bg1, s:cterm09, s:cterm01 ] +let g:airline#themes#active#palette.visual = airline#themes#generate_color_map(s:V1, s:V2, s:V3) + +let g:airline#themes#active#palette.visual.airline_warning = warning_group + + +let s:IA1 = [ s:gui_fg2, s:gui_bg1, s:cterm05, s:cterm01 ] +let s:IA2 = [ s:gui_fg2, s:gui_bg1, s:cterm05, s:cterm01 ] +let s:IA3 = [ s:gui_fg2, s:gui_bg1, s:cterm05, s:cterm01 ] +let g:airline#themes#active#palette.inactive = airline#themes#generate_color_map(s:IA1, s:IA2, s:IA3) + +let g:airline#themes#active#palette.inactive.airline_warning = warning_group diff --git a/apps/vim-airline/grassland-monobiome-light.statusline.vim b/apps/vim-airline/grassland-monobiome-light.statusline.vim new file mode 100644 index 0000000..2010528 --- /dev/null +++ b/apps/vim-airline/grassland-monobiome-light.statusline.vim @@ -0,0 +1,110 @@ +" ----------------------------------------------------------------------------- +" File: active.vim +" Description: SOLR color scheme for Airline +" Author: samgriesemer +" Source: https://github.com/samgriesemer/active +" ----------------------------------------------------------------------------- +" -> generated_color_map(s1, s2, s3) will generate colors for the airline suffixes: +" +" -> _a :: s1 +" -> _b :: s2 +" -> _c :: s3 +" -> _x :: s3 +" -> _y :: s2 +" -> _z :: s1 +" +" It simply generates a dictionary, and below we do this for several modes. + +let g:airline#themes#active#palette = {} +let s:gui_bg0 = "#c7d0cc" +let s:gui_bg1 = "#b7c0bc" +let s:gui_bg2 = "#a8b0ad" +let s:gui_bg3 = "#98a19d" +let s:gui_fg3 = "#353c3a" +let s:gui_fg2 = "#29302d" +let s:gui_fg1 = "#1d2321" +let s:gui_fg0 = "#111815" +let s:gui_red = "#b52119" +let s:gui_ora = "#905201" +let s:gui_yel = "#6a6535" +let s:gui_gre = "#377242" +let s:gui_cya = "#377242" +let s:gui_blu = "#3860ac" +let s:gui_vio = "#3860ac" +let s:gui_mag = "#b52119" + +let s:grey = "#5d6562" + +" Terminal color definitions +let s:cterm00 = 0 +let s:cterm01 = 10 +let s:cterm02 = 11 +let s:cterm03 = 8 +let s:cterm04 = 12 +let s:cterm05 = 7 +let s:cterm06 = 13 +let s:cterm07 = 15 +let s:cterm08 = 1 +let s:cterm09 = 9 +let s:cterm0A = 3 +let s:cterm0B = 2 +let s:cterm0C = 6 +let s:cterm0D = 4 +let s:cterm0E = 5 +let s:cterm0F = 14 + +let M0 = airline#themes#get_highlight('Title') +let accents_group = airline#themes#get_highlight('Statement') +let modified_group = [M0[0], '', M0[2], '', ''] + +let warning_group = airline#themes#get_highlight2(['Normal', 'bg'], ['Structure', 'fg']) +"let warning_group = airline#themes#get_highlight2(['Structure', 'fg'], ['Normal', 'bg']) +let error_group = airline#themes#get_highlight2(['Normal', 'bg'], ['WarningMsg', 'fg']) + + +" status line settings +" [ guifg guibg ctermfg ctermbg ] +let s:N1 = [ s:gui_bg0, s:gui_fg3, s:cterm01, s:cterm0B ] +let s:N2 = [ s:gui_fg1, s:gui_bg2, s:cterm06, s:cterm02 ] +let s:N3 = [ s:gui_fg2, s:gui_bg1, s:cterm09, s:cterm01 ] +let g:airline#themes#active#palette.normal = airline#themes#generate_color_map(s:N1, s:N2, s:N3) + +let modified_group = [ s:gui_yel, '', s:cterm01, '' ] +let warning_group = [ s:gui_gre, s:gui_bg1, s:cterm01, s:cterm0B ] +let g:airline#themes#active#palette.normal_modified = { 'airline_c': modified_group } +let g:airline#themes#active#palette.normal.airline_warning = warning_group +let g:airline#themes#active#palette.normal_modified.airline_warning = warning_group +"let g:airline#themes#active#palette.normal.airline_error = error_group +"let g:airline#themes#active#palette.normal_modified.airline_error = error_group + + +let s:I1 = [ s:gui_bg0, s:gui_gre, s:cterm01, s:cterm0D ] +let s:I2 = [ s:gui_fg1, s:gui_bg2, s:cterm06, s:cterm02 ] +let s:I3 = [ s:gui_fg2, s:gui_bg1, s:cterm09, s:cterm01 ] +let g:airline#themes#active#palette.insert = airline#themes#generate_color_map(s:I1, s:I2, s:I3) + +let g:airline#themes#active#palette.insert.airline_warning = warning_group + + +let s:R1 = [ s:gui_bg0, s:gui_red, s:cterm01, s:cterm08 ] +let s:R2 = [ s:gui_fg1, s:gui_bg2, s:cterm06, s:cterm02 ] +let s:R3 = [ s:gui_fg2, s:gui_bg1, s:cterm09, s:cterm01 ] +let g:airline#themes#active#palette.replace = airline#themes#generate_color_map(s:R1, s:R2, s:R3) + +let g:airline#themes#active#palette.replace.airline_warning = warning_group + + +let s:V1 = [ s:gui_bg0, s:gui_yel, s:cterm01, s:cterm0E ] +let s:V2 = [ s:gui_fg1, s:gui_bg2, s:cterm06, s:cterm02 ] +let s:V3 = [ s:gui_fg2, s:gui_bg1, s:cterm09, s:cterm01 ] +let g:airline#themes#active#palette.visual = airline#themes#generate_color_map(s:V1, s:V2, s:V3) + +let g:airline#themes#active#palette.visual.airline_warning = warning_group + + +let s:IA1 = [ s:gui_fg2, s:gui_bg1, s:cterm05, s:cterm01 ] +let s:IA2 = [ s:gui_fg2, s:gui_bg1, s:cterm05, s:cterm01 ] +let s:IA3 = [ s:gui_fg2, s:gui_bg1, s:cterm05, s:cterm01 ] +let g:airline#themes#active#palette.inactive = airline#themes#generate_color_map(s:IA1, s:IA2, s:IA3) + +let g:airline#themes#active#palette.inactive.airline_warning = warning_group diff --git a/apps/vim-airline/hard-grassland-monobiome-dark.statusline.vim b/apps/vim-airline/hard-grassland-monobiome-dark.statusline.vim new file mode 100644 index 0000000..f767ab4 --- /dev/null +++ b/apps/vim-airline/hard-grassland-monobiome-dark.statusline.vim @@ -0,0 +1,110 @@ +" ----------------------------------------------------------------------------- +" File: active.vim +" Description: SOLR color scheme for Airline +" Author: samgriesemer +" Source: https://github.com/samgriesemer/active +" ----------------------------------------------------------------------------- +" -> generated_color_map(s1, s2, s3) will generate colors for the airline suffixes: +" +" -> _a :: s1 +" -> _b :: s2 +" -> _c :: s3 +" -> _x :: s3 +" -> _y :: s2 +" -> _z :: s1 +" +" It simply generates a dictionary, and below we do this for several modes. + +let g:airline#themes#active#palette = {} +let s:gui_bg0 = "#111815" +let s:gui_bg1 = "#1d2321" +let s:gui_bg2 = "#29302d" +let s:gui_bg3 = "#353c3a" +let s:gui_fg3 = "#98a19d" +let s:gui_fg2 = "#a8b0ad" +let s:gui_fg1 = "#b7c0bc" +let s:gui_fg0 = "#c7d0cc" +let s:gui_red = "#dc4134" +let s:gui_ora = "#b86b05" +let s:gui_yel = "#888346" +let s:gui_gre = "#4f925a" +let s:gui_cya = "#4f925a" +let s:gui_blu = "#557ecc" +let s:gui_vio = "#557ecc" +let s:gui_mag = "#dc4134" + +let s:grey = "#6c7470" + +" Terminal color definitions +let s:cterm00 = 0 +let s:cterm01 = 10 +let s:cterm02 = 11 +let s:cterm03 = 8 +let s:cterm04 = 12 +let s:cterm05 = 7 +let s:cterm06 = 13 +let s:cterm07 = 15 +let s:cterm08 = 1 +let s:cterm09 = 9 +let s:cterm0A = 3 +let s:cterm0B = 2 +let s:cterm0C = 6 +let s:cterm0D = 4 +let s:cterm0E = 5 +let s:cterm0F = 14 + +let M0 = airline#themes#get_highlight('Title') +let accents_group = airline#themes#get_highlight('Statement') +let modified_group = [M0[0], '', M0[2], '', ''] + +let warning_group = airline#themes#get_highlight2(['Normal', 'bg'], ['Structure', 'fg']) +"let warning_group = airline#themes#get_highlight2(['Structure', 'fg'], ['Normal', 'bg']) +let error_group = airline#themes#get_highlight2(['Normal', 'bg'], ['WarningMsg', 'fg']) + + +" status line settings +" [ guifg guibg ctermfg ctermbg ] +let s:N1 = [ s:gui_bg0, s:gui_fg3, s:cterm01, s:cterm0B ] +let s:N2 = [ s:gui_fg1, s:gui_bg2, s:cterm06, s:cterm02 ] +let s:N3 = [ s:gui_fg2, s:gui_bg1, s:cterm09, s:cterm01 ] +let g:airline#themes#active#palette.normal = airline#themes#generate_color_map(s:N1, s:N2, s:N3) + +let modified_group = [ s:gui_yel, '', s:cterm01, '' ] +let warning_group = [ s:gui_gre, s:gui_bg1, s:cterm01, s:cterm0B ] +let g:airline#themes#active#palette.normal_modified = { 'airline_c': modified_group } +let g:airline#themes#active#palette.normal.airline_warning = warning_group +let g:airline#themes#active#palette.normal_modified.airline_warning = warning_group +"let g:airline#themes#active#palette.normal.airline_error = error_group +"let g:airline#themes#active#palette.normal_modified.airline_error = error_group + + +let s:I1 = [ s:gui_bg0, s:gui_gre, s:cterm01, s:cterm0D ] +let s:I2 = [ s:gui_fg1, s:gui_bg2, s:cterm06, s:cterm02 ] +let s:I3 = [ s:gui_fg2, s:gui_bg1, s:cterm09, s:cterm01 ] +let g:airline#themes#active#palette.insert = airline#themes#generate_color_map(s:I1, s:I2, s:I3) + +let g:airline#themes#active#palette.insert.airline_warning = warning_group + + +let s:R1 = [ s:gui_bg0, s:gui_red, s:cterm01, s:cterm08 ] +let s:R2 = [ s:gui_fg1, s:gui_bg2, s:cterm06, s:cterm02 ] +let s:R3 = [ s:gui_fg2, s:gui_bg1, s:cterm09, s:cterm01 ] +let g:airline#themes#active#palette.replace = airline#themes#generate_color_map(s:R1, s:R2, s:R3) + +let g:airline#themes#active#palette.replace.airline_warning = warning_group + + +let s:V1 = [ s:gui_bg0, s:gui_yel, s:cterm01, s:cterm0E ] +let s:V2 = [ s:gui_fg1, s:gui_bg2, s:cterm06, s:cterm02 ] +let s:V3 = [ s:gui_fg2, s:gui_bg1, s:cterm09, s:cterm01 ] +let g:airline#themes#active#palette.visual = airline#themes#generate_color_map(s:V1, s:V2, s:V3) + +let g:airline#themes#active#palette.visual.airline_warning = warning_group + + +let s:IA1 = [ s:gui_fg2, s:gui_bg1, s:cterm05, s:cterm01 ] +let s:IA2 = [ s:gui_fg2, s:gui_bg1, s:cterm05, s:cterm01 ] +let s:IA3 = [ s:gui_fg2, s:gui_bg1, s:cterm05, s:cterm01 ] +let g:airline#themes#active#palette.inactive = airline#themes#generate_color_map(s:IA1, s:IA2, s:IA3) + +let g:airline#themes#active#palette.inactive.airline_warning = warning_group diff --git a/apps/vim-airline/hard-grassland-monobiome-light.statusline.vim b/apps/vim-airline/hard-grassland-monobiome-light.statusline.vim new file mode 100644 index 0000000..8f95be9 --- /dev/null +++ b/apps/vim-airline/hard-grassland-monobiome-light.statusline.vim @@ -0,0 +1,110 @@ +" ----------------------------------------------------------------------------- +" File: active.vim +" Description: SOLR color scheme for Airline +" Author: samgriesemer +" Source: https://github.com/samgriesemer/active +" ----------------------------------------------------------------------------- +" -> generated_color_map(s1, s2, s3) will generate colors for the airline suffixes: +" +" -> _a :: s1 +" -> _b :: s2 +" -> _c :: s3 +" -> _x :: s3 +" -> _y :: s2 +" -> _z :: s1 +" +" It simply generates a dictionary, and below we do this for several modes. + +let g:airline#themes#active#palette = {} +let s:gui_bg0 = "#d7e0dd" +let s:gui_bg1 = "#c7d0cc" +let s:gui_bg2 = "#b7c0bc" +let s:gui_bg3 = "#a8b0ad" +let s:gui_fg3 = "#424a47" +let s:gui_fg2 = "#353c3a" +let s:gui_fg1 = "#29302d" +let s:gui_fg0 = "#1d2321" +let s:gui_red = "#ca2e23" +let s:gui_ora = "#a45e00" +let s:gui_yel = "#79743d" +let s:gui_gre = "#42824e" +let s:gui_cya = "#42824e" +let s:gui_blu = "#456fbe" +let s:gui_vio = "#456fbe" +let s:gui_mag = "#ca2e23" + +let s:grey = "#6c7470" + +" Terminal color definitions +let s:cterm00 = 0 +let s:cterm01 = 10 +let s:cterm02 = 11 +let s:cterm03 = 8 +let s:cterm04 = 12 +let s:cterm05 = 7 +let s:cterm06 = 13 +let s:cterm07 = 15 +let s:cterm08 = 1 +let s:cterm09 = 9 +let s:cterm0A = 3 +let s:cterm0B = 2 +let s:cterm0C = 6 +let s:cterm0D = 4 +let s:cterm0E = 5 +let s:cterm0F = 14 + +let M0 = airline#themes#get_highlight('Title') +let accents_group = airline#themes#get_highlight('Statement') +let modified_group = [M0[0], '', M0[2], '', ''] + +let warning_group = airline#themes#get_highlight2(['Normal', 'bg'], ['Structure', 'fg']) +"let warning_group = airline#themes#get_highlight2(['Structure', 'fg'], ['Normal', 'bg']) +let error_group = airline#themes#get_highlight2(['Normal', 'bg'], ['WarningMsg', 'fg']) + + +" status line settings +" [ guifg guibg ctermfg ctermbg ] +let s:N1 = [ s:gui_bg0, s:gui_fg3, s:cterm01, s:cterm0B ] +let s:N2 = [ s:gui_fg1, s:gui_bg2, s:cterm06, s:cterm02 ] +let s:N3 = [ s:gui_fg2, s:gui_bg1, s:cterm09, s:cterm01 ] +let g:airline#themes#active#palette.normal = airline#themes#generate_color_map(s:N1, s:N2, s:N3) + +let modified_group = [ s:gui_yel, '', s:cterm01, '' ] +let warning_group = [ s:gui_gre, s:gui_bg1, s:cterm01, s:cterm0B ] +let g:airline#themes#active#palette.normal_modified = { 'airline_c': modified_group } +let g:airline#themes#active#palette.normal.airline_warning = warning_group +let g:airline#themes#active#palette.normal_modified.airline_warning = warning_group +"let g:airline#themes#active#palette.normal.airline_error = error_group +"let g:airline#themes#active#palette.normal_modified.airline_error = error_group + + +let s:I1 = [ s:gui_bg0, s:gui_gre, s:cterm01, s:cterm0D ] +let s:I2 = [ s:gui_fg1, s:gui_bg2, s:cterm06, s:cterm02 ] +let s:I3 = [ s:gui_fg2, s:gui_bg1, s:cterm09, s:cterm01 ] +let g:airline#themes#active#palette.insert = airline#themes#generate_color_map(s:I1, s:I2, s:I3) + +let g:airline#themes#active#palette.insert.airline_warning = warning_group + + +let s:R1 = [ s:gui_bg0, s:gui_red, s:cterm01, s:cterm08 ] +let s:R2 = [ s:gui_fg1, s:gui_bg2, s:cterm06, s:cterm02 ] +let s:R3 = [ s:gui_fg2, s:gui_bg1, s:cterm09, s:cterm01 ] +let g:airline#themes#active#palette.replace = airline#themes#generate_color_map(s:R1, s:R2, s:R3) + +let g:airline#themes#active#palette.replace.airline_warning = warning_group + + +let s:V1 = [ s:gui_bg0, s:gui_yel, s:cterm01, s:cterm0E ] +let s:V2 = [ s:gui_fg1, s:gui_bg2, s:cterm06, s:cterm02 ] +let s:V3 = [ s:gui_fg2, s:gui_bg1, s:cterm09, s:cterm01 ] +let g:airline#themes#active#palette.visual = airline#themes#generate_color_map(s:V1, s:V2, s:V3) + +let g:airline#themes#active#palette.visual.airline_warning = warning_group + + +let s:IA1 = [ s:gui_fg2, s:gui_bg1, s:cterm05, s:cterm01 ] +let s:IA2 = [ s:gui_fg2, s:gui_bg1, s:cterm05, s:cterm01 ] +let s:IA3 = [ s:gui_fg2, s:gui_bg1, s:cterm05, s:cterm01 ] +let g:airline#themes#active#palette.inactive = airline#themes#generate_color_map(s:IA1, s:IA2, s:IA3) + +let g:airline#themes#active#palette.inactive.airline_warning = warning_group diff --git a/apps/vim-airline/hard-monobiome-dark.statusline.vim b/apps/vim-airline/hard-monobiome-dark.statusline.vim new file mode 100644 index 0000000..f948d83 --- /dev/null +++ b/apps/vim-airline/hard-monobiome-dark.statusline.vim @@ -0,0 +1,110 @@ +" ----------------------------------------------------------------------------- +" File: active.vim +" Description: SOLR color scheme for Airline +" Author: samgriesemer +" Source: https://github.com/samgriesemer/active +" ----------------------------------------------------------------------------- +" -> generated_color_map(s1, s2, s3) will generate colors for the airline suffixes: +" +" -> _a :: s1 +" -> _b :: s2 +" -> _c :: s3 +" -> _x :: s3 +" -> _y :: s2 +" -> _z :: s1 +" +" It simply generates a dictionary, and below we do this for several modes. + +let g:airline#themes#active#palette = {} +let s:gui_bg0 = "#161616" +let s:gui_bg1 = "#222222" +let s:gui_bg2 = "#2e2e2e" +let s:gui_bg3 = "#3a3a3a" +let s:gui_fg3 = "#9e9e9e" +let s:gui_fg2 = "#aeaeae" +let s:gui_fg1 = "#bebebe" +let s:gui_fg0 = "#cecece" +let s:gui_red = "#dc4134" +let s:gui_ora = "#b86b05" +let s:gui_yel = "#888346" +let s:gui_gre = "#4f925a" +let s:gui_cya = "#4f925a" +let s:gui_blu = "#557ecc" +let s:gui_vio = "#557ecc" +let s:gui_mag = "#dc4134" + +let s:grey = "#717171" + +" Terminal color definitions +let s:cterm00 = 0 +let s:cterm01 = 10 +let s:cterm02 = 11 +let s:cterm03 = 8 +let s:cterm04 = 12 +let s:cterm05 = 7 +let s:cterm06 = 13 +let s:cterm07 = 15 +let s:cterm08 = 1 +let s:cterm09 = 9 +let s:cterm0A = 3 +let s:cterm0B = 2 +let s:cterm0C = 6 +let s:cterm0D = 4 +let s:cterm0E = 5 +let s:cterm0F = 14 + +let M0 = airline#themes#get_highlight('Title') +let accents_group = airline#themes#get_highlight('Statement') +let modified_group = [M0[0], '', M0[2], '', ''] + +let warning_group = airline#themes#get_highlight2(['Normal', 'bg'], ['Structure', 'fg']) +"let warning_group = airline#themes#get_highlight2(['Structure', 'fg'], ['Normal', 'bg']) +let error_group = airline#themes#get_highlight2(['Normal', 'bg'], ['WarningMsg', 'fg']) + + +" status line settings +" [ guifg guibg ctermfg ctermbg ] +let s:N1 = [ s:gui_bg0, s:gui_fg3, s:cterm01, s:cterm0B ] +let s:N2 = [ s:gui_fg1, s:gui_bg2, s:cterm06, s:cterm02 ] +let s:N3 = [ s:gui_fg2, s:gui_bg1, s:cterm09, s:cterm01 ] +let g:airline#themes#active#palette.normal = airline#themes#generate_color_map(s:N1, s:N2, s:N3) + +let modified_group = [ s:gui_yel, '', s:cterm01, '' ] +let warning_group = [ s:gui_gre, s:gui_bg1, s:cterm01, s:cterm0B ] +let g:airline#themes#active#palette.normal_modified = { 'airline_c': modified_group } +let g:airline#themes#active#palette.normal.airline_warning = warning_group +let g:airline#themes#active#palette.normal_modified.airline_warning = warning_group +"let g:airline#themes#active#palette.normal.airline_error = error_group +"let g:airline#themes#active#palette.normal_modified.airline_error = error_group + + +let s:I1 = [ s:gui_bg0, s:gui_gre, s:cterm01, s:cterm0D ] +let s:I2 = [ s:gui_fg1, s:gui_bg2, s:cterm06, s:cterm02 ] +let s:I3 = [ s:gui_fg2, s:gui_bg1, s:cterm09, s:cterm01 ] +let g:airline#themes#active#palette.insert = airline#themes#generate_color_map(s:I1, s:I2, s:I3) + +let g:airline#themes#active#palette.insert.airline_warning = warning_group + + +let s:R1 = [ s:gui_bg0, s:gui_red, s:cterm01, s:cterm08 ] +let s:R2 = [ s:gui_fg1, s:gui_bg2, s:cterm06, s:cterm02 ] +let s:R3 = [ s:gui_fg2, s:gui_bg1, s:cterm09, s:cterm01 ] +let g:airline#themes#active#palette.replace = airline#themes#generate_color_map(s:R1, s:R2, s:R3) + +let g:airline#themes#active#palette.replace.airline_warning = warning_group + + +let s:V1 = [ s:gui_bg0, s:gui_yel, s:cterm01, s:cterm0E ] +let s:V2 = [ s:gui_fg1, s:gui_bg2, s:cterm06, s:cterm02 ] +let s:V3 = [ s:gui_fg2, s:gui_bg1, s:cterm09, s:cterm01 ] +let g:airline#themes#active#palette.visual = airline#themes#generate_color_map(s:V1, s:V2, s:V3) + +let g:airline#themes#active#palette.visual.airline_warning = warning_group + + +let s:IA1 = [ s:gui_fg2, s:gui_bg1, s:cterm05, s:cterm01 ] +let s:IA2 = [ s:gui_fg2, s:gui_bg1, s:cterm05, s:cterm01 ] +let s:IA3 = [ s:gui_fg2, s:gui_bg1, s:cterm05, s:cterm01 ] +let g:airline#themes#active#palette.inactive = airline#themes#generate_color_map(s:IA1, s:IA2, s:IA3) + +let g:airline#themes#active#palette.inactive.airline_warning = warning_group diff --git a/apps/vim-airline/hard-monobiome-light.statusline.vim b/apps/vim-airline/hard-monobiome-light.statusline.vim new file mode 100644 index 0000000..701d8eb --- /dev/null +++ b/apps/vim-airline/hard-monobiome-light.statusline.vim @@ -0,0 +1,110 @@ +" ----------------------------------------------------------------------------- +" File: active.vim +" Description: SOLR color scheme for Airline +" Author: samgriesemer +" Source: https://github.com/samgriesemer/active +" ----------------------------------------------------------------------------- +" -> generated_color_map(s1, s2, s3) will generate colors for the airline suffixes: +" +" -> _a :: s1 +" -> _b :: s2 +" -> _c :: s3 +" -> _x :: s3 +" -> _y :: s2 +" -> _z :: s1 +" +" It simply generates a dictionary, and below we do this for several modes. + +let g:airline#themes#active#palette = {} +let s:gui_bg0 = "#dedede" +let s:gui_bg1 = "#cecece" +let s:gui_bg2 = "#bebebe" +let s:gui_bg3 = "#aeaeae" +let s:gui_fg3 = "#484848" +let s:gui_fg2 = "#3a3a3a" +let s:gui_fg1 = "#2e2e2e" +let s:gui_fg0 = "#222222" +let s:gui_red = "#ca2e23" +let s:gui_ora = "#a45e00" +let s:gui_yel = "#79743d" +let s:gui_gre = "#42824e" +let s:gui_cya = "#42824e" +let s:gui_blu = "#456fbe" +let s:gui_vio = "#456fbe" +let s:gui_mag = "#ca2e23" + +let s:grey = "#717171" + +" Terminal color definitions +let s:cterm00 = 0 +let s:cterm01 = 10 +let s:cterm02 = 11 +let s:cterm03 = 8 +let s:cterm04 = 12 +let s:cterm05 = 7 +let s:cterm06 = 13 +let s:cterm07 = 15 +let s:cterm08 = 1 +let s:cterm09 = 9 +let s:cterm0A = 3 +let s:cterm0B = 2 +let s:cterm0C = 6 +let s:cterm0D = 4 +let s:cterm0E = 5 +let s:cterm0F = 14 + +let M0 = airline#themes#get_highlight('Title') +let accents_group = airline#themes#get_highlight('Statement') +let modified_group = [M0[0], '', M0[2], '', ''] + +let warning_group = airline#themes#get_highlight2(['Normal', 'bg'], ['Structure', 'fg']) +"let warning_group = airline#themes#get_highlight2(['Structure', 'fg'], ['Normal', 'bg']) +let error_group = airline#themes#get_highlight2(['Normal', 'bg'], ['WarningMsg', 'fg']) + + +" status line settings +" [ guifg guibg ctermfg ctermbg ] +let s:N1 = [ s:gui_bg0, s:gui_fg3, s:cterm01, s:cterm0B ] +let s:N2 = [ s:gui_fg1, s:gui_bg2, s:cterm06, s:cterm02 ] +let s:N3 = [ s:gui_fg2, s:gui_bg1, s:cterm09, s:cterm01 ] +let g:airline#themes#active#palette.normal = airline#themes#generate_color_map(s:N1, s:N2, s:N3) + +let modified_group = [ s:gui_yel, '', s:cterm01, '' ] +let warning_group = [ s:gui_gre, s:gui_bg1, s:cterm01, s:cterm0B ] +let g:airline#themes#active#palette.normal_modified = { 'airline_c': modified_group } +let g:airline#themes#active#palette.normal.airline_warning = warning_group +let g:airline#themes#active#palette.normal_modified.airline_warning = warning_group +"let g:airline#themes#active#palette.normal.airline_error = error_group +"let g:airline#themes#active#palette.normal_modified.airline_error = error_group + + +let s:I1 = [ s:gui_bg0, s:gui_gre, s:cterm01, s:cterm0D ] +let s:I2 = [ s:gui_fg1, s:gui_bg2, s:cterm06, s:cterm02 ] +let s:I3 = [ s:gui_fg2, s:gui_bg1, s:cterm09, s:cterm01 ] +let g:airline#themes#active#palette.insert = airline#themes#generate_color_map(s:I1, s:I2, s:I3) + +let g:airline#themes#active#palette.insert.airline_warning = warning_group + + +let s:R1 = [ s:gui_bg0, s:gui_red, s:cterm01, s:cterm08 ] +let s:R2 = [ s:gui_fg1, s:gui_bg2, s:cterm06, s:cterm02 ] +let s:R3 = [ s:gui_fg2, s:gui_bg1, s:cterm09, s:cterm01 ] +let g:airline#themes#active#palette.replace = airline#themes#generate_color_map(s:R1, s:R2, s:R3) + +let g:airline#themes#active#palette.replace.airline_warning = warning_group + + +let s:V1 = [ s:gui_bg0, s:gui_yel, s:cterm01, s:cterm0E ] +let s:V2 = [ s:gui_fg1, s:gui_bg2, s:cterm06, s:cterm02 ] +let s:V3 = [ s:gui_fg2, s:gui_bg1, s:cterm09, s:cterm01 ] +let g:airline#themes#active#palette.visual = airline#themes#generate_color_map(s:V1, s:V2, s:V3) + +let g:airline#themes#active#palette.visual.airline_warning = warning_group + + +let s:IA1 = [ s:gui_fg2, s:gui_bg1, s:cterm05, s:cterm01 ] +let s:IA2 = [ s:gui_fg2, s:gui_bg1, s:cterm05, s:cterm01 ] +let s:IA3 = [ s:gui_fg2, s:gui_bg1, s:cterm05, s:cterm01 ] +let g:airline#themes#active#palette.inactive = airline#themes#generate_color_map(s:IA1, s:IA2, s:IA3) + +let g:airline#themes#active#palette.inactive.airline_warning = warning_group diff --git a/apps/vim-airline/hard-savanna-monobiome-dark.statusline.vim b/apps/vim-airline/hard-savanna-monobiome-dark.statusline.vim new file mode 100644 index 0000000..b4cf8aa --- /dev/null +++ b/apps/vim-airline/hard-savanna-monobiome-dark.statusline.vim @@ -0,0 +1,110 @@ +" ----------------------------------------------------------------------------- +" File: active.vim +" Description: SOLR color scheme for Airline +" Author: samgriesemer +" Source: https://github.com/samgriesemer/active +" ----------------------------------------------------------------------------- +" -> generated_color_map(s1, s2, s3) will generate colors for the airline suffixes: +" +" -> _a :: s1 +" -> _b :: s2 +" -> _c :: s3 +" -> _x :: s3 +" -> _y :: s2 +" -> _z :: s1 +" +" It simply generates a dictionary, and below we do this for several modes. + +let g:airline#themes#active#palette = {} +let s:gui_bg0 = "#181610" +let s:gui_bg1 = "#24211c" +let s:gui_bg2 = "#302e28" +let s:gui_bg3 = "#3d3a34" +let s:gui_fg3 = "#a19e97" +let s:gui_fg2 = "#b0aea6" +let s:gui_fg1 = "#c0bdb6" +let s:gui_fg0 = "#d0cec6" +let s:gui_red = "#dc4134" +let s:gui_ora = "#b86b05" +let s:gui_yel = "#888346" +let s:gui_gre = "#4f925a" +let s:gui_cya = "#4f925a" +let s:gui_blu = "#557ecc" +let s:gui_vio = "#557ecc" +let s:gui_mag = "#dc4134" + +let s:grey = "#74716a" + +" Terminal color definitions +let s:cterm00 = 0 +let s:cterm01 = 10 +let s:cterm02 = 11 +let s:cterm03 = 8 +let s:cterm04 = 12 +let s:cterm05 = 7 +let s:cterm06 = 13 +let s:cterm07 = 15 +let s:cterm08 = 1 +let s:cterm09 = 9 +let s:cterm0A = 3 +let s:cterm0B = 2 +let s:cterm0C = 6 +let s:cterm0D = 4 +let s:cterm0E = 5 +let s:cterm0F = 14 + +let M0 = airline#themes#get_highlight('Title') +let accents_group = airline#themes#get_highlight('Statement') +let modified_group = [M0[0], '', M0[2], '', ''] + +let warning_group = airline#themes#get_highlight2(['Normal', 'bg'], ['Structure', 'fg']) +"let warning_group = airline#themes#get_highlight2(['Structure', 'fg'], ['Normal', 'bg']) +let error_group = airline#themes#get_highlight2(['Normal', 'bg'], ['WarningMsg', 'fg']) + + +" status line settings +" [ guifg guibg ctermfg ctermbg ] +let s:N1 = [ s:gui_bg0, s:gui_fg3, s:cterm01, s:cterm0B ] +let s:N2 = [ s:gui_fg1, s:gui_bg2, s:cterm06, s:cterm02 ] +let s:N3 = [ s:gui_fg2, s:gui_bg1, s:cterm09, s:cterm01 ] +let g:airline#themes#active#palette.normal = airline#themes#generate_color_map(s:N1, s:N2, s:N3) + +let modified_group = [ s:gui_yel, '', s:cterm01, '' ] +let warning_group = [ s:gui_gre, s:gui_bg1, s:cterm01, s:cterm0B ] +let g:airline#themes#active#palette.normal_modified = { 'airline_c': modified_group } +let g:airline#themes#active#palette.normal.airline_warning = warning_group +let g:airline#themes#active#palette.normal_modified.airline_warning = warning_group +"let g:airline#themes#active#palette.normal.airline_error = error_group +"let g:airline#themes#active#palette.normal_modified.airline_error = error_group + + +let s:I1 = [ s:gui_bg0, s:gui_gre, s:cterm01, s:cterm0D ] +let s:I2 = [ s:gui_fg1, s:gui_bg2, s:cterm06, s:cterm02 ] +let s:I3 = [ s:gui_fg2, s:gui_bg1, s:cterm09, s:cterm01 ] +let g:airline#themes#active#palette.insert = airline#themes#generate_color_map(s:I1, s:I2, s:I3) + +let g:airline#themes#active#palette.insert.airline_warning = warning_group + + +let s:R1 = [ s:gui_bg0, s:gui_red, s:cterm01, s:cterm08 ] +let s:R2 = [ s:gui_fg1, s:gui_bg2, s:cterm06, s:cterm02 ] +let s:R3 = [ s:gui_fg2, s:gui_bg1, s:cterm09, s:cterm01 ] +let g:airline#themes#active#palette.replace = airline#themes#generate_color_map(s:R1, s:R2, s:R3) + +let g:airline#themes#active#palette.replace.airline_warning = warning_group + + +let s:V1 = [ s:gui_bg0, s:gui_yel, s:cterm01, s:cterm0E ] +let s:V2 = [ s:gui_fg1, s:gui_bg2, s:cterm06, s:cterm02 ] +let s:V3 = [ s:gui_fg2, s:gui_bg1, s:cterm09, s:cterm01 ] +let g:airline#themes#active#palette.visual = airline#themes#generate_color_map(s:V1, s:V2, s:V3) + +let g:airline#themes#active#palette.visual.airline_warning = warning_group + + +let s:IA1 = [ s:gui_fg2, s:gui_bg1, s:cterm05, s:cterm01 ] +let s:IA2 = [ s:gui_fg2, s:gui_bg1, s:cterm05, s:cterm01 ] +let s:IA3 = [ s:gui_fg2, s:gui_bg1, s:cterm05, s:cterm01 ] +let g:airline#themes#active#palette.inactive = airline#themes#generate_color_map(s:IA1, s:IA2, s:IA3) + +let g:airline#themes#active#palette.inactive.airline_warning = warning_group diff --git a/apps/vim-airline/hard-savanna-monobiome-light.statusline.vim b/apps/vim-airline/hard-savanna-monobiome-light.statusline.vim new file mode 100644 index 0000000..ccf47dd --- /dev/null +++ b/apps/vim-airline/hard-savanna-monobiome-light.statusline.vim @@ -0,0 +1,110 @@ +" ----------------------------------------------------------------------------- +" File: active.vim +" Description: SOLR color scheme for Airline +" Author: samgriesemer +" Source: https://github.com/samgriesemer/active +" ----------------------------------------------------------------------------- +" -> generated_color_map(s1, s2, s3) will generate colors for the airline suffixes: +" +" -> _a :: s1 +" -> _b :: s2 +" -> _c :: s3 +" -> _x :: s3 +" -> _y :: s2 +" -> _z :: s1 +" +" It simply generates a dictionary, and below we do this for several modes. + +let g:airline#themes#active#palette = {} +let s:gui_bg0 = "#e1ded6" +let s:gui_bg1 = "#d0cec6" +let s:gui_bg2 = "#c0bdb6" +let s:gui_bg3 = "#b0aea6" +let s:gui_fg3 = "#4a4841" +let s:gui_fg2 = "#3d3a34" +let s:gui_fg1 = "#302e28" +let s:gui_fg0 = "#24211c" +let s:gui_red = "#ca2e23" +let s:gui_ora = "#a45e00" +let s:gui_yel = "#79743d" +let s:gui_gre = "#42824e" +let s:gui_cya = "#42824e" +let s:gui_blu = "#456fbe" +let s:gui_vio = "#456fbe" +let s:gui_mag = "#ca2e23" + +let s:grey = "#74716a" + +" Terminal color definitions +let s:cterm00 = 0 +let s:cterm01 = 10 +let s:cterm02 = 11 +let s:cterm03 = 8 +let s:cterm04 = 12 +let s:cterm05 = 7 +let s:cterm06 = 13 +let s:cterm07 = 15 +let s:cterm08 = 1 +let s:cterm09 = 9 +let s:cterm0A = 3 +let s:cterm0B = 2 +let s:cterm0C = 6 +let s:cterm0D = 4 +let s:cterm0E = 5 +let s:cterm0F = 14 + +let M0 = airline#themes#get_highlight('Title') +let accents_group = airline#themes#get_highlight('Statement') +let modified_group = [M0[0], '', M0[2], '', ''] + +let warning_group = airline#themes#get_highlight2(['Normal', 'bg'], ['Structure', 'fg']) +"let warning_group = airline#themes#get_highlight2(['Structure', 'fg'], ['Normal', 'bg']) +let error_group = airline#themes#get_highlight2(['Normal', 'bg'], ['WarningMsg', 'fg']) + + +" status line settings +" [ guifg guibg ctermfg ctermbg ] +let s:N1 = [ s:gui_bg0, s:gui_fg3, s:cterm01, s:cterm0B ] +let s:N2 = [ s:gui_fg1, s:gui_bg2, s:cterm06, s:cterm02 ] +let s:N3 = [ s:gui_fg2, s:gui_bg1, s:cterm09, s:cterm01 ] +let g:airline#themes#active#palette.normal = airline#themes#generate_color_map(s:N1, s:N2, s:N3) + +let modified_group = [ s:gui_yel, '', s:cterm01, '' ] +let warning_group = [ s:gui_gre, s:gui_bg1, s:cterm01, s:cterm0B ] +let g:airline#themes#active#palette.normal_modified = { 'airline_c': modified_group } +let g:airline#themes#active#palette.normal.airline_warning = warning_group +let g:airline#themes#active#palette.normal_modified.airline_warning = warning_group +"let g:airline#themes#active#palette.normal.airline_error = error_group +"let g:airline#themes#active#palette.normal_modified.airline_error = error_group + + +let s:I1 = [ s:gui_bg0, s:gui_gre, s:cterm01, s:cterm0D ] +let s:I2 = [ s:gui_fg1, s:gui_bg2, s:cterm06, s:cterm02 ] +let s:I3 = [ s:gui_fg2, s:gui_bg1, s:cterm09, s:cterm01 ] +let g:airline#themes#active#palette.insert = airline#themes#generate_color_map(s:I1, s:I2, s:I3) + +let g:airline#themes#active#palette.insert.airline_warning = warning_group + + +let s:R1 = [ s:gui_bg0, s:gui_red, s:cterm01, s:cterm08 ] +let s:R2 = [ s:gui_fg1, s:gui_bg2, s:cterm06, s:cterm02 ] +let s:R3 = [ s:gui_fg2, s:gui_bg1, s:cterm09, s:cterm01 ] +let g:airline#themes#active#palette.replace = airline#themes#generate_color_map(s:R1, s:R2, s:R3) + +let g:airline#themes#active#palette.replace.airline_warning = warning_group + + +let s:V1 = [ s:gui_bg0, s:gui_yel, s:cterm01, s:cterm0E ] +let s:V2 = [ s:gui_fg1, s:gui_bg2, s:cterm06, s:cterm02 ] +let s:V3 = [ s:gui_fg2, s:gui_bg1, s:cterm09, s:cterm01 ] +let g:airline#themes#active#palette.visual = airline#themes#generate_color_map(s:V1, s:V2, s:V3) + +let g:airline#themes#active#palette.visual.airline_warning = warning_group + + +let s:IA1 = [ s:gui_fg2, s:gui_bg1, s:cterm05, s:cterm01 ] +let s:IA2 = [ s:gui_fg2, s:gui_bg1, s:cterm05, s:cterm01 ] +let s:IA3 = [ s:gui_fg2, s:gui_bg1, s:cterm05, s:cterm01 ] +let g:airline#themes#active#palette.inactive = airline#themes#generate_color_map(s:IA1, s:IA2, s:IA3) + +let g:airline#themes#active#palette.inactive.airline_warning = warning_group diff --git a/apps/vim-airline/hard-tundra-monobiome-dark.statusline.vim b/apps/vim-airline/hard-tundra-monobiome-dark.statusline.vim new file mode 100644 index 0000000..29a1176 --- /dev/null +++ b/apps/vim-airline/hard-tundra-monobiome-dark.statusline.vim @@ -0,0 +1,110 @@ +" ----------------------------------------------------------------------------- +" File: active.vim +" Description: SOLR color scheme for Airline +" Author: samgriesemer +" Source: https://github.com/samgriesemer/active +" ----------------------------------------------------------------------------- +" -> generated_color_map(s1, s2, s3) will generate colors for the airline suffixes: +" +" -> _a :: s1 +" -> _b :: s2 +" -> _c :: s3 +" -> _x :: s3 +" -> _y :: s2 +" -> _z :: s1 +" +" It simply generates a dictionary, and below we do this for several modes. + +let g:airline#themes#active#palette = {} +let s:gui_bg0 = "#12161b" +let s:gui_bg1 = "#1e2227" +let s:gui_bg2 = "#2a2e33" +let s:gui_bg3 = "#363b40" +let s:gui_fg3 = "#999fa5" +let s:gui_fg2 = "#a9afb5" +let s:gui_fg1 = "#b9bec5" +let s:gui_fg0 = "#c8ced5" +let s:gui_red = "#dc4134" +let s:gui_ora = "#b86b05" +let s:gui_yel = "#888346" +let s:gui_gre = "#4f925a" +let s:gui_cya = "#4f925a" +let s:gui_blu = "#557ecc" +let s:gui_vio = "#557ecc" +let s:gui_mag = "#dc4134" + +let s:grey = "#6d7278" + +" Terminal color definitions +let s:cterm00 = 0 +let s:cterm01 = 10 +let s:cterm02 = 11 +let s:cterm03 = 8 +let s:cterm04 = 12 +let s:cterm05 = 7 +let s:cterm06 = 13 +let s:cterm07 = 15 +let s:cterm08 = 1 +let s:cterm09 = 9 +let s:cterm0A = 3 +let s:cterm0B = 2 +let s:cterm0C = 6 +let s:cterm0D = 4 +let s:cterm0E = 5 +let s:cterm0F = 14 + +let M0 = airline#themes#get_highlight('Title') +let accents_group = airline#themes#get_highlight('Statement') +let modified_group = [M0[0], '', M0[2], '', ''] + +let warning_group = airline#themes#get_highlight2(['Normal', 'bg'], ['Structure', 'fg']) +"let warning_group = airline#themes#get_highlight2(['Structure', 'fg'], ['Normal', 'bg']) +let error_group = airline#themes#get_highlight2(['Normal', 'bg'], ['WarningMsg', 'fg']) + + +" status line settings +" [ guifg guibg ctermfg ctermbg ] +let s:N1 = [ s:gui_bg0, s:gui_fg3, s:cterm01, s:cterm0B ] +let s:N2 = [ s:gui_fg1, s:gui_bg2, s:cterm06, s:cterm02 ] +let s:N3 = [ s:gui_fg2, s:gui_bg1, s:cterm09, s:cterm01 ] +let g:airline#themes#active#palette.normal = airline#themes#generate_color_map(s:N1, s:N2, s:N3) + +let modified_group = [ s:gui_yel, '', s:cterm01, '' ] +let warning_group = [ s:gui_gre, s:gui_bg1, s:cterm01, s:cterm0B ] +let g:airline#themes#active#palette.normal_modified = { 'airline_c': modified_group } +let g:airline#themes#active#palette.normal.airline_warning = warning_group +let g:airline#themes#active#palette.normal_modified.airline_warning = warning_group +"let g:airline#themes#active#palette.normal.airline_error = error_group +"let g:airline#themes#active#palette.normal_modified.airline_error = error_group + + +let s:I1 = [ s:gui_bg0, s:gui_gre, s:cterm01, s:cterm0D ] +let s:I2 = [ s:gui_fg1, s:gui_bg2, s:cterm06, s:cterm02 ] +let s:I3 = [ s:gui_fg2, s:gui_bg1, s:cterm09, s:cterm01 ] +let g:airline#themes#active#palette.insert = airline#themes#generate_color_map(s:I1, s:I2, s:I3) + +let g:airline#themes#active#palette.insert.airline_warning = warning_group + + +let s:R1 = [ s:gui_bg0, s:gui_red, s:cterm01, s:cterm08 ] +let s:R2 = [ s:gui_fg1, s:gui_bg2, s:cterm06, s:cterm02 ] +let s:R3 = [ s:gui_fg2, s:gui_bg1, s:cterm09, s:cterm01 ] +let g:airline#themes#active#palette.replace = airline#themes#generate_color_map(s:R1, s:R2, s:R3) + +let g:airline#themes#active#palette.replace.airline_warning = warning_group + + +let s:V1 = [ s:gui_bg0, s:gui_yel, s:cterm01, s:cterm0E ] +let s:V2 = [ s:gui_fg1, s:gui_bg2, s:cterm06, s:cterm02 ] +let s:V3 = [ s:gui_fg2, s:gui_bg1, s:cterm09, s:cterm01 ] +let g:airline#themes#active#palette.visual = airline#themes#generate_color_map(s:V1, s:V2, s:V3) + +let g:airline#themes#active#palette.visual.airline_warning = warning_group + + +let s:IA1 = [ s:gui_fg2, s:gui_bg1, s:cterm05, s:cterm01 ] +let s:IA2 = [ s:gui_fg2, s:gui_bg1, s:cterm05, s:cterm01 ] +let s:IA3 = [ s:gui_fg2, s:gui_bg1, s:cterm05, s:cterm01 ] +let g:airline#themes#active#palette.inactive = airline#themes#generate_color_map(s:IA1, s:IA2, s:IA3) + +let g:airline#themes#active#palette.inactive.airline_warning = warning_group diff --git a/apps/vim-airline/hard-tundra-monobiome-light.statusline.vim b/apps/vim-airline/hard-tundra-monobiome-light.statusline.vim new file mode 100644 index 0000000..329eb60 --- /dev/null +++ b/apps/vim-airline/hard-tundra-monobiome-light.statusline.vim @@ -0,0 +1,110 @@ +" ----------------------------------------------------------------------------- +" File: active.vim +" Description: SOLR color scheme for Airline +" Author: samgriesemer +" Source: https://github.com/samgriesemer/active +" ----------------------------------------------------------------------------- +" -> generated_color_map(s1, s2, s3) will generate colors for the airline suffixes: +" +" -> _a :: s1 +" -> _b :: s2 +" -> _c :: s3 +" -> _x :: s3 +" -> _y :: s2 +" -> _z :: s1 +" +" It simply generates a dictionary, and below we do this for several modes. + +let g:airline#themes#active#palette = {} +let s:gui_bg0 = "#d9dfe5" +let s:gui_bg1 = "#c8ced5" +let s:gui_bg2 = "#b9bec5" +let s:gui_bg3 = "#a9afb5" +let s:gui_fg3 = "#43484e" +let s:gui_fg2 = "#363b40" +let s:gui_fg1 = "#2a2e33" +let s:gui_fg0 = "#1e2227" +let s:gui_red = "#ca2e23" +let s:gui_ora = "#a45e00" +let s:gui_yel = "#79743d" +let s:gui_gre = "#42824e" +let s:gui_cya = "#42824e" +let s:gui_blu = "#456fbe" +let s:gui_vio = "#456fbe" +let s:gui_mag = "#ca2e23" + +let s:grey = "#6d7278" + +" Terminal color definitions +let s:cterm00 = 0 +let s:cterm01 = 10 +let s:cterm02 = 11 +let s:cterm03 = 8 +let s:cterm04 = 12 +let s:cterm05 = 7 +let s:cterm06 = 13 +let s:cterm07 = 15 +let s:cterm08 = 1 +let s:cterm09 = 9 +let s:cterm0A = 3 +let s:cterm0B = 2 +let s:cterm0C = 6 +let s:cterm0D = 4 +let s:cterm0E = 5 +let s:cterm0F = 14 + +let M0 = airline#themes#get_highlight('Title') +let accents_group = airline#themes#get_highlight('Statement') +let modified_group = [M0[0], '', M0[2], '', ''] + +let warning_group = airline#themes#get_highlight2(['Normal', 'bg'], ['Structure', 'fg']) +"let warning_group = airline#themes#get_highlight2(['Structure', 'fg'], ['Normal', 'bg']) +let error_group = airline#themes#get_highlight2(['Normal', 'bg'], ['WarningMsg', 'fg']) + + +" status line settings +" [ guifg guibg ctermfg ctermbg ] +let s:N1 = [ s:gui_bg0, s:gui_fg3, s:cterm01, s:cterm0B ] +let s:N2 = [ s:gui_fg1, s:gui_bg2, s:cterm06, s:cterm02 ] +let s:N3 = [ s:gui_fg2, s:gui_bg1, s:cterm09, s:cterm01 ] +let g:airline#themes#active#palette.normal = airline#themes#generate_color_map(s:N1, s:N2, s:N3) + +let modified_group = [ s:gui_yel, '', s:cterm01, '' ] +let warning_group = [ s:gui_gre, s:gui_bg1, s:cterm01, s:cterm0B ] +let g:airline#themes#active#palette.normal_modified = { 'airline_c': modified_group } +let g:airline#themes#active#palette.normal.airline_warning = warning_group +let g:airline#themes#active#palette.normal_modified.airline_warning = warning_group +"let g:airline#themes#active#palette.normal.airline_error = error_group +"let g:airline#themes#active#palette.normal_modified.airline_error = error_group + + +let s:I1 = [ s:gui_bg0, s:gui_gre, s:cterm01, s:cterm0D ] +let s:I2 = [ s:gui_fg1, s:gui_bg2, s:cterm06, s:cterm02 ] +let s:I3 = [ s:gui_fg2, s:gui_bg1, s:cterm09, s:cterm01 ] +let g:airline#themes#active#palette.insert = airline#themes#generate_color_map(s:I1, s:I2, s:I3) + +let g:airline#themes#active#palette.insert.airline_warning = warning_group + + +let s:R1 = [ s:gui_bg0, s:gui_red, s:cterm01, s:cterm08 ] +let s:R2 = [ s:gui_fg1, s:gui_bg2, s:cterm06, s:cterm02 ] +let s:R3 = [ s:gui_fg2, s:gui_bg1, s:cterm09, s:cterm01 ] +let g:airline#themes#active#palette.replace = airline#themes#generate_color_map(s:R1, s:R2, s:R3) + +let g:airline#themes#active#palette.replace.airline_warning = warning_group + + +let s:V1 = [ s:gui_bg0, s:gui_yel, s:cterm01, s:cterm0E ] +let s:V2 = [ s:gui_fg1, s:gui_bg2, s:cterm06, s:cterm02 ] +let s:V3 = [ s:gui_fg2, s:gui_bg1, s:cterm09, s:cterm01 ] +let g:airline#themes#active#palette.visual = airline#themes#generate_color_map(s:V1, s:V2, s:V3) + +let g:airline#themes#active#palette.visual.airline_warning = warning_group + + +let s:IA1 = [ s:gui_fg2, s:gui_bg1, s:cterm05, s:cterm01 ] +let s:IA2 = [ s:gui_fg2, s:gui_bg1, s:cterm05, s:cterm01 ] +let s:IA3 = [ s:gui_fg2, s:gui_bg1, s:cterm05, s:cterm01 ] +let g:airline#themes#active#palette.inactive = airline#themes#generate_color_map(s:IA1, s:IA2, s:IA3) + +let g:airline#themes#active#palette.inactive.airline_warning = warning_group diff --git a/apps/vim-airline/monobiome-dark.statusline.vim b/apps/vim-airline/monobiome-dark.statusline.vim new file mode 100644 index 0000000..4366082 --- /dev/null +++ b/apps/vim-airline/monobiome-dark.statusline.vim @@ -0,0 +1,110 @@ +" ----------------------------------------------------------------------------- +" File: active.vim +" Description: SOLR color scheme for Airline +" Author: samgriesemer +" Source: https://github.com/samgriesemer/active +" ----------------------------------------------------------------------------- +" -> generated_color_map(s1, s2, s3) will generate colors for the airline suffixes: +" +" -> _a :: s1 +" -> _b :: s2 +" -> _c :: s3 +" -> _x :: s3 +" -> _y :: s2 +" -> _z :: s1 +" +" It simply generates a dictionary, and below we do this for several modes. + +let g:airline#themes#active#palette = {} +let s:gui_bg0 = "#222222" +let s:gui_bg1 = "#2e2e2e" +let s:gui_bg2 = "#3a3a3a" +let s:gui_bg3 = "#484848" +let s:gui_fg3 = "#aeaeae" +let s:gui_fg2 = "#bebebe" +let s:gui_fg1 = "#cecece" +let s:gui_fg0 = "#dedede" +let s:gui_red = "#e95949" +let s:gui_ora = "#ca791c" +let s:gui_yel = "#989250" +let s:gui_gre = "#5da268" +let s:gui_cya = "#5da268" +let s:gui_blu = "#658ed9" +let s:gui_vio = "#658ed9" +let s:gui_mag = "#e95949" + +let s:grey = "#808080" + +" Terminal color definitions +let s:cterm00 = 0 +let s:cterm01 = 10 +let s:cterm02 = 11 +let s:cterm03 = 8 +let s:cterm04 = 12 +let s:cterm05 = 7 +let s:cterm06 = 13 +let s:cterm07 = 15 +let s:cterm08 = 1 +let s:cterm09 = 9 +let s:cterm0A = 3 +let s:cterm0B = 2 +let s:cterm0C = 6 +let s:cterm0D = 4 +let s:cterm0E = 5 +let s:cterm0F = 14 + +let M0 = airline#themes#get_highlight('Title') +let accents_group = airline#themes#get_highlight('Statement') +let modified_group = [M0[0], '', M0[2], '', ''] + +let warning_group = airline#themes#get_highlight2(['Normal', 'bg'], ['Structure', 'fg']) +"let warning_group = airline#themes#get_highlight2(['Structure', 'fg'], ['Normal', 'bg']) +let error_group = airline#themes#get_highlight2(['Normal', 'bg'], ['WarningMsg', 'fg']) + + +" status line settings +" [ guifg guibg ctermfg ctermbg ] +let s:N1 = [ s:gui_bg0, s:gui_fg3, s:cterm01, s:cterm0B ] +let s:N2 = [ s:gui_fg1, s:gui_bg2, s:cterm06, s:cterm02 ] +let s:N3 = [ s:gui_fg2, s:gui_bg1, s:cterm09, s:cterm01 ] +let g:airline#themes#active#palette.normal = airline#themes#generate_color_map(s:N1, s:N2, s:N3) + +let modified_group = [ s:gui_yel, '', s:cterm01, '' ] +let warning_group = [ s:gui_gre, s:gui_bg1, s:cterm01, s:cterm0B ] +let g:airline#themes#active#palette.normal_modified = { 'airline_c': modified_group } +let g:airline#themes#active#palette.normal.airline_warning = warning_group +let g:airline#themes#active#palette.normal_modified.airline_warning = warning_group +"let g:airline#themes#active#palette.normal.airline_error = error_group +"let g:airline#themes#active#palette.normal_modified.airline_error = error_group + + +let s:I1 = [ s:gui_bg0, s:gui_gre, s:cterm01, s:cterm0D ] +let s:I2 = [ s:gui_fg1, s:gui_bg2, s:cterm06, s:cterm02 ] +let s:I3 = [ s:gui_fg2, s:gui_bg1, s:cterm09, s:cterm01 ] +let g:airline#themes#active#palette.insert = airline#themes#generate_color_map(s:I1, s:I2, s:I3) + +let g:airline#themes#active#palette.insert.airline_warning = warning_group + + +let s:R1 = [ s:gui_bg0, s:gui_red, s:cterm01, s:cterm08 ] +let s:R2 = [ s:gui_fg1, s:gui_bg2, s:cterm06, s:cterm02 ] +let s:R3 = [ s:gui_fg2, s:gui_bg1, s:cterm09, s:cterm01 ] +let g:airline#themes#active#palette.replace = airline#themes#generate_color_map(s:R1, s:R2, s:R3) + +let g:airline#themes#active#palette.replace.airline_warning = warning_group + + +let s:V1 = [ s:gui_bg0, s:gui_yel, s:cterm01, s:cterm0E ] +let s:V2 = [ s:gui_fg1, s:gui_bg2, s:cterm06, s:cterm02 ] +let s:V3 = [ s:gui_fg2, s:gui_bg1, s:cterm09, s:cterm01 ] +let g:airline#themes#active#palette.visual = airline#themes#generate_color_map(s:V1, s:V2, s:V3) + +let g:airline#themes#active#palette.visual.airline_warning = warning_group + + +let s:IA1 = [ s:gui_fg2, s:gui_bg1, s:cterm05, s:cterm01 ] +let s:IA2 = [ s:gui_fg2, s:gui_bg1, s:cterm05, s:cterm01 ] +let s:IA3 = [ s:gui_fg2, s:gui_bg1, s:cterm05, s:cterm01 ] +let g:airline#themes#active#palette.inactive = airline#themes#generate_color_map(s:IA1, s:IA2, s:IA3) + +let g:airline#themes#active#palette.inactive.airline_warning = warning_group diff --git a/apps/vim-airline/monobiome-light.statusline.vim b/apps/vim-airline/monobiome-light.statusline.vim new file mode 100644 index 0000000..49b681f --- /dev/null +++ b/apps/vim-airline/monobiome-light.statusline.vim @@ -0,0 +1,110 @@ +" ----------------------------------------------------------------------------- +" File: active.vim +" Description: SOLR color scheme for Airline +" Author: samgriesemer +" Source: https://github.com/samgriesemer/active +" ----------------------------------------------------------------------------- +" -> generated_color_map(s1, s2, s3) will generate colors for the airline suffixes: +" +" -> _a :: s1 +" -> _b :: s2 +" -> _c :: s3 +" -> _x :: s3 +" -> _y :: s2 +" -> _z :: s1 +" +" It simply generates a dictionary, and below we do this for several modes. + +let g:airline#themes#active#palette = {} +let s:gui_bg0 = "#cecece" +let s:gui_bg1 = "#bebebe" +let s:gui_bg2 = "#aeaeae" +let s:gui_bg3 = "#9e9e9e" +let s:gui_fg3 = "#3a3a3a" +let s:gui_fg2 = "#2e2e2e" +let s:gui_fg1 = "#222222" +let s:gui_fg0 = "#161616" +let s:gui_red = "#b52119" +let s:gui_ora = "#905201" +let s:gui_yel = "#6a6535" +let s:gui_gre = "#377242" +let s:gui_cya = "#377242" +let s:gui_blu = "#3860ac" +let s:gui_vio = "#3860ac" +let s:gui_mag = "#b52119" + +let s:grey = "#636363" + +" Terminal color definitions +let s:cterm00 = 0 +let s:cterm01 = 10 +let s:cterm02 = 11 +let s:cterm03 = 8 +let s:cterm04 = 12 +let s:cterm05 = 7 +let s:cterm06 = 13 +let s:cterm07 = 15 +let s:cterm08 = 1 +let s:cterm09 = 9 +let s:cterm0A = 3 +let s:cterm0B = 2 +let s:cterm0C = 6 +let s:cterm0D = 4 +let s:cterm0E = 5 +let s:cterm0F = 14 + +let M0 = airline#themes#get_highlight('Title') +let accents_group = airline#themes#get_highlight('Statement') +let modified_group = [M0[0], '', M0[2], '', ''] + +let warning_group = airline#themes#get_highlight2(['Normal', 'bg'], ['Structure', 'fg']) +"let warning_group = airline#themes#get_highlight2(['Structure', 'fg'], ['Normal', 'bg']) +let error_group = airline#themes#get_highlight2(['Normal', 'bg'], ['WarningMsg', 'fg']) + + +" status line settings +" [ guifg guibg ctermfg ctermbg ] +let s:N1 = [ s:gui_bg0, s:gui_fg3, s:cterm01, s:cterm0B ] +let s:N2 = [ s:gui_fg1, s:gui_bg2, s:cterm06, s:cterm02 ] +let s:N3 = [ s:gui_fg2, s:gui_bg1, s:cterm09, s:cterm01 ] +let g:airline#themes#active#palette.normal = airline#themes#generate_color_map(s:N1, s:N2, s:N3) + +let modified_group = [ s:gui_yel, '', s:cterm01, '' ] +let warning_group = [ s:gui_gre, s:gui_bg1, s:cterm01, s:cterm0B ] +let g:airline#themes#active#palette.normal_modified = { 'airline_c': modified_group } +let g:airline#themes#active#palette.normal.airline_warning = warning_group +let g:airline#themes#active#palette.normal_modified.airline_warning = warning_group +"let g:airline#themes#active#palette.normal.airline_error = error_group +"let g:airline#themes#active#palette.normal_modified.airline_error = error_group + + +let s:I1 = [ s:gui_bg0, s:gui_gre, s:cterm01, s:cterm0D ] +let s:I2 = [ s:gui_fg1, s:gui_bg2, s:cterm06, s:cterm02 ] +let s:I3 = [ s:gui_fg2, s:gui_bg1, s:cterm09, s:cterm01 ] +let g:airline#themes#active#palette.insert = airline#themes#generate_color_map(s:I1, s:I2, s:I3) + +let g:airline#themes#active#palette.insert.airline_warning = warning_group + + +let s:R1 = [ s:gui_bg0, s:gui_red, s:cterm01, s:cterm08 ] +let s:R2 = [ s:gui_fg1, s:gui_bg2, s:cterm06, s:cterm02 ] +let s:R3 = [ s:gui_fg2, s:gui_bg1, s:cterm09, s:cterm01 ] +let g:airline#themes#active#palette.replace = airline#themes#generate_color_map(s:R1, s:R2, s:R3) + +let g:airline#themes#active#palette.replace.airline_warning = warning_group + + +let s:V1 = [ s:gui_bg0, s:gui_yel, s:cterm01, s:cterm0E ] +let s:V2 = [ s:gui_fg1, s:gui_bg2, s:cterm06, s:cterm02 ] +let s:V3 = [ s:gui_fg2, s:gui_bg1, s:cterm09, s:cterm01 ] +let g:airline#themes#active#palette.visual = airline#themes#generate_color_map(s:V1, s:V2, s:V3) + +let g:airline#themes#active#palette.visual.airline_warning = warning_group + + +let s:IA1 = [ s:gui_fg2, s:gui_bg1, s:cterm05, s:cterm01 ] +let s:IA2 = [ s:gui_fg2, s:gui_bg1, s:cterm05, s:cterm01 ] +let s:IA3 = [ s:gui_fg2, s:gui_bg1, s:cterm05, s:cterm01 ] +let g:airline#themes#active#palette.inactive = airline#themes#generate_color_map(s:IA1, s:IA2, s:IA3) + +let g:airline#themes#active#palette.inactive.airline_warning = warning_group diff --git a/apps/vim-airline/savanna-monobiome-dark.statusline.vim b/apps/vim-airline/savanna-monobiome-dark.statusline.vim new file mode 100644 index 0000000..285b124 --- /dev/null +++ b/apps/vim-airline/savanna-monobiome-dark.statusline.vim @@ -0,0 +1,110 @@ +" ----------------------------------------------------------------------------- +" File: active.vim +" Description: SOLR color scheme for Airline +" Author: samgriesemer +" Source: https://github.com/samgriesemer/active +" ----------------------------------------------------------------------------- +" -> generated_color_map(s1, s2, s3) will generate colors for the airline suffixes: +" +" -> _a :: s1 +" -> _b :: s2 +" -> _c :: s3 +" -> _x :: s3 +" -> _y :: s2 +" -> _z :: s1 +" +" It simply generates a dictionary, and below we do this for several modes. + +let g:airline#themes#active#palette = {} +let s:gui_bg0 = "#24211c" +let s:gui_bg1 = "#302e28" +let s:gui_bg2 = "#3d3a34" +let s:gui_bg3 = "#4a4841" +let s:gui_fg3 = "#b0aea6" +let s:gui_fg2 = "#c0bdb6" +let s:gui_fg1 = "#d0cec6" +let s:gui_fg0 = "#e1ded6" +let s:gui_red = "#e95949" +let s:gui_ora = "#ca791c" +let s:gui_yel = "#989250" +let s:gui_gre = "#5da268" +let s:gui_cya = "#5da268" +let s:gui_blu = "#658ed9" +let s:gui_vio = "#658ed9" +let s:gui_mag = "#e95949" + +let s:grey = "#838079" + +" Terminal color definitions +let s:cterm00 = 0 +let s:cterm01 = 10 +let s:cterm02 = 11 +let s:cterm03 = 8 +let s:cterm04 = 12 +let s:cterm05 = 7 +let s:cterm06 = 13 +let s:cterm07 = 15 +let s:cterm08 = 1 +let s:cterm09 = 9 +let s:cterm0A = 3 +let s:cterm0B = 2 +let s:cterm0C = 6 +let s:cterm0D = 4 +let s:cterm0E = 5 +let s:cterm0F = 14 + +let M0 = airline#themes#get_highlight('Title') +let accents_group = airline#themes#get_highlight('Statement') +let modified_group = [M0[0], '', M0[2], '', ''] + +let warning_group = airline#themes#get_highlight2(['Normal', 'bg'], ['Structure', 'fg']) +"let warning_group = airline#themes#get_highlight2(['Structure', 'fg'], ['Normal', 'bg']) +let error_group = airline#themes#get_highlight2(['Normal', 'bg'], ['WarningMsg', 'fg']) + + +" status line settings +" [ guifg guibg ctermfg ctermbg ] +let s:N1 = [ s:gui_bg0, s:gui_fg3, s:cterm01, s:cterm0B ] +let s:N2 = [ s:gui_fg1, s:gui_bg2, s:cterm06, s:cterm02 ] +let s:N3 = [ s:gui_fg2, s:gui_bg1, s:cterm09, s:cterm01 ] +let g:airline#themes#active#palette.normal = airline#themes#generate_color_map(s:N1, s:N2, s:N3) + +let modified_group = [ s:gui_yel, '', s:cterm01, '' ] +let warning_group = [ s:gui_gre, s:gui_bg1, s:cterm01, s:cterm0B ] +let g:airline#themes#active#palette.normal_modified = { 'airline_c': modified_group } +let g:airline#themes#active#palette.normal.airline_warning = warning_group +let g:airline#themes#active#palette.normal_modified.airline_warning = warning_group +"let g:airline#themes#active#palette.normal.airline_error = error_group +"let g:airline#themes#active#palette.normal_modified.airline_error = error_group + + +let s:I1 = [ s:gui_bg0, s:gui_gre, s:cterm01, s:cterm0D ] +let s:I2 = [ s:gui_fg1, s:gui_bg2, s:cterm06, s:cterm02 ] +let s:I3 = [ s:gui_fg2, s:gui_bg1, s:cterm09, s:cterm01 ] +let g:airline#themes#active#palette.insert = airline#themes#generate_color_map(s:I1, s:I2, s:I3) + +let g:airline#themes#active#palette.insert.airline_warning = warning_group + + +let s:R1 = [ s:gui_bg0, s:gui_red, s:cterm01, s:cterm08 ] +let s:R2 = [ s:gui_fg1, s:gui_bg2, s:cterm06, s:cterm02 ] +let s:R3 = [ s:gui_fg2, s:gui_bg1, s:cterm09, s:cterm01 ] +let g:airline#themes#active#palette.replace = airline#themes#generate_color_map(s:R1, s:R2, s:R3) + +let g:airline#themes#active#palette.replace.airline_warning = warning_group + + +let s:V1 = [ s:gui_bg0, s:gui_yel, s:cterm01, s:cterm0E ] +let s:V2 = [ s:gui_fg1, s:gui_bg2, s:cterm06, s:cterm02 ] +let s:V3 = [ s:gui_fg2, s:gui_bg1, s:cterm09, s:cterm01 ] +let g:airline#themes#active#palette.visual = airline#themes#generate_color_map(s:V1, s:V2, s:V3) + +let g:airline#themes#active#palette.visual.airline_warning = warning_group + + +let s:IA1 = [ s:gui_fg2, s:gui_bg1, s:cterm05, s:cterm01 ] +let s:IA2 = [ s:gui_fg2, s:gui_bg1, s:cterm05, s:cterm01 ] +let s:IA3 = [ s:gui_fg2, s:gui_bg1, s:cterm05, s:cterm01 ] +let g:airline#themes#active#palette.inactive = airline#themes#generate_color_map(s:IA1, s:IA2, s:IA3) + +let g:airline#themes#active#palette.inactive.airline_warning = warning_group diff --git a/apps/vim-airline/savanna-monobiome-light.statusline.vim b/apps/vim-airline/savanna-monobiome-light.statusline.vim new file mode 100644 index 0000000..dbd6d61 --- /dev/null +++ b/apps/vim-airline/savanna-monobiome-light.statusline.vim @@ -0,0 +1,110 @@ +" ----------------------------------------------------------------------------- +" File: active.vim +" Description: SOLR color scheme for Airline +" Author: samgriesemer +" Source: https://github.com/samgriesemer/active +" ----------------------------------------------------------------------------- +" -> generated_color_map(s1, s2, s3) will generate colors for the airline suffixes: +" +" -> _a :: s1 +" -> _b :: s2 +" -> _c :: s3 +" -> _x :: s3 +" -> _y :: s2 +" -> _z :: s1 +" +" It simply generates a dictionary, and below we do this for several modes. + +let g:airline#themes#active#palette = {} +let s:gui_bg0 = "#d0cec6" +let s:gui_bg1 = "#c0bdb6" +let s:gui_bg2 = "#b0aea6" +let s:gui_bg3 = "#a19e97" +let s:gui_fg3 = "#3d3a34" +let s:gui_fg2 = "#302e28" +let s:gui_fg1 = "#24211c" +let s:gui_fg0 = "#181610" +let s:gui_red = "#b52119" +let s:gui_ora = "#905201" +let s:gui_yel = "#6a6535" +let s:gui_gre = "#377242" +let s:gui_cya = "#377242" +let s:gui_blu = "#3860ac" +let s:gui_vio = "#3860ac" +let s:gui_mag = "#b52119" + +let s:grey = "#66635c" + +" Terminal color definitions +let s:cterm00 = 0 +let s:cterm01 = 10 +let s:cterm02 = 11 +let s:cterm03 = 8 +let s:cterm04 = 12 +let s:cterm05 = 7 +let s:cterm06 = 13 +let s:cterm07 = 15 +let s:cterm08 = 1 +let s:cterm09 = 9 +let s:cterm0A = 3 +let s:cterm0B = 2 +let s:cterm0C = 6 +let s:cterm0D = 4 +let s:cterm0E = 5 +let s:cterm0F = 14 + +let M0 = airline#themes#get_highlight('Title') +let accents_group = airline#themes#get_highlight('Statement') +let modified_group = [M0[0], '', M0[2], '', ''] + +let warning_group = airline#themes#get_highlight2(['Normal', 'bg'], ['Structure', 'fg']) +"let warning_group = airline#themes#get_highlight2(['Structure', 'fg'], ['Normal', 'bg']) +let error_group = airline#themes#get_highlight2(['Normal', 'bg'], ['WarningMsg', 'fg']) + + +" status line settings +" [ guifg guibg ctermfg ctermbg ] +let s:N1 = [ s:gui_bg0, s:gui_fg3, s:cterm01, s:cterm0B ] +let s:N2 = [ s:gui_fg1, s:gui_bg2, s:cterm06, s:cterm02 ] +let s:N3 = [ s:gui_fg2, s:gui_bg1, s:cterm09, s:cterm01 ] +let g:airline#themes#active#palette.normal = airline#themes#generate_color_map(s:N1, s:N2, s:N3) + +let modified_group = [ s:gui_yel, '', s:cterm01, '' ] +let warning_group = [ s:gui_gre, s:gui_bg1, s:cterm01, s:cterm0B ] +let g:airline#themes#active#palette.normal_modified = { 'airline_c': modified_group } +let g:airline#themes#active#palette.normal.airline_warning = warning_group +let g:airline#themes#active#palette.normal_modified.airline_warning = warning_group +"let g:airline#themes#active#palette.normal.airline_error = error_group +"let g:airline#themes#active#palette.normal_modified.airline_error = error_group + + +let s:I1 = [ s:gui_bg0, s:gui_gre, s:cterm01, s:cterm0D ] +let s:I2 = [ s:gui_fg1, s:gui_bg2, s:cterm06, s:cterm02 ] +let s:I3 = [ s:gui_fg2, s:gui_bg1, s:cterm09, s:cterm01 ] +let g:airline#themes#active#palette.insert = airline#themes#generate_color_map(s:I1, s:I2, s:I3) + +let g:airline#themes#active#palette.insert.airline_warning = warning_group + + +let s:R1 = [ s:gui_bg0, s:gui_red, s:cterm01, s:cterm08 ] +let s:R2 = [ s:gui_fg1, s:gui_bg2, s:cterm06, s:cterm02 ] +let s:R3 = [ s:gui_fg2, s:gui_bg1, s:cterm09, s:cterm01 ] +let g:airline#themes#active#palette.replace = airline#themes#generate_color_map(s:R1, s:R2, s:R3) + +let g:airline#themes#active#palette.replace.airline_warning = warning_group + + +let s:V1 = [ s:gui_bg0, s:gui_yel, s:cterm01, s:cterm0E ] +let s:V2 = [ s:gui_fg1, s:gui_bg2, s:cterm06, s:cterm02 ] +let s:V3 = [ s:gui_fg2, s:gui_bg1, s:cterm09, s:cterm01 ] +let g:airline#themes#active#palette.visual = airline#themes#generate_color_map(s:V1, s:V2, s:V3) + +let g:airline#themes#active#palette.visual.airline_warning = warning_group + + +let s:IA1 = [ s:gui_fg2, s:gui_bg1, s:cterm05, s:cterm01 ] +let s:IA2 = [ s:gui_fg2, s:gui_bg1, s:cterm05, s:cterm01 ] +let s:IA3 = [ s:gui_fg2, s:gui_bg1, s:cterm05, s:cterm01 ] +let g:airline#themes#active#palette.inactive = airline#themes#generate_color_map(s:IA1, s:IA2, s:IA3) + +let g:airline#themes#active#palette.inactive.airline_warning = warning_group diff --git a/apps/vim-airline/soft-grassland-monobiome-dark.statusline.vim b/apps/vim-airline/soft-grassland-monobiome-dark.statusline.vim new file mode 100644 index 0000000..8fcbbe8 --- /dev/null +++ b/apps/vim-airline/soft-grassland-monobiome-dark.statusline.vim @@ -0,0 +1,110 @@ +" ----------------------------------------------------------------------------- +" File: active.vim +" Description: SOLR color scheme for Airline +" Author: samgriesemer +" Source: https://github.com/samgriesemer/active +" ----------------------------------------------------------------------------- +" -> generated_color_map(s1, s2, s3) will generate colors for the airline suffixes: +" +" -> _a :: s1 +" -> _b :: s2 +" -> _c :: s3 +" -> _x :: s3 +" -> _y :: s2 +" -> _z :: s1 +" +" It simply generates a dictionary, and below we do this for several modes. + +let g:airline#themes#active#palette = {} +let s:gui_bg0 = "#29302d" +let s:gui_bg1 = "#353c3a" +let s:gui_bg2 = "#424a47" +let s:gui_bg3 = "#505754" +let s:gui_fg3 = "#b7c0bc" +let s:gui_fg2 = "#c7d0cc" +let s:gui_fg1 = "#d7e0dd" +let s:gui_fg0 = "#e8f1ed" +let s:gui_red = "#f37060" +let s:gui_ora = "#da8934" +let s:gui_yel = "#a7a15f" +let s:gui_gre = "#6eb178" +let s:gui_cya = "#6eb178" +let s:gui_blu = "#799ee3" +let s:gui_vio = "#799ee3" +let s:gui_mag = "#f37060" + +let s:grey = "#89918e" + +" Terminal color definitions +let s:cterm00 = 0 +let s:cterm01 = 10 +let s:cterm02 = 11 +let s:cterm03 = 8 +let s:cterm04 = 12 +let s:cterm05 = 7 +let s:cterm06 = 13 +let s:cterm07 = 15 +let s:cterm08 = 1 +let s:cterm09 = 9 +let s:cterm0A = 3 +let s:cterm0B = 2 +let s:cterm0C = 6 +let s:cterm0D = 4 +let s:cterm0E = 5 +let s:cterm0F = 14 + +let M0 = airline#themes#get_highlight('Title') +let accents_group = airline#themes#get_highlight('Statement') +let modified_group = [M0[0], '', M0[2], '', ''] + +let warning_group = airline#themes#get_highlight2(['Normal', 'bg'], ['Structure', 'fg']) +"let warning_group = airline#themes#get_highlight2(['Structure', 'fg'], ['Normal', 'bg']) +let error_group = airline#themes#get_highlight2(['Normal', 'bg'], ['WarningMsg', 'fg']) + + +" status line settings +" [ guifg guibg ctermfg ctermbg ] +let s:N1 = [ s:gui_bg0, s:gui_fg3, s:cterm01, s:cterm0B ] +let s:N2 = [ s:gui_fg1, s:gui_bg2, s:cterm06, s:cterm02 ] +let s:N3 = [ s:gui_fg2, s:gui_bg1, s:cterm09, s:cterm01 ] +let g:airline#themes#active#palette.normal = airline#themes#generate_color_map(s:N1, s:N2, s:N3) + +let modified_group = [ s:gui_yel, '', s:cterm01, '' ] +let warning_group = [ s:gui_gre, s:gui_bg1, s:cterm01, s:cterm0B ] +let g:airline#themes#active#palette.normal_modified = { 'airline_c': modified_group } +let g:airline#themes#active#palette.normal.airline_warning = warning_group +let g:airline#themes#active#palette.normal_modified.airline_warning = warning_group +"let g:airline#themes#active#palette.normal.airline_error = error_group +"let g:airline#themes#active#palette.normal_modified.airline_error = error_group + + +let s:I1 = [ s:gui_bg0, s:gui_gre, s:cterm01, s:cterm0D ] +let s:I2 = [ s:gui_fg1, s:gui_bg2, s:cterm06, s:cterm02 ] +let s:I3 = [ s:gui_fg2, s:gui_bg1, s:cterm09, s:cterm01 ] +let g:airline#themes#active#palette.insert = airline#themes#generate_color_map(s:I1, s:I2, s:I3) + +let g:airline#themes#active#palette.insert.airline_warning = warning_group + + +let s:R1 = [ s:gui_bg0, s:gui_red, s:cterm01, s:cterm08 ] +let s:R2 = [ s:gui_fg1, s:gui_bg2, s:cterm06, s:cterm02 ] +let s:R3 = [ s:gui_fg2, s:gui_bg1, s:cterm09, s:cterm01 ] +let g:airline#themes#active#palette.replace = airline#themes#generate_color_map(s:R1, s:R2, s:R3) + +let g:airline#themes#active#palette.replace.airline_warning = warning_group + + +let s:V1 = [ s:gui_bg0, s:gui_yel, s:cterm01, s:cterm0E ] +let s:V2 = [ s:gui_fg1, s:gui_bg2, s:cterm06, s:cterm02 ] +let s:V3 = [ s:gui_fg2, s:gui_bg1, s:cterm09, s:cterm01 ] +let g:airline#themes#active#palette.visual = airline#themes#generate_color_map(s:V1, s:V2, s:V3) + +let g:airline#themes#active#palette.visual.airline_warning = warning_group + + +let s:IA1 = [ s:gui_fg2, s:gui_bg1, s:cterm05, s:cterm01 ] +let s:IA2 = [ s:gui_fg2, s:gui_bg1, s:cterm05, s:cterm01 ] +let s:IA3 = [ s:gui_fg2, s:gui_bg1, s:cterm05, s:cterm01 ] +let g:airline#themes#active#palette.inactive = airline#themes#generate_color_map(s:IA1, s:IA2, s:IA3) + +let g:airline#themes#active#palette.inactive.airline_warning = warning_group diff --git a/apps/vim-airline/soft-grassland-monobiome-light.statusline.vim b/apps/vim-airline/soft-grassland-monobiome-light.statusline.vim new file mode 100644 index 0000000..78760ed --- /dev/null +++ b/apps/vim-airline/soft-grassland-monobiome-light.statusline.vim @@ -0,0 +1,110 @@ +" ----------------------------------------------------------------------------- +" File: active.vim +" Description: SOLR color scheme for Airline +" Author: samgriesemer +" Source: https://github.com/samgriesemer/active +" ----------------------------------------------------------------------------- +" -> generated_color_map(s1, s2, s3) will generate colors for the airline suffixes: +" +" -> _a :: s1 +" -> _b :: s2 +" -> _c :: s3 +" -> _x :: s3 +" -> _y :: s2 +" -> _z :: s1 +" +" It simply generates a dictionary, and below we do this for several modes. + +let g:airline#themes#active#palette = {} +let s:gui_bg0 = "#b7c0bc" +let s:gui_bg1 = "#a8b0ad" +let s:gui_bg2 = "#98a19d" +let s:gui_bg3 = "#89918e" +let s:gui_fg3 = "#29302d" +let s:gui_fg2 = "#1d2321" +let s:gui_fg1 = "#111815" +let s:gui_fg0 = "#070d0a" +let s:gui_red = "#9d1912" +let s:gui_ora = "#7c4706" +let s:gui_yel = "#5b572e" +let s:gui_gre = "#2e6337" +let s:gui_cya = "#2e6337" +let s:gui_blu = "#2d5299" +let s:gui_vio = "#2d5299" +let s:gui_mag = "#9d1912" + +let s:grey = "#505754" + +" Terminal color definitions +let s:cterm00 = 0 +let s:cterm01 = 10 +let s:cterm02 = 11 +let s:cterm03 = 8 +let s:cterm04 = 12 +let s:cterm05 = 7 +let s:cterm06 = 13 +let s:cterm07 = 15 +let s:cterm08 = 1 +let s:cterm09 = 9 +let s:cterm0A = 3 +let s:cterm0B = 2 +let s:cterm0C = 6 +let s:cterm0D = 4 +let s:cterm0E = 5 +let s:cterm0F = 14 + +let M0 = airline#themes#get_highlight('Title') +let accents_group = airline#themes#get_highlight('Statement') +let modified_group = [M0[0], '', M0[2], '', ''] + +let warning_group = airline#themes#get_highlight2(['Normal', 'bg'], ['Structure', 'fg']) +"let warning_group = airline#themes#get_highlight2(['Structure', 'fg'], ['Normal', 'bg']) +let error_group = airline#themes#get_highlight2(['Normal', 'bg'], ['WarningMsg', 'fg']) + + +" status line settings +" [ guifg guibg ctermfg ctermbg ] +let s:N1 = [ s:gui_bg0, s:gui_fg3, s:cterm01, s:cterm0B ] +let s:N2 = [ s:gui_fg1, s:gui_bg2, s:cterm06, s:cterm02 ] +let s:N3 = [ s:gui_fg2, s:gui_bg1, s:cterm09, s:cterm01 ] +let g:airline#themes#active#palette.normal = airline#themes#generate_color_map(s:N1, s:N2, s:N3) + +let modified_group = [ s:gui_yel, '', s:cterm01, '' ] +let warning_group = [ s:gui_gre, s:gui_bg1, s:cterm01, s:cterm0B ] +let g:airline#themes#active#palette.normal_modified = { 'airline_c': modified_group } +let g:airline#themes#active#palette.normal.airline_warning = warning_group +let g:airline#themes#active#palette.normal_modified.airline_warning = warning_group +"let g:airline#themes#active#palette.normal.airline_error = error_group +"let g:airline#themes#active#palette.normal_modified.airline_error = error_group + + +let s:I1 = [ s:gui_bg0, s:gui_gre, s:cterm01, s:cterm0D ] +let s:I2 = [ s:gui_fg1, s:gui_bg2, s:cterm06, s:cterm02 ] +let s:I3 = [ s:gui_fg2, s:gui_bg1, s:cterm09, s:cterm01 ] +let g:airline#themes#active#palette.insert = airline#themes#generate_color_map(s:I1, s:I2, s:I3) + +let g:airline#themes#active#palette.insert.airline_warning = warning_group + + +let s:R1 = [ s:gui_bg0, s:gui_red, s:cterm01, s:cterm08 ] +let s:R2 = [ s:gui_fg1, s:gui_bg2, s:cterm06, s:cterm02 ] +let s:R3 = [ s:gui_fg2, s:gui_bg1, s:cterm09, s:cterm01 ] +let g:airline#themes#active#palette.replace = airline#themes#generate_color_map(s:R1, s:R2, s:R3) + +let g:airline#themes#active#palette.replace.airline_warning = warning_group + + +let s:V1 = [ s:gui_bg0, s:gui_yel, s:cterm01, s:cterm0E ] +let s:V2 = [ s:gui_fg1, s:gui_bg2, s:cterm06, s:cterm02 ] +let s:V3 = [ s:gui_fg2, s:gui_bg1, s:cterm09, s:cterm01 ] +let g:airline#themes#active#palette.visual = airline#themes#generate_color_map(s:V1, s:V2, s:V3) + +let g:airline#themes#active#palette.visual.airline_warning = warning_group + + +let s:IA1 = [ s:gui_fg2, s:gui_bg1, s:cterm05, s:cterm01 ] +let s:IA2 = [ s:gui_fg2, s:gui_bg1, s:cterm05, s:cterm01 ] +let s:IA3 = [ s:gui_fg2, s:gui_bg1, s:cterm05, s:cterm01 ] +let g:airline#themes#active#palette.inactive = airline#themes#generate_color_map(s:IA1, s:IA2, s:IA3) + +let g:airline#themes#active#palette.inactive.airline_warning = warning_group diff --git a/apps/vim-airline/soft-monobiome-dark.statusline.vim b/apps/vim-airline/soft-monobiome-dark.statusline.vim new file mode 100644 index 0000000..4dd69ab --- /dev/null +++ b/apps/vim-airline/soft-monobiome-dark.statusline.vim @@ -0,0 +1,110 @@ +" ----------------------------------------------------------------------------- +" File: active.vim +" Description: SOLR color scheme for Airline +" Author: samgriesemer +" Source: https://github.com/samgriesemer/active +" ----------------------------------------------------------------------------- +" -> generated_color_map(s1, s2, s3) will generate colors for the airline suffixes: +" +" -> _a :: s1 +" -> _b :: s2 +" -> _c :: s3 +" -> _x :: s3 +" -> _y :: s2 +" -> _z :: s1 +" +" It simply generates a dictionary, and below we do this for several modes. + +let g:airline#themes#active#palette = {} +let s:gui_bg0 = "#2e2e2e" +let s:gui_bg1 = "#3a3a3a" +let s:gui_bg2 = "#484848" +let s:gui_bg3 = "#555555" +let s:gui_fg3 = "#bebebe" +let s:gui_fg2 = "#cecece" +let s:gui_fg1 = "#dedede" +let s:gui_fg0 = "#eeeeee" +let s:gui_red = "#f37060" +let s:gui_ora = "#da8934" +let s:gui_yel = "#a7a15f" +let s:gui_gre = "#6eb178" +let s:gui_cya = "#6eb178" +let s:gui_blu = "#799ee3" +let s:gui_vio = "#799ee3" +let s:gui_mag = "#f37060" + +let s:grey = "#8f8f8f" + +" Terminal color definitions +let s:cterm00 = 0 +let s:cterm01 = 10 +let s:cterm02 = 11 +let s:cterm03 = 8 +let s:cterm04 = 12 +let s:cterm05 = 7 +let s:cterm06 = 13 +let s:cterm07 = 15 +let s:cterm08 = 1 +let s:cterm09 = 9 +let s:cterm0A = 3 +let s:cterm0B = 2 +let s:cterm0C = 6 +let s:cterm0D = 4 +let s:cterm0E = 5 +let s:cterm0F = 14 + +let M0 = airline#themes#get_highlight('Title') +let accents_group = airline#themes#get_highlight('Statement') +let modified_group = [M0[0], '', M0[2], '', ''] + +let warning_group = airline#themes#get_highlight2(['Normal', 'bg'], ['Structure', 'fg']) +"let warning_group = airline#themes#get_highlight2(['Structure', 'fg'], ['Normal', 'bg']) +let error_group = airline#themes#get_highlight2(['Normal', 'bg'], ['WarningMsg', 'fg']) + + +" status line settings +" [ guifg guibg ctermfg ctermbg ] +let s:N1 = [ s:gui_bg0, s:gui_fg3, s:cterm01, s:cterm0B ] +let s:N2 = [ s:gui_fg1, s:gui_bg2, s:cterm06, s:cterm02 ] +let s:N3 = [ s:gui_fg2, s:gui_bg1, s:cterm09, s:cterm01 ] +let g:airline#themes#active#palette.normal = airline#themes#generate_color_map(s:N1, s:N2, s:N3) + +let modified_group = [ s:gui_yel, '', s:cterm01, '' ] +let warning_group = [ s:gui_gre, s:gui_bg1, s:cterm01, s:cterm0B ] +let g:airline#themes#active#palette.normal_modified = { 'airline_c': modified_group } +let g:airline#themes#active#palette.normal.airline_warning = warning_group +let g:airline#themes#active#palette.normal_modified.airline_warning = warning_group +"let g:airline#themes#active#palette.normal.airline_error = error_group +"let g:airline#themes#active#palette.normal_modified.airline_error = error_group + + +let s:I1 = [ s:gui_bg0, s:gui_gre, s:cterm01, s:cterm0D ] +let s:I2 = [ s:gui_fg1, s:gui_bg2, s:cterm06, s:cterm02 ] +let s:I3 = [ s:gui_fg2, s:gui_bg1, s:cterm09, s:cterm01 ] +let g:airline#themes#active#palette.insert = airline#themes#generate_color_map(s:I1, s:I2, s:I3) + +let g:airline#themes#active#palette.insert.airline_warning = warning_group + + +let s:R1 = [ s:gui_bg0, s:gui_red, s:cterm01, s:cterm08 ] +let s:R2 = [ s:gui_fg1, s:gui_bg2, s:cterm06, s:cterm02 ] +let s:R3 = [ s:gui_fg2, s:gui_bg1, s:cterm09, s:cterm01 ] +let g:airline#themes#active#palette.replace = airline#themes#generate_color_map(s:R1, s:R2, s:R3) + +let g:airline#themes#active#palette.replace.airline_warning = warning_group + + +let s:V1 = [ s:gui_bg0, s:gui_yel, s:cterm01, s:cterm0E ] +let s:V2 = [ s:gui_fg1, s:gui_bg2, s:cterm06, s:cterm02 ] +let s:V3 = [ s:gui_fg2, s:gui_bg1, s:cterm09, s:cterm01 ] +let g:airline#themes#active#palette.visual = airline#themes#generate_color_map(s:V1, s:V2, s:V3) + +let g:airline#themes#active#palette.visual.airline_warning = warning_group + + +let s:IA1 = [ s:gui_fg2, s:gui_bg1, s:cterm05, s:cterm01 ] +let s:IA2 = [ s:gui_fg2, s:gui_bg1, s:cterm05, s:cterm01 ] +let s:IA3 = [ s:gui_fg2, s:gui_bg1, s:cterm05, s:cterm01 ] +let g:airline#themes#active#palette.inactive = airline#themes#generate_color_map(s:IA1, s:IA2, s:IA3) + +let g:airline#themes#active#palette.inactive.airline_warning = warning_group diff --git a/apps/vim-airline/soft-monobiome-light.statusline.vim b/apps/vim-airline/soft-monobiome-light.statusline.vim new file mode 100644 index 0000000..58a0d43 --- /dev/null +++ b/apps/vim-airline/soft-monobiome-light.statusline.vim @@ -0,0 +1,110 @@ +" ----------------------------------------------------------------------------- +" File: active.vim +" Description: SOLR color scheme for Airline +" Author: samgriesemer +" Source: https://github.com/samgriesemer/active +" ----------------------------------------------------------------------------- +" -> generated_color_map(s1, s2, s3) will generate colors for the airline suffixes: +" +" -> _a :: s1 +" -> _b :: s2 +" -> _c :: s3 +" -> _x :: s3 +" -> _y :: s2 +" -> _z :: s1 +" +" It simply generates a dictionary, and below we do this for several modes. + +let g:airline#themes#active#palette = {} +let s:gui_bg0 = "#bebebe" +let s:gui_bg1 = "#aeaeae" +let s:gui_bg2 = "#9e9e9e" +let s:gui_bg3 = "#8f8f8f" +let s:gui_fg3 = "#2e2e2e" +let s:gui_fg2 = "#222222" +let s:gui_fg1 = "#161616" +let s:gui_fg0 = "#0b0b0b" +let s:gui_red = "#9d1912" +let s:gui_ora = "#7c4706" +let s:gui_yel = "#5b572e" +let s:gui_gre = "#2e6337" +let s:gui_cya = "#2e6337" +let s:gui_blu = "#2d5299" +let s:gui_vio = "#2d5299" +let s:gui_mag = "#9d1912" + +let s:grey = "#555555" + +" Terminal color definitions +let s:cterm00 = 0 +let s:cterm01 = 10 +let s:cterm02 = 11 +let s:cterm03 = 8 +let s:cterm04 = 12 +let s:cterm05 = 7 +let s:cterm06 = 13 +let s:cterm07 = 15 +let s:cterm08 = 1 +let s:cterm09 = 9 +let s:cterm0A = 3 +let s:cterm0B = 2 +let s:cterm0C = 6 +let s:cterm0D = 4 +let s:cterm0E = 5 +let s:cterm0F = 14 + +let M0 = airline#themes#get_highlight('Title') +let accents_group = airline#themes#get_highlight('Statement') +let modified_group = [M0[0], '', M0[2], '', ''] + +let warning_group = airline#themes#get_highlight2(['Normal', 'bg'], ['Structure', 'fg']) +"let warning_group = airline#themes#get_highlight2(['Structure', 'fg'], ['Normal', 'bg']) +let error_group = airline#themes#get_highlight2(['Normal', 'bg'], ['WarningMsg', 'fg']) + + +" status line settings +" [ guifg guibg ctermfg ctermbg ] +let s:N1 = [ s:gui_bg0, s:gui_fg3, s:cterm01, s:cterm0B ] +let s:N2 = [ s:gui_fg1, s:gui_bg2, s:cterm06, s:cterm02 ] +let s:N3 = [ s:gui_fg2, s:gui_bg1, s:cterm09, s:cterm01 ] +let g:airline#themes#active#palette.normal = airline#themes#generate_color_map(s:N1, s:N2, s:N3) + +let modified_group = [ s:gui_yel, '', s:cterm01, '' ] +let warning_group = [ s:gui_gre, s:gui_bg1, s:cterm01, s:cterm0B ] +let g:airline#themes#active#palette.normal_modified = { 'airline_c': modified_group } +let g:airline#themes#active#palette.normal.airline_warning = warning_group +let g:airline#themes#active#palette.normal_modified.airline_warning = warning_group +"let g:airline#themes#active#palette.normal.airline_error = error_group +"let g:airline#themes#active#palette.normal_modified.airline_error = error_group + + +let s:I1 = [ s:gui_bg0, s:gui_gre, s:cterm01, s:cterm0D ] +let s:I2 = [ s:gui_fg1, s:gui_bg2, s:cterm06, s:cterm02 ] +let s:I3 = [ s:gui_fg2, s:gui_bg1, s:cterm09, s:cterm01 ] +let g:airline#themes#active#palette.insert = airline#themes#generate_color_map(s:I1, s:I2, s:I3) + +let g:airline#themes#active#palette.insert.airline_warning = warning_group + + +let s:R1 = [ s:gui_bg0, s:gui_red, s:cterm01, s:cterm08 ] +let s:R2 = [ s:gui_fg1, s:gui_bg2, s:cterm06, s:cterm02 ] +let s:R3 = [ s:gui_fg2, s:gui_bg1, s:cterm09, s:cterm01 ] +let g:airline#themes#active#palette.replace = airline#themes#generate_color_map(s:R1, s:R2, s:R3) + +let g:airline#themes#active#palette.replace.airline_warning = warning_group + + +let s:V1 = [ s:gui_bg0, s:gui_yel, s:cterm01, s:cterm0E ] +let s:V2 = [ s:gui_fg1, s:gui_bg2, s:cterm06, s:cterm02 ] +let s:V3 = [ s:gui_fg2, s:gui_bg1, s:cterm09, s:cterm01 ] +let g:airline#themes#active#palette.visual = airline#themes#generate_color_map(s:V1, s:V2, s:V3) + +let g:airline#themes#active#palette.visual.airline_warning = warning_group + + +let s:IA1 = [ s:gui_fg2, s:gui_bg1, s:cterm05, s:cterm01 ] +let s:IA2 = [ s:gui_fg2, s:gui_bg1, s:cterm05, s:cterm01 ] +let s:IA3 = [ s:gui_fg2, s:gui_bg1, s:cterm05, s:cterm01 ] +let g:airline#themes#active#palette.inactive = airline#themes#generate_color_map(s:IA1, s:IA2, s:IA3) + +let g:airline#themes#active#palette.inactive.airline_warning = warning_group diff --git a/apps/vim-airline/soft-savanna-monobiome-dark.statusline.vim b/apps/vim-airline/soft-savanna-monobiome-dark.statusline.vim new file mode 100644 index 0000000..0064b0a --- /dev/null +++ b/apps/vim-airline/soft-savanna-monobiome-dark.statusline.vim @@ -0,0 +1,110 @@ +" ----------------------------------------------------------------------------- +" File: active.vim +" Description: SOLR color scheme for Airline +" Author: samgriesemer +" Source: https://github.com/samgriesemer/active +" ----------------------------------------------------------------------------- +" -> generated_color_map(s1, s2, s3) will generate colors for the airline suffixes: +" +" -> _a :: s1 +" -> _b :: s2 +" -> _c :: s3 +" -> _x :: s3 +" -> _y :: s2 +" -> _z :: s1 +" +" It simply generates a dictionary, and below we do this for several modes. + +let g:airline#themes#active#palette = {} +let s:gui_bg0 = "#302e28" +let s:gui_bg1 = "#3d3a34" +let s:gui_bg2 = "#4a4841" +let s:gui_bg3 = "#58554e" +let s:gui_fg3 = "#c0bdb6" +let s:gui_fg2 = "#d0cec6" +let s:gui_fg1 = "#e1ded6" +let s:gui_fg0 = "#f1eee6" +let s:gui_red = "#f37060" +let s:gui_ora = "#da8934" +let s:gui_yel = "#a7a15f" +let s:gui_gre = "#6eb178" +let s:gui_cya = "#6eb178" +let s:gui_blu = "#799ee3" +let s:gui_vio = "#799ee3" +let s:gui_mag = "#f37060" + +let s:grey = "#928f88" + +" Terminal color definitions +let s:cterm00 = 0 +let s:cterm01 = 10 +let s:cterm02 = 11 +let s:cterm03 = 8 +let s:cterm04 = 12 +let s:cterm05 = 7 +let s:cterm06 = 13 +let s:cterm07 = 15 +let s:cterm08 = 1 +let s:cterm09 = 9 +let s:cterm0A = 3 +let s:cterm0B = 2 +let s:cterm0C = 6 +let s:cterm0D = 4 +let s:cterm0E = 5 +let s:cterm0F = 14 + +let M0 = airline#themes#get_highlight('Title') +let accents_group = airline#themes#get_highlight('Statement') +let modified_group = [M0[0], '', M0[2], '', ''] + +let warning_group = airline#themes#get_highlight2(['Normal', 'bg'], ['Structure', 'fg']) +"let warning_group = airline#themes#get_highlight2(['Structure', 'fg'], ['Normal', 'bg']) +let error_group = airline#themes#get_highlight2(['Normal', 'bg'], ['WarningMsg', 'fg']) + + +" status line settings +" [ guifg guibg ctermfg ctermbg ] +let s:N1 = [ s:gui_bg0, s:gui_fg3, s:cterm01, s:cterm0B ] +let s:N2 = [ s:gui_fg1, s:gui_bg2, s:cterm06, s:cterm02 ] +let s:N3 = [ s:gui_fg2, s:gui_bg1, s:cterm09, s:cterm01 ] +let g:airline#themes#active#palette.normal = airline#themes#generate_color_map(s:N1, s:N2, s:N3) + +let modified_group = [ s:gui_yel, '', s:cterm01, '' ] +let warning_group = [ s:gui_gre, s:gui_bg1, s:cterm01, s:cterm0B ] +let g:airline#themes#active#palette.normal_modified = { 'airline_c': modified_group } +let g:airline#themes#active#palette.normal.airline_warning = warning_group +let g:airline#themes#active#palette.normal_modified.airline_warning = warning_group +"let g:airline#themes#active#palette.normal.airline_error = error_group +"let g:airline#themes#active#palette.normal_modified.airline_error = error_group + + +let s:I1 = [ s:gui_bg0, s:gui_gre, s:cterm01, s:cterm0D ] +let s:I2 = [ s:gui_fg1, s:gui_bg2, s:cterm06, s:cterm02 ] +let s:I3 = [ s:gui_fg2, s:gui_bg1, s:cterm09, s:cterm01 ] +let g:airline#themes#active#palette.insert = airline#themes#generate_color_map(s:I1, s:I2, s:I3) + +let g:airline#themes#active#palette.insert.airline_warning = warning_group + + +let s:R1 = [ s:gui_bg0, s:gui_red, s:cterm01, s:cterm08 ] +let s:R2 = [ s:gui_fg1, s:gui_bg2, s:cterm06, s:cterm02 ] +let s:R3 = [ s:gui_fg2, s:gui_bg1, s:cterm09, s:cterm01 ] +let g:airline#themes#active#palette.replace = airline#themes#generate_color_map(s:R1, s:R2, s:R3) + +let g:airline#themes#active#palette.replace.airline_warning = warning_group + + +let s:V1 = [ s:gui_bg0, s:gui_yel, s:cterm01, s:cterm0E ] +let s:V2 = [ s:gui_fg1, s:gui_bg2, s:cterm06, s:cterm02 ] +let s:V3 = [ s:gui_fg2, s:gui_bg1, s:cterm09, s:cterm01 ] +let g:airline#themes#active#palette.visual = airline#themes#generate_color_map(s:V1, s:V2, s:V3) + +let g:airline#themes#active#palette.visual.airline_warning = warning_group + + +let s:IA1 = [ s:gui_fg2, s:gui_bg1, s:cterm05, s:cterm01 ] +let s:IA2 = [ s:gui_fg2, s:gui_bg1, s:cterm05, s:cterm01 ] +let s:IA3 = [ s:gui_fg2, s:gui_bg1, s:cterm05, s:cterm01 ] +let g:airline#themes#active#palette.inactive = airline#themes#generate_color_map(s:IA1, s:IA2, s:IA3) + +let g:airline#themes#active#palette.inactive.airline_warning = warning_group diff --git a/apps/vim-airline/soft-savanna-monobiome-light.statusline.vim b/apps/vim-airline/soft-savanna-monobiome-light.statusline.vim new file mode 100644 index 0000000..7cf355f --- /dev/null +++ b/apps/vim-airline/soft-savanna-monobiome-light.statusline.vim @@ -0,0 +1,110 @@ +" ----------------------------------------------------------------------------- +" File: active.vim +" Description: SOLR color scheme for Airline +" Author: samgriesemer +" Source: https://github.com/samgriesemer/active +" ----------------------------------------------------------------------------- +" -> generated_color_map(s1, s2, s3) will generate colors for the airline suffixes: +" +" -> _a :: s1 +" -> _b :: s2 +" -> _c :: s3 +" -> _x :: s3 +" -> _y :: s2 +" -> _z :: s1 +" +" It simply generates a dictionary, and below we do this for several modes. + +let g:airline#themes#active#palette = {} +let s:gui_bg0 = "#c0bdb6" +let s:gui_bg1 = "#b0aea6" +let s:gui_bg2 = "#a19e97" +let s:gui_bg3 = "#928f88" +let s:gui_fg3 = "#302e28" +let s:gui_fg2 = "#24211c" +let s:gui_fg1 = "#181610" +let s:gui_fg0 = "#0d0b06" +let s:gui_red = "#9d1912" +let s:gui_ora = "#7c4706" +let s:gui_yel = "#5b572e" +let s:gui_gre = "#2e6337" +let s:gui_cya = "#2e6337" +let s:gui_blu = "#2d5299" +let s:gui_vio = "#2d5299" +let s:gui_mag = "#9d1912" + +let s:grey = "#58554e" + +" Terminal color definitions +let s:cterm00 = 0 +let s:cterm01 = 10 +let s:cterm02 = 11 +let s:cterm03 = 8 +let s:cterm04 = 12 +let s:cterm05 = 7 +let s:cterm06 = 13 +let s:cterm07 = 15 +let s:cterm08 = 1 +let s:cterm09 = 9 +let s:cterm0A = 3 +let s:cterm0B = 2 +let s:cterm0C = 6 +let s:cterm0D = 4 +let s:cterm0E = 5 +let s:cterm0F = 14 + +let M0 = airline#themes#get_highlight('Title') +let accents_group = airline#themes#get_highlight('Statement') +let modified_group = [M0[0], '', M0[2], '', ''] + +let warning_group = airline#themes#get_highlight2(['Normal', 'bg'], ['Structure', 'fg']) +"let warning_group = airline#themes#get_highlight2(['Structure', 'fg'], ['Normal', 'bg']) +let error_group = airline#themes#get_highlight2(['Normal', 'bg'], ['WarningMsg', 'fg']) + + +" status line settings +" [ guifg guibg ctermfg ctermbg ] +let s:N1 = [ s:gui_bg0, s:gui_fg3, s:cterm01, s:cterm0B ] +let s:N2 = [ s:gui_fg1, s:gui_bg2, s:cterm06, s:cterm02 ] +let s:N3 = [ s:gui_fg2, s:gui_bg1, s:cterm09, s:cterm01 ] +let g:airline#themes#active#palette.normal = airline#themes#generate_color_map(s:N1, s:N2, s:N3) + +let modified_group = [ s:gui_yel, '', s:cterm01, '' ] +let warning_group = [ s:gui_gre, s:gui_bg1, s:cterm01, s:cterm0B ] +let g:airline#themes#active#palette.normal_modified = { 'airline_c': modified_group } +let g:airline#themes#active#palette.normal.airline_warning = warning_group +let g:airline#themes#active#palette.normal_modified.airline_warning = warning_group +"let g:airline#themes#active#palette.normal.airline_error = error_group +"let g:airline#themes#active#palette.normal_modified.airline_error = error_group + + +let s:I1 = [ s:gui_bg0, s:gui_gre, s:cterm01, s:cterm0D ] +let s:I2 = [ s:gui_fg1, s:gui_bg2, s:cterm06, s:cterm02 ] +let s:I3 = [ s:gui_fg2, s:gui_bg1, s:cterm09, s:cterm01 ] +let g:airline#themes#active#palette.insert = airline#themes#generate_color_map(s:I1, s:I2, s:I3) + +let g:airline#themes#active#palette.insert.airline_warning = warning_group + + +let s:R1 = [ s:gui_bg0, s:gui_red, s:cterm01, s:cterm08 ] +let s:R2 = [ s:gui_fg1, s:gui_bg2, s:cterm06, s:cterm02 ] +let s:R3 = [ s:gui_fg2, s:gui_bg1, s:cterm09, s:cterm01 ] +let g:airline#themes#active#palette.replace = airline#themes#generate_color_map(s:R1, s:R2, s:R3) + +let g:airline#themes#active#palette.replace.airline_warning = warning_group + + +let s:V1 = [ s:gui_bg0, s:gui_yel, s:cterm01, s:cterm0E ] +let s:V2 = [ s:gui_fg1, s:gui_bg2, s:cterm06, s:cterm02 ] +let s:V3 = [ s:gui_fg2, s:gui_bg1, s:cterm09, s:cterm01 ] +let g:airline#themes#active#palette.visual = airline#themes#generate_color_map(s:V1, s:V2, s:V3) + +let g:airline#themes#active#palette.visual.airline_warning = warning_group + + +let s:IA1 = [ s:gui_fg2, s:gui_bg1, s:cterm05, s:cterm01 ] +let s:IA2 = [ s:gui_fg2, s:gui_bg1, s:cterm05, s:cterm01 ] +let s:IA3 = [ s:gui_fg2, s:gui_bg1, s:cterm05, s:cterm01 ] +let g:airline#themes#active#palette.inactive = airline#themes#generate_color_map(s:IA1, s:IA2, s:IA3) + +let g:airline#themes#active#palette.inactive.airline_warning = warning_group diff --git a/apps/vim-airline/soft-tundra-monobiome-dark.statusline.vim b/apps/vim-airline/soft-tundra-monobiome-dark.statusline.vim new file mode 100644 index 0000000..f782a85 --- /dev/null +++ b/apps/vim-airline/soft-tundra-monobiome-dark.statusline.vim @@ -0,0 +1,110 @@ +" ----------------------------------------------------------------------------- +" File: active.vim +" Description: SOLR color scheme for Airline +" Author: samgriesemer +" Source: https://github.com/samgriesemer/active +" ----------------------------------------------------------------------------- +" -> generated_color_map(s1, s2, s3) will generate colors for the airline suffixes: +" +" -> _a :: s1 +" -> _b :: s2 +" -> _c :: s3 +" -> _x :: s3 +" -> _y :: s2 +" -> _z :: s1 +" +" It simply generates a dictionary, and below we do this for several modes. + +let g:airline#themes#active#palette = {} +let s:gui_bg0 = "#2a2e33" +let s:gui_bg1 = "#363b40" +let s:gui_bg2 = "#43484e" +let s:gui_bg3 = "#51565b" +let s:gui_fg3 = "#b9bec5" +let s:gui_fg2 = "#c8ced5" +let s:gui_fg1 = "#d9dfe5" +let s:gui_fg0 = "#e9eff6" +let s:gui_red = "#f37060" +let s:gui_ora = "#da8934" +let s:gui_yel = "#a7a15f" +let s:gui_gre = "#6eb178" +let s:gui_cya = "#6eb178" +let s:gui_blu = "#799ee3" +let s:gui_vio = "#799ee3" +let s:gui_mag = "#f37060" + +let s:grey = "#8a9096" + +" Terminal color definitions +let s:cterm00 = 0 +let s:cterm01 = 10 +let s:cterm02 = 11 +let s:cterm03 = 8 +let s:cterm04 = 12 +let s:cterm05 = 7 +let s:cterm06 = 13 +let s:cterm07 = 15 +let s:cterm08 = 1 +let s:cterm09 = 9 +let s:cterm0A = 3 +let s:cterm0B = 2 +let s:cterm0C = 6 +let s:cterm0D = 4 +let s:cterm0E = 5 +let s:cterm0F = 14 + +let M0 = airline#themes#get_highlight('Title') +let accents_group = airline#themes#get_highlight('Statement') +let modified_group = [M0[0], '', M0[2], '', ''] + +let warning_group = airline#themes#get_highlight2(['Normal', 'bg'], ['Structure', 'fg']) +"let warning_group = airline#themes#get_highlight2(['Structure', 'fg'], ['Normal', 'bg']) +let error_group = airline#themes#get_highlight2(['Normal', 'bg'], ['WarningMsg', 'fg']) + + +" status line settings +" [ guifg guibg ctermfg ctermbg ] +let s:N1 = [ s:gui_bg0, s:gui_fg3, s:cterm01, s:cterm0B ] +let s:N2 = [ s:gui_fg1, s:gui_bg2, s:cterm06, s:cterm02 ] +let s:N3 = [ s:gui_fg2, s:gui_bg1, s:cterm09, s:cterm01 ] +let g:airline#themes#active#palette.normal = airline#themes#generate_color_map(s:N1, s:N2, s:N3) + +let modified_group = [ s:gui_yel, '', s:cterm01, '' ] +let warning_group = [ s:gui_gre, s:gui_bg1, s:cterm01, s:cterm0B ] +let g:airline#themes#active#palette.normal_modified = { 'airline_c': modified_group } +let g:airline#themes#active#palette.normal.airline_warning = warning_group +let g:airline#themes#active#palette.normal_modified.airline_warning = warning_group +"let g:airline#themes#active#palette.normal.airline_error = error_group +"let g:airline#themes#active#palette.normal_modified.airline_error = error_group + + +let s:I1 = [ s:gui_bg0, s:gui_gre, s:cterm01, s:cterm0D ] +let s:I2 = [ s:gui_fg1, s:gui_bg2, s:cterm06, s:cterm02 ] +let s:I3 = [ s:gui_fg2, s:gui_bg1, s:cterm09, s:cterm01 ] +let g:airline#themes#active#palette.insert = airline#themes#generate_color_map(s:I1, s:I2, s:I3) + +let g:airline#themes#active#palette.insert.airline_warning = warning_group + + +let s:R1 = [ s:gui_bg0, s:gui_red, s:cterm01, s:cterm08 ] +let s:R2 = [ s:gui_fg1, s:gui_bg2, s:cterm06, s:cterm02 ] +let s:R3 = [ s:gui_fg2, s:gui_bg1, s:cterm09, s:cterm01 ] +let g:airline#themes#active#palette.replace = airline#themes#generate_color_map(s:R1, s:R2, s:R3) + +let g:airline#themes#active#palette.replace.airline_warning = warning_group + + +let s:V1 = [ s:gui_bg0, s:gui_yel, s:cterm01, s:cterm0E ] +let s:V2 = [ s:gui_fg1, s:gui_bg2, s:cterm06, s:cterm02 ] +let s:V3 = [ s:gui_fg2, s:gui_bg1, s:cterm09, s:cterm01 ] +let g:airline#themes#active#palette.visual = airline#themes#generate_color_map(s:V1, s:V2, s:V3) + +let g:airline#themes#active#palette.visual.airline_warning = warning_group + + +let s:IA1 = [ s:gui_fg2, s:gui_bg1, s:cterm05, s:cterm01 ] +let s:IA2 = [ s:gui_fg2, s:gui_bg1, s:cterm05, s:cterm01 ] +let s:IA3 = [ s:gui_fg2, s:gui_bg1, s:cterm05, s:cterm01 ] +let g:airline#themes#active#palette.inactive = airline#themes#generate_color_map(s:IA1, s:IA2, s:IA3) + +let g:airline#themes#active#palette.inactive.airline_warning = warning_group diff --git a/apps/vim-airline/soft-tundra-monobiome-light.statusline.vim b/apps/vim-airline/soft-tundra-monobiome-light.statusline.vim new file mode 100644 index 0000000..f354039 --- /dev/null +++ b/apps/vim-airline/soft-tundra-monobiome-light.statusline.vim @@ -0,0 +1,110 @@ +" ----------------------------------------------------------------------------- +" File: active.vim +" Description: SOLR color scheme for Airline +" Author: samgriesemer +" Source: https://github.com/samgriesemer/active +" ----------------------------------------------------------------------------- +" -> generated_color_map(s1, s2, s3) will generate colors for the airline suffixes: +" +" -> _a :: s1 +" -> _b :: s2 +" -> _c :: s3 +" -> _x :: s3 +" -> _y :: s2 +" -> _z :: s1 +" +" It simply generates a dictionary, and below we do this for several modes. + +let g:airline#themes#active#palette = {} +let s:gui_bg0 = "#b9bec5" +let s:gui_bg1 = "#a9afb5" +let s:gui_bg2 = "#999fa5" +let s:gui_bg3 = "#8a9096" +let s:gui_fg3 = "#2a2e33" +let s:gui_fg2 = "#1e2227" +let s:gui_fg1 = "#12161b" +let s:gui_fg0 = "#080c10" +let s:gui_red = "#9d1912" +let s:gui_ora = "#7c4706" +let s:gui_yel = "#5b572e" +let s:gui_gre = "#2e6337" +let s:gui_cya = "#2e6337" +let s:gui_blu = "#2d5299" +let s:gui_vio = "#2d5299" +let s:gui_mag = "#9d1912" + +let s:grey = "#51565b" + +" Terminal color definitions +let s:cterm00 = 0 +let s:cterm01 = 10 +let s:cterm02 = 11 +let s:cterm03 = 8 +let s:cterm04 = 12 +let s:cterm05 = 7 +let s:cterm06 = 13 +let s:cterm07 = 15 +let s:cterm08 = 1 +let s:cterm09 = 9 +let s:cterm0A = 3 +let s:cterm0B = 2 +let s:cterm0C = 6 +let s:cterm0D = 4 +let s:cterm0E = 5 +let s:cterm0F = 14 + +let M0 = airline#themes#get_highlight('Title') +let accents_group = airline#themes#get_highlight('Statement') +let modified_group = [M0[0], '', M0[2], '', ''] + +let warning_group = airline#themes#get_highlight2(['Normal', 'bg'], ['Structure', 'fg']) +"let warning_group = airline#themes#get_highlight2(['Structure', 'fg'], ['Normal', 'bg']) +let error_group = airline#themes#get_highlight2(['Normal', 'bg'], ['WarningMsg', 'fg']) + + +" status line settings +" [ guifg guibg ctermfg ctermbg ] +let s:N1 = [ s:gui_bg0, s:gui_fg3, s:cterm01, s:cterm0B ] +let s:N2 = [ s:gui_fg1, s:gui_bg2, s:cterm06, s:cterm02 ] +let s:N3 = [ s:gui_fg2, s:gui_bg1, s:cterm09, s:cterm01 ] +let g:airline#themes#active#palette.normal = airline#themes#generate_color_map(s:N1, s:N2, s:N3) + +let modified_group = [ s:gui_yel, '', s:cterm01, '' ] +let warning_group = [ s:gui_gre, s:gui_bg1, s:cterm01, s:cterm0B ] +let g:airline#themes#active#palette.normal_modified = { 'airline_c': modified_group } +let g:airline#themes#active#palette.normal.airline_warning = warning_group +let g:airline#themes#active#palette.normal_modified.airline_warning = warning_group +"let g:airline#themes#active#palette.normal.airline_error = error_group +"let g:airline#themes#active#palette.normal_modified.airline_error = error_group + + +let s:I1 = [ s:gui_bg0, s:gui_gre, s:cterm01, s:cterm0D ] +let s:I2 = [ s:gui_fg1, s:gui_bg2, s:cterm06, s:cterm02 ] +let s:I3 = [ s:gui_fg2, s:gui_bg1, s:cterm09, s:cterm01 ] +let g:airline#themes#active#palette.insert = airline#themes#generate_color_map(s:I1, s:I2, s:I3) + +let g:airline#themes#active#palette.insert.airline_warning = warning_group + + +let s:R1 = [ s:gui_bg0, s:gui_red, s:cterm01, s:cterm08 ] +let s:R2 = [ s:gui_fg1, s:gui_bg2, s:cterm06, s:cterm02 ] +let s:R3 = [ s:gui_fg2, s:gui_bg1, s:cterm09, s:cterm01 ] +let g:airline#themes#active#palette.replace = airline#themes#generate_color_map(s:R1, s:R2, s:R3) + +let g:airline#themes#active#palette.replace.airline_warning = warning_group + + +let s:V1 = [ s:gui_bg0, s:gui_yel, s:cterm01, s:cterm0E ] +let s:V2 = [ s:gui_fg1, s:gui_bg2, s:cterm06, s:cterm02 ] +let s:V3 = [ s:gui_fg2, s:gui_bg1, s:cterm09, s:cterm01 ] +let g:airline#themes#active#palette.visual = airline#themes#generate_color_map(s:V1, s:V2, s:V3) + +let g:airline#themes#active#palette.visual.airline_warning = warning_group + + +let s:IA1 = [ s:gui_fg2, s:gui_bg1, s:cterm05, s:cterm01 ] +let s:IA2 = [ s:gui_fg2, s:gui_bg1, s:cterm05, s:cterm01 ] +let s:IA3 = [ s:gui_fg2, s:gui_bg1, s:cterm05, s:cterm01 ] +let g:airline#themes#active#palette.inactive = airline#themes#generate_color_map(s:IA1, s:IA2, s:IA3) + +let g:airline#themes#active#palette.inactive.airline_warning = warning_group diff --git a/apps/vim-airline/tundra-monobiome-dark.statusline.vim b/apps/vim-airline/tundra-monobiome-dark.statusline.vim new file mode 100644 index 0000000..57502de --- /dev/null +++ b/apps/vim-airline/tundra-monobiome-dark.statusline.vim @@ -0,0 +1,110 @@ +" ----------------------------------------------------------------------------- +" File: active.vim +" Description: SOLR color scheme for Airline +" Author: samgriesemer +" Source: https://github.com/samgriesemer/active +" ----------------------------------------------------------------------------- +" -> generated_color_map(s1, s2, s3) will generate colors for the airline suffixes: +" +" -> _a :: s1 +" -> _b :: s2 +" -> _c :: s3 +" -> _x :: s3 +" -> _y :: s2 +" -> _z :: s1 +" +" It simply generates a dictionary, and below we do this for several modes. + +let g:airline#themes#active#palette = {} +let s:gui_bg0 = "#1e2227" +let s:gui_bg1 = "#2a2e33" +let s:gui_bg2 = "#363b40" +let s:gui_bg3 = "#43484e" +let s:gui_fg3 = "#a9afb5" +let s:gui_fg2 = "#b9bec5" +let s:gui_fg1 = "#c8ced5" +let s:gui_fg0 = "#d9dfe5" +let s:gui_red = "#e95949" +let s:gui_ora = "#ca791c" +let s:gui_yel = "#989250" +let s:gui_gre = "#5da268" +let s:gui_cya = "#5da268" +let s:gui_blu = "#658ed9" +let s:gui_vio = "#658ed9" +let s:gui_mag = "#e95949" + +let s:grey = "#7b8187" + +" Terminal color definitions +let s:cterm00 = 0 +let s:cterm01 = 10 +let s:cterm02 = 11 +let s:cterm03 = 8 +let s:cterm04 = 12 +let s:cterm05 = 7 +let s:cterm06 = 13 +let s:cterm07 = 15 +let s:cterm08 = 1 +let s:cterm09 = 9 +let s:cterm0A = 3 +let s:cterm0B = 2 +let s:cterm0C = 6 +let s:cterm0D = 4 +let s:cterm0E = 5 +let s:cterm0F = 14 + +let M0 = airline#themes#get_highlight('Title') +let accents_group = airline#themes#get_highlight('Statement') +let modified_group = [M0[0], '', M0[2], '', ''] + +let warning_group = airline#themes#get_highlight2(['Normal', 'bg'], ['Structure', 'fg']) +"let warning_group = airline#themes#get_highlight2(['Structure', 'fg'], ['Normal', 'bg']) +let error_group = airline#themes#get_highlight2(['Normal', 'bg'], ['WarningMsg', 'fg']) + + +" status line settings +" [ guifg guibg ctermfg ctermbg ] +let s:N1 = [ s:gui_bg0, s:gui_fg3, s:cterm01, s:cterm0B ] +let s:N2 = [ s:gui_fg1, s:gui_bg2, s:cterm06, s:cterm02 ] +let s:N3 = [ s:gui_fg2, s:gui_bg1, s:cterm09, s:cterm01 ] +let g:airline#themes#active#palette.normal = airline#themes#generate_color_map(s:N1, s:N2, s:N3) + +let modified_group = [ s:gui_yel, '', s:cterm01, '' ] +let warning_group = [ s:gui_gre, s:gui_bg1, s:cterm01, s:cterm0B ] +let g:airline#themes#active#palette.normal_modified = { 'airline_c': modified_group } +let g:airline#themes#active#palette.normal.airline_warning = warning_group +let g:airline#themes#active#palette.normal_modified.airline_warning = warning_group +"let g:airline#themes#active#palette.normal.airline_error = error_group +"let g:airline#themes#active#palette.normal_modified.airline_error = error_group + + +let s:I1 = [ s:gui_bg0, s:gui_gre, s:cterm01, s:cterm0D ] +let s:I2 = [ s:gui_fg1, s:gui_bg2, s:cterm06, s:cterm02 ] +let s:I3 = [ s:gui_fg2, s:gui_bg1, s:cterm09, s:cterm01 ] +let g:airline#themes#active#palette.insert = airline#themes#generate_color_map(s:I1, s:I2, s:I3) + +let g:airline#themes#active#palette.insert.airline_warning = warning_group + + +let s:R1 = [ s:gui_bg0, s:gui_red, s:cterm01, s:cterm08 ] +let s:R2 = [ s:gui_fg1, s:gui_bg2, s:cterm06, s:cterm02 ] +let s:R3 = [ s:gui_fg2, s:gui_bg1, s:cterm09, s:cterm01 ] +let g:airline#themes#active#palette.replace = airline#themes#generate_color_map(s:R1, s:R2, s:R3) + +let g:airline#themes#active#palette.replace.airline_warning = warning_group + + +let s:V1 = [ s:gui_bg0, s:gui_yel, s:cterm01, s:cterm0E ] +let s:V2 = [ s:gui_fg1, s:gui_bg2, s:cterm06, s:cterm02 ] +let s:V3 = [ s:gui_fg2, s:gui_bg1, s:cterm09, s:cterm01 ] +let g:airline#themes#active#palette.visual = airline#themes#generate_color_map(s:V1, s:V2, s:V3) + +let g:airline#themes#active#palette.visual.airline_warning = warning_group + + +let s:IA1 = [ s:gui_fg2, s:gui_bg1, s:cterm05, s:cterm01 ] +let s:IA2 = [ s:gui_fg2, s:gui_bg1, s:cterm05, s:cterm01 ] +let s:IA3 = [ s:gui_fg2, s:gui_bg1, s:cterm05, s:cterm01 ] +let g:airline#themes#active#palette.inactive = airline#themes#generate_color_map(s:IA1, s:IA2, s:IA3) + +let g:airline#themes#active#palette.inactive.airline_warning = warning_group diff --git a/apps/vim-airline/tundra-monobiome-light.statusline.vim b/apps/vim-airline/tundra-monobiome-light.statusline.vim new file mode 100644 index 0000000..2531bb8 --- /dev/null +++ b/apps/vim-airline/tundra-monobiome-light.statusline.vim @@ -0,0 +1,110 @@ +" ----------------------------------------------------------------------------- +" File: active.vim +" Description: SOLR color scheme for Airline +" Author: samgriesemer +" Source: https://github.com/samgriesemer/active +" ----------------------------------------------------------------------------- +" -> generated_color_map(s1, s2, s3) will generate colors for the airline suffixes: +" +" -> _a :: s1 +" -> _b :: s2 +" -> _c :: s3 +" -> _x :: s3 +" -> _y :: s2 +" -> _z :: s1 +" +" It simply generates a dictionary, and below we do this for several modes. + +let g:airline#themes#active#palette = {} +let s:gui_bg0 = "#c8ced5" +let s:gui_bg1 = "#b9bec5" +let s:gui_bg2 = "#a9afb5" +let s:gui_bg3 = "#999fa5" +let s:gui_fg3 = "#363b40" +let s:gui_fg2 = "#2a2e33" +let s:gui_fg1 = "#1e2227" +let s:gui_fg0 = "#12161b" +let s:gui_red = "#b52119" +let s:gui_ora = "#905201" +let s:gui_yel = "#6a6535" +let s:gui_gre = "#377242" +let s:gui_cya = "#377242" +let s:gui_blu = "#3860ac" +let s:gui_vio = "#3860ac" +let s:gui_mag = "#b52119" + +let s:grey = "#5f6469" + +" Terminal color definitions +let s:cterm00 = 0 +let s:cterm01 = 10 +let s:cterm02 = 11 +let s:cterm03 = 8 +let s:cterm04 = 12 +let s:cterm05 = 7 +let s:cterm06 = 13 +let s:cterm07 = 15 +let s:cterm08 = 1 +let s:cterm09 = 9 +let s:cterm0A = 3 +let s:cterm0B = 2 +let s:cterm0C = 6 +let s:cterm0D = 4 +let s:cterm0E = 5 +let s:cterm0F = 14 + +let M0 = airline#themes#get_highlight('Title') +let accents_group = airline#themes#get_highlight('Statement') +let modified_group = [M0[0], '', M0[2], '', ''] + +let warning_group = airline#themes#get_highlight2(['Normal', 'bg'], ['Structure', 'fg']) +"let warning_group = airline#themes#get_highlight2(['Structure', 'fg'], ['Normal', 'bg']) +let error_group = airline#themes#get_highlight2(['Normal', 'bg'], ['WarningMsg', 'fg']) + + +" status line settings +" [ guifg guibg ctermfg ctermbg ] +let s:N1 = [ s:gui_bg0, s:gui_fg3, s:cterm01, s:cterm0B ] +let s:N2 = [ s:gui_fg1, s:gui_bg2, s:cterm06, s:cterm02 ] +let s:N3 = [ s:gui_fg2, s:gui_bg1, s:cterm09, s:cterm01 ] +let g:airline#themes#active#palette.normal = airline#themes#generate_color_map(s:N1, s:N2, s:N3) + +let modified_group = [ s:gui_yel, '', s:cterm01, '' ] +let warning_group = [ s:gui_gre, s:gui_bg1, s:cterm01, s:cterm0B ] +let g:airline#themes#active#palette.normal_modified = { 'airline_c': modified_group } +let g:airline#themes#active#palette.normal.airline_warning = warning_group +let g:airline#themes#active#palette.normal_modified.airline_warning = warning_group +"let g:airline#themes#active#palette.normal.airline_error = error_group +"let g:airline#themes#active#palette.normal_modified.airline_error = error_group + + +let s:I1 = [ s:gui_bg0, s:gui_gre, s:cterm01, s:cterm0D ] +let s:I2 = [ s:gui_fg1, s:gui_bg2, s:cterm06, s:cterm02 ] +let s:I3 = [ s:gui_fg2, s:gui_bg1, s:cterm09, s:cterm01 ] +let g:airline#themes#active#palette.insert = airline#themes#generate_color_map(s:I1, s:I2, s:I3) + +let g:airline#themes#active#palette.insert.airline_warning = warning_group + + +let s:R1 = [ s:gui_bg0, s:gui_red, s:cterm01, s:cterm08 ] +let s:R2 = [ s:gui_fg1, s:gui_bg2, s:cterm06, s:cterm02 ] +let s:R3 = [ s:gui_fg2, s:gui_bg1, s:cterm09, s:cterm01 ] +let g:airline#themes#active#palette.replace = airline#themes#generate_color_map(s:R1, s:R2, s:R3) + +let g:airline#themes#active#palette.replace.airline_warning = warning_group + + +let s:V1 = [ s:gui_bg0, s:gui_yel, s:cterm01, s:cterm0E ] +let s:V2 = [ s:gui_fg1, s:gui_bg2, s:cterm06, s:cterm02 ] +let s:V3 = [ s:gui_fg2, s:gui_bg1, s:cterm09, s:cterm01 ] +let g:airline#themes#active#palette.visual = airline#themes#generate_color_map(s:V1, s:V2, s:V3) + +let g:airline#themes#active#palette.visual.airline_warning = warning_group + + +let s:IA1 = [ s:gui_fg2, s:gui_bg1, s:cterm05, s:cterm01 ] +let s:IA2 = [ s:gui_fg2, s:gui_bg1, s:cterm05, s:cterm01 ] +let s:IA3 = [ s:gui_fg2, s:gui_bg1, s:cterm05, s:cterm01 ] +let g:airline#themes#active#palette.inactive = airline#themes#generate_color_map(s:IA1, s:IA2, s:IA3) + +let g:airline#themes#active#palette.inactive.airline_warning = warning_group