add full symconf theme generation pipeline to produce app config

This commit is contained in:
smgr 2025-10-06 00:29:02 -07:00
parent 63b0225f8a
commit 4e6dcb863e
203 changed files with 15033 additions and 8020 deletions

View File

@ -1,8 +1,8 @@
export FZF_DEFAULT_OPTS=$FZF_DEFAULT_OPTS'
--color=fg:#d7e0dd
--color=fg+:#c7d0cc
--color=bg:#1d2321
--color=bg+:#29302d
--color=fg:#e5dbda
--color=fg+:#d5cbca
--color=bg:#27201f
--color=bg+:#332c2b
--color=hl:#658ed9
--color=hl+:#8daeeb
@ -14,9 +14,10 @@ export FZF_DEFAULT_OPTS=$FZF_DEFAULT_OPTS'
--color=pointer:#e95949
--color=header:#80c089
--color=border:#29302d
--color=border:#332c2b
--color=label:#aeaeae
--color=query:#d7e0dd
--color=query:#e5dbda
--preview-window="border-bold" --prompt="> " --marker=">" --pointer="◆"
--separator="" --scrollbar="│"'

View File

@ -0,0 +1,23 @@
export FZF_DEFAULT_OPTS=$FZF_DEFAULT_OPTS'
--color=fg:#27201f
--color=fg+:#332c2b
--color=bg:#e5dbda
--color=bg+:#d5cbca
--color=hl:#3860ac
--color=hl+:#234485
--color=info:#6a6535
--color=marker:#25532e
--color=prompt:#b42219
--color=spinner:#6a6535
--color=pointer:#b42219
--color=header:#25532e
--color=border:#d5cbca
--color=label:#aeaeae
--color=query:#27201f
--preview-window="border-bold" --prompt="> " --marker=">" --pointer="◆"
--separator="" --scrollbar="│"'

View File

@ -1,8 +1,8 @@
export FZF_DEFAULT_OPTS=$FZF_DEFAULT_OPTS'
--color=fg:#e1ded6
--color=fg+:#d0cec6
--color=bg:#24211c
--color=bg+:#302e28
--color=fg:#e4ddd7
--color=fg+:#d3ccc7
--color=bg:#26211c
--color=bg+:#322d28
--color=hl:#658ed9
--color=hl+:#8daeeb
@ -14,9 +14,10 @@ export FZF_DEFAULT_OPTS=$FZF_DEFAULT_OPTS'
--color=pointer:#e95949
--color=header:#80c089
--color=border:#302e28
--color=border:#322d28
--color=label:#aeaeae
--color=query:#e1ded6
--color=query:#e4ddd7
--preview-window="border-bold" --prompt="> " --marker=">" --pointer="◆"
--separator="" --scrollbar="│"'

View File

@ -0,0 +1,23 @@
export FZF_DEFAULT_OPTS=$FZF_DEFAULT_OPTS'
--color=fg:#26211c
--color=fg+:#322d28
--color=bg:#e4ddd7
--color=bg+:#d3ccc7
--color=hl:#3860ac
--color=hl+:#234485
--color=info:#6a6535
--color=marker:#25532e
--color=prompt:#b42219
--color=spinner:#6a6535
--color=pointer:#b42219
--color=header:#25532e
--color=border:#d3ccc7
--color=label:#aeaeae
--color=query:#26211c
--preview-window="border-bold" --prompt="> " --marker=">" --pointer="◆"
--separator="" --scrollbar="│"'

View File

@ -1,8 +1,8 @@
export FZF_DEFAULT_OPTS=$FZF_DEFAULT_OPTS'
--color=fg:#d9dfe5
--color=fg+:#c8ced5
--color=bg:#1e2227
--color=bg+:#2a2e33
--color=fg:#d9e0da
--color=fg+:#c9d0ca
--color=bg:#1e231f
--color=bg+:#2a2f2b
--color=hl:#658ed9
--color=hl+:#8daeeb
@ -14,9 +14,10 @@ export FZF_DEFAULT_OPTS=$FZF_DEFAULT_OPTS'
--color=pointer:#e95949
--color=header:#80c089
--color=border:#2a2e33
--color=border:#2a2f2b
--color=label:#aeaeae
--color=query:#d9dfe5
--color=query:#d9e0da
--preview-window="border-bold" --prompt="> " --marker=">" --pointer="◆"
--separator="" --scrollbar="│"'

View File

@ -0,0 +1,23 @@
export FZF_DEFAULT_OPTS=$FZF_DEFAULT_OPTS'
--color=fg:#1e231f
--color=fg+:#2a2f2b
--color=bg:#d9e0da
--color=bg+:#c9d0ca
--color=hl:#3860ac
--color=hl+:#234485
--color=info:#6a6535
--color=marker:#25532e
--color=prompt:#b42219
--color=spinner:#6a6535
--color=pointer:#b42219
--color=header:#25532e
--color=border:#c9d0ca
--color=label:#aeaeae
--color=query:#1e231f
--preview-window="border-bold" --prompt="> " --marker=">" --pointer="◆"
--separator="" --scrollbar="│"'

View File

@ -1,22 +1,23 @@
export FZF_DEFAULT_OPTS=$FZF_DEFAULT_OPTS'
--color=fg:#d0cec6
--color=fg+:#c0bdb6
--color=bg:#181610
--color=bg+:#24211c
--color=fg:#c9d0ca
--color=fg+:#b9c0ba
--color=bg:#131713
--color=bg+:#1e231f
--color=hl:#557ecc
--color=hl+:#799ee3
--color=info:#888346
--color=marker:#6eb178
--color=prompt:#dc4134
--color=prompt:#dc4234
--color=spinner:#888346
--color=pointer:#dc4134
--color=pointer:#dc4234
--color=header:#6eb178
--color=border:#24211c
--color=border:#1e231f
--color=label:#aeaeae
--color=query:#d0cec6
--color=query:#c9d0ca
--preview-window="border-bold" --prompt="> " --marker=">" --pointer="◆"
--separator="" --scrollbar="│"'

View File

@ -0,0 +1,23 @@
export FZF_DEFAULT_OPTS=$FZF_DEFAULT_OPTS'
--color=fg:#2a2f2b
--color=fg+:#373c37
--color=bg:#eaf1ea
--color=bg+:#d9e0da
--color=hl:#456fbe
--color=hl+:#2d5299
--color=info:#79743d
--color=marker:#2e6337
--color=prompt:#ca2f24
--color=spinner:#79743d
--color=pointer:#ca2f24
--color=header:#2e6337
--color=border:#d9e0da
--color=label:#aeaeae
--color=query:#2a2f2b
--preview-window="border-bold" --prompt="> " --marker=">" --pointer="◆"
--separator="" --scrollbar="│"'

View File

@ -9,9 +9,9 @@ export FZF_DEFAULT_OPTS=$FZF_DEFAULT_OPTS'
--color=info:#888346
--color=marker:#6eb178
--color=prompt:#dc4134
--color=prompt:#dc4234
--color=spinner:#888346
--color=pointer:#dc4134
--color=pointer:#dc4234
--color=header:#6eb178
--color=border:#222222
@ -20,3 +20,4 @@ export FZF_DEFAULT_OPTS=$FZF_DEFAULT_OPTS'
--preview-window="border-bold" --prompt="> " --marker=">" --pointer="◆"
--separator="" --scrollbar="│"'

View File

@ -0,0 +1,23 @@
export FZF_DEFAULT_OPTS=$FZF_DEFAULT_OPTS'
--color=fg:#2e2e2e
--color=fg+:#3a3a3a
--color=bg:#eeeeee
--color=bg+:#dedede
--color=hl:#456fbe
--color=hl+:#2d5299
--color=info:#79743d
--color=marker:#2e6337
--color=prompt:#ca2f24
--color=spinner:#79743d
--color=pointer:#ca2f24
--color=header:#2e6337
--color=border:#dedede
--color=label:#aeaeae
--color=query:#2e2e2e
--preview-window="border-bold" --prompt="> " --marker=">" --pointer="◆"
--separator="" --scrollbar="│"'

View File

@ -1,22 +1,23 @@
export FZF_DEFAULT_OPTS=$FZF_DEFAULT_OPTS'
--color=fg:#c7d0cc
--color=fg+:#b7c0bc
--color=bg:#111815
--color=bg+:#1d2321
--color=fg:#cfcec6
--color=fg+:#bfbeb6
--color=bg:#171611
--color=bg+:#22221c
--color=hl:#557ecc
--color=hl+:#799ee3
--color=info:#888346
--color=marker:#6eb178
--color=prompt:#dc4134
--color=prompt:#dc4234
--color=spinner:#888346
--color=pointer:#dc4134
--color=pointer:#dc4234
--color=header:#6eb178
--color=border:#1d2321
--color=border:#22221c
--color=label:#aeaeae
--color=query:#c7d0cc
--color=query:#cfcec6
--preview-window="border-bold" --prompt="> " --marker=">" --pointer="◆"
--separator="" --scrollbar="│"'

View File

@ -0,0 +1,23 @@
export FZF_DEFAULT_OPTS=$FZF_DEFAULT_OPTS'
--color=fg:#2f2e28
--color=fg+:#3b3b34
--color=bg:#efefe7
--color=bg+:#dfded6
--color=hl:#456fbe
--color=hl+:#2d5299
--color=info:#79743d
--color=marker:#2e6337
--color=prompt:#ca2f24
--color=spinner:#79743d
--color=pointer:#ca2f24
--color=header:#2e6337
--color=border:#dfded6
--color=label:#aeaeae
--color=query:#2f2e28
--preview-window="border-bold" --prompt="> " --marker=">" --pointer="◆"
--separator="" --scrollbar="│"'

View File

@ -1,22 +1,23 @@
export FZF_DEFAULT_OPTS=$FZF_DEFAULT_OPTS'
--color=fg:#c8ced5
--color=fg+:#b9bec5
--color=bg:#12161b
--color=bg+:#1e2227
--color=fg:#caced5
--color=fg+:#babec5
--color=bg:#13161b
--color=bg+:#1f2227
--color=hl:#557ecc
--color=hl+:#799ee3
--color=info:#888346
--color=marker:#6eb178
--color=prompt:#dc4134
--color=prompt:#dc4234
--color=spinner:#888346
--color=pointer:#dc4134
--color=pointer:#dc4234
--color=header:#6eb178
--color=border:#1e2227
--color=border:#1f2227
--color=label:#aeaeae
--color=query:#c8ced5
--color=query:#caced5
--preview-window="border-bold" --prompt="> " --marker=">" --pointer="◆"
--separator="" --scrollbar="│"'

View File

@ -0,0 +1,23 @@
export FZF_DEFAULT_OPTS=$FZF_DEFAULT_OPTS'
--color=fg:#2b2e33
--color=fg+:#373b40
--color=bg:#eaeff6
--color=bg+:#dadee6
--color=hl:#456fbe
--color=hl+:#2d5299
--color=info:#79743d
--color=marker:#2e6337
--color=prompt:#ca2f24
--color=spinner:#79743d
--color=pointer:#ca2f24
--color=header:#2e6337
--color=border:#dadee6
--color=label:#aeaeae
--color=query:#2b2e33
--preview-window="border-bold" --prompt="> " --marker=">" --pointer="◆"
--separator="" --scrollbar="│"'

View File

@ -20,3 +20,4 @@ export FZF_DEFAULT_OPTS=$FZF_DEFAULT_OPTS'
--preview-window="border-bold" --prompt="> " --marker=">" --pointer="◆"
--separator="" --scrollbar="│"'

View File

@ -4,15 +4,15 @@ export FZF_DEFAULT_OPTS=$FZF_DEFAULT_OPTS'
--color=bg:#dedede
--color=bg+:#cecece
--color=hl:#456fbe
--color=hl+:#456fbe
--color=info:#79743d
--color=marker:#42824e
--color=hl:#3860ac
--color=hl+:#234485
--color=info:#6a6535
--color=marker:#25532e
--color=prompt:#ca2e23
--color=spinner:#79743d
--color=pointer:#ca2e23
--color=header:#42824e
--color=prompt:#b42219
--color=spinner:#6a6535
--color=pointer:#b42219
--color=header:#25532e
--color=border:#cecece
--color=label:#aeaeae
@ -20,3 +20,4 @@ export FZF_DEFAULT_OPTS=$FZF_DEFAULT_OPTS'
--preview-window="border-bold" --prompt="> " --marker=">" --pointer="◆"
--separator="" --scrollbar="│"'

View File

@ -0,0 +1,23 @@
export FZF_DEFAULT_OPTS=$FZF_DEFAULT_OPTS'
--color=fg:#dfded6
--color=fg+:#cfcec6
--color=bg:#22221c
--color=bg+:#2f2e28
--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:#2f2e28
--color=label:#aeaeae
--color=query:#dfded6
--preview-window="border-bold" --prompt="> " --marker=">" --pointer="◆"
--separator="" --scrollbar="│"'

View File

@ -0,0 +1,23 @@
export FZF_DEFAULT_OPTS=$FZF_DEFAULT_OPTS'
--color=fg:#22221c
--color=fg+:#2f2e28
--color=bg:#dfded6
--color=bg+:#cfcec6
--color=hl:#3860ac
--color=hl+:#234485
--color=info:#6a6535
--color=marker:#25532e
--color=prompt:#b42219
--color=spinner:#6a6535
--color=pointer:#b42219
--color=header:#25532e
--color=border:#cfcec6
--color=label:#aeaeae
--color=query:#22221c
--preview-window="border-bold" --prompt="> " --marker=">" --pointer="◆"
--separator="" --scrollbar="│"'

View File

@ -1,8 +1,8 @@
export FZF_DEFAULT_OPTS=$FZF_DEFAULT_OPTS'
--color=fg:#e8f1ed
--color=fg+:#d7e0dd
--color=bg:#29302d
--color=bg+:#353c3a
--color=fg:#eaf1ea
--color=fg+:#d9e0da
--color=bg:#2a2f2b
--color=bg+:#373c37
--color=hl:#799ee3
--color=hl+:#a2bef2
@ -14,9 +14,10 @@ export FZF_DEFAULT_OPTS=$FZF_DEFAULT_OPTS'
--color=pointer:#f37060
--color=header:#94cf9c
--color=border:#353c3a
--color=border:#373c37
--color=label:#aeaeae
--color=query:#e8f1ed
--color=query:#eaf1ea
--preview-window="border-bold" --prompt="> " --marker=">" --pointer="◆"
--separator="" --scrollbar="│"'

View File

@ -0,0 +1,23 @@
export FZF_DEFAULT_OPTS=$FZF_DEFAULT_OPTS'
--color=fg:#131713
--color=fg+:#1e231f
--color=bg:#c9d0ca
--color=bg+:#b9c0ba
--color=hl:#2d5299
--color=hl+:#1a3771
--color=info:#5b572e
--color=marker:#1c4524
--color=prompt:#9d1a13
--color=spinner:#5b572e
--color=pointer:#9d1a13
--color=header:#1c4524
--color=border:#b9c0ba
--color=label:#aeaeae
--color=query:#131713
--preview-window="border-bold" --prompt="> " --marker=">" --pointer="◆"
--separator="" --scrollbar="│"'

View File

@ -20,3 +20,4 @@ export FZF_DEFAULT_OPTS=$FZF_DEFAULT_OPTS'
--preview-window="border-bold" --prompt="> " --marker=">" --pointer="◆"
--separator="" --scrollbar="│"'

View File

@ -4,15 +4,15 @@ export FZF_DEFAULT_OPTS=$FZF_DEFAULT_OPTS'
--color=bg:#cecece
--color=bg+:#bebebe
--color=hl:#3860ac
--color=hl+:#3860ac
--color=info:#6a6535
--color=marker:#377242
--color=hl:#2d5299
--color=hl+:#1a3771
--color=info:#5b572e
--color=marker:#1c4524
--color=prompt:#b52119
--color=spinner:#6a6535
--color=pointer:#b52119
--color=header:#377242
--color=prompt:#9d1a13
--color=spinner:#5b572e
--color=pointer:#9d1a13
--color=header:#1c4524
--color=border:#bebebe
--color=label:#aeaeae
@ -20,3 +20,4 @@ export FZF_DEFAULT_OPTS=$FZF_DEFAULT_OPTS'
--preview-window="border-bold" --prompt="> " --marker=">" --pointer="◆"
--separator="" --scrollbar="│"'

View File

@ -1,8 +1,8 @@
export FZF_DEFAULT_OPTS=$FZF_DEFAULT_OPTS'
--color=fg:#f1eee6
--color=fg+:#e1ded6
--color=bg:#302e28
--color=bg+:#3d3a34
--color=fg:#efefe7
--color=fg+:#dfded6
--color=bg:#2f2e28
--color=bg+:#3b3b34
--color=hl:#799ee3
--color=hl+:#a2bef2
@ -14,9 +14,10 @@ export FZF_DEFAULT_OPTS=$FZF_DEFAULT_OPTS'
--color=pointer:#f37060
--color=header:#94cf9c
--color=border:#3d3a34
--color=border:#3b3b34
--color=label:#aeaeae
--color=query:#f1eee6
--color=query:#efefe7
--preview-window="border-bold" --prompt="> " --marker=">" --pointer="◆"
--separator="" --scrollbar="│"'

View File

@ -0,0 +1,23 @@
export FZF_DEFAULT_OPTS=$FZF_DEFAULT_OPTS'
--color=fg:#171611
--color=fg+:#22221c
--color=bg:#cfcec6
--color=bg+:#bfbeb6
--color=hl:#2d5299
--color=hl+:#1a3771
--color=info:#5b572e
--color=marker:#1c4524
--color=prompt:#9d1a13
--color=spinner:#5b572e
--color=pointer:#9d1a13
--color=header:#1c4524
--color=border:#bfbeb6
--color=label:#aeaeae
--color=query:#171611
--preview-window="border-bold" --prompt="> " --marker=">" --pointer="◆"
--separator="" --scrollbar="│"'

View File

@ -1,8 +1,8 @@
export FZF_DEFAULT_OPTS=$FZF_DEFAULT_OPTS'
--color=fg:#e9eff6
--color=fg+:#d9dfe5
--color=bg:#2a2e33
--color=bg+:#363b40
--color=fg:#eaeff6
--color=fg+:#dadee6
--color=bg:#2b2e33
--color=bg+:#373b40
--color=hl:#799ee3
--color=hl+:#a2bef2
@ -14,9 +14,10 @@ export FZF_DEFAULT_OPTS=$FZF_DEFAULT_OPTS'
--color=pointer:#f37060
--color=header:#94cf9c
--color=border:#363b40
--color=border:#373b40
--color=label:#aeaeae
--color=query:#e9eff6
--color=query:#eaeff6
--preview-window="border-bold" --prompt="> " --marker=">" --pointer="◆"
--separator="" --scrollbar="│"'

View File

@ -0,0 +1,23 @@
export FZF_DEFAULT_OPTS=$FZF_DEFAULT_OPTS'
--color=fg:#13161b
--color=fg+:#1f2227
--color=bg:#caced5
--color=bg+:#babec5
--color=hl:#2d5299
--color=hl+:#1a3771
--color=info:#5b572e
--color=marker:#1c4524
--color=prompt:#9d1a13
--color=spinner:#5b572e
--color=pointer:#9d1a13
--color=header:#1c4524
--color=border:#babec5
--color=label:#aeaeae
--color=query:#13161b
--preview-window="border-bold" --prompt="> " --marker=">" --pointer="◆"
--separator="" --scrollbar="│"'

View File

@ -0,0 +1,23 @@
export FZF_DEFAULT_OPTS=$FZF_DEFAULT_OPTS'
--color=fg:#dadee6
--color=fg+:#caced5
--color=bg:#1f2227
--color=bg+:#2b2e33
--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:#2b2e33
--color=label:#aeaeae
--color=query:#dadee6
--preview-window="border-bold" --prompt="> " --marker=">" --pointer="◆"
--separator="" --scrollbar="│"'

View File

@ -0,0 +1,23 @@
export FZF_DEFAULT_OPTS=$FZF_DEFAULT_OPTS'
--color=fg:#1f2227
--color=fg+:#2b2e33
--color=bg:#dadee6
--color=bg+:#caced5
--color=hl:#3860ac
--color=hl+:#234485
--color=info:#6a6535
--color=marker:#25532e
--color=prompt:#b42219
--color=spinner:#6a6535
--color=pointer:#b42219
--color=header:#25532e
--color=border:#caced5
--color=label:#aeaeae
--color=query:#1f2227
--preview-window="border-bold" --prompt="> " --marker=">" --pointer="◆"
--separator="" --scrollbar="│"'

View File

@ -1,16 +1,16 @@
# base settings
background #1d2321
foreground #d7e0dd
background #27201f
foreground #e5dbda
selection_background #29302d
selection_foreground #c7d0cc
selection_background #332c2b
selection_foreground #d5cbca
cursor #c7d0cc
cursor_text_color #29302d
cursor #d5cbca
cursor_text #332c2b
# black
color0 #1d2321
color8 #353c3a
color0 #27201f
color8 #403837
# red
color1 #e95949
@ -28,8 +28,8 @@ color11 #b7b170
color4 #658ed9
color12 #8daeeb
# purple (red)
color5 #ca791c
# magenta (red)
color5 #c97920
color13 #e79a51
# cyan (blue)
@ -37,6 +37,5 @@ color6 #658ed9
color14 #8daeeb
## white
color7 #b7c0bc
color15 #d7e0dd
color7 #c5bbba
color15 #e5dbda

View File

@ -0,0 +1,41 @@
# base settings
background #e5dbda
foreground #27201f
selection_background #d5cbca
selection_foreground #332c2b
cursor #332c2b
cursor_text #d5cbca
# black
color0 #e5dbda
color8 #c5bbba
# red
color1 #b42219
color9 #85160f
# green
color2 #377242
color10 #25532e
# yellow
color3 #6a6535
color11 #4c4928
# blue
color4 #3860ac
color12 #234485
# magenta (red)
color5 #905201
color13 #673c0c
# cyan (blue)
color6 #3860ac
color14 #234485
## white
color7 #403837
color15 #27201f

View File

@ -1,16 +1,16 @@
# base settings
background #24211c
foreground #e1ded6
background #26211c
foreground #e4ddd7
selection_background #302e28
selection_foreground #d0cec6
selection_background #322d28
selection_foreground #d3ccc7
cursor #d0cec6
cursor_text_color #302e28
cursor #d3ccc7
cursor_text #322d28
# black
color0 #24211c
color8 #3d3a34
color0 #26211c
color8 #3f3935
# red
color1 #e95949
@ -28,8 +28,8 @@ color11 #b7b170
color4 #658ed9
color12 #8daeeb
# purple (red)
color5 #ca791c
# magenta (red)
color5 #c97920
color13 #e79a51
# cyan (blue)
@ -37,6 +37,5 @@ color6 #658ed9
color14 #8daeeb
## white
color7 #c0bdb6
color15 #e1ded6
color7 #c3bcb7
color15 #e4ddd7

View File

@ -0,0 +1,41 @@
# base settings
background #e4ddd7
foreground #26211c
selection_background #d3ccc7
selection_foreground #322d28
cursor #322d28
cursor_text #d3ccc7
# black
color0 #e4ddd7
color8 #c3bcb7
# red
color1 #b42219
color9 #85160f
# green
color2 #377242
color10 #25532e
# yellow
color3 #6a6535
color11 #4c4928
# blue
color4 #3860ac
color12 #234485
# magenta (red)
color5 #905201
color13 #673c0c
# cyan (blue)
color6 #3860ac
color14 #234485
## white
color7 #3f3935
color15 #26211c

View File

@ -1,16 +1,16 @@
# base settings
background #1e2227
foreground #d9dfe5
background #1e231f
foreground #d9e0da
selection_background #2a2e33
selection_foreground #c8ced5
selection_background #2a2f2b
selection_foreground #c9d0ca
cursor #c8ced5
cursor_text_color #2a2e33
cursor #c9d0ca
cursor_text #2a2f2b
# black
color0 #1e2227
color8 #363b40
color0 #1e231f
color8 #373c37
# red
color1 #e95949
@ -28,8 +28,8 @@ color11 #b7b170
color4 #658ed9
color12 #8daeeb
# purple (red)
color5 #ca791c
# magenta (red)
color5 #c97920
color13 #e79a51
# cyan (blue)
@ -37,6 +37,5 @@ color6 #658ed9
color14 #8daeeb
## white
color7 #b9bec5
color15 #d9dfe5
color7 #b9c0ba
color15 #d9e0da

View File

@ -0,0 +1,41 @@
# base settings
background #d9e0da
foreground #1e231f
selection_background #c9d0ca
selection_foreground #2a2f2b
cursor #2a2f2b
cursor_text #c9d0ca
# black
color0 #d9e0da
color8 #b9c0ba
# red
color1 #b42219
color9 #85160f
# green
color2 #377242
color10 #25532e
# yellow
color3 #6a6535
color11 #4c4928
# blue
color4 #3860ac
color12 #234485
# magenta (red)
color5 #905201
color13 #673c0c
# cyan (blue)
color6 #3860ac
color14 #234485
## white
color7 #373c37
color15 #1e231f

View File

@ -0,0 +1,41 @@
# base settings
background #131713
foreground #c9d0ca
selection_background #1e231f
selection_foreground #b9c0ba
cursor #b9c0ba
cursor_text #1e231f
# black
color0 #131713
color8 #2a2f2b
# red
color1 #dc4234
color9 #f37060
# green
color2 #4f925a
color10 #6eb178
# yellow
color3 #888346
color11 #a7a15f
# blue
color4 #557ecc
color12 #799ee3
# magenta (red)
color5 #b76b0c
color13 #d98937
# cyan (blue)
color6 #557ecc
color14 #799ee3
## white
color7 #a9b0aa
color15 #c9d0ca

View File

@ -0,0 +1,41 @@
# base settings
background #eaf1ea
foreground #2a2f2b
selection_background #d9e0da
selection_foreground #373c37
cursor #373c37
cursor_text #d9e0da
# black
color0 #eaf1ea
color8 #c9d0ca
# red
color1 #ca2f24
color9 #9d1a13
# green
color2 #42824e
color10 #2e6337
# yellow
color3 #79743d
color11 #5b572e
# blue
color4 #456fbe
color12 #2d5299
# magenta (red)
color5 #a45e03
color13 #7c4706
# cyan (blue)
color6 #456fbe
color14 #2d5299
## white
color7 #444944
color15 #2a2f2b

View File

@ -6,14 +6,14 @@ selection_background #222222
selection_foreground #bebebe
cursor #bebebe
cursor_text_color #222222
cursor_text #222222
# black
color0 #161616
color8 #2e2e2e
# red
color1 #dc4134
color1 #dc4234
color9 #f37060
# green
@ -28,9 +28,9 @@ color11 #a7a15f
color4 #557ecc
color12 #799ee3
# purple (red)
color5 #b86b05
color13 #da8934
# magenta (red)
color5 #b76b0c
color13 #d98937
# cyan (blue)
color6 #557ecc
@ -39,4 +39,3 @@ color14 #799ee3
## white
color7 #aeaeae
color15 #cecece

View File

@ -0,0 +1,41 @@
# base settings
background #eeeeee
foreground #2e2e2e
selection_background #dedede
selection_foreground #3a3a3a
cursor #3a3a3a
cursor_text #dedede
# black
color0 #eeeeee
color8 #cecece
# red
color1 #ca2f24
color9 #9d1a13
# green
color2 #42824e
color10 #2e6337
# yellow
color3 #79743d
color11 #5b572e
# blue
color4 #456fbe
color12 #2d5299
# magenta (red)
color5 #a45e03
color13 #7c4706
# cyan (blue)
color6 #456fbe
color14 #2d5299
## white
color7 #484848
color15 #2e2e2e

View File

@ -0,0 +1,41 @@
# base settings
background #171611
foreground #cfcec6
selection_background #22221c
selection_foreground #bfbeb6
cursor #bfbeb6
cursor_text #22221c
# black
color0 #171611
color8 #2f2e28
# red
color1 #dc4234
color9 #f37060
# green
color2 #4f925a
color10 #6eb178
# yellow
color3 #888346
color11 #a7a15f
# blue
color4 #557ecc
color12 #799ee3
# magenta (red)
color5 #b76b0c
color13 #d98937
# cyan (blue)
color6 #557ecc
color14 #799ee3
## white
color7 #afaea7
color15 #cfcec6

View File

@ -0,0 +1,41 @@
# base settings
background #efefe7
foreground #2f2e28
selection_background #dfded6
selection_foreground #3b3b34
cursor #3b3b34
cursor_text #dfded6
# black
color0 #efefe7
color8 #cfcec6
# red
color1 #ca2f24
color9 #9d1a13
# green
color2 #42824e
color10 #2e6337
# yellow
color3 #79743d
color11 #5b572e
# blue
color4 #456fbe
color12 #2d5299
# magenta (red)
color5 #a45e03
color13 #7c4706
# cyan (blue)
color6 #456fbe
color14 #2d5299
## white
color7 #484841
color15 #2f2e28

View File

@ -0,0 +1,41 @@
# base settings
background #13161b
foreground #caced5
selection_background #1f2227
selection_foreground #babec5
cursor #babec5
cursor_text #1f2227
# black
color0 #13161b
color8 #2b2e33
# red
color1 #dc4234
color9 #f37060
# green
color2 #4f925a
color10 #6eb178
# yellow
color3 #888346
color11 #a7a15f
# blue
color4 #557ecc
color12 #799ee3
# magenta (red)
color5 #b76b0c
color13 #d98937
# cyan (blue)
color6 #557ecc
color14 #799ee3
## white
color7 #aaaeb5
color15 #caced5

View File

@ -0,0 +1,41 @@
# base settings
background #eaeff6
foreground #2b2e33
selection_background #dadee6
selection_foreground #373b40
cursor #373b40
cursor_text #dadee6
# black
color0 #eaeff6
color8 #caced5
# red
color1 #ca2f24
color9 #9d1a13
# green
color2 #42824e
color10 #2e6337
# yellow
color3 #79743d
color11 #5b572e
# blue
color4 #456fbe
color12 #2d5299
# magenta (red)
color5 #a45e03
color13 #7c4706
# cyan (blue)
color6 #456fbe
color14 #2d5299
## white
color7 #44484e
color15 #2b2e33

View File

@ -6,7 +6,7 @@ selection_background #2e2e2e
selection_foreground #cecece
cursor #cecece
cursor_text_color #2e2e2e
cursor_text #2e2e2e
# black
color0 #222222
@ -28,8 +28,8 @@ color11 #b7b170
color4 #658ed9
color12 #8daeeb
# purple (red)
color5 #ca791c
# magenta (red)
color5 #c97920
color13 #e79a51
# cyan (blue)
@ -39,4 +39,3 @@ color14 #8daeeb
## white
color7 #bebebe
color15 #dedede

View File

@ -0,0 +1,41 @@
# base settings
background #dedede
foreground #222222
selection_background #cecece
selection_foreground #2e2e2e
cursor #2e2e2e
cursor_text #cecece
# black
color0 #dedede
color8 #bebebe
# red
color1 #b42219
color9 #85160f
# green
color2 #377242
color10 #25532e
# yellow
color3 #6a6535
color11 #4c4928
# blue
color4 #3860ac
color12 #234485
# magenta (red)
color5 #905201
color13 #673c0c
# cyan (blue)
color6 #3860ac
color14 #234485
## white
color7 #3a3a3a
color15 #222222

View File

@ -0,0 +1,41 @@
# base settings
background #22221c
foreground #dfded6
selection_background #2f2e28
selection_foreground #cfcec6
cursor #cfcec6
cursor_text #2f2e28
# black
color0 #22221c
color8 #3b3b34
# red
color1 #e95949
color9 #fa897a
# green
color2 #5da268
color10 #80c089
# yellow
color3 #989250
color11 #b7b170
# blue
color4 #658ed9
color12 #8daeeb
# magenta (red)
color5 #c97920
color13 #e79a51
# cyan (blue)
color6 #658ed9
color14 #8daeeb
## white
color7 #bfbeb6
color15 #dfded6

View File

@ -0,0 +1,41 @@
# base settings
background #dfded6
foreground #22221c
selection_background #cfcec6
selection_foreground #2f2e28
cursor #2f2e28
cursor_text #cfcec6
# black
color0 #dfded6
color8 #bfbeb6
# red
color1 #b42219
color9 #85160f
# green
color2 #377242
color10 #25532e
# yellow
color3 #6a6535
color11 #4c4928
# blue
color4 #3860ac
color12 #234485
# magenta (red)
color5 #905201
color13 #673c0c
# cyan (blue)
color6 #3860ac
color14 #234485
## white
color7 #3b3b34
color15 #22221c

View File

@ -1,16 +1,16 @@
# base settings
background #29302d
foreground #e8f1ed
background #2a2f2b
foreground #eaf1ea
selection_background #353c3a
selection_foreground #d7e0dd
selection_background #373c37
selection_foreground #d9e0da
cursor #d7e0dd
cursor_text_color #353c3a
cursor #d9e0da
cursor_text #373c37
# black
color0 #29302d
color8 #424a47
color0 #2a2f2b
color8 #444944
# red
color1 #f37060
@ -28,8 +28,8 @@ color11 #c6c182
color4 #799ee3
color12 #a2bef2
# purple (red)
color5 #da8934
# magenta (red)
color5 #d98937
color13 #f1ad6f
# cyan (blue)
@ -37,6 +37,5 @@ color6 #799ee3
color14 #a2bef2
## white
color7 #c7d0cc
color15 #e8f1ed
color7 #c9d0ca
color15 #eaf1ea

View File

@ -0,0 +1,41 @@
# base settings
background #c9d0ca
foreground #131713
selection_background #b9c0ba
selection_foreground #1e231f
cursor #1e231f
cursor_text #b9c0ba
# black
color0 #c9d0ca
color8 #a9b0aa
# red
color1 #9d1a13
color9 #6e110b
# green
color2 #2e6337
color10 #1c4524
# yellow
color3 #5b572e
color11 #3e3c20
# blue
color4 #2d5299
color12 #1a3771
# magenta (red)
color5 #7c4706
color13 #54310d
# cyan (blue)
color6 #2d5299
color14 #1a3771
## white
color7 #2a2f2b
color15 #1e231f

View File

@ -6,7 +6,7 @@ selection_background #3a3a3a
selection_foreground #dedede
cursor #dedede
cursor_text_color #3a3a3a
cursor_text #3a3a3a
# black
color0 #2e2e2e
@ -28,8 +28,8 @@ color11 #c6c182
color4 #799ee3
color12 #a2bef2
# purple (red)
color5 #da8934
# magenta (red)
color5 #d98937
color13 #f1ad6f
# cyan (blue)
@ -39,4 +39,3 @@ color14 #a2bef2
## white
color7 #cecece
color15 #eeeeee

View File

@ -0,0 +1,41 @@
# base settings
background #cecece
foreground #161616
selection_background #bebebe
selection_foreground #222222
cursor #222222
cursor_text #bebebe
# black
color0 #cecece
color8 #aeaeae
# red
color1 #9d1a13
color9 #6e110b
# green
color2 #2e6337
color10 #1c4524
# yellow
color3 #5b572e
color11 #3e3c20
# blue
color4 #2d5299
color12 #1a3771
# magenta (red)
color5 #7c4706
color13 #54310d
# cyan (blue)
color6 #2d5299
color14 #1a3771
## white
color7 #2e2e2e
color15 #222222

View File

@ -1,16 +1,16 @@
# base settings
background #2a2e33
foreground #e9eff6
background #2f2e28
foreground #efefe7
selection_background #363b40
selection_foreground #d9dfe5
selection_background #3b3b34
selection_foreground #dfded6
cursor #d9dfe5
cursor_text_color #363b40
cursor #dfded6
cursor_text #3b3b34
# black
color0 #2a2e33
color8 #43484e
color0 #2f2e28
color8 #484841
# red
color1 #f37060
@ -28,8 +28,8 @@ color11 #c6c182
color4 #799ee3
color12 #a2bef2
# purple (red)
color5 #da8934
# magenta (red)
color5 #d98937
color13 #f1ad6f
# cyan (blue)
@ -37,6 +37,5 @@ color6 #799ee3
color14 #a2bef2
## white
color7 #c8ced5
color15 #e9eff6
color7 #cfcec6
color15 #efefe7

View File

@ -0,0 +1,41 @@
# base settings
background #cfcec6
foreground #171611
selection_background #bfbeb6
selection_foreground #22221c
cursor #22221c
cursor_text #bfbeb6
# black
color0 #cfcec6
color8 #afaea7
# red
color1 #9d1a13
color9 #6e110b
# green
color2 #2e6337
color10 #1c4524
# yellow
color3 #5b572e
color11 #3e3c20
# blue
color4 #2d5299
color12 #1a3771
# magenta (red)
color5 #7c4706
color13 #54310d
# cyan (blue)
color6 #2d5299
color14 #1a3771
## white
color7 #2f2e28
color15 #22221c

View File

@ -1,16 +1,16 @@
# base settings
background #302e28
foreground #f1eee6
background #2b2e33
foreground #eaeff6
selection_background #3d3a34
selection_foreground #e1ded6
selection_background #373b40
selection_foreground #dadee6
cursor #e1ded6
cursor_text_color #3d3a34
cursor #dadee6
cursor_text #373b40
# black
color0 #302e28
color8 #4a4841
color0 #2b2e33
color8 #44484e
# red
color1 #f37060
@ -28,8 +28,8 @@ color11 #c6c182
color4 #799ee3
color12 #a2bef2
# purple (red)
color5 #da8934
# magenta (red)
color5 #d98937
color13 #f1ad6f
# cyan (blue)
@ -37,6 +37,5 @@ color6 #799ee3
color14 #a2bef2
## white
color7 #d0cec6
color15 #f1eee6
color7 #caced5
color15 #eaeff6

View File

@ -0,0 +1,41 @@
# base settings
background #caced5
foreground #13161b
selection_background #babec5
selection_foreground #1f2227
cursor #1f2227
cursor_text #babec5
# black
color0 #caced5
color8 #aaaeb5
# red
color1 #9d1a13
color9 #6e110b
# green
color2 #2e6337
color10 #1c4524
# yellow
color3 #5b572e
color11 #3e3c20
# blue
color4 #2d5299
color12 #1a3771
# magenta (red)
color5 #7c4706
color13 #54310d
# cyan (blue)
color6 #2d5299
color14 #1a3771
## white
color7 #2b2e33
color15 #1f2227

View File

@ -0,0 +1,41 @@
# base settings
background #1f2227
foreground #dadee6
selection_background #2b2e33
selection_foreground #caced5
cursor #caced5
cursor_text #2b2e33
# black
color0 #1f2227
color8 #373b40
# red
color1 #e95949
color9 #fa897a
# green
color2 #5da268
color10 #80c089
# yellow
color3 #989250
color11 #b7b170
# blue
color4 #658ed9
color12 #8daeeb
# magenta (red)
color5 #c97920
color13 #e79a51
# cyan (blue)
color6 #658ed9
color14 #8daeeb
## white
color7 #babec5
color15 #dadee6

View File

@ -0,0 +1,41 @@
# base settings
background #dadee6
foreground #1f2227
selection_background #caced5
selection_foreground #2b2e33
cursor #2b2e33
cursor_text #caced5
# black
color0 #dadee6
color8 #babec5
# red
color1 #b42219
color9 #85160f
# green
color2 #377242
color10 #25532e
# yellow
color3 #6a6535
color11 #4c4928
# blue
color4 #3860ac
color12 #234485
# magenta (red)
color5 #905201
color13 #673c0c
# cyan (blue)
color6 #3860ac
color14 #234485
## white
color7 #373b40
color15 #1f2227

View File

@ -7,28 +7,50 @@
" - `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.
"
" There are several kinds of syntax identifiers:
"
" - Vim/editor related (e.g., Normal, Folded): these control colors of central Vim
" elements, like whitespace, bold text, the foldcolumn, etc
" - Generic syntax identifiers (e.g., Boolean, Conditional): these are key groups for
" syntax elements that various language syntax files link to. For instance, Python
" syntax files might have specific patterns that match function keywords like "def," and
" the resulting syntax region can be highlighted by linking it to the core "Function"
" highlight identifier.
" - Treesitter-based identifiers (e.g., @variable, @boolean): highlight groups for
" treesitter-based syntax highlighting, which can replace regex-based matching when
" enabled for richer (and often faster) highlighting. These groups can be linked to the
" core identifiers like any other language.
"
" *Note*: each of these identifiers can add a lang-specific suffix to style those groups
" as they apply to particular languages. For ex, `@boolean.python ThemeRed` would style
" Python booleans red, while the lang-agnostic `@boolean` definition remains.
" - Plugin-oriented identifiers (e.g., SpellBad, ErrorFloat): these are groups mostly core
" to vim/nvim, but often appear only in the context of plugins or certain modules (like
" LSP). For instance, ErrorFloat styles floating windows that might be drawn by nvim's
" built-in LSP hover info.
" 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:gui00 = "#27201f"
let g:base16_gui00 = "#27201f"
let s:gui01 = "#332c2b"
let g:base16_gui01 = "#332c2b"
let s:gui02 = "#403837"
let g:base16_gui02 = "#403837"
let s:gui03 = "#4d4644"
let g:base16_gui03 = "#4d4644"
let s:gui04 = "#b5abaa"
let g:base16_gui04 = "#b5abaa"
let s:gui05 = "#c5bbba"
let g:base16_gui05 = "#c5bbba"
let s:gui06 = "#d5cbca"
let g:base16_gui06 = "#d5cbca"
let s:gui07 = "#e5dbda"
let g:base16_gui07 = "#e5dbda"
let s:gui08 = "#e95949"
let g:base16_gui08 = "#e95949"
let s:gui09 = "#ca791c"
let g:base16_gui09 = "#ca791c"
let s:gui09 = "#c97920"
let g:base16_gui09 = "#c97920"
let s:gui0A = "#989250"
let g:base16_gui0A = "#989250"
let s:gui0B = "#5da268"
@ -42,7 +64,7 @@ let g:base16_gui0E = "#658ed9"
let s:gui0F = "#e95949"
let g:base16_gui0F = "#e95949"
let s:grey = "#838079"
let s:grey = "#786f6e"
" Terminal color definitions
let s:cterm00 = "00"
@ -81,22 +103,22 @@ let g:base16_cterm0F = "14"
" Neovim terminal colours
if has("nvim")
let g:terminal_color_0 = "#24211c"
let g:terminal_color_0 = "#27201f"
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_7 = "#c5bbba"
let g:terminal_color_8 = "#4d4644"
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_15 = "#e5dbda"
let g:terminal_color_background = g:terminal_color_0
let g:terminal_color_foreground = g:terminal_color_5
@ -107,22 +129,22 @@ if has("nvim")
elseif has("terminal")
let g:terminal_ansi_colors = [
\ "#24211c",
\ "#27201f",
\ "#e95949",
\ "#5da268",
\ "#989250",
\ "#658ed9",
\ "#658ed9",
\ "#5da268",
\ "#c0bdb6",
\ "#4a4841",
\ "#c5bbba",
\ "#4d4644",
\ "#e95949",
\ "#5da268",
\ "#989250",
\ "#658ed9",
\ "#658ed9",
\ "#5da268",
\ "#e1ded6",
\ "#e5dbda",
\ ]
endif
@ -199,7 +221,25 @@ call <sid>hi("ThemeFg3", s:gui04, "", s:cterm04, "", "", "")
call <sid>hi("ThemeFg2", s:gui05, "", s:cterm05, "", "", "")
call <sid>hi("ThemeFg1", s:gui06, "", s:cterm06, "", "", "")
call <sid>hi("ThemeFg0", s:gui07, "", s:cterm07, "", "", "")
"
call <sid>hi("ThemeBg0bold", s:gui00, "", s:cterm00, "", "bold", "")
call <sid>hi("ThemeBg1bold", s:gui01, "", s:cterm01, "", "bold", "")
call <sid>hi("ThemeBg2bold", s:gui02, "", s:cterm02, "", "bold", "")
call <sid>hi("ThemeBg3bold", s:gui03, "", s:cterm03, "", "bold", "")
call <sid>hi("ThemeFg3bold", s:gui04, "", s:cterm04, "", "bold", "")
call <sid>hi("ThemeFg2bold", s:gui05, "", s:cterm05, "", "bold", "")
call <sid>hi("ThemeFg1bold", s:gui06, "", s:cterm06, "", "bold", "")
call <sid>hi("ThemeFg0bold", s:gui07, "", s:cterm07, "", "bold", "")
call <sid>hi("ThemeBg0Italic", s:gui00, "", s:cterm00, "", "italic", "")
call <sid>hi("ThemeBg1Italic", s:gui01, "", s:cterm01, "", "italic", "")
call <sid>hi("ThemeBg2Italic", s:gui02, "", s:cterm02, "", "italic", "")
call <sid>hi("ThemeBg3Italic", s:gui03, "", s:cterm03, "", "italic", "")
call <sid>hi("ThemeFg3Italic", s:gui04, "", s:cterm04, "", "italic", "")
call <sid>hi("ThemeFg2Italic", s:gui05, "", s:cterm05, "", "italic", "")
call <sid>hi("ThemeFg1Italic", s:gui06, "", s:cterm06, "", "italic", "")
call <sid>hi("ThemeFg0Italic", s:gui07, "", s:cterm07, "", "italic", "")
call <sid>hi("ThemeRed", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("ThemeOrange", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("ThemeYellow", s:gui0A, "", s:cterm0A, "", "", "")
@ -209,6 +249,15 @@ call <sid>hi("ThemeBlue", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("ThemeViolet", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("ThemeMagenta", s:gui0F, "", s:cterm0F, "", "", "")
call <sid>hi("ThemeRedNone", s:gui08, "", s:cterm08, "", "NONE", "")
call <sid>hi("ThemeOrangeNone", s:gui09, "", s:cterm09, "", "NONE", "")
call <sid>hi("ThemeYellowNone", s:gui0A, "", s:cterm0A, "", "NONE", "")
call <sid>hi("ThemeGreenNone", s:gui0B, "", s:cterm0B, "", "NONE", "")
call <sid>hi("ThemeCyanNone", s:gui0C, "", s:cterm0C, "", "NONE", "")
call <sid>hi("ThemeBlueNone", s:gui0D, "", s:cterm0D, "", "NONE", "")
call <sid>hi("ThemeVioletNone", s:gui0E, "", s:cterm0E, "", "NONE", "")
call <sid>hi("ThemeMagentaNone", s:gui0F, "", s:cterm0F, "", "NONE", "")
call <sid>hi("ThemeRedBold", s:gui08, "", s:cterm08, "", "bold", "")
call <sid>hi("ThemeOrangeBold", s:gui09, "", s:cterm09, "", "bold", "")
call <sid>hi("ThemeYellowBold", s:gui0A, "", s:cterm0A, "", "bold", "")
@ -227,22 +276,33 @@ call <sid>hi("ThemeBlueItalic", s:gui0D, "", s:cterm0D, "", "italic", "")
call <sid>hi("ThemeVioletItalic", s:gui0E, "", s:cterm0E, "", "italic", "")
call <sid>hi("ThemeMagentaItalic", s:gui0F, "", s:cterm0F, "", "italic", "")
call <sid>hi("ThemeRedBoldItalic", s:gui08, "", s:cterm08, "", "bold,italic", "")
call <sid>hi("ThemeOrangeBoldItalic", s:gui09, "", s:cterm09, "", "bold,italic", "")
call <sid>hi("ThemeYellowBoldItalic", s:gui0A, "", s:cterm0A, "", "bold,italic", "")
call <sid>hi("ThemeGreenBoldItalic", s:gui0B, "", s:cterm0B, "", "bold,italic", "")
call <sid>hi("ThemeCyanBoldItalic", s:gui0C, "", s:cterm0C, "", "bold,italic", "")
call <sid>hi("ThemeBlueBoldItalic", s:gui0D, "", s:cterm0D, "", "bold,italic", "")
call <sid>hi("ThemeVioletBoldItalic", s:gui0E, "", s:cterm0E, "", "bold,italic", "")
call <sid>hi("ThemeMagentaBoldItalic", s:gui0F, "", s:cterm0F, "", "bold,italic", "")
call <sid>hi("ThemeGrey", s:grey, "", s:cterm03, "", "", "")
call <sid>hi("ThemeGreyItalic", s:grey, "", s:cterm03, "", "italic", "")
" Vim editor colors
call <sid>hi("Normal", s:gui05, s:guibg, s:cterm05, s:ctermbg, "", "")
call <sid>hi("Bold", "", "", "", "", "bold", "")
call <sid>hi("Italic", "", "", "", "", "italic", "")
call <sid>hi("BoldItalic", "", "", "", "", "italic,bold", "")
call <sid>hi("Normal", s:gui05, s:guibg, s:cterm05, s:ctermbg, "", "")
call <sid>hi("Debug", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("Directory", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("Error", s:guibg, s:gui08, s:ctermbg, s:cterm08, "", "")
call <sid>hi("ErrorMsg", s:gui08, s:guibg, s:cterm08, s:ctermbg, "", "")
call <sid>hi("Exception", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("FoldColumn", s:gui03, s:guibg, s:cterm03, s:ctermbg, "", "")
call <sid>hi("Folded", s:gui02, s:guibg, s:cterm02, s:ctermbg, "", "")
call <sid>hi("Folded", s:gui03, s:gui01, s:cterm02, s:ctermbg, "", "")
call <sid>hi("IncSearch", s:gui01, s:gui09, s:cterm01, s:cterm09, "none", "")
call <sid>hi("Italic", "", "", "", "", "italic", "")
call <sid>hi("Macro", s:gui0C, "", s:cterm0C, "", "", "")
call <sid>hi("MatchParen", "", s:gui03, "", s:cterm03, "", "")
call <sid>hi("ModeMsg", s:gui0B, "", s:cterm0B, "", "", "")
@ -258,7 +318,10 @@ call <sid>hi("VisualNOS", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("WarningMsg", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("WildMenu", s:guibg, s:gui06, s:ctermbg, s:cterm05, "", "")
call <sid>hi("Title", s:gui0D, "", s:cterm0D, "", "none", "")
call <sid>hi("Conceal", s:gui0D, s:guibg, s:cterm0D, s:ctermbg, "", "")
"call <sid>hi("Conceal", s:gui0D, s:guibg, s:cterm0D, s:ctermbg, "", "")
hi! link Conceal ThemeBlue
call <sid>hi("Cursor", s:gui05, s:guibg, "", "", "inverse", "")
call <sid>hi("NonText", s:gui03, "", s:cterm03, "", "", "")
call <sid>hi("Whitespace", s:gui03, "", s:cterm03, "", "", "")
@ -270,7 +333,7 @@ call <sid>hi("VertSplit", s:gui01, s:guibg, s:cterm01, s:ctermbg, "none", ""
call <sid>hi("ColorColumn", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("CursorColumn", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("CursorLine", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("CursorLineNr", s:gui04, s:gui01, s:cterm04, s:cterm01, "bold", "")
call <sid>hi("CursorLineNr", s:gui04, s:gui00, s:cterm04, s:cterm01, "", "")
call <sid>hi("QuickFixLine", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("PMenu", s:gui06, s:gui01, s:cterm06, s:cterm01, "none", "")
call <sid>hi("PMenuSel", s:gui06, s:gui02, s:cterm06, s:cterm02, "", "")
@ -281,27 +344,21 @@ call <sid>hi("TabLineFill", s:gui03, s:gui01, s:cterm03, s:cterm01, "none", ""
call <sid>hi("TabLineSel", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "none", "")
" Standard syntax
call <sid>hi("Define", s:gui0E, "", s:cterm0E, "", "none", "")
call <sid>hi("Identifier", s:gui06, "", s:cterm05, "", "none", "")
call <sid>hi("Keyword", s:gui0D, "", s:cterm0E, "", "none", "")
call <sid>hi("Todo", s:gui08, s:guibg, s:cterm08, s:ctermbg, "italic", "")
hi! link Boolean ThemeOrange
hi! link Character ThemeRed
"call <sid>hi("Comment", s:gui03, "", s:cterm03, "", "italic", "")
hi! link Comment ThemeGreyItalic
hi! link Conditional ThemeRed
hi! link Constant ThemeOrange
call <sid>hi("Define", s:gui0E, "", s:cterm0E, "", "none", "")
hi! link Delimiter ThemeFg1
if has("patch-8.0.1038")
call <sid>hi("Deprecated", "", "", "", "", "strikethrough", "")
endif
hi! link Float ThemeOrange
hi! link Function ThemeBlue
call <sid>hi("Identifier", s:gui06, "", s:cterm05, "", "none", "")
hi! link Include ThemeBlue
hi! link Constant ThemeOrange
call <sid>hi("Keyword", s:gui0E, "", s:cterm0E, "", "none", "")
hi! link Label ThemeOrange
hi! link Number ThemeOrange
hi! link Operator ThemeYellow
@ -314,101 +371,145 @@ hi! link StorageClass ThemeOrange
hi! link String ThemeGreen
hi! link Structure ThemeOrange
hi! link Tag ThemeOrange
call <sid>hi("Todo", s:gui08, s:guibg, s:cterm08, s:ctermbg, "italic", "")
call <sid>hi("Type", s:gui0A, "", s:cterm0A, "", "none", "")
hi! link Type ThemeYellow
hi! link Typedef ThemeOrange
" Treesitter
if has("nvim-0.8.0")
call <sid>hi("@field", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@property", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@namespace", s:gui06, "", s:cterm05, "", "italic", "")
call <sid>hi("@variable.builtin", s:gui06, "", s:cterm05, "", "italic", "")
call <sid>hi("@text.reference", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@text.uri", s:gui08, "", s:cterm08, "", "italic", "")
hi! link @field ThemeRed
hi! link @property ThemeRed
hi! link @namespace ThemeFg1Italic
hi! link @variable.builtin ThemeFg1Italic
hi! link @variable ThemeFg2
hi! link @conceal ThemeBlue
" Annotations & Attributes
call <sid>hi("@annotation", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@attribute", s:gui0D, "", s:cterm0D, "", "", "")
hi! link @text.uri ThemeRedItalic
hi! link @text.reference ThemeRed
" Booleans, Characters & Comments
call <sid>hi("@boolean", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@character", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@character.special", s:gui0F, "", s:cterm0F, "", "", "")
call <sid>hi("@comment", s:gui03, "", s:cterm03, "", "", "")
hi! link @annotation ThemeViolet
hi! link @attribute ThemeBlue
" Conditionals, Constants & Debugging
call <sid>hi("@keyword.conditional", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@constant", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@constant.builtin", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@constant.macro", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@keyword.debug", s:gui08, "", s:cterm08, "", "", "")
hi! link @boolean ThemeOrange
hi! link @character ThemeRed
hi! link @character.special ThemeMagenta
hi! link @comment Comment
" Directives & Exceptions
call <sid>hi("@keyword.directive.define", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@keyword.exception", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @constant ThemeBlue
hi! link @constant.builtin ThemeBlue
" Floats & Functions
call <sid>hi("@number.float", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@function", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@function.builtin", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@function.call", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@function.macro", s:gui08, "", s:cterm08, "", "", "")
hi! link @constant.macro ThemeRed
" Imports, Operators & Returns
call <sid>hi("@keyword.import", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@keyword.coroutine", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@keyword.operator", s:gui06, "", s:cterm05, "", "", "")
call <sid>hi("@keyword.return", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @keyword.directive.define ThemeViolet
hi! link @keyword.exception ThemeRed
" Methods & Namespaces
call <sid>hi("@function.method", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@function.method.call", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@namespace.builtin", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @comment.error ThemeRed
hi! link @number.float ThemeRed
hi! link @keyword.function ThemeRed
" Numbers & Directives
call <sid>hi("@none", s:gui06, "", s:cterm05, "", "", "")
call <sid>hi("@number", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@keyword.directive", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @function ThemeBlue
hi! link @function.builtin ThemeBlue
hi! link @function.call ThemeBlue
hi! link @function.macro ThemeRed
hi! link @function.method ThemeBlue
hi! link @function.method.call ThemeBlue
" Repeats, Storage & Strings
call <sid>hi("@keyword.repeat", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@keyword.storage", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@string", s:gui0B, "", s:cterm0B, "", "", "")
hi! link @keyword.debug ThemeRed
hi! link @keyword.conditional ThemeRed
hi! link @keyword.import ThemeViolet
hi! link @keyword.coroutine ThemeViolet
hi! link @keyword.operator ThemeYellow
hi! link @keyword.directive ThemeViolet
hi! link @keyword.repeat ThemeViolet
hi! link @keyword.storage ThemeViolet
hi! link @keyword.return ThemeRed
" Tags & Markup
call <sid>hi("@markup.link.label", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.link.label.symbol", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@tag", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@tag.attribute", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@tag.delimiter", s:gui0F, "", s:cterm0F, "", "", "")
hi! link @constructor ThemeBlue
hi! link @namespace.builtin ThemeViolet
" More Markup
call <sid>hi("@markup", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.environment", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.environment.name", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.raw", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@markup.math", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.strong", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.emphasis", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.strikethrough", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.underline", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.heading", s:gui0D, "", s:cterm0D, "", "", "")
hi! link @none ThemeFg1
hi! link @number ThemeOrange
hi! link @string ThemeGreen
" Comments & Types
call <sid>hi("@comment.note", s:gui03, "", s:cterm03, "", "", "")
call <sid>hi("@comment.error", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@comment.hint", s:gui0B, "", s:cterm0B, "", "", "")
call <sid>hi("@comment.info", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@comment.warning", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@comment.todo", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.link.url", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@type", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@type.definition", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@type.qualifier", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @tag ThemeRed
hi! link @tag.delimiter ThemeViolet
hi! link @tag.attribute ThemeYellow
" affects markdown
hi! link @markup ThemeYellow
hi! link @markup.raw ThemeGreen
hi! link @markup.raw.block.lang ThemeFg2Bold
hi! link @markup.raw.block.marker ThemeRed
"call <sid>hi("@markup.raw.block.lang", s:gui08, "#1e0000", "", s:ctermbg, "", "")
hi! link @markup.list ThemeBlue
hi! link @markup.quote ThemeGrey
hi! link @markup.link ThemeYellow " borders
hi! link @markup.link.text ThemeBlue
hi! link @markup.link.label ThemeYellow
hi! link @markup.link.url ThemeYellow
hi! link @markup.link.dest ThemeFg3
hi! link @markup.link.wiki ThemeYellow
hi! link @markup.link.wiki.text ThemeBlue
hi! link @markup.link.wiki.label ThemeYellow
"hi! link @markup.link.label.symbol ThemeGreen
"hi! link markdownWikiLink ThemeViolet
"
hi! link @markup.environment ThemeYellow
hi! link @markup.environment.name ThemeYellow
hi! link @markup.math ThemeYellow
hi! link @punctuation.delimiter.latex ThemeOrange
hi! link @markup.strong Bold
hi! link @markup.emphasis Bold
hi! link @markup.strikethrough ThemeYellow
hi! link @markup.underline ThemeYellow
hi! link @comment.info ThemeBlue
hi! link @comment.todo ThemeYellow
hi! link @comment.note ThemeBg3
hi! link @comment.hint ThemeGreen
hi! link @comment.warning ThemeOrange
hi! link @type ThemeYellow
hi! link @type.builtin ThemeOrange
hi! link @type.definition ThemeViolet
hi! link @type.qualifier ThemeViolet
" Markdown
" hi! link @spell.markdown ThemeFg3
"call <sid>hi("@markup.heading.marker", s:gui08, "", "", s:ctermbg, "bold", "")
"hi! link @markup.heading ThemeRed
hi! link @markup.heading.marker ThemeOrange
hi! link @markup.heading.title ThemeRed "Italic
" set this for a strong background
"call <sid>hi("@markup.heading.title", s:gui08, "#440503", "", s:ctermbg, "italic", "")
hi! link @markup.heading.title.1 Bold
hi! link @markup.heading.title.3 Italic
"hi! link @markup.heading.4.title Italic
" YAML
hi! link @string.yaml ThemeBlue
hi! link @punctuation.delimiter.yaml ThemeGreen
hi! link @property.yaml ThemeFg2
" Diff
hi! link @diff.minus ThemeRed
hi! link @diff.plus ThemeGreen
call <sid>hi("TreesitterContext", "", s:gui00, "", "", "", "")
"hi TreesitterContextLineNumberBottom gui=underline guisp=Gray
"call <sid>hi("TreesitterContextBottom", "", "", "", "", "underline", s:gui02)
call <sid>hi("TreesitterContextSeparator", s:gui03, "", "", "", "", "")
"call <sid>hi("TreesitterContextLineNumberBottom", "", "", "", "", "underline", s:gui02)
endif
" Standard highlights to be used by plugins
@ -433,6 +534,7 @@ call <sid>hi("WarningFloat", s:gui09, s:gui01, s:cterm09, s:cterm01, "", "")
call <sid>hi("InfoFloat", s:gui0D, s:gui01, s:cterm0D, s:cterm01, "", "")
call <sid>hi("HintFloat", s:gui0C, s:gui01, s:cterm0C, s:cterm01, "", "")
call <sid>hi("OkFloat", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "")
call <sid>hi("NormalFloat", s:gui05, s:gui01, s:cterm05, s:cterm01, "", "")
call <sid>hi("ErrorHighlight", "", "", s:ctermbg, s:cterm08, "underline", s:gui08)
call <sid>hi("WarningHighlight", "", "", s:ctermbg, s:cterm09, "underline", s:gui09)
@ -449,6 +551,62 @@ call <sid>hi("ReferenceText", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "", "")
call <sid>hi("ReferenceRead", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "", "")
call <sid>hi("ReferenceWrite", s:gui01, s:gui08, s:cterm01, s:cterm08, "", "")
" 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
" "
" LANGUAGES
" "
" C
call <sid>hi("cOperator", s:gui0C, "", s:cterm0C, "", "", "")
call <sid>hi("cPreCondit", s:gui0E, "", s:cterm0E, "", "", "")
@ -728,8 +886,8 @@ call <sid>hi("phpMethodsVar", s:gui0C, "", s:cterm0C, "", "", "")
" hi! link pythonBuiltinObj ThemeCyan
" hi! link pythonBuiltinFunc ThemeGreen
" hi! link pythonFunction Function
hi! link pythonDecorator ThemeYellow
hi! link pythonDecoratorName ThemeYellow
" hi! link pythonDecorator ThemeYellow
" hi! link pythonDecoratorName ThemeYellow
" hi! link pythonTripleQuotes ThemeGreenItalic
" hi! link pythonInclude ThemeBlue
" hi! link pythonImport ThemeBlue
@ -777,58 +935,6 @@ call <sid>hi("StartifySelect", s:gui0C, "", s:cterm0C, "", "", "")
call <sid>hi("StartifySlash", s:gui03, "", s:cterm03, "", "", "")
call <sid>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 <sid>hi("javaOperator", s:gui0D, "", s:cterm0D, "", "", "")
@ -864,12 +970,18 @@ hi! link markdownUrlTitleDelimiter ThemeGreen
hi! link markdownLink ThemeGreen
hi! link markdownWikiLink ThemeViolet
hi! link markdownUrl ThemeOrange
"hi! link markdownUrl ThemeOrange
hi! link markdownUrl ThemeRed
hi! link markdownUrlProtocol ThemeGreenItalic
hi! link markdownInlineUrl ThemeOrange
hi! link markdownLinkText ThemeViolet
hi! link markdownIdDeclaration markdownLinkText
hi! link pandocAtxHeader ThemeRed
hi! link pandocAtxStart ThemeOrange
"call s:HL('markdownItalic', s:fg3, s:none, s:italic)
"call s:HL('markdownLinkText', s:gray, s:none, s:underline)
@ -880,3 +992,4 @@ delf <sid>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

View File

@ -7,26 +7,48 @@
" - `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.
"
" There are several kinds of syntax identifiers:
"
" - Vim/editor related (e.g., Normal, Folded): these control colors of central Vim
" elements, like whitespace, bold text, the foldcolumn, etc
" - Generic syntax identifiers (e.g., Boolean, Conditional): these are key groups for
" syntax elements that various language syntax files link to. For instance, Python
" syntax files might have specific patterns that match function keywords like "def," and
" the resulting syntax region can be highlighted by linking it to the core "Function"
" highlight identifier.
" - Treesitter-based identifiers (e.g., @variable, @boolean): highlight groups for
" treesitter-based syntax highlighting, which can replace regex-based matching when
" enabled for richer (and often faster) highlighting. These groups can be linked to the
" core identifiers like any other language.
"
" *Note*: each of these identifiers can add a lang-specific suffix to style those groups
" as they apply to particular languages. For ex, `@boolean.python ThemeRed` would style
" Python booleans red, while the lang-agnostic `@boolean` definition remains.
" - Plugin-oriented identifiers (e.g., SpellBad, ErrorFloat): these are groups mostly core
" to vim/nvim, but often appear only in the context of plugins or certain modules (like
" LSP). For instance, ErrorFloat styles floating windows that might be drawn by nvim's
" built-in LSP hover info.
" 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:gui00 = "#e5dbda"
let g:base16_gui00 = "#e5dbda"
let s:gui01 = "#d5cbca"
let g:base16_gui01 = "#d5cbca"
let s:gui02 = "#c5bbba"
let g:base16_gui02 = "#c5bbba"
let s:gui03 = "#b5abaa"
let g:base16_gui03 = "#b5abaa"
let s:gui04 = "#4d4644"
let g:base16_gui04 = "#4d4644"
let s:gui05 = "#403837"
let g:base16_gui05 = "#403837"
let s:gui06 = "#332c2b"
let g:base16_gui06 = "#332c2b"
let s:gui07 = "#27201f"
let g:base16_gui07 = "#27201f"
let s:gui08 = "#b42219"
let g:base16_gui08 = "#b42219"
let s:gui09 = "#905201"
let g:base16_gui09 = "#905201"
let s:gui0A = "#6a6535"
@ -39,10 +61,10 @@ 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:gui0F = "#b42219"
let g:base16_gui0F = "#b42219"
let s:grey = "#66635c"
let s:grey = "#877e7c"
" Terminal color definitions
let s:cterm00 = "00"
@ -81,22 +103,22 @@ 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_0 = "#e5dbda"
let g:terminal_color_1 = "#b42219"
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_7 = "#403837"
let g:terminal_color_8 = "#b5abaa"
let g:terminal_color_9 = "#b42219"
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_15 = "#27201f"
let g:terminal_color_background = g:terminal_color_0
let g:terminal_color_foreground = g:terminal_color_5
@ -107,22 +129,22 @@ if has("nvim")
elseif has("terminal")
let g:terminal_ansi_colors = [
\ "#d0cec6",
\ "#b52119",
\ "#e5dbda",
\ "#b42219",
\ "#377242",
\ "#6a6535",
\ "#3860ac",
\ "#3860ac",
\ "#377242",
\ "#302e28",
\ "#a19e97",
\ "#b52119",
\ "#403837",
\ "#b5abaa",
\ "#b42219",
\ "#377242",
\ "#6a6535",
\ "#3860ac",
\ "#3860ac",
\ "#377242",
\ "#181610",
\ "#27201f",
\ ]
endif
@ -199,7 +221,25 @@ call <sid>hi("ThemeFg3", s:gui04, "", s:cterm04, "", "", "")
call <sid>hi("ThemeFg2", s:gui05, "", s:cterm05, "", "", "")
call <sid>hi("ThemeFg1", s:gui06, "", s:cterm06, "", "", "")
call <sid>hi("ThemeFg0", s:gui07, "", s:cterm07, "", "", "")
"
call <sid>hi("ThemeBg0bold", s:gui00, "", s:cterm00, "", "bold", "")
call <sid>hi("ThemeBg1bold", s:gui01, "", s:cterm01, "", "bold", "")
call <sid>hi("ThemeBg2bold", s:gui02, "", s:cterm02, "", "bold", "")
call <sid>hi("ThemeBg3bold", s:gui03, "", s:cterm03, "", "bold", "")
call <sid>hi("ThemeFg3bold", s:gui04, "", s:cterm04, "", "bold", "")
call <sid>hi("ThemeFg2bold", s:gui05, "", s:cterm05, "", "bold", "")
call <sid>hi("ThemeFg1bold", s:gui06, "", s:cterm06, "", "bold", "")
call <sid>hi("ThemeFg0bold", s:gui07, "", s:cterm07, "", "bold", "")
call <sid>hi("ThemeBg0Italic", s:gui00, "", s:cterm00, "", "italic", "")
call <sid>hi("ThemeBg1Italic", s:gui01, "", s:cterm01, "", "italic", "")
call <sid>hi("ThemeBg2Italic", s:gui02, "", s:cterm02, "", "italic", "")
call <sid>hi("ThemeBg3Italic", s:gui03, "", s:cterm03, "", "italic", "")
call <sid>hi("ThemeFg3Italic", s:gui04, "", s:cterm04, "", "italic", "")
call <sid>hi("ThemeFg2Italic", s:gui05, "", s:cterm05, "", "italic", "")
call <sid>hi("ThemeFg1Italic", s:gui06, "", s:cterm06, "", "italic", "")
call <sid>hi("ThemeFg0Italic", s:gui07, "", s:cterm07, "", "italic", "")
call <sid>hi("ThemeRed", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("ThemeOrange", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("ThemeYellow", s:gui0A, "", s:cterm0A, "", "", "")
@ -209,6 +249,15 @@ call <sid>hi("ThemeBlue", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("ThemeViolet", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("ThemeMagenta", s:gui0F, "", s:cterm0F, "", "", "")
call <sid>hi("ThemeRedNone", s:gui08, "", s:cterm08, "", "NONE", "")
call <sid>hi("ThemeOrangeNone", s:gui09, "", s:cterm09, "", "NONE", "")
call <sid>hi("ThemeYellowNone", s:gui0A, "", s:cterm0A, "", "NONE", "")
call <sid>hi("ThemeGreenNone", s:gui0B, "", s:cterm0B, "", "NONE", "")
call <sid>hi("ThemeCyanNone", s:gui0C, "", s:cterm0C, "", "NONE", "")
call <sid>hi("ThemeBlueNone", s:gui0D, "", s:cterm0D, "", "NONE", "")
call <sid>hi("ThemeVioletNone", s:gui0E, "", s:cterm0E, "", "NONE", "")
call <sid>hi("ThemeMagentaNone", s:gui0F, "", s:cterm0F, "", "NONE", "")
call <sid>hi("ThemeRedBold", s:gui08, "", s:cterm08, "", "bold", "")
call <sid>hi("ThemeOrangeBold", s:gui09, "", s:cterm09, "", "bold", "")
call <sid>hi("ThemeYellowBold", s:gui0A, "", s:cterm0A, "", "bold", "")
@ -227,22 +276,33 @@ call <sid>hi("ThemeBlueItalic", s:gui0D, "", s:cterm0D, "", "italic", "")
call <sid>hi("ThemeVioletItalic", s:gui0E, "", s:cterm0E, "", "italic", "")
call <sid>hi("ThemeMagentaItalic", s:gui0F, "", s:cterm0F, "", "italic", "")
call <sid>hi("ThemeRedBoldItalic", s:gui08, "", s:cterm08, "", "bold,italic", "")
call <sid>hi("ThemeOrangeBoldItalic", s:gui09, "", s:cterm09, "", "bold,italic", "")
call <sid>hi("ThemeYellowBoldItalic", s:gui0A, "", s:cterm0A, "", "bold,italic", "")
call <sid>hi("ThemeGreenBoldItalic", s:gui0B, "", s:cterm0B, "", "bold,italic", "")
call <sid>hi("ThemeCyanBoldItalic", s:gui0C, "", s:cterm0C, "", "bold,italic", "")
call <sid>hi("ThemeBlueBoldItalic", s:gui0D, "", s:cterm0D, "", "bold,italic", "")
call <sid>hi("ThemeVioletBoldItalic", s:gui0E, "", s:cterm0E, "", "bold,italic", "")
call <sid>hi("ThemeMagentaBoldItalic", s:gui0F, "", s:cterm0F, "", "bold,italic", "")
call <sid>hi("ThemeGrey", s:grey, "", s:cterm03, "", "", "")
call <sid>hi("ThemeGreyItalic", s:grey, "", s:cterm03, "", "italic", "")
" Vim editor colors
call <sid>hi("Normal", s:gui05, s:guibg, s:cterm05, s:ctermbg, "", "")
call <sid>hi("Bold", "", "", "", "", "bold", "")
call <sid>hi("Italic", "", "", "", "", "italic", "")
call <sid>hi("BoldItalic", "", "", "", "", "italic,bold", "")
call <sid>hi("Normal", s:gui05, s:guibg, s:cterm05, s:ctermbg, "", "")
call <sid>hi("Debug", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("Directory", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("Error", s:guibg, s:gui08, s:ctermbg, s:cterm08, "", "")
call <sid>hi("ErrorMsg", s:gui08, s:guibg, s:cterm08, s:ctermbg, "", "")
call <sid>hi("Exception", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("FoldColumn", s:gui03, s:guibg, s:cterm03, s:ctermbg, "", "")
call <sid>hi("Folded", s:gui02, s:guibg, s:cterm02, s:ctermbg, "", "")
call <sid>hi("Folded", s:gui03, s:gui01, s:cterm02, s:ctermbg, "", "")
call <sid>hi("IncSearch", s:gui01, s:gui09, s:cterm01, s:cterm09, "none", "")
call <sid>hi("Italic", "", "", "", "", "italic", "")
call <sid>hi("Macro", s:gui0C, "", s:cterm0C, "", "", "")
call <sid>hi("MatchParen", "", s:gui03, "", s:cterm03, "", "")
call <sid>hi("ModeMsg", s:gui0B, "", s:cterm0B, "", "", "")
@ -258,7 +318,10 @@ call <sid>hi("VisualNOS", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("WarningMsg", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("WildMenu", s:guibg, s:gui06, s:ctermbg, s:cterm05, "", "")
call <sid>hi("Title", s:gui0D, "", s:cterm0D, "", "none", "")
call <sid>hi("Conceal", s:gui0D, s:guibg, s:cterm0D, s:ctermbg, "", "")
"call <sid>hi("Conceal", s:gui0D, s:guibg, s:cterm0D, s:ctermbg, "", "")
hi! link Conceal ThemeBlue
call <sid>hi("Cursor", s:gui05, s:guibg, "", "", "inverse", "")
call <sid>hi("NonText", s:gui03, "", s:cterm03, "", "", "")
call <sid>hi("Whitespace", s:gui03, "", s:cterm03, "", "", "")
@ -270,7 +333,7 @@ call <sid>hi("VertSplit", s:gui01, s:guibg, s:cterm01, s:ctermbg, "none", ""
call <sid>hi("ColorColumn", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("CursorColumn", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("CursorLine", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("CursorLineNr", s:gui04, s:gui01, s:cterm04, s:cterm01, "bold", "")
call <sid>hi("CursorLineNr", s:gui04, s:gui00, s:cterm04, s:cterm01, "", "")
call <sid>hi("QuickFixLine", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("PMenu", s:gui06, s:gui01, s:cterm06, s:cterm01, "none", "")
call <sid>hi("PMenuSel", s:gui06, s:gui02, s:cterm06, s:cterm02, "", "")
@ -281,27 +344,21 @@ call <sid>hi("TabLineFill", s:gui03, s:gui01, s:cterm03, s:cterm01, "none", ""
call <sid>hi("TabLineSel", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "none", "")
" Standard syntax
call <sid>hi("Define", s:gui0E, "", s:cterm0E, "", "none", "")
call <sid>hi("Identifier", s:gui06, "", s:cterm05, "", "none", "")
call <sid>hi("Keyword", s:gui0D, "", s:cterm0E, "", "none", "")
call <sid>hi("Todo", s:gui08, s:guibg, s:cterm08, s:ctermbg, "italic", "")
hi! link Boolean ThemeOrange
hi! link Character ThemeRed
"call <sid>hi("Comment", s:gui03, "", s:cterm03, "", "italic", "")
hi! link Comment ThemeGreyItalic
hi! link Conditional ThemeRed
hi! link Constant ThemeOrange
call <sid>hi("Define", s:gui0E, "", s:cterm0E, "", "none", "")
hi! link Delimiter ThemeFg1
if has("patch-8.0.1038")
call <sid>hi("Deprecated", "", "", "", "", "strikethrough", "")
endif
hi! link Float ThemeOrange
hi! link Function ThemeBlue
call <sid>hi("Identifier", s:gui06, "", s:cterm05, "", "none", "")
hi! link Include ThemeBlue
hi! link Constant ThemeOrange
call <sid>hi("Keyword", s:gui0E, "", s:cterm0E, "", "none", "")
hi! link Label ThemeOrange
hi! link Number ThemeOrange
hi! link Operator ThemeYellow
@ -314,101 +371,145 @@ hi! link StorageClass ThemeOrange
hi! link String ThemeGreen
hi! link Structure ThemeOrange
hi! link Tag ThemeOrange
call <sid>hi("Todo", s:gui08, s:guibg, s:cterm08, s:ctermbg, "italic", "")
call <sid>hi("Type", s:gui0A, "", s:cterm0A, "", "none", "")
hi! link Type ThemeYellow
hi! link Typedef ThemeOrange
" Treesitter
if has("nvim-0.8.0")
call <sid>hi("@field", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@property", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@namespace", s:gui06, "", s:cterm05, "", "italic", "")
call <sid>hi("@variable.builtin", s:gui06, "", s:cterm05, "", "italic", "")
call <sid>hi("@text.reference", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@text.uri", s:gui08, "", s:cterm08, "", "italic", "")
hi! link @field ThemeRed
hi! link @property ThemeRed
hi! link @namespace ThemeFg1Italic
hi! link @variable.builtin ThemeFg1Italic
hi! link @variable ThemeFg2
hi! link @conceal ThemeBlue
" Annotations & Attributes
call <sid>hi("@annotation", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@attribute", s:gui0D, "", s:cterm0D, "", "", "")
hi! link @text.uri ThemeRedItalic
hi! link @text.reference ThemeRed
" Booleans, Characters & Comments
call <sid>hi("@boolean", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@character", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@character.special", s:gui0F, "", s:cterm0F, "", "", "")
call <sid>hi("@comment", s:gui03, "", s:cterm03, "", "", "")
hi! link @annotation ThemeViolet
hi! link @attribute ThemeBlue
" Conditionals, Constants & Debugging
call <sid>hi("@keyword.conditional", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@constant", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@constant.builtin", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@constant.macro", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@keyword.debug", s:gui08, "", s:cterm08, "", "", "")
hi! link @boolean ThemeOrange
hi! link @character ThemeRed
hi! link @character.special ThemeMagenta
hi! link @comment Comment
" Directives & Exceptions
call <sid>hi("@keyword.directive.define", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@keyword.exception", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @constant ThemeBlue
hi! link @constant.builtin ThemeBlue
" Floats & Functions
call <sid>hi("@number.float", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@function", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@function.builtin", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@function.call", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@function.macro", s:gui08, "", s:cterm08, "", "", "")
hi! link @constant.macro ThemeRed
" Imports, Operators & Returns
call <sid>hi("@keyword.import", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@keyword.coroutine", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@keyword.operator", s:gui06, "", s:cterm05, "", "", "")
call <sid>hi("@keyword.return", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @keyword.directive.define ThemeViolet
hi! link @keyword.exception ThemeRed
" Methods & Namespaces
call <sid>hi("@function.method", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@function.method.call", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@namespace.builtin", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @comment.error ThemeRed
hi! link @number.float ThemeRed
hi! link @keyword.function ThemeRed
" Numbers & Directives
call <sid>hi("@none", s:gui06, "", s:cterm05, "", "", "")
call <sid>hi("@number", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@keyword.directive", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @function ThemeBlue
hi! link @function.builtin ThemeBlue
hi! link @function.call ThemeBlue
hi! link @function.macro ThemeRed
hi! link @function.method ThemeBlue
hi! link @function.method.call ThemeBlue
" Repeats, Storage & Strings
call <sid>hi("@keyword.repeat", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@keyword.storage", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@string", s:gui0B, "", s:cterm0B, "", "", "")
hi! link @keyword.debug ThemeRed
hi! link @keyword.conditional ThemeRed
hi! link @keyword.import ThemeViolet
hi! link @keyword.coroutine ThemeViolet
hi! link @keyword.operator ThemeYellow
hi! link @keyword.directive ThemeViolet
hi! link @keyword.repeat ThemeViolet
hi! link @keyword.storage ThemeViolet
hi! link @keyword.return ThemeRed
" Tags & Markup
call <sid>hi("@markup.link.label", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.link.label.symbol", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@tag", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@tag.attribute", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@tag.delimiter", s:gui0F, "", s:cterm0F, "", "", "")
hi! link @constructor ThemeBlue
hi! link @namespace.builtin ThemeViolet
" More Markup
call <sid>hi("@markup", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.environment", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.environment.name", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.raw", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@markup.math", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.strong", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.emphasis", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.strikethrough", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.underline", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.heading", s:gui0D, "", s:cterm0D, "", "", "")
hi! link @none ThemeFg1
hi! link @number ThemeOrange
hi! link @string ThemeGreen
" Comments & Types
call <sid>hi("@comment.note", s:gui03, "", s:cterm03, "", "", "")
call <sid>hi("@comment.error", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@comment.hint", s:gui0B, "", s:cterm0B, "", "", "")
call <sid>hi("@comment.info", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@comment.warning", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@comment.todo", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.link.url", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@type", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@type.definition", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@type.qualifier", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @tag ThemeRed
hi! link @tag.delimiter ThemeViolet
hi! link @tag.attribute ThemeYellow
" affects markdown
hi! link @markup ThemeYellow
hi! link @markup.raw ThemeGreen
hi! link @markup.raw.block.lang ThemeFg2Bold
hi! link @markup.raw.block.marker ThemeRed
"call <sid>hi("@markup.raw.block.lang", s:gui08, "#1e0000", "", s:ctermbg, "", "")
hi! link @markup.list ThemeBlue
hi! link @markup.quote ThemeGrey
hi! link @markup.link ThemeYellow " borders
hi! link @markup.link.text ThemeBlue
hi! link @markup.link.label ThemeYellow
hi! link @markup.link.url ThemeYellow
hi! link @markup.link.dest ThemeFg3
hi! link @markup.link.wiki ThemeYellow
hi! link @markup.link.wiki.text ThemeBlue
hi! link @markup.link.wiki.label ThemeYellow
"hi! link @markup.link.label.symbol ThemeGreen
"hi! link markdownWikiLink ThemeViolet
"
hi! link @markup.environment ThemeYellow
hi! link @markup.environment.name ThemeYellow
hi! link @markup.math ThemeYellow
hi! link @punctuation.delimiter.latex ThemeOrange
hi! link @markup.strong Bold
hi! link @markup.emphasis Bold
hi! link @markup.strikethrough ThemeYellow
hi! link @markup.underline ThemeYellow
hi! link @comment.info ThemeBlue
hi! link @comment.todo ThemeYellow
hi! link @comment.note ThemeBg3
hi! link @comment.hint ThemeGreen
hi! link @comment.warning ThemeOrange
hi! link @type ThemeYellow
hi! link @type.builtin ThemeOrange
hi! link @type.definition ThemeViolet
hi! link @type.qualifier ThemeViolet
" Markdown
" hi! link @spell.markdown ThemeFg3
"call <sid>hi("@markup.heading.marker", s:gui08, "", "", s:ctermbg, "bold", "")
"hi! link @markup.heading ThemeRed
hi! link @markup.heading.marker ThemeOrange
hi! link @markup.heading.title ThemeRed "Italic
" set this for a strong background
"call <sid>hi("@markup.heading.title", s:gui08, "#440503", "", s:ctermbg, "italic", "")
hi! link @markup.heading.title.1 Bold
hi! link @markup.heading.title.3 Italic
"hi! link @markup.heading.4.title Italic
" YAML
hi! link @string.yaml ThemeBlue
hi! link @punctuation.delimiter.yaml ThemeGreen
hi! link @property.yaml ThemeFg2
" Diff
hi! link @diff.minus ThemeRed
hi! link @diff.plus ThemeGreen
call <sid>hi("TreesitterContext", "", s:gui00, "", "", "", "")
"hi TreesitterContextLineNumberBottom gui=underline guisp=Gray
"call <sid>hi("TreesitterContextBottom", "", "", "", "", "underline", s:gui02)
call <sid>hi("TreesitterContextSeparator", s:gui03, "", "", "", "", "")
"call <sid>hi("TreesitterContextLineNumberBottom", "", "", "", "", "underline", s:gui02)
endif
" Standard highlights to be used by plugins
@ -433,6 +534,7 @@ call <sid>hi("WarningFloat", s:gui09, s:gui01, s:cterm09, s:cterm01, "", "")
call <sid>hi("InfoFloat", s:gui0D, s:gui01, s:cterm0D, s:cterm01, "", "")
call <sid>hi("HintFloat", s:gui0C, s:gui01, s:cterm0C, s:cterm01, "", "")
call <sid>hi("OkFloat", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "")
call <sid>hi("NormalFloat", s:gui05, s:gui01, s:cterm05, s:cterm01, "", "")
call <sid>hi("ErrorHighlight", "", "", s:ctermbg, s:cterm08, "underline", s:gui08)
call <sid>hi("WarningHighlight", "", "", s:ctermbg, s:cterm09, "underline", s:gui09)
@ -449,6 +551,62 @@ call <sid>hi("ReferenceText", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "", "")
call <sid>hi("ReferenceRead", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "", "")
call <sid>hi("ReferenceWrite", s:gui01, s:gui08, s:cterm01, s:cterm08, "", "")
" 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
" "
" LANGUAGES
" "
" C
call <sid>hi("cOperator", s:gui0C, "", s:cterm0C, "", "", "")
call <sid>hi("cPreCondit", s:gui0E, "", s:cterm0E, "", "", "")
@ -728,8 +886,8 @@ call <sid>hi("phpMethodsVar", s:gui0C, "", s:cterm0C, "", "", "")
" hi! link pythonBuiltinObj ThemeCyan
" hi! link pythonBuiltinFunc ThemeGreen
" hi! link pythonFunction Function
hi! link pythonDecorator ThemeYellow
hi! link pythonDecoratorName ThemeYellow
" hi! link pythonDecorator ThemeYellow
" hi! link pythonDecoratorName ThemeYellow
" hi! link pythonTripleQuotes ThemeGreenItalic
" hi! link pythonInclude ThemeBlue
" hi! link pythonImport ThemeBlue
@ -777,58 +935,6 @@ call <sid>hi("StartifySelect", s:gui0C, "", s:cterm0C, "", "", "")
call <sid>hi("StartifySlash", s:gui03, "", s:cterm03, "", "", "")
call <sid>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 <sid>hi("javaOperator", s:gui0D, "", s:cterm0D, "", "", "")
@ -864,12 +970,18 @@ hi! link markdownUrlTitleDelimiter ThemeGreen
hi! link markdownLink ThemeGreen
hi! link markdownWikiLink ThemeViolet
hi! link markdownUrl ThemeOrange
"hi! link markdownUrl ThemeOrange
hi! link markdownUrl ThemeRed
hi! link markdownUrlProtocol ThemeGreenItalic
hi! link markdownInlineUrl ThemeOrange
hi! link markdownLinkText ThemeViolet
hi! link markdownIdDeclaration markdownLinkText
hi! link pandocAtxHeader ThemeRed
hi! link pandocAtxStart ThemeOrange
"call s:HL('markdownItalic', s:fg3, s:none, s:italic)
"call s:HL('markdownLinkText', s:gray, s:none, s:underline)
@ -880,3 +992,4 @@ delf <sid>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

View File

@ -7,28 +7,50 @@
" - `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.
"
" There are several kinds of syntax identifiers:
"
" - Vim/editor related (e.g., Normal, Folded): these control colors of central Vim
" elements, like whitespace, bold text, the foldcolumn, etc
" - Generic syntax identifiers (e.g., Boolean, Conditional): these are key groups for
" syntax elements that various language syntax files link to. For instance, Python
" syntax files might have specific patterns that match function keywords like "def," and
" the resulting syntax region can be highlighted by linking it to the core "Function"
" highlight identifier.
" - Treesitter-based identifiers (e.g., @variable, @boolean): highlight groups for
" treesitter-based syntax highlighting, which can replace regex-based matching when
" enabled for richer (and often faster) highlighting. These groups can be linked to the
" core identifiers like any other language.
"
" *Note*: each of these identifiers can add a lang-specific suffix to style those groups
" as they apply to particular languages. For ex, `@boolean.python ThemeRed` would style
" Python booleans red, while the lang-agnostic `@boolean` definition remains.
" - Plugin-oriented identifiers (e.g., SpellBad, ErrorFloat): these are groups mostly core
" to vim/nvim, but often appear only in the context of plugins or certain modules (like
" LSP). For instance, ErrorFloat styles floating windows that might be drawn by nvim's
" built-in LSP hover info.
" 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:gui00 = "#26211c"
let g:base16_gui00 = "#26211c"
let s:gui01 = "#322d28"
let g:base16_gui01 = "#322d28"
let s:gui02 = "#3f3935"
let g:base16_gui02 = "#3f3935"
let s:gui03 = "#4c4642"
let g:base16_gui03 = "#4c4642"
let s:gui04 = "#b3ada7"
let g:base16_gui04 = "#b3ada7"
let s:gui05 = "#c3bcb7"
let g:base16_gui05 = "#c3bcb7"
let s:gui06 = "#d3ccc7"
let g:base16_gui06 = "#d3ccc7"
let s:gui07 = "#e4ddd7"
let g:base16_gui07 = "#e4ddd7"
let s:gui08 = "#e95949"
let g:base16_gui08 = "#e95949"
let s:gui09 = "#ca791c"
let g:base16_gui09 = "#ca791c"
let s:gui09 = "#c97920"
let g:base16_gui09 = "#c97920"
let s:gui0A = "#989250"
let g:base16_gui0A = "#989250"
let s:gui0B = "#5da268"
@ -42,7 +64,7 @@ let g:base16_gui0E = "#658ed9"
let s:gui0F = "#e95949"
let g:base16_gui0F = "#e95949"
let s:grey = "#7b8187"
let s:grey = "#76706b"
" Terminal color definitions
let s:cterm00 = "00"
@ -81,22 +103,22 @@ let g:base16_cterm0F = "14"
" Neovim terminal colours
if has("nvim")
let g:terminal_color_0 = "#1e2227"
let g:terminal_color_0 = "#26211c"
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_7 = "#c3bcb7"
let g:terminal_color_8 = "#4c4642"
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_15 = "#e4ddd7"
let g:terminal_color_background = g:terminal_color_0
let g:terminal_color_foreground = g:terminal_color_5
@ -107,22 +129,22 @@ if has("nvim")
elseif has("terminal")
let g:terminal_ansi_colors = [
\ "#1e2227",
\ "#26211c",
\ "#e95949",
\ "#5da268",
\ "#989250",
\ "#658ed9",
\ "#658ed9",
\ "#5da268",
\ "#b9bec5",
\ "#43484e",
\ "#c3bcb7",
\ "#4c4642",
\ "#e95949",
\ "#5da268",
\ "#989250",
\ "#658ed9",
\ "#658ed9",
\ "#5da268",
\ "#d9dfe5",
\ "#e4ddd7",
\ ]
endif
@ -199,7 +221,25 @@ call <sid>hi("ThemeFg3", s:gui04, "", s:cterm04, "", "", "")
call <sid>hi("ThemeFg2", s:gui05, "", s:cterm05, "", "", "")
call <sid>hi("ThemeFg1", s:gui06, "", s:cterm06, "", "", "")
call <sid>hi("ThemeFg0", s:gui07, "", s:cterm07, "", "", "")
"
call <sid>hi("ThemeBg0bold", s:gui00, "", s:cterm00, "", "bold", "")
call <sid>hi("ThemeBg1bold", s:gui01, "", s:cterm01, "", "bold", "")
call <sid>hi("ThemeBg2bold", s:gui02, "", s:cterm02, "", "bold", "")
call <sid>hi("ThemeBg3bold", s:gui03, "", s:cterm03, "", "bold", "")
call <sid>hi("ThemeFg3bold", s:gui04, "", s:cterm04, "", "bold", "")
call <sid>hi("ThemeFg2bold", s:gui05, "", s:cterm05, "", "bold", "")
call <sid>hi("ThemeFg1bold", s:gui06, "", s:cterm06, "", "bold", "")
call <sid>hi("ThemeFg0bold", s:gui07, "", s:cterm07, "", "bold", "")
call <sid>hi("ThemeBg0Italic", s:gui00, "", s:cterm00, "", "italic", "")
call <sid>hi("ThemeBg1Italic", s:gui01, "", s:cterm01, "", "italic", "")
call <sid>hi("ThemeBg2Italic", s:gui02, "", s:cterm02, "", "italic", "")
call <sid>hi("ThemeBg3Italic", s:gui03, "", s:cterm03, "", "italic", "")
call <sid>hi("ThemeFg3Italic", s:gui04, "", s:cterm04, "", "italic", "")
call <sid>hi("ThemeFg2Italic", s:gui05, "", s:cterm05, "", "italic", "")
call <sid>hi("ThemeFg1Italic", s:gui06, "", s:cterm06, "", "italic", "")
call <sid>hi("ThemeFg0Italic", s:gui07, "", s:cterm07, "", "italic", "")
call <sid>hi("ThemeRed", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("ThemeOrange", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("ThemeYellow", s:gui0A, "", s:cterm0A, "", "", "")
@ -209,6 +249,15 @@ call <sid>hi("ThemeBlue", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("ThemeViolet", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("ThemeMagenta", s:gui0F, "", s:cterm0F, "", "", "")
call <sid>hi("ThemeRedNone", s:gui08, "", s:cterm08, "", "NONE", "")
call <sid>hi("ThemeOrangeNone", s:gui09, "", s:cterm09, "", "NONE", "")
call <sid>hi("ThemeYellowNone", s:gui0A, "", s:cterm0A, "", "NONE", "")
call <sid>hi("ThemeGreenNone", s:gui0B, "", s:cterm0B, "", "NONE", "")
call <sid>hi("ThemeCyanNone", s:gui0C, "", s:cterm0C, "", "NONE", "")
call <sid>hi("ThemeBlueNone", s:gui0D, "", s:cterm0D, "", "NONE", "")
call <sid>hi("ThemeVioletNone", s:gui0E, "", s:cterm0E, "", "NONE", "")
call <sid>hi("ThemeMagentaNone", s:gui0F, "", s:cterm0F, "", "NONE", "")
call <sid>hi("ThemeRedBold", s:gui08, "", s:cterm08, "", "bold", "")
call <sid>hi("ThemeOrangeBold", s:gui09, "", s:cterm09, "", "bold", "")
call <sid>hi("ThemeYellowBold", s:gui0A, "", s:cterm0A, "", "bold", "")
@ -227,22 +276,33 @@ call <sid>hi("ThemeBlueItalic", s:gui0D, "", s:cterm0D, "", "italic", "")
call <sid>hi("ThemeVioletItalic", s:gui0E, "", s:cterm0E, "", "italic", "")
call <sid>hi("ThemeMagentaItalic", s:gui0F, "", s:cterm0F, "", "italic", "")
call <sid>hi("ThemeRedBoldItalic", s:gui08, "", s:cterm08, "", "bold,italic", "")
call <sid>hi("ThemeOrangeBoldItalic", s:gui09, "", s:cterm09, "", "bold,italic", "")
call <sid>hi("ThemeYellowBoldItalic", s:gui0A, "", s:cterm0A, "", "bold,italic", "")
call <sid>hi("ThemeGreenBoldItalic", s:gui0B, "", s:cterm0B, "", "bold,italic", "")
call <sid>hi("ThemeCyanBoldItalic", s:gui0C, "", s:cterm0C, "", "bold,italic", "")
call <sid>hi("ThemeBlueBoldItalic", s:gui0D, "", s:cterm0D, "", "bold,italic", "")
call <sid>hi("ThemeVioletBoldItalic", s:gui0E, "", s:cterm0E, "", "bold,italic", "")
call <sid>hi("ThemeMagentaBoldItalic", s:gui0F, "", s:cterm0F, "", "bold,italic", "")
call <sid>hi("ThemeGrey", s:grey, "", s:cterm03, "", "", "")
call <sid>hi("ThemeGreyItalic", s:grey, "", s:cterm03, "", "italic", "")
" Vim editor colors
call <sid>hi("Normal", s:gui05, s:guibg, s:cterm05, s:ctermbg, "", "")
call <sid>hi("Bold", "", "", "", "", "bold", "")
call <sid>hi("Italic", "", "", "", "", "italic", "")
call <sid>hi("BoldItalic", "", "", "", "", "italic,bold", "")
call <sid>hi("Normal", s:gui05, s:guibg, s:cterm05, s:ctermbg, "", "")
call <sid>hi("Debug", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("Directory", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("Error", s:guibg, s:gui08, s:ctermbg, s:cterm08, "", "")
call <sid>hi("ErrorMsg", s:gui08, s:guibg, s:cterm08, s:ctermbg, "", "")
call <sid>hi("Exception", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("FoldColumn", s:gui03, s:guibg, s:cterm03, s:ctermbg, "", "")
call <sid>hi("Folded", s:gui02, s:guibg, s:cterm02, s:ctermbg, "", "")
call <sid>hi("Folded", s:gui03, s:gui01, s:cterm02, s:ctermbg, "", "")
call <sid>hi("IncSearch", s:gui01, s:gui09, s:cterm01, s:cterm09, "none", "")
call <sid>hi("Italic", "", "", "", "", "italic", "")
call <sid>hi("Macro", s:gui0C, "", s:cterm0C, "", "", "")
call <sid>hi("MatchParen", "", s:gui03, "", s:cterm03, "", "")
call <sid>hi("ModeMsg", s:gui0B, "", s:cterm0B, "", "", "")
@ -258,7 +318,10 @@ call <sid>hi("VisualNOS", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("WarningMsg", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("WildMenu", s:guibg, s:gui06, s:ctermbg, s:cterm05, "", "")
call <sid>hi("Title", s:gui0D, "", s:cterm0D, "", "none", "")
call <sid>hi("Conceal", s:gui0D, s:guibg, s:cterm0D, s:ctermbg, "", "")
"call <sid>hi("Conceal", s:gui0D, s:guibg, s:cterm0D, s:ctermbg, "", "")
hi! link Conceal ThemeBlue
call <sid>hi("Cursor", s:gui05, s:guibg, "", "", "inverse", "")
call <sid>hi("NonText", s:gui03, "", s:cterm03, "", "", "")
call <sid>hi("Whitespace", s:gui03, "", s:cterm03, "", "", "")
@ -270,7 +333,7 @@ call <sid>hi("VertSplit", s:gui01, s:guibg, s:cterm01, s:ctermbg, "none", ""
call <sid>hi("ColorColumn", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("CursorColumn", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("CursorLine", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("CursorLineNr", s:gui04, s:gui01, s:cterm04, s:cterm01, "bold", "")
call <sid>hi("CursorLineNr", s:gui04, s:gui00, s:cterm04, s:cterm01, "", "")
call <sid>hi("QuickFixLine", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("PMenu", s:gui06, s:gui01, s:cterm06, s:cterm01, "none", "")
call <sid>hi("PMenuSel", s:gui06, s:gui02, s:cterm06, s:cterm02, "", "")
@ -281,27 +344,21 @@ call <sid>hi("TabLineFill", s:gui03, s:gui01, s:cterm03, s:cterm01, "none", ""
call <sid>hi("TabLineSel", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "none", "")
" Standard syntax
call <sid>hi("Define", s:gui0E, "", s:cterm0E, "", "none", "")
call <sid>hi("Identifier", s:gui06, "", s:cterm05, "", "none", "")
call <sid>hi("Keyword", s:gui0D, "", s:cterm0E, "", "none", "")
call <sid>hi("Todo", s:gui08, s:guibg, s:cterm08, s:ctermbg, "italic", "")
hi! link Boolean ThemeOrange
hi! link Character ThemeRed
"call <sid>hi("Comment", s:gui03, "", s:cterm03, "", "italic", "")
hi! link Comment ThemeGreyItalic
hi! link Conditional ThemeRed
hi! link Constant ThemeOrange
call <sid>hi("Define", s:gui0E, "", s:cterm0E, "", "none", "")
hi! link Delimiter ThemeFg1
if has("patch-8.0.1038")
call <sid>hi("Deprecated", "", "", "", "", "strikethrough", "")
endif
hi! link Float ThemeOrange
hi! link Function ThemeBlue
call <sid>hi("Identifier", s:gui06, "", s:cterm05, "", "none", "")
hi! link Include ThemeBlue
hi! link Constant ThemeOrange
call <sid>hi("Keyword", s:gui0E, "", s:cterm0E, "", "none", "")
hi! link Label ThemeOrange
hi! link Number ThemeOrange
hi! link Operator ThemeYellow
@ -314,101 +371,145 @@ hi! link StorageClass ThemeOrange
hi! link String ThemeGreen
hi! link Structure ThemeOrange
hi! link Tag ThemeOrange
call <sid>hi("Todo", s:gui08, s:guibg, s:cterm08, s:ctermbg, "italic", "")
call <sid>hi("Type", s:gui0A, "", s:cterm0A, "", "none", "")
hi! link Type ThemeYellow
hi! link Typedef ThemeOrange
" Treesitter
if has("nvim-0.8.0")
call <sid>hi("@field", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@property", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@namespace", s:gui06, "", s:cterm05, "", "italic", "")
call <sid>hi("@variable.builtin", s:gui06, "", s:cterm05, "", "italic", "")
call <sid>hi("@text.reference", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@text.uri", s:gui08, "", s:cterm08, "", "italic", "")
hi! link @field ThemeRed
hi! link @property ThemeRed
hi! link @namespace ThemeFg1Italic
hi! link @variable.builtin ThemeFg1Italic
hi! link @variable ThemeFg2
hi! link @conceal ThemeBlue
" Annotations & Attributes
call <sid>hi("@annotation", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@attribute", s:gui0D, "", s:cterm0D, "", "", "")
hi! link @text.uri ThemeRedItalic
hi! link @text.reference ThemeRed
" Booleans, Characters & Comments
call <sid>hi("@boolean", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@character", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@character.special", s:gui0F, "", s:cterm0F, "", "", "")
call <sid>hi("@comment", s:gui03, "", s:cterm03, "", "", "")
hi! link @annotation ThemeViolet
hi! link @attribute ThemeBlue
" Conditionals, Constants & Debugging
call <sid>hi("@keyword.conditional", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@constant", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@constant.builtin", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@constant.macro", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@keyword.debug", s:gui08, "", s:cterm08, "", "", "")
hi! link @boolean ThemeOrange
hi! link @character ThemeRed
hi! link @character.special ThemeMagenta
hi! link @comment Comment
" Directives & Exceptions
call <sid>hi("@keyword.directive.define", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@keyword.exception", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @constant ThemeBlue
hi! link @constant.builtin ThemeBlue
" Floats & Functions
call <sid>hi("@number.float", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@function", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@function.builtin", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@function.call", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@function.macro", s:gui08, "", s:cterm08, "", "", "")
hi! link @constant.macro ThemeRed
" Imports, Operators & Returns
call <sid>hi("@keyword.import", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@keyword.coroutine", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@keyword.operator", s:gui06, "", s:cterm05, "", "", "")
call <sid>hi("@keyword.return", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @keyword.directive.define ThemeViolet
hi! link @keyword.exception ThemeRed
" Methods & Namespaces
call <sid>hi("@function.method", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@function.method.call", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@namespace.builtin", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @comment.error ThemeRed
hi! link @number.float ThemeRed
hi! link @keyword.function ThemeRed
" Numbers & Directives
call <sid>hi("@none", s:gui06, "", s:cterm05, "", "", "")
call <sid>hi("@number", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@keyword.directive", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @function ThemeBlue
hi! link @function.builtin ThemeBlue
hi! link @function.call ThemeBlue
hi! link @function.macro ThemeRed
hi! link @function.method ThemeBlue
hi! link @function.method.call ThemeBlue
" Repeats, Storage & Strings
call <sid>hi("@keyword.repeat", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@keyword.storage", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@string", s:gui0B, "", s:cterm0B, "", "", "")
hi! link @keyword.debug ThemeRed
hi! link @keyword.conditional ThemeRed
hi! link @keyword.import ThemeViolet
hi! link @keyword.coroutine ThemeViolet
hi! link @keyword.operator ThemeYellow
hi! link @keyword.directive ThemeViolet
hi! link @keyword.repeat ThemeViolet
hi! link @keyword.storage ThemeViolet
hi! link @keyword.return ThemeRed
" Tags & Markup
call <sid>hi("@markup.link.label", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.link.label.symbol", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@tag", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@tag.attribute", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@tag.delimiter", s:gui0F, "", s:cterm0F, "", "", "")
hi! link @constructor ThemeBlue
hi! link @namespace.builtin ThemeViolet
" More Markup
call <sid>hi("@markup", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.environment", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.environment.name", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.raw", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@markup.math", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.strong", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.emphasis", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.strikethrough", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.underline", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.heading", s:gui0D, "", s:cterm0D, "", "", "")
hi! link @none ThemeFg1
hi! link @number ThemeOrange
hi! link @string ThemeGreen
" Comments & Types
call <sid>hi("@comment.note", s:gui03, "", s:cterm03, "", "", "")
call <sid>hi("@comment.error", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@comment.hint", s:gui0B, "", s:cterm0B, "", "", "")
call <sid>hi("@comment.info", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@comment.warning", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@comment.todo", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.link.url", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@type", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@type.definition", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@type.qualifier", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @tag ThemeRed
hi! link @tag.delimiter ThemeViolet
hi! link @tag.attribute ThemeYellow
" affects markdown
hi! link @markup ThemeYellow
hi! link @markup.raw ThemeGreen
hi! link @markup.raw.block.lang ThemeFg2Bold
hi! link @markup.raw.block.marker ThemeRed
"call <sid>hi("@markup.raw.block.lang", s:gui08, "#1e0000", "", s:ctermbg, "", "")
hi! link @markup.list ThemeBlue
hi! link @markup.quote ThemeGrey
hi! link @markup.link ThemeYellow " borders
hi! link @markup.link.text ThemeBlue
hi! link @markup.link.label ThemeYellow
hi! link @markup.link.url ThemeYellow
hi! link @markup.link.dest ThemeFg3
hi! link @markup.link.wiki ThemeYellow
hi! link @markup.link.wiki.text ThemeBlue
hi! link @markup.link.wiki.label ThemeYellow
"hi! link @markup.link.label.symbol ThemeGreen
"hi! link markdownWikiLink ThemeViolet
"
hi! link @markup.environment ThemeYellow
hi! link @markup.environment.name ThemeYellow
hi! link @markup.math ThemeYellow
hi! link @punctuation.delimiter.latex ThemeOrange
hi! link @markup.strong Bold
hi! link @markup.emphasis Bold
hi! link @markup.strikethrough ThemeYellow
hi! link @markup.underline ThemeYellow
hi! link @comment.info ThemeBlue
hi! link @comment.todo ThemeYellow
hi! link @comment.note ThemeBg3
hi! link @comment.hint ThemeGreen
hi! link @comment.warning ThemeOrange
hi! link @type ThemeYellow
hi! link @type.builtin ThemeOrange
hi! link @type.definition ThemeViolet
hi! link @type.qualifier ThemeViolet
" Markdown
" hi! link @spell.markdown ThemeFg3
"call <sid>hi("@markup.heading.marker", s:gui08, "", "", s:ctermbg, "bold", "")
"hi! link @markup.heading ThemeRed
hi! link @markup.heading.marker ThemeOrange
hi! link @markup.heading.title ThemeRed "Italic
" set this for a strong background
"call <sid>hi("@markup.heading.title", s:gui08, "#440503", "", s:ctermbg, "italic", "")
hi! link @markup.heading.title.1 Bold
hi! link @markup.heading.title.3 Italic
"hi! link @markup.heading.4.title Italic
" YAML
hi! link @string.yaml ThemeBlue
hi! link @punctuation.delimiter.yaml ThemeGreen
hi! link @property.yaml ThemeFg2
" Diff
hi! link @diff.minus ThemeRed
hi! link @diff.plus ThemeGreen
call <sid>hi("TreesitterContext", "", s:gui00, "", "", "", "")
"hi TreesitterContextLineNumberBottom gui=underline guisp=Gray
"call <sid>hi("TreesitterContextBottom", "", "", "", "", "underline", s:gui02)
call <sid>hi("TreesitterContextSeparator", s:gui03, "", "", "", "", "")
"call <sid>hi("TreesitterContextLineNumberBottom", "", "", "", "", "underline", s:gui02)
endif
" Standard highlights to be used by plugins
@ -433,6 +534,7 @@ call <sid>hi("WarningFloat", s:gui09, s:gui01, s:cterm09, s:cterm01, "", "")
call <sid>hi("InfoFloat", s:gui0D, s:gui01, s:cterm0D, s:cterm01, "", "")
call <sid>hi("HintFloat", s:gui0C, s:gui01, s:cterm0C, s:cterm01, "", "")
call <sid>hi("OkFloat", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "")
call <sid>hi("NormalFloat", s:gui05, s:gui01, s:cterm05, s:cterm01, "", "")
call <sid>hi("ErrorHighlight", "", "", s:ctermbg, s:cterm08, "underline", s:gui08)
call <sid>hi("WarningHighlight", "", "", s:ctermbg, s:cterm09, "underline", s:gui09)
@ -449,6 +551,62 @@ call <sid>hi("ReferenceText", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "", "")
call <sid>hi("ReferenceRead", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "", "")
call <sid>hi("ReferenceWrite", s:gui01, s:gui08, s:cterm01, s:cterm08, "", "")
" 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
" "
" LANGUAGES
" "
" C
call <sid>hi("cOperator", s:gui0C, "", s:cterm0C, "", "", "")
call <sid>hi("cPreCondit", s:gui0E, "", s:cterm0E, "", "", "")
@ -728,8 +886,8 @@ call <sid>hi("phpMethodsVar", s:gui0C, "", s:cterm0C, "", "", "")
" hi! link pythonBuiltinObj ThemeCyan
" hi! link pythonBuiltinFunc ThemeGreen
" hi! link pythonFunction Function
hi! link pythonDecorator ThemeYellow
hi! link pythonDecoratorName ThemeYellow
" hi! link pythonDecorator ThemeYellow
" hi! link pythonDecoratorName ThemeYellow
" hi! link pythonTripleQuotes ThemeGreenItalic
" hi! link pythonInclude ThemeBlue
" hi! link pythonImport ThemeBlue
@ -777,58 +935,6 @@ call <sid>hi("StartifySelect", s:gui0C, "", s:cterm0C, "", "", "")
call <sid>hi("StartifySlash", s:gui03, "", s:cterm03, "", "", "")
call <sid>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 <sid>hi("javaOperator", s:gui0D, "", s:cterm0D, "", "", "")
@ -864,12 +970,18 @@ hi! link markdownUrlTitleDelimiter ThemeGreen
hi! link markdownLink ThemeGreen
hi! link markdownWikiLink ThemeViolet
hi! link markdownUrl ThemeOrange
"hi! link markdownUrl ThemeOrange
hi! link markdownUrl ThemeRed
hi! link markdownUrlProtocol ThemeGreenItalic
hi! link markdownInlineUrl ThemeOrange
hi! link markdownLinkText ThemeViolet
hi! link markdownIdDeclaration markdownLinkText
hi! link pandocAtxHeader ThemeRed
hi! link pandocAtxStart ThemeOrange
"call s:HL('markdownItalic', s:fg3, s:none, s:italic)
"call s:HL('markdownLinkText', s:gray, s:none, s:underline)
@ -880,3 +992,4 @@ delf <sid>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

View File

@ -7,26 +7,48 @@
" - `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.
"
" There are several kinds of syntax identifiers:
"
" - Vim/editor related (e.g., Normal, Folded): these control colors of central Vim
" elements, like whitespace, bold text, the foldcolumn, etc
" - Generic syntax identifiers (e.g., Boolean, Conditional): these are key groups for
" syntax elements that various language syntax files link to. For instance, Python
" syntax files might have specific patterns that match function keywords like "def," and
" the resulting syntax region can be highlighted by linking it to the core "Function"
" highlight identifier.
" - Treesitter-based identifiers (e.g., @variable, @boolean): highlight groups for
" treesitter-based syntax highlighting, which can replace regex-based matching when
" enabled for richer (and often faster) highlighting. These groups can be linked to the
" core identifiers like any other language.
"
" *Note*: each of these identifiers can add a lang-specific suffix to style those groups
" as they apply to particular languages. For ex, `@boolean.python ThemeRed` would style
" Python booleans red, while the lang-agnostic `@boolean` definition remains.
" - Plugin-oriented identifiers (e.g., SpellBad, ErrorFloat): these are groups mostly core
" to vim/nvim, but often appear only in the context of plugins or certain modules (like
" LSP). For instance, ErrorFloat styles floating windows that might be drawn by nvim's
" built-in LSP hover info.
" 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:gui00 = "#e4ddd7"
let g:base16_gui00 = "#e4ddd7"
let s:gui01 = "#d3ccc7"
let g:base16_gui01 = "#d3ccc7"
let s:gui02 = "#c3bcb7"
let g:base16_gui02 = "#c3bcb7"
let s:gui03 = "#b3ada7"
let g:base16_gui03 = "#b3ada7"
let s:gui04 = "#4c4642"
let g:base16_gui04 = "#4c4642"
let s:gui05 = "#3f3935"
let g:base16_gui05 = "#3f3935"
let s:gui06 = "#322d28"
let g:base16_gui06 = "#322d28"
let s:gui07 = "#26211c"
let g:base16_gui07 = "#26211c"
let s:gui08 = "#b42219"
let g:base16_gui08 = "#b42219"
let s:gui09 = "#905201"
let g:base16_gui09 = "#905201"
let s:gui0A = "#6a6535"
@ -39,10 +61,10 @@ 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:gui0F = "#b42219"
let g:base16_gui0F = "#b42219"
let s:grey = "#5d6562"
let s:grey = "#857f7a"
" Terminal color definitions
let s:cterm00 = "00"
@ -81,22 +103,22 @@ 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_0 = "#e4ddd7"
let g:terminal_color_1 = "#b42219"
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_7 = "#3f3935"
let g:terminal_color_8 = "#b3ada7"
let g:terminal_color_9 = "#b42219"
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_15 = "#26211c"
let g:terminal_color_background = g:terminal_color_0
let g:terminal_color_foreground = g:terminal_color_5
@ -107,22 +129,22 @@ if has("nvim")
elseif has("terminal")
let g:terminal_ansi_colors = [
\ "#c7d0cc",
\ "#b52119",
\ "#e4ddd7",
\ "#b42219",
\ "#377242",
\ "#6a6535",
\ "#3860ac",
\ "#3860ac",
\ "#377242",
\ "#29302d",
\ "#98a19d",
\ "#b52119",
\ "#3f3935",
\ "#b3ada7",
\ "#b42219",
\ "#377242",
\ "#6a6535",
\ "#3860ac",
\ "#3860ac",
\ "#377242",
\ "#111815",
\ "#26211c",
\ ]
endif
@ -199,7 +221,25 @@ call <sid>hi("ThemeFg3", s:gui04, "", s:cterm04, "", "", "")
call <sid>hi("ThemeFg2", s:gui05, "", s:cterm05, "", "", "")
call <sid>hi("ThemeFg1", s:gui06, "", s:cterm06, "", "", "")
call <sid>hi("ThemeFg0", s:gui07, "", s:cterm07, "", "", "")
"
call <sid>hi("ThemeBg0bold", s:gui00, "", s:cterm00, "", "bold", "")
call <sid>hi("ThemeBg1bold", s:gui01, "", s:cterm01, "", "bold", "")
call <sid>hi("ThemeBg2bold", s:gui02, "", s:cterm02, "", "bold", "")
call <sid>hi("ThemeBg3bold", s:gui03, "", s:cterm03, "", "bold", "")
call <sid>hi("ThemeFg3bold", s:gui04, "", s:cterm04, "", "bold", "")
call <sid>hi("ThemeFg2bold", s:gui05, "", s:cterm05, "", "bold", "")
call <sid>hi("ThemeFg1bold", s:gui06, "", s:cterm06, "", "bold", "")
call <sid>hi("ThemeFg0bold", s:gui07, "", s:cterm07, "", "bold", "")
call <sid>hi("ThemeBg0Italic", s:gui00, "", s:cterm00, "", "italic", "")
call <sid>hi("ThemeBg1Italic", s:gui01, "", s:cterm01, "", "italic", "")
call <sid>hi("ThemeBg2Italic", s:gui02, "", s:cterm02, "", "italic", "")
call <sid>hi("ThemeBg3Italic", s:gui03, "", s:cterm03, "", "italic", "")
call <sid>hi("ThemeFg3Italic", s:gui04, "", s:cterm04, "", "italic", "")
call <sid>hi("ThemeFg2Italic", s:gui05, "", s:cterm05, "", "italic", "")
call <sid>hi("ThemeFg1Italic", s:gui06, "", s:cterm06, "", "italic", "")
call <sid>hi("ThemeFg0Italic", s:gui07, "", s:cterm07, "", "italic", "")
call <sid>hi("ThemeRed", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("ThemeOrange", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("ThemeYellow", s:gui0A, "", s:cterm0A, "", "", "")
@ -209,6 +249,15 @@ call <sid>hi("ThemeBlue", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("ThemeViolet", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("ThemeMagenta", s:gui0F, "", s:cterm0F, "", "", "")
call <sid>hi("ThemeRedNone", s:gui08, "", s:cterm08, "", "NONE", "")
call <sid>hi("ThemeOrangeNone", s:gui09, "", s:cterm09, "", "NONE", "")
call <sid>hi("ThemeYellowNone", s:gui0A, "", s:cterm0A, "", "NONE", "")
call <sid>hi("ThemeGreenNone", s:gui0B, "", s:cterm0B, "", "NONE", "")
call <sid>hi("ThemeCyanNone", s:gui0C, "", s:cterm0C, "", "NONE", "")
call <sid>hi("ThemeBlueNone", s:gui0D, "", s:cterm0D, "", "NONE", "")
call <sid>hi("ThemeVioletNone", s:gui0E, "", s:cterm0E, "", "NONE", "")
call <sid>hi("ThemeMagentaNone", s:gui0F, "", s:cterm0F, "", "NONE", "")
call <sid>hi("ThemeRedBold", s:gui08, "", s:cterm08, "", "bold", "")
call <sid>hi("ThemeOrangeBold", s:gui09, "", s:cterm09, "", "bold", "")
call <sid>hi("ThemeYellowBold", s:gui0A, "", s:cterm0A, "", "bold", "")
@ -227,22 +276,33 @@ call <sid>hi("ThemeBlueItalic", s:gui0D, "", s:cterm0D, "", "italic", "")
call <sid>hi("ThemeVioletItalic", s:gui0E, "", s:cterm0E, "", "italic", "")
call <sid>hi("ThemeMagentaItalic", s:gui0F, "", s:cterm0F, "", "italic", "")
call <sid>hi("ThemeRedBoldItalic", s:gui08, "", s:cterm08, "", "bold,italic", "")
call <sid>hi("ThemeOrangeBoldItalic", s:gui09, "", s:cterm09, "", "bold,italic", "")
call <sid>hi("ThemeYellowBoldItalic", s:gui0A, "", s:cterm0A, "", "bold,italic", "")
call <sid>hi("ThemeGreenBoldItalic", s:gui0B, "", s:cterm0B, "", "bold,italic", "")
call <sid>hi("ThemeCyanBoldItalic", s:gui0C, "", s:cterm0C, "", "bold,italic", "")
call <sid>hi("ThemeBlueBoldItalic", s:gui0D, "", s:cterm0D, "", "bold,italic", "")
call <sid>hi("ThemeVioletBoldItalic", s:gui0E, "", s:cterm0E, "", "bold,italic", "")
call <sid>hi("ThemeMagentaBoldItalic", s:gui0F, "", s:cterm0F, "", "bold,italic", "")
call <sid>hi("ThemeGrey", s:grey, "", s:cterm03, "", "", "")
call <sid>hi("ThemeGreyItalic", s:grey, "", s:cterm03, "", "italic", "")
" Vim editor colors
call <sid>hi("Normal", s:gui05, s:guibg, s:cterm05, s:ctermbg, "", "")
call <sid>hi("Bold", "", "", "", "", "bold", "")
call <sid>hi("Italic", "", "", "", "", "italic", "")
call <sid>hi("BoldItalic", "", "", "", "", "italic,bold", "")
call <sid>hi("Normal", s:gui05, s:guibg, s:cterm05, s:ctermbg, "", "")
call <sid>hi("Debug", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("Directory", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("Error", s:guibg, s:gui08, s:ctermbg, s:cterm08, "", "")
call <sid>hi("ErrorMsg", s:gui08, s:guibg, s:cterm08, s:ctermbg, "", "")
call <sid>hi("Exception", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("FoldColumn", s:gui03, s:guibg, s:cterm03, s:ctermbg, "", "")
call <sid>hi("Folded", s:gui02, s:guibg, s:cterm02, s:ctermbg, "", "")
call <sid>hi("Folded", s:gui03, s:gui01, s:cterm02, s:ctermbg, "", "")
call <sid>hi("IncSearch", s:gui01, s:gui09, s:cterm01, s:cterm09, "none", "")
call <sid>hi("Italic", "", "", "", "", "italic", "")
call <sid>hi("Macro", s:gui0C, "", s:cterm0C, "", "", "")
call <sid>hi("MatchParen", "", s:gui03, "", s:cterm03, "", "")
call <sid>hi("ModeMsg", s:gui0B, "", s:cterm0B, "", "", "")
@ -258,7 +318,10 @@ call <sid>hi("VisualNOS", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("WarningMsg", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("WildMenu", s:guibg, s:gui06, s:ctermbg, s:cterm05, "", "")
call <sid>hi("Title", s:gui0D, "", s:cterm0D, "", "none", "")
call <sid>hi("Conceal", s:gui0D, s:guibg, s:cterm0D, s:ctermbg, "", "")
"call <sid>hi("Conceal", s:gui0D, s:guibg, s:cterm0D, s:ctermbg, "", "")
hi! link Conceal ThemeBlue
call <sid>hi("Cursor", s:gui05, s:guibg, "", "", "inverse", "")
call <sid>hi("NonText", s:gui03, "", s:cterm03, "", "", "")
call <sid>hi("Whitespace", s:gui03, "", s:cterm03, "", "", "")
@ -270,7 +333,7 @@ call <sid>hi("VertSplit", s:gui01, s:guibg, s:cterm01, s:ctermbg, "none", ""
call <sid>hi("ColorColumn", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("CursorColumn", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("CursorLine", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("CursorLineNr", s:gui04, s:gui01, s:cterm04, s:cterm01, "bold", "")
call <sid>hi("CursorLineNr", s:gui04, s:gui00, s:cterm04, s:cterm01, "", "")
call <sid>hi("QuickFixLine", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("PMenu", s:gui06, s:gui01, s:cterm06, s:cterm01, "none", "")
call <sid>hi("PMenuSel", s:gui06, s:gui02, s:cterm06, s:cterm02, "", "")
@ -281,27 +344,21 @@ call <sid>hi("TabLineFill", s:gui03, s:gui01, s:cterm03, s:cterm01, "none", ""
call <sid>hi("TabLineSel", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "none", "")
" Standard syntax
call <sid>hi("Define", s:gui0E, "", s:cterm0E, "", "none", "")
call <sid>hi("Identifier", s:gui06, "", s:cterm05, "", "none", "")
call <sid>hi("Keyword", s:gui0D, "", s:cterm0E, "", "none", "")
call <sid>hi("Todo", s:gui08, s:guibg, s:cterm08, s:ctermbg, "italic", "")
hi! link Boolean ThemeOrange
hi! link Character ThemeRed
"call <sid>hi("Comment", s:gui03, "", s:cterm03, "", "italic", "")
hi! link Comment ThemeGreyItalic
hi! link Conditional ThemeRed
hi! link Constant ThemeOrange
call <sid>hi("Define", s:gui0E, "", s:cterm0E, "", "none", "")
hi! link Delimiter ThemeFg1
if has("patch-8.0.1038")
call <sid>hi("Deprecated", "", "", "", "", "strikethrough", "")
endif
hi! link Float ThemeOrange
hi! link Function ThemeBlue
call <sid>hi("Identifier", s:gui06, "", s:cterm05, "", "none", "")
hi! link Include ThemeBlue
hi! link Constant ThemeOrange
call <sid>hi("Keyword", s:gui0E, "", s:cterm0E, "", "none", "")
hi! link Label ThemeOrange
hi! link Number ThemeOrange
hi! link Operator ThemeYellow
@ -314,101 +371,145 @@ hi! link StorageClass ThemeOrange
hi! link String ThemeGreen
hi! link Structure ThemeOrange
hi! link Tag ThemeOrange
call <sid>hi("Todo", s:gui08, s:guibg, s:cterm08, s:ctermbg, "italic", "")
call <sid>hi("Type", s:gui0A, "", s:cterm0A, "", "none", "")
hi! link Type ThemeYellow
hi! link Typedef ThemeOrange
" Treesitter
if has("nvim-0.8.0")
call <sid>hi("@field", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@property", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@namespace", s:gui06, "", s:cterm05, "", "italic", "")
call <sid>hi("@variable.builtin", s:gui06, "", s:cterm05, "", "italic", "")
call <sid>hi("@text.reference", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@text.uri", s:gui08, "", s:cterm08, "", "italic", "")
hi! link @field ThemeRed
hi! link @property ThemeRed
hi! link @namespace ThemeFg1Italic
hi! link @variable.builtin ThemeFg1Italic
hi! link @variable ThemeFg2
hi! link @conceal ThemeBlue
" Annotations & Attributes
call <sid>hi("@annotation", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@attribute", s:gui0D, "", s:cterm0D, "", "", "")
hi! link @text.uri ThemeRedItalic
hi! link @text.reference ThemeRed
" Booleans, Characters & Comments
call <sid>hi("@boolean", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@character", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@character.special", s:gui0F, "", s:cterm0F, "", "", "")
call <sid>hi("@comment", s:gui03, "", s:cterm03, "", "", "")
hi! link @annotation ThemeViolet
hi! link @attribute ThemeBlue
" Conditionals, Constants & Debugging
call <sid>hi("@keyword.conditional", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@constant", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@constant.builtin", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@constant.macro", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@keyword.debug", s:gui08, "", s:cterm08, "", "", "")
hi! link @boolean ThemeOrange
hi! link @character ThemeRed
hi! link @character.special ThemeMagenta
hi! link @comment Comment
" Directives & Exceptions
call <sid>hi("@keyword.directive.define", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@keyword.exception", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @constant ThemeBlue
hi! link @constant.builtin ThemeBlue
" Floats & Functions
call <sid>hi("@number.float", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@function", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@function.builtin", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@function.call", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@function.macro", s:gui08, "", s:cterm08, "", "", "")
hi! link @constant.macro ThemeRed
" Imports, Operators & Returns
call <sid>hi("@keyword.import", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@keyword.coroutine", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@keyword.operator", s:gui06, "", s:cterm05, "", "", "")
call <sid>hi("@keyword.return", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @keyword.directive.define ThemeViolet
hi! link @keyword.exception ThemeRed
" Methods & Namespaces
call <sid>hi("@function.method", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@function.method.call", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@namespace.builtin", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @comment.error ThemeRed
hi! link @number.float ThemeRed
hi! link @keyword.function ThemeRed
" Numbers & Directives
call <sid>hi("@none", s:gui06, "", s:cterm05, "", "", "")
call <sid>hi("@number", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@keyword.directive", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @function ThemeBlue
hi! link @function.builtin ThemeBlue
hi! link @function.call ThemeBlue
hi! link @function.macro ThemeRed
hi! link @function.method ThemeBlue
hi! link @function.method.call ThemeBlue
" Repeats, Storage & Strings
call <sid>hi("@keyword.repeat", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@keyword.storage", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@string", s:gui0B, "", s:cterm0B, "", "", "")
hi! link @keyword.debug ThemeRed
hi! link @keyword.conditional ThemeRed
hi! link @keyword.import ThemeViolet
hi! link @keyword.coroutine ThemeViolet
hi! link @keyword.operator ThemeYellow
hi! link @keyword.directive ThemeViolet
hi! link @keyword.repeat ThemeViolet
hi! link @keyword.storage ThemeViolet
hi! link @keyword.return ThemeRed
" Tags & Markup
call <sid>hi("@markup.link.label", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.link.label.symbol", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@tag", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@tag.attribute", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@tag.delimiter", s:gui0F, "", s:cterm0F, "", "", "")
hi! link @constructor ThemeBlue
hi! link @namespace.builtin ThemeViolet
" More Markup
call <sid>hi("@markup", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.environment", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.environment.name", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.raw", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@markup.math", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.strong", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.emphasis", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.strikethrough", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.underline", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.heading", s:gui0D, "", s:cterm0D, "", "", "")
hi! link @none ThemeFg1
hi! link @number ThemeOrange
hi! link @string ThemeGreen
" Comments & Types
call <sid>hi("@comment.note", s:gui03, "", s:cterm03, "", "", "")
call <sid>hi("@comment.error", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@comment.hint", s:gui0B, "", s:cterm0B, "", "", "")
call <sid>hi("@comment.info", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@comment.warning", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@comment.todo", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.link.url", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@type", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@type.definition", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@type.qualifier", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @tag ThemeRed
hi! link @tag.delimiter ThemeViolet
hi! link @tag.attribute ThemeYellow
" affects markdown
hi! link @markup ThemeYellow
hi! link @markup.raw ThemeGreen
hi! link @markup.raw.block.lang ThemeFg2Bold
hi! link @markup.raw.block.marker ThemeRed
"call <sid>hi("@markup.raw.block.lang", s:gui08, "#1e0000", "", s:ctermbg, "", "")
hi! link @markup.list ThemeBlue
hi! link @markup.quote ThemeGrey
hi! link @markup.link ThemeYellow " borders
hi! link @markup.link.text ThemeBlue
hi! link @markup.link.label ThemeYellow
hi! link @markup.link.url ThemeYellow
hi! link @markup.link.dest ThemeFg3
hi! link @markup.link.wiki ThemeYellow
hi! link @markup.link.wiki.text ThemeBlue
hi! link @markup.link.wiki.label ThemeYellow
"hi! link @markup.link.label.symbol ThemeGreen
"hi! link markdownWikiLink ThemeViolet
"
hi! link @markup.environment ThemeYellow
hi! link @markup.environment.name ThemeYellow
hi! link @markup.math ThemeYellow
hi! link @punctuation.delimiter.latex ThemeOrange
hi! link @markup.strong Bold
hi! link @markup.emphasis Bold
hi! link @markup.strikethrough ThemeYellow
hi! link @markup.underline ThemeYellow
hi! link @comment.info ThemeBlue
hi! link @comment.todo ThemeYellow
hi! link @comment.note ThemeBg3
hi! link @comment.hint ThemeGreen
hi! link @comment.warning ThemeOrange
hi! link @type ThemeYellow
hi! link @type.builtin ThemeOrange
hi! link @type.definition ThemeViolet
hi! link @type.qualifier ThemeViolet
" Markdown
" hi! link @spell.markdown ThemeFg3
"call <sid>hi("@markup.heading.marker", s:gui08, "", "", s:ctermbg, "bold", "")
"hi! link @markup.heading ThemeRed
hi! link @markup.heading.marker ThemeOrange
hi! link @markup.heading.title ThemeRed "Italic
" set this for a strong background
"call <sid>hi("@markup.heading.title", s:gui08, "#440503", "", s:ctermbg, "italic", "")
hi! link @markup.heading.title.1 Bold
hi! link @markup.heading.title.3 Italic
"hi! link @markup.heading.4.title Italic
" YAML
hi! link @string.yaml ThemeBlue
hi! link @punctuation.delimiter.yaml ThemeGreen
hi! link @property.yaml ThemeFg2
" Diff
hi! link @diff.minus ThemeRed
hi! link @diff.plus ThemeGreen
call <sid>hi("TreesitterContext", "", s:gui00, "", "", "", "")
"hi TreesitterContextLineNumberBottom gui=underline guisp=Gray
"call <sid>hi("TreesitterContextBottom", "", "", "", "", "underline", s:gui02)
call <sid>hi("TreesitterContextSeparator", s:gui03, "", "", "", "", "")
"call <sid>hi("TreesitterContextLineNumberBottom", "", "", "", "", "underline", s:gui02)
endif
" Standard highlights to be used by plugins
@ -433,6 +534,7 @@ call <sid>hi("WarningFloat", s:gui09, s:gui01, s:cterm09, s:cterm01, "", "")
call <sid>hi("InfoFloat", s:gui0D, s:gui01, s:cterm0D, s:cterm01, "", "")
call <sid>hi("HintFloat", s:gui0C, s:gui01, s:cterm0C, s:cterm01, "", "")
call <sid>hi("OkFloat", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "")
call <sid>hi("NormalFloat", s:gui05, s:gui01, s:cterm05, s:cterm01, "", "")
call <sid>hi("ErrorHighlight", "", "", s:ctermbg, s:cterm08, "underline", s:gui08)
call <sid>hi("WarningHighlight", "", "", s:ctermbg, s:cterm09, "underline", s:gui09)
@ -449,6 +551,62 @@ call <sid>hi("ReferenceText", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "", "")
call <sid>hi("ReferenceRead", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "", "")
call <sid>hi("ReferenceWrite", s:gui01, s:gui08, s:cterm01, s:cterm08, "", "")
" 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
" "
" LANGUAGES
" "
" C
call <sid>hi("cOperator", s:gui0C, "", s:cterm0C, "", "", "")
call <sid>hi("cPreCondit", s:gui0E, "", s:cterm0E, "", "", "")
@ -728,8 +886,8 @@ call <sid>hi("phpMethodsVar", s:gui0C, "", s:cterm0C, "", "", "")
" hi! link pythonBuiltinObj ThemeCyan
" hi! link pythonBuiltinFunc ThemeGreen
" hi! link pythonFunction Function
hi! link pythonDecorator ThemeYellow
hi! link pythonDecoratorName ThemeYellow
" hi! link pythonDecorator ThemeYellow
" hi! link pythonDecoratorName ThemeYellow
" hi! link pythonTripleQuotes ThemeGreenItalic
" hi! link pythonInclude ThemeBlue
" hi! link pythonImport ThemeBlue
@ -777,58 +935,6 @@ call <sid>hi("StartifySelect", s:gui0C, "", s:cterm0C, "", "", "")
call <sid>hi("StartifySlash", s:gui03, "", s:cterm03, "", "", "")
call <sid>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 <sid>hi("javaOperator", s:gui0D, "", s:cterm0D, "", "", "")
@ -864,12 +970,18 @@ hi! link markdownUrlTitleDelimiter ThemeGreen
hi! link markdownLink ThemeGreen
hi! link markdownWikiLink ThemeViolet
hi! link markdownUrl ThemeOrange
"hi! link markdownUrl ThemeOrange
hi! link markdownUrl ThemeRed
hi! link markdownUrlProtocol ThemeGreenItalic
hi! link markdownInlineUrl ThemeOrange
hi! link markdownLinkText ThemeViolet
hi! link markdownIdDeclaration markdownLinkText
hi! link pandocAtxHeader ThemeRed
hi! link pandocAtxStart ThemeOrange
"call s:HL('markdownItalic', s:fg3, s:none, s:italic)
"call s:HL('markdownLinkText', s:gray, s:none, s:underline)
@ -880,3 +992,4 @@ delf <sid>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

View File

@ -0,0 +1,995 @@
" 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.
"
" There are several kinds of syntax identifiers:
"
" - Vim/editor related (e.g., Normal, Folded): these control colors of central Vim
" elements, like whitespace, bold text, the foldcolumn, etc
" - Generic syntax identifiers (e.g., Boolean, Conditional): these are key groups for
" syntax elements that various language syntax files link to. For instance, Python
" syntax files might have specific patterns that match function keywords like "def," and
" the resulting syntax region can be highlighted by linking it to the core "Function"
" highlight identifier.
" - Treesitter-based identifiers (e.g., @variable, @boolean): highlight groups for
" treesitter-based syntax highlighting, which can replace regex-based matching when
" enabled for richer (and often faster) highlighting. These groups can be linked to the
" core identifiers like any other language.
"
" *Note*: each of these identifiers can add a lang-specific suffix to style those groups
" as they apply to particular languages. For ex, `@boolean.python ThemeRed` would style
" Python booleans red, while the lang-agnostic `@boolean` definition remains.
" - Plugin-oriented identifiers (e.g., SpellBad, ErrorFloat): these are groups mostly core
" to vim/nvim, but often appear only in the context of plugins or certain modules (like
" LSP). For instance, ErrorFloat styles floating windows that might be drawn by nvim's
" built-in LSP hover info.
" GUI color definitions
let s:gui00 = "#1e231f"
let g:base16_gui00 = "#1e231f"
let s:gui01 = "#2a2f2b"
let g:base16_gui01 = "#2a2f2b"
let s:gui02 = "#373c37"
let g:base16_gui02 = "#373c37"
let s:gui03 = "#444944"
let g:base16_gui03 = "#444944"
let s:gui04 = "#a9b0aa"
let g:base16_gui04 = "#a9b0aa"
let s:gui05 = "#b9c0ba"
let g:base16_gui05 = "#b9c0ba"
let s:gui06 = "#c9d0ca"
let g:base16_gui06 = "#c9d0ca"
let s:gui07 = "#d9e0da"
let g:base16_gui07 = "#d9e0da"
let s:gui08 = "#e95949"
let g:base16_gui08 = "#e95949"
let s:gui09 = "#c97920"
let g:base16_gui09 = "#c97920"
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 = "#6d736e"
" 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 = "#1e231f"
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 = "#b9c0ba"
let g:terminal_color_8 = "#444944"
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 = "#d9e0da"
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 = [
\ "#1e231f",
\ "#e95949",
\ "#5da268",
\ "#989250",
\ "#658ed9",
\ "#658ed9",
\ "#5da268",
\ "#b9c0ba",
\ "#444944",
\ "#e95949",
\ "#5da268",
\ "#989250",
\ "#658ed9",
\ "#658ed9",
\ "#5da268",
\ "#d9e0da",
\ ]
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 <sid>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 <sid>hi("ThemeBg0", s:gui00, "", s:cterm00, "", "", "")
call <sid>hi("ThemeBg1", s:gui01, "", s:cterm01, "", "", "")
call <sid>hi("ThemeBg2", s:gui02, "", s:cterm02, "", "", "")
call <sid>hi("ThemeBg3", s:gui03, "", s:cterm03, "", "", "")
call <sid>hi("ThemeFg3", s:gui04, "", s:cterm04, "", "", "")
call <sid>hi("ThemeFg2", s:gui05, "", s:cterm05, "", "", "")
call <sid>hi("ThemeFg1", s:gui06, "", s:cterm06, "", "", "")
call <sid>hi("ThemeFg0", s:gui07, "", s:cterm07, "", "", "")
call <sid>hi("ThemeBg0bold", s:gui00, "", s:cterm00, "", "bold", "")
call <sid>hi("ThemeBg1bold", s:gui01, "", s:cterm01, "", "bold", "")
call <sid>hi("ThemeBg2bold", s:gui02, "", s:cterm02, "", "bold", "")
call <sid>hi("ThemeBg3bold", s:gui03, "", s:cterm03, "", "bold", "")
call <sid>hi("ThemeFg3bold", s:gui04, "", s:cterm04, "", "bold", "")
call <sid>hi("ThemeFg2bold", s:gui05, "", s:cterm05, "", "bold", "")
call <sid>hi("ThemeFg1bold", s:gui06, "", s:cterm06, "", "bold", "")
call <sid>hi("ThemeFg0bold", s:gui07, "", s:cterm07, "", "bold", "")
call <sid>hi("ThemeBg0Italic", s:gui00, "", s:cterm00, "", "italic", "")
call <sid>hi("ThemeBg1Italic", s:gui01, "", s:cterm01, "", "italic", "")
call <sid>hi("ThemeBg2Italic", s:gui02, "", s:cterm02, "", "italic", "")
call <sid>hi("ThemeBg3Italic", s:gui03, "", s:cterm03, "", "italic", "")
call <sid>hi("ThemeFg3Italic", s:gui04, "", s:cterm04, "", "italic", "")
call <sid>hi("ThemeFg2Italic", s:gui05, "", s:cterm05, "", "italic", "")
call <sid>hi("ThemeFg1Italic", s:gui06, "", s:cterm06, "", "italic", "")
call <sid>hi("ThemeFg0Italic", s:gui07, "", s:cterm07, "", "italic", "")
call <sid>hi("ThemeRed", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("ThemeOrange", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("ThemeYellow", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("ThemeGreen", s:gui0B, "", s:cterm0B, "", "", "")
call <sid>hi("ThemeCyan", s:gui0C, "", s:cterm0C, "", "", "")
call <sid>hi("ThemeBlue", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("ThemeViolet", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("ThemeMagenta", s:gui0F, "", s:cterm0F, "", "", "")
call <sid>hi("ThemeRedNone", s:gui08, "", s:cterm08, "", "NONE", "")
call <sid>hi("ThemeOrangeNone", s:gui09, "", s:cterm09, "", "NONE", "")
call <sid>hi("ThemeYellowNone", s:gui0A, "", s:cterm0A, "", "NONE", "")
call <sid>hi("ThemeGreenNone", s:gui0B, "", s:cterm0B, "", "NONE", "")
call <sid>hi("ThemeCyanNone", s:gui0C, "", s:cterm0C, "", "NONE", "")
call <sid>hi("ThemeBlueNone", s:gui0D, "", s:cterm0D, "", "NONE", "")
call <sid>hi("ThemeVioletNone", s:gui0E, "", s:cterm0E, "", "NONE", "")
call <sid>hi("ThemeMagentaNone", s:gui0F, "", s:cterm0F, "", "NONE", "")
call <sid>hi("ThemeRedBold", s:gui08, "", s:cterm08, "", "bold", "")
call <sid>hi("ThemeOrangeBold", s:gui09, "", s:cterm09, "", "bold", "")
call <sid>hi("ThemeYellowBold", s:gui0A, "", s:cterm0A, "", "bold", "")
call <sid>hi("ThemeGreenBold", s:gui0B, "", s:cterm0B, "", "bold", "")
call <sid>hi("ThemeCyanBold", s:gui0C, "", s:cterm0C, "", "bold", "")
call <sid>hi("ThemeBlueBold", s:gui0D, "", s:cterm0D, "", "bold", "")
call <sid>hi("ThemeVioletBold", s:gui0E, "", s:cterm0E, "", "bold", "")
call <sid>hi("ThemeMagentaBold", s:gui0F, "", s:cterm0F, "", "bold", "")
call <sid>hi("ThemeRedItalic", s:gui08, "", s:cterm08, "", "italic", "")
call <sid>hi("ThemeOrangeItalic", s:gui09, "", s:cterm09, "", "italic", "")
call <sid>hi("ThemeYellowItalic", s:gui0A, "", s:cterm0A, "", "italic", "")
call <sid>hi("ThemeGreenItalic", s:gui0B, "", s:cterm0B, "", "italic", "")
call <sid>hi("ThemeCyanItalic", s:gui0C, "", s:cterm0C, "", "italic", "")
call <sid>hi("ThemeBlueItalic", s:gui0D, "", s:cterm0D, "", "italic", "")
call <sid>hi("ThemeVioletItalic", s:gui0E, "", s:cterm0E, "", "italic", "")
call <sid>hi("ThemeMagentaItalic", s:gui0F, "", s:cterm0F, "", "italic", "")
call <sid>hi("ThemeRedBoldItalic", s:gui08, "", s:cterm08, "", "bold,italic", "")
call <sid>hi("ThemeOrangeBoldItalic", s:gui09, "", s:cterm09, "", "bold,italic", "")
call <sid>hi("ThemeYellowBoldItalic", s:gui0A, "", s:cterm0A, "", "bold,italic", "")
call <sid>hi("ThemeGreenBoldItalic", s:gui0B, "", s:cterm0B, "", "bold,italic", "")
call <sid>hi("ThemeCyanBoldItalic", s:gui0C, "", s:cterm0C, "", "bold,italic", "")
call <sid>hi("ThemeBlueBoldItalic", s:gui0D, "", s:cterm0D, "", "bold,italic", "")
call <sid>hi("ThemeVioletBoldItalic", s:gui0E, "", s:cterm0E, "", "bold,italic", "")
call <sid>hi("ThemeMagentaBoldItalic", s:gui0F, "", s:cterm0F, "", "bold,italic", "")
call <sid>hi("ThemeGrey", s:grey, "", s:cterm03, "", "", "")
call <sid>hi("ThemeGreyItalic", s:grey, "", s:cterm03, "", "italic", "")
" Vim editor colors
call <sid>hi("Bold", "", "", "", "", "bold", "")
call <sid>hi("Italic", "", "", "", "", "italic", "")
call <sid>hi("BoldItalic", "", "", "", "", "italic,bold", "")
call <sid>hi("Normal", s:gui05, s:guibg, s:cterm05, s:ctermbg, "", "")
call <sid>hi("Debug", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("Directory", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("Error", s:guibg, s:gui08, s:ctermbg, s:cterm08, "", "")
call <sid>hi("ErrorMsg", s:gui08, s:guibg, s:cterm08, s:ctermbg, "", "")
call <sid>hi("Exception", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("FoldColumn", s:gui03, s:guibg, s:cterm03, s:ctermbg, "", "")
call <sid>hi("Folded", s:gui03, s:gui01, s:cterm02, s:ctermbg, "", "")
call <sid>hi("IncSearch", s:gui01, s:gui09, s:cterm01, s:cterm09, "none", "")
call <sid>hi("Macro", s:gui0C, "", s:cterm0C, "", "", "")
call <sid>hi("MatchParen", "", s:gui03, "", s:cterm03, "", "")
call <sid>hi("ModeMsg", s:gui0B, "", s:cterm0B, "", "", "")
call <sid>hi("MoreMsg", s:gui0B, "", s:cterm0B, "", "", "")
call <sid>hi("Question", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("Search", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "", "")
call <sid>hi("Substitute", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "none", "")
call <sid>hi("SpecialKey", s:gui03, "", s:cterm03, "", "", "")
call <sid>hi("TooLong", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("Underlined", "", "", "", "", "underline", "fg")
call <sid>hi("Visual", "", s:gui02, "", s:cterm02, "", "")
call <sid>hi("VisualNOS", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("WarningMsg", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("WildMenu", s:guibg, s:gui06, s:ctermbg, s:cterm05, "", "")
call <sid>hi("Title", s:gui0D, "", s:cterm0D, "", "none", "")
"call <sid>hi("Conceal", s:gui0D, s:guibg, s:cterm0D, s:ctermbg, "", "")
hi! link Conceal ThemeBlue
call <sid>hi("Cursor", s:gui05, s:guibg, "", "", "inverse", "")
call <sid>hi("NonText", s:gui03, "", s:cterm03, "", "", "")
call <sid>hi("Whitespace", s:gui03, "", s:cterm03, "", "", "")
call <sid>hi("LineNr", s:gui03, s:guibg, s:cterm03, s:ctermbg, "", "")
call <sid>hi("SignColumn", s:gui03, s:guibg, s:cterm03, s:ctermbg, "", "")
call <sid>hi("StatusLine", s:gui07, s:gui01, s:cterm07, s:cterm01, "none", "")
call <sid>hi("StatusLineNC", s:gui06, s:gui01, s:cterm05, s:cterm01, "none", "")
call <sid>hi("VertSplit", s:gui01, s:guibg, s:cterm01, s:ctermbg, "none", "")
call <sid>hi("ColorColumn", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("CursorColumn", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("CursorLine", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("CursorLineNr", s:gui04, s:gui00, s:cterm04, s:cterm01, "", "")
call <sid>hi("QuickFixLine", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("PMenu", s:gui06, s:gui01, s:cterm06, s:cterm01, "none", "")
call <sid>hi("PMenuSel", s:gui06, s:gui02, s:cterm06, s:cterm02, "", "")
call <sid>hi("PMenuSbar", "", s:gui03, "", s:cterm03, "", "")
call <sid>hi("PMenuThumb", "", s:gui04, "", s:cterm04, "", "")
call <sid>hi("TabLine", s:gui03, s:gui01, s:cterm03, s:cterm01, "none", "")
call <sid>hi("TabLineFill", s:gui03, s:gui01, s:cterm03, s:cterm01, "none", "")
call <sid>hi("TabLineSel", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "none", "")
" Standard syntax
call <sid>hi("Define", s:gui0E, "", s:cterm0E, "", "none", "")
call <sid>hi("Identifier", s:gui06, "", s:cterm05, "", "none", "")
call <sid>hi("Keyword", s:gui0D, "", s:cterm0E, "", "none", "")
call <sid>hi("Todo", s:gui08, s:guibg, s:cterm08, s:ctermbg, "italic", "")
hi! link Boolean ThemeOrange
hi! link Character ThemeRed
hi! link Comment ThemeGreyItalic
hi! link Conditional ThemeRed
hi! link Constant ThemeOrange
hi! link Delimiter ThemeFg1
hi! link Float ThemeOrange
hi! link Function ThemeBlue
hi! link Include ThemeBlue
hi! link Constant ThemeOrange
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
hi! link Type ThemeYellow
hi! link Typedef ThemeOrange
" Treesitter
if has("nvim-0.8.0")
hi! link @field ThemeRed
hi! link @property ThemeRed
hi! link @namespace ThemeFg1Italic
hi! link @variable.builtin ThemeFg1Italic
hi! link @variable ThemeFg2
hi! link @conceal ThemeBlue
hi! link @text.uri ThemeRedItalic
hi! link @text.reference ThemeRed
hi! link @annotation ThemeViolet
hi! link @attribute ThemeBlue
hi! link @boolean ThemeOrange
hi! link @character ThemeRed
hi! link @character.special ThemeMagenta
hi! link @comment Comment
hi! link @constant ThemeBlue
hi! link @constant.builtin ThemeBlue
hi! link @constant.macro ThemeRed
hi! link @keyword.directive.define ThemeViolet
hi! link @keyword.exception ThemeRed
hi! link @comment.error ThemeRed
hi! link @number.float ThemeRed
hi! link @keyword.function ThemeRed
hi! link @function ThemeBlue
hi! link @function.builtin ThemeBlue
hi! link @function.call ThemeBlue
hi! link @function.macro ThemeRed
hi! link @function.method ThemeBlue
hi! link @function.method.call ThemeBlue
hi! link @keyword.debug ThemeRed
hi! link @keyword.conditional ThemeRed
hi! link @keyword.import ThemeViolet
hi! link @keyword.coroutine ThemeViolet
hi! link @keyword.operator ThemeYellow
hi! link @keyword.directive ThemeViolet
hi! link @keyword.repeat ThemeViolet
hi! link @keyword.storage ThemeViolet
hi! link @keyword.return ThemeRed
hi! link @constructor ThemeBlue
hi! link @namespace.builtin ThemeViolet
hi! link @none ThemeFg1
hi! link @number ThemeOrange
hi! link @string ThemeGreen
hi! link @tag ThemeRed
hi! link @tag.delimiter ThemeViolet
hi! link @tag.attribute ThemeYellow
" affects markdown
hi! link @markup ThemeYellow
hi! link @markup.raw ThemeGreen
hi! link @markup.raw.block.lang ThemeFg2Bold
hi! link @markup.raw.block.marker ThemeRed
"call <sid>hi("@markup.raw.block.lang", s:gui08, "#1e0000", "", s:ctermbg, "", "")
hi! link @markup.list ThemeBlue
hi! link @markup.quote ThemeGrey
hi! link @markup.link ThemeYellow " borders
hi! link @markup.link.text ThemeBlue
hi! link @markup.link.label ThemeYellow
hi! link @markup.link.url ThemeYellow
hi! link @markup.link.dest ThemeFg3
hi! link @markup.link.wiki ThemeYellow
hi! link @markup.link.wiki.text ThemeBlue
hi! link @markup.link.wiki.label ThemeYellow
"hi! link @markup.link.label.symbol ThemeGreen
"hi! link markdownWikiLink ThemeViolet
"
hi! link @markup.environment ThemeYellow
hi! link @markup.environment.name ThemeYellow
hi! link @markup.math ThemeYellow
hi! link @punctuation.delimiter.latex ThemeOrange
hi! link @markup.strong Bold
hi! link @markup.emphasis Bold
hi! link @markup.strikethrough ThemeYellow
hi! link @markup.underline ThemeYellow
hi! link @comment.info ThemeBlue
hi! link @comment.todo ThemeYellow
hi! link @comment.note ThemeBg3
hi! link @comment.hint ThemeGreen
hi! link @comment.warning ThemeOrange
hi! link @type ThemeYellow
hi! link @type.builtin ThemeOrange
hi! link @type.definition ThemeViolet
hi! link @type.qualifier ThemeViolet
" Markdown
" hi! link @spell.markdown ThemeFg3
"call <sid>hi("@markup.heading.marker", s:gui08, "", "", s:ctermbg, "bold", "")
"hi! link @markup.heading ThemeRed
hi! link @markup.heading.marker ThemeOrange
hi! link @markup.heading.title ThemeRed "Italic
" set this for a strong background
"call <sid>hi("@markup.heading.title", s:gui08, "#440503", "", s:ctermbg, "italic", "")
hi! link @markup.heading.title.1 Bold
hi! link @markup.heading.title.3 Italic
"hi! link @markup.heading.4.title Italic
" YAML
hi! link @string.yaml ThemeBlue
hi! link @punctuation.delimiter.yaml ThemeGreen
hi! link @property.yaml ThemeFg2
" Diff
hi! link @diff.minus ThemeRed
hi! link @diff.plus ThemeGreen
call <sid>hi("TreesitterContext", "", s:gui00, "", "", "", "")
"hi TreesitterContextLineNumberBottom gui=underline guisp=Gray
"call <sid>hi("TreesitterContextBottom", "", "", "", "", "underline", s:gui02)
call <sid>hi("TreesitterContextSeparator", s:gui03, "", "", "", "", "")
"call <sid>hi("TreesitterContextLineNumberBottom", "", "", "", "", "underline", s:gui02)
endif
" Standard highlights to be used by plugins
if has("patch-8.0.1038")
call <sid>hi("Deprecated", "", "", "", "", "strikethrough", "")
endif
call <sid>hi("SearchMatch", s:gui0C, "", s:cterm0C, "", "", "")
call <sid>hi("GitAddSign", s:gui0B, "", s:cterm0B, "", "", "")
call <sid>hi("GitChangeSign", s:gui04, "", s:cterm04, "", "", "")
call <sid>hi("GitDeleteSign", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("GitChangeDeleteSign", s:gui04, "", s:cterm04, "", "", "")
call <sid>hi("ErrorSign", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("WarningSign", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("InfoSign", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("HintSign", s:gui0C, "", s:cterm0C, "", "", "")
call <sid>hi("OkSign", s:gui0B, "", s:cterm0B, "", "", "")
call <sid>hi("ErrorFloat", s:gui08, s:gui01, s:cterm08, s:cterm01, "", "")
call <sid>hi("WarningFloat", s:gui09, s:gui01, s:cterm09, s:cterm01, "", "")
call <sid>hi("InfoFloat", s:gui0D, s:gui01, s:cterm0D, s:cterm01, "", "")
call <sid>hi("HintFloat", s:gui0C, s:gui01, s:cterm0C, s:cterm01, "", "")
call <sid>hi("OkFloat", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "")
call <sid>hi("NormalFloat", s:gui05, s:gui01, s:cterm05, s:cterm01, "", "")
call <sid>hi("ErrorHighlight", "", "", s:ctermbg, s:cterm08, "underline", s:gui08)
call <sid>hi("WarningHighlight", "", "", s:ctermbg, s:cterm09, "underline", s:gui09)
call <sid>hi("InfoHighlight", "", "", s:ctermbg, s:cterm0D, "underline", s:gui0D)
call <sid>hi("HintHighlight", "", "", s:ctermbg, s:cterm0C, "underline", s:gui0C)
call <sid>hi("OkHighlight", "", "", s:ctermbg, s:cterm0B, "underline", s:gui0B)
call <sid>hi("SpellBad", "", "", s:ctermbg, s:cterm08, "undercurl", s:gui08)
call <sid>hi("SpellLocal", "", "", s:ctermbg, s:cterm0C, "undercurl", s:gui0C)
call <sid>hi("SpellCap", "", "", s:ctermbg, s:cterm0D, "undercurl", s:gui0D)
call <sid>hi("SpellRare", "", "", s:ctermbg, s:cterm0E, "undercurl", s:gui0E)
call <sid>hi("ReferenceText", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "", "")
call <sid>hi("ReferenceRead", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "", "")
call <sid>hi("ReferenceWrite", s:gui01, s:gui08, s:cterm01, s:cterm08, "", "")
" 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
" "
" LANGUAGES
" "
" C
call <sid>hi("cOperator", s:gui0C, "", s:cterm0C, "", "", "")
call <sid>hi("cPreCondit", s:gui0E, "", s:cterm0E, "", "", "")
" C#
call <sid>hi("csClass", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("csAttribute", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("csModifier", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("csType", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("csUnspecifiedStatement", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("csContextualStatement", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>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 <sid>hi("CocHighlightRead", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "")
call <sid>hi("CocHighlightText", s:gui0A, s:gui01, s:cterm0A, s:cterm01, "", "")
call <sid>hi("CocHighlightWrite", s:gui08, s:gui01, s:cterm08, s:cterm01, "", "")
call <sid>hi("CocListMode", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "bold", "")
call <sid>hi("CocListPath", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "", "")
call <sid>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 <sid>hi("DiffAdd", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "")
call <sid>hi("DiffChange", s:gui06, s:gui01, s:cterm05, s:cterm01, "", "")
call <sid>hi("DiffDelete", s:gui02, s:guibg, s:cterm02, s:ctermbg, "", "")
call <sid>hi("DiffText", s:gui0D, s:gui01, s:cterm0D, s:cterm01, "", "")
call <sid>hi("DiffAdded", s:gui0B, s:guibg, s:cterm0B, s:ctermbg, "", "")
call <sid>hi("DiffFile", s:gui08, s:guibg, s:cterm08, s:ctermbg, "", "")
call <sid>hi("DiffNewFile", s:gui0B, s:guibg, s:cterm0B, s:ctermbg, "", "")
call <sid>hi("DiffLine", s:gui0D, s:guibg, s:cterm0D, s:ctermbg, "", "")
call <sid>hi("DiffRemoved", s:gui08, s:guibg, s:cterm08, s:ctermbg, "", "")
" Git
call <sid>hi("gitcommitOverflow", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("gitcommitSummary", s:gui0B, "", s:cterm0B, "", "", "")
call <sid>hi("gitcommitComment", s:gui03, "", s:cterm03, "", "", "")
call <sid>hi("gitcommitUntracked", s:gui03, "", s:cterm03, "", "", "")
call <sid>hi("gitcommitDiscarded", s:gui03, "", s:cterm03, "", "", "")
call <sid>hi("gitcommitSelected", s:gui03, "", s:cterm03, "", "", "")
call <sid>hi("gitcommitHeader", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("gitcommitSelectedType", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("gitcommitUnmergedType", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("gitcommitDiscardedType", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("gitcommitBranch", s:gui09, "", s:cterm09, "", "bold", "")
call <sid>hi("gitcommitUntrackedFile", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("gitcommitUnmergedFile", s:gui08, "", s:cterm08, "", "bold", "")
call <sid>hi("gitcommitDiscardedFile", s:gui08, "", s:cterm08, "", "bold", "")
call <sid>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 <sid>hi("@ibl.indent.char.1",s:gui01, "", s:cterm01, "", "", "")
endif
" HTML
call <sid>hi("htmlBold", s:gui07, "", s:cterm0A, "", "bold", "")
call <sid>hi("htmlItalic", s:gui06, "", s:cterm0E, "", "italic", "")
call <sid>hi("htmlEndTag", s:gui06, "", s:cterm05, "", "", "")
call <sid>hi("htmlTag", s:gui06, "", s:cterm05, "", "", "")
" JavaScript
call <sid>hi("javaScript", s:gui06, "", s:cterm05, "", "", "")
call <sid>hi("javaScriptBraces", s:gui06, "", s:cterm05, "", "", "")
call <sid>hi("javaScriptNumber", s:gui09, "", s:cterm09, "", "", "")
" pangloss/vim-javascript
call <sid>hi("jsOperator", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("jsStatement", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("jsReturn", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("jsThis", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("jsClassDefinition", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("jsFunction", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("jsFuncName", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("jsFuncCall", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("jsClassFuncName", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("jsClassMethodType", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("jsRegexpString", s:gui0C, "", s:cterm0C, "", "", "")
call <sid>hi("jsGlobalObjects", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("jsGlobalNodeObjects", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("jsExceptions", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("jsBuiltins", s:gui0A, "", s:cterm0A, "", "", "")
" Mail
call <sid>hi("mailQuoted1", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("mailQuoted2", s:gui0B, "", s:cterm0B, "", "", "")
call <sid>hi("mailQuoted3", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("mailQuoted4", s:gui0C, "", s:cterm0C, "", "", "")
call <sid>hi("mailQuoted5", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("mailQuoted6", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("mailURL", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("mailEmail", s:gui0D, "", s:cterm0D, "", "", "")
" Markdown
call <sid>hi("markdownCode", s:gui0B, "", s:cterm0B, "", "", "")
call <sid>hi("markdownError", s:gui06, s:guibg, s:cterm05, s:ctermbg, "", "")
call <sid>hi("markdownCodeBlock", s:gui0B, "", s:cterm0B, "", "", "")
call <sid>hi("markdownHeadingDelimiter", s:gui0D, "", s:cterm0D, "", "", "")
" Matchup
call <sid>hi("MatchWord", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "underline", "")
" NERDTree
call <sid>hi("NERDTreeDirSlash", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>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 <sid>hi("phpMemberSelector", s:gui06, "", s:cterm05, "", "", "")
call <sid>hi("phpComparison", s:gui06, "", s:cterm05, "", "", "")
call <sid>hi("phpParent", s:gui06, "", s:cterm05, "", "", "")
call <sid>hi("phpMethodsVar", s:gui0C, "", s:cterm0C, "", "", "")
" Python
"call <sid>hi("pythonOperator", s:gui0E, "", s:cterm0E, "", "", "")
"call <sid>hi("pythonRepeat", s:gui0E, "", s:cterm0E, "", "", "")
"call <sid>hi("pythonInclude", s:gui0E, "", s:cterm0E, "", "", "")
"call <sid>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 <sid>hi("rubyAttribute", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("rubyConstant", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("rubyInterpolationDelimiter", s:gui0F, "", s:cterm0F, "", "", "")
call <sid>hi("rubyRegexp", s:gui0C, "", s:cterm0C, "", "", "")
call <sid>hi("rubySymbol", s:gui0B, "", s:cterm0B, "", "", "")
call <sid>hi("rubyStringDelimiter", s:gui0B, "", s:cterm0B, "", "", "")
" SASS
call <sid>hi("sassidChar", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("sassClassChar", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("sassInclude", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("sassMixing", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("sassMixinName", s:gui0D, "", s:cterm0D, "", "", "")
" Signify
hi! link SignifySignAdd GitAddSign
hi! link SignifySignChange GitChangeSign
hi! link SignifySignDelete GitDeleteSign
" Startify
call <sid>hi("StartifyBracket", s:gui03, "", s:cterm03, "", "", "")
call <sid>hi("StartifyFile", s:gui07, "", s:cterm07, "", "", "")
call <sid>hi("StartifyFooter", s:gui03, "", s:cterm03, "", "", "")
call <sid>hi("StartifyHeader", s:gui0B, "", s:cterm0B, "", "", "")
call <sid>hi("StartifyNumber", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("StartifyPath", s:gui03, "", s:cterm03, "", "", "")
call <sid>hi("StartifySection", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("StartifySelect", s:gui0C, "", s:cterm0C, "", "", "")
call <sid>hi("StartifySlash", s:gui03, "", s:cterm03, "", "", "")
call <sid>hi("StartifySpecial", s:gui03, "", s:cterm03, "", "", "")
" Java
call <sid>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 markdownUrl ThemeRed
hi! link markdownUrlProtocol ThemeGreenItalic
hi! link markdownInlineUrl ThemeOrange
hi! link markdownLinkText ThemeViolet
hi! link markdownIdDeclaration markdownLinkText
hi! link pandocAtxHeader ThemeRed
hi! link pandocAtxStart ThemeOrange
"call s:HL('markdownItalic', s:fg3, s:none, s:italic)
"call s:HL('markdownLinkText', s:gray, s:none, s:underline)
" Remove functions
delf <sid>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

View File

@ -7,26 +7,48 @@
" - `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.
"
" There are several kinds of syntax identifiers:
"
" - Vim/editor related (e.g., Normal, Folded): these control colors of central Vim
" elements, like whitespace, bold text, the foldcolumn, etc
" - Generic syntax identifiers (e.g., Boolean, Conditional): these are key groups for
" syntax elements that various language syntax files link to. For instance, Python
" syntax files might have specific patterns that match function keywords like "def," and
" the resulting syntax region can be highlighted by linking it to the core "Function"
" highlight identifier.
" - Treesitter-based identifiers (e.g., @variable, @boolean): highlight groups for
" treesitter-based syntax highlighting, which can replace regex-based matching when
" enabled for richer (and often faster) highlighting. These groups can be linked to the
" core identifiers like any other language.
"
" *Note*: each of these identifiers can add a lang-specific suffix to style those groups
" as they apply to particular languages. For ex, `@boolean.python ThemeRed` would style
" Python booleans red, while the lang-agnostic `@boolean` definition remains.
" - Plugin-oriented identifiers (e.g., SpellBad, ErrorFloat): these are groups mostly core
" to vim/nvim, but often appear only in the context of plugins or certain modules (like
" LSP). For instance, ErrorFloat styles floating windows that might be drawn by nvim's
" built-in LSP hover info.
" 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:gui00 = "#d9e0da"
let g:base16_gui00 = "#d9e0da"
let s:gui01 = "#c9d0ca"
let g:base16_gui01 = "#c9d0ca"
let s:gui02 = "#b9c0ba"
let g:base16_gui02 = "#b9c0ba"
let s:gui03 = "#a9b0aa"
let g:base16_gui03 = "#a9b0aa"
let s:gui04 = "#444944"
let g:base16_gui04 = "#444944"
let s:gui05 = "#373c37"
let g:base16_gui05 = "#373c37"
let s:gui06 = "#2a2f2b"
let g:base16_gui06 = "#2a2f2b"
let s:gui07 = "#1e231f"
let g:base16_gui07 = "#1e231f"
let s:gui08 = "#b42219"
let g:base16_gui08 = "#b42219"
let s:gui09 = "#905201"
let g:base16_gui09 = "#905201"
let s:gui0A = "#6a6535"
@ -39,10 +61,10 @@ 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:gui0F = "#b42219"
let g:base16_gui0F = "#b42219"
let s:grey = "#636363"
let s:grey = "#7c827d"
" Terminal color definitions
let s:cterm00 = "00"
@ -81,22 +103,22 @@ 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_0 = "#d9e0da"
let g:terminal_color_1 = "#b42219"
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_7 = "#373c37"
let g:terminal_color_8 = "#a9b0aa"
let g:terminal_color_9 = "#b42219"
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_15 = "#1e231f"
let g:terminal_color_background = g:terminal_color_0
let g:terminal_color_foreground = g:terminal_color_5
@ -107,22 +129,22 @@ if has("nvim")
elseif has("terminal")
let g:terminal_ansi_colors = [
\ "#cecece",
\ "#b52119",
\ "#d9e0da",
\ "#b42219",
\ "#377242",
\ "#6a6535",
\ "#3860ac",
\ "#3860ac",
\ "#377242",
\ "#2e2e2e",
\ "#9e9e9e",
\ "#b52119",
\ "#373c37",
\ "#a9b0aa",
\ "#b42219",
\ "#377242",
\ "#6a6535",
\ "#3860ac",
\ "#3860ac",
\ "#377242",
\ "#161616",
\ "#1e231f",
\ ]
endif
@ -199,7 +221,25 @@ call <sid>hi("ThemeFg3", s:gui04, "", s:cterm04, "", "", "")
call <sid>hi("ThemeFg2", s:gui05, "", s:cterm05, "", "", "")
call <sid>hi("ThemeFg1", s:gui06, "", s:cterm06, "", "", "")
call <sid>hi("ThemeFg0", s:gui07, "", s:cterm07, "", "", "")
"
call <sid>hi("ThemeBg0bold", s:gui00, "", s:cterm00, "", "bold", "")
call <sid>hi("ThemeBg1bold", s:gui01, "", s:cterm01, "", "bold", "")
call <sid>hi("ThemeBg2bold", s:gui02, "", s:cterm02, "", "bold", "")
call <sid>hi("ThemeBg3bold", s:gui03, "", s:cterm03, "", "bold", "")
call <sid>hi("ThemeFg3bold", s:gui04, "", s:cterm04, "", "bold", "")
call <sid>hi("ThemeFg2bold", s:gui05, "", s:cterm05, "", "bold", "")
call <sid>hi("ThemeFg1bold", s:gui06, "", s:cterm06, "", "bold", "")
call <sid>hi("ThemeFg0bold", s:gui07, "", s:cterm07, "", "bold", "")
call <sid>hi("ThemeBg0Italic", s:gui00, "", s:cterm00, "", "italic", "")
call <sid>hi("ThemeBg1Italic", s:gui01, "", s:cterm01, "", "italic", "")
call <sid>hi("ThemeBg2Italic", s:gui02, "", s:cterm02, "", "italic", "")
call <sid>hi("ThemeBg3Italic", s:gui03, "", s:cterm03, "", "italic", "")
call <sid>hi("ThemeFg3Italic", s:gui04, "", s:cterm04, "", "italic", "")
call <sid>hi("ThemeFg2Italic", s:gui05, "", s:cterm05, "", "italic", "")
call <sid>hi("ThemeFg1Italic", s:gui06, "", s:cterm06, "", "italic", "")
call <sid>hi("ThemeFg0Italic", s:gui07, "", s:cterm07, "", "italic", "")
call <sid>hi("ThemeRed", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("ThemeOrange", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("ThemeYellow", s:gui0A, "", s:cterm0A, "", "", "")
@ -209,6 +249,15 @@ call <sid>hi("ThemeBlue", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("ThemeViolet", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("ThemeMagenta", s:gui0F, "", s:cterm0F, "", "", "")
call <sid>hi("ThemeRedNone", s:gui08, "", s:cterm08, "", "NONE", "")
call <sid>hi("ThemeOrangeNone", s:gui09, "", s:cterm09, "", "NONE", "")
call <sid>hi("ThemeYellowNone", s:gui0A, "", s:cterm0A, "", "NONE", "")
call <sid>hi("ThemeGreenNone", s:gui0B, "", s:cterm0B, "", "NONE", "")
call <sid>hi("ThemeCyanNone", s:gui0C, "", s:cterm0C, "", "NONE", "")
call <sid>hi("ThemeBlueNone", s:gui0D, "", s:cterm0D, "", "NONE", "")
call <sid>hi("ThemeVioletNone", s:gui0E, "", s:cterm0E, "", "NONE", "")
call <sid>hi("ThemeMagentaNone", s:gui0F, "", s:cterm0F, "", "NONE", "")
call <sid>hi("ThemeRedBold", s:gui08, "", s:cterm08, "", "bold", "")
call <sid>hi("ThemeOrangeBold", s:gui09, "", s:cterm09, "", "bold", "")
call <sid>hi("ThemeYellowBold", s:gui0A, "", s:cterm0A, "", "bold", "")
@ -227,22 +276,33 @@ call <sid>hi("ThemeBlueItalic", s:gui0D, "", s:cterm0D, "", "italic", "")
call <sid>hi("ThemeVioletItalic", s:gui0E, "", s:cterm0E, "", "italic", "")
call <sid>hi("ThemeMagentaItalic", s:gui0F, "", s:cterm0F, "", "italic", "")
call <sid>hi("ThemeRedBoldItalic", s:gui08, "", s:cterm08, "", "bold,italic", "")
call <sid>hi("ThemeOrangeBoldItalic", s:gui09, "", s:cterm09, "", "bold,italic", "")
call <sid>hi("ThemeYellowBoldItalic", s:gui0A, "", s:cterm0A, "", "bold,italic", "")
call <sid>hi("ThemeGreenBoldItalic", s:gui0B, "", s:cterm0B, "", "bold,italic", "")
call <sid>hi("ThemeCyanBoldItalic", s:gui0C, "", s:cterm0C, "", "bold,italic", "")
call <sid>hi("ThemeBlueBoldItalic", s:gui0D, "", s:cterm0D, "", "bold,italic", "")
call <sid>hi("ThemeVioletBoldItalic", s:gui0E, "", s:cterm0E, "", "bold,italic", "")
call <sid>hi("ThemeMagentaBoldItalic", s:gui0F, "", s:cterm0F, "", "bold,italic", "")
call <sid>hi("ThemeGrey", s:grey, "", s:cterm03, "", "", "")
call <sid>hi("ThemeGreyItalic", s:grey, "", s:cterm03, "", "italic", "")
" Vim editor colors
call <sid>hi("Normal", s:gui05, s:guibg, s:cterm05, s:ctermbg, "", "")
call <sid>hi("Bold", "", "", "", "", "bold", "")
call <sid>hi("Italic", "", "", "", "", "italic", "")
call <sid>hi("BoldItalic", "", "", "", "", "italic,bold", "")
call <sid>hi("Normal", s:gui05, s:guibg, s:cterm05, s:ctermbg, "", "")
call <sid>hi("Debug", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("Directory", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("Error", s:guibg, s:gui08, s:ctermbg, s:cterm08, "", "")
call <sid>hi("ErrorMsg", s:gui08, s:guibg, s:cterm08, s:ctermbg, "", "")
call <sid>hi("Exception", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("FoldColumn", s:gui03, s:guibg, s:cterm03, s:ctermbg, "", "")
call <sid>hi("Folded", s:gui02, s:guibg, s:cterm02, s:ctermbg, "", "")
call <sid>hi("Folded", s:gui03, s:gui01, s:cterm02, s:ctermbg, "", "")
call <sid>hi("IncSearch", s:gui01, s:gui09, s:cterm01, s:cterm09, "none", "")
call <sid>hi("Italic", "", "", "", "", "italic", "")
call <sid>hi("Macro", s:gui0C, "", s:cterm0C, "", "", "")
call <sid>hi("MatchParen", "", s:gui03, "", s:cterm03, "", "")
call <sid>hi("ModeMsg", s:gui0B, "", s:cterm0B, "", "", "")
@ -258,7 +318,10 @@ call <sid>hi("VisualNOS", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("WarningMsg", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("WildMenu", s:guibg, s:gui06, s:ctermbg, s:cterm05, "", "")
call <sid>hi("Title", s:gui0D, "", s:cterm0D, "", "none", "")
call <sid>hi("Conceal", s:gui0D, s:guibg, s:cterm0D, s:ctermbg, "", "")
"call <sid>hi("Conceal", s:gui0D, s:guibg, s:cterm0D, s:ctermbg, "", "")
hi! link Conceal ThemeBlue
call <sid>hi("Cursor", s:gui05, s:guibg, "", "", "inverse", "")
call <sid>hi("NonText", s:gui03, "", s:cterm03, "", "", "")
call <sid>hi("Whitespace", s:gui03, "", s:cterm03, "", "", "")
@ -270,7 +333,7 @@ call <sid>hi("VertSplit", s:gui01, s:guibg, s:cterm01, s:ctermbg, "none", ""
call <sid>hi("ColorColumn", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("CursorColumn", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("CursorLine", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("CursorLineNr", s:gui04, s:gui01, s:cterm04, s:cterm01, "bold", "")
call <sid>hi("CursorLineNr", s:gui04, s:gui00, s:cterm04, s:cterm01, "", "")
call <sid>hi("QuickFixLine", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("PMenu", s:gui06, s:gui01, s:cterm06, s:cterm01, "none", "")
call <sid>hi("PMenuSel", s:gui06, s:gui02, s:cterm06, s:cterm02, "", "")
@ -281,27 +344,21 @@ call <sid>hi("TabLineFill", s:gui03, s:gui01, s:cterm03, s:cterm01, "none", ""
call <sid>hi("TabLineSel", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "none", "")
" Standard syntax
call <sid>hi("Define", s:gui0E, "", s:cterm0E, "", "none", "")
call <sid>hi("Identifier", s:gui06, "", s:cterm05, "", "none", "")
call <sid>hi("Keyword", s:gui0D, "", s:cterm0E, "", "none", "")
call <sid>hi("Todo", s:gui08, s:guibg, s:cterm08, s:ctermbg, "italic", "")
hi! link Boolean ThemeOrange
hi! link Character ThemeRed
"call <sid>hi("Comment", s:gui03, "", s:cterm03, "", "italic", "")
hi! link Comment ThemeGreyItalic
hi! link Conditional ThemeRed
hi! link Constant ThemeOrange
call <sid>hi("Define", s:gui0E, "", s:cterm0E, "", "none", "")
hi! link Delimiter ThemeFg1
if has("patch-8.0.1038")
call <sid>hi("Deprecated", "", "", "", "", "strikethrough", "")
endif
hi! link Float ThemeOrange
hi! link Function ThemeBlue
call <sid>hi("Identifier", s:gui06, "", s:cterm05, "", "none", "")
hi! link Include ThemeBlue
hi! link Constant ThemeOrange
call <sid>hi("Keyword", s:gui0E, "", s:cterm0E, "", "none", "")
hi! link Label ThemeOrange
hi! link Number ThemeOrange
hi! link Operator ThemeYellow
@ -314,101 +371,145 @@ hi! link StorageClass ThemeOrange
hi! link String ThemeGreen
hi! link Structure ThemeOrange
hi! link Tag ThemeOrange
call <sid>hi("Todo", s:gui08, s:guibg, s:cterm08, s:ctermbg, "italic", "")
call <sid>hi("Type", s:gui0A, "", s:cterm0A, "", "none", "")
hi! link Type ThemeYellow
hi! link Typedef ThemeOrange
" Treesitter
if has("nvim-0.8.0")
call <sid>hi("@field", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@property", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@namespace", s:gui06, "", s:cterm05, "", "italic", "")
call <sid>hi("@variable.builtin", s:gui06, "", s:cterm05, "", "italic", "")
call <sid>hi("@text.reference", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@text.uri", s:gui08, "", s:cterm08, "", "italic", "")
hi! link @field ThemeRed
hi! link @property ThemeRed
hi! link @namespace ThemeFg1Italic
hi! link @variable.builtin ThemeFg1Italic
hi! link @variable ThemeFg2
hi! link @conceal ThemeBlue
" Annotations & Attributes
call <sid>hi("@annotation", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@attribute", s:gui0D, "", s:cterm0D, "", "", "")
hi! link @text.uri ThemeRedItalic
hi! link @text.reference ThemeRed
" Booleans, Characters & Comments
call <sid>hi("@boolean", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@character", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@character.special", s:gui0F, "", s:cterm0F, "", "", "")
call <sid>hi("@comment", s:gui03, "", s:cterm03, "", "", "")
hi! link @annotation ThemeViolet
hi! link @attribute ThemeBlue
" Conditionals, Constants & Debugging
call <sid>hi("@keyword.conditional", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@constant", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@constant.builtin", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@constant.macro", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@keyword.debug", s:gui08, "", s:cterm08, "", "", "")
hi! link @boolean ThemeOrange
hi! link @character ThemeRed
hi! link @character.special ThemeMagenta
hi! link @comment Comment
" Directives & Exceptions
call <sid>hi("@keyword.directive.define", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@keyword.exception", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @constant ThemeBlue
hi! link @constant.builtin ThemeBlue
" Floats & Functions
call <sid>hi("@number.float", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@function", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@function.builtin", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@function.call", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@function.macro", s:gui08, "", s:cterm08, "", "", "")
hi! link @constant.macro ThemeRed
" Imports, Operators & Returns
call <sid>hi("@keyword.import", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@keyword.coroutine", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@keyword.operator", s:gui06, "", s:cterm05, "", "", "")
call <sid>hi("@keyword.return", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @keyword.directive.define ThemeViolet
hi! link @keyword.exception ThemeRed
" Methods & Namespaces
call <sid>hi("@function.method", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@function.method.call", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@namespace.builtin", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @comment.error ThemeRed
hi! link @number.float ThemeRed
hi! link @keyword.function ThemeRed
" Numbers & Directives
call <sid>hi("@none", s:gui06, "", s:cterm05, "", "", "")
call <sid>hi("@number", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@keyword.directive", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @function ThemeBlue
hi! link @function.builtin ThemeBlue
hi! link @function.call ThemeBlue
hi! link @function.macro ThemeRed
hi! link @function.method ThemeBlue
hi! link @function.method.call ThemeBlue
" Repeats, Storage & Strings
call <sid>hi("@keyword.repeat", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@keyword.storage", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@string", s:gui0B, "", s:cterm0B, "", "", "")
hi! link @keyword.debug ThemeRed
hi! link @keyword.conditional ThemeRed
hi! link @keyword.import ThemeViolet
hi! link @keyword.coroutine ThemeViolet
hi! link @keyword.operator ThemeYellow
hi! link @keyword.directive ThemeViolet
hi! link @keyword.repeat ThemeViolet
hi! link @keyword.storage ThemeViolet
hi! link @keyword.return ThemeRed
" Tags & Markup
call <sid>hi("@markup.link.label", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.link.label.symbol", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@tag", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@tag.attribute", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@tag.delimiter", s:gui0F, "", s:cterm0F, "", "", "")
hi! link @constructor ThemeBlue
hi! link @namespace.builtin ThemeViolet
" More Markup
call <sid>hi("@markup", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.environment", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.environment.name", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.raw", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@markup.math", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.strong", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.emphasis", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.strikethrough", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.underline", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.heading", s:gui0D, "", s:cterm0D, "", "", "")
hi! link @none ThemeFg1
hi! link @number ThemeOrange
hi! link @string ThemeGreen
" Comments & Types
call <sid>hi("@comment.note", s:gui03, "", s:cterm03, "", "", "")
call <sid>hi("@comment.error", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@comment.hint", s:gui0B, "", s:cterm0B, "", "", "")
call <sid>hi("@comment.info", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@comment.warning", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@comment.todo", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.link.url", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@type", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@type.definition", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@type.qualifier", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @tag ThemeRed
hi! link @tag.delimiter ThemeViolet
hi! link @tag.attribute ThemeYellow
" affects markdown
hi! link @markup ThemeYellow
hi! link @markup.raw ThemeGreen
hi! link @markup.raw.block.lang ThemeFg2Bold
hi! link @markup.raw.block.marker ThemeRed
"call <sid>hi("@markup.raw.block.lang", s:gui08, "#1e0000", "", s:ctermbg, "", "")
hi! link @markup.list ThemeBlue
hi! link @markup.quote ThemeGrey
hi! link @markup.link ThemeYellow " borders
hi! link @markup.link.text ThemeBlue
hi! link @markup.link.label ThemeYellow
hi! link @markup.link.url ThemeYellow
hi! link @markup.link.dest ThemeFg3
hi! link @markup.link.wiki ThemeYellow
hi! link @markup.link.wiki.text ThemeBlue
hi! link @markup.link.wiki.label ThemeYellow
"hi! link @markup.link.label.symbol ThemeGreen
"hi! link markdownWikiLink ThemeViolet
"
hi! link @markup.environment ThemeYellow
hi! link @markup.environment.name ThemeYellow
hi! link @markup.math ThemeYellow
hi! link @punctuation.delimiter.latex ThemeOrange
hi! link @markup.strong Bold
hi! link @markup.emphasis Bold
hi! link @markup.strikethrough ThemeYellow
hi! link @markup.underline ThemeYellow
hi! link @comment.info ThemeBlue
hi! link @comment.todo ThemeYellow
hi! link @comment.note ThemeBg3
hi! link @comment.hint ThemeGreen
hi! link @comment.warning ThemeOrange
hi! link @type ThemeYellow
hi! link @type.builtin ThemeOrange
hi! link @type.definition ThemeViolet
hi! link @type.qualifier ThemeViolet
" Markdown
" hi! link @spell.markdown ThemeFg3
"call <sid>hi("@markup.heading.marker", s:gui08, "", "", s:ctermbg, "bold", "")
"hi! link @markup.heading ThemeRed
hi! link @markup.heading.marker ThemeOrange
hi! link @markup.heading.title ThemeRed "Italic
" set this for a strong background
"call <sid>hi("@markup.heading.title", s:gui08, "#440503", "", s:ctermbg, "italic", "")
hi! link @markup.heading.title.1 Bold
hi! link @markup.heading.title.3 Italic
"hi! link @markup.heading.4.title Italic
" YAML
hi! link @string.yaml ThemeBlue
hi! link @punctuation.delimiter.yaml ThemeGreen
hi! link @property.yaml ThemeFg2
" Diff
hi! link @diff.minus ThemeRed
hi! link @diff.plus ThemeGreen
call <sid>hi("TreesitterContext", "", s:gui00, "", "", "", "")
"hi TreesitterContextLineNumberBottom gui=underline guisp=Gray
"call <sid>hi("TreesitterContextBottom", "", "", "", "", "underline", s:gui02)
call <sid>hi("TreesitterContextSeparator", s:gui03, "", "", "", "", "")
"call <sid>hi("TreesitterContextLineNumberBottom", "", "", "", "", "underline", s:gui02)
endif
" Standard highlights to be used by plugins
@ -433,6 +534,7 @@ call <sid>hi("WarningFloat", s:gui09, s:gui01, s:cterm09, s:cterm01, "", "")
call <sid>hi("InfoFloat", s:gui0D, s:gui01, s:cterm0D, s:cterm01, "", "")
call <sid>hi("HintFloat", s:gui0C, s:gui01, s:cterm0C, s:cterm01, "", "")
call <sid>hi("OkFloat", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "")
call <sid>hi("NormalFloat", s:gui05, s:gui01, s:cterm05, s:cterm01, "", "")
call <sid>hi("ErrorHighlight", "", "", s:ctermbg, s:cterm08, "underline", s:gui08)
call <sid>hi("WarningHighlight", "", "", s:ctermbg, s:cterm09, "underline", s:gui09)
@ -449,6 +551,62 @@ call <sid>hi("ReferenceText", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "", "")
call <sid>hi("ReferenceRead", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "", "")
call <sid>hi("ReferenceWrite", s:gui01, s:gui08, s:cterm01, s:cterm08, "", "")
" 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
" "
" LANGUAGES
" "
" C
call <sid>hi("cOperator", s:gui0C, "", s:cterm0C, "", "", "")
call <sid>hi("cPreCondit", s:gui0E, "", s:cterm0E, "", "", "")
@ -728,8 +886,8 @@ call <sid>hi("phpMethodsVar", s:gui0C, "", s:cterm0C, "", "", "")
" hi! link pythonBuiltinObj ThemeCyan
" hi! link pythonBuiltinFunc ThemeGreen
" hi! link pythonFunction Function
hi! link pythonDecorator ThemeYellow
hi! link pythonDecoratorName ThemeYellow
" hi! link pythonDecorator ThemeYellow
" hi! link pythonDecoratorName ThemeYellow
" hi! link pythonTripleQuotes ThemeGreenItalic
" hi! link pythonInclude ThemeBlue
" hi! link pythonImport ThemeBlue
@ -777,58 +935,6 @@ call <sid>hi("StartifySelect", s:gui0C, "", s:cterm0C, "", "", "")
call <sid>hi("StartifySlash", s:gui03, "", s:cterm03, "", "", "")
call <sid>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 <sid>hi("javaOperator", s:gui0D, "", s:cterm0D, "", "", "")
@ -864,12 +970,18 @@ hi! link markdownUrlTitleDelimiter ThemeGreen
hi! link markdownLink ThemeGreen
hi! link markdownWikiLink ThemeViolet
hi! link markdownUrl ThemeOrange
"hi! link markdownUrl ThemeOrange
hi! link markdownUrl ThemeRed
hi! link markdownUrlProtocol ThemeGreenItalic
hi! link markdownInlineUrl ThemeOrange
hi! link markdownLinkText ThemeViolet
hi! link markdownIdDeclaration markdownLinkText
hi! link pandocAtxHeader ThemeRed
hi! link pandocAtxStart ThemeOrange
"call s:HL('markdownItalic', s:fg3, s:none, s:italic)
"call s:HL('markdownLinkText', s:gray, s:none, s:underline)
@ -880,3 +992,4 @@ delf <sid>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

View File

@ -7,28 +7,50 @@
" - `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.
"
" There are several kinds of syntax identifiers:
"
" - Vim/editor related (e.g., Normal, Folded): these control colors of central Vim
" elements, like whitespace, bold text, the foldcolumn, etc
" - Generic syntax identifiers (e.g., Boolean, Conditional): these are key groups for
" syntax elements that various language syntax files link to. For instance, Python
" syntax files might have specific patterns that match function keywords like "def," and
" the resulting syntax region can be highlighted by linking it to the core "Function"
" highlight identifier.
" - Treesitter-based identifiers (e.g., @variable, @boolean): highlight groups for
" treesitter-based syntax highlighting, which can replace regex-based matching when
" enabled for richer (and often faster) highlighting. These groups can be linked to the
" core identifiers like any other language.
"
" *Note*: each of these identifiers can add a lang-specific suffix to style those groups
" as they apply to particular languages. For ex, `@boolean.python ThemeRed` would style
" Python booleans red, while the lang-agnostic `@boolean` definition remains.
" - Plugin-oriented identifiers (e.g., SpellBad, ErrorFloat): these are groups mostly core
" to vim/nvim, but often appear only in the context of plugins or certain modules (like
" LSP). For instance, ErrorFloat styles floating windows that might be drawn by nvim's
" built-in LSP hover info.
" 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:gui00 = "#131713"
let g:base16_gui00 = "#131713"
let s:gui01 = "#1e231f"
let g:base16_gui01 = "#1e231f"
let s:gui02 = "#2a2f2b"
let g:base16_gui02 = "#2a2f2b"
let s:gui03 = "#373c37"
let g:base16_gui03 = "#373c37"
let s:gui04 = "#9aa09b"
let g:base16_gui04 = "#9aa09b"
let s:gui05 = "#a9b0aa"
let g:base16_gui05 = "#a9b0aa"
let s:gui06 = "#b9c0ba"
let g:base16_gui06 = "#b9c0ba"
let s:gui07 = "#c9d0ca"
let g:base16_gui07 = "#c9d0ca"
let s:gui08 = "#dc4234"
let g:base16_gui08 = "#dc4234"
let s:gui09 = "#b76b0c"
let g:base16_gui09 = "#b76b0c"
let s:gui0A = "#888346"
let g:base16_gui0A = "#888346"
let s:gui0B = "#4f925a"
@ -39,10 +61,10 @@ 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:gui0F = "#dc4234"
let g:base16_gui0F = "#dc4234"
let s:grey = "#74716a"
let s:grey = "#5f6560"
" Terminal color definitions
let s:cterm00 = "00"
@ -81,22 +103,22 @@ 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_0 = "#131713"
let g:terminal_color_1 = "#dc4234"
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_7 = "#a9b0aa"
let g:terminal_color_8 = "#373c37"
let g:terminal_color_9 = "#dc4234"
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_15 = "#c9d0ca"
let g:terminal_color_background = g:terminal_color_0
let g:terminal_color_foreground = g:terminal_color_5
@ -107,22 +129,22 @@ if has("nvim")
elseif has("terminal")
let g:terminal_ansi_colors = [
\ "#181610",
\ "#dc4134",
\ "#131713",
\ "#dc4234",
\ "#4f925a",
\ "#888346",
\ "#557ecc",
\ "#557ecc",
\ "#4f925a",
\ "#b0aea6",
\ "#3d3a34",
\ "#dc4134",
\ "#a9b0aa",
\ "#373c37",
\ "#dc4234",
\ "#4f925a",
\ "#888346",
\ "#557ecc",
\ "#557ecc",
\ "#4f925a",
\ "#d0cec6",
\ "#c9d0ca",
\ ]
endif
@ -199,7 +221,25 @@ call <sid>hi("ThemeFg3", s:gui04, "", s:cterm04, "", "", "")
call <sid>hi("ThemeFg2", s:gui05, "", s:cterm05, "", "", "")
call <sid>hi("ThemeFg1", s:gui06, "", s:cterm06, "", "", "")
call <sid>hi("ThemeFg0", s:gui07, "", s:cterm07, "", "", "")
"
call <sid>hi("ThemeBg0bold", s:gui00, "", s:cterm00, "", "bold", "")
call <sid>hi("ThemeBg1bold", s:gui01, "", s:cterm01, "", "bold", "")
call <sid>hi("ThemeBg2bold", s:gui02, "", s:cterm02, "", "bold", "")
call <sid>hi("ThemeBg3bold", s:gui03, "", s:cterm03, "", "bold", "")
call <sid>hi("ThemeFg3bold", s:gui04, "", s:cterm04, "", "bold", "")
call <sid>hi("ThemeFg2bold", s:gui05, "", s:cterm05, "", "bold", "")
call <sid>hi("ThemeFg1bold", s:gui06, "", s:cterm06, "", "bold", "")
call <sid>hi("ThemeFg0bold", s:gui07, "", s:cterm07, "", "bold", "")
call <sid>hi("ThemeBg0Italic", s:gui00, "", s:cterm00, "", "italic", "")
call <sid>hi("ThemeBg1Italic", s:gui01, "", s:cterm01, "", "italic", "")
call <sid>hi("ThemeBg2Italic", s:gui02, "", s:cterm02, "", "italic", "")
call <sid>hi("ThemeBg3Italic", s:gui03, "", s:cterm03, "", "italic", "")
call <sid>hi("ThemeFg3Italic", s:gui04, "", s:cterm04, "", "italic", "")
call <sid>hi("ThemeFg2Italic", s:gui05, "", s:cterm05, "", "italic", "")
call <sid>hi("ThemeFg1Italic", s:gui06, "", s:cterm06, "", "italic", "")
call <sid>hi("ThemeFg0Italic", s:gui07, "", s:cterm07, "", "italic", "")
call <sid>hi("ThemeRed", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("ThemeOrange", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("ThemeYellow", s:gui0A, "", s:cterm0A, "", "", "")
@ -209,6 +249,15 @@ call <sid>hi("ThemeBlue", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("ThemeViolet", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("ThemeMagenta", s:gui0F, "", s:cterm0F, "", "", "")
call <sid>hi("ThemeRedNone", s:gui08, "", s:cterm08, "", "NONE", "")
call <sid>hi("ThemeOrangeNone", s:gui09, "", s:cterm09, "", "NONE", "")
call <sid>hi("ThemeYellowNone", s:gui0A, "", s:cterm0A, "", "NONE", "")
call <sid>hi("ThemeGreenNone", s:gui0B, "", s:cterm0B, "", "NONE", "")
call <sid>hi("ThemeCyanNone", s:gui0C, "", s:cterm0C, "", "NONE", "")
call <sid>hi("ThemeBlueNone", s:gui0D, "", s:cterm0D, "", "NONE", "")
call <sid>hi("ThemeVioletNone", s:gui0E, "", s:cterm0E, "", "NONE", "")
call <sid>hi("ThemeMagentaNone", s:gui0F, "", s:cterm0F, "", "NONE", "")
call <sid>hi("ThemeRedBold", s:gui08, "", s:cterm08, "", "bold", "")
call <sid>hi("ThemeOrangeBold", s:gui09, "", s:cterm09, "", "bold", "")
call <sid>hi("ThemeYellowBold", s:gui0A, "", s:cterm0A, "", "bold", "")
@ -227,22 +276,33 @@ call <sid>hi("ThemeBlueItalic", s:gui0D, "", s:cterm0D, "", "italic", "")
call <sid>hi("ThemeVioletItalic", s:gui0E, "", s:cterm0E, "", "italic", "")
call <sid>hi("ThemeMagentaItalic", s:gui0F, "", s:cterm0F, "", "italic", "")
call <sid>hi("ThemeRedBoldItalic", s:gui08, "", s:cterm08, "", "bold,italic", "")
call <sid>hi("ThemeOrangeBoldItalic", s:gui09, "", s:cterm09, "", "bold,italic", "")
call <sid>hi("ThemeYellowBoldItalic", s:gui0A, "", s:cterm0A, "", "bold,italic", "")
call <sid>hi("ThemeGreenBoldItalic", s:gui0B, "", s:cterm0B, "", "bold,italic", "")
call <sid>hi("ThemeCyanBoldItalic", s:gui0C, "", s:cterm0C, "", "bold,italic", "")
call <sid>hi("ThemeBlueBoldItalic", s:gui0D, "", s:cterm0D, "", "bold,italic", "")
call <sid>hi("ThemeVioletBoldItalic", s:gui0E, "", s:cterm0E, "", "bold,italic", "")
call <sid>hi("ThemeMagentaBoldItalic", s:gui0F, "", s:cterm0F, "", "bold,italic", "")
call <sid>hi("ThemeGrey", s:grey, "", s:cterm03, "", "", "")
call <sid>hi("ThemeGreyItalic", s:grey, "", s:cterm03, "", "italic", "")
" Vim editor colors
call <sid>hi("Normal", s:gui05, s:guibg, s:cterm05, s:ctermbg, "", "")
call <sid>hi("Bold", "", "", "", "", "bold", "")
call <sid>hi("Italic", "", "", "", "", "italic", "")
call <sid>hi("BoldItalic", "", "", "", "", "italic,bold", "")
call <sid>hi("Normal", s:gui05, s:guibg, s:cterm05, s:ctermbg, "", "")
call <sid>hi("Debug", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("Directory", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("Error", s:guibg, s:gui08, s:ctermbg, s:cterm08, "", "")
call <sid>hi("ErrorMsg", s:gui08, s:guibg, s:cterm08, s:ctermbg, "", "")
call <sid>hi("Exception", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("FoldColumn", s:gui03, s:guibg, s:cterm03, s:ctermbg, "", "")
call <sid>hi("Folded", s:gui02, s:guibg, s:cterm02, s:ctermbg, "", "")
call <sid>hi("Folded", s:gui03, s:gui01, s:cterm02, s:ctermbg, "", "")
call <sid>hi("IncSearch", s:gui01, s:gui09, s:cterm01, s:cterm09, "none", "")
call <sid>hi("Italic", "", "", "", "", "italic", "")
call <sid>hi("Macro", s:gui0C, "", s:cterm0C, "", "", "")
call <sid>hi("MatchParen", "", s:gui03, "", s:cterm03, "", "")
call <sid>hi("ModeMsg", s:gui0B, "", s:cterm0B, "", "", "")
@ -258,7 +318,10 @@ call <sid>hi("VisualNOS", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("WarningMsg", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("WildMenu", s:guibg, s:gui06, s:ctermbg, s:cterm05, "", "")
call <sid>hi("Title", s:gui0D, "", s:cterm0D, "", "none", "")
call <sid>hi("Conceal", s:gui0D, s:guibg, s:cterm0D, s:ctermbg, "", "")
"call <sid>hi("Conceal", s:gui0D, s:guibg, s:cterm0D, s:ctermbg, "", "")
hi! link Conceal ThemeBlue
call <sid>hi("Cursor", s:gui05, s:guibg, "", "", "inverse", "")
call <sid>hi("NonText", s:gui03, "", s:cterm03, "", "", "")
call <sid>hi("Whitespace", s:gui03, "", s:cterm03, "", "", "")
@ -270,7 +333,7 @@ call <sid>hi("VertSplit", s:gui01, s:guibg, s:cterm01, s:ctermbg, "none", ""
call <sid>hi("ColorColumn", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("CursorColumn", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("CursorLine", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("CursorLineNr", s:gui04, s:gui01, s:cterm04, s:cterm01, "bold", "")
call <sid>hi("CursorLineNr", s:gui04, s:gui00, s:cterm04, s:cterm01, "", "")
call <sid>hi("QuickFixLine", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("PMenu", s:gui06, s:gui01, s:cterm06, s:cterm01, "none", "")
call <sid>hi("PMenuSel", s:gui06, s:gui02, s:cterm06, s:cterm02, "", "")
@ -281,27 +344,21 @@ call <sid>hi("TabLineFill", s:gui03, s:gui01, s:cterm03, s:cterm01, "none", ""
call <sid>hi("TabLineSel", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "none", "")
" Standard syntax
call <sid>hi("Define", s:gui0E, "", s:cterm0E, "", "none", "")
call <sid>hi("Identifier", s:gui06, "", s:cterm05, "", "none", "")
call <sid>hi("Keyword", s:gui0D, "", s:cterm0E, "", "none", "")
call <sid>hi("Todo", s:gui08, s:guibg, s:cterm08, s:ctermbg, "italic", "")
hi! link Boolean ThemeOrange
hi! link Character ThemeRed
"call <sid>hi("Comment", s:gui03, "", s:cterm03, "", "italic", "")
hi! link Comment ThemeGreyItalic
hi! link Conditional ThemeRed
hi! link Constant ThemeOrange
call <sid>hi("Define", s:gui0E, "", s:cterm0E, "", "none", "")
hi! link Delimiter ThemeFg1
if has("patch-8.0.1038")
call <sid>hi("Deprecated", "", "", "", "", "strikethrough", "")
endif
hi! link Float ThemeOrange
hi! link Function ThemeBlue
call <sid>hi("Identifier", s:gui06, "", s:cterm05, "", "none", "")
hi! link Include ThemeBlue
hi! link Constant ThemeOrange
call <sid>hi("Keyword", s:gui0E, "", s:cterm0E, "", "none", "")
hi! link Label ThemeOrange
hi! link Number ThemeOrange
hi! link Operator ThemeYellow
@ -314,101 +371,145 @@ hi! link StorageClass ThemeOrange
hi! link String ThemeGreen
hi! link Structure ThemeOrange
hi! link Tag ThemeOrange
call <sid>hi("Todo", s:gui08, s:guibg, s:cterm08, s:ctermbg, "italic", "")
call <sid>hi("Type", s:gui0A, "", s:cterm0A, "", "none", "")
hi! link Type ThemeYellow
hi! link Typedef ThemeOrange
" Treesitter
if has("nvim-0.8.0")
call <sid>hi("@field", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@property", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@namespace", s:gui06, "", s:cterm05, "", "italic", "")
call <sid>hi("@variable.builtin", s:gui06, "", s:cterm05, "", "italic", "")
call <sid>hi("@text.reference", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@text.uri", s:gui08, "", s:cterm08, "", "italic", "")
hi! link @field ThemeRed
hi! link @property ThemeRed
hi! link @namespace ThemeFg1Italic
hi! link @variable.builtin ThemeFg1Italic
hi! link @variable ThemeFg2
hi! link @conceal ThemeBlue
" Annotations & Attributes
call <sid>hi("@annotation", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@attribute", s:gui0D, "", s:cterm0D, "", "", "")
hi! link @text.uri ThemeRedItalic
hi! link @text.reference ThemeRed
" Booleans, Characters & Comments
call <sid>hi("@boolean", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@character", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@character.special", s:gui0F, "", s:cterm0F, "", "", "")
call <sid>hi("@comment", s:gui03, "", s:cterm03, "", "", "")
hi! link @annotation ThemeViolet
hi! link @attribute ThemeBlue
" Conditionals, Constants & Debugging
call <sid>hi("@keyword.conditional", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@constant", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@constant.builtin", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@constant.macro", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@keyword.debug", s:gui08, "", s:cterm08, "", "", "")
hi! link @boolean ThemeOrange
hi! link @character ThemeRed
hi! link @character.special ThemeMagenta
hi! link @comment Comment
" Directives & Exceptions
call <sid>hi("@keyword.directive.define", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@keyword.exception", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @constant ThemeBlue
hi! link @constant.builtin ThemeBlue
" Floats & Functions
call <sid>hi("@number.float", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@function", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@function.builtin", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@function.call", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@function.macro", s:gui08, "", s:cterm08, "", "", "")
hi! link @constant.macro ThemeRed
" Imports, Operators & Returns
call <sid>hi("@keyword.import", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@keyword.coroutine", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@keyword.operator", s:gui06, "", s:cterm05, "", "", "")
call <sid>hi("@keyword.return", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @keyword.directive.define ThemeViolet
hi! link @keyword.exception ThemeRed
" Methods & Namespaces
call <sid>hi("@function.method", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@function.method.call", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@namespace.builtin", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @comment.error ThemeRed
hi! link @number.float ThemeRed
hi! link @keyword.function ThemeRed
" Numbers & Directives
call <sid>hi("@none", s:gui06, "", s:cterm05, "", "", "")
call <sid>hi("@number", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@keyword.directive", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @function ThemeBlue
hi! link @function.builtin ThemeBlue
hi! link @function.call ThemeBlue
hi! link @function.macro ThemeRed
hi! link @function.method ThemeBlue
hi! link @function.method.call ThemeBlue
" Repeats, Storage & Strings
call <sid>hi("@keyword.repeat", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@keyword.storage", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@string", s:gui0B, "", s:cterm0B, "", "", "")
hi! link @keyword.debug ThemeRed
hi! link @keyword.conditional ThemeRed
hi! link @keyword.import ThemeViolet
hi! link @keyword.coroutine ThemeViolet
hi! link @keyword.operator ThemeYellow
hi! link @keyword.directive ThemeViolet
hi! link @keyword.repeat ThemeViolet
hi! link @keyword.storage ThemeViolet
hi! link @keyword.return ThemeRed
" Tags & Markup
call <sid>hi("@markup.link.label", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.link.label.symbol", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@tag", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@tag.attribute", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@tag.delimiter", s:gui0F, "", s:cterm0F, "", "", "")
hi! link @constructor ThemeBlue
hi! link @namespace.builtin ThemeViolet
" More Markup
call <sid>hi("@markup", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.environment", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.environment.name", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.raw", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@markup.math", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.strong", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.emphasis", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.strikethrough", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.underline", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.heading", s:gui0D, "", s:cterm0D, "", "", "")
hi! link @none ThemeFg1
hi! link @number ThemeOrange
hi! link @string ThemeGreen
" Comments & Types
call <sid>hi("@comment.note", s:gui03, "", s:cterm03, "", "", "")
call <sid>hi("@comment.error", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@comment.hint", s:gui0B, "", s:cterm0B, "", "", "")
call <sid>hi("@comment.info", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@comment.warning", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@comment.todo", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.link.url", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@type", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@type.definition", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@type.qualifier", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @tag ThemeRed
hi! link @tag.delimiter ThemeViolet
hi! link @tag.attribute ThemeYellow
" affects markdown
hi! link @markup ThemeYellow
hi! link @markup.raw ThemeGreen
hi! link @markup.raw.block.lang ThemeFg2Bold
hi! link @markup.raw.block.marker ThemeRed
"call <sid>hi("@markup.raw.block.lang", s:gui08, "#1e0000", "", s:ctermbg, "", "")
hi! link @markup.list ThemeBlue
hi! link @markup.quote ThemeGrey
hi! link @markup.link ThemeYellow " borders
hi! link @markup.link.text ThemeBlue
hi! link @markup.link.label ThemeYellow
hi! link @markup.link.url ThemeYellow
hi! link @markup.link.dest ThemeFg3
hi! link @markup.link.wiki ThemeYellow
hi! link @markup.link.wiki.text ThemeBlue
hi! link @markup.link.wiki.label ThemeYellow
"hi! link @markup.link.label.symbol ThemeGreen
"hi! link markdownWikiLink ThemeViolet
"
hi! link @markup.environment ThemeYellow
hi! link @markup.environment.name ThemeYellow
hi! link @markup.math ThemeYellow
hi! link @punctuation.delimiter.latex ThemeOrange
hi! link @markup.strong Bold
hi! link @markup.emphasis Bold
hi! link @markup.strikethrough ThemeYellow
hi! link @markup.underline ThemeYellow
hi! link @comment.info ThemeBlue
hi! link @comment.todo ThemeYellow
hi! link @comment.note ThemeBg3
hi! link @comment.hint ThemeGreen
hi! link @comment.warning ThemeOrange
hi! link @type ThemeYellow
hi! link @type.builtin ThemeOrange
hi! link @type.definition ThemeViolet
hi! link @type.qualifier ThemeViolet
" Markdown
" hi! link @spell.markdown ThemeFg3
"call <sid>hi("@markup.heading.marker", s:gui08, "", "", s:ctermbg, "bold", "")
"hi! link @markup.heading ThemeRed
hi! link @markup.heading.marker ThemeOrange
hi! link @markup.heading.title ThemeRed "Italic
" set this for a strong background
"call <sid>hi("@markup.heading.title", s:gui08, "#440503", "", s:ctermbg, "italic", "")
hi! link @markup.heading.title.1 Bold
hi! link @markup.heading.title.3 Italic
"hi! link @markup.heading.4.title Italic
" YAML
hi! link @string.yaml ThemeBlue
hi! link @punctuation.delimiter.yaml ThemeGreen
hi! link @property.yaml ThemeFg2
" Diff
hi! link @diff.minus ThemeRed
hi! link @diff.plus ThemeGreen
call <sid>hi("TreesitterContext", "", s:gui00, "", "", "", "")
"hi TreesitterContextLineNumberBottom gui=underline guisp=Gray
"call <sid>hi("TreesitterContextBottom", "", "", "", "", "underline", s:gui02)
call <sid>hi("TreesitterContextSeparator", s:gui03, "", "", "", "", "")
"call <sid>hi("TreesitterContextLineNumberBottom", "", "", "", "", "underline", s:gui02)
endif
" Standard highlights to be used by plugins
@ -433,6 +534,7 @@ call <sid>hi("WarningFloat", s:gui09, s:gui01, s:cterm09, s:cterm01, "", "")
call <sid>hi("InfoFloat", s:gui0D, s:gui01, s:cterm0D, s:cterm01, "", "")
call <sid>hi("HintFloat", s:gui0C, s:gui01, s:cterm0C, s:cterm01, "", "")
call <sid>hi("OkFloat", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "")
call <sid>hi("NormalFloat", s:gui05, s:gui01, s:cterm05, s:cterm01, "", "")
call <sid>hi("ErrorHighlight", "", "", s:ctermbg, s:cterm08, "underline", s:gui08)
call <sid>hi("WarningHighlight", "", "", s:ctermbg, s:cterm09, "underline", s:gui09)
@ -449,6 +551,62 @@ call <sid>hi("ReferenceText", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "", "")
call <sid>hi("ReferenceRead", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "", "")
call <sid>hi("ReferenceWrite", s:gui01, s:gui08, s:cterm01, s:cterm08, "", "")
" 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
" "
" LANGUAGES
" "
" C
call <sid>hi("cOperator", s:gui0C, "", s:cterm0C, "", "", "")
call <sid>hi("cPreCondit", s:gui0E, "", s:cterm0E, "", "", "")
@ -728,8 +886,8 @@ call <sid>hi("phpMethodsVar", s:gui0C, "", s:cterm0C, "", "", "")
" hi! link pythonBuiltinObj ThemeCyan
" hi! link pythonBuiltinFunc ThemeGreen
" hi! link pythonFunction Function
hi! link pythonDecorator ThemeYellow
hi! link pythonDecoratorName ThemeYellow
" hi! link pythonDecorator ThemeYellow
" hi! link pythonDecoratorName ThemeYellow
" hi! link pythonTripleQuotes ThemeGreenItalic
" hi! link pythonInclude ThemeBlue
" hi! link pythonImport ThemeBlue
@ -777,58 +935,6 @@ call <sid>hi("StartifySelect", s:gui0C, "", s:cterm0C, "", "", "")
call <sid>hi("StartifySlash", s:gui03, "", s:cterm03, "", "", "")
call <sid>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 <sid>hi("javaOperator", s:gui0D, "", s:cterm0D, "", "", "")
@ -864,12 +970,18 @@ hi! link markdownUrlTitleDelimiter ThemeGreen
hi! link markdownLink ThemeGreen
hi! link markdownWikiLink ThemeViolet
hi! link markdownUrl ThemeOrange
"hi! link markdownUrl ThemeOrange
hi! link markdownUrl ThemeRed
hi! link markdownUrlProtocol ThemeGreenItalic
hi! link markdownInlineUrl ThemeOrange
hi! link markdownLinkText ThemeViolet
hi! link markdownIdDeclaration markdownLinkText
hi! link pandocAtxHeader ThemeRed
hi! link pandocAtxStart ThemeOrange
"call s:HL('markdownItalic', s:fg3, s:none, s:italic)
"call s:HL('markdownLinkText', s:gray, s:none, s:underline)
@ -880,3 +992,4 @@ delf <sid>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

View File

@ -7,28 +7,50 @@
" - `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.
"
" There are several kinds of syntax identifiers:
"
" - Vim/editor related (e.g., Normal, Folded): these control colors of central Vim
" elements, like whitespace, bold text, the foldcolumn, etc
" - Generic syntax identifiers (e.g., Boolean, Conditional): these are key groups for
" syntax elements that various language syntax files link to. For instance, Python
" syntax files might have specific patterns that match function keywords like "def," and
" the resulting syntax region can be highlighted by linking it to the core "Function"
" highlight identifier.
" - Treesitter-based identifiers (e.g., @variable, @boolean): highlight groups for
" treesitter-based syntax highlighting, which can replace regex-based matching when
" enabled for richer (and often faster) highlighting. These groups can be linked to the
" core identifiers like any other language.
"
" *Note*: each of these identifiers can add a lang-specific suffix to style those groups
" as they apply to particular languages. For ex, `@boolean.python ThemeRed` would style
" Python booleans red, while the lang-agnostic `@boolean` definition remains.
" - Plugin-oriented identifiers (e.g., SpellBad, ErrorFloat): these are groups mostly core
" to vim/nvim, but often appear only in the context of plugins or certain modules (like
" LSP). For instance, ErrorFloat styles floating windows that might be drawn by nvim's
" built-in LSP hover info.
" 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:gui00 = "#eaf1ea"
let g:base16_gui00 = "#eaf1ea"
let s:gui01 = "#d9e0da"
let g:base16_gui01 = "#d9e0da"
let s:gui02 = "#c9d0ca"
let g:base16_gui02 = "#c9d0ca"
let s:gui03 = "#b9c0ba"
let g:base16_gui03 = "#b9c0ba"
let s:gui04 = "#515752"
let g:base16_gui04 = "#515752"
let s:gui05 = "#444944"
let g:base16_gui05 = "#444944"
let s:gui06 = "#373c37"
let g:base16_gui06 = "#373c37"
let s:gui07 = "#2a2f2b"
let g:base16_gui07 = "#2a2f2b"
let s:gui08 = "#ca2f24"
let g:base16_gui08 = "#ca2f24"
let s:gui09 = "#a45e03"
let g:base16_gui09 = "#a45e03"
let s:gui0A = "#79743d"
let g:base16_gui0A = "#79743d"
let s:gui0B = "#42824e"
@ -39,10 +61,10 @@ 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:gui0F = "#ca2f24"
let g:base16_gui0F = "#ca2f24"
let s:grey = "#6c7470"
let s:grey = "#8b918b"
" Terminal color definitions
let s:cterm00 = "00"
@ -81,22 +103,22 @@ 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_0 = "#eaf1ea"
let g:terminal_color_1 = "#ca2f24"
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_7 = "#444944"
let g:terminal_color_8 = "#b9c0ba"
let g:terminal_color_9 = "#ca2f24"
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_15 = "#2a2f2b"
let g:terminal_color_background = g:terminal_color_0
let g:terminal_color_foreground = g:terminal_color_5
@ -107,22 +129,22 @@ if has("nvim")
elseif has("terminal")
let g:terminal_ansi_colors = [
\ "#d7e0dd",
\ "#ca2e23",
\ "#eaf1ea",
\ "#ca2f24",
\ "#42824e",
\ "#79743d",
\ "#456fbe",
\ "#456fbe",
\ "#42824e",
\ "#353c3a",
\ "#a8b0ad",
\ "#ca2e23",
\ "#444944",
\ "#b9c0ba",
\ "#ca2f24",
\ "#42824e",
\ "#79743d",
\ "#456fbe",
\ "#456fbe",
\ "#42824e",
\ "#1d2321",
\ "#2a2f2b",
\ ]
endif
@ -199,7 +221,25 @@ call <sid>hi("ThemeFg3", s:gui04, "", s:cterm04, "", "", "")
call <sid>hi("ThemeFg2", s:gui05, "", s:cterm05, "", "", "")
call <sid>hi("ThemeFg1", s:gui06, "", s:cterm06, "", "", "")
call <sid>hi("ThemeFg0", s:gui07, "", s:cterm07, "", "", "")
"
call <sid>hi("ThemeBg0bold", s:gui00, "", s:cterm00, "", "bold", "")
call <sid>hi("ThemeBg1bold", s:gui01, "", s:cterm01, "", "bold", "")
call <sid>hi("ThemeBg2bold", s:gui02, "", s:cterm02, "", "bold", "")
call <sid>hi("ThemeBg3bold", s:gui03, "", s:cterm03, "", "bold", "")
call <sid>hi("ThemeFg3bold", s:gui04, "", s:cterm04, "", "bold", "")
call <sid>hi("ThemeFg2bold", s:gui05, "", s:cterm05, "", "bold", "")
call <sid>hi("ThemeFg1bold", s:gui06, "", s:cterm06, "", "bold", "")
call <sid>hi("ThemeFg0bold", s:gui07, "", s:cterm07, "", "bold", "")
call <sid>hi("ThemeBg0Italic", s:gui00, "", s:cterm00, "", "italic", "")
call <sid>hi("ThemeBg1Italic", s:gui01, "", s:cterm01, "", "italic", "")
call <sid>hi("ThemeBg2Italic", s:gui02, "", s:cterm02, "", "italic", "")
call <sid>hi("ThemeBg3Italic", s:gui03, "", s:cterm03, "", "italic", "")
call <sid>hi("ThemeFg3Italic", s:gui04, "", s:cterm04, "", "italic", "")
call <sid>hi("ThemeFg2Italic", s:gui05, "", s:cterm05, "", "italic", "")
call <sid>hi("ThemeFg1Italic", s:gui06, "", s:cterm06, "", "italic", "")
call <sid>hi("ThemeFg0Italic", s:gui07, "", s:cterm07, "", "italic", "")
call <sid>hi("ThemeRed", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("ThemeOrange", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("ThemeYellow", s:gui0A, "", s:cterm0A, "", "", "")
@ -209,6 +249,15 @@ call <sid>hi("ThemeBlue", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("ThemeViolet", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("ThemeMagenta", s:gui0F, "", s:cterm0F, "", "", "")
call <sid>hi("ThemeRedNone", s:gui08, "", s:cterm08, "", "NONE", "")
call <sid>hi("ThemeOrangeNone", s:gui09, "", s:cterm09, "", "NONE", "")
call <sid>hi("ThemeYellowNone", s:gui0A, "", s:cterm0A, "", "NONE", "")
call <sid>hi("ThemeGreenNone", s:gui0B, "", s:cterm0B, "", "NONE", "")
call <sid>hi("ThemeCyanNone", s:gui0C, "", s:cterm0C, "", "NONE", "")
call <sid>hi("ThemeBlueNone", s:gui0D, "", s:cterm0D, "", "NONE", "")
call <sid>hi("ThemeVioletNone", s:gui0E, "", s:cterm0E, "", "NONE", "")
call <sid>hi("ThemeMagentaNone", s:gui0F, "", s:cterm0F, "", "NONE", "")
call <sid>hi("ThemeRedBold", s:gui08, "", s:cterm08, "", "bold", "")
call <sid>hi("ThemeOrangeBold", s:gui09, "", s:cterm09, "", "bold", "")
call <sid>hi("ThemeYellowBold", s:gui0A, "", s:cterm0A, "", "bold", "")
@ -227,22 +276,33 @@ call <sid>hi("ThemeBlueItalic", s:gui0D, "", s:cterm0D, "", "italic", "")
call <sid>hi("ThemeVioletItalic", s:gui0E, "", s:cterm0E, "", "italic", "")
call <sid>hi("ThemeMagentaItalic", s:gui0F, "", s:cterm0F, "", "italic", "")
call <sid>hi("ThemeRedBoldItalic", s:gui08, "", s:cterm08, "", "bold,italic", "")
call <sid>hi("ThemeOrangeBoldItalic", s:gui09, "", s:cterm09, "", "bold,italic", "")
call <sid>hi("ThemeYellowBoldItalic", s:gui0A, "", s:cterm0A, "", "bold,italic", "")
call <sid>hi("ThemeGreenBoldItalic", s:gui0B, "", s:cterm0B, "", "bold,italic", "")
call <sid>hi("ThemeCyanBoldItalic", s:gui0C, "", s:cterm0C, "", "bold,italic", "")
call <sid>hi("ThemeBlueBoldItalic", s:gui0D, "", s:cterm0D, "", "bold,italic", "")
call <sid>hi("ThemeVioletBoldItalic", s:gui0E, "", s:cterm0E, "", "bold,italic", "")
call <sid>hi("ThemeMagentaBoldItalic", s:gui0F, "", s:cterm0F, "", "bold,italic", "")
call <sid>hi("ThemeGrey", s:grey, "", s:cterm03, "", "", "")
call <sid>hi("ThemeGreyItalic", s:grey, "", s:cterm03, "", "italic", "")
" Vim editor colors
call <sid>hi("Normal", s:gui05, s:guibg, s:cterm05, s:ctermbg, "", "")
call <sid>hi("Bold", "", "", "", "", "bold", "")
call <sid>hi("Italic", "", "", "", "", "italic", "")
call <sid>hi("BoldItalic", "", "", "", "", "italic,bold", "")
call <sid>hi("Normal", s:gui05, s:guibg, s:cterm05, s:ctermbg, "", "")
call <sid>hi("Debug", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("Directory", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("Error", s:guibg, s:gui08, s:ctermbg, s:cterm08, "", "")
call <sid>hi("ErrorMsg", s:gui08, s:guibg, s:cterm08, s:ctermbg, "", "")
call <sid>hi("Exception", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("FoldColumn", s:gui03, s:guibg, s:cterm03, s:ctermbg, "", "")
call <sid>hi("Folded", s:gui02, s:guibg, s:cterm02, s:ctermbg, "", "")
call <sid>hi("Folded", s:gui03, s:gui01, s:cterm02, s:ctermbg, "", "")
call <sid>hi("IncSearch", s:gui01, s:gui09, s:cterm01, s:cterm09, "none", "")
call <sid>hi("Italic", "", "", "", "", "italic", "")
call <sid>hi("Macro", s:gui0C, "", s:cterm0C, "", "", "")
call <sid>hi("MatchParen", "", s:gui03, "", s:cterm03, "", "")
call <sid>hi("ModeMsg", s:gui0B, "", s:cterm0B, "", "", "")
@ -258,7 +318,10 @@ call <sid>hi("VisualNOS", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("WarningMsg", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("WildMenu", s:guibg, s:gui06, s:ctermbg, s:cterm05, "", "")
call <sid>hi("Title", s:gui0D, "", s:cterm0D, "", "none", "")
call <sid>hi("Conceal", s:gui0D, s:guibg, s:cterm0D, s:ctermbg, "", "")
"call <sid>hi("Conceal", s:gui0D, s:guibg, s:cterm0D, s:ctermbg, "", "")
hi! link Conceal ThemeBlue
call <sid>hi("Cursor", s:gui05, s:guibg, "", "", "inverse", "")
call <sid>hi("NonText", s:gui03, "", s:cterm03, "", "", "")
call <sid>hi("Whitespace", s:gui03, "", s:cterm03, "", "", "")
@ -270,7 +333,7 @@ call <sid>hi("VertSplit", s:gui01, s:guibg, s:cterm01, s:ctermbg, "none", ""
call <sid>hi("ColorColumn", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("CursorColumn", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("CursorLine", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("CursorLineNr", s:gui04, s:gui01, s:cterm04, s:cterm01, "bold", "")
call <sid>hi("CursorLineNr", s:gui04, s:gui00, s:cterm04, s:cterm01, "", "")
call <sid>hi("QuickFixLine", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("PMenu", s:gui06, s:gui01, s:cterm06, s:cterm01, "none", "")
call <sid>hi("PMenuSel", s:gui06, s:gui02, s:cterm06, s:cterm02, "", "")
@ -281,27 +344,21 @@ call <sid>hi("TabLineFill", s:gui03, s:gui01, s:cterm03, s:cterm01, "none", ""
call <sid>hi("TabLineSel", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "none", "")
" Standard syntax
call <sid>hi("Define", s:gui0E, "", s:cterm0E, "", "none", "")
call <sid>hi("Identifier", s:gui06, "", s:cterm05, "", "none", "")
call <sid>hi("Keyword", s:gui0D, "", s:cterm0E, "", "none", "")
call <sid>hi("Todo", s:gui08, s:guibg, s:cterm08, s:ctermbg, "italic", "")
hi! link Boolean ThemeOrange
hi! link Character ThemeRed
"call <sid>hi("Comment", s:gui03, "", s:cterm03, "", "italic", "")
hi! link Comment ThemeGreyItalic
hi! link Conditional ThemeRed
hi! link Constant ThemeOrange
call <sid>hi("Define", s:gui0E, "", s:cterm0E, "", "none", "")
hi! link Delimiter ThemeFg1
if has("patch-8.0.1038")
call <sid>hi("Deprecated", "", "", "", "", "strikethrough", "")
endif
hi! link Float ThemeOrange
hi! link Function ThemeBlue
call <sid>hi("Identifier", s:gui06, "", s:cterm05, "", "none", "")
hi! link Include ThemeBlue
hi! link Constant ThemeOrange
call <sid>hi("Keyword", s:gui0E, "", s:cterm0E, "", "none", "")
hi! link Label ThemeOrange
hi! link Number ThemeOrange
hi! link Operator ThemeYellow
@ -314,101 +371,145 @@ hi! link StorageClass ThemeOrange
hi! link String ThemeGreen
hi! link Structure ThemeOrange
hi! link Tag ThemeOrange
call <sid>hi("Todo", s:gui08, s:guibg, s:cterm08, s:ctermbg, "italic", "")
call <sid>hi("Type", s:gui0A, "", s:cterm0A, "", "none", "")
hi! link Type ThemeYellow
hi! link Typedef ThemeOrange
" Treesitter
if has("nvim-0.8.0")
call <sid>hi("@field", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@property", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@namespace", s:gui06, "", s:cterm05, "", "italic", "")
call <sid>hi("@variable.builtin", s:gui06, "", s:cterm05, "", "italic", "")
call <sid>hi("@text.reference", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@text.uri", s:gui08, "", s:cterm08, "", "italic", "")
hi! link @field ThemeRed
hi! link @property ThemeRed
hi! link @namespace ThemeFg1Italic
hi! link @variable.builtin ThemeFg1Italic
hi! link @variable ThemeFg2
hi! link @conceal ThemeBlue
" Annotations & Attributes
call <sid>hi("@annotation", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@attribute", s:gui0D, "", s:cterm0D, "", "", "")
hi! link @text.uri ThemeRedItalic
hi! link @text.reference ThemeRed
" Booleans, Characters & Comments
call <sid>hi("@boolean", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@character", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@character.special", s:gui0F, "", s:cterm0F, "", "", "")
call <sid>hi("@comment", s:gui03, "", s:cterm03, "", "", "")
hi! link @annotation ThemeViolet
hi! link @attribute ThemeBlue
" Conditionals, Constants & Debugging
call <sid>hi("@keyword.conditional", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@constant", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@constant.builtin", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@constant.macro", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@keyword.debug", s:gui08, "", s:cterm08, "", "", "")
hi! link @boolean ThemeOrange
hi! link @character ThemeRed
hi! link @character.special ThemeMagenta
hi! link @comment Comment
" Directives & Exceptions
call <sid>hi("@keyword.directive.define", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@keyword.exception", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @constant ThemeBlue
hi! link @constant.builtin ThemeBlue
" Floats & Functions
call <sid>hi("@number.float", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@function", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@function.builtin", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@function.call", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@function.macro", s:gui08, "", s:cterm08, "", "", "")
hi! link @constant.macro ThemeRed
" Imports, Operators & Returns
call <sid>hi("@keyword.import", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@keyword.coroutine", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@keyword.operator", s:gui06, "", s:cterm05, "", "", "")
call <sid>hi("@keyword.return", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @keyword.directive.define ThemeViolet
hi! link @keyword.exception ThemeRed
" Methods & Namespaces
call <sid>hi("@function.method", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@function.method.call", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@namespace.builtin", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @comment.error ThemeRed
hi! link @number.float ThemeRed
hi! link @keyword.function ThemeRed
" Numbers & Directives
call <sid>hi("@none", s:gui06, "", s:cterm05, "", "", "")
call <sid>hi("@number", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@keyword.directive", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @function ThemeBlue
hi! link @function.builtin ThemeBlue
hi! link @function.call ThemeBlue
hi! link @function.macro ThemeRed
hi! link @function.method ThemeBlue
hi! link @function.method.call ThemeBlue
" Repeats, Storage & Strings
call <sid>hi("@keyword.repeat", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@keyword.storage", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@string", s:gui0B, "", s:cterm0B, "", "", "")
hi! link @keyword.debug ThemeRed
hi! link @keyword.conditional ThemeRed
hi! link @keyword.import ThemeViolet
hi! link @keyword.coroutine ThemeViolet
hi! link @keyword.operator ThemeYellow
hi! link @keyword.directive ThemeViolet
hi! link @keyword.repeat ThemeViolet
hi! link @keyword.storage ThemeViolet
hi! link @keyword.return ThemeRed
" Tags & Markup
call <sid>hi("@markup.link.label", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.link.label.symbol", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@tag", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@tag.attribute", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@tag.delimiter", s:gui0F, "", s:cterm0F, "", "", "")
hi! link @constructor ThemeBlue
hi! link @namespace.builtin ThemeViolet
" More Markup
call <sid>hi("@markup", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.environment", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.environment.name", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.raw", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@markup.math", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.strong", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.emphasis", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.strikethrough", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.underline", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.heading", s:gui0D, "", s:cterm0D, "", "", "")
hi! link @none ThemeFg1
hi! link @number ThemeOrange
hi! link @string ThemeGreen
" Comments & Types
call <sid>hi("@comment.note", s:gui03, "", s:cterm03, "", "", "")
call <sid>hi("@comment.error", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@comment.hint", s:gui0B, "", s:cterm0B, "", "", "")
call <sid>hi("@comment.info", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@comment.warning", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@comment.todo", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.link.url", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@type", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@type.definition", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@type.qualifier", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @tag ThemeRed
hi! link @tag.delimiter ThemeViolet
hi! link @tag.attribute ThemeYellow
" affects markdown
hi! link @markup ThemeYellow
hi! link @markup.raw ThemeGreen
hi! link @markup.raw.block.lang ThemeFg2Bold
hi! link @markup.raw.block.marker ThemeRed
"call <sid>hi("@markup.raw.block.lang", s:gui08, "#1e0000", "", s:ctermbg, "", "")
hi! link @markup.list ThemeBlue
hi! link @markup.quote ThemeGrey
hi! link @markup.link ThemeYellow " borders
hi! link @markup.link.text ThemeBlue
hi! link @markup.link.label ThemeYellow
hi! link @markup.link.url ThemeYellow
hi! link @markup.link.dest ThemeFg3
hi! link @markup.link.wiki ThemeYellow
hi! link @markup.link.wiki.text ThemeBlue
hi! link @markup.link.wiki.label ThemeYellow
"hi! link @markup.link.label.symbol ThemeGreen
"hi! link markdownWikiLink ThemeViolet
"
hi! link @markup.environment ThemeYellow
hi! link @markup.environment.name ThemeYellow
hi! link @markup.math ThemeYellow
hi! link @punctuation.delimiter.latex ThemeOrange
hi! link @markup.strong Bold
hi! link @markup.emphasis Bold
hi! link @markup.strikethrough ThemeYellow
hi! link @markup.underline ThemeYellow
hi! link @comment.info ThemeBlue
hi! link @comment.todo ThemeYellow
hi! link @comment.note ThemeBg3
hi! link @comment.hint ThemeGreen
hi! link @comment.warning ThemeOrange
hi! link @type ThemeYellow
hi! link @type.builtin ThemeOrange
hi! link @type.definition ThemeViolet
hi! link @type.qualifier ThemeViolet
" Markdown
" hi! link @spell.markdown ThemeFg3
"call <sid>hi("@markup.heading.marker", s:gui08, "", "", s:ctermbg, "bold", "")
"hi! link @markup.heading ThemeRed
hi! link @markup.heading.marker ThemeOrange
hi! link @markup.heading.title ThemeRed "Italic
" set this for a strong background
"call <sid>hi("@markup.heading.title", s:gui08, "#440503", "", s:ctermbg, "italic", "")
hi! link @markup.heading.title.1 Bold
hi! link @markup.heading.title.3 Italic
"hi! link @markup.heading.4.title Italic
" YAML
hi! link @string.yaml ThemeBlue
hi! link @punctuation.delimiter.yaml ThemeGreen
hi! link @property.yaml ThemeFg2
" Diff
hi! link @diff.minus ThemeRed
hi! link @diff.plus ThemeGreen
call <sid>hi("TreesitterContext", "", s:gui00, "", "", "", "")
"hi TreesitterContextLineNumberBottom gui=underline guisp=Gray
"call <sid>hi("TreesitterContextBottom", "", "", "", "", "underline", s:gui02)
call <sid>hi("TreesitterContextSeparator", s:gui03, "", "", "", "", "")
"call <sid>hi("TreesitterContextLineNumberBottom", "", "", "", "", "underline", s:gui02)
endif
" Standard highlights to be used by plugins
@ -433,6 +534,7 @@ call <sid>hi("WarningFloat", s:gui09, s:gui01, s:cterm09, s:cterm01, "", "")
call <sid>hi("InfoFloat", s:gui0D, s:gui01, s:cterm0D, s:cterm01, "", "")
call <sid>hi("HintFloat", s:gui0C, s:gui01, s:cterm0C, s:cterm01, "", "")
call <sid>hi("OkFloat", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "")
call <sid>hi("NormalFloat", s:gui05, s:gui01, s:cterm05, s:cterm01, "", "")
call <sid>hi("ErrorHighlight", "", "", s:ctermbg, s:cterm08, "underline", s:gui08)
call <sid>hi("WarningHighlight", "", "", s:ctermbg, s:cterm09, "underline", s:gui09)
@ -449,6 +551,62 @@ call <sid>hi("ReferenceText", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "", "")
call <sid>hi("ReferenceRead", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "", "")
call <sid>hi("ReferenceWrite", s:gui01, s:gui08, s:cterm01, s:cterm08, "", "")
" 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
" "
" LANGUAGES
" "
" C
call <sid>hi("cOperator", s:gui0C, "", s:cterm0C, "", "", "")
call <sid>hi("cPreCondit", s:gui0E, "", s:cterm0E, "", "", "")
@ -728,8 +886,8 @@ call <sid>hi("phpMethodsVar", s:gui0C, "", s:cterm0C, "", "", "")
" hi! link pythonBuiltinObj ThemeCyan
" hi! link pythonBuiltinFunc ThemeGreen
" hi! link pythonFunction Function
hi! link pythonDecorator ThemeYellow
hi! link pythonDecoratorName ThemeYellow
" hi! link pythonDecorator ThemeYellow
" hi! link pythonDecoratorName ThemeYellow
" hi! link pythonTripleQuotes ThemeGreenItalic
" hi! link pythonInclude ThemeBlue
" hi! link pythonImport ThemeBlue
@ -777,58 +935,6 @@ call <sid>hi("StartifySelect", s:gui0C, "", s:cterm0C, "", "", "")
call <sid>hi("StartifySlash", s:gui03, "", s:cterm03, "", "", "")
call <sid>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 <sid>hi("javaOperator", s:gui0D, "", s:cterm0D, "", "", "")
@ -864,12 +970,18 @@ hi! link markdownUrlTitleDelimiter ThemeGreen
hi! link markdownLink ThemeGreen
hi! link markdownWikiLink ThemeViolet
hi! link markdownUrl ThemeOrange
"hi! link markdownUrl ThemeOrange
hi! link markdownUrl ThemeRed
hi! link markdownUrlProtocol ThemeGreenItalic
hi! link markdownInlineUrl ThemeOrange
hi! link markdownLinkText ThemeViolet
hi! link markdownIdDeclaration markdownLinkText
hi! link pandocAtxHeader ThemeRed
hi! link pandocAtxStart ThemeOrange
"call s:HL('markdownItalic', s:fg3, s:none, s:italic)
"call s:HL('markdownLinkText', s:gray, s:none, s:underline)
@ -880,3 +992,4 @@ delf <sid>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

View File

@ -7,6 +7,28 @@
" - `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.
"
" There are several kinds of syntax identifiers:
"
" - Vim/editor related (e.g., Normal, Folded): these control colors of central Vim
" elements, like whitespace, bold text, the foldcolumn, etc
" - Generic syntax identifiers (e.g., Boolean, Conditional): these are key groups for
" syntax elements that various language syntax files link to. For instance, Python
" syntax files might have specific patterns that match function keywords like "def," and
" the resulting syntax region can be highlighted by linking it to the core "Function"
" highlight identifier.
" - Treesitter-based identifiers (e.g., @variable, @boolean): highlight groups for
" treesitter-based syntax highlighting, which can replace regex-based matching when
" enabled for richer (and often faster) highlighting. These groups can be linked to the
" core identifiers like any other language.
"
" *Note*: each of these identifiers can add a lang-specific suffix to style those groups
" as they apply to particular languages. For ex, `@boolean.python ThemeRed` would style
" Python booleans red, while the lang-agnostic `@boolean` definition remains.
" - Plugin-oriented identifiers (e.g., SpellBad, ErrorFloat): these are groups mostly core
" to vim/nvim, but often appear only in the context of plugins or certain modules (like
" LSP). For instance, ErrorFloat styles floating windows that might be drawn by nvim's
" built-in LSP hover info.
" GUI color definitions
let s:gui00 = "#161616"
@ -25,10 +47,10 @@ 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:gui08 = "#dc4234"
let g:base16_gui08 = "#dc4234"
let s:gui09 = "#b76b0c"
let g:base16_gui09 = "#b76b0c"
let s:gui0A = "#888346"
let g:base16_gui0A = "#888346"
let s:gui0B = "#4f925a"
@ -39,10 +61,10 @@ 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:gui0F = "#dc4234"
let g:base16_gui0F = "#dc4234"
let s:grey = "#717171"
let s:grey = "#636363"
" Terminal color definitions
let s:cterm00 = "00"
@ -82,7 +104,7 @@ 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_1 = "#dc4234"
let g:terminal_color_2 = "#4f925a"
let g:terminal_color_3 = "#888346"
let g:terminal_color_4 = "#557ecc"
@ -90,7 +112,7 @@ if has("nvim")
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_9 = "#dc4234"
let g:terminal_color_10 = "#4f925a"
let g:terminal_color_11 = "#888346"
let g:terminal_color_12 = "#557ecc"
@ -108,7 +130,7 @@ if has("nvim")
elseif has("terminal")
let g:terminal_ansi_colors = [
\ "#161616",
\ "#dc4134",
\ "#dc4234",
\ "#4f925a",
\ "#888346",
\ "#557ecc",
@ -116,7 +138,7 @@ elseif has("terminal")
\ "#4f925a",
\ "#aeaeae",
\ "#3a3a3a",
\ "#dc4134",
\ "#dc4234",
\ "#4f925a",
\ "#888346",
\ "#557ecc",
@ -199,7 +221,25 @@ call <sid>hi("ThemeFg3", s:gui04, "", s:cterm04, "", "", "")
call <sid>hi("ThemeFg2", s:gui05, "", s:cterm05, "", "", "")
call <sid>hi("ThemeFg1", s:gui06, "", s:cterm06, "", "", "")
call <sid>hi("ThemeFg0", s:gui07, "", s:cterm07, "", "", "")
"
call <sid>hi("ThemeBg0bold", s:gui00, "", s:cterm00, "", "bold", "")
call <sid>hi("ThemeBg1bold", s:gui01, "", s:cterm01, "", "bold", "")
call <sid>hi("ThemeBg2bold", s:gui02, "", s:cterm02, "", "bold", "")
call <sid>hi("ThemeBg3bold", s:gui03, "", s:cterm03, "", "bold", "")
call <sid>hi("ThemeFg3bold", s:gui04, "", s:cterm04, "", "bold", "")
call <sid>hi("ThemeFg2bold", s:gui05, "", s:cterm05, "", "bold", "")
call <sid>hi("ThemeFg1bold", s:gui06, "", s:cterm06, "", "bold", "")
call <sid>hi("ThemeFg0bold", s:gui07, "", s:cterm07, "", "bold", "")
call <sid>hi("ThemeBg0Italic", s:gui00, "", s:cterm00, "", "italic", "")
call <sid>hi("ThemeBg1Italic", s:gui01, "", s:cterm01, "", "italic", "")
call <sid>hi("ThemeBg2Italic", s:gui02, "", s:cterm02, "", "italic", "")
call <sid>hi("ThemeBg3Italic", s:gui03, "", s:cterm03, "", "italic", "")
call <sid>hi("ThemeFg3Italic", s:gui04, "", s:cterm04, "", "italic", "")
call <sid>hi("ThemeFg2Italic", s:gui05, "", s:cterm05, "", "italic", "")
call <sid>hi("ThemeFg1Italic", s:gui06, "", s:cterm06, "", "italic", "")
call <sid>hi("ThemeFg0Italic", s:gui07, "", s:cterm07, "", "italic", "")
call <sid>hi("ThemeRed", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("ThemeOrange", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("ThemeYellow", s:gui0A, "", s:cterm0A, "", "", "")
@ -209,6 +249,15 @@ call <sid>hi("ThemeBlue", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("ThemeViolet", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("ThemeMagenta", s:gui0F, "", s:cterm0F, "", "", "")
call <sid>hi("ThemeRedNone", s:gui08, "", s:cterm08, "", "NONE", "")
call <sid>hi("ThemeOrangeNone", s:gui09, "", s:cterm09, "", "NONE", "")
call <sid>hi("ThemeYellowNone", s:gui0A, "", s:cterm0A, "", "NONE", "")
call <sid>hi("ThemeGreenNone", s:gui0B, "", s:cterm0B, "", "NONE", "")
call <sid>hi("ThemeCyanNone", s:gui0C, "", s:cterm0C, "", "NONE", "")
call <sid>hi("ThemeBlueNone", s:gui0D, "", s:cterm0D, "", "NONE", "")
call <sid>hi("ThemeVioletNone", s:gui0E, "", s:cterm0E, "", "NONE", "")
call <sid>hi("ThemeMagentaNone", s:gui0F, "", s:cterm0F, "", "NONE", "")
call <sid>hi("ThemeRedBold", s:gui08, "", s:cterm08, "", "bold", "")
call <sid>hi("ThemeOrangeBold", s:gui09, "", s:cterm09, "", "bold", "")
call <sid>hi("ThemeYellowBold", s:gui0A, "", s:cterm0A, "", "bold", "")
@ -227,22 +276,33 @@ call <sid>hi("ThemeBlueItalic", s:gui0D, "", s:cterm0D, "", "italic", "")
call <sid>hi("ThemeVioletItalic", s:gui0E, "", s:cterm0E, "", "italic", "")
call <sid>hi("ThemeMagentaItalic", s:gui0F, "", s:cterm0F, "", "italic", "")
call <sid>hi("ThemeRedBoldItalic", s:gui08, "", s:cterm08, "", "bold,italic", "")
call <sid>hi("ThemeOrangeBoldItalic", s:gui09, "", s:cterm09, "", "bold,italic", "")
call <sid>hi("ThemeYellowBoldItalic", s:gui0A, "", s:cterm0A, "", "bold,italic", "")
call <sid>hi("ThemeGreenBoldItalic", s:gui0B, "", s:cterm0B, "", "bold,italic", "")
call <sid>hi("ThemeCyanBoldItalic", s:gui0C, "", s:cterm0C, "", "bold,italic", "")
call <sid>hi("ThemeBlueBoldItalic", s:gui0D, "", s:cterm0D, "", "bold,italic", "")
call <sid>hi("ThemeVioletBoldItalic", s:gui0E, "", s:cterm0E, "", "bold,italic", "")
call <sid>hi("ThemeMagentaBoldItalic", s:gui0F, "", s:cterm0F, "", "bold,italic", "")
call <sid>hi("ThemeGrey", s:grey, "", s:cterm03, "", "", "")
call <sid>hi("ThemeGreyItalic", s:grey, "", s:cterm03, "", "italic", "")
" Vim editor colors
call <sid>hi("Normal", s:gui05, s:guibg, s:cterm05, s:ctermbg, "", "")
call <sid>hi("Bold", "", "", "", "", "bold", "")
call <sid>hi("Italic", "", "", "", "", "italic", "")
call <sid>hi("BoldItalic", "", "", "", "", "italic,bold", "")
call <sid>hi("Normal", s:gui05, s:guibg, s:cterm05, s:ctermbg, "", "")
call <sid>hi("Debug", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("Directory", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("Error", s:guibg, s:gui08, s:ctermbg, s:cterm08, "", "")
call <sid>hi("ErrorMsg", s:gui08, s:guibg, s:cterm08, s:ctermbg, "", "")
call <sid>hi("Exception", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("FoldColumn", s:gui03, s:guibg, s:cterm03, s:ctermbg, "", "")
call <sid>hi("Folded", s:gui02, s:guibg, s:cterm02, s:ctermbg, "", "")
call <sid>hi("Folded", s:gui03, s:gui01, s:cterm02, s:ctermbg, "", "")
call <sid>hi("IncSearch", s:gui01, s:gui09, s:cterm01, s:cterm09, "none", "")
call <sid>hi("Italic", "", "", "", "", "italic", "")
call <sid>hi("Macro", s:gui0C, "", s:cterm0C, "", "", "")
call <sid>hi("MatchParen", "", s:gui03, "", s:cterm03, "", "")
call <sid>hi("ModeMsg", s:gui0B, "", s:cterm0B, "", "", "")
@ -258,7 +318,10 @@ call <sid>hi("VisualNOS", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("WarningMsg", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("WildMenu", s:guibg, s:gui06, s:ctermbg, s:cterm05, "", "")
call <sid>hi("Title", s:gui0D, "", s:cterm0D, "", "none", "")
call <sid>hi("Conceal", s:gui0D, s:guibg, s:cterm0D, s:ctermbg, "", "")
"call <sid>hi("Conceal", s:gui0D, s:guibg, s:cterm0D, s:ctermbg, "", "")
hi! link Conceal ThemeBlue
call <sid>hi("Cursor", s:gui05, s:guibg, "", "", "inverse", "")
call <sid>hi("NonText", s:gui03, "", s:cterm03, "", "", "")
call <sid>hi("Whitespace", s:gui03, "", s:cterm03, "", "", "")
@ -270,7 +333,7 @@ call <sid>hi("VertSplit", s:gui01, s:guibg, s:cterm01, s:ctermbg, "none", ""
call <sid>hi("ColorColumn", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("CursorColumn", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("CursorLine", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("CursorLineNr", s:gui04, s:gui01, s:cterm04, s:cterm01, "bold", "")
call <sid>hi("CursorLineNr", s:gui04, s:gui00, s:cterm04, s:cterm01, "", "")
call <sid>hi("QuickFixLine", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("PMenu", s:gui06, s:gui01, s:cterm06, s:cterm01, "none", "")
call <sid>hi("PMenuSel", s:gui06, s:gui02, s:cterm06, s:cterm02, "", "")
@ -281,27 +344,21 @@ call <sid>hi("TabLineFill", s:gui03, s:gui01, s:cterm03, s:cterm01, "none", ""
call <sid>hi("TabLineSel", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "none", "")
" Standard syntax
call <sid>hi("Define", s:gui0E, "", s:cterm0E, "", "none", "")
call <sid>hi("Identifier", s:gui06, "", s:cterm05, "", "none", "")
call <sid>hi("Keyword", s:gui0D, "", s:cterm0E, "", "none", "")
call <sid>hi("Todo", s:gui08, s:guibg, s:cterm08, s:ctermbg, "italic", "")
hi! link Boolean ThemeOrange
hi! link Character ThemeRed
"call <sid>hi("Comment", s:gui03, "", s:cterm03, "", "italic", "")
hi! link Comment ThemeGreyItalic
hi! link Conditional ThemeRed
hi! link Constant ThemeOrange
call <sid>hi("Define", s:gui0E, "", s:cterm0E, "", "none", "")
hi! link Delimiter ThemeFg1
if has("patch-8.0.1038")
call <sid>hi("Deprecated", "", "", "", "", "strikethrough", "")
endif
hi! link Float ThemeOrange
hi! link Function ThemeBlue
call <sid>hi("Identifier", s:gui06, "", s:cterm05, "", "none", "")
hi! link Include ThemeBlue
hi! link Constant ThemeOrange
call <sid>hi("Keyword", s:gui0E, "", s:cterm0E, "", "none", "")
hi! link Label ThemeOrange
hi! link Number ThemeOrange
hi! link Operator ThemeYellow
@ -314,101 +371,145 @@ hi! link StorageClass ThemeOrange
hi! link String ThemeGreen
hi! link Structure ThemeOrange
hi! link Tag ThemeOrange
call <sid>hi("Todo", s:gui08, s:guibg, s:cterm08, s:ctermbg, "italic", "")
call <sid>hi("Type", s:gui0A, "", s:cterm0A, "", "none", "")
hi! link Type ThemeYellow
hi! link Typedef ThemeOrange
" Treesitter
if has("nvim-0.8.0")
call <sid>hi("@field", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@property", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@namespace", s:gui06, "", s:cterm05, "", "italic", "")
call <sid>hi("@variable.builtin", s:gui06, "", s:cterm05, "", "italic", "")
call <sid>hi("@text.reference", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@text.uri", s:gui08, "", s:cterm08, "", "italic", "")
hi! link @field ThemeRed
hi! link @property ThemeRed
hi! link @namespace ThemeFg1Italic
hi! link @variable.builtin ThemeFg1Italic
hi! link @variable ThemeFg2
hi! link @conceal ThemeBlue
" Annotations & Attributes
call <sid>hi("@annotation", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@attribute", s:gui0D, "", s:cterm0D, "", "", "")
hi! link @text.uri ThemeRedItalic
hi! link @text.reference ThemeRed
" Booleans, Characters & Comments
call <sid>hi("@boolean", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@character", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@character.special", s:gui0F, "", s:cterm0F, "", "", "")
call <sid>hi("@comment", s:gui03, "", s:cterm03, "", "", "")
hi! link @annotation ThemeViolet
hi! link @attribute ThemeBlue
" Conditionals, Constants & Debugging
call <sid>hi("@keyword.conditional", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@constant", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@constant.builtin", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@constant.macro", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@keyword.debug", s:gui08, "", s:cterm08, "", "", "")
hi! link @boolean ThemeOrange
hi! link @character ThemeRed
hi! link @character.special ThemeMagenta
hi! link @comment Comment
" Directives & Exceptions
call <sid>hi("@keyword.directive.define", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@keyword.exception", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @constant ThemeBlue
hi! link @constant.builtin ThemeBlue
" Floats & Functions
call <sid>hi("@number.float", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@function", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@function.builtin", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@function.call", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@function.macro", s:gui08, "", s:cterm08, "", "", "")
hi! link @constant.macro ThemeRed
" Imports, Operators & Returns
call <sid>hi("@keyword.import", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@keyword.coroutine", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@keyword.operator", s:gui06, "", s:cterm05, "", "", "")
call <sid>hi("@keyword.return", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @keyword.directive.define ThemeViolet
hi! link @keyword.exception ThemeRed
" Methods & Namespaces
call <sid>hi("@function.method", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@function.method.call", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@namespace.builtin", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @comment.error ThemeRed
hi! link @number.float ThemeRed
hi! link @keyword.function ThemeRed
" Numbers & Directives
call <sid>hi("@none", s:gui06, "", s:cterm05, "", "", "")
call <sid>hi("@number", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@keyword.directive", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @function ThemeBlue
hi! link @function.builtin ThemeBlue
hi! link @function.call ThemeBlue
hi! link @function.macro ThemeRed
hi! link @function.method ThemeBlue
hi! link @function.method.call ThemeBlue
" Repeats, Storage & Strings
call <sid>hi("@keyword.repeat", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@keyword.storage", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@string", s:gui0B, "", s:cterm0B, "", "", "")
hi! link @keyword.debug ThemeRed
hi! link @keyword.conditional ThemeRed
hi! link @keyword.import ThemeViolet
hi! link @keyword.coroutine ThemeViolet
hi! link @keyword.operator ThemeYellow
hi! link @keyword.directive ThemeViolet
hi! link @keyword.repeat ThemeViolet
hi! link @keyword.storage ThemeViolet
hi! link @keyword.return ThemeRed
" Tags & Markup
call <sid>hi("@markup.link.label", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.link.label.symbol", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@tag", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@tag.attribute", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@tag.delimiter", s:gui0F, "", s:cterm0F, "", "", "")
hi! link @constructor ThemeBlue
hi! link @namespace.builtin ThemeViolet
" More Markup
call <sid>hi("@markup", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.environment", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.environment.name", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.raw", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@markup.math", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.strong", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.emphasis", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.strikethrough", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.underline", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.heading", s:gui0D, "", s:cterm0D, "", "", "")
hi! link @none ThemeFg1
hi! link @number ThemeOrange
hi! link @string ThemeGreen
" Comments & Types
call <sid>hi("@comment.note", s:gui03, "", s:cterm03, "", "", "")
call <sid>hi("@comment.error", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@comment.hint", s:gui0B, "", s:cterm0B, "", "", "")
call <sid>hi("@comment.info", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@comment.warning", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@comment.todo", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.link.url", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@type", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@type.definition", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@type.qualifier", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @tag ThemeRed
hi! link @tag.delimiter ThemeViolet
hi! link @tag.attribute ThemeYellow
" affects markdown
hi! link @markup ThemeYellow
hi! link @markup.raw ThemeGreen
hi! link @markup.raw.block.lang ThemeFg2Bold
hi! link @markup.raw.block.marker ThemeRed
"call <sid>hi("@markup.raw.block.lang", s:gui08, "#1e0000", "", s:ctermbg, "", "")
hi! link @markup.list ThemeBlue
hi! link @markup.quote ThemeGrey
hi! link @markup.link ThemeYellow " borders
hi! link @markup.link.text ThemeBlue
hi! link @markup.link.label ThemeYellow
hi! link @markup.link.url ThemeYellow
hi! link @markup.link.dest ThemeFg3
hi! link @markup.link.wiki ThemeYellow
hi! link @markup.link.wiki.text ThemeBlue
hi! link @markup.link.wiki.label ThemeYellow
"hi! link @markup.link.label.symbol ThemeGreen
"hi! link markdownWikiLink ThemeViolet
"
hi! link @markup.environment ThemeYellow
hi! link @markup.environment.name ThemeYellow
hi! link @markup.math ThemeYellow
hi! link @punctuation.delimiter.latex ThemeOrange
hi! link @markup.strong Bold
hi! link @markup.emphasis Bold
hi! link @markup.strikethrough ThemeYellow
hi! link @markup.underline ThemeYellow
hi! link @comment.info ThemeBlue
hi! link @comment.todo ThemeYellow
hi! link @comment.note ThemeBg3
hi! link @comment.hint ThemeGreen
hi! link @comment.warning ThemeOrange
hi! link @type ThemeYellow
hi! link @type.builtin ThemeOrange
hi! link @type.definition ThemeViolet
hi! link @type.qualifier ThemeViolet
" Markdown
" hi! link @spell.markdown ThemeFg3
"call <sid>hi("@markup.heading.marker", s:gui08, "", "", s:ctermbg, "bold", "")
"hi! link @markup.heading ThemeRed
hi! link @markup.heading.marker ThemeOrange
hi! link @markup.heading.title ThemeRed "Italic
" set this for a strong background
"call <sid>hi("@markup.heading.title", s:gui08, "#440503", "", s:ctermbg, "italic", "")
hi! link @markup.heading.title.1 Bold
hi! link @markup.heading.title.3 Italic
"hi! link @markup.heading.4.title Italic
" YAML
hi! link @string.yaml ThemeBlue
hi! link @punctuation.delimiter.yaml ThemeGreen
hi! link @property.yaml ThemeFg2
" Diff
hi! link @diff.minus ThemeRed
hi! link @diff.plus ThemeGreen
call <sid>hi("TreesitterContext", "", s:gui00, "", "", "", "")
"hi TreesitterContextLineNumberBottom gui=underline guisp=Gray
"call <sid>hi("TreesitterContextBottom", "", "", "", "", "underline", s:gui02)
call <sid>hi("TreesitterContextSeparator", s:gui03, "", "", "", "", "")
"call <sid>hi("TreesitterContextLineNumberBottom", "", "", "", "", "underline", s:gui02)
endif
" Standard highlights to be used by plugins
@ -433,6 +534,7 @@ call <sid>hi("WarningFloat", s:gui09, s:gui01, s:cterm09, s:cterm01, "", "")
call <sid>hi("InfoFloat", s:gui0D, s:gui01, s:cterm0D, s:cterm01, "", "")
call <sid>hi("HintFloat", s:gui0C, s:gui01, s:cterm0C, s:cterm01, "", "")
call <sid>hi("OkFloat", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "")
call <sid>hi("NormalFloat", s:gui05, s:gui01, s:cterm05, s:cterm01, "", "")
call <sid>hi("ErrorHighlight", "", "", s:ctermbg, s:cterm08, "underline", s:gui08)
call <sid>hi("WarningHighlight", "", "", s:ctermbg, s:cterm09, "underline", s:gui09)
@ -449,6 +551,62 @@ call <sid>hi("ReferenceText", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "", "")
call <sid>hi("ReferenceRead", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "", "")
call <sid>hi("ReferenceWrite", s:gui01, s:gui08, s:cterm01, s:cterm08, "", "")
" 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
" "
" LANGUAGES
" "
" C
call <sid>hi("cOperator", s:gui0C, "", s:cterm0C, "", "", "")
call <sid>hi("cPreCondit", s:gui0E, "", s:cterm0E, "", "", "")
@ -728,8 +886,8 @@ call <sid>hi("phpMethodsVar", s:gui0C, "", s:cterm0C, "", "", "")
" hi! link pythonBuiltinObj ThemeCyan
" hi! link pythonBuiltinFunc ThemeGreen
" hi! link pythonFunction Function
hi! link pythonDecorator ThemeYellow
hi! link pythonDecoratorName ThemeYellow
" hi! link pythonDecorator ThemeYellow
" hi! link pythonDecoratorName ThemeYellow
" hi! link pythonTripleQuotes ThemeGreenItalic
" hi! link pythonInclude ThemeBlue
" hi! link pythonImport ThemeBlue
@ -777,58 +935,6 @@ call <sid>hi("StartifySelect", s:gui0C, "", s:cterm0C, "", "", "")
call <sid>hi("StartifySlash", s:gui03, "", s:cterm03, "", "", "")
call <sid>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 <sid>hi("javaOperator", s:gui0D, "", s:cterm0D, "", "", "")
@ -864,12 +970,18 @@ hi! link markdownUrlTitleDelimiter ThemeGreen
hi! link markdownLink ThemeGreen
hi! link markdownWikiLink ThemeViolet
hi! link markdownUrl ThemeOrange
"hi! link markdownUrl ThemeOrange
hi! link markdownUrl ThemeRed
hi! link markdownUrlProtocol ThemeGreenItalic
hi! link markdownInlineUrl ThemeOrange
hi! link markdownLinkText ThemeViolet
hi! link markdownIdDeclaration markdownLinkText
hi! link pandocAtxHeader ThemeRed
hi! link pandocAtxStart ThemeOrange
"call s:HL('markdownItalic', s:fg3, s:none, s:italic)
"call s:HL('markdownLinkText', s:gray, s:none, s:underline)
@ -880,3 +992,4 @@ delf <sid>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

View File

@ -7,28 +7,50 @@
" - `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.
"
" There are several kinds of syntax identifiers:
"
" - Vim/editor related (e.g., Normal, Folded): these control colors of central Vim
" elements, like whitespace, bold text, the foldcolumn, etc
" - Generic syntax identifiers (e.g., Boolean, Conditional): these are key groups for
" syntax elements that various language syntax files link to. For instance, Python
" syntax files might have specific patterns that match function keywords like "def," and
" the resulting syntax region can be highlighted by linking it to the core "Function"
" highlight identifier.
" - Treesitter-based identifiers (e.g., @variable, @boolean): highlight groups for
" treesitter-based syntax highlighting, which can replace regex-based matching when
" enabled for richer (and often faster) highlighting. These groups can be linked to the
" core identifiers like any other language.
"
" *Note*: each of these identifiers can add a lang-specific suffix to style those groups
" as they apply to particular languages. For ex, `@boolean.python ThemeRed` would style
" Python booleans red, while the lang-agnostic `@boolean` definition remains.
" - Plugin-oriented identifiers (e.g., SpellBad, ErrorFloat): these are groups mostly core
" to vim/nvim, but often appear only in the context of plugins or certain modules (like
" LSP). For instance, ErrorFloat styles floating windows that might be drawn by nvim's
" built-in LSP hover info.
" 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:gui00 = "#eeeeee"
let g:base16_gui00 = "#eeeeee"
let s:gui01 = "#dedede"
let g:base16_gui01 = "#dedede"
let s:gui02 = "#cecece"
let g:base16_gui02 = "#cecece"
let s:gui03 = "#bebebe"
let g:base16_gui03 = "#bebebe"
let s:gui04 = "#555555"
let g:base16_gui04 = "#555555"
let s:gui05 = "#484848"
let g:base16_gui05 = "#484848"
let s:gui06 = "#3a3a3a"
let g:base16_gui06 = "#3a3a3a"
let s:gui07 = "#2e2e2e"
let g:base16_gui07 = "#2e2e2e"
let s:gui08 = "#ca2f24"
let g:base16_gui08 = "#ca2f24"
let s:gui09 = "#a45e03"
let g:base16_gui09 = "#a45e03"
let s:gui0A = "#79743d"
let g:base16_gui0A = "#79743d"
let s:gui0B = "#42824e"
@ -39,10 +61,10 @@ 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:gui0F = "#ca2f24"
let g:base16_gui0F = "#ca2f24"
let s:grey = "#717171"
let s:grey = "#8f8f8f"
" Terminal color definitions
let s:cterm00 = "00"
@ -81,22 +103,22 @@ 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_0 = "#eeeeee"
let g:terminal_color_1 = "#ca2f24"
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_7 = "#484848"
let g:terminal_color_8 = "#bebebe"
let g:terminal_color_9 = "#ca2f24"
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_15 = "#2e2e2e"
let g:terminal_color_background = g:terminal_color_0
let g:terminal_color_foreground = g:terminal_color_5
@ -107,22 +129,22 @@ if has("nvim")
elseif has("terminal")
let g:terminal_ansi_colors = [
\ "#dedede",
\ "#ca2e23",
\ "#eeeeee",
\ "#ca2f24",
\ "#42824e",
\ "#79743d",
\ "#456fbe",
\ "#456fbe",
\ "#42824e",
\ "#3a3a3a",
\ "#aeaeae",
\ "#ca2e23",
\ "#484848",
\ "#bebebe",
\ "#ca2f24",
\ "#42824e",
\ "#79743d",
\ "#456fbe",
\ "#456fbe",
\ "#42824e",
\ "#222222",
\ "#2e2e2e",
\ ]
endif
@ -199,7 +221,25 @@ call <sid>hi("ThemeFg3", s:gui04, "", s:cterm04, "", "", "")
call <sid>hi("ThemeFg2", s:gui05, "", s:cterm05, "", "", "")
call <sid>hi("ThemeFg1", s:gui06, "", s:cterm06, "", "", "")
call <sid>hi("ThemeFg0", s:gui07, "", s:cterm07, "", "", "")
"
call <sid>hi("ThemeBg0bold", s:gui00, "", s:cterm00, "", "bold", "")
call <sid>hi("ThemeBg1bold", s:gui01, "", s:cterm01, "", "bold", "")
call <sid>hi("ThemeBg2bold", s:gui02, "", s:cterm02, "", "bold", "")
call <sid>hi("ThemeBg3bold", s:gui03, "", s:cterm03, "", "bold", "")
call <sid>hi("ThemeFg3bold", s:gui04, "", s:cterm04, "", "bold", "")
call <sid>hi("ThemeFg2bold", s:gui05, "", s:cterm05, "", "bold", "")
call <sid>hi("ThemeFg1bold", s:gui06, "", s:cterm06, "", "bold", "")
call <sid>hi("ThemeFg0bold", s:gui07, "", s:cterm07, "", "bold", "")
call <sid>hi("ThemeBg0Italic", s:gui00, "", s:cterm00, "", "italic", "")
call <sid>hi("ThemeBg1Italic", s:gui01, "", s:cterm01, "", "italic", "")
call <sid>hi("ThemeBg2Italic", s:gui02, "", s:cterm02, "", "italic", "")
call <sid>hi("ThemeBg3Italic", s:gui03, "", s:cterm03, "", "italic", "")
call <sid>hi("ThemeFg3Italic", s:gui04, "", s:cterm04, "", "italic", "")
call <sid>hi("ThemeFg2Italic", s:gui05, "", s:cterm05, "", "italic", "")
call <sid>hi("ThemeFg1Italic", s:gui06, "", s:cterm06, "", "italic", "")
call <sid>hi("ThemeFg0Italic", s:gui07, "", s:cterm07, "", "italic", "")
call <sid>hi("ThemeRed", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("ThemeOrange", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("ThemeYellow", s:gui0A, "", s:cterm0A, "", "", "")
@ -209,6 +249,15 @@ call <sid>hi("ThemeBlue", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("ThemeViolet", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("ThemeMagenta", s:gui0F, "", s:cterm0F, "", "", "")
call <sid>hi("ThemeRedNone", s:gui08, "", s:cterm08, "", "NONE", "")
call <sid>hi("ThemeOrangeNone", s:gui09, "", s:cterm09, "", "NONE", "")
call <sid>hi("ThemeYellowNone", s:gui0A, "", s:cterm0A, "", "NONE", "")
call <sid>hi("ThemeGreenNone", s:gui0B, "", s:cterm0B, "", "NONE", "")
call <sid>hi("ThemeCyanNone", s:gui0C, "", s:cterm0C, "", "NONE", "")
call <sid>hi("ThemeBlueNone", s:gui0D, "", s:cterm0D, "", "NONE", "")
call <sid>hi("ThemeVioletNone", s:gui0E, "", s:cterm0E, "", "NONE", "")
call <sid>hi("ThemeMagentaNone", s:gui0F, "", s:cterm0F, "", "NONE", "")
call <sid>hi("ThemeRedBold", s:gui08, "", s:cterm08, "", "bold", "")
call <sid>hi("ThemeOrangeBold", s:gui09, "", s:cterm09, "", "bold", "")
call <sid>hi("ThemeYellowBold", s:gui0A, "", s:cterm0A, "", "bold", "")
@ -227,22 +276,33 @@ call <sid>hi("ThemeBlueItalic", s:gui0D, "", s:cterm0D, "", "italic", "")
call <sid>hi("ThemeVioletItalic", s:gui0E, "", s:cterm0E, "", "italic", "")
call <sid>hi("ThemeMagentaItalic", s:gui0F, "", s:cterm0F, "", "italic", "")
call <sid>hi("ThemeRedBoldItalic", s:gui08, "", s:cterm08, "", "bold,italic", "")
call <sid>hi("ThemeOrangeBoldItalic", s:gui09, "", s:cterm09, "", "bold,italic", "")
call <sid>hi("ThemeYellowBoldItalic", s:gui0A, "", s:cterm0A, "", "bold,italic", "")
call <sid>hi("ThemeGreenBoldItalic", s:gui0B, "", s:cterm0B, "", "bold,italic", "")
call <sid>hi("ThemeCyanBoldItalic", s:gui0C, "", s:cterm0C, "", "bold,italic", "")
call <sid>hi("ThemeBlueBoldItalic", s:gui0D, "", s:cterm0D, "", "bold,italic", "")
call <sid>hi("ThemeVioletBoldItalic", s:gui0E, "", s:cterm0E, "", "bold,italic", "")
call <sid>hi("ThemeMagentaBoldItalic", s:gui0F, "", s:cterm0F, "", "bold,italic", "")
call <sid>hi("ThemeGrey", s:grey, "", s:cterm03, "", "", "")
call <sid>hi("ThemeGreyItalic", s:grey, "", s:cterm03, "", "italic", "")
" Vim editor colors
call <sid>hi("Normal", s:gui05, s:guibg, s:cterm05, s:ctermbg, "", "")
call <sid>hi("Bold", "", "", "", "", "bold", "")
call <sid>hi("Italic", "", "", "", "", "italic", "")
call <sid>hi("BoldItalic", "", "", "", "", "italic,bold", "")
call <sid>hi("Normal", s:gui05, s:guibg, s:cterm05, s:ctermbg, "", "")
call <sid>hi("Debug", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("Directory", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("Error", s:guibg, s:gui08, s:ctermbg, s:cterm08, "", "")
call <sid>hi("ErrorMsg", s:gui08, s:guibg, s:cterm08, s:ctermbg, "", "")
call <sid>hi("Exception", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("FoldColumn", s:gui03, s:guibg, s:cterm03, s:ctermbg, "", "")
call <sid>hi("Folded", s:gui02, s:guibg, s:cterm02, s:ctermbg, "", "")
call <sid>hi("Folded", s:gui03, s:gui01, s:cterm02, s:ctermbg, "", "")
call <sid>hi("IncSearch", s:gui01, s:gui09, s:cterm01, s:cterm09, "none", "")
call <sid>hi("Italic", "", "", "", "", "italic", "")
call <sid>hi("Macro", s:gui0C, "", s:cterm0C, "", "", "")
call <sid>hi("MatchParen", "", s:gui03, "", s:cterm03, "", "")
call <sid>hi("ModeMsg", s:gui0B, "", s:cterm0B, "", "", "")
@ -258,7 +318,10 @@ call <sid>hi("VisualNOS", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("WarningMsg", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("WildMenu", s:guibg, s:gui06, s:ctermbg, s:cterm05, "", "")
call <sid>hi("Title", s:gui0D, "", s:cterm0D, "", "none", "")
call <sid>hi("Conceal", s:gui0D, s:guibg, s:cterm0D, s:ctermbg, "", "")
"call <sid>hi("Conceal", s:gui0D, s:guibg, s:cterm0D, s:ctermbg, "", "")
hi! link Conceal ThemeBlue
call <sid>hi("Cursor", s:gui05, s:guibg, "", "", "inverse", "")
call <sid>hi("NonText", s:gui03, "", s:cterm03, "", "", "")
call <sid>hi("Whitespace", s:gui03, "", s:cterm03, "", "", "")
@ -270,7 +333,7 @@ call <sid>hi("VertSplit", s:gui01, s:guibg, s:cterm01, s:ctermbg, "none", ""
call <sid>hi("ColorColumn", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("CursorColumn", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("CursorLine", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("CursorLineNr", s:gui04, s:gui01, s:cterm04, s:cterm01, "bold", "")
call <sid>hi("CursorLineNr", s:gui04, s:gui00, s:cterm04, s:cterm01, "", "")
call <sid>hi("QuickFixLine", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("PMenu", s:gui06, s:gui01, s:cterm06, s:cterm01, "none", "")
call <sid>hi("PMenuSel", s:gui06, s:gui02, s:cterm06, s:cterm02, "", "")
@ -281,27 +344,21 @@ call <sid>hi("TabLineFill", s:gui03, s:gui01, s:cterm03, s:cterm01, "none", ""
call <sid>hi("TabLineSel", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "none", "")
" Standard syntax
call <sid>hi("Define", s:gui0E, "", s:cterm0E, "", "none", "")
call <sid>hi("Identifier", s:gui06, "", s:cterm05, "", "none", "")
call <sid>hi("Keyword", s:gui0D, "", s:cterm0E, "", "none", "")
call <sid>hi("Todo", s:gui08, s:guibg, s:cterm08, s:ctermbg, "italic", "")
hi! link Boolean ThemeOrange
hi! link Character ThemeRed
"call <sid>hi("Comment", s:gui03, "", s:cterm03, "", "italic", "")
hi! link Comment ThemeGreyItalic
hi! link Conditional ThemeRed
hi! link Constant ThemeOrange
call <sid>hi("Define", s:gui0E, "", s:cterm0E, "", "none", "")
hi! link Delimiter ThemeFg1
if has("patch-8.0.1038")
call <sid>hi("Deprecated", "", "", "", "", "strikethrough", "")
endif
hi! link Float ThemeOrange
hi! link Function ThemeBlue
call <sid>hi("Identifier", s:gui06, "", s:cterm05, "", "none", "")
hi! link Include ThemeBlue
hi! link Constant ThemeOrange
call <sid>hi("Keyword", s:gui0E, "", s:cterm0E, "", "none", "")
hi! link Label ThemeOrange
hi! link Number ThemeOrange
hi! link Operator ThemeYellow
@ -314,101 +371,145 @@ hi! link StorageClass ThemeOrange
hi! link String ThemeGreen
hi! link Structure ThemeOrange
hi! link Tag ThemeOrange
call <sid>hi("Todo", s:gui08, s:guibg, s:cterm08, s:ctermbg, "italic", "")
call <sid>hi("Type", s:gui0A, "", s:cterm0A, "", "none", "")
hi! link Type ThemeYellow
hi! link Typedef ThemeOrange
" Treesitter
if has("nvim-0.8.0")
call <sid>hi("@field", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@property", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@namespace", s:gui06, "", s:cterm05, "", "italic", "")
call <sid>hi("@variable.builtin", s:gui06, "", s:cterm05, "", "italic", "")
call <sid>hi("@text.reference", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@text.uri", s:gui08, "", s:cterm08, "", "italic", "")
hi! link @field ThemeRed
hi! link @property ThemeRed
hi! link @namespace ThemeFg1Italic
hi! link @variable.builtin ThemeFg1Italic
hi! link @variable ThemeFg2
hi! link @conceal ThemeBlue
" Annotations & Attributes
call <sid>hi("@annotation", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@attribute", s:gui0D, "", s:cterm0D, "", "", "")
hi! link @text.uri ThemeRedItalic
hi! link @text.reference ThemeRed
" Booleans, Characters & Comments
call <sid>hi("@boolean", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@character", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@character.special", s:gui0F, "", s:cterm0F, "", "", "")
call <sid>hi("@comment", s:gui03, "", s:cterm03, "", "", "")
hi! link @annotation ThemeViolet
hi! link @attribute ThemeBlue
" Conditionals, Constants & Debugging
call <sid>hi("@keyword.conditional", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@constant", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@constant.builtin", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@constant.macro", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@keyword.debug", s:gui08, "", s:cterm08, "", "", "")
hi! link @boolean ThemeOrange
hi! link @character ThemeRed
hi! link @character.special ThemeMagenta
hi! link @comment Comment
" Directives & Exceptions
call <sid>hi("@keyword.directive.define", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@keyword.exception", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @constant ThemeBlue
hi! link @constant.builtin ThemeBlue
" Floats & Functions
call <sid>hi("@number.float", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@function", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@function.builtin", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@function.call", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@function.macro", s:gui08, "", s:cterm08, "", "", "")
hi! link @constant.macro ThemeRed
" Imports, Operators & Returns
call <sid>hi("@keyword.import", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@keyword.coroutine", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@keyword.operator", s:gui06, "", s:cterm05, "", "", "")
call <sid>hi("@keyword.return", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @keyword.directive.define ThemeViolet
hi! link @keyword.exception ThemeRed
" Methods & Namespaces
call <sid>hi("@function.method", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@function.method.call", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@namespace.builtin", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @comment.error ThemeRed
hi! link @number.float ThemeRed
hi! link @keyword.function ThemeRed
" Numbers & Directives
call <sid>hi("@none", s:gui06, "", s:cterm05, "", "", "")
call <sid>hi("@number", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@keyword.directive", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @function ThemeBlue
hi! link @function.builtin ThemeBlue
hi! link @function.call ThemeBlue
hi! link @function.macro ThemeRed
hi! link @function.method ThemeBlue
hi! link @function.method.call ThemeBlue
" Repeats, Storage & Strings
call <sid>hi("@keyword.repeat", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@keyword.storage", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@string", s:gui0B, "", s:cterm0B, "", "", "")
hi! link @keyword.debug ThemeRed
hi! link @keyword.conditional ThemeRed
hi! link @keyword.import ThemeViolet
hi! link @keyword.coroutine ThemeViolet
hi! link @keyword.operator ThemeYellow
hi! link @keyword.directive ThemeViolet
hi! link @keyword.repeat ThemeViolet
hi! link @keyword.storage ThemeViolet
hi! link @keyword.return ThemeRed
" Tags & Markup
call <sid>hi("@markup.link.label", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.link.label.symbol", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@tag", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@tag.attribute", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@tag.delimiter", s:gui0F, "", s:cterm0F, "", "", "")
hi! link @constructor ThemeBlue
hi! link @namespace.builtin ThemeViolet
" More Markup
call <sid>hi("@markup", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.environment", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.environment.name", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.raw", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@markup.math", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.strong", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.emphasis", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.strikethrough", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.underline", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.heading", s:gui0D, "", s:cterm0D, "", "", "")
hi! link @none ThemeFg1
hi! link @number ThemeOrange
hi! link @string ThemeGreen
" Comments & Types
call <sid>hi("@comment.note", s:gui03, "", s:cterm03, "", "", "")
call <sid>hi("@comment.error", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@comment.hint", s:gui0B, "", s:cterm0B, "", "", "")
call <sid>hi("@comment.info", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@comment.warning", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@comment.todo", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.link.url", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@type", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@type.definition", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@type.qualifier", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @tag ThemeRed
hi! link @tag.delimiter ThemeViolet
hi! link @tag.attribute ThemeYellow
" affects markdown
hi! link @markup ThemeYellow
hi! link @markup.raw ThemeGreen
hi! link @markup.raw.block.lang ThemeFg2Bold
hi! link @markup.raw.block.marker ThemeRed
"call <sid>hi("@markup.raw.block.lang", s:gui08, "#1e0000", "", s:ctermbg, "", "")
hi! link @markup.list ThemeBlue
hi! link @markup.quote ThemeGrey
hi! link @markup.link ThemeYellow " borders
hi! link @markup.link.text ThemeBlue
hi! link @markup.link.label ThemeYellow
hi! link @markup.link.url ThemeYellow
hi! link @markup.link.dest ThemeFg3
hi! link @markup.link.wiki ThemeYellow
hi! link @markup.link.wiki.text ThemeBlue
hi! link @markup.link.wiki.label ThemeYellow
"hi! link @markup.link.label.symbol ThemeGreen
"hi! link markdownWikiLink ThemeViolet
"
hi! link @markup.environment ThemeYellow
hi! link @markup.environment.name ThemeYellow
hi! link @markup.math ThemeYellow
hi! link @punctuation.delimiter.latex ThemeOrange
hi! link @markup.strong Bold
hi! link @markup.emphasis Bold
hi! link @markup.strikethrough ThemeYellow
hi! link @markup.underline ThemeYellow
hi! link @comment.info ThemeBlue
hi! link @comment.todo ThemeYellow
hi! link @comment.note ThemeBg3
hi! link @comment.hint ThemeGreen
hi! link @comment.warning ThemeOrange
hi! link @type ThemeYellow
hi! link @type.builtin ThemeOrange
hi! link @type.definition ThemeViolet
hi! link @type.qualifier ThemeViolet
" Markdown
" hi! link @spell.markdown ThemeFg3
"call <sid>hi("@markup.heading.marker", s:gui08, "", "", s:ctermbg, "bold", "")
"hi! link @markup.heading ThemeRed
hi! link @markup.heading.marker ThemeOrange
hi! link @markup.heading.title ThemeRed "Italic
" set this for a strong background
"call <sid>hi("@markup.heading.title", s:gui08, "#440503", "", s:ctermbg, "italic", "")
hi! link @markup.heading.title.1 Bold
hi! link @markup.heading.title.3 Italic
"hi! link @markup.heading.4.title Italic
" YAML
hi! link @string.yaml ThemeBlue
hi! link @punctuation.delimiter.yaml ThemeGreen
hi! link @property.yaml ThemeFg2
" Diff
hi! link @diff.minus ThemeRed
hi! link @diff.plus ThemeGreen
call <sid>hi("TreesitterContext", "", s:gui00, "", "", "", "")
"hi TreesitterContextLineNumberBottom gui=underline guisp=Gray
"call <sid>hi("TreesitterContextBottom", "", "", "", "", "underline", s:gui02)
call <sid>hi("TreesitterContextSeparator", s:gui03, "", "", "", "", "")
"call <sid>hi("TreesitterContextLineNumberBottom", "", "", "", "", "underline", s:gui02)
endif
" Standard highlights to be used by plugins
@ -433,6 +534,7 @@ call <sid>hi("WarningFloat", s:gui09, s:gui01, s:cterm09, s:cterm01, "", "")
call <sid>hi("InfoFloat", s:gui0D, s:gui01, s:cterm0D, s:cterm01, "", "")
call <sid>hi("HintFloat", s:gui0C, s:gui01, s:cterm0C, s:cterm01, "", "")
call <sid>hi("OkFloat", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "")
call <sid>hi("NormalFloat", s:gui05, s:gui01, s:cterm05, s:cterm01, "", "")
call <sid>hi("ErrorHighlight", "", "", s:ctermbg, s:cterm08, "underline", s:gui08)
call <sid>hi("WarningHighlight", "", "", s:ctermbg, s:cterm09, "underline", s:gui09)
@ -449,6 +551,62 @@ call <sid>hi("ReferenceText", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "", "")
call <sid>hi("ReferenceRead", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "", "")
call <sid>hi("ReferenceWrite", s:gui01, s:gui08, s:cterm01, s:cterm08, "", "")
" 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
" "
" LANGUAGES
" "
" C
call <sid>hi("cOperator", s:gui0C, "", s:cterm0C, "", "", "")
call <sid>hi("cPreCondit", s:gui0E, "", s:cterm0E, "", "", "")
@ -728,8 +886,8 @@ call <sid>hi("phpMethodsVar", s:gui0C, "", s:cterm0C, "", "", "")
" hi! link pythonBuiltinObj ThemeCyan
" hi! link pythonBuiltinFunc ThemeGreen
" hi! link pythonFunction Function
hi! link pythonDecorator ThemeYellow
hi! link pythonDecoratorName ThemeYellow
" hi! link pythonDecorator ThemeYellow
" hi! link pythonDecoratorName ThemeYellow
" hi! link pythonTripleQuotes ThemeGreenItalic
" hi! link pythonInclude ThemeBlue
" hi! link pythonImport ThemeBlue
@ -777,58 +935,6 @@ call <sid>hi("StartifySelect", s:gui0C, "", s:cterm0C, "", "", "")
call <sid>hi("StartifySlash", s:gui03, "", s:cterm03, "", "", "")
call <sid>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 <sid>hi("javaOperator", s:gui0D, "", s:cterm0D, "", "", "")
@ -864,12 +970,18 @@ hi! link markdownUrlTitleDelimiter ThemeGreen
hi! link markdownLink ThemeGreen
hi! link markdownWikiLink ThemeViolet
hi! link markdownUrl ThemeOrange
"hi! link markdownUrl ThemeOrange
hi! link markdownUrl ThemeRed
hi! link markdownUrlProtocol ThemeGreenItalic
hi! link markdownInlineUrl ThemeOrange
hi! link markdownLinkText ThemeViolet
hi! link markdownIdDeclaration markdownLinkText
hi! link pandocAtxHeader ThemeRed
hi! link pandocAtxStart ThemeOrange
"call s:HL('markdownItalic', s:fg3, s:none, s:italic)
"call s:HL('markdownLinkText', s:gray, s:none, s:underline)
@ -880,3 +992,4 @@ delf <sid>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

View File

@ -7,28 +7,50 @@
" - `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.
"
" There are several kinds of syntax identifiers:
"
" - Vim/editor related (e.g., Normal, Folded): these control colors of central Vim
" elements, like whitespace, bold text, the foldcolumn, etc
" - Generic syntax identifiers (e.g., Boolean, Conditional): these are key groups for
" syntax elements that various language syntax files link to. For instance, Python
" syntax files might have specific patterns that match function keywords like "def," and
" the resulting syntax region can be highlighted by linking it to the core "Function"
" highlight identifier.
" - Treesitter-based identifiers (e.g., @variable, @boolean): highlight groups for
" treesitter-based syntax highlighting, which can replace regex-based matching when
" enabled for richer (and often faster) highlighting. These groups can be linked to the
" core identifiers like any other language.
"
" *Note*: each of these identifiers can add a lang-specific suffix to style those groups
" as they apply to particular languages. For ex, `@boolean.python ThemeRed` would style
" Python booleans red, while the lang-agnostic `@boolean` definition remains.
" - Plugin-oriented identifiers (e.g., SpellBad, ErrorFloat): these are groups mostly core
" to vim/nvim, but often appear only in the context of plugins or certain modules (like
" LSP). For instance, ErrorFloat styles floating windows that might be drawn by nvim's
" built-in LSP hover info.
" 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:gui00 = "#171611"
let g:base16_gui00 = "#171611"
let s:gui01 = "#22221c"
let g:base16_gui01 = "#22221c"
let s:gui02 = "#2f2e28"
let g:base16_gui02 = "#2f2e28"
let s:gui03 = "#3b3b34"
let g:base16_gui03 = "#3b3b34"
let s:gui04 = "#9f9f97"
let g:base16_gui04 = "#9f9f97"
let s:gui05 = "#afaea7"
let g:base16_gui05 = "#afaea7"
let s:gui06 = "#bfbeb6"
let g:base16_gui06 = "#bfbeb6"
let s:gui07 = "#cfcec6"
let g:base16_gui07 = "#cfcec6"
let s:gui08 = "#dc4234"
let g:base16_gui08 = "#dc4234"
let s:gui09 = "#b76b0c"
let g:base16_gui09 = "#b76b0c"
let s:gui0A = "#888346"
let g:base16_gui0A = "#888346"
let s:gui0B = "#4f925a"
@ -39,10 +61,10 @@ 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:gui0F = "#dc4234"
let g:base16_gui0F = "#dc4234"
let s:grey = "#6c7470"
let s:grey = "#64645d"
" Terminal color definitions
let s:cterm00 = "00"
@ -81,22 +103,22 @@ 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_0 = "#171611"
let g:terminal_color_1 = "#dc4234"
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_7 = "#afaea7"
let g:terminal_color_8 = "#3b3b34"
let g:terminal_color_9 = "#dc4234"
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_15 = "#cfcec6"
let g:terminal_color_background = g:terminal_color_0
let g:terminal_color_foreground = g:terminal_color_5
@ -107,22 +129,22 @@ if has("nvim")
elseif has("terminal")
let g:terminal_ansi_colors = [
\ "#111815",
\ "#dc4134",
\ "#171611",
\ "#dc4234",
\ "#4f925a",
\ "#888346",
\ "#557ecc",
\ "#557ecc",
\ "#4f925a",
\ "#a8b0ad",
\ "#353c3a",
\ "#dc4134",
\ "#afaea7",
\ "#3b3b34",
\ "#dc4234",
\ "#4f925a",
\ "#888346",
\ "#557ecc",
\ "#557ecc",
\ "#4f925a",
\ "#c7d0cc",
\ "#cfcec6",
\ ]
endif
@ -199,7 +221,25 @@ call <sid>hi("ThemeFg3", s:gui04, "", s:cterm04, "", "", "")
call <sid>hi("ThemeFg2", s:gui05, "", s:cterm05, "", "", "")
call <sid>hi("ThemeFg1", s:gui06, "", s:cterm06, "", "", "")
call <sid>hi("ThemeFg0", s:gui07, "", s:cterm07, "", "", "")
"
call <sid>hi("ThemeBg0bold", s:gui00, "", s:cterm00, "", "bold", "")
call <sid>hi("ThemeBg1bold", s:gui01, "", s:cterm01, "", "bold", "")
call <sid>hi("ThemeBg2bold", s:gui02, "", s:cterm02, "", "bold", "")
call <sid>hi("ThemeBg3bold", s:gui03, "", s:cterm03, "", "bold", "")
call <sid>hi("ThemeFg3bold", s:gui04, "", s:cterm04, "", "bold", "")
call <sid>hi("ThemeFg2bold", s:gui05, "", s:cterm05, "", "bold", "")
call <sid>hi("ThemeFg1bold", s:gui06, "", s:cterm06, "", "bold", "")
call <sid>hi("ThemeFg0bold", s:gui07, "", s:cterm07, "", "bold", "")
call <sid>hi("ThemeBg0Italic", s:gui00, "", s:cterm00, "", "italic", "")
call <sid>hi("ThemeBg1Italic", s:gui01, "", s:cterm01, "", "italic", "")
call <sid>hi("ThemeBg2Italic", s:gui02, "", s:cterm02, "", "italic", "")
call <sid>hi("ThemeBg3Italic", s:gui03, "", s:cterm03, "", "italic", "")
call <sid>hi("ThemeFg3Italic", s:gui04, "", s:cterm04, "", "italic", "")
call <sid>hi("ThemeFg2Italic", s:gui05, "", s:cterm05, "", "italic", "")
call <sid>hi("ThemeFg1Italic", s:gui06, "", s:cterm06, "", "italic", "")
call <sid>hi("ThemeFg0Italic", s:gui07, "", s:cterm07, "", "italic", "")
call <sid>hi("ThemeRed", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("ThemeOrange", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("ThemeYellow", s:gui0A, "", s:cterm0A, "", "", "")
@ -209,6 +249,15 @@ call <sid>hi("ThemeBlue", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("ThemeViolet", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("ThemeMagenta", s:gui0F, "", s:cterm0F, "", "", "")
call <sid>hi("ThemeRedNone", s:gui08, "", s:cterm08, "", "NONE", "")
call <sid>hi("ThemeOrangeNone", s:gui09, "", s:cterm09, "", "NONE", "")
call <sid>hi("ThemeYellowNone", s:gui0A, "", s:cterm0A, "", "NONE", "")
call <sid>hi("ThemeGreenNone", s:gui0B, "", s:cterm0B, "", "NONE", "")
call <sid>hi("ThemeCyanNone", s:gui0C, "", s:cterm0C, "", "NONE", "")
call <sid>hi("ThemeBlueNone", s:gui0D, "", s:cterm0D, "", "NONE", "")
call <sid>hi("ThemeVioletNone", s:gui0E, "", s:cterm0E, "", "NONE", "")
call <sid>hi("ThemeMagentaNone", s:gui0F, "", s:cterm0F, "", "NONE", "")
call <sid>hi("ThemeRedBold", s:gui08, "", s:cterm08, "", "bold", "")
call <sid>hi("ThemeOrangeBold", s:gui09, "", s:cterm09, "", "bold", "")
call <sid>hi("ThemeYellowBold", s:gui0A, "", s:cterm0A, "", "bold", "")
@ -227,22 +276,33 @@ call <sid>hi("ThemeBlueItalic", s:gui0D, "", s:cterm0D, "", "italic", "")
call <sid>hi("ThemeVioletItalic", s:gui0E, "", s:cterm0E, "", "italic", "")
call <sid>hi("ThemeMagentaItalic", s:gui0F, "", s:cterm0F, "", "italic", "")
call <sid>hi("ThemeRedBoldItalic", s:gui08, "", s:cterm08, "", "bold,italic", "")
call <sid>hi("ThemeOrangeBoldItalic", s:gui09, "", s:cterm09, "", "bold,italic", "")
call <sid>hi("ThemeYellowBoldItalic", s:gui0A, "", s:cterm0A, "", "bold,italic", "")
call <sid>hi("ThemeGreenBoldItalic", s:gui0B, "", s:cterm0B, "", "bold,italic", "")
call <sid>hi("ThemeCyanBoldItalic", s:gui0C, "", s:cterm0C, "", "bold,italic", "")
call <sid>hi("ThemeBlueBoldItalic", s:gui0D, "", s:cterm0D, "", "bold,italic", "")
call <sid>hi("ThemeVioletBoldItalic", s:gui0E, "", s:cterm0E, "", "bold,italic", "")
call <sid>hi("ThemeMagentaBoldItalic", s:gui0F, "", s:cterm0F, "", "bold,italic", "")
call <sid>hi("ThemeGrey", s:grey, "", s:cterm03, "", "", "")
call <sid>hi("ThemeGreyItalic", s:grey, "", s:cterm03, "", "italic", "")
" Vim editor colors
call <sid>hi("Normal", s:gui05, s:guibg, s:cterm05, s:ctermbg, "", "")
call <sid>hi("Bold", "", "", "", "", "bold", "")
call <sid>hi("Italic", "", "", "", "", "italic", "")
call <sid>hi("BoldItalic", "", "", "", "", "italic,bold", "")
call <sid>hi("Normal", s:gui05, s:guibg, s:cterm05, s:ctermbg, "", "")
call <sid>hi("Debug", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("Directory", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("Error", s:guibg, s:gui08, s:ctermbg, s:cterm08, "", "")
call <sid>hi("ErrorMsg", s:gui08, s:guibg, s:cterm08, s:ctermbg, "", "")
call <sid>hi("Exception", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("FoldColumn", s:gui03, s:guibg, s:cterm03, s:ctermbg, "", "")
call <sid>hi("Folded", s:gui02, s:guibg, s:cterm02, s:ctermbg, "", "")
call <sid>hi("Folded", s:gui03, s:gui01, s:cterm02, s:ctermbg, "", "")
call <sid>hi("IncSearch", s:gui01, s:gui09, s:cterm01, s:cterm09, "none", "")
call <sid>hi("Italic", "", "", "", "", "italic", "")
call <sid>hi("Macro", s:gui0C, "", s:cterm0C, "", "", "")
call <sid>hi("MatchParen", "", s:gui03, "", s:cterm03, "", "")
call <sid>hi("ModeMsg", s:gui0B, "", s:cterm0B, "", "", "")
@ -258,7 +318,10 @@ call <sid>hi("VisualNOS", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("WarningMsg", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("WildMenu", s:guibg, s:gui06, s:ctermbg, s:cterm05, "", "")
call <sid>hi("Title", s:gui0D, "", s:cterm0D, "", "none", "")
call <sid>hi("Conceal", s:gui0D, s:guibg, s:cterm0D, s:ctermbg, "", "")
"call <sid>hi("Conceal", s:gui0D, s:guibg, s:cterm0D, s:ctermbg, "", "")
hi! link Conceal ThemeBlue
call <sid>hi("Cursor", s:gui05, s:guibg, "", "", "inverse", "")
call <sid>hi("NonText", s:gui03, "", s:cterm03, "", "", "")
call <sid>hi("Whitespace", s:gui03, "", s:cterm03, "", "", "")
@ -270,7 +333,7 @@ call <sid>hi("VertSplit", s:gui01, s:guibg, s:cterm01, s:ctermbg, "none", ""
call <sid>hi("ColorColumn", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("CursorColumn", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("CursorLine", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("CursorLineNr", s:gui04, s:gui01, s:cterm04, s:cterm01, "bold", "")
call <sid>hi("CursorLineNr", s:gui04, s:gui00, s:cterm04, s:cterm01, "", "")
call <sid>hi("QuickFixLine", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("PMenu", s:gui06, s:gui01, s:cterm06, s:cterm01, "none", "")
call <sid>hi("PMenuSel", s:gui06, s:gui02, s:cterm06, s:cterm02, "", "")
@ -281,27 +344,21 @@ call <sid>hi("TabLineFill", s:gui03, s:gui01, s:cterm03, s:cterm01, "none", ""
call <sid>hi("TabLineSel", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "none", "")
" Standard syntax
call <sid>hi("Define", s:gui0E, "", s:cterm0E, "", "none", "")
call <sid>hi("Identifier", s:gui06, "", s:cterm05, "", "none", "")
call <sid>hi("Keyword", s:gui0D, "", s:cterm0E, "", "none", "")
call <sid>hi("Todo", s:gui08, s:guibg, s:cterm08, s:ctermbg, "italic", "")
hi! link Boolean ThemeOrange
hi! link Character ThemeRed
"call <sid>hi("Comment", s:gui03, "", s:cterm03, "", "italic", "")
hi! link Comment ThemeGreyItalic
hi! link Conditional ThemeRed
hi! link Constant ThemeOrange
call <sid>hi("Define", s:gui0E, "", s:cterm0E, "", "none", "")
hi! link Delimiter ThemeFg1
if has("patch-8.0.1038")
call <sid>hi("Deprecated", "", "", "", "", "strikethrough", "")
endif
hi! link Float ThemeOrange
hi! link Function ThemeBlue
call <sid>hi("Identifier", s:gui06, "", s:cterm05, "", "none", "")
hi! link Include ThemeBlue
hi! link Constant ThemeOrange
call <sid>hi("Keyword", s:gui0E, "", s:cterm0E, "", "none", "")
hi! link Label ThemeOrange
hi! link Number ThemeOrange
hi! link Operator ThemeYellow
@ -314,101 +371,145 @@ hi! link StorageClass ThemeOrange
hi! link String ThemeGreen
hi! link Structure ThemeOrange
hi! link Tag ThemeOrange
call <sid>hi("Todo", s:gui08, s:guibg, s:cterm08, s:ctermbg, "italic", "")
call <sid>hi("Type", s:gui0A, "", s:cterm0A, "", "none", "")
hi! link Type ThemeYellow
hi! link Typedef ThemeOrange
" Treesitter
if has("nvim-0.8.0")
call <sid>hi("@field", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@property", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@namespace", s:gui06, "", s:cterm05, "", "italic", "")
call <sid>hi("@variable.builtin", s:gui06, "", s:cterm05, "", "italic", "")
call <sid>hi("@text.reference", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@text.uri", s:gui08, "", s:cterm08, "", "italic", "")
hi! link @field ThemeRed
hi! link @property ThemeRed
hi! link @namespace ThemeFg1Italic
hi! link @variable.builtin ThemeFg1Italic
hi! link @variable ThemeFg2
hi! link @conceal ThemeBlue
" Annotations & Attributes
call <sid>hi("@annotation", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@attribute", s:gui0D, "", s:cterm0D, "", "", "")
hi! link @text.uri ThemeRedItalic
hi! link @text.reference ThemeRed
" Booleans, Characters & Comments
call <sid>hi("@boolean", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@character", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@character.special", s:gui0F, "", s:cterm0F, "", "", "")
call <sid>hi("@comment", s:gui03, "", s:cterm03, "", "", "")
hi! link @annotation ThemeViolet
hi! link @attribute ThemeBlue
" Conditionals, Constants & Debugging
call <sid>hi("@keyword.conditional", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@constant", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@constant.builtin", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@constant.macro", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@keyword.debug", s:gui08, "", s:cterm08, "", "", "")
hi! link @boolean ThemeOrange
hi! link @character ThemeRed
hi! link @character.special ThemeMagenta
hi! link @comment Comment
" Directives & Exceptions
call <sid>hi("@keyword.directive.define", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@keyword.exception", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @constant ThemeBlue
hi! link @constant.builtin ThemeBlue
" Floats & Functions
call <sid>hi("@number.float", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@function", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@function.builtin", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@function.call", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@function.macro", s:gui08, "", s:cterm08, "", "", "")
hi! link @constant.macro ThemeRed
" Imports, Operators & Returns
call <sid>hi("@keyword.import", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@keyword.coroutine", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@keyword.operator", s:gui06, "", s:cterm05, "", "", "")
call <sid>hi("@keyword.return", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @keyword.directive.define ThemeViolet
hi! link @keyword.exception ThemeRed
" Methods & Namespaces
call <sid>hi("@function.method", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@function.method.call", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@namespace.builtin", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @comment.error ThemeRed
hi! link @number.float ThemeRed
hi! link @keyword.function ThemeRed
" Numbers & Directives
call <sid>hi("@none", s:gui06, "", s:cterm05, "", "", "")
call <sid>hi("@number", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@keyword.directive", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @function ThemeBlue
hi! link @function.builtin ThemeBlue
hi! link @function.call ThemeBlue
hi! link @function.macro ThemeRed
hi! link @function.method ThemeBlue
hi! link @function.method.call ThemeBlue
" Repeats, Storage & Strings
call <sid>hi("@keyword.repeat", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@keyword.storage", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@string", s:gui0B, "", s:cterm0B, "", "", "")
hi! link @keyword.debug ThemeRed
hi! link @keyword.conditional ThemeRed
hi! link @keyword.import ThemeViolet
hi! link @keyword.coroutine ThemeViolet
hi! link @keyword.operator ThemeYellow
hi! link @keyword.directive ThemeViolet
hi! link @keyword.repeat ThemeViolet
hi! link @keyword.storage ThemeViolet
hi! link @keyword.return ThemeRed
" Tags & Markup
call <sid>hi("@markup.link.label", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.link.label.symbol", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@tag", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@tag.attribute", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@tag.delimiter", s:gui0F, "", s:cterm0F, "", "", "")
hi! link @constructor ThemeBlue
hi! link @namespace.builtin ThemeViolet
" More Markup
call <sid>hi("@markup", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.environment", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.environment.name", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.raw", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@markup.math", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.strong", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.emphasis", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.strikethrough", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.underline", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.heading", s:gui0D, "", s:cterm0D, "", "", "")
hi! link @none ThemeFg1
hi! link @number ThemeOrange
hi! link @string ThemeGreen
" Comments & Types
call <sid>hi("@comment.note", s:gui03, "", s:cterm03, "", "", "")
call <sid>hi("@comment.error", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@comment.hint", s:gui0B, "", s:cterm0B, "", "", "")
call <sid>hi("@comment.info", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@comment.warning", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@comment.todo", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.link.url", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@type", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@type.definition", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@type.qualifier", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @tag ThemeRed
hi! link @tag.delimiter ThemeViolet
hi! link @tag.attribute ThemeYellow
" affects markdown
hi! link @markup ThemeYellow
hi! link @markup.raw ThemeGreen
hi! link @markup.raw.block.lang ThemeFg2Bold
hi! link @markup.raw.block.marker ThemeRed
"call <sid>hi("@markup.raw.block.lang", s:gui08, "#1e0000", "", s:ctermbg, "", "")
hi! link @markup.list ThemeBlue
hi! link @markup.quote ThemeGrey
hi! link @markup.link ThemeYellow " borders
hi! link @markup.link.text ThemeBlue
hi! link @markup.link.label ThemeYellow
hi! link @markup.link.url ThemeYellow
hi! link @markup.link.dest ThemeFg3
hi! link @markup.link.wiki ThemeYellow
hi! link @markup.link.wiki.text ThemeBlue
hi! link @markup.link.wiki.label ThemeYellow
"hi! link @markup.link.label.symbol ThemeGreen
"hi! link markdownWikiLink ThemeViolet
"
hi! link @markup.environment ThemeYellow
hi! link @markup.environment.name ThemeYellow
hi! link @markup.math ThemeYellow
hi! link @punctuation.delimiter.latex ThemeOrange
hi! link @markup.strong Bold
hi! link @markup.emphasis Bold
hi! link @markup.strikethrough ThemeYellow
hi! link @markup.underline ThemeYellow
hi! link @comment.info ThemeBlue
hi! link @comment.todo ThemeYellow
hi! link @comment.note ThemeBg3
hi! link @comment.hint ThemeGreen
hi! link @comment.warning ThemeOrange
hi! link @type ThemeYellow
hi! link @type.builtin ThemeOrange
hi! link @type.definition ThemeViolet
hi! link @type.qualifier ThemeViolet
" Markdown
" hi! link @spell.markdown ThemeFg3
"call <sid>hi("@markup.heading.marker", s:gui08, "", "", s:ctermbg, "bold", "")
"hi! link @markup.heading ThemeRed
hi! link @markup.heading.marker ThemeOrange
hi! link @markup.heading.title ThemeRed "Italic
" set this for a strong background
"call <sid>hi("@markup.heading.title", s:gui08, "#440503", "", s:ctermbg, "italic", "")
hi! link @markup.heading.title.1 Bold
hi! link @markup.heading.title.3 Italic
"hi! link @markup.heading.4.title Italic
" YAML
hi! link @string.yaml ThemeBlue
hi! link @punctuation.delimiter.yaml ThemeGreen
hi! link @property.yaml ThemeFg2
" Diff
hi! link @diff.minus ThemeRed
hi! link @diff.plus ThemeGreen
call <sid>hi("TreesitterContext", "", s:gui00, "", "", "", "")
"hi TreesitterContextLineNumberBottom gui=underline guisp=Gray
"call <sid>hi("TreesitterContextBottom", "", "", "", "", "underline", s:gui02)
call <sid>hi("TreesitterContextSeparator", s:gui03, "", "", "", "", "")
"call <sid>hi("TreesitterContextLineNumberBottom", "", "", "", "", "underline", s:gui02)
endif
" Standard highlights to be used by plugins
@ -433,6 +534,7 @@ call <sid>hi("WarningFloat", s:gui09, s:gui01, s:cterm09, s:cterm01, "", "")
call <sid>hi("InfoFloat", s:gui0D, s:gui01, s:cterm0D, s:cterm01, "", "")
call <sid>hi("HintFloat", s:gui0C, s:gui01, s:cterm0C, s:cterm01, "", "")
call <sid>hi("OkFloat", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "")
call <sid>hi("NormalFloat", s:gui05, s:gui01, s:cterm05, s:cterm01, "", "")
call <sid>hi("ErrorHighlight", "", "", s:ctermbg, s:cterm08, "underline", s:gui08)
call <sid>hi("WarningHighlight", "", "", s:ctermbg, s:cterm09, "underline", s:gui09)
@ -449,6 +551,62 @@ call <sid>hi("ReferenceText", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "", "")
call <sid>hi("ReferenceRead", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "", "")
call <sid>hi("ReferenceWrite", s:gui01, s:gui08, s:cterm01, s:cterm08, "", "")
" 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
" "
" LANGUAGES
" "
" C
call <sid>hi("cOperator", s:gui0C, "", s:cterm0C, "", "", "")
call <sid>hi("cPreCondit", s:gui0E, "", s:cterm0E, "", "", "")
@ -728,8 +886,8 @@ call <sid>hi("phpMethodsVar", s:gui0C, "", s:cterm0C, "", "", "")
" hi! link pythonBuiltinObj ThemeCyan
" hi! link pythonBuiltinFunc ThemeGreen
" hi! link pythonFunction Function
hi! link pythonDecorator ThemeYellow
hi! link pythonDecoratorName ThemeYellow
" hi! link pythonDecorator ThemeYellow
" hi! link pythonDecoratorName ThemeYellow
" hi! link pythonTripleQuotes ThemeGreenItalic
" hi! link pythonInclude ThemeBlue
" hi! link pythonImport ThemeBlue
@ -777,58 +935,6 @@ call <sid>hi("StartifySelect", s:gui0C, "", s:cterm0C, "", "", "")
call <sid>hi("StartifySlash", s:gui03, "", s:cterm03, "", "", "")
call <sid>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 <sid>hi("javaOperator", s:gui0D, "", s:cterm0D, "", "", "")
@ -864,12 +970,18 @@ hi! link markdownUrlTitleDelimiter ThemeGreen
hi! link markdownLink ThemeGreen
hi! link markdownWikiLink ThemeViolet
hi! link markdownUrl ThemeOrange
"hi! link markdownUrl ThemeOrange
hi! link markdownUrl ThemeRed
hi! link markdownUrlProtocol ThemeGreenItalic
hi! link markdownInlineUrl ThemeOrange
hi! link markdownLinkText ThemeViolet
hi! link markdownIdDeclaration markdownLinkText
hi! link pandocAtxHeader ThemeRed
hi! link pandocAtxStart ThemeOrange
"call s:HL('markdownItalic', s:fg3, s:none, s:italic)
"call s:HL('markdownLinkText', s:gray, s:none, s:underline)
@ -880,3 +992,4 @@ delf <sid>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

View File

@ -7,28 +7,50 @@
" - `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.
"
" There are several kinds of syntax identifiers:
"
" - Vim/editor related (e.g., Normal, Folded): these control colors of central Vim
" elements, like whitespace, bold text, the foldcolumn, etc
" - Generic syntax identifiers (e.g., Boolean, Conditional): these are key groups for
" syntax elements that various language syntax files link to. For instance, Python
" syntax files might have specific patterns that match function keywords like "def," and
" the resulting syntax region can be highlighted by linking it to the core "Function"
" highlight identifier.
" - Treesitter-based identifiers (e.g., @variable, @boolean): highlight groups for
" treesitter-based syntax highlighting, which can replace regex-based matching when
" enabled for richer (and often faster) highlighting. These groups can be linked to the
" core identifiers like any other language.
"
" *Note*: each of these identifiers can add a lang-specific suffix to style those groups
" as they apply to particular languages. For ex, `@boolean.python ThemeRed` would style
" Python booleans red, while the lang-agnostic `@boolean` definition remains.
" - Plugin-oriented identifiers (e.g., SpellBad, ErrorFloat): these are groups mostly core
" to vim/nvim, but often appear only in the context of plugins or certain modules (like
" LSP). For instance, ErrorFloat styles floating windows that might be drawn by nvim's
" built-in LSP hover info.
" 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:gui00 = "#efefe7"
let g:base16_gui00 = "#efefe7"
let s:gui01 = "#dfded6"
let g:base16_gui01 = "#dfded6"
let s:gui02 = "#cfcec6"
let g:base16_gui02 = "#cfcec6"
let s:gui03 = "#bfbeb6"
let g:base16_gui03 = "#bfbeb6"
let s:gui04 = "#56564f"
let g:base16_gui04 = "#56564f"
let s:gui05 = "#484841"
let g:base16_gui05 = "#484841"
let s:gui06 = "#3b3b34"
let g:base16_gui06 = "#3b3b34"
let s:gui07 = "#2f2e28"
let g:base16_gui07 = "#2f2e28"
let s:gui08 = "#ca2f24"
let g:base16_gui08 = "#ca2f24"
let s:gui09 = "#a45e03"
let g:base16_gui09 = "#a45e03"
let s:gui0A = "#79743d"
let g:base16_gui0A = "#79743d"
let s:gui0B = "#42824e"
@ -39,10 +61,10 @@ 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:gui0F = "#ca2f24"
let g:base16_gui0F = "#ca2f24"
let s:grey = "#74716a"
let s:grey = "#909088"
" Terminal color definitions
let s:cterm00 = "00"
@ -81,22 +103,22 @@ 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_0 = "#efefe7"
let g:terminal_color_1 = "#ca2f24"
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_7 = "#484841"
let g:terminal_color_8 = "#bfbeb6"
let g:terminal_color_9 = "#ca2f24"
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_15 = "#2f2e28"
let g:terminal_color_background = g:terminal_color_0
let g:terminal_color_foreground = g:terminal_color_5
@ -107,22 +129,22 @@ if has("nvim")
elseif has("terminal")
let g:terminal_ansi_colors = [
\ "#e1ded6",
\ "#ca2e23",
\ "#efefe7",
\ "#ca2f24",
\ "#42824e",
\ "#79743d",
\ "#456fbe",
\ "#456fbe",
\ "#42824e",
\ "#3d3a34",
\ "#b0aea6",
\ "#ca2e23",
\ "#484841",
\ "#bfbeb6",
\ "#ca2f24",
\ "#42824e",
\ "#79743d",
\ "#456fbe",
\ "#456fbe",
\ "#42824e",
\ "#24211c",
\ "#2f2e28",
\ ]
endif
@ -199,7 +221,25 @@ call <sid>hi("ThemeFg3", s:gui04, "", s:cterm04, "", "", "")
call <sid>hi("ThemeFg2", s:gui05, "", s:cterm05, "", "", "")
call <sid>hi("ThemeFg1", s:gui06, "", s:cterm06, "", "", "")
call <sid>hi("ThemeFg0", s:gui07, "", s:cterm07, "", "", "")
"
call <sid>hi("ThemeBg0bold", s:gui00, "", s:cterm00, "", "bold", "")
call <sid>hi("ThemeBg1bold", s:gui01, "", s:cterm01, "", "bold", "")
call <sid>hi("ThemeBg2bold", s:gui02, "", s:cterm02, "", "bold", "")
call <sid>hi("ThemeBg3bold", s:gui03, "", s:cterm03, "", "bold", "")
call <sid>hi("ThemeFg3bold", s:gui04, "", s:cterm04, "", "bold", "")
call <sid>hi("ThemeFg2bold", s:gui05, "", s:cterm05, "", "bold", "")
call <sid>hi("ThemeFg1bold", s:gui06, "", s:cterm06, "", "bold", "")
call <sid>hi("ThemeFg0bold", s:gui07, "", s:cterm07, "", "bold", "")
call <sid>hi("ThemeBg0Italic", s:gui00, "", s:cterm00, "", "italic", "")
call <sid>hi("ThemeBg1Italic", s:gui01, "", s:cterm01, "", "italic", "")
call <sid>hi("ThemeBg2Italic", s:gui02, "", s:cterm02, "", "italic", "")
call <sid>hi("ThemeBg3Italic", s:gui03, "", s:cterm03, "", "italic", "")
call <sid>hi("ThemeFg3Italic", s:gui04, "", s:cterm04, "", "italic", "")
call <sid>hi("ThemeFg2Italic", s:gui05, "", s:cterm05, "", "italic", "")
call <sid>hi("ThemeFg1Italic", s:gui06, "", s:cterm06, "", "italic", "")
call <sid>hi("ThemeFg0Italic", s:gui07, "", s:cterm07, "", "italic", "")
call <sid>hi("ThemeRed", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("ThemeOrange", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("ThemeYellow", s:gui0A, "", s:cterm0A, "", "", "")
@ -209,6 +249,15 @@ call <sid>hi("ThemeBlue", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("ThemeViolet", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("ThemeMagenta", s:gui0F, "", s:cterm0F, "", "", "")
call <sid>hi("ThemeRedNone", s:gui08, "", s:cterm08, "", "NONE", "")
call <sid>hi("ThemeOrangeNone", s:gui09, "", s:cterm09, "", "NONE", "")
call <sid>hi("ThemeYellowNone", s:gui0A, "", s:cterm0A, "", "NONE", "")
call <sid>hi("ThemeGreenNone", s:gui0B, "", s:cterm0B, "", "NONE", "")
call <sid>hi("ThemeCyanNone", s:gui0C, "", s:cterm0C, "", "NONE", "")
call <sid>hi("ThemeBlueNone", s:gui0D, "", s:cterm0D, "", "NONE", "")
call <sid>hi("ThemeVioletNone", s:gui0E, "", s:cterm0E, "", "NONE", "")
call <sid>hi("ThemeMagentaNone", s:gui0F, "", s:cterm0F, "", "NONE", "")
call <sid>hi("ThemeRedBold", s:gui08, "", s:cterm08, "", "bold", "")
call <sid>hi("ThemeOrangeBold", s:gui09, "", s:cterm09, "", "bold", "")
call <sid>hi("ThemeYellowBold", s:gui0A, "", s:cterm0A, "", "bold", "")
@ -227,22 +276,33 @@ call <sid>hi("ThemeBlueItalic", s:gui0D, "", s:cterm0D, "", "italic", "")
call <sid>hi("ThemeVioletItalic", s:gui0E, "", s:cterm0E, "", "italic", "")
call <sid>hi("ThemeMagentaItalic", s:gui0F, "", s:cterm0F, "", "italic", "")
call <sid>hi("ThemeRedBoldItalic", s:gui08, "", s:cterm08, "", "bold,italic", "")
call <sid>hi("ThemeOrangeBoldItalic", s:gui09, "", s:cterm09, "", "bold,italic", "")
call <sid>hi("ThemeYellowBoldItalic", s:gui0A, "", s:cterm0A, "", "bold,italic", "")
call <sid>hi("ThemeGreenBoldItalic", s:gui0B, "", s:cterm0B, "", "bold,italic", "")
call <sid>hi("ThemeCyanBoldItalic", s:gui0C, "", s:cterm0C, "", "bold,italic", "")
call <sid>hi("ThemeBlueBoldItalic", s:gui0D, "", s:cterm0D, "", "bold,italic", "")
call <sid>hi("ThemeVioletBoldItalic", s:gui0E, "", s:cterm0E, "", "bold,italic", "")
call <sid>hi("ThemeMagentaBoldItalic", s:gui0F, "", s:cterm0F, "", "bold,italic", "")
call <sid>hi("ThemeGrey", s:grey, "", s:cterm03, "", "", "")
call <sid>hi("ThemeGreyItalic", s:grey, "", s:cterm03, "", "italic", "")
" Vim editor colors
call <sid>hi("Normal", s:gui05, s:guibg, s:cterm05, s:ctermbg, "", "")
call <sid>hi("Bold", "", "", "", "", "bold", "")
call <sid>hi("Italic", "", "", "", "", "italic", "")
call <sid>hi("BoldItalic", "", "", "", "", "italic,bold", "")
call <sid>hi("Normal", s:gui05, s:guibg, s:cterm05, s:ctermbg, "", "")
call <sid>hi("Debug", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("Directory", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("Error", s:guibg, s:gui08, s:ctermbg, s:cterm08, "", "")
call <sid>hi("ErrorMsg", s:gui08, s:guibg, s:cterm08, s:ctermbg, "", "")
call <sid>hi("Exception", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("FoldColumn", s:gui03, s:guibg, s:cterm03, s:ctermbg, "", "")
call <sid>hi("Folded", s:gui02, s:guibg, s:cterm02, s:ctermbg, "", "")
call <sid>hi("Folded", s:gui03, s:gui01, s:cterm02, s:ctermbg, "", "")
call <sid>hi("IncSearch", s:gui01, s:gui09, s:cterm01, s:cterm09, "none", "")
call <sid>hi("Italic", "", "", "", "", "italic", "")
call <sid>hi("Macro", s:gui0C, "", s:cterm0C, "", "", "")
call <sid>hi("MatchParen", "", s:gui03, "", s:cterm03, "", "")
call <sid>hi("ModeMsg", s:gui0B, "", s:cterm0B, "", "", "")
@ -258,7 +318,10 @@ call <sid>hi("VisualNOS", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("WarningMsg", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("WildMenu", s:guibg, s:gui06, s:ctermbg, s:cterm05, "", "")
call <sid>hi("Title", s:gui0D, "", s:cterm0D, "", "none", "")
call <sid>hi("Conceal", s:gui0D, s:guibg, s:cterm0D, s:ctermbg, "", "")
"call <sid>hi("Conceal", s:gui0D, s:guibg, s:cterm0D, s:ctermbg, "", "")
hi! link Conceal ThemeBlue
call <sid>hi("Cursor", s:gui05, s:guibg, "", "", "inverse", "")
call <sid>hi("NonText", s:gui03, "", s:cterm03, "", "", "")
call <sid>hi("Whitespace", s:gui03, "", s:cterm03, "", "", "")
@ -270,7 +333,7 @@ call <sid>hi("VertSplit", s:gui01, s:guibg, s:cterm01, s:ctermbg, "none", ""
call <sid>hi("ColorColumn", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("CursorColumn", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("CursorLine", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("CursorLineNr", s:gui04, s:gui01, s:cterm04, s:cterm01, "bold", "")
call <sid>hi("CursorLineNr", s:gui04, s:gui00, s:cterm04, s:cterm01, "", "")
call <sid>hi("QuickFixLine", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("PMenu", s:gui06, s:gui01, s:cterm06, s:cterm01, "none", "")
call <sid>hi("PMenuSel", s:gui06, s:gui02, s:cterm06, s:cterm02, "", "")
@ -281,27 +344,21 @@ call <sid>hi("TabLineFill", s:gui03, s:gui01, s:cterm03, s:cterm01, "none", ""
call <sid>hi("TabLineSel", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "none", "")
" Standard syntax
call <sid>hi("Define", s:gui0E, "", s:cterm0E, "", "none", "")
call <sid>hi("Identifier", s:gui06, "", s:cterm05, "", "none", "")
call <sid>hi("Keyword", s:gui0D, "", s:cterm0E, "", "none", "")
call <sid>hi("Todo", s:gui08, s:guibg, s:cterm08, s:ctermbg, "italic", "")
hi! link Boolean ThemeOrange
hi! link Character ThemeRed
"call <sid>hi("Comment", s:gui03, "", s:cterm03, "", "italic", "")
hi! link Comment ThemeGreyItalic
hi! link Conditional ThemeRed
hi! link Constant ThemeOrange
call <sid>hi("Define", s:gui0E, "", s:cterm0E, "", "none", "")
hi! link Delimiter ThemeFg1
if has("patch-8.0.1038")
call <sid>hi("Deprecated", "", "", "", "", "strikethrough", "")
endif
hi! link Float ThemeOrange
hi! link Function ThemeBlue
call <sid>hi("Identifier", s:gui06, "", s:cterm05, "", "none", "")
hi! link Include ThemeBlue
hi! link Constant ThemeOrange
call <sid>hi("Keyword", s:gui0E, "", s:cterm0E, "", "none", "")
hi! link Label ThemeOrange
hi! link Number ThemeOrange
hi! link Operator ThemeYellow
@ -314,101 +371,145 @@ hi! link StorageClass ThemeOrange
hi! link String ThemeGreen
hi! link Structure ThemeOrange
hi! link Tag ThemeOrange
call <sid>hi("Todo", s:gui08, s:guibg, s:cterm08, s:ctermbg, "italic", "")
call <sid>hi("Type", s:gui0A, "", s:cterm0A, "", "none", "")
hi! link Type ThemeYellow
hi! link Typedef ThemeOrange
" Treesitter
if has("nvim-0.8.0")
call <sid>hi("@field", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@property", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@namespace", s:gui06, "", s:cterm05, "", "italic", "")
call <sid>hi("@variable.builtin", s:gui06, "", s:cterm05, "", "italic", "")
call <sid>hi("@text.reference", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@text.uri", s:gui08, "", s:cterm08, "", "italic", "")
hi! link @field ThemeRed
hi! link @property ThemeRed
hi! link @namespace ThemeFg1Italic
hi! link @variable.builtin ThemeFg1Italic
hi! link @variable ThemeFg2
hi! link @conceal ThemeBlue
" Annotations & Attributes
call <sid>hi("@annotation", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@attribute", s:gui0D, "", s:cterm0D, "", "", "")
hi! link @text.uri ThemeRedItalic
hi! link @text.reference ThemeRed
" Booleans, Characters & Comments
call <sid>hi("@boolean", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@character", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@character.special", s:gui0F, "", s:cterm0F, "", "", "")
call <sid>hi("@comment", s:gui03, "", s:cterm03, "", "", "")
hi! link @annotation ThemeViolet
hi! link @attribute ThemeBlue
" Conditionals, Constants & Debugging
call <sid>hi("@keyword.conditional", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@constant", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@constant.builtin", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@constant.macro", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@keyword.debug", s:gui08, "", s:cterm08, "", "", "")
hi! link @boolean ThemeOrange
hi! link @character ThemeRed
hi! link @character.special ThemeMagenta
hi! link @comment Comment
" Directives & Exceptions
call <sid>hi("@keyword.directive.define", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@keyword.exception", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @constant ThemeBlue
hi! link @constant.builtin ThemeBlue
" Floats & Functions
call <sid>hi("@number.float", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@function", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@function.builtin", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@function.call", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@function.macro", s:gui08, "", s:cterm08, "", "", "")
hi! link @constant.macro ThemeRed
" Imports, Operators & Returns
call <sid>hi("@keyword.import", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@keyword.coroutine", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@keyword.operator", s:gui06, "", s:cterm05, "", "", "")
call <sid>hi("@keyword.return", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @keyword.directive.define ThemeViolet
hi! link @keyword.exception ThemeRed
" Methods & Namespaces
call <sid>hi("@function.method", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@function.method.call", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@namespace.builtin", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @comment.error ThemeRed
hi! link @number.float ThemeRed
hi! link @keyword.function ThemeRed
" Numbers & Directives
call <sid>hi("@none", s:gui06, "", s:cterm05, "", "", "")
call <sid>hi("@number", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@keyword.directive", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @function ThemeBlue
hi! link @function.builtin ThemeBlue
hi! link @function.call ThemeBlue
hi! link @function.macro ThemeRed
hi! link @function.method ThemeBlue
hi! link @function.method.call ThemeBlue
" Repeats, Storage & Strings
call <sid>hi("@keyword.repeat", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@keyword.storage", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@string", s:gui0B, "", s:cterm0B, "", "", "")
hi! link @keyword.debug ThemeRed
hi! link @keyword.conditional ThemeRed
hi! link @keyword.import ThemeViolet
hi! link @keyword.coroutine ThemeViolet
hi! link @keyword.operator ThemeYellow
hi! link @keyword.directive ThemeViolet
hi! link @keyword.repeat ThemeViolet
hi! link @keyword.storage ThemeViolet
hi! link @keyword.return ThemeRed
" Tags & Markup
call <sid>hi("@markup.link.label", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.link.label.symbol", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@tag", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@tag.attribute", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@tag.delimiter", s:gui0F, "", s:cterm0F, "", "", "")
hi! link @constructor ThemeBlue
hi! link @namespace.builtin ThemeViolet
" More Markup
call <sid>hi("@markup", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.environment", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.environment.name", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.raw", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@markup.math", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.strong", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.emphasis", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.strikethrough", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.underline", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.heading", s:gui0D, "", s:cterm0D, "", "", "")
hi! link @none ThemeFg1
hi! link @number ThemeOrange
hi! link @string ThemeGreen
" Comments & Types
call <sid>hi("@comment.note", s:gui03, "", s:cterm03, "", "", "")
call <sid>hi("@comment.error", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@comment.hint", s:gui0B, "", s:cterm0B, "", "", "")
call <sid>hi("@comment.info", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@comment.warning", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@comment.todo", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.link.url", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@type", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@type.definition", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@type.qualifier", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @tag ThemeRed
hi! link @tag.delimiter ThemeViolet
hi! link @tag.attribute ThemeYellow
" affects markdown
hi! link @markup ThemeYellow
hi! link @markup.raw ThemeGreen
hi! link @markup.raw.block.lang ThemeFg2Bold
hi! link @markup.raw.block.marker ThemeRed
"call <sid>hi("@markup.raw.block.lang", s:gui08, "#1e0000", "", s:ctermbg, "", "")
hi! link @markup.list ThemeBlue
hi! link @markup.quote ThemeGrey
hi! link @markup.link ThemeYellow " borders
hi! link @markup.link.text ThemeBlue
hi! link @markup.link.label ThemeYellow
hi! link @markup.link.url ThemeYellow
hi! link @markup.link.dest ThemeFg3
hi! link @markup.link.wiki ThemeYellow
hi! link @markup.link.wiki.text ThemeBlue
hi! link @markup.link.wiki.label ThemeYellow
"hi! link @markup.link.label.symbol ThemeGreen
"hi! link markdownWikiLink ThemeViolet
"
hi! link @markup.environment ThemeYellow
hi! link @markup.environment.name ThemeYellow
hi! link @markup.math ThemeYellow
hi! link @punctuation.delimiter.latex ThemeOrange
hi! link @markup.strong Bold
hi! link @markup.emphasis Bold
hi! link @markup.strikethrough ThemeYellow
hi! link @markup.underline ThemeYellow
hi! link @comment.info ThemeBlue
hi! link @comment.todo ThemeYellow
hi! link @comment.note ThemeBg3
hi! link @comment.hint ThemeGreen
hi! link @comment.warning ThemeOrange
hi! link @type ThemeYellow
hi! link @type.builtin ThemeOrange
hi! link @type.definition ThemeViolet
hi! link @type.qualifier ThemeViolet
" Markdown
" hi! link @spell.markdown ThemeFg3
"call <sid>hi("@markup.heading.marker", s:gui08, "", "", s:ctermbg, "bold", "")
"hi! link @markup.heading ThemeRed
hi! link @markup.heading.marker ThemeOrange
hi! link @markup.heading.title ThemeRed "Italic
" set this for a strong background
"call <sid>hi("@markup.heading.title", s:gui08, "#440503", "", s:ctermbg, "italic", "")
hi! link @markup.heading.title.1 Bold
hi! link @markup.heading.title.3 Italic
"hi! link @markup.heading.4.title Italic
" YAML
hi! link @string.yaml ThemeBlue
hi! link @punctuation.delimiter.yaml ThemeGreen
hi! link @property.yaml ThemeFg2
" Diff
hi! link @diff.minus ThemeRed
hi! link @diff.plus ThemeGreen
call <sid>hi("TreesitterContext", "", s:gui00, "", "", "", "")
"hi TreesitterContextLineNumberBottom gui=underline guisp=Gray
"call <sid>hi("TreesitterContextBottom", "", "", "", "", "underline", s:gui02)
call <sid>hi("TreesitterContextSeparator", s:gui03, "", "", "", "", "")
"call <sid>hi("TreesitterContextLineNumberBottom", "", "", "", "", "underline", s:gui02)
endif
" Standard highlights to be used by plugins
@ -433,6 +534,7 @@ call <sid>hi("WarningFloat", s:gui09, s:gui01, s:cterm09, s:cterm01, "", "")
call <sid>hi("InfoFloat", s:gui0D, s:gui01, s:cterm0D, s:cterm01, "", "")
call <sid>hi("HintFloat", s:gui0C, s:gui01, s:cterm0C, s:cterm01, "", "")
call <sid>hi("OkFloat", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "")
call <sid>hi("NormalFloat", s:gui05, s:gui01, s:cterm05, s:cterm01, "", "")
call <sid>hi("ErrorHighlight", "", "", s:ctermbg, s:cterm08, "underline", s:gui08)
call <sid>hi("WarningHighlight", "", "", s:ctermbg, s:cterm09, "underline", s:gui09)
@ -449,6 +551,62 @@ call <sid>hi("ReferenceText", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "", "")
call <sid>hi("ReferenceRead", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "", "")
call <sid>hi("ReferenceWrite", s:gui01, s:gui08, s:cterm01, s:cterm08, "", "")
" 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
" "
" LANGUAGES
" "
" C
call <sid>hi("cOperator", s:gui0C, "", s:cterm0C, "", "", "")
call <sid>hi("cPreCondit", s:gui0E, "", s:cterm0E, "", "", "")
@ -728,8 +886,8 @@ call <sid>hi("phpMethodsVar", s:gui0C, "", s:cterm0C, "", "", "")
" hi! link pythonBuiltinObj ThemeCyan
" hi! link pythonBuiltinFunc ThemeGreen
" hi! link pythonFunction Function
hi! link pythonDecorator ThemeYellow
hi! link pythonDecoratorName ThemeYellow
" hi! link pythonDecorator ThemeYellow
" hi! link pythonDecoratorName ThemeYellow
" hi! link pythonTripleQuotes ThemeGreenItalic
" hi! link pythonInclude ThemeBlue
" hi! link pythonImport ThemeBlue
@ -777,58 +935,6 @@ call <sid>hi("StartifySelect", s:gui0C, "", s:cterm0C, "", "", "")
call <sid>hi("StartifySlash", s:gui03, "", s:cterm03, "", "", "")
call <sid>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 <sid>hi("javaOperator", s:gui0D, "", s:cterm0D, "", "", "")
@ -864,12 +970,18 @@ hi! link markdownUrlTitleDelimiter ThemeGreen
hi! link markdownLink ThemeGreen
hi! link markdownWikiLink ThemeViolet
hi! link markdownUrl ThemeOrange
"hi! link markdownUrl ThemeOrange
hi! link markdownUrl ThemeRed
hi! link markdownUrlProtocol ThemeGreenItalic
hi! link markdownInlineUrl ThemeOrange
hi! link markdownLinkText ThemeViolet
hi! link markdownIdDeclaration markdownLinkText
hi! link pandocAtxHeader ThemeRed
hi! link pandocAtxStart ThemeOrange
"call s:HL('markdownItalic', s:fg3, s:none, s:italic)
"call s:HL('markdownLinkText', s:gray, s:none, s:underline)
@ -880,3 +992,4 @@ delf <sid>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

View File

@ -7,28 +7,50 @@
" - `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.
"
" There are several kinds of syntax identifiers:
"
" - Vim/editor related (e.g., Normal, Folded): these control colors of central Vim
" elements, like whitespace, bold text, the foldcolumn, etc
" - Generic syntax identifiers (e.g., Boolean, Conditional): these are key groups for
" syntax elements that various language syntax files link to. For instance, Python
" syntax files might have specific patterns that match function keywords like "def," and
" the resulting syntax region can be highlighted by linking it to the core "Function"
" highlight identifier.
" - Treesitter-based identifiers (e.g., @variable, @boolean): highlight groups for
" treesitter-based syntax highlighting, which can replace regex-based matching when
" enabled for richer (and often faster) highlighting. These groups can be linked to the
" core identifiers like any other language.
"
" *Note*: each of these identifiers can add a lang-specific suffix to style those groups
" as they apply to particular languages. For ex, `@boolean.python ThemeRed` would style
" Python booleans red, while the lang-agnostic `@boolean` definition remains.
" - Plugin-oriented identifiers (e.g., SpellBad, ErrorFloat): these are groups mostly core
" to vim/nvim, but often appear only in the context of plugins or certain modules (like
" LSP). For instance, ErrorFloat styles floating windows that might be drawn by nvim's
" built-in LSP hover info.
" 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:gui00 = "#13161b"
let g:base16_gui00 = "#13161b"
let s:gui01 = "#1f2227"
let g:base16_gui01 = "#1f2227"
let s:gui02 = "#2b2e33"
let g:base16_gui02 = "#2b2e33"
let s:gui03 = "#373b40"
let g:base16_gui03 = "#373b40"
let s:gui04 = "#9b9fa5"
let g:base16_gui04 = "#9b9fa5"
let s:gui05 = "#aaaeb5"
let g:base16_gui05 = "#aaaeb5"
let s:gui06 = "#babec5"
let g:base16_gui06 = "#babec5"
let s:gui07 = "#caced5"
let g:base16_gui07 = "#caced5"
let s:gui08 = "#dc4234"
let g:base16_gui08 = "#dc4234"
let s:gui09 = "#b76b0c"
let g:base16_gui09 = "#b76b0c"
let s:gui0A = "#888346"
let g:base16_gui0A = "#888346"
let s:gui0B = "#4f925a"
@ -39,10 +61,10 @@ 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:gui0F = "#dc4234"
let g:base16_gui0F = "#dc4234"
let s:grey = "#6d7278"
let s:grey = "#60636a"
" Terminal color definitions
let s:cterm00 = "00"
@ -81,22 +103,22 @@ 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_0 = "#13161b"
let g:terminal_color_1 = "#dc4234"
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_7 = "#aaaeb5"
let g:terminal_color_8 = "#373b40"
let g:terminal_color_9 = "#dc4234"
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_15 = "#caced5"
let g:terminal_color_background = g:terminal_color_0
let g:terminal_color_foreground = g:terminal_color_5
@ -107,22 +129,22 @@ if has("nvim")
elseif has("terminal")
let g:terminal_ansi_colors = [
\ "#12161b",
\ "#dc4134",
\ "#13161b",
\ "#dc4234",
\ "#4f925a",
\ "#888346",
\ "#557ecc",
\ "#557ecc",
\ "#4f925a",
\ "#a9afb5",
\ "#363b40",
\ "#dc4134",
\ "#aaaeb5",
\ "#373b40",
\ "#dc4234",
\ "#4f925a",
\ "#888346",
\ "#557ecc",
\ "#557ecc",
\ "#4f925a",
\ "#c8ced5",
\ "#caced5",
\ ]
endif
@ -199,7 +221,25 @@ call <sid>hi("ThemeFg3", s:gui04, "", s:cterm04, "", "", "")
call <sid>hi("ThemeFg2", s:gui05, "", s:cterm05, "", "", "")
call <sid>hi("ThemeFg1", s:gui06, "", s:cterm06, "", "", "")
call <sid>hi("ThemeFg0", s:gui07, "", s:cterm07, "", "", "")
"
call <sid>hi("ThemeBg0bold", s:gui00, "", s:cterm00, "", "bold", "")
call <sid>hi("ThemeBg1bold", s:gui01, "", s:cterm01, "", "bold", "")
call <sid>hi("ThemeBg2bold", s:gui02, "", s:cterm02, "", "bold", "")
call <sid>hi("ThemeBg3bold", s:gui03, "", s:cterm03, "", "bold", "")
call <sid>hi("ThemeFg3bold", s:gui04, "", s:cterm04, "", "bold", "")
call <sid>hi("ThemeFg2bold", s:gui05, "", s:cterm05, "", "bold", "")
call <sid>hi("ThemeFg1bold", s:gui06, "", s:cterm06, "", "bold", "")
call <sid>hi("ThemeFg0bold", s:gui07, "", s:cterm07, "", "bold", "")
call <sid>hi("ThemeBg0Italic", s:gui00, "", s:cterm00, "", "italic", "")
call <sid>hi("ThemeBg1Italic", s:gui01, "", s:cterm01, "", "italic", "")
call <sid>hi("ThemeBg2Italic", s:gui02, "", s:cterm02, "", "italic", "")
call <sid>hi("ThemeBg3Italic", s:gui03, "", s:cterm03, "", "italic", "")
call <sid>hi("ThemeFg3Italic", s:gui04, "", s:cterm04, "", "italic", "")
call <sid>hi("ThemeFg2Italic", s:gui05, "", s:cterm05, "", "italic", "")
call <sid>hi("ThemeFg1Italic", s:gui06, "", s:cterm06, "", "italic", "")
call <sid>hi("ThemeFg0Italic", s:gui07, "", s:cterm07, "", "italic", "")
call <sid>hi("ThemeRed", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("ThemeOrange", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("ThemeYellow", s:gui0A, "", s:cterm0A, "", "", "")
@ -209,6 +249,15 @@ call <sid>hi("ThemeBlue", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("ThemeViolet", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("ThemeMagenta", s:gui0F, "", s:cterm0F, "", "", "")
call <sid>hi("ThemeRedNone", s:gui08, "", s:cterm08, "", "NONE", "")
call <sid>hi("ThemeOrangeNone", s:gui09, "", s:cterm09, "", "NONE", "")
call <sid>hi("ThemeYellowNone", s:gui0A, "", s:cterm0A, "", "NONE", "")
call <sid>hi("ThemeGreenNone", s:gui0B, "", s:cterm0B, "", "NONE", "")
call <sid>hi("ThemeCyanNone", s:gui0C, "", s:cterm0C, "", "NONE", "")
call <sid>hi("ThemeBlueNone", s:gui0D, "", s:cterm0D, "", "NONE", "")
call <sid>hi("ThemeVioletNone", s:gui0E, "", s:cterm0E, "", "NONE", "")
call <sid>hi("ThemeMagentaNone", s:gui0F, "", s:cterm0F, "", "NONE", "")
call <sid>hi("ThemeRedBold", s:gui08, "", s:cterm08, "", "bold", "")
call <sid>hi("ThemeOrangeBold", s:gui09, "", s:cterm09, "", "bold", "")
call <sid>hi("ThemeYellowBold", s:gui0A, "", s:cterm0A, "", "bold", "")
@ -227,22 +276,33 @@ call <sid>hi("ThemeBlueItalic", s:gui0D, "", s:cterm0D, "", "italic", "")
call <sid>hi("ThemeVioletItalic", s:gui0E, "", s:cterm0E, "", "italic", "")
call <sid>hi("ThemeMagentaItalic", s:gui0F, "", s:cterm0F, "", "italic", "")
call <sid>hi("ThemeRedBoldItalic", s:gui08, "", s:cterm08, "", "bold,italic", "")
call <sid>hi("ThemeOrangeBoldItalic", s:gui09, "", s:cterm09, "", "bold,italic", "")
call <sid>hi("ThemeYellowBoldItalic", s:gui0A, "", s:cterm0A, "", "bold,italic", "")
call <sid>hi("ThemeGreenBoldItalic", s:gui0B, "", s:cterm0B, "", "bold,italic", "")
call <sid>hi("ThemeCyanBoldItalic", s:gui0C, "", s:cterm0C, "", "bold,italic", "")
call <sid>hi("ThemeBlueBoldItalic", s:gui0D, "", s:cterm0D, "", "bold,italic", "")
call <sid>hi("ThemeVioletBoldItalic", s:gui0E, "", s:cterm0E, "", "bold,italic", "")
call <sid>hi("ThemeMagentaBoldItalic", s:gui0F, "", s:cterm0F, "", "bold,italic", "")
call <sid>hi("ThemeGrey", s:grey, "", s:cterm03, "", "", "")
call <sid>hi("ThemeGreyItalic", s:grey, "", s:cterm03, "", "italic", "")
" Vim editor colors
call <sid>hi("Normal", s:gui05, s:guibg, s:cterm05, s:ctermbg, "", "")
call <sid>hi("Bold", "", "", "", "", "bold", "")
call <sid>hi("Italic", "", "", "", "", "italic", "")
call <sid>hi("BoldItalic", "", "", "", "", "italic,bold", "")
call <sid>hi("Normal", s:gui05, s:guibg, s:cterm05, s:ctermbg, "", "")
call <sid>hi("Debug", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("Directory", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("Error", s:guibg, s:gui08, s:ctermbg, s:cterm08, "", "")
call <sid>hi("ErrorMsg", s:gui08, s:guibg, s:cterm08, s:ctermbg, "", "")
call <sid>hi("Exception", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("FoldColumn", s:gui03, s:guibg, s:cterm03, s:ctermbg, "", "")
call <sid>hi("Folded", s:gui02, s:guibg, s:cterm02, s:ctermbg, "", "")
call <sid>hi("Folded", s:gui03, s:gui01, s:cterm02, s:ctermbg, "", "")
call <sid>hi("IncSearch", s:gui01, s:gui09, s:cterm01, s:cterm09, "none", "")
call <sid>hi("Italic", "", "", "", "", "italic", "")
call <sid>hi("Macro", s:gui0C, "", s:cterm0C, "", "", "")
call <sid>hi("MatchParen", "", s:gui03, "", s:cterm03, "", "")
call <sid>hi("ModeMsg", s:gui0B, "", s:cterm0B, "", "", "")
@ -258,7 +318,10 @@ call <sid>hi("VisualNOS", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("WarningMsg", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("WildMenu", s:guibg, s:gui06, s:ctermbg, s:cterm05, "", "")
call <sid>hi("Title", s:gui0D, "", s:cterm0D, "", "none", "")
call <sid>hi("Conceal", s:gui0D, s:guibg, s:cterm0D, s:ctermbg, "", "")
"call <sid>hi("Conceal", s:gui0D, s:guibg, s:cterm0D, s:ctermbg, "", "")
hi! link Conceal ThemeBlue
call <sid>hi("Cursor", s:gui05, s:guibg, "", "", "inverse", "")
call <sid>hi("NonText", s:gui03, "", s:cterm03, "", "", "")
call <sid>hi("Whitespace", s:gui03, "", s:cterm03, "", "", "")
@ -270,7 +333,7 @@ call <sid>hi("VertSplit", s:gui01, s:guibg, s:cterm01, s:ctermbg, "none", ""
call <sid>hi("ColorColumn", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("CursorColumn", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("CursorLine", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("CursorLineNr", s:gui04, s:gui01, s:cterm04, s:cterm01, "bold", "")
call <sid>hi("CursorLineNr", s:gui04, s:gui00, s:cterm04, s:cterm01, "", "")
call <sid>hi("QuickFixLine", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("PMenu", s:gui06, s:gui01, s:cterm06, s:cterm01, "none", "")
call <sid>hi("PMenuSel", s:gui06, s:gui02, s:cterm06, s:cterm02, "", "")
@ -281,27 +344,21 @@ call <sid>hi("TabLineFill", s:gui03, s:gui01, s:cterm03, s:cterm01, "none", ""
call <sid>hi("TabLineSel", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "none", "")
" Standard syntax
call <sid>hi("Define", s:gui0E, "", s:cterm0E, "", "none", "")
call <sid>hi("Identifier", s:gui06, "", s:cterm05, "", "none", "")
call <sid>hi("Keyword", s:gui0D, "", s:cterm0E, "", "none", "")
call <sid>hi("Todo", s:gui08, s:guibg, s:cterm08, s:ctermbg, "italic", "")
hi! link Boolean ThemeOrange
hi! link Character ThemeRed
"call <sid>hi("Comment", s:gui03, "", s:cterm03, "", "italic", "")
hi! link Comment ThemeGreyItalic
hi! link Conditional ThemeRed
hi! link Constant ThemeOrange
call <sid>hi("Define", s:gui0E, "", s:cterm0E, "", "none", "")
hi! link Delimiter ThemeFg1
if has("patch-8.0.1038")
call <sid>hi("Deprecated", "", "", "", "", "strikethrough", "")
endif
hi! link Float ThemeOrange
hi! link Function ThemeBlue
call <sid>hi("Identifier", s:gui06, "", s:cterm05, "", "none", "")
hi! link Include ThemeBlue
hi! link Constant ThemeOrange
call <sid>hi("Keyword", s:gui0E, "", s:cterm0E, "", "none", "")
hi! link Label ThemeOrange
hi! link Number ThemeOrange
hi! link Operator ThemeYellow
@ -314,101 +371,145 @@ hi! link StorageClass ThemeOrange
hi! link String ThemeGreen
hi! link Structure ThemeOrange
hi! link Tag ThemeOrange
call <sid>hi("Todo", s:gui08, s:guibg, s:cterm08, s:ctermbg, "italic", "")
call <sid>hi("Type", s:gui0A, "", s:cterm0A, "", "none", "")
hi! link Type ThemeYellow
hi! link Typedef ThemeOrange
" Treesitter
if has("nvim-0.8.0")
call <sid>hi("@field", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@property", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@namespace", s:gui06, "", s:cterm05, "", "italic", "")
call <sid>hi("@variable.builtin", s:gui06, "", s:cterm05, "", "italic", "")
call <sid>hi("@text.reference", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@text.uri", s:gui08, "", s:cterm08, "", "italic", "")
hi! link @field ThemeRed
hi! link @property ThemeRed
hi! link @namespace ThemeFg1Italic
hi! link @variable.builtin ThemeFg1Italic
hi! link @variable ThemeFg2
hi! link @conceal ThemeBlue
" Annotations & Attributes
call <sid>hi("@annotation", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@attribute", s:gui0D, "", s:cterm0D, "", "", "")
hi! link @text.uri ThemeRedItalic
hi! link @text.reference ThemeRed
" Booleans, Characters & Comments
call <sid>hi("@boolean", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@character", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@character.special", s:gui0F, "", s:cterm0F, "", "", "")
call <sid>hi("@comment", s:gui03, "", s:cterm03, "", "", "")
hi! link @annotation ThemeViolet
hi! link @attribute ThemeBlue
" Conditionals, Constants & Debugging
call <sid>hi("@keyword.conditional", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@constant", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@constant.builtin", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@constant.macro", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@keyword.debug", s:gui08, "", s:cterm08, "", "", "")
hi! link @boolean ThemeOrange
hi! link @character ThemeRed
hi! link @character.special ThemeMagenta
hi! link @comment Comment
" Directives & Exceptions
call <sid>hi("@keyword.directive.define", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@keyword.exception", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @constant ThemeBlue
hi! link @constant.builtin ThemeBlue
" Floats & Functions
call <sid>hi("@number.float", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@function", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@function.builtin", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@function.call", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@function.macro", s:gui08, "", s:cterm08, "", "", "")
hi! link @constant.macro ThemeRed
" Imports, Operators & Returns
call <sid>hi("@keyword.import", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@keyword.coroutine", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@keyword.operator", s:gui06, "", s:cterm05, "", "", "")
call <sid>hi("@keyword.return", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @keyword.directive.define ThemeViolet
hi! link @keyword.exception ThemeRed
" Methods & Namespaces
call <sid>hi("@function.method", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@function.method.call", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@namespace.builtin", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @comment.error ThemeRed
hi! link @number.float ThemeRed
hi! link @keyword.function ThemeRed
" Numbers & Directives
call <sid>hi("@none", s:gui06, "", s:cterm05, "", "", "")
call <sid>hi("@number", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@keyword.directive", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @function ThemeBlue
hi! link @function.builtin ThemeBlue
hi! link @function.call ThemeBlue
hi! link @function.macro ThemeRed
hi! link @function.method ThemeBlue
hi! link @function.method.call ThemeBlue
" Repeats, Storage & Strings
call <sid>hi("@keyword.repeat", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@keyword.storage", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@string", s:gui0B, "", s:cterm0B, "", "", "")
hi! link @keyword.debug ThemeRed
hi! link @keyword.conditional ThemeRed
hi! link @keyword.import ThemeViolet
hi! link @keyword.coroutine ThemeViolet
hi! link @keyword.operator ThemeYellow
hi! link @keyword.directive ThemeViolet
hi! link @keyword.repeat ThemeViolet
hi! link @keyword.storage ThemeViolet
hi! link @keyword.return ThemeRed
" Tags & Markup
call <sid>hi("@markup.link.label", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.link.label.symbol", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@tag", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@tag.attribute", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@tag.delimiter", s:gui0F, "", s:cterm0F, "", "", "")
hi! link @constructor ThemeBlue
hi! link @namespace.builtin ThemeViolet
" More Markup
call <sid>hi("@markup", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.environment", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.environment.name", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.raw", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@markup.math", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.strong", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.emphasis", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.strikethrough", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.underline", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.heading", s:gui0D, "", s:cterm0D, "", "", "")
hi! link @none ThemeFg1
hi! link @number ThemeOrange
hi! link @string ThemeGreen
" Comments & Types
call <sid>hi("@comment.note", s:gui03, "", s:cterm03, "", "", "")
call <sid>hi("@comment.error", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@comment.hint", s:gui0B, "", s:cterm0B, "", "", "")
call <sid>hi("@comment.info", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@comment.warning", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@comment.todo", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.link.url", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@type", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@type.definition", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@type.qualifier", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @tag ThemeRed
hi! link @tag.delimiter ThemeViolet
hi! link @tag.attribute ThemeYellow
" affects markdown
hi! link @markup ThemeYellow
hi! link @markup.raw ThemeGreen
hi! link @markup.raw.block.lang ThemeFg2Bold
hi! link @markup.raw.block.marker ThemeRed
"call <sid>hi("@markup.raw.block.lang", s:gui08, "#1e0000", "", s:ctermbg, "", "")
hi! link @markup.list ThemeBlue
hi! link @markup.quote ThemeGrey
hi! link @markup.link ThemeYellow " borders
hi! link @markup.link.text ThemeBlue
hi! link @markup.link.label ThemeYellow
hi! link @markup.link.url ThemeYellow
hi! link @markup.link.dest ThemeFg3
hi! link @markup.link.wiki ThemeYellow
hi! link @markup.link.wiki.text ThemeBlue
hi! link @markup.link.wiki.label ThemeYellow
"hi! link @markup.link.label.symbol ThemeGreen
"hi! link markdownWikiLink ThemeViolet
"
hi! link @markup.environment ThemeYellow
hi! link @markup.environment.name ThemeYellow
hi! link @markup.math ThemeYellow
hi! link @punctuation.delimiter.latex ThemeOrange
hi! link @markup.strong Bold
hi! link @markup.emphasis Bold
hi! link @markup.strikethrough ThemeYellow
hi! link @markup.underline ThemeYellow
hi! link @comment.info ThemeBlue
hi! link @comment.todo ThemeYellow
hi! link @comment.note ThemeBg3
hi! link @comment.hint ThemeGreen
hi! link @comment.warning ThemeOrange
hi! link @type ThemeYellow
hi! link @type.builtin ThemeOrange
hi! link @type.definition ThemeViolet
hi! link @type.qualifier ThemeViolet
" Markdown
" hi! link @spell.markdown ThemeFg3
"call <sid>hi("@markup.heading.marker", s:gui08, "", "", s:ctermbg, "bold", "")
"hi! link @markup.heading ThemeRed
hi! link @markup.heading.marker ThemeOrange
hi! link @markup.heading.title ThemeRed "Italic
" set this for a strong background
"call <sid>hi("@markup.heading.title", s:gui08, "#440503", "", s:ctermbg, "italic", "")
hi! link @markup.heading.title.1 Bold
hi! link @markup.heading.title.3 Italic
"hi! link @markup.heading.4.title Italic
" YAML
hi! link @string.yaml ThemeBlue
hi! link @punctuation.delimiter.yaml ThemeGreen
hi! link @property.yaml ThemeFg2
" Diff
hi! link @diff.minus ThemeRed
hi! link @diff.plus ThemeGreen
call <sid>hi("TreesitterContext", "", s:gui00, "", "", "", "")
"hi TreesitterContextLineNumberBottom gui=underline guisp=Gray
"call <sid>hi("TreesitterContextBottom", "", "", "", "", "underline", s:gui02)
call <sid>hi("TreesitterContextSeparator", s:gui03, "", "", "", "", "")
"call <sid>hi("TreesitterContextLineNumberBottom", "", "", "", "", "underline", s:gui02)
endif
" Standard highlights to be used by plugins
@ -433,6 +534,7 @@ call <sid>hi("WarningFloat", s:gui09, s:gui01, s:cterm09, s:cterm01, "", "")
call <sid>hi("InfoFloat", s:gui0D, s:gui01, s:cterm0D, s:cterm01, "", "")
call <sid>hi("HintFloat", s:gui0C, s:gui01, s:cterm0C, s:cterm01, "", "")
call <sid>hi("OkFloat", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "")
call <sid>hi("NormalFloat", s:gui05, s:gui01, s:cterm05, s:cterm01, "", "")
call <sid>hi("ErrorHighlight", "", "", s:ctermbg, s:cterm08, "underline", s:gui08)
call <sid>hi("WarningHighlight", "", "", s:ctermbg, s:cterm09, "underline", s:gui09)
@ -449,6 +551,62 @@ call <sid>hi("ReferenceText", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "", "")
call <sid>hi("ReferenceRead", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "", "")
call <sid>hi("ReferenceWrite", s:gui01, s:gui08, s:cterm01, s:cterm08, "", "")
" 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
" "
" LANGUAGES
" "
" C
call <sid>hi("cOperator", s:gui0C, "", s:cterm0C, "", "", "")
call <sid>hi("cPreCondit", s:gui0E, "", s:cterm0E, "", "", "")
@ -728,8 +886,8 @@ call <sid>hi("phpMethodsVar", s:gui0C, "", s:cterm0C, "", "", "")
" hi! link pythonBuiltinObj ThemeCyan
" hi! link pythonBuiltinFunc ThemeGreen
" hi! link pythonFunction Function
hi! link pythonDecorator ThemeYellow
hi! link pythonDecoratorName ThemeYellow
" hi! link pythonDecorator ThemeYellow
" hi! link pythonDecoratorName ThemeYellow
" hi! link pythonTripleQuotes ThemeGreenItalic
" hi! link pythonInclude ThemeBlue
" hi! link pythonImport ThemeBlue
@ -777,58 +935,6 @@ call <sid>hi("StartifySelect", s:gui0C, "", s:cterm0C, "", "", "")
call <sid>hi("StartifySlash", s:gui03, "", s:cterm03, "", "", "")
call <sid>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 <sid>hi("javaOperator", s:gui0D, "", s:cterm0D, "", "", "")
@ -864,12 +970,18 @@ hi! link markdownUrlTitleDelimiter ThemeGreen
hi! link markdownLink ThemeGreen
hi! link markdownWikiLink ThemeViolet
hi! link markdownUrl ThemeOrange
"hi! link markdownUrl ThemeOrange
hi! link markdownUrl ThemeRed
hi! link markdownUrlProtocol ThemeGreenItalic
hi! link markdownInlineUrl ThemeOrange
hi! link markdownLinkText ThemeViolet
hi! link markdownIdDeclaration markdownLinkText
hi! link pandocAtxHeader ThemeRed
hi! link pandocAtxStart ThemeOrange
"call s:HL('markdownItalic', s:fg3, s:none, s:italic)
"call s:HL('markdownLinkText', s:gray, s:none, s:underline)
@ -880,3 +992,4 @@ delf <sid>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

View File

@ -7,28 +7,50 @@
" - `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.
"
" There are several kinds of syntax identifiers:
"
" - Vim/editor related (e.g., Normal, Folded): these control colors of central Vim
" elements, like whitespace, bold text, the foldcolumn, etc
" - Generic syntax identifiers (e.g., Boolean, Conditional): these are key groups for
" syntax elements that various language syntax files link to. For instance, Python
" syntax files might have specific patterns that match function keywords like "def," and
" the resulting syntax region can be highlighted by linking it to the core "Function"
" highlight identifier.
" - Treesitter-based identifiers (e.g., @variable, @boolean): highlight groups for
" treesitter-based syntax highlighting, which can replace regex-based matching when
" enabled for richer (and often faster) highlighting. These groups can be linked to the
" core identifiers like any other language.
"
" *Note*: each of these identifiers can add a lang-specific suffix to style those groups
" as they apply to particular languages. For ex, `@boolean.python ThemeRed` would style
" Python booleans red, while the lang-agnostic `@boolean` definition remains.
" - Plugin-oriented identifiers (e.g., SpellBad, ErrorFloat): these are groups mostly core
" to vim/nvim, but often appear only in the context of plugins or certain modules (like
" LSP). For instance, ErrorFloat styles floating windows that might be drawn by nvim's
" built-in LSP hover info.
" 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:gui00 = "#eaeff6"
let g:base16_gui00 = "#eaeff6"
let s:gui01 = "#dadee6"
let g:base16_gui01 = "#dadee6"
let s:gui02 = "#caced5"
let g:base16_gui02 = "#caced5"
let s:gui03 = "#babec5"
let g:base16_gui03 = "#babec5"
let s:gui04 = "#52555c"
let g:base16_gui04 = "#52555c"
let s:gui05 = "#44484e"
let g:base16_gui05 = "#44484e"
let s:gui06 = "#373b40"
let g:base16_gui06 = "#373b40"
let s:gui07 = "#2b2e33"
let g:base16_gui07 = "#2b2e33"
let s:gui08 = "#ca2f24"
let g:base16_gui08 = "#ca2f24"
let s:gui09 = "#a45e03"
let g:base16_gui09 = "#a45e03"
let s:gui0A = "#79743d"
let g:base16_gui0A = "#79743d"
let s:gui0B = "#42824e"
@ -39,10 +61,10 @@ 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:gui0F = "#ca2f24"
let g:base16_gui0F = "#ca2f24"
let s:grey = "#6d7278"
let s:grey = "#8b8f96"
" Terminal color definitions
let s:cterm00 = "00"
@ -81,22 +103,22 @@ 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_0 = "#eaeff6"
let g:terminal_color_1 = "#ca2f24"
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_7 = "#44484e"
let g:terminal_color_8 = "#babec5"
let g:terminal_color_9 = "#ca2f24"
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_15 = "#2b2e33"
let g:terminal_color_background = g:terminal_color_0
let g:terminal_color_foreground = g:terminal_color_5
@ -107,22 +129,22 @@ if has("nvim")
elseif has("terminal")
let g:terminal_ansi_colors = [
\ "#d9dfe5",
\ "#ca2e23",
\ "#eaeff6",
\ "#ca2f24",
\ "#42824e",
\ "#79743d",
\ "#456fbe",
\ "#456fbe",
\ "#42824e",
\ "#363b40",
\ "#a9afb5",
\ "#ca2e23",
\ "#44484e",
\ "#babec5",
\ "#ca2f24",
\ "#42824e",
\ "#79743d",
\ "#456fbe",
\ "#456fbe",
\ "#42824e",
\ "#1e2227",
\ "#2b2e33",
\ ]
endif
@ -199,7 +221,25 @@ call <sid>hi("ThemeFg3", s:gui04, "", s:cterm04, "", "", "")
call <sid>hi("ThemeFg2", s:gui05, "", s:cterm05, "", "", "")
call <sid>hi("ThemeFg1", s:gui06, "", s:cterm06, "", "", "")
call <sid>hi("ThemeFg0", s:gui07, "", s:cterm07, "", "", "")
"
call <sid>hi("ThemeBg0bold", s:gui00, "", s:cterm00, "", "bold", "")
call <sid>hi("ThemeBg1bold", s:gui01, "", s:cterm01, "", "bold", "")
call <sid>hi("ThemeBg2bold", s:gui02, "", s:cterm02, "", "bold", "")
call <sid>hi("ThemeBg3bold", s:gui03, "", s:cterm03, "", "bold", "")
call <sid>hi("ThemeFg3bold", s:gui04, "", s:cterm04, "", "bold", "")
call <sid>hi("ThemeFg2bold", s:gui05, "", s:cterm05, "", "bold", "")
call <sid>hi("ThemeFg1bold", s:gui06, "", s:cterm06, "", "bold", "")
call <sid>hi("ThemeFg0bold", s:gui07, "", s:cterm07, "", "bold", "")
call <sid>hi("ThemeBg0Italic", s:gui00, "", s:cterm00, "", "italic", "")
call <sid>hi("ThemeBg1Italic", s:gui01, "", s:cterm01, "", "italic", "")
call <sid>hi("ThemeBg2Italic", s:gui02, "", s:cterm02, "", "italic", "")
call <sid>hi("ThemeBg3Italic", s:gui03, "", s:cterm03, "", "italic", "")
call <sid>hi("ThemeFg3Italic", s:gui04, "", s:cterm04, "", "italic", "")
call <sid>hi("ThemeFg2Italic", s:gui05, "", s:cterm05, "", "italic", "")
call <sid>hi("ThemeFg1Italic", s:gui06, "", s:cterm06, "", "italic", "")
call <sid>hi("ThemeFg0Italic", s:gui07, "", s:cterm07, "", "italic", "")
call <sid>hi("ThemeRed", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("ThemeOrange", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("ThemeYellow", s:gui0A, "", s:cterm0A, "", "", "")
@ -209,6 +249,15 @@ call <sid>hi("ThemeBlue", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("ThemeViolet", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("ThemeMagenta", s:gui0F, "", s:cterm0F, "", "", "")
call <sid>hi("ThemeRedNone", s:gui08, "", s:cterm08, "", "NONE", "")
call <sid>hi("ThemeOrangeNone", s:gui09, "", s:cterm09, "", "NONE", "")
call <sid>hi("ThemeYellowNone", s:gui0A, "", s:cterm0A, "", "NONE", "")
call <sid>hi("ThemeGreenNone", s:gui0B, "", s:cterm0B, "", "NONE", "")
call <sid>hi("ThemeCyanNone", s:gui0C, "", s:cterm0C, "", "NONE", "")
call <sid>hi("ThemeBlueNone", s:gui0D, "", s:cterm0D, "", "NONE", "")
call <sid>hi("ThemeVioletNone", s:gui0E, "", s:cterm0E, "", "NONE", "")
call <sid>hi("ThemeMagentaNone", s:gui0F, "", s:cterm0F, "", "NONE", "")
call <sid>hi("ThemeRedBold", s:gui08, "", s:cterm08, "", "bold", "")
call <sid>hi("ThemeOrangeBold", s:gui09, "", s:cterm09, "", "bold", "")
call <sid>hi("ThemeYellowBold", s:gui0A, "", s:cterm0A, "", "bold", "")
@ -227,22 +276,33 @@ call <sid>hi("ThemeBlueItalic", s:gui0D, "", s:cterm0D, "", "italic", "")
call <sid>hi("ThemeVioletItalic", s:gui0E, "", s:cterm0E, "", "italic", "")
call <sid>hi("ThemeMagentaItalic", s:gui0F, "", s:cterm0F, "", "italic", "")
call <sid>hi("ThemeRedBoldItalic", s:gui08, "", s:cterm08, "", "bold,italic", "")
call <sid>hi("ThemeOrangeBoldItalic", s:gui09, "", s:cterm09, "", "bold,italic", "")
call <sid>hi("ThemeYellowBoldItalic", s:gui0A, "", s:cterm0A, "", "bold,italic", "")
call <sid>hi("ThemeGreenBoldItalic", s:gui0B, "", s:cterm0B, "", "bold,italic", "")
call <sid>hi("ThemeCyanBoldItalic", s:gui0C, "", s:cterm0C, "", "bold,italic", "")
call <sid>hi("ThemeBlueBoldItalic", s:gui0D, "", s:cterm0D, "", "bold,italic", "")
call <sid>hi("ThemeVioletBoldItalic", s:gui0E, "", s:cterm0E, "", "bold,italic", "")
call <sid>hi("ThemeMagentaBoldItalic", s:gui0F, "", s:cterm0F, "", "bold,italic", "")
call <sid>hi("ThemeGrey", s:grey, "", s:cterm03, "", "", "")
call <sid>hi("ThemeGreyItalic", s:grey, "", s:cterm03, "", "italic", "")
" Vim editor colors
call <sid>hi("Normal", s:gui05, s:guibg, s:cterm05, s:ctermbg, "", "")
call <sid>hi("Bold", "", "", "", "", "bold", "")
call <sid>hi("Italic", "", "", "", "", "italic", "")
call <sid>hi("BoldItalic", "", "", "", "", "italic,bold", "")
call <sid>hi("Normal", s:gui05, s:guibg, s:cterm05, s:ctermbg, "", "")
call <sid>hi("Debug", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("Directory", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("Error", s:guibg, s:gui08, s:ctermbg, s:cterm08, "", "")
call <sid>hi("ErrorMsg", s:gui08, s:guibg, s:cterm08, s:ctermbg, "", "")
call <sid>hi("Exception", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("FoldColumn", s:gui03, s:guibg, s:cterm03, s:ctermbg, "", "")
call <sid>hi("Folded", s:gui02, s:guibg, s:cterm02, s:ctermbg, "", "")
call <sid>hi("Folded", s:gui03, s:gui01, s:cterm02, s:ctermbg, "", "")
call <sid>hi("IncSearch", s:gui01, s:gui09, s:cterm01, s:cterm09, "none", "")
call <sid>hi("Italic", "", "", "", "", "italic", "")
call <sid>hi("Macro", s:gui0C, "", s:cterm0C, "", "", "")
call <sid>hi("MatchParen", "", s:gui03, "", s:cterm03, "", "")
call <sid>hi("ModeMsg", s:gui0B, "", s:cterm0B, "", "", "")
@ -258,7 +318,10 @@ call <sid>hi("VisualNOS", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("WarningMsg", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("WildMenu", s:guibg, s:gui06, s:ctermbg, s:cterm05, "", "")
call <sid>hi("Title", s:gui0D, "", s:cterm0D, "", "none", "")
call <sid>hi("Conceal", s:gui0D, s:guibg, s:cterm0D, s:ctermbg, "", "")
"call <sid>hi("Conceal", s:gui0D, s:guibg, s:cterm0D, s:ctermbg, "", "")
hi! link Conceal ThemeBlue
call <sid>hi("Cursor", s:gui05, s:guibg, "", "", "inverse", "")
call <sid>hi("NonText", s:gui03, "", s:cterm03, "", "", "")
call <sid>hi("Whitespace", s:gui03, "", s:cterm03, "", "", "")
@ -270,7 +333,7 @@ call <sid>hi("VertSplit", s:gui01, s:guibg, s:cterm01, s:ctermbg, "none", ""
call <sid>hi("ColorColumn", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("CursorColumn", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("CursorLine", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("CursorLineNr", s:gui04, s:gui01, s:cterm04, s:cterm01, "bold", "")
call <sid>hi("CursorLineNr", s:gui04, s:gui00, s:cterm04, s:cterm01, "", "")
call <sid>hi("QuickFixLine", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("PMenu", s:gui06, s:gui01, s:cterm06, s:cterm01, "none", "")
call <sid>hi("PMenuSel", s:gui06, s:gui02, s:cterm06, s:cterm02, "", "")
@ -281,27 +344,21 @@ call <sid>hi("TabLineFill", s:gui03, s:gui01, s:cterm03, s:cterm01, "none", ""
call <sid>hi("TabLineSel", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "none", "")
" Standard syntax
call <sid>hi("Define", s:gui0E, "", s:cterm0E, "", "none", "")
call <sid>hi("Identifier", s:gui06, "", s:cterm05, "", "none", "")
call <sid>hi("Keyword", s:gui0D, "", s:cterm0E, "", "none", "")
call <sid>hi("Todo", s:gui08, s:guibg, s:cterm08, s:ctermbg, "italic", "")
hi! link Boolean ThemeOrange
hi! link Character ThemeRed
"call <sid>hi("Comment", s:gui03, "", s:cterm03, "", "italic", "")
hi! link Comment ThemeGreyItalic
hi! link Conditional ThemeRed
hi! link Constant ThemeOrange
call <sid>hi("Define", s:gui0E, "", s:cterm0E, "", "none", "")
hi! link Delimiter ThemeFg1
if has("patch-8.0.1038")
call <sid>hi("Deprecated", "", "", "", "", "strikethrough", "")
endif
hi! link Float ThemeOrange
hi! link Function ThemeBlue
call <sid>hi("Identifier", s:gui06, "", s:cterm05, "", "none", "")
hi! link Include ThemeBlue
hi! link Constant ThemeOrange
call <sid>hi("Keyword", s:gui0E, "", s:cterm0E, "", "none", "")
hi! link Label ThemeOrange
hi! link Number ThemeOrange
hi! link Operator ThemeYellow
@ -314,101 +371,145 @@ hi! link StorageClass ThemeOrange
hi! link String ThemeGreen
hi! link Structure ThemeOrange
hi! link Tag ThemeOrange
call <sid>hi("Todo", s:gui08, s:guibg, s:cterm08, s:ctermbg, "italic", "")
call <sid>hi("Type", s:gui0A, "", s:cterm0A, "", "none", "")
hi! link Type ThemeYellow
hi! link Typedef ThemeOrange
" Treesitter
if has("nvim-0.8.0")
call <sid>hi("@field", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@property", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@namespace", s:gui06, "", s:cterm05, "", "italic", "")
call <sid>hi("@variable.builtin", s:gui06, "", s:cterm05, "", "italic", "")
call <sid>hi("@text.reference", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@text.uri", s:gui08, "", s:cterm08, "", "italic", "")
hi! link @field ThemeRed
hi! link @property ThemeRed
hi! link @namespace ThemeFg1Italic
hi! link @variable.builtin ThemeFg1Italic
hi! link @variable ThemeFg2
hi! link @conceal ThemeBlue
" Annotations & Attributes
call <sid>hi("@annotation", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@attribute", s:gui0D, "", s:cterm0D, "", "", "")
hi! link @text.uri ThemeRedItalic
hi! link @text.reference ThemeRed
" Booleans, Characters & Comments
call <sid>hi("@boolean", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@character", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@character.special", s:gui0F, "", s:cterm0F, "", "", "")
call <sid>hi("@comment", s:gui03, "", s:cterm03, "", "", "")
hi! link @annotation ThemeViolet
hi! link @attribute ThemeBlue
" Conditionals, Constants & Debugging
call <sid>hi("@keyword.conditional", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@constant", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@constant.builtin", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@constant.macro", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@keyword.debug", s:gui08, "", s:cterm08, "", "", "")
hi! link @boolean ThemeOrange
hi! link @character ThemeRed
hi! link @character.special ThemeMagenta
hi! link @comment Comment
" Directives & Exceptions
call <sid>hi("@keyword.directive.define", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@keyword.exception", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @constant ThemeBlue
hi! link @constant.builtin ThemeBlue
" Floats & Functions
call <sid>hi("@number.float", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@function", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@function.builtin", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@function.call", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@function.macro", s:gui08, "", s:cterm08, "", "", "")
hi! link @constant.macro ThemeRed
" Imports, Operators & Returns
call <sid>hi("@keyword.import", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@keyword.coroutine", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@keyword.operator", s:gui06, "", s:cterm05, "", "", "")
call <sid>hi("@keyword.return", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @keyword.directive.define ThemeViolet
hi! link @keyword.exception ThemeRed
" Methods & Namespaces
call <sid>hi("@function.method", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@function.method.call", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@namespace.builtin", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @comment.error ThemeRed
hi! link @number.float ThemeRed
hi! link @keyword.function ThemeRed
" Numbers & Directives
call <sid>hi("@none", s:gui06, "", s:cterm05, "", "", "")
call <sid>hi("@number", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@keyword.directive", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @function ThemeBlue
hi! link @function.builtin ThemeBlue
hi! link @function.call ThemeBlue
hi! link @function.macro ThemeRed
hi! link @function.method ThemeBlue
hi! link @function.method.call ThemeBlue
" Repeats, Storage & Strings
call <sid>hi("@keyword.repeat", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@keyword.storage", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@string", s:gui0B, "", s:cterm0B, "", "", "")
hi! link @keyword.debug ThemeRed
hi! link @keyword.conditional ThemeRed
hi! link @keyword.import ThemeViolet
hi! link @keyword.coroutine ThemeViolet
hi! link @keyword.operator ThemeYellow
hi! link @keyword.directive ThemeViolet
hi! link @keyword.repeat ThemeViolet
hi! link @keyword.storage ThemeViolet
hi! link @keyword.return ThemeRed
" Tags & Markup
call <sid>hi("@markup.link.label", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.link.label.symbol", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@tag", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@tag.attribute", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@tag.delimiter", s:gui0F, "", s:cterm0F, "", "", "")
hi! link @constructor ThemeBlue
hi! link @namespace.builtin ThemeViolet
" More Markup
call <sid>hi("@markup", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.environment", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.environment.name", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.raw", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@markup.math", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.strong", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.emphasis", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.strikethrough", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.underline", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.heading", s:gui0D, "", s:cterm0D, "", "", "")
hi! link @none ThemeFg1
hi! link @number ThemeOrange
hi! link @string ThemeGreen
" Comments & Types
call <sid>hi("@comment.note", s:gui03, "", s:cterm03, "", "", "")
call <sid>hi("@comment.error", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@comment.hint", s:gui0B, "", s:cterm0B, "", "", "")
call <sid>hi("@comment.info", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@comment.warning", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@comment.todo", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.link.url", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@type", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@type.definition", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@type.qualifier", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @tag ThemeRed
hi! link @tag.delimiter ThemeViolet
hi! link @tag.attribute ThemeYellow
" affects markdown
hi! link @markup ThemeYellow
hi! link @markup.raw ThemeGreen
hi! link @markup.raw.block.lang ThemeFg2Bold
hi! link @markup.raw.block.marker ThemeRed
"call <sid>hi("@markup.raw.block.lang", s:gui08, "#1e0000", "", s:ctermbg, "", "")
hi! link @markup.list ThemeBlue
hi! link @markup.quote ThemeGrey
hi! link @markup.link ThemeYellow " borders
hi! link @markup.link.text ThemeBlue
hi! link @markup.link.label ThemeYellow
hi! link @markup.link.url ThemeYellow
hi! link @markup.link.dest ThemeFg3
hi! link @markup.link.wiki ThemeYellow
hi! link @markup.link.wiki.text ThemeBlue
hi! link @markup.link.wiki.label ThemeYellow
"hi! link @markup.link.label.symbol ThemeGreen
"hi! link markdownWikiLink ThemeViolet
"
hi! link @markup.environment ThemeYellow
hi! link @markup.environment.name ThemeYellow
hi! link @markup.math ThemeYellow
hi! link @punctuation.delimiter.latex ThemeOrange
hi! link @markup.strong Bold
hi! link @markup.emphasis Bold
hi! link @markup.strikethrough ThemeYellow
hi! link @markup.underline ThemeYellow
hi! link @comment.info ThemeBlue
hi! link @comment.todo ThemeYellow
hi! link @comment.note ThemeBg3
hi! link @comment.hint ThemeGreen
hi! link @comment.warning ThemeOrange
hi! link @type ThemeYellow
hi! link @type.builtin ThemeOrange
hi! link @type.definition ThemeViolet
hi! link @type.qualifier ThemeViolet
" Markdown
" hi! link @spell.markdown ThemeFg3
"call <sid>hi("@markup.heading.marker", s:gui08, "", "", s:ctermbg, "bold", "")
"hi! link @markup.heading ThemeRed
hi! link @markup.heading.marker ThemeOrange
hi! link @markup.heading.title ThemeRed "Italic
" set this for a strong background
"call <sid>hi("@markup.heading.title", s:gui08, "#440503", "", s:ctermbg, "italic", "")
hi! link @markup.heading.title.1 Bold
hi! link @markup.heading.title.3 Italic
"hi! link @markup.heading.4.title Italic
" YAML
hi! link @string.yaml ThemeBlue
hi! link @punctuation.delimiter.yaml ThemeGreen
hi! link @property.yaml ThemeFg2
" Diff
hi! link @diff.minus ThemeRed
hi! link @diff.plus ThemeGreen
call <sid>hi("TreesitterContext", "", s:gui00, "", "", "", "")
"hi TreesitterContextLineNumberBottom gui=underline guisp=Gray
"call <sid>hi("TreesitterContextBottom", "", "", "", "", "underline", s:gui02)
call <sid>hi("TreesitterContextSeparator", s:gui03, "", "", "", "", "")
"call <sid>hi("TreesitterContextLineNumberBottom", "", "", "", "", "underline", s:gui02)
endif
" Standard highlights to be used by plugins
@ -433,6 +534,7 @@ call <sid>hi("WarningFloat", s:gui09, s:gui01, s:cterm09, s:cterm01, "", "")
call <sid>hi("InfoFloat", s:gui0D, s:gui01, s:cterm0D, s:cterm01, "", "")
call <sid>hi("HintFloat", s:gui0C, s:gui01, s:cterm0C, s:cterm01, "", "")
call <sid>hi("OkFloat", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "")
call <sid>hi("NormalFloat", s:gui05, s:gui01, s:cterm05, s:cterm01, "", "")
call <sid>hi("ErrorHighlight", "", "", s:ctermbg, s:cterm08, "underline", s:gui08)
call <sid>hi("WarningHighlight", "", "", s:ctermbg, s:cterm09, "underline", s:gui09)
@ -449,6 +551,62 @@ call <sid>hi("ReferenceText", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "", "")
call <sid>hi("ReferenceRead", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "", "")
call <sid>hi("ReferenceWrite", s:gui01, s:gui08, s:cterm01, s:cterm08, "", "")
" 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
" "
" LANGUAGES
" "
" C
call <sid>hi("cOperator", s:gui0C, "", s:cterm0C, "", "", "")
call <sid>hi("cPreCondit", s:gui0E, "", s:cterm0E, "", "", "")
@ -728,8 +886,8 @@ call <sid>hi("phpMethodsVar", s:gui0C, "", s:cterm0C, "", "", "")
" hi! link pythonBuiltinObj ThemeCyan
" hi! link pythonBuiltinFunc ThemeGreen
" hi! link pythonFunction Function
hi! link pythonDecorator ThemeYellow
hi! link pythonDecoratorName ThemeYellow
" hi! link pythonDecorator ThemeYellow
" hi! link pythonDecoratorName ThemeYellow
" hi! link pythonTripleQuotes ThemeGreenItalic
" hi! link pythonInclude ThemeBlue
" hi! link pythonImport ThemeBlue
@ -777,58 +935,6 @@ call <sid>hi("StartifySelect", s:gui0C, "", s:cterm0C, "", "", "")
call <sid>hi("StartifySlash", s:gui03, "", s:cterm03, "", "", "")
call <sid>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 <sid>hi("javaOperator", s:gui0D, "", s:cterm0D, "", "", "")
@ -864,12 +970,18 @@ hi! link markdownUrlTitleDelimiter ThemeGreen
hi! link markdownLink ThemeGreen
hi! link markdownWikiLink ThemeViolet
hi! link markdownUrl ThemeOrange
"hi! link markdownUrl ThemeOrange
hi! link markdownUrl ThemeRed
hi! link markdownUrlProtocol ThemeGreenItalic
hi! link markdownInlineUrl ThemeOrange
hi! link markdownLinkText ThemeViolet
hi! link markdownIdDeclaration markdownLinkText
hi! link pandocAtxHeader ThemeRed
hi! link pandocAtxStart ThemeOrange
"call s:HL('markdownItalic', s:fg3, s:none, s:italic)
"call s:HL('markdownLinkText', s:gray, s:none, s:underline)
@ -880,3 +992,4 @@ delf <sid>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

View File

@ -7,6 +7,28 @@
" - `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.
"
" There are several kinds of syntax identifiers:
"
" - Vim/editor related (e.g., Normal, Folded): these control colors of central Vim
" elements, like whitespace, bold text, the foldcolumn, etc
" - Generic syntax identifiers (e.g., Boolean, Conditional): these are key groups for
" syntax elements that various language syntax files link to. For instance, Python
" syntax files might have specific patterns that match function keywords like "def," and
" the resulting syntax region can be highlighted by linking it to the core "Function"
" highlight identifier.
" - Treesitter-based identifiers (e.g., @variable, @boolean): highlight groups for
" treesitter-based syntax highlighting, which can replace regex-based matching when
" enabled for richer (and often faster) highlighting. These groups can be linked to the
" core identifiers like any other language.
"
" *Note*: each of these identifiers can add a lang-specific suffix to style those groups
" as they apply to particular languages. For ex, `@boolean.python ThemeRed` would style
" Python booleans red, while the lang-agnostic `@boolean` definition remains.
" - Plugin-oriented identifiers (e.g., SpellBad, ErrorFloat): these are groups mostly core
" to vim/nvim, but often appear only in the context of plugins or certain modules (like
" LSP). For instance, ErrorFloat styles floating windows that might be drawn by nvim's
" built-in LSP hover info.
" GUI color definitions
let s:gui00 = "#222222"
@ -27,8 +49,8 @@ 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:gui09 = "#c97920"
let g:base16_gui09 = "#c97920"
let s:gui0A = "#989250"
let g:base16_gui0A = "#989250"
let s:gui0B = "#5da268"
@ -42,7 +64,7 @@ let g:base16_gui0E = "#658ed9"
let s:gui0F = "#e95949"
let g:base16_gui0F = "#e95949"
let s:grey = "#808080"
let s:grey = "#717171"
" Terminal color definitions
let s:cterm00 = "00"
@ -199,7 +221,25 @@ call <sid>hi("ThemeFg3", s:gui04, "", s:cterm04, "", "", "")
call <sid>hi("ThemeFg2", s:gui05, "", s:cterm05, "", "", "")
call <sid>hi("ThemeFg1", s:gui06, "", s:cterm06, "", "", "")
call <sid>hi("ThemeFg0", s:gui07, "", s:cterm07, "", "", "")
"
call <sid>hi("ThemeBg0bold", s:gui00, "", s:cterm00, "", "bold", "")
call <sid>hi("ThemeBg1bold", s:gui01, "", s:cterm01, "", "bold", "")
call <sid>hi("ThemeBg2bold", s:gui02, "", s:cterm02, "", "bold", "")
call <sid>hi("ThemeBg3bold", s:gui03, "", s:cterm03, "", "bold", "")
call <sid>hi("ThemeFg3bold", s:gui04, "", s:cterm04, "", "bold", "")
call <sid>hi("ThemeFg2bold", s:gui05, "", s:cterm05, "", "bold", "")
call <sid>hi("ThemeFg1bold", s:gui06, "", s:cterm06, "", "bold", "")
call <sid>hi("ThemeFg0bold", s:gui07, "", s:cterm07, "", "bold", "")
call <sid>hi("ThemeBg0Italic", s:gui00, "", s:cterm00, "", "italic", "")
call <sid>hi("ThemeBg1Italic", s:gui01, "", s:cterm01, "", "italic", "")
call <sid>hi("ThemeBg2Italic", s:gui02, "", s:cterm02, "", "italic", "")
call <sid>hi("ThemeBg3Italic", s:gui03, "", s:cterm03, "", "italic", "")
call <sid>hi("ThemeFg3Italic", s:gui04, "", s:cterm04, "", "italic", "")
call <sid>hi("ThemeFg2Italic", s:gui05, "", s:cterm05, "", "italic", "")
call <sid>hi("ThemeFg1Italic", s:gui06, "", s:cterm06, "", "italic", "")
call <sid>hi("ThemeFg0Italic", s:gui07, "", s:cterm07, "", "italic", "")
call <sid>hi("ThemeRed", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("ThemeOrange", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("ThemeYellow", s:gui0A, "", s:cterm0A, "", "", "")
@ -209,6 +249,15 @@ call <sid>hi("ThemeBlue", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("ThemeViolet", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("ThemeMagenta", s:gui0F, "", s:cterm0F, "", "", "")
call <sid>hi("ThemeRedNone", s:gui08, "", s:cterm08, "", "NONE", "")
call <sid>hi("ThemeOrangeNone", s:gui09, "", s:cterm09, "", "NONE", "")
call <sid>hi("ThemeYellowNone", s:gui0A, "", s:cterm0A, "", "NONE", "")
call <sid>hi("ThemeGreenNone", s:gui0B, "", s:cterm0B, "", "NONE", "")
call <sid>hi("ThemeCyanNone", s:gui0C, "", s:cterm0C, "", "NONE", "")
call <sid>hi("ThemeBlueNone", s:gui0D, "", s:cterm0D, "", "NONE", "")
call <sid>hi("ThemeVioletNone", s:gui0E, "", s:cterm0E, "", "NONE", "")
call <sid>hi("ThemeMagentaNone", s:gui0F, "", s:cterm0F, "", "NONE", "")
call <sid>hi("ThemeRedBold", s:gui08, "", s:cterm08, "", "bold", "")
call <sid>hi("ThemeOrangeBold", s:gui09, "", s:cterm09, "", "bold", "")
call <sid>hi("ThemeYellowBold", s:gui0A, "", s:cterm0A, "", "bold", "")
@ -227,22 +276,33 @@ call <sid>hi("ThemeBlueItalic", s:gui0D, "", s:cterm0D, "", "italic", "")
call <sid>hi("ThemeVioletItalic", s:gui0E, "", s:cterm0E, "", "italic", "")
call <sid>hi("ThemeMagentaItalic", s:gui0F, "", s:cterm0F, "", "italic", "")
call <sid>hi("ThemeRedBoldItalic", s:gui08, "", s:cterm08, "", "bold,italic", "")
call <sid>hi("ThemeOrangeBoldItalic", s:gui09, "", s:cterm09, "", "bold,italic", "")
call <sid>hi("ThemeYellowBoldItalic", s:gui0A, "", s:cterm0A, "", "bold,italic", "")
call <sid>hi("ThemeGreenBoldItalic", s:gui0B, "", s:cterm0B, "", "bold,italic", "")
call <sid>hi("ThemeCyanBoldItalic", s:gui0C, "", s:cterm0C, "", "bold,italic", "")
call <sid>hi("ThemeBlueBoldItalic", s:gui0D, "", s:cterm0D, "", "bold,italic", "")
call <sid>hi("ThemeVioletBoldItalic", s:gui0E, "", s:cterm0E, "", "bold,italic", "")
call <sid>hi("ThemeMagentaBoldItalic", s:gui0F, "", s:cterm0F, "", "bold,italic", "")
call <sid>hi("ThemeGrey", s:grey, "", s:cterm03, "", "", "")
call <sid>hi("ThemeGreyItalic", s:grey, "", s:cterm03, "", "italic", "")
" Vim editor colors
call <sid>hi("Normal", s:gui05, s:guibg, s:cterm05, s:ctermbg, "", "")
call <sid>hi("Bold", "", "", "", "", "bold", "")
call <sid>hi("Italic", "", "", "", "", "italic", "")
call <sid>hi("BoldItalic", "", "", "", "", "italic,bold", "")
call <sid>hi("Normal", s:gui05, s:guibg, s:cterm05, s:ctermbg, "", "")
call <sid>hi("Debug", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("Directory", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("Error", s:guibg, s:gui08, s:ctermbg, s:cterm08, "", "")
call <sid>hi("ErrorMsg", s:gui08, s:guibg, s:cterm08, s:ctermbg, "", "")
call <sid>hi("Exception", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("FoldColumn", s:gui03, s:guibg, s:cterm03, s:ctermbg, "", "")
call <sid>hi("Folded", s:gui02, s:guibg, s:cterm02, s:ctermbg, "", "")
call <sid>hi("Folded", s:gui03, s:gui01, s:cterm02, s:ctermbg, "", "")
call <sid>hi("IncSearch", s:gui01, s:gui09, s:cterm01, s:cterm09, "none", "")
call <sid>hi("Italic", "", "", "", "", "italic", "")
call <sid>hi("Macro", s:gui0C, "", s:cterm0C, "", "", "")
call <sid>hi("MatchParen", "", s:gui03, "", s:cterm03, "", "")
call <sid>hi("ModeMsg", s:gui0B, "", s:cterm0B, "", "", "")
@ -258,7 +318,10 @@ call <sid>hi("VisualNOS", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("WarningMsg", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("WildMenu", s:guibg, s:gui06, s:ctermbg, s:cterm05, "", "")
call <sid>hi("Title", s:gui0D, "", s:cterm0D, "", "none", "")
call <sid>hi("Conceal", s:gui0D, s:guibg, s:cterm0D, s:ctermbg, "", "")
"call <sid>hi("Conceal", s:gui0D, s:guibg, s:cterm0D, s:ctermbg, "", "")
hi! link Conceal ThemeBlue
call <sid>hi("Cursor", s:gui05, s:guibg, "", "", "inverse", "")
call <sid>hi("NonText", s:gui03, "", s:cterm03, "", "", "")
call <sid>hi("Whitespace", s:gui03, "", s:cterm03, "", "", "")
@ -270,7 +333,7 @@ call <sid>hi("VertSplit", s:gui01, s:guibg, s:cterm01, s:ctermbg, "none", ""
call <sid>hi("ColorColumn", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("CursorColumn", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("CursorLine", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("CursorLineNr", s:gui04, s:gui01, s:cterm04, s:cterm01, "bold", "")
call <sid>hi("CursorLineNr", s:gui04, s:gui00, s:cterm04, s:cterm01, "", "")
call <sid>hi("QuickFixLine", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("PMenu", s:gui06, s:gui01, s:cterm06, s:cterm01, "none", "")
call <sid>hi("PMenuSel", s:gui06, s:gui02, s:cterm06, s:cterm02, "", "")
@ -281,27 +344,21 @@ call <sid>hi("TabLineFill", s:gui03, s:gui01, s:cterm03, s:cterm01, "none", ""
call <sid>hi("TabLineSel", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "none", "")
" Standard syntax
call <sid>hi("Define", s:gui0E, "", s:cterm0E, "", "none", "")
call <sid>hi("Identifier", s:gui06, "", s:cterm05, "", "none", "")
call <sid>hi("Keyword", s:gui0D, "", s:cterm0E, "", "none", "")
call <sid>hi("Todo", s:gui08, s:guibg, s:cterm08, s:ctermbg, "italic", "")
hi! link Boolean ThemeOrange
hi! link Character ThemeRed
"call <sid>hi("Comment", s:gui03, "", s:cterm03, "", "italic", "")
hi! link Comment ThemeGreyItalic
hi! link Conditional ThemeRed
hi! link Constant ThemeOrange
call <sid>hi("Define", s:gui0E, "", s:cterm0E, "", "none", "")
hi! link Delimiter ThemeFg1
if has("patch-8.0.1038")
call <sid>hi("Deprecated", "", "", "", "", "strikethrough", "")
endif
hi! link Float ThemeOrange
hi! link Function ThemeBlue
call <sid>hi("Identifier", s:gui06, "", s:cterm05, "", "none", "")
hi! link Include ThemeBlue
hi! link Constant ThemeOrange
call <sid>hi("Keyword", s:gui0E, "", s:cterm0E, "", "none", "")
hi! link Label ThemeOrange
hi! link Number ThemeOrange
hi! link Operator ThemeYellow
@ -314,101 +371,145 @@ hi! link StorageClass ThemeOrange
hi! link String ThemeGreen
hi! link Structure ThemeOrange
hi! link Tag ThemeOrange
call <sid>hi("Todo", s:gui08, s:guibg, s:cterm08, s:ctermbg, "italic", "")
call <sid>hi("Type", s:gui0A, "", s:cterm0A, "", "none", "")
hi! link Type ThemeYellow
hi! link Typedef ThemeOrange
" Treesitter
if has("nvim-0.8.0")
call <sid>hi("@field", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@property", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@namespace", s:gui06, "", s:cterm05, "", "italic", "")
call <sid>hi("@variable.builtin", s:gui06, "", s:cterm05, "", "italic", "")
call <sid>hi("@text.reference", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@text.uri", s:gui08, "", s:cterm08, "", "italic", "")
hi! link @field ThemeRed
hi! link @property ThemeRed
hi! link @namespace ThemeFg1Italic
hi! link @variable.builtin ThemeFg1Italic
hi! link @variable ThemeFg2
hi! link @conceal ThemeBlue
" Annotations & Attributes
call <sid>hi("@annotation", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@attribute", s:gui0D, "", s:cterm0D, "", "", "")
hi! link @text.uri ThemeRedItalic
hi! link @text.reference ThemeRed
" Booleans, Characters & Comments
call <sid>hi("@boolean", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@character", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@character.special", s:gui0F, "", s:cterm0F, "", "", "")
call <sid>hi("@comment", s:gui03, "", s:cterm03, "", "", "")
hi! link @annotation ThemeViolet
hi! link @attribute ThemeBlue
" Conditionals, Constants & Debugging
call <sid>hi("@keyword.conditional", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@constant", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@constant.builtin", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@constant.macro", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@keyword.debug", s:gui08, "", s:cterm08, "", "", "")
hi! link @boolean ThemeOrange
hi! link @character ThemeRed
hi! link @character.special ThemeMagenta
hi! link @comment Comment
" Directives & Exceptions
call <sid>hi("@keyword.directive.define", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@keyword.exception", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @constant ThemeBlue
hi! link @constant.builtin ThemeBlue
" Floats & Functions
call <sid>hi("@number.float", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@function", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@function.builtin", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@function.call", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@function.macro", s:gui08, "", s:cterm08, "", "", "")
hi! link @constant.macro ThemeRed
" Imports, Operators & Returns
call <sid>hi("@keyword.import", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@keyword.coroutine", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@keyword.operator", s:gui06, "", s:cterm05, "", "", "")
call <sid>hi("@keyword.return", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @keyword.directive.define ThemeViolet
hi! link @keyword.exception ThemeRed
" Methods & Namespaces
call <sid>hi("@function.method", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@function.method.call", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@namespace.builtin", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @comment.error ThemeRed
hi! link @number.float ThemeRed
hi! link @keyword.function ThemeRed
" Numbers & Directives
call <sid>hi("@none", s:gui06, "", s:cterm05, "", "", "")
call <sid>hi("@number", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@keyword.directive", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @function ThemeBlue
hi! link @function.builtin ThemeBlue
hi! link @function.call ThemeBlue
hi! link @function.macro ThemeRed
hi! link @function.method ThemeBlue
hi! link @function.method.call ThemeBlue
" Repeats, Storage & Strings
call <sid>hi("@keyword.repeat", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@keyword.storage", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@string", s:gui0B, "", s:cterm0B, "", "", "")
hi! link @keyword.debug ThemeRed
hi! link @keyword.conditional ThemeRed
hi! link @keyword.import ThemeViolet
hi! link @keyword.coroutine ThemeViolet
hi! link @keyword.operator ThemeYellow
hi! link @keyword.directive ThemeViolet
hi! link @keyword.repeat ThemeViolet
hi! link @keyword.storage ThemeViolet
hi! link @keyword.return ThemeRed
" Tags & Markup
call <sid>hi("@markup.link.label", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.link.label.symbol", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@tag", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@tag.attribute", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@tag.delimiter", s:gui0F, "", s:cterm0F, "", "", "")
hi! link @constructor ThemeBlue
hi! link @namespace.builtin ThemeViolet
" More Markup
call <sid>hi("@markup", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.environment", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.environment.name", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.raw", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@markup.math", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.strong", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.emphasis", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.strikethrough", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.underline", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.heading", s:gui0D, "", s:cterm0D, "", "", "")
hi! link @none ThemeFg1
hi! link @number ThemeOrange
hi! link @string ThemeGreen
" Comments & Types
call <sid>hi("@comment.note", s:gui03, "", s:cterm03, "", "", "")
call <sid>hi("@comment.error", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@comment.hint", s:gui0B, "", s:cterm0B, "", "", "")
call <sid>hi("@comment.info", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@comment.warning", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@comment.todo", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.link.url", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@type", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@type.definition", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@type.qualifier", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @tag ThemeRed
hi! link @tag.delimiter ThemeViolet
hi! link @tag.attribute ThemeYellow
" affects markdown
hi! link @markup ThemeYellow
hi! link @markup.raw ThemeGreen
hi! link @markup.raw.block.lang ThemeFg2Bold
hi! link @markup.raw.block.marker ThemeRed
"call <sid>hi("@markup.raw.block.lang", s:gui08, "#1e0000", "", s:ctermbg, "", "")
hi! link @markup.list ThemeBlue
hi! link @markup.quote ThemeGrey
hi! link @markup.link ThemeYellow " borders
hi! link @markup.link.text ThemeBlue
hi! link @markup.link.label ThemeYellow
hi! link @markup.link.url ThemeYellow
hi! link @markup.link.dest ThemeFg3
hi! link @markup.link.wiki ThemeYellow
hi! link @markup.link.wiki.text ThemeBlue
hi! link @markup.link.wiki.label ThemeYellow
"hi! link @markup.link.label.symbol ThemeGreen
"hi! link markdownWikiLink ThemeViolet
"
hi! link @markup.environment ThemeYellow
hi! link @markup.environment.name ThemeYellow
hi! link @markup.math ThemeYellow
hi! link @punctuation.delimiter.latex ThemeOrange
hi! link @markup.strong Bold
hi! link @markup.emphasis Bold
hi! link @markup.strikethrough ThemeYellow
hi! link @markup.underline ThemeYellow
hi! link @comment.info ThemeBlue
hi! link @comment.todo ThemeYellow
hi! link @comment.note ThemeBg3
hi! link @comment.hint ThemeGreen
hi! link @comment.warning ThemeOrange
hi! link @type ThemeYellow
hi! link @type.builtin ThemeOrange
hi! link @type.definition ThemeViolet
hi! link @type.qualifier ThemeViolet
" Markdown
" hi! link @spell.markdown ThemeFg3
"call <sid>hi("@markup.heading.marker", s:gui08, "", "", s:ctermbg, "bold", "")
"hi! link @markup.heading ThemeRed
hi! link @markup.heading.marker ThemeOrange
hi! link @markup.heading.title ThemeRed "Italic
" set this for a strong background
"call <sid>hi("@markup.heading.title", s:gui08, "#440503", "", s:ctermbg, "italic", "")
hi! link @markup.heading.title.1 Bold
hi! link @markup.heading.title.3 Italic
"hi! link @markup.heading.4.title Italic
" YAML
hi! link @string.yaml ThemeBlue
hi! link @punctuation.delimiter.yaml ThemeGreen
hi! link @property.yaml ThemeFg2
" Diff
hi! link @diff.minus ThemeRed
hi! link @diff.plus ThemeGreen
call <sid>hi("TreesitterContext", "", s:gui00, "", "", "", "")
"hi TreesitterContextLineNumberBottom gui=underline guisp=Gray
"call <sid>hi("TreesitterContextBottom", "", "", "", "", "underline", s:gui02)
call <sid>hi("TreesitterContextSeparator", s:gui03, "", "", "", "", "")
"call <sid>hi("TreesitterContextLineNumberBottom", "", "", "", "", "underline", s:gui02)
endif
" Standard highlights to be used by plugins
@ -433,6 +534,7 @@ call <sid>hi("WarningFloat", s:gui09, s:gui01, s:cterm09, s:cterm01, "", "")
call <sid>hi("InfoFloat", s:gui0D, s:gui01, s:cterm0D, s:cterm01, "", "")
call <sid>hi("HintFloat", s:gui0C, s:gui01, s:cterm0C, s:cterm01, "", "")
call <sid>hi("OkFloat", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "")
call <sid>hi("NormalFloat", s:gui05, s:gui01, s:cterm05, s:cterm01, "", "")
call <sid>hi("ErrorHighlight", "", "", s:ctermbg, s:cterm08, "underline", s:gui08)
call <sid>hi("WarningHighlight", "", "", s:ctermbg, s:cterm09, "underline", s:gui09)
@ -449,6 +551,62 @@ call <sid>hi("ReferenceText", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "", "")
call <sid>hi("ReferenceRead", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "", "")
call <sid>hi("ReferenceWrite", s:gui01, s:gui08, s:cterm01, s:cterm08, "", "")
" 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
" "
" LANGUAGES
" "
" C
call <sid>hi("cOperator", s:gui0C, "", s:cterm0C, "", "", "")
call <sid>hi("cPreCondit", s:gui0E, "", s:cterm0E, "", "", "")
@ -728,8 +886,8 @@ call <sid>hi("phpMethodsVar", s:gui0C, "", s:cterm0C, "", "", "")
" hi! link pythonBuiltinObj ThemeCyan
" hi! link pythonBuiltinFunc ThemeGreen
" hi! link pythonFunction Function
hi! link pythonDecorator ThemeYellow
hi! link pythonDecoratorName ThemeYellow
" hi! link pythonDecorator ThemeYellow
" hi! link pythonDecoratorName ThemeYellow
" hi! link pythonTripleQuotes ThemeGreenItalic
" hi! link pythonInclude ThemeBlue
" hi! link pythonImport ThemeBlue
@ -777,58 +935,6 @@ call <sid>hi("StartifySelect", s:gui0C, "", s:cterm0C, "", "", "")
call <sid>hi("StartifySlash", s:gui03, "", s:cterm03, "", "", "")
call <sid>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 <sid>hi("javaOperator", s:gui0D, "", s:cterm0D, "", "", "")
@ -864,12 +970,18 @@ hi! link markdownUrlTitleDelimiter ThemeGreen
hi! link markdownLink ThemeGreen
hi! link markdownWikiLink ThemeViolet
hi! link markdownUrl ThemeOrange
"hi! link markdownUrl ThemeOrange
hi! link markdownUrl ThemeRed
hi! link markdownUrlProtocol ThemeGreenItalic
hi! link markdownInlineUrl ThemeOrange
hi! link markdownLinkText ThemeViolet
hi! link markdownIdDeclaration markdownLinkText
hi! link pandocAtxHeader ThemeRed
hi! link pandocAtxStart ThemeOrange
"call s:HL('markdownItalic', s:fg3, s:none, s:italic)
"call s:HL('markdownLinkText', s:gray, s:none, s:underline)
@ -880,3 +992,4 @@ delf <sid>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

View File

@ -7,26 +7,48 @@
" - `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.
"
" There are several kinds of syntax identifiers:
"
" - Vim/editor related (e.g., Normal, Folded): these control colors of central Vim
" elements, like whitespace, bold text, the foldcolumn, etc
" - Generic syntax identifiers (e.g., Boolean, Conditional): these are key groups for
" syntax elements that various language syntax files link to. For instance, Python
" syntax files might have specific patterns that match function keywords like "def," and
" the resulting syntax region can be highlighted by linking it to the core "Function"
" highlight identifier.
" - Treesitter-based identifiers (e.g., @variable, @boolean): highlight groups for
" treesitter-based syntax highlighting, which can replace regex-based matching when
" enabled for richer (and often faster) highlighting. These groups can be linked to the
" core identifiers like any other language.
"
" *Note*: each of these identifiers can add a lang-specific suffix to style those groups
" as they apply to particular languages. For ex, `@boolean.python ThemeRed` would style
" Python booleans red, while the lang-agnostic `@boolean` definition remains.
" - Plugin-oriented identifiers (e.g., SpellBad, ErrorFloat): these are groups mostly core
" to vim/nvim, but often appear only in the context of plugins or certain modules (like
" LSP). For instance, ErrorFloat styles floating windows that might be drawn by nvim's
" built-in LSP hover info.
" 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: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 = "#b42219"
let g:base16_gui08 = "#b42219"
let s:gui09 = "#905201"
let g:base16_gui09 = "#905201"
let s:gui0A = "#6a6535"
@ -39,10 +61,10 @@ 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:gui0F = "#b42219"
let g:base16_gui0F = "#b42219"
let s:grey = "#5f6469"
let s:grey = "#808080"
" Terminal color definitions
let s:cterm00 = "00"
@ -81,22 +103,22 @@ 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_0 = "#dedede"
let g:terminal_color_1 = "#b42219"
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_7 = "#3a3a3a"
let g:terminal_color_8 = "#aeaeae"
let g:terminal_color_9 = "#b42219"
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_15 = "#222222"
let g:terminal_color_background = g:terminal_color_0
let g:terminal_color_foreground = g:terminal_color_5
@ -107,22 +129,22 @@ if has("nvim")
elseif has("terminal")
let g:terminal_ansi_colors = [
\ "#c8ced5",
\ "#b52119",
\ "#dedede",
\ "#b42219",
\ "#377242",
\ "#6a6535",
\ "#3860ac",
\ "#3860ac",
\ "#377242",
\ "#2a2e33",
\ "#999fa5",
\ "#b52119",
\ "#3a3a3a",
\ "#aeaeae",
\ "#b42219",
\ "#377242",
\ "#6a6535",
\ "#3860ac",
\ "#3860ac",
\ "#377242",
\ "#12161b",
\ "#222222",
\ ]
endif
@ -199,7 +221,25 @@ call <sid>hi("ThemeFg3", s:gui04, "", s:cterm04, "", "", "")
call <sid>hi("ThemeFg2", s:gui05, "", s:cterm05, "", "", "")
call <sid>hi("ThemeFg1", s:gui06, "", s:cterm06, "", "", "")
call <sid>hi("ThemeFg0", s:gui07, "", s:cterm07, "", "", "")
"
call <sid>hi("ThemeBg0bold", s:gui00, "", s:cterm00, "", "bold", "")
call <sid>hi("ThemeBg1bold", s:gui01, "", s:cterm01, "", "bold", "")
call <sid>hi("ThemeBg2bold", s:gui02, "", s:cterm02, "", "bold", "")
call <sid>hi("ThemeBg3bold", s:gui03, "", s:cterm03, "", "bold", "")
call <sid>hi("ThemeFg3bold", s:gui04, "", s:cterm04, "", "bold", "")
call <sid>hi("ThemeFg2bold", s:gui05, "", s:cterm05, "", "bold", "")
call <sid>hi("ThemeFg1bold", s:gui06, "", s:cterm06, "", "bold", "")
call <sid>hi("ThemeFg0bold", s:gui07, "", s:cterm07, "", "bold", "")
call <sid>hi("ThemeBg0Italic", s:gui00, "", s:cterm00, "", "italic", "")
call <sid>hi("ThemeBg1Italic", s:gui01, "", s:cterm01, "", "italic", "")
call <sid>hi("ThemeBg2Italic", s:gui02, "", s:cterm02, "", "italic", "")
call <sid>hi("ThemeBg3Italic", s:gui03, "", s:cterm03, "", "italic", "")
call <sid>hi("ThemeFg3Italic", s:gui04, "", s:cterm04, "", "italic", "")
call <sid>hi("ThemeFg2Italic", s:gui05, "", s:cterm05, "", "italic", "")
call <sid>hi("ThemeFg1Italic", s:gui06, "", s:cterm06, "", "italic", "")
call <sid>hi("ThemeFg0Italic", s:gui07, "", s:cterm07, "", "italic", "")
call <sid>hi("ThemeRed", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("ThemeOrange", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("ThemeYellow", s:gui0A, "", s:cterm0A, "", "", "")
@ -209,6 +249,15 @@ call <sid>hi("ThemeBlue", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("ThemeViolet", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("ThemeMagenta", s:gui0F, "", s:cterm0F, "", "", "")
call <sid>hi("ThemeRedNone", s:gui08, "", s:cterm08, "", "NONE", "")
call <sid>hi("ThemeOrangeNone", s:gui09, "", s:cterm09, "", "NONE", "")
call <sid>hi("ThemeYellowNone", s:gui0A, "", s:cterm0A, "", "NONE", "")
call <sid>hi("ThemeGreenNone", s:gui0B, "", s:cterm0B, "", "NONE", "")
call <sid>hi("ThemeCyanNone", s:gui0C, "", s:cterm0C, "", "NONE", "")
call <sid>hi("ThemeBlueNone", s:gui0D, "", s:cterm0D, "", "NONE", "")
call <sid>hi("ThemeVioletNone", s:gui0E, "", s:cterm0E, "", "NONE", "")
call <sid>hi("ThemeMagentaNone", s:gui0F, "", s:cterm0F, "", "NONE", "")
call <sid>hi("ThemeRedBold", s:gui08, "", s:cterm08, "", "bold", "")
call <sid>hi("ThemeOrangeBold", s:gui09, "", s:cterm09, "", "bold", "")
call <sid>hi("ThemeYellowBold", s:gui0A, "", s:cterm0A, "", "bold", "")
@ -227,22 +276,33 @@ call <sid>hi("ThemeBlueItalic", s:gui0D, "", s:cterm0D, "", "italic", "")
call <sid>hi("ThemeVioletItalic", s:gui0E, "", s:cterm0E, "", "italic", "")
call <sid>hi("ThemeMagentaItalic", s:gui0F, "", s:cterm0F, "", "italic", "")
call <sid>hi("ThemeRedBoldItalic", s:gui08, "", s:cterm08, "", "bold,italic", "")
call <sid>hi("ThemeOrangeBoldItalic", s:gui09, "", s:cterm09, "", "bold,italic", "")
call <sid>hi("ThemeYellowBoldItalic", s:gui0A, "", s:cterm0A, "", "bold,italic", "")
call <sid>hi("ThemeGreenBoldItalic", s:gui0B, "", s:cterm0B, "", "bold,italic", "")
call <sid>hi("ThemeCyanBoldItalic", s:gui0C, "", s:cterm0C, "", "bold,italic", "")
call <sid>hi("ThemeBlueBoldItalic", s:gui0D, "", s:cterm0D, "", "bold,italic", "")
call <sid>hi("ThemeVioletBoldItalic", s:gui0E, "", s:cterm0E, "", "bold,italic", "")
call <sid>hi("ThemeMagentaBoldItalic", s:gui0F, "", s:cterm0F, "", "bold,italic", "")
call <sid>hi("ThemeGrey", s:grey, "", s:cterm03, "", "", "")
call <sid>hi("ThemeGreyItalic", s:grey, "", s:cterm03, "", "italic", "")
" Vim editor colors
call <sid>hi("Normal", s:gui05, s:guibg, s:cterm05, s:ctermbg, "", "")
call <sid>hi("Bold", "", "", "", "", "bold", "")
call <sid>hi("Italic", "", "", "", "", "italic", "")
call <sid>hi("BoldItalic", "", "", "", "", "italic,bold", "")
call <sid>hi("Normal", s:gui05, s:guibg, s:cterm05, s:ctermbg, "", "")
call <sid>hi("Debug", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("Directory", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("Error", s:guibg, s:gui08, s:ctermbg, s:cterm08, "", "")
call <sid>hi("ErrorMsg", s:gui08, s:guibg, s:cterm08, s:ctermbg, "", "")
call <sid>hi("Exception", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("FoldColumn", s:gui03, s:guibg, s:cterm03, s:ctermbg, "", "")
call <sid>hi("Folded", s:gui02, s:guibg, s:cterm02, s:ctermbg, "", "")
call <sid>hi("Folded", s:gui03, s:gui01, s:cterm02, s:ctermbg, "", "")
call <sid>hi("IncSearch", s:gui01, s:gui09, s:cterm01, s:cterm09, "none", "")
call <sid>hi("Italic", "", "", "", "", "italic", "")
call <sid>hi("Macro", s:gui0C, "", s:cterm0C, "", "", "")
call <sid>hi("MatchParen", "", s:gui03, "", s:cterm03, "", "")
call <sid>hi("ModeMsg", s:gui0B, "", s:cterm0B, "", "", "")
@ -258,7 +318,10 @@ call <sid>hi("VisualNOS", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("WarningMsg", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("WildMenu", s:guibg, s:gui06, s:ctermbg, s:cterm05, "", "")
call <sid>hi("Title", s:gui0D, "", s:cterm0D, "", "none", "")
call <sid>hi("Conceal", s:gui0D, s:guibg, s:cterm0D, s:ctermbg, "", "")
"call <sid>hi("Conceal", s:gui0D, s:guibg, s:cterm0D, s:ctermbg, "", "")
hi! link Conceal ThemeBlue
call <sid>hi("Cursor", s:gui05, s:guibg, "", "", "inverse", "")
call <sid>hi("NonText", s:gui03, "", s:cterm03, "", "", "")
call <sid>hi("Whitespace", s:gui03, "", s:cterm03, "", "", "")
@ -270,7 +333,7 @@ call <sid>hi("VertSplit", s:gui01, s:guibg, s:cterm01, s:ctermbg, "none", ""
call <sid>hi("ColorColumn", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("CursorColumn", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("CursorLine", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("CursorLineNr", s:gui04, s:gui01, s:cterm04, s:cterm01, "bold", "")
call <sid>hi("CursorLineNr", s:gui04, s:gui00, s:cterm04, s:cterm01, "", "")
call <sid>hi("QuickFixLine", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("PMenu", s:gui06, s:gui01, s:cterm06, s:cterm01, "none", "")
call <sid>hi("PMenuSel", s:gui06, s:gui02, s:cterm06, s:cterm02, "", "")
@ -281,27 +344,21 @@ call <sid>hi("TabLineFill", s:gui03, s:gui01, s:cterm03, s:cterm01, "none", ""
call <sid>hi("TabLineSel", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "none", "")
" Standard syntax
call <sid>hi("Define", s:gui0E, "", s:cterm0E, "", "none", "")
call <sid>hi("Identifier", s:gui06, "", s:cterm05, "", "none", "")
call <sid>hi("Keyword", s:gui0D, "", s:cterm0E, "", "none", "")
call <sid>hi("Todo", s:gui08, s:guibg, s:cterm08, s:ctermbg, "italic", "")
hi! link Boolean ThemeOrange
hi! link Character ThemeRed
"call <sid>hi("Comment", s:gui03, "", s:cterm03, "", "italic", "")
hi! link Comment ThemeGreyItalic
hi! link Conditional ThemeRed
hi! link Constant ThemeOrange
call <sid>hi("Define", s:gui0E, "", s:cterm0E, "", "none", "")
hi! link Delimiter ThemeFg1
if has("patch-8.0.1038")
call <sid>hi("Deprecated", "", "", "", "", "strikethrough", "")
endif
hi! link Float ThemeOrange
hi! link Function ThemeBlue
call <sid>hi("Identifier", s:gui06, "", s:cterm05, "", "none", "")
hi! link Include ThemeBlue
hi! link Constant ThemeOrange
call <sid>hi("Keyword", s:gui0E, "", s:cterm0E, "", "none", "")
hi! link Label ThemeOrange
hi! link Number ThemeOrange
hi! link Operator ThemeYellow
@ -314,101 +371,145 @@ hi! link StorageClass ThemeOrange
hi! link String ThemeGreen
hi! link Structure ThemeOrange
hi! link Tag ThemeOrange
call <sid>hi("Todo", s:gui08, s:guibg, s:cterm08, s:ctermbg, "italic", "")
call <sid>hi("Type", s:gui0A, "", s:cterm0A, "", "none", "")
hi! link Type ThemeYellow
hi! link Typedef ThemeOrange
" Treesitter
if has("nvim-0.8.0")
call <sid>hi("@field", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@property", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@namespace", s:gui06, "", s:cterm05, "", "italic", "")
call <sid>hi("@variable.builtin", s:gui06, "", s:cterm05, "", "italic", "")
call <sid>hi("@text.reference", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@text.uri", s:gui08, "", s:cterm08, "", "italic", "")
hi! link @field ThemeRed
hi! link @property ThemeRed
hi! link @namespace ThemeFg1Italic
hi! link @variable.builtin ThemeFg1Italic
hi! link @variable ThemeFg2
hi! link @conceal ThemeBlue
" Annotations & Attributes
call <sid>hi("@annotation", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@attribute", s:gui0D, "", s:cterm0D, "", "", "")
hi! link @text.uri ThemeRedItalic
hi! link @text.reference ThemeRed
" Booleans, Characters & Comments
call <sid>hi("@boolean", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@character", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@character.special", s:gui0F, "", s:cterm0F, "", "", "")
call <sid>hi("@comment", s:gui03, "", s:cterm03, "", "", "")
hi! link @annotation ThemeViolet
hi! link @attribute ThemeBlue
" Conditionals, Constants & Debugging
call <sid>hi("@keyword.conditional", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@constant", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@constant.builtin", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@constant.macro", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@keyword.debug", s:gui08, "", s:cterm08, "", "", "")
hi! link @boolean ThemeOrange
hi! link @character ThemeRed
hi! link @character.special ThemeMagenta
hi! link @comment Comment
" Directives & Exceptions
call <sid>hi("@keyword.directive.define", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@keyword.exception", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @constant ThemeBlue
hi! link @constant.builtin ThemeBlue
" Floats & Functions
call <sid>hi("@number.float", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@function", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@function.builtin", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@function.call", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@function.macro", s:gui08, "", s:cterm08, "", "", "")
hi! link @constant.macro ThemeRed
" Imports, Operators & Returns
call <sid>hi("@keyword.import", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@keyword.coroutine", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@keyword.operator", s:gui06, "", s:cterm05, "", "", "")
call <sid>hi("@keyword.return", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @keyword.directive.define ThemeViolet
hi! link @keyword.exception ThemeRed
" Methods & Namespaces
call <sid>hi("@function.method", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@function.method.call", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@namespace.builtin", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @comment.error ThemeRed
hi! link @number.float ThemeRed
hi! link @keyword.function ThemeRed
" Numbers & Directives
call <sid>hi("@none", s:gui06, "", s:cterm05, "", "", "")
call <sid>hi("@number", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@keyword.directive", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @function ThemeBlue
hi! link @function.builtin ThemeBlue
hi! link @function.call ThemeBlue
hi! link @function.macro ThemeRed
hi! link @function.method ThemeBlue
hi! link @function.method.call ThemeBlue
" Repeats, Storage & Strings
call <sid>hi("@keyword.repeat", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@keyword.storage", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@string", s:gui0B, "", s:cterm0B, "", "", "")
hi! link @keyword.debug ThemeRed
hi! link @keyword.conditional ThemeRed
hi! link @keyword.import ThemeViolet
hi! link @keyword.coroutine ThemeViolet
hi! link @keyword.operator ThemeYellow
hi! link @keyword.directive ThemeViolet
hi! link @keyword.repeat ThemeViolet
hi! link @keyword.storage ThemeViolet
hi! link @keyword.return ThemeRed
" Tags & Markup
call <sid>hi("@markup.link.label", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.link.label.symbol", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@tag", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@tag.attribute", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@tag.delimiter", s:gui0F, "", s:cterm0F, "", "", "")
hi! link @constructor ThemeBlue
hi! link @namespace.builtin ThemeViolet
" More Markup
call <sid>hi("@markup", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.environment", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.environment.name", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.raw", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@markup.math", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.strong", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.emphasis", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.strikethrough", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.underline", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.heading", s:gui0D, "", s:cterm0D, "", "", "")
hi! link @none ThemeFg1
hi! link @number ThemeOrange
hi! link @string ThemeGreen
" Comments & Types
call <sid>hi("@comment.note", s:gui03, "", s:cterm03, "", "", "")
call <sid>hi("@comment.error", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@comment.hint", s:gui0B, "", s:cterm0B, "", "", "")
call <sid>hi("@comment.info", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@comment.warning", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@comment.todo", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.link.url", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@type", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@type.definition", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@type.qualifier", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @tag ThemeRed
hi! link @tag.delimiter ThemeViolet
hi! link @tag.attribute ThemeYellow
" affects markdown
hi! link @markup ThemeYellow
hi! link @markup.raw ThemeGreen
hi! link @markup.raw.block.lang ThemeFg2Bold
hi! link @markup.raw.block.marker ThemeRed
"call <sid>hi("@markup.raw.block.lang", s:gui08, "#1e0000", "", s:ctermbg, "", "")
hi! link @markup.list ThemeBlue
hi! link @markup.quote ThemeGrey
hi! link @markup.link ThemeYellow " borders
hi! link @markup.link.text ThemeBlue
hi! link @markup.link.label ThemeYellow
hi! link @markup.link.url ThemeYellow
hi! link @markup.link.dest ThemeFg3
hi! link @markup.link.wiki ThemeYellow
hi! link @markup.link.wiki.text ThemeBlue
hi! link @markup.link.wiki.label ThemeYellow
"hi! link @markup.link.label.symbol ThemeGreen
"hi! link markdownWikiLink ThemeViolet
"
hi! link @markup.environment ThemeYellow
hi! link @markup.environment.name ThemeYellow
hi! link @markup.math ThemeYellow
hi! link @punctuation.delimiter.latex ThemeOrange
hi! link @markup.strong Bold
hi! link @markup.emphasis Bold
hi! link @markup.strikethrough ThemeYellow
hi! link @markup.underline ThemeYellow
hi! link @comment.info ThemeBlue
hi! link @comment.todo ThemeYellow
hi! link @comment.note ThemeBg3
hi! link @comment.hint ThemeGreen
hi! link @comment.warning ThemeOrange
hi! link @type ThemeYellow
hi! link @type.builtin ThemeOrange
hi! link @type.definition ThemeViolet
hi! link @type.qualifier ThemeViolet
" Markdown
" hi! link @spell.markdown ThemeFg3
"call <sid>hi("@markup.heading.marker", s:gui08, "", "", s:ctermbg, "bold", "")
"hi! link @markup.heading ThemeRed
hi! link @markup.heading.marker ThemeOrange
hi! link @markup.heading.title ThemeRed "Italic
" set this for a strong background
"call <sid>hi("@markup.heading.title", s:gui08, "#440503", "", s:ctermbg, "italic", "")
hi! link @markup.heading.title.1 Bold
hi! link @markup.heading.title.3 Italic
"hi! link @markup.heading.4.title Italic
" YAML
hi! link @string.yaml ThemeBlue
hi! link @punctuation.delimiter.yaml ThemeGreen
hi! link @property.yaml ThemeFg2
" Diff
hi! link @diff.minus ThemeRed
hi! link @diff.plus ThemeGreen
call <sid>hi("TreesitterContext", "", s:gui00, "", "", "", "")
"hi TreesitterContextLineNumberBottom gui=underline guisp=Gray
"call <sid>hi("TreesitterContextBottom", "", "", "", "", "underline", s:gui02)
call <sid>hi("TreesitterContextSeparator", s:gui03, "", "", "", "", "")
"call <sid>hi("TreesitterContextLineNumberBottom", "", "", "", "", "underline", s:gui02)
endif
" Standard highlights to be used by plugins
@ -433,6 +534,7 @@ call <sid>hi("WarningFloat", s:gui09, s:gui01, s:cterm09, s:cterm01, "", "")
call <sid>hi("InfoFloat", s:gui0D, s:gui01, s:cterm0D, s:cterm01, "", "")
call <sid>hi("HintFloat", s:gui0C, s:gui01, s:cterm0C, s:cterm01, "", "")
call <sid>hi("OkFloat", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "")
call <sid>hi("NormalFloat", s:gui05, s:gui01, s:cterm05, s:cterm01, "", "")
call <sid>hi("ErrorHighlight", "", "", s:ctermbg, s:cterm08, "underline", s:gui08)
call <sid>hi("WarningHighlight", "", "", s:ctermbg, s:cterm09, "underline", s:gui09)
@ -449,6 +551,62 @@ call <sid>hi("ReferenceText", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "", "")
call <sid>hi("ReferenceRead", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "", "")
call <sid>hi("ReferenceWrite", s:gui01, s:gui08, s:cterm01, s:cterm08, "", "")
" 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
" "
" LANGUAGES
" "
" C
call <sid>hi("cOperator", s:gui0C, "", s:cterm0C, "", "", "")
call <sid>hi("cPreCondit", s:gui0E, "", s:cterm0E, "", "", "")
@ -728,8 +886,8 @@ call <sid>hi("phpMethodsVar", s:gui0C, "", s:cterm0C, "", "", "")
" hi! link pythonBuiltinObj ThemeCyan
" hi! link pythonBuiltinFunc ThemeGreen
" hi! link pythonFunction Function
hi! link pythonDecorator ThemeYellow
hi! link pythonDecoratorName ThemeYellow
" hi! link pythonDecorator ThemeYellow
" hi! link pythonDecoratorName ThemeYellow
" hi! link pythonTripleQuotes ThemeGreenItalic
" hi! link pythonInclude ThemeBlue
" hi! link pythonImport ThemeBlue
@ -777,58 +935,6 @@ call <sid>hi("StartifySelect", s:gui0C, "", s:cterm0C, "", "", "")
call <sid>hi("StartifySlash", s:gui03, "", s:cterm03, "", "", "")
call <sid>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 <sid>hi("javaOperator", s:gui0D, "", s:cterm0D, "", "", "")
@ -864,12 +970,18 @@ hi! link markdownUrlTitleDelimiter ThemeGreen
hi! link markdownLink ThemeGreen
hi! link markdownWikiLink ThemeViolet
hi! link markdownUrl ThemeOrange
"hi! link markdownUrl ThemeOrange
hi! link markdownUrl ThemeRed
hi! link markdownUrlProtocol ThemeGreenItalic
hi! link markdownInlineUrl ThemeOrange
hi! link markdownLinkText ThemeViolet
hi! link markdownIdDeclaration markdownLinkText
hi! link pandocAtxHeader ThemeRed
hi! link pandocAtxStart ThemeOrange
"call s:HL('markdownItalic', s:fg3, s:none, s:italic)
"call s:HL('markdownLinkText', s:gray, s:none, s:underline)
@ -880,3 +992,4 @@ delf <sid>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

View File

@ -7,28 +7,50 @@
" - `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.
"
" There are several kinds of syntax identifiers:
"
" - Vim/editor related (e.g., Normal, Folded): these control colors of central Vim
" elements, like whitespace, bold text, the foldcolumn, etc
" - Generic syntax identifiers (e.g., Boolean, Conditional): these are key groups for
" syntax elements that various language syntax files link to. For instance, Python
" syntax files might have specific patterns that match function keywords like "def," and
" the resulting syntax region can be highlighted by linking it to the core "Function"
" highlight identifier.
" - Treesitter-based identifiers (e.g., @variable, @boolean): highlight groups for
" treesitter-based syntax highlighting, which can replace regex-based matching when
" enabled for richer (and often faster) highlighting. These groups can be linked to the
" core identifiers like any other language.
"
" *Note*: each of these identifiers can add a lang-specific suffix to style those groups
" as they apply to particular languages. For ex, `@boolean.python ThemeRed` would style
" Python booleans red, while the lang-agnostic `@boolean` definition remains.
" - Plugin-oriented identifiers (e.g., SpellBad, ErrorFloat): these are groups mostly core
" to vim/nvim, but often appear only in the context of plugins or certain modules (like
" LSP). For instance, ErrorFloat styles floating windows that might be drawn by nvim's
" built-in LSP hover info.
" 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:gui00 = "#22221c"
let g:base16_gui00 = "#22221c"
let s:gui01 = "#2f2e28"
let g:base16_gui01 = "#2f2e28"
let s:gui02 = "#3b3b34"
let g:base16_gui02 = "#3b3b34"
let s:gui03 = "#484841"
let g:base16_gui03 = "#484841"
let s:gui04 = "#afaea7"
let g:base16_gui04 = "#afaea7"
let s:gui05 = "#bfbeb6"
let g:base16_gui05 = "#bfbeb6"
let s:gui06 = "#cfcec6"
let g:base16_gui06 = "#cfcec6"
let s:gui07 = "#dfded6"
let g:base16_gui07 = "#dfded6"
let s:gui08 = "#e95949"
let g:base16_gui08 = "#e95949"
let s:gui09 = "#ca791c"
let g:base16_gui09 = "#ca791c"
let s:gui09 = "#c97920"
let g:base16_gui09 = "#c97920"
let s:gui0A = "#989250"
let g:base16_gui0A = "#989250"
let s:gui0B = "#5da268"
@ -42,7 +64,7 @@ let g:base16_gui0E = "#658ed9"
let s:gui0F = "#e95949"
let g:base16_gui0F = "#e95949"
let s:grey = "#7a827f"
let s:grey = "#72726b"
" Terminal color definitions
let s:cterm00 = "00"
@ -81,22 +103,22 @@ let g:base16_cterm0F = "14"
" Neovim terminal colours
if has("nvim")
let g:terminal_color_0 = "#1d2321"
let g:terminal_color_0 = "#22221c"
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_7 = "#bfbeb6"
let g:terminal_color_8 = "#484841"
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_15 = "#dfded6"
let g:terminal_color_background = g:terminal_color_0
let g:terminal_color_foreground = g:terminal_color_5
@ -107,22 +129,22 @@ if has("nvim")
elseif has("terminal")
let g:terminal_ansi_colors = [
\ "#1d2321",
\ "#22221c",
\ "#e95949",
\ "#5da268",
\ "#989250",
\ "#658ed9",
\ "#658ed9",
\ "#5da268",
\ "#b7c0bc",
\ "#424a47",
\ "#bfbeb6",
\ "#484841",
\ "#e95949",
\ "#5da268",
\ "#989250",
\ "#658ed9",
\ "#658ed9",
\ "#5da268",
\ "#d7e0dd",
\ "#dfded6",
\ ]
endif
@ -199,7 +221,25 @@ call <sid>hi("ThemeFg3", s:gui04, "", s:cterm04, "", "", "")
call <sid>hi("ThemeFg2", s:gui05, "", s:cterm05, "", "", "")
call <sid>hi("ThemeFg1", s:gui06, "", s:cterm06, "", "", "")
call <sid>hi("ThemeFg0", s:gui07, "", s:cterm07, "", "", "")
"
call <sid>hi("ThemeBg0bold", s:gui00, "", s:cterm00, "", "bold", "")
call <sid>hi("ThemeBg1bold", s:gui01, "", s:cterm01, "", "bold", "")
call <sid>hi("ThemeBg2bold", s:gui02, "", s:cterm02, "", "bold", "")
call <sid>hi("ThemeBg3bold", s:gui03, "", s:cterm03, "", "bold", "")
call <sid>hi("ThemeFg3bold", s:gui04, "", s:cterm04, "", "bold", "")
call <sid>hi("ThemeFg2bold", s:gui05, "", s:cterm05, "", "bold", "")
call <sid>hi("ThemeFg1bold", s:gui06, "", s:cterm06, "", "bold", "")
call <sid>hi("ThemeFg0bold", s:gui07, "", s:cterm07, "", "bold", "")
call <sid>hi("ThemeBg0Italic", s:gui00, "", s:cterm00, "", "italic", "")
call <sid>hi("ThemeBg1Italic", s:gui01, "", s:cterm01, "", "italic", "")
call <sid>hi("ThemeBg2Italic", s:gui02, "", s:cterm02, "", "italic", "")
call <sid>hi("ThemeBg3Italic", s:gui03, "", s:cterm03, "", "italic", "")
call <sid>hi("ThemeFg3Italic", s:gui04, "", s:cterm04, "", "italic", "")
call <sid>hi("ThemeFg2Italic", s:gui05, "", s:cterm05, "", "italic", "")
call <sid>hi("ThemeFg1Italic", s:gui06, "", s:cterm06, "", "italic", "")
call <sid>hi("ThemeFg0Italic", s:gui07, "", s:cterm07, "", "italic", "")
call <sid>hi("ThemeRed", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("ThemeOrange", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("ThemeYellow", s:gui0A, "", s:cterm0A, "", "", "")
@ -209,6 +249,15 @@ call <sid>hi("ThemeBlue", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("ThemeViolet", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("ThemeMagenta", s:gui0F, "", s:cterm0F, "", "", "")
call <sid>hi("ThemeRedNone", s:gui08, "", s:cterm08, "", "NONE", "")
call <sid>hi("ThemeOrangeNone", s:gui09, "", s:cterm09, "", "NONE", "")
call <sid>hi("ThemeYellowNone", s:gui0A, "", s:cterm0A, "", "NONE", "")
call <sid>hi("ThemeGreenNone", s:gui0B, "", s:cterm0B, "", "NONE", "")
call <sid>hi("ThemeCyanNone", s:gui0C, "", s:cterm0C, "", "NONE", "")
call <sid>hi("ThemeBlueNone", s:gui0D, "", s:cterm0D, "", "NONE", "")
call <sid>hi("ThemeVioletNone", s:gui0E, "", s:cterm0E, "", "NONE", "")
call <sid>hi("ThemeMagentaNone", s:gui0F, "", s:cterm0F, "", "NONE", "")
call <sid>hi("ThemeRedBold", s:gui08, "", s:cterm08, "", "bold", "")
call <sid>hi("ThemeOrangeBold", s:gui09, "", s:cterm09, "", "bold", "")
call <sid>hi("ThemeYellowBold", s:gui0A, "", s:cterm0A, "", "bold", "")
@ -227,22 +276,33 @@ call <sid>hi("ThemeBlueItalic", s:gui0D, "", s:cterm0D, "", "italic", "")
call <sid>hi("ThemeVioletItalic", s:gui0E, "", s:cterm0E, "", "italic", "")
call <sid>hi("ThemeMagentaItalic", s:gui0F, "", s:cterm0F, "", "italic", "")
call <sid>hi("ThemeRedBoldItalic", s:gui08, "", s:cterm08, "", "bold,italic", "")
call <sid>hi("ThemeOrangeBoldItalic", s:gui09, "", s:cterm09, "", "bold,italic", "")
call <sid>hi("ThemeYellowBoldItalic", s:gui0A, "", s:cterm0A, "", "bold,italic", "")
call <sid>hi("ThemeGreenBoldItalic", s:gui0B, "", s:cterm0B, "", "bold,italic", "")
call <sid>hi("ThemeCyanBoldItalic", s:gui0C, "", s:cterm0C, "", "bold,italic", "")
call <sid>hi("ThemeBlueBoldItalic", s:gui0D, "", s:cterm0D, "", "bold,italic", "")
call <sid>hi("ThemeVioletBoldItalic", s:gui0E, "", s:cterm0E, "", "bold,italic", "")
call <sid>hi("ThemeMagentaBoldItalic", s:gui0F, "", s:cterm0F, "", "bold,italic", "")
call <sid>hi("ThemeGrey", s:grey, "", s:cterm03, "", "", "")
call <sid>hi("ThemeGreyItalic", s:grey, "", s:cterm03, "", "italic", "")
" Vim editor colors
call <sid>hi("Normal", s:gui05, s:guibg, s:cterm05, s:ctermbg, "", "")
call <sid>hi("Bold", "", "", "", "", "bold", "")
call <sid>hi("Italic", "", "", "", "", "italic", "")
call <sid>hi("BoldItalic", "", "", "", "", "italic,bold", "")
call <sid>hi("Normal", s:gui05, s:guibg, s:cterm05, s:ctermbg, "", "")
call <sid>hi("Debug", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("Directory", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("Error", s:guibg, s:gui08, s:ctermbg, s:cterm08, "", "")
call <sid>hi("ErrorMsg", s:gui08, s:guibg, s:cterm08, s:ctermbg, "", "")
call <sid>hi("Exception", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("FoldColumn", s:gui03, s:guibg, s:cterm03, s:ctermbg, "", "")
call <sid>hi("Folded", s:gui02, s:guibg, s:cterm02, s:ctermbg, "", "")
call <sid>hi("Folded", s:gui03, s:gui01, s:cterm02, s:ctermbg, "", "")
call <sid>hi("IncSearch", s:gui01, s:gui09, s:cterm01, s:cterm09, "none", "")
call <sid>hi("Italic", "", "", "", "", "italic", "")
call <sid>hi("Macro", s:gui0C, "", s:cterm0C, "", "", "")
call <sid>hi("MatchParen", "", s:gui03, "", s:cterm03, "", "")
call <sid>hi("ModeMsg", s:gui0B, "", s:cterm0B, "", "", "")
@ -258,7 +318,10 @@ call <sid>hi("VisualNOS", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("WarningMsg", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("WildMenu", s:guibg, s:gui06, s:ctermbg, s:cterm05, "", "")
call <sid>hi("Title", s:gui0D, "", s:cterm0D, "", "none", "")
call <sid>hi("Conceal", s:gui0D, s:guibg, s:cterm0D, s:ctermbg, "", "")
"call <sid>hi("Conceal", s:gui0D, s:guibg, s:cterm0D, s:ctermbg, "", "")
hi! link Conceal ThemeBlue
call <sid>hi("Cursor", s:gui05, s:guibg, "", "", "inverse", "")
call <sid>hi("NonText", s:gui03, "", s:cterm03, "", "", "")
call <sid>hi("Whitespace", s:gui03, "", s:cterm03, "", "", "")
@ -270,7 +333,7 @@ call <sid>hi("VertSplit", s:gui01, s:guibg, s:cterm01, s:ctermbg, "none", ""
call <sid>hi("ColorColumn", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("CursorColumn", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("CursorLine", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("CursorLineNr", s:gui04, s:gui01, s:cterm04, s:cterm01, "bold", "")
call <sid>hi("CursorLineNr", s:gui04, s:gui00, s:cterm04, s:cterm01, "", "")
call <sid>hi("QuickFixLine", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("PMenu", s:gui06, s:gui01, s:cterm06, s:cterm01, "none", "")
call <sid>hi("PMenuSel", s:gui06, s:gui02, s:cterm06, s:cterm02, "", "")
@ -281,27 +344,21 @@ call <sid>hi("TabLineFill", s:gui03, s:gui01, s:cterm03, s:cterm01, "none", ""
call <sid>hi("TabLineSel", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "none", "")
" Standard syntax
call <sid>hi("Define", s:gui0E, "", s:cterm0E, "", "none", "")
call <sid>hi("Identifier", s:gui06, "", s:cterm05, "", "none", "")
call <sid>hi("Keyword", s:gui0D, "", s:cterm0E, "", "none", "")
call <sid>hi("Todo", s:gui08, s:guibg, s:cterm08, s:ctermbg, "italic", "")
hi! link Boolean ThemeOrange
hi! link Character ThemeRed
"call <sid>hi("Comment", s:gui03, "", s:cterm03, "", "italic", "")
hi! link Comment ThemeGreyItalic
hi! link Conditional ThemeRed
hi! link Constant ThemeOrange
call <sid>hi("Define", s:gui0E, "", s:cterm0E, "", "none", "")
hi! link Delimiter ThemeFg1
if has("patch-8.0.1038")
call <sid>hi("Deprecated", "", "", "", "", "strikethrough", "")
endif
hi! link Float ThemeOrange
hi! link Function ThemeBlue
call <sid>hi("Identifier", s:gui06, "", s:cterm05, "", "none", "")
hi! link Include ThemeBlue
hi! link Constant ThemeOrange
call <sid>hi("Keyword", s:gui0E, "", s:cterm0E, "", "none", "")
hi! link Label ThemeOrange
hi! link Number ThemeOrange
hi! link Operator ThemeYellow
@ -314,101 +371,145 @@ hi! link StorageClass ThemeOrange
hi! link String ThemeGreen
hi! link Structure ThemeOrange
hi! link Tag ThemeOrange
call <sid>hi("Todo", s:gui08, s:guibg, s:cterm08, s:ctermbg, "italic", "")
call <sid>hi("Type", s:gui0A, "", s:cterm0A, "", "none", "")
hi! link Type ThemeYellow
hi! link Typedef ThemeOrange
" Treesitter
if has("nvim-0.8.0")
call <sid>hi("@field", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@property", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@namespace", s:gui06, "", s:cterm05, "", "italic", "")
call <sid>hi("@variable.builtin", s:gui06, "", s:cterm05, "", "italic", "")
call <sid>hi("@text.reference", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@text.uri", s:gui08, "", s:cterm08, "", "italic", "")
hi! link @field ThemeRed
hi! link @property ThemeRed
hi! link @namespace ThemeFg1Italic
hi! link @variable.builtin ThemeFg1Italic
hi! link @variable ThemeFg2
hi! link @conceal ThemeBlue
" Annotations & Attributes
call <sid>hi("@annotation", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@attribute", s:gui0D, "", s:cterm0D, "", "", "")
hi! link @text.uri ThemeRedItalic
hi! link @text.reference ThemeRed
" Booleans, Characters & Comments
call <sid>hi("@boolean", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@character", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@character.special", s:gui0F, "", s:cterm0F, "", "", "")
call <sid>hi("@comment", s:gui03, "", s:cterm03, "", "", "")
hi! link @annotation ThemeViolet
hi! link @attribute ThemeBlue
" Conditionals, Constants & Debugging
call <sid>hi("@keyword.conditional", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@constant", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@constant.builtin", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@constant.macro", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@keyword.debug", s:gui08, "", s:cterm08, "", "", "")
hi! link @boolean ThemeOrange
hi! link @character ThemeRed
hi! link @character.special ThemeMagenta
hi! link @comment Comment
" Directives & Exceptions
call <sid>hi("@keyword.directive.define", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@keyword.exception", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @constant ThemeBlue
hi! link @constant.builtin ThemeBlue
" Floats & Functions
call <sid>hi("@number.float", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@function", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@function.builtin", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@function.call", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@function.macro", s:gui08, "", s:cterm08, "", "", "")
hi! link @constant.macro ThemeRed
" Imports, Operators & Returns
call <sid>hi("@keyword.import", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@keyword.coroutine", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@keyword.operator", s:gui06, "", s:cterm05, "", "", "")
call <sid>hi("@keyword.return", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @keyword.directive.define ThemeViolet
hi! link @keyword.exception ThemeRed
" Methods & Namespaces
call <sid>hi("@function.method", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@function.method.call", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@namespace.builtin", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @comment.error ThemeRed
hi! link @number.float ThemeRed
hi! link @keyword.function ThemeRed
" Numbers & Directives
call <sid>hi("@none", s:gui06, "", s:cterm05, "", "", "")
call <sid>hi("@number", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@keyword.directive", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @function ThemeBlue
hi! link @function.builtin ThemeBlue
hi! link @function.call ThemeBlue
hi! link @function.macro ThemeRed
hi! link @function.method ThemeBlue
hi! link @function.method.call ThemeBlue
" Repeats, Storage & Strings
call <sid>hi("@keyword.repeat", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@keyword.storage", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@string", s:gui0B, "", s:cterm0B, "", "", "")
hi! link @keyword.debug ThemeRed
hi! link @keyword.conditional ThemeRed
hi! link @keyword.import ThemeViolet
hi! link @keyword.coroutine ThemeViolet
hi! link @keyword.operator ThemeYellow
hi! link @keyword.directive ThemeViolet
hi! link @keyword.repeat ThemeViolet
hi! link @keyword.storage ThemeViolet
hi! link @keyword.return ThemeRed
" Tags & Markup
call <sid>hi("@markup.link.label", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.link.label.symbol", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@tag", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@tag.attribute", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@tag.delimiter", s:gui0F, "", s:cterm0F, "", "", "")
hi! link @constructor ThemeBlue
hi! link @namespace.builtin ThemeViolet
" More Markup
call <sid>hi("@markup", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.environment", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.environment.name", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.raw", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@markup.math", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.strong", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.emphasis", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.strikethrough", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.underline", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.heading", s:gui0D, "", s:cterm0D, "", "", "")
hi! link @none ThemeFg1
hi! link @number ThemeOrange
hi! link @string ThemeGreen
" Comments & Types
call <sid>hi("@comment.note", s:gui03, "", s:cterm03, "", "", "")
call <sid>hi("@comment.error", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@comment.hint", s:gui0B, "", s:cterm0B, "", "", "")
call <sid>hi("@comment.info", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@comment.warning", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@comment.todo", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.link.url", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@type", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@type.definition", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@type.qualifier", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @tag ThemeRed
hi! link @tag.delimiter ThemeViolet
hi! link @tag.attribute ThemeYellow
" affects markdown
hi! link @markup ThemeYellow
hi! link @markup.raw ThemeGreen
hi! link @markup.raw.block.lang ThemeFg2Bold
hi! link @markup.raw.block.marker ThemeRed
"call <sid>hi("@markup.raw.block.lang", s:gui08, "#1e0000", "", s:ctermbg, "", "")
hi! link @markup.list ThemeBlue
hi! link @markup.quote ThemeGrey
hi! link @markup.link ThemeYellow " borders
hi! link @markup.link.text ThemeBlue
hi! link @markup.link.label ThemeYellow
hi! link @markup.link.url ThemeYellow
hi! link @markup.link.dest ThemeFg3
hi! link @markup.link.wiki ThemeYellow
hi! link @markup.link.wiki.text ThemeBlue
hi! link @markup.link.wiki.label ThemeYellow
"hi! link @markup.link.label.symbol ThemeGreen
"hi! link markdownWikiLink ThemeViolet
"
hi! link @markup.environment ThemeYellow
hi! link @markup.environment.name ThemeYellow
hi! link @markup.math ThemeYellow
hi! link @punctuation.delimiter.latex ThemeOrange
hi! link @markup.strong Bold
hi! link @markup.emphasis Bold
hi! link @markup.strikethrough ThemeYellow
hi! link @markup.underline ThemeYellow
hi! link @comment.info ThemeBlue
hi! link @comment.todo ThemeYellow
hi! link @comment.note ThemeBg3
hi! link @comment.hint ThemeGreen
hi! link @comment.warning ThemeOrange
hi! link @type ThemeYellow
hi! link @type.builtin ThemeOrange
hi! link @type.definition ThemeViolet
hi! link @type.qualifier ThemeViolet
" Markdown
" hi! link @spell.markdown ThemeFg3
"call <sid>hi("@markup.heading.marker", s:gui08, "", "", s:ctermbg, "bold", "")
"hi! link @markup.heading ThemeRed
hi! link @markup.heading.marker ThemeOrange
hi! link @markup.heading.title ThemeRed "Italic
" set this for a strong background
"call <sid>hi("@markup.heading.title", s:gui08, "#440503", "", s:ctermbg, "italic", "")
hi! link @markup.heading.title.1 Bold
hi! link @markup.heading.title.3 Italic
"hi! link @markup.heading.4.title Italic
" YAML
hi! link @string.yaml ThemeBlue
hi! link @punctuation.delimiter.yaml ThemeGreen
hi! link @property.yaml ThemeFg2
" Diff
hi! link @diff.minus ThemeRed
hi! link @diff.plus ThemeGreen
call <sid>hi("TreesitterContext", "", s:gui00, "", "", "", "")
"hi TreesitterContextLineNumberBottom gui=underline guisp=Gray
"call <sid>hi("TreesitterContextBottom", "", "", "", "", "underline", s:gui02)
call <sid>hi("TreesitterContextSeparator", s:gui03, "", "", "", "", "")
"call <sid>hi("TreesitterContextLineNumberBottom", "", "", "", "", "underline", s:gui02)
endif
" Standard highlights to be used by plugins
@ -433,6 +534,7 @@ call <sid>hi("WarningFloat", s:gui09, s:gui01, s:cterm09, s:cterm01, "", "")
call <sid>hi("InfoFloat", s:gui0D, s:gui01, s:cterm0D, s:cterm01, "", "")
call <sid>hi("HintFloat", s:gui0C, s:gui01, s:cterm0C, s:cterm01, "", "")
call <sid>hi("OkFloat", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "")
call <sid>hi("NormalFloat", s:gui05, s:gui01, s:cterm05, s:cterm01, "", "")
call <sid>hi("ErrorHighlight", "", "", s:ctermbg, s:cterm08, "underline", s:gui08)
call <sid>hi("WarningHighlight", "", "", s:ctermbg, s:cterm09, "underline", s:gui09)
@ -449,6 +551,62 @@ call <sid>hi("ReferenceText", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "", "")
call <sid>hi("ReferenceRead", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "", "")
call <sid>hi("ReferenceWrite", s:gui01, s:gui08, s:cterm01, s:cterm08, "", "")
" 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
" "
" LANGUAGES
" "
" C
call <sid>hi("cOperator", s:gui0C, "", s:cterm0C, "", "", "")
call <sid>hi("cPreCondit", s:gui0E, "", s:cterm0E, "", "", "")
@ -728,8 +886,8 @@ call <sid>hi("phpMethodsVar", s:gui0C, "", s:cterm0C, "", "", "")
" hi! link pythonBuiltinObj ThemeCyan
" hi! link pythonBuiltinFunc ThemeGreen
" hi! link pythonFunction Function
hi! link pythonDecorator ThemeYellow
hi! link pythonDecoratorName ThemeYellow
" hi! link pythonDecorator ThemeYellow
" hi! link pythonDecoratorName ThemeYellow
" hi! link pythonTripleQuotes ThemeGreenItalic
" hi! link pythonInclude ThemeBlue
" hi! link pythonImport ThemeBlue
@ -777,58 +935,6 @@ call <sid>hi("StartifySelect", s:gui0C, "", s:cterm0C, "", "", "")
call <sid>hi("StartifySlash", s:gui03, "", s:cterm03, "", "", "")
call <sid>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 <sid>hi("javaOperator", s:gui0D, "", s:cterm0D, "", "", "")
@ -864,12 +970,18 @@ hi! link markdownUrlTitleDelimiter ThemeGreen
hi! link markdownLink ThemeGreen
hi! link markdownWikiLink ThemeViolet
hi! link markdownUrl ThemeOrange
"hi! link markdownUrl ThemeOrange
hi! link markdownUrl ThemeRed
hi! link markdownUrlProtocol ThemeGreenItalic
hi! link markdownInlineUrl ThemeOrange
hi! link markdownLinkText ThemeViolet
hi! link markdownIdDeclaration markdownLinkText
hi! link pandocAtxHeader ThemeRed
hi! link pandocAtxStart ThemeOrange
"call s:HL('markdownItalic', s:fg3, s:none, s:italic)
"call s:HL('markdownLinkText', s:gray, s:none, s:underline)
@ -880,3 +992,4 @@ delf <sid>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

View File

@ -0,0 +1,995 @@
" 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.
"
" There are several kinds of syntax identifiers:
"
" - Vim/editor related (e.g., Normal, Folded): these control colors of central Vim
" elements, like whitespace, bold text, the foldcolumn, etc
" - Generic syntax identifiers (e.g., Boolean, Conditional): these are key groups for
" syntax elements that various language syntax files link to. For instance, Python
" syntax files might have specific patterns that match function keywords like "def," and
" the resulting syntax region can be highlighted by linking it to the core "Function"
" highlight identifier.
" - Treesitter-based identifiers (e.g., @variable, @boolean): highlight groups for
" treesitter-based syntax highlighting, which can replace regex-based matching when
" enabled for richer (and often faster) highlighting. These groups can be linked to the
" core identifiers like any other language.
"
" *Note*: each of these identifiers can add a lang-specific suffix to style those groups
" as they apply to particular languages. For ex, `@boolean.python ThemeRed` would style
" Python booleans red, while the lang-agnostic `@boolean` definition remains.
" - Plugin-oriented identifiers (e.g., SpellBad, ErrorFloat): these are groups mostly core
" to vim/nvim, but often appear only in the context of plugins or certain modules (like
" LSP). For instance, ErrorFloat styles floating windows that might be drawn by nvim's
" built-in LSP hover info.
" GUI color definitions
let s:gui00 = "#dfded6"
let g:base16_gui00 = "#dfded6"
let s:gui01 = "#cfcec6"
let g:base16_gui01 = "#cfcec6"
let s:gui02 = "#bfbeb6"
let g:base16_gui02 = "#bfbeb6"
let s:gui03 = "#afaea7"
let g:base16_gui03 = "#afaea7"
let s:gui04 = "#484841"
let g:base16_gui04 = "#484841"
let s:gui05 = "#3b3b34"
let g:base16_gui05 = "#3b3b34"
let s:gui06 = "#2f2e28"
let g:base16_gui06 = "#2f2e28"
let s:gui07 = "#22221c"
let g:base16_gui07 = "#22221c"
let s:gui08 = "#b42219"
let g:base16_gui08 = "#b42219"
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 = "#b42219"
let g:base16_gui0F = "#b42219"
let s:grey = "#818179"
" 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 = "#dfded6"
let g:terminal_color_1 = "#b42219"
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 = "#3b3b34"
let g:terminal_color_8 = "#afaea7"
let g:terminal_color_9 = "#b42219"
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 = "#22221c"
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 = [
\ "#dfded6",
\ "#b42219",
\ "#377242",
\ "#6a6535",
\ "#3860ac",
\ "#3860ac",
\ "#377242",
\ "#3b3b34",
\ "#afaea7",
\ "#b42219",
\ "#377242",
\ "#6a6535",
\ "#3860ac",
\ "#3860ac",
\ "#377242",
\ "#22221c",
\ ]
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 <sid>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 <sid>hi("ThemeBg0", s:gui00, "", s:cterm00, "", "", "")
call <sid>hi("ThemeBg1", s:gui01, "", s:cterm01, "", "", "")
call <sid>hi("ThemeBg2", s:gui02, "", s:cterm02, "", "", "")
call <sid>hi("ThemeBg3", s:gui03, "", s:cterm03, "", "", "")
call <sid>hi("ThemeFg3", s:gui04, "", s:cterm04, "", "", "")
call <sid>hi("ThemeFg2", s:gui05, "", s:cterm05, "", "", "")
call <sid>hi("ThemeFg1", s:gui06, "", s:cterm06, "", "", "")
call <sid>hi("ThemeFg0", s:gui07, "", s:cterm07, "", "", "")
call <sid>hi("ThemeBg0bold", s:gui00, "", s:cterm00, "", "bold", "")
call <sid>hi("ThemeBg1bold", s:gui01, "", s:cterm01, "", "bold", "")
call <sid>hi("ThemeBg2bold", s:gui02, "", s:cterm02, "", "bold", "")
call <sid>hi("ThemeBg3bold", s:gui03, "", s:cterm03, "", "bold", "")
call <sid>hi("ThemeFg3bold", s:gui04, "", s:cterm04, "", "bold", "")
call <sid>hi("ThemeFg2bold", s:gui05, "", s:cterm05, "", "bold", "")
call <sid>hi("ThemeFg1bold", s:gui06, "", s:cterm06, "", "bold", "")
call <sid>hi("ThemeFg0bold", s:gui07, "", s:cterm07, "", "bold", "")
call <sid>hi("ThemeBg0Italic", s:gui00, "", s:cterm00, "", "italic", "")
call <sid>hi("ThemeBg1Italic", s:gui01, "", s:cterm01, "", "italic", "")
call <sid>hi("ThemeBg2Italic", s:gui02, "", s:cterm02, "", "italic", "")
call <sid>hi("ThemeBg3Italic", s:gui03, "", s:cterm03, "", "italic", "")
call <sid>hi("ThemeFg3Italic", s:gui04, "", s:cterm04, "", "italic", "")
call <sid>hi("ThemeFg2Italic", s:gui05, "", s:cterm05, "", "italic", "")
call <sid>hi("ThemeFg1Italic", s:gui06, "", s:cterm06, "", "italic", "")
call <sid>hi("ThemeFg0Italic", s:gui07, "", s:cterm07, "", "italic", "")
call <sid>hi("ThemeRed", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("ThemeOrange", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("ThemeYellow", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("ThemeGreen", s:gui0B, "", s:cterm0B, "", "", "")
call <sid>hi("ThemeCyan", s:gui0C, "", s:cterm0C, "", "", "")
call <sid>hi("ThemeBlue", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("ThemeViolet", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("ThemeMagenta", s:gui0F, "", s:cterm0F, "", "", "")
call <sid>hi("ThemeRedNone", s:gui08, "", s:cterm08, "", "NONE", "")
call <sid>hi("ThemeOrangeNone", s:gui09, "", s:cterm09, "", "NONE", "")
call <sid>hi("ThemeYellowNone", s:gui0A, "", s:cterm0A, "", "NONE", "")
call <sid>hi("ThemeGreenNone", s:gui0B, "", s:cterm0B, "", "NONE", "")
call <sid>hi("ThemeCyanNone", s:gui0C, "", s:cterm0C, "", "NONE", "")
call <sid>hi("ThemeBlueNone", s:gui0D, "", s:cterm0D, "", "NONE", "")
call <sid>hi("ThemeVioletNone", s:gui0E, "", s:cterm0E, "", "NONE", "")
call <sid>hi("ThemeMagentaNone", s:gui0F, "", s:cterm0F, "", "NONE", "")
call <sid>hi("ThemeRedBold", s:gui08, "", s:cterm08, "", "bold", "")
call <sid>hi("ThemeOrangeBold", s:gui09, "", s:cterm09, "", "bold", "")
call <sid>hi("ThemeYellowBold", s:gui0A, "", s:cterm0A, "", "bold", "")
call <sid>hi("ThemeGreenBold", s:gui0B, "", s:cterm0B, "", "bold", "")
call <sid>hi("ThemeCyanBold", s:gui0C, "", s:cterm0C, "", "bold", "")
call <sid>hi("ThemeBlueBold", s:gui0D, "", s:cterm0D, "", "bold", "")
call <sid>hi("ThemeVioletBold", s:gui0E, "", s:cterm0E, "", "bold", "")
call <sid>hi("ThemeMagentaBold", s:gui0F, "", s:cterm0F, "", "bold", "")
call <sid>hi("ThemeRedItalic", s:gui08, "", s:cterm08, "", "italic", "")
call <sid>hi("ThemeOrangeItalic", s:gui09, "", s:cterm09, "", "italic", "")
call <sid>hi("ThemeYellowItalic", s:gui0A, "", s:cterm0A, "", "italic", "")
call <sid>hi("ThemeGreenItalic", s:gui0B, "", s:cterm0B, "", "italic", "")
call <sid>hi("ThemeCyanItalic", s:gui0C, "", s:cterm0C, "", "italic", "")
call <sid>hi("ThemeBlueItalic", s:gui0D, "", s:cterm0D, "", "italic", "")
call <sid>hi("ThemeVioletItalic", s:gui0E, "", s:cterm0E, "", "italic", "")
call <sid>hi("ThemeMagentaItalic", s:gui0F, "", s:cterm0F, "", "italic", "")
call <sid>hi("ThemeRedBoldItalic", s:gui08, "", s:cterm08, "", "bold,italic", "")
call <sid>hi("ThemeOrangeBoldItalic", s:gui09, "", s:cterm09, "", "bold,italic", "")
call <sid>hi("ThemeYellowBoldItalic", s:gui0A, "", s:cterm0A, "", "bold,italic", "")
call <sid>hi("ThemeGreenBoldItalic", s:gui0B, "", s:cterm0B, "", "bold,italic", "")
call <sid>hi("ThemeCyanBoldItalic", s:gui0C, "", s:cterm0C, "", "bold,italic", "")
call <sid>hi("ThemeBlueBoldItalic", s:gui0D, "", s:cterm0D, "", "bold,italic", "")
call <sid>hi("ThemeVioletBoldItalic", s:gui0E, "", s:cterm0E, "", "bold,italic", "")
call <sid>hi("ThemeMagentaBoldItalic", s:gui0F, "", s:cterm0F, "", "bold,italic", "")
call <sid>hi("ThemeGrey", s:grey, "", s:cterm03, "", "", "")
call <sid>hi("ThemeGreyItalic", s:grey, "", s:cterm03, "", "italic", "")
" Vim editor colors
call <sid>hi("Bold", "", "", "", "", "bold", "")
call <sid>hi("Italic", "", "", "", "", "italic", "")
call <sid>hi("BoldItalic", "", "", "", "", "italic,bold", "")
call <sid>hi("Normal", s:gui05, s:guibg, s:cterm05, s:ctermbg, "", "")
call <sid>hi("Debug", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("Directory", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("Error", s:guibg, s:gui08, s:ctermbg, s:cterm08, "", "")
call <sid>hi("ErrorMsg", s:gui08, s:guibg, s:cterm08, s:ctermbg, "", "")
call <sid>hi("Exception", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("FoldColumn", s:gui03, s:guibg, s:cterm03, s:ctermbg, "", "")
call <sid>hi("Folded", s:gui03, s:gui01, s:cterm02, s:ctermbg, "", "")
call <sid>hi("IncSearch", s:gui01, s:gui09, s:cterm01, s:cterm09, "none", "")
call <sid>hi("Macro", s:gui0C, "", s:cterm0C, "", "", "")
call <sid>hi("MatchParen", "", s:gui03, "", s:cterm03, "", "")
call <sid>hi("ModeMsg", s:gui0B, "", s:cterm0B, "", "", "")
call <sid>hi("MoreMsg", s:gui0B, "", s:cterm0B, "", "", "")
call <sid>hi("Question", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("Search", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "", "")
call <sid>hi("Substitute", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "none", "")
call <sid>hi("SpecialKey", s:gui03, "", s:cterm03, "", "", "")
call <sid>hi("TooLong", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("Underlined", "", "", "", "", "underline", "fg")
call <sid>hi("Visual", "", s:gui02, "", s:cterm02, "", "")
call <sid>hi("VisualNOS", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("WarningMsg", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("WildMenu", s:guibg, s:gui06, s:ctermbg, s:cterm05, "", "")
call <sid>hi("Title", s:gui0D, "", s:cterm0D, "", "none", "")
"call <sid>hi("Conceal", s:gui0D, s:guibg, s:cterm0D, s:ctermbg, "", "")
hi! link Conceal ThemeBlue
call <sid>hi("Cursor", s:gui05, s:guibg, "", "", "inverse", "")
call <sid>hi("NonText", s:gui03, "", s:cterm03, "", "", "")
call <sid>hi("Whitespace", s:gui03, "", s:cterm03, "", "", "")
call <sid>hi("LineNr", s:gui03, s:guibg, s:cterm03, s:ctermbg, "", "")
call <sid>hi("SignColumn", s:gui03, s:guibg, s:cterm03, s:ctermbg, "", "")
call <sid>hi("StatusLine", s:gui07, s:gui01, s:cterm07, s:cterm01, "none", "")
call <sid>hi("StatusLineNC", s:gui06, s:gui01, s:cterm05, s:cterm01, "none", "")
call <sid>hi("VertSplit", s:gui01, s:guibg, s:cterm01, s:ctermbg, "none", "")
call <sid>hi("ColorColumn", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("CursorColumn", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("CursorLine", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("CursorLineNr", s:gui04, s:gui00, s:cterm04, s:cterm01, "", "")
call <sid>hi("QuickFixLine", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("PMenu", s:gui06, s:gui01, s:cterm06, s:cterm01, "none", "")
call <sid>hi("PMenuSel", s:gui06, s:gui02, s:cterm06, s:cterm02, "", "")
call <sid>hi("PMenuSbar", "", s:gui03, "", s:cterm03, "", "")
call <sid>hi("PMenuThumb", "", s:gui04, "", s:cterm04, "", "")
call <sid>hi("TabLine", s:gui03, s:gui01, s:cterm03, s:cterm01, "none", "")
call <sid>hi("TabLineFill", s:gui03, s:gui01, s:cterm03, s:cterm01, "none", "")
call <sid>hi("TabLineSel", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "none", "")
" Standard syntax
call <sid>hi("Define", s:gui0E, "", s:cterm0E, "", "none", "")
call <sid>hi("Identifier", s:gui06, "", s:cterm05, "", "none", "")
call <sid>hi("Keyword", s:gui0D, "", s:cterm0E, "", "none", "")
call <sid>hi("Todo", s:gui08, s:guibg, s:cterm08, s:ctermbg, "italic", "")
hi! link Boolean ThemeOrange
hi! link Character ThemeRed
hi! link Comment ThemeGreyItalic
hi! link Conditional ThemeRed
hi! link Constant ThemeOrange
hi! link Delimiter ThemeFg1
hi! link Float ThemeOrange
hi! link Function ThemeBlue
hi! link Include ThemeBlue
hi! link Constant ThemeOrange
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
hi! link Type ThemeYellow
hi! link Typedef ThemeOrange
" Treesitter
if has("nvim-0.8.0")
hi! link @field ThemeRed
hi! link @property ThemeRed
hi! link @namespace ThemeFg1Italic
hi! link @variable.builtin ThemeFg1Italic
hi! link @variable ThemeFg2
hi! link @conceal ThemeBlue
hi! link @text.uri ThemeRedItalic
hi! link @text.reference ThemeRed
hi! link @annotation ThemeViolet
hi! link @attribute ThemeBlue
hi! link @boolean ThemeOrange
hi! link @character ThemeRed
hi! link @character.special ThemeMagenta
hi! link @comment Comment
hi! link @constant ThemeBlue
hi! link @constant.builtin ThemeBlue
hi! link @constant.macro ThemeRed
hi! link @keyword.directive.define ThemeViolet
hi! link @keyword.exception ThemeRed
hi! link @comment.error ThemeRed
hi! link @number.float ThemeRed
hi! link @keyword.function ThemeRed
hi! link @function ThemeBlue
hi! link @function.builtin ThemeBlue
hi! link @function.call ThemeBlue
hi! link @function.macro ThemeRed
hi! link @function.method ThemeBlue
hi! link @function.method.call ThemeBlue
hi! link @keyword.debug ThemeRed
hi! link @keyword.conditional ThemeRed
hi! link @keyword.import ThemeViolet
hi! link @keyword.coroutine ThemeViolet
hi! link @keyword.operator ThemeYellow
hi! link @keyword.directive ThemeViolet
hi! link @keyword.repeat ThemeViolet
hi! link @keyword.storage ThemeViolet
hi! link @keyword.return ThemeRed
hi! link @constructor ThemeBlue
hi! link @namespace.builtin ThemeViolet
hi! link @none ThemeFg1
hi! link @number ThemeOrange
hi! link @string ThemeGreen
hi! link @tag ThemeRed
hi! link @tag.delimiter ThemeViolet
hi! link @tag.attribute ThemeYellow
" affects markdown
hi! link @markup ThemeYellow
hi! link @markup.raw ThemeGreen
hi! link @markup.raw.block.lang ThemeFg2Bold
hi! link @markup.raw.block.marker ThemeRed
"call <sid>hi("@markup.raw.block.lang", s:gui08, "#1e0000", "", s:ctermbg, "", "")
hi! link @markup.list ThemeBlue
hi! link @markup.quote ThemeGrey
hi! link @markup.link ThemeYellow " borders
hi! link @markup.link.text ThemeBlue
hi! link @markup.link.label ThemeYellow
hi! link @markup.link.url ThemeYellow
hi! link @markup.link.dest ThemeFg3
hi! link @markup.link.wiki ThemeYellow
hi! link @markup.link.wiki.text ThemeBlue
hi! link @markup.link.wiki.label ThemeYellow
"hi! link @markup.link.label.symbol ThemeGreen
"hi! link markdownWikiLink ThemeViolet
"
hi! link @markup.environment ThemeYellow
hi! link @markup.environment.name ThemeYellow
hi! link @markup.math ThemeYellow
hi! link @punctuation.delimiter.latex ThemeOrange
hi! link @markup.strong Bold
hi! link @markup.emphasis Bold
hi! link @markup.strikethrough ThemeYellow
hi! link @markup.underline ThemeYellow
hi! link @comment.info ThemeBlue
hi! link @comment.todo ThemeYellow
hi! link @comment.note ThemeBg3
hi! link @comment.hint ThemeGreen
hi! link @comment.warning ThemeOrange
hi! link @type ThemeYellow
hi! link @type.builtin ThemeOrange
hi! link @type.definition ThemeViolet
hi! link @type.qualifier ThemeViolet
" Markdown
" hi! link @spell.markdown ThemeFg3
"call <sid>hi("@markup.heading.marker", s:gui08, "", "", s:ctermbg, "bold", "")
"hi! link @markup.heading ThemeRed
hi! link @markup.heading.marker ThemeOrange
hi! link @markup.heading.title ThemeRed "Italic
" set this for a strong background
"call <sid>hi("@markup.heading.title", s:gui08, "#440503", "", s:ctermbg, "italic", "")
hi! link @markup.heading.title.1 Bold
hi! link @markup.heading.title.3 Italic
"hi! link @markup.heading.4.title Italic
" YAML
hi! link @string.yaml ThemeBlue
hi! link @punctuation.delimiter.yaml ThemeGreen
hi! link @property.yaml ThemeFg2
" Diff
hi! link @diff.minus ThemeRed
hi! link @diff.plus ThemeGreen
call <sid>hi("TreesitterContext", "", s:gui00, "", "", "", "")
"hi TreesitterContextLineNumberBottom gui=underline guisp=Gray
"call <sid>hi("TreesitterContextBottom", "", "", "", "", "underline", s:gui02)
call <sid>hi("TreesitterContextSeparator", s:gui03, "", "", "", "", "")
"call <sid>hi("TreesitterContextLineNumberBottom", "", "", "", "", "underline", s:gui02)
endif
" Standard highlights to be used by plugins
if has("patch-8.0.1038")
call <sid>hi("Deprecated", "", "", "", "", "strikethrough", "")
endif
call <sid>hi("SearchMatch", s:gui0C, "", s:cterm0C, "", "", "")
call <sid>hi("GitAddSign", s:gui0B, "", s:cterm0B, "", "", "")
call <sid>hi("GitChangeSign", s:gui04, "", s:cterm04, "", "", "")
call <sid>hi("GitDeleteSign", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("GitChangeDeleteSign", s:gui04, "", s:cterm04, "", "", "")
call <sid>hi("ErrorSign", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("WarningSign", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("InfoSign", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("HintSign", s:gui0C, "", s:cterm0C, "", "", "")
call <sid>hi("OkSign", s:gui0B, "", s:cterm0B, "", "", "")
call <sid>hi("ErrorFloat", s:gui08, s:gui01, s:cterm08, s:cterm01, "", "")
call <sid>hi("WarningFloat", s:gui09, s:gui01, s:cterm09, s:cterm01, "", "")
call <sid>hi("InfoFloat", s:gui0D, s:gui01, s:cterm0D, s:cterm01, "", "")
call <sid>hi("HintFloat", s:gui0C, s:gui01, s:cterm0C, s:cterm01, "", "")
call <sid>hi("OkFloat", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "")
call <sid>hi("NormalFloat", s:gui05, s:gui01, s:cterm05, s:cterm01, "", "")
call <sid>hi("ErrorHighlight", "", "", s:ctermbg, s:cterm08, "underline", s:gui08)
call <sid>hi("WarningHighlight", "", "", s:ctermbg, s:cterm09, "underline", s:gui09)
call <sid>hi("InfoHighlight", "", "", s:ctermbg, s:cterm0D, "underline", s:gui0D)
call <sid>hi("HintHighlight", "", "", s:ctermbg, s:cterm0C, "underline", s:gui0C)
call <sid>hi("OkHighlight", "", "", s:ctermbg, s:cterm0B, "underline", s:gui0B)
call <sid>hi("SpellBad", "", "", s:ctermbg, s:cterm08, "undercurl", s:gui08)
call <sid>hi("SpellLocal", "", "", s:ctermbg, s:cterm0C, "undercurl", s:gui0C)
call <sid>hi("SpellCap", "", "", s:ctermbg, s:cterm0D, "undercurl", s:gui0D)
call <sid>hi("SpellRare", "", "", s:ctermbg, s:cterm0E, "undercurl", s:gui0E)
call <sid>hi("ReferenceText", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "", "")
call <sid>hi("ReferenceRead", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "", "")
call <sid>hi("ReferenceWrite", s:gui01, s:gui08, s:cterm01, s:cterm08, "", "")
" 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
" "
" LANGUAGES
" "
" C
call <sid>hi("cOperator", s:gui0C, "", s:cterm0C, "", "", "")
call <sid>hi("cPreCondit", s:gui0E, "", s:cterm0E, "", "", "")
" C#
call <sid>hi("csClass", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("csAttribute", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("csModifier", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("csType", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("csUnspecifiedStatement", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("csContextualStatement", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>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 <sid>hi("CocHighlightRead", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "")
call <sid>hi("CocHighlightText", s:gui0A, s:gui01, s:cterm0A, s:cterm01, "", "")
call <sid>hi("CocHighlightWrite", s:gui08, s:gui01, s:cterm08, s:cterm01, "", "")
call <sid>hi("CocListMode", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "bold", "")
call <sid>hi("CocListPath", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "", "")
call <sid>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 <sid>hi("DiffAdd", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "")
call <sid>hi("DiffChange", s:gui06, s:gui01, s:cterm05, s:cterm01, "", "")
call <sid>hi("DiffDelete", s:gui02, s:guibg, s:cterm02, s:ctermbg, "", "")
call <sid>hi("DiffText", s:gui0D, s:gui01, s:cterm0D, s:cterm01, "", "")
call <sid>hi("DiffAdded", s:gui0B, s:guibg, s:cterm0B, s:ctermbg, "", "")
call <sid>hi("DiffFile", s:gui08, s:guibg, s:cterm08, s:ctermbg, "", "")
call <sid>hi("DiffNewFile", s:gui0B, s:guibg, s:cterm0B, s:ctermbg, "", "")
call <sid>hi("DiffLine", s:gui0D, s:guibg, s:cterm0D, s:ctermbg, "", "")
call <sid>hi("DiffRemoved", s:gui08, s:guibg, s:cterm08, s:ctermbg, "", "")
" Git
call <sid>hi("gitcommitOverflow", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("gitcommitSummary", s:gui0B, "", s:cterm0B, "", "", "")
call <sid>hi("gitcommitComment", s:gui03, "", s:cterm03, "", "", "")
call <sid>hi("gitcommitUntracked", s:gui03, "", s:cterm03, "", "", "")
call <sid>hi("gitcommitDiscarded", s:gui03, "", s:cterm03, "", "", "")
call <sid>hi("gitcommitSelected", s:gui03, "", s:cterm03, "", "", "")
call <sid>hi("gitcommitHeader", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("gitcommitSelectedType", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("gitcommitUnmergedType", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("gitcommitDiscardedType", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("gitcommitBranch", s:gui09, "", s:cterm09, "", "bold", "")
call <sid>hi("gitcommitUntrackedFile", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("gitcommitUnmergedFile", s:gui08, "", s:cterm08, "", "bold", "")
call <sid>hi("gitcommitDiscardedFile", s:gui08, "", s:cterm08, "", "bold", "")
call <sid>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 <sid>hi("@ibl.indent.char.1",s:gui01, "", s:cterm01, "", "", "")
endif
" HTML
call <sid>hi("htmlBold", s:gui07, "", s:cterm0A, "", "bold", "")
call <sid>hi("htmlItalic", s:gui06, "", s:cterm0E, "", "italic", "")
call <sid>hi("htmlEndTag", s:gui06, "", s:cterm05, "", "", "")
call <sid>hi("htmlTag", s:gui06, "", s:cterm05, "", "", "")
" JavaScript
call <sid>hi("javaScript", s:gui06, "", s:cterm05, "", "", "")
call <sid>hi("javaScriptBraces", s:gui06, "", s:cterm05, "", "", "")
call <sid>hi("javaScriptNumber", s:gui09, "", s:cterm09, "", "", "")
" pangloss/vim-javascript
call <sid>hi("jsOperator", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("jsStatement", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("jsReturn", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("jsThis", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("jsClassDefinition", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("jsFunction", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("jsFuncName", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("jsFuncCall", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("jsClassFuncName", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("jsClassMethodType", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("jsRegexpString", s:gui0C, "", s:cterm0C, "", "", "")
call <sid>hi("jsGlobalObjects", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("jsGlobalNodeObjects", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("jsExceptions", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("jsBuiltins", s:gui0A, "", s:cterm0A, "", "", "")
" Mail
call <sid>hi("mailQuoted1", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("mailQuoted2", s:gui0B, "", s:cterm0B, "", "", "")
call <sid>hi("mailQuoted3", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("mailQuoted4", s:gui0C, "", s:cterm0C, "", "", "")
call <sid>hi("mailQuoted5", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("mailQuoted6", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("mailURL", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("mailEmail", s:gui0D, "", s:cterm0D, "", "", "")
" Markdown
call <sid>hi("markdownCode", s:gui0B, "", s:cterm0B, "", "", "")
call <sid>hi("markdownError", s:gui06, s:guibg, s:cterm05, s:ctermbg, "", "")
call <sid>hi("markdownCodeBlock", s:gui0B, "", s:cterm0B, "", "", "")
call <sid>hi("markdownHeadingDelimiter", s:gui0D, "", s:cterm0D, "", "", "")
" Matchup
call <sid>hi("MatchWord", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "underline", "")
" NERDTree
call <sid>hi("NERDTreeDirSlash", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>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 <sid>hi("phpMemberSelector", s:gui06, "", s:cterm05, "", "", "")
call <sid>hi("phpComparison", s:gui06, "", s:cterm05, "", "", "")
call <sid>hi("phpParent", s:gui06, "", s:cterm05, "", "", "")
call <sid>hi("phpMethodsVar", s:gui0C, "", s:cterm0C, "", "", "")
" Python
"call <sid>hi("pythonOperator", s:gui0E, "", s:cterm0E, "", "", "")
"call <sid>hi("pythonRepeat", s:gui0E, "", s:cterm0E, "", "", "")
"call <sid>hi("pythonInclude", s:gui0E, "", s:cterm0E, "", "", "")
"call <sid>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 <sid>hi("rubyAttribute", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("rubyConstant", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("rubyInterpolationDelimiter", s:gui0F, "", s:cterm0F, "", "", "")
call <sid>hi("rubyRegexp", s:gui0C, "", s:cterm0C, "", "", "")
call <sid>hi("rubySymbol", s:gui0B, "", s:cterm0B, "", "", "")
call <sid>hi("rubyStringDelimiter", s:gui0B, "", s:cterm0B, "", "", "")
" SASS
call <sid>hi("sassidChar", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("sassClassChar", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("sassInclude", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("sassMixing", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("sassMixinName", s:gui0D, "", s:cterm0D, "", "", "")
" Signify
hi! link SignifySignAdd GitAddSign
hi! link SignifySignChange GitChangeSign
hi! link SignifySignDelete GitDeleteSign
" Startify
call <sid>hi("StartifyBracket", s:gui03, "", s:cterm03, "", "", "")
call <sid>hi("StartifyFile", s:gui07, "", s:cterm07, "", "", "")
call <sid>hi("StartifyFooter", s:gui03, "", s:cterm03, "", "", "")
call <sid>hi("StartifyHeader", s:gui0B, "", s:cterm0B, "", "", "")
call <sid>hi("StartifyNumber", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("StartifyPath", s:gui03, "", s:cterm03, "", "", "")
call <sid>hi("StartifySection", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("StartifySelect", s:gui0C, "", s:cterm0C, "", "", "")
call <sid>hi("StartifySlash", s:gui03, "", s:cterm03, "", "", "")
call <sid>hi("StartifySpecial", s:gui03, "", s:cterm03, "", "", "")
" Java
call <sid>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 markdownUrl ThemeRed
hi! link markdownUrlProtocol ThemeGreenItalic
hi! link markdownInlineUrl ThemeOrange
hi! link markdownLinkText ThemeViolet
hi! link markdownIdDeclaration markdownLinkText
hi! link pandocAtxHeader ThemeRed
hi! link pandocAtxStart ThemeOrange
"call s:HL('markdownItalic', s:fg3, s:none, s:italic)
"call s:HL('markdownLinkText', s:gray, s:none, s:underline)
" Remove functions
delf <sid>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

View File

@ -7,28 +7,50 @@
" - `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.
"
" There are several kinds of syntax identifiers:
"
" - Vim/editor related (e.g., Normal, Folded): these control colors of central Vim
" elements, like whitespace, bold text, the foldcolumn, etc
" - Generic syntax identifiers (e.g., Boolean, Conditional): these are key groups for
" syntax elements that various language syntax files link to. For instance, Python
" syntax files might have specific patterns that match function keywords like "def," and
" the resulting syntax region can be highlighted by linking it to the core "Function"
" highlight identifier.
" - Treesitter-based identifiers (e.g., @variable, @boolean): highlight groups for
" treesitter-based syntax highlighting, which can replace regex-based matching when
" enabled for richer (and often faster) highlighting. These groups can be linked to the
" core identifiers like any other language.
"
" *Note*: each of these identifiers can add a lang-specific suffix to style those groups
" as they apply to particular languages. For ex, `@boolean.python ThemeRed` would style
" Python booleans red, while the lang-agnostic `@boolean` definition remains.
" - Plugin-oriented identifiers (e.g., SpellBad, ErrorFloat): these are groups mostly core
" to vim/nvim, but often appear only in the context of plugins or certain modules (like
" LSP). For instance, ErrorFloat styles floating windows that might be drawn by nvim's
" built-in LSP hover info.
" 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:gui00 = "#2a2f2b"
let g:base16_gui00 = "#2a2f2b"
let s:gui01 = "#373c37"
let g:base16_gui01 = "#373c37"
let s:gui02 = "#444944"
let g:base16_gui02 = "#444944"
let s:gui03 = "#515752"
let g:base16_gui03 = "#515752"
let s:gui04 = "#b9c0ba"
let g:base16_gui04 = "#b9c0ba"
let s:gui05 = "#c9d0ca"
let g:base16_gui05 = "#c9d0ca"
let s:gui06 = "#d9e0da"
let g:base16_gui06 = "#d9e0da"
let s:gui07 = "#eaf1ea"
let g:base16_gui07 = "#eaf1ea"
let s:gui08 = "#f37060"
let g:base16_gui08 = "#f37060"
let s:gui09 = "#da8934"
let g:base16_gui09 = "#da8934"
let s:gui09 = "#d98937"
let g:base16_gui09 = "#d98937"
let s:gui0A = "#a7a15f"
let g:base16_gui0A = "#a7a15f"
let s:gui0B = "#6eb178"
@ -42,7 +64,7 @@ let g:base16_gui0E = "#799ee3"
let s:gui0F = "#f37060"
let g:base16_gui0F = "#f37060"
let s:grey = "#89918e"
let s:grey = "#7c827d"
" Terminal color definitions
let s:cterm00 = "00"
@ -81,22 +103,22 @@ let g:base16_cterm0F = "14"
" Neovim terminal colours
if has("nvim")
let g:terminal_color_0 = "#29302d"
let g:terminal_color_0 = "#2a2f2b"
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_7 = "#c9d0ca"
let g:terminal_color_8 = "#515752"
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_15 = "#eaf1ea"
let g:terminal_color_background = g:terminal_color_0
let g:terminal_color_foreground = g:terminal_color_5
@ -107,22 +129,22 @@ if has("nvim")
elseif has("terminal")
let g:terminal_ansi_colors = [
\ "#29302d",
\ "#2a2f2b",
\ "#f37060",
\ "#6eb178",
\ "#a7a15f",
\ "#799ee3",
\ "#799ee3",
\ "#6eb178",
\ "#c7d0cc",
\ "#505754",
\ "#c9d0ca",
\ "#515752",
\ "#f37060",
\ "#6eb178",
\ "#a7a15f",
\ "#799ee3",
\ "#799ee3",
\ "#6eb178",
\ "#e8f1ed",
\ "#eaf1ea",
\ ]
endif
@ -199,7 +221,25 @@ call <sid>hi("ThemeFg3", s:gui04, "", s:cterm04, "", "", "")
call <sid>hi("ThemeFg2", s:gui05, "", s:cterm05, "", "", "")
call <sid>hi("ThemeFg1", s:gui06, "", s:cterm06, "", "", "")
call <sid>hi("ThemeFg0", s:gui07, "", s:cterm07, "", "", "")
"
call <sid>hi("ThemeBg0bold", s:gui00, "", s:cterm00, "", "bold", "")
call <sid>hi("ThemeBg1bold", s:gui01, "", s:cterm01, "", "bold", "")
call <sid>hi("ThemeBg2bold", s:gui02, "", s:cterm02, "", "bold", "")
call <sid>hi("ThemeBg3bold", s:gui03, "", s:cterm03, "", "bold", "")
call <sid>hi("ThemeFg3bold", s:gui04, "", s:cterm04, "", "bold", "")
call <sid>hi("ThemeFg2bold", s:gui05, "", s:cterm05, "", "bold", "")
call <sid>hi("ThemeFg1bold", s:gui06, "", s:cterm06, "", "bold", "")
call <sid>hi("ThemeFg0bold", s:gui07, "", s:cterm07, "", "bold", "")
call <sid>hi("ThemeBg0Italic", s:gui00, "", s:cterm00, "", "italic", "")
call <sid>hi("ThemeBg1Italic", s:gui01, "", s:cterm01, "", "italic", "")
call <sid>hi("ThemeBg2Italic", s:gui02, "", s:cterm02, "", "italic", "")
call <sid>hi("ThemeBg3Italic", s:gui03, "", s:cterm03, "", "italic", "")
call <sid>hi("ThemeFg3Italic", s:gui04, "", s:cterm04, "", "italic", "")
call <sid>hi("ThemeFg2Italic", s:gui05, "", s:cterm05, "", "italic", "")
call <sid>hi("ThemeFg1Italic", s:gui06, "", s:cterm06, "", "italic", "")
call <sid>hi("ThemeFg0Italic", s:gui07, "", s:cterm07, "", "italic", "")
call <sid>hi("ThemeRed", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("ThemeOrange", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("ThemeYellow", s:gui0A, "", s:cterm0A, "", "", "")
@ -209,6 +249,15 @@ call <sid>hi("ThemeBlue", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("ThemeViolet", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("ThemeMagenta", s:gui0F, "", s:cterm0F, "", "", "")
call <sid>hi("ThemeRedNone", s:gui08, "", s:cterm08, "", "NONE", "")
call <sid>hi("ThemeOrangeNone", s:gui09, "", s:cterm09, "", "NONE", "")
call <sid>hi("ThemeYellowNone", s:gui0A, "", s:cterm0A, "", "NONE", "")
call <sid>hi("ThemeGreenNone", s:gui0B, "", s:cterm0B, "", "NONE", "")
call <sid>hi("ThemeCyanNone", s:gui0C, "", s:cterm0C, "", "NONE", "")
call <sid>hi("ThemeBlueNone", s:gui0D, "", s:cterm0D, "", "NONE", "")
call <sid>hi("ThemeVioletNone", s:gui0E, "", s:cterm0E, "", "NONE", "")
call <sid>hi("ThemeMagentaNone", s:gui0F, "", s:cterm0F, "", "NONE", "")
call <sid>hi("ThemeRedBold", s:gui08, "", s:cterm08, "", "bold", "")
call <sid>hi("ThemeOrangeBold", s:gui09, "", s:cterm09, "", "bold", "")
call <sid>hi("ThemeYellowBold", s:gui0A, "", s:cterm0A, "", "bold", "")
@ -227,22 +276,33 @@ call <sid>hi("ThemeBlueItalic", s:gui0D, "", s:cterm0D, "", "italic", "")
call <sid>hi("ThemeVioletItalic", s:gui0E, "", s:cterm0E, "", "italic", "")
call <sid>hi("ThemeMagentaItalic", s:gui0F, "", s:cterm0F, "", "italic", "")
call <sid>hi("ThemeRedBoldItalic", s:gui08, "", s:cterm08, "", "bold,italic", "")
call <sid>hi("ThemeOrangeBoldItalic", s:gui09, "", s:cterm09, "", "bold,italic", "")
call <sid>hi("ThemeYellowBoldItalic", s:gui0A, "", s:cterm0A, "", "bold,italic", "")
call <sid>hi("ThemeGreenBoldItalic", s:gui0B, "", s:cterm0B, "", "bold,italic", "")
call <sid>hi("ThemeCyanBoldItalic", s:gui0C, "", s:cterm0C, "", "bold,italic", "")
call <sid>hi("ThemeBlueBoldItalic", s:gui0D, "", s:cterm0D, "", "bold,italic", "")
call <sid>hi("ThemeVioletBoldItalic", s:gui0E, "", s:cterm0E, "", "bold,italic", "")
call <sid>hi("ThemeMagentaBoldItalic", s:gui0F, "", s:cterm0F, "", "bold,italic", "")
call <sid>hi("ThemeGrey", s:grey, "", s:cterm03, "", "", "")
call <sid>hi("ThemeGreyItalic", s:grey, "", s:cterm03, "", "italic", "")
" Vim editor colors
call <sid>hi("Normal", s:gui05, s:guibg, s:cterm05, s:ctermbg, "", "")
call <sid>hi("Bold", "", "", "", "", "bold", "")
call <sid>hi("Italic", "", "", "", "", "italic", "")
call <sid>hi("BoldItalic", "", "", "", "", "italic,bold", "")
call <sid>hi("Normal", s:gui05, s:guibg, s:cterm05, s:ctermbg, "", "")
call <sid>hi("Debug", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("Directory", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("Error", s:guibg, s:gui08, s:ctermbg, s:cterm08, "", "")
call <sid>hi("ErrorMsg", s:gui08, s:guibg, s:cterm08, s:ctermbg, "", "")
call <sid>hi("Exception", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("FoldColumn", s:gui03, s:guibg, s:cterm03, s:ctermbg, "", "")
call <sid>hi("Folded", s:gui02, s:guibg, s:cterm02, s:ctermbg, "", "")
call <sid>hi("Folded", s:gui03, s:gui01, s:cterm02, s:ctermbg, "", "")
call <sid>hi("IncSearch", s:gui01, s:gui09, s:cterm01, s:cterm09, "none", "")
call <sid>hi("Italic", "", "", "", "", "italic", "")
call <sid>hi("Macro", s:gui0C, "", s:cterm0C, "", "", "")
call <sid>hi("MatchParen", "", s:gui03, "", s:cterm03, "", "")
call <sid>hi("ModeMsg", s:gui0B, "", s:cterm0B, "", "", "")
@ -258,7 +318,10 @@ call <sid>hi("VisualNOS", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("WarningMsg", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("WildMenu", s:guibg, s:gui06, s:ctermbg, s:cterm05, "", "")
call <sid>hi("Title", s:gui0D, "", s:cterm0D, "", "none", "")
call <sid>hi("Conceal", s:gui0D, s:guibg, s:cterm0D, s:ctermbg, "", "")
"call <sid>hi("Conceal", s:gui0D, s:guibg, s:cterm0D, s:ctermbg, "", "")
hi! link Conceal ThemeBlue
call <sid>hi("Cursor", s:gui05, s:guibg, "", "", "inverse", "")
call <sid>hi("NonText", s:gui03, "", s:cterm03, "", "", "")
call <sid>hi("Whitespace", s:gui03, "", s:cterm03, "", "", "")
@ -270,7 +333,7 @@ call <sid>hi("VertSplit", s:gui01, s:guibg, s:cterm01, s:ctermbg, "none", ""
call <sid>hi("ColorColumn", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("CursorColumn", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("CursorLine", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("CursorLineNr", s:gui04, s:gui01, s:cterm04, s:cterm01, "bold", "")
call <sid>hi("CursorLineNr", s:gui04, s:gui00, s:cterm04, s:cterm01, "", "")
call <sid>hi("QuickFixLine", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("PMenu", s:gui06, s:gui01, s:cterm06, s:cterm01, "none", "")
call <sid>hi("PMenuSel", s:gui06, s:gui02, s:cterm06, s:cterm02, "", "")
@ -281,27 +344,21 @@ call <sid>hi("TabLineFill", s:gui03, s:gui01, s:cterm03, s:cterm01, "none", ""
call <sid>hi("TabLineSel", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "none", "")
" Standard syntax
call <sid>hi("Define", s:gui0E, "", s:cterm0E, "", "none", "")
call <sid>hi("Identifier", s:gui06, "", s:cterm05, "", "none", "")
call <sid>hi("Keyword", s:gui0D, "", s:cterm0E, "", "none", "")
call <sid>hi("Todo", s:gui08, s:guibg, s:cterm08, s:ctermbg, "italic", "")
hi! link Boolean ThemeOrange
hi! link Character ThemeRed
"call <sid>hi("Comment", s:gui03, "", s:cterm03, "", "italic", "")
hi! link Comment ThemeGreyItalic
hi! link Conditional ThemeRed
hi! link Constant ThemeOrange
call <sid>hi("Define", s:gui0E, "", s:cterm0E, "", "none", "")
hi! link Delimiter ThemeFg1
if has("patch-8.0.1038")
call <sid>hi("Deprecated", "", "", "", "", "strikethrough", "")
endif
hi! link Float ThemeOrange
hi! link Function ThemeBlue
call <sid>hi("Identifier", s:gui06, "", s:cterm05, "", "none", "")
hi! link Include ThemeBlue
hi! link Constant ThemeOrange
call <sid>hi("Keyword", s:gui0E, "", s:cterm0E, "", "none", "")
hi! link Label ThemeOrange
hi! link Number ThemeOrange
hi! link Operator ThemeYellow
@ -314,101 +371,145 @@ hi! link StorageClass ThemeOrange
hi! link String ThemeGreen
hi! link Structure ThemeOrange
hi! link Tag ThemeOrange
call <sid>hi("Todo", s:gui08, s:guibg, s:cterm08, s:ctermbg, "italic", "")
call <sid>hi("Type", s:gui0A, "", s:cterm0A, "", "none", "")
hi! link Type ThemeYellow
hi! link Typedef ThemeOrange
" Treesitter
if has("nvim-0.8.0")
call <sid>hi("@field", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@property", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@namespace", s:gui06, "", s:cterm05, "", "italic", "")
call <sid>hi("@variable.builtin", s:gui06, "", s:cterm05, "", "italic", "")
call <sid>hi("@text.reference", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@text.uri", s:gui08, "", s:cterm08, "", "italic", "")
hi! link @field ThemeRed
hi! link @property ThemeRed
hi! link @namespace ThemeFg1Italic
hi! link @variable.builtin ThemeFg1Italic
hi! link @variable ThemeFg2
hi! link @conceal ThemeBlue
" Annotations & Attributes
call <sid>hi("@annotation", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@attribute", s:gui0D, "", s:cterm0D, "", "", "")
hi! link @text.uri ThemeRedItalic
hi! link @text.reference ThemeRed
" Booleans, Characters & Comments
call <sid>hi("@boolean", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@character", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@character.special", s:gui0F, "", s:cterm0F, "", "", "")
call <sid>hi("@comment", s:gui03, "", s:cterm03, "", "", "")
hi! link @annotation ThemeViolet
hi! link @attribute ThemeBlue
" Conditionals, Constants & Debugging
call <sid>hi("@keyword.conditional", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@constant", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@constant.builtin", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@constant.macro", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@keyword.debug", s:gui08, "", s:cterm08, "", "", "")
hi! link @boolean ThemeOrange
hi! link @character ThemeRed
hi! link @character.special ThemeMagenta
hi! link @comment Comment
" Directives & Exceptions
call <sid>hi("@keyword.directive.define", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@keyword.exception", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @constant ThemeBlue
hi! link @constant.builtin ThemeBlue
" Floats & Functions
call <sid>hi("@number.float", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@function", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@function.builtin", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@function.call", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@function.macro", s:gui08, "", s:cterm08, "", "", "")
hi! link @constant.macro ThemeRed
" Imports, Operators & Returns
call <sid>hi("@keyword.import", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@keyword.coroutine", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@keyword.operator", s:gui06, "", s:cterm05, "", "", "")
call <sid>hi("@keyword.return", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @keyword.directive.define ThemeViolet
hi! link @keyword.exception ThemeRed
" Methods & Namespaces
call <sid>hi("@function.method", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@function.method.call", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@namespace.builtin", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @comment.error ThemeRed
hi! link @number.float ThemeRed
hi! link @keyword.function ThemeRed
" Numbers & Directives
call <sid>hi("@none", s:gui06, "", s:cterm05, "", "", "")
call <sid>hi("@number", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@keyword.directive", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @function ThemeBlue
hi! link @function.builtin ThemeBlue
hi! link @function.call ThemeBlue
hi! link @function.macro ThemeRed
hi! link @function.method ThemeBlue
hi! link @function.method.call ThemeBlue
" Repeats, Storage & Strings
call <sid>hi("@keyword.repeat", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@keyword.storage", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@string", s:gui0B, "", s:cterm0B, "", "", "")
hi! link @keyword.debug ThemeRed
hi! link @keyword.conditional ThemeRed
hi! link @keyword.import ThemeViolet
hi! link @keyword.coroutine ThemeViolet
hi! link @keyword.operator ThemeYellow
hi! link @keyword.directive ThemeViolet
hi! link @keyword.repeat ThemeViolet
hi! link @keyword.storage ThemeViolet
hi! link @keyword.return ThemeRed
" Tags & Markup
call <sid>hi("@markup.link.label", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.link.label.symbol", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@tag", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@tag.attribute", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@tag.delimiter", s:gui0F, "", s:cterm0F, "", "", "")
hi! link @constructor ThemeBlue
hi! link @namespace.builtin ThemeViolet
" More Markup
call <sid>hi("@markup", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.environment", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.environment.name", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.raw", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@markup.math", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.strong", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.emphasis", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.strikethrough", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.underline", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.heading", s:gui0D, "", s:cterm0D, "", "", "")
hi! link @none ThemeFg1
hi! link @number ThemeOrange
hi! link @string ThemeGreen
" Comments & Types
call <sid>hi("@comment.note", s:gui03, "", s:cterm03, "", "", "")
call <sid>hi("@comment.error", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@comment.hint", s:gui0B, "", s:cterm0B, "", "", "")
call <sid>hi("@comment.info", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@comment.warning", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@comment.todo", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.link.url", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@type", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@type.definition", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@type.qualifier", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @tag ThemeRed
hi! link @tag.delimiter ThemeViolet
hi! link @tag.attribute ThemeYellow
" affects markdown
hi! link @markup ThemeYellow
hi! link @markup.raw ThemeGreen
hi! link @markup.raw.block.lang ThemeFg2Bold
hi! link @markup.raw.block.marker ThemeRed
"call <sid>hi("@markup.raw.block.lang", s:gui08, "#1e0000", "", s:ctermbg, "", "")
hi! link @markup.list ThemeBlue
hi! link @markup.quote ThemeGrey
hi! link @markup.link ThemeYellow " borders
hi! link @markup.link.text ThemeBlue
hi! link @markup.link.label ThemeYellow
hi! link @markup.link.url ThemeYellow
hi! link @markup.link.dest ThemeFg3
hi! link @markup.link.wiki ThemeYellow
hi! link @markup.link.wiki.text ThemeBlue
hi! link @markup.link.wiki.label ThemeYellow
"hi! link @markup.link.label.symbol ThemeGreen
"hi! link markdownWikiLink ThemeViolet
"
hi! link @markup.environment ThemeYellow
hi! link @markup.environment.name ThemeYellow
hi! link @markup.math ThemeYellow
hi! link @punctuation.delimiter.latex ThemeOrange
hi! link @markup.strong Bold
hi! link @markup.emphasis Bold
hi! link @markup.strikethrough ThemeYellow
hi! link @markup.underline ThemeYellow
hi! link @comment.info ThemeBlue
hi! link @comment.todo ThemeYellow
hi! link @comment.note ThemeBg3
hi! link @comment.hint ThemeGreen
hi! link @comment.warning ThemeOrange
hi! link @type ThemeYellow
hi! link @type.builtin ThemeOrange
hi! link @type.definition ThemeViolet
hi! link @type.qualifier ThemeViolet
" Markdown
" hi! link @spell.markdown ThemeFg3
"call <sid>hi("@markup.heading.marker", s:gui08, "", "", s:ctermbg, "bold", "")
"hi! link @markup.heading ThemeRed
hi! link @markup.heading.marker ThemeOrange
hi! link @markup.heading.title ThemeRed "Italic
" set this for a strong background
"call <sid>hi("@markup.heading.title", s:gui08, "#440503", "", s:ctermbg, "italic", "")
hi! link @markup.heading.title.1 Bold
hi! link @markup.heading.title.3 Italic
"hi! link @markup.heading.4.title Italic
" YAML
hi! link @string.yaml ThemeBlue
hi! link @punctuation.delimiter.yaml ThemeGreen
hi! link @property.yaml ThemeFg2
" Diff
hi! link @diff.minus ThemeRed
hi! link @diff.plus ThemeGreen
call <sid>hi("TreesitterContext", "", s:gui00, "", "", "", "")
"hi TreesitterContextLineNumberBottom gui=underline guisp=Gray
"call <sid>hi("TreesitterContextBottom", "", "", "", "", "underline", s:gui02)
call <sid>hi("TreesitterContextSeparator", s:gui03, "", "", "", "", "")
"call <sid>hi("TreesitterContextLineNumberBottom", "", "", "", "", "underline", s:gui02)
endif
" Standard highlights to be used by plugins
@ -433,6 +534,7 @@ call <sid>hi("WarningFloat", s:gui09, s:gui01, s:cterm09, s:cterm01, "", "")
call <sid>hi("InfoFloat", s:gui0D, s:gui01, s:cterm0D, s:cterm01, "", "")
call <sid>hi("HintFloat", s:gui0C, s:gui01, s:cterm0C, s:cterm01, "", "")
call <sid>hi("OkFloat", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "")
call <sid>hi("NormalFloat", s:gui05, s:gui01, s:cterm05, s:cterm01, "", "")
call <sid>hi("ErrorHighlight", "", "", s:ctermbg, s:cterm08, "underline", s:gui08)
call <sid>hi("WarningHighlight", "", "", s:ctermbg, s:cterm09, "underline", s:gui09)
@ -449,6 +551,62 @@ call <sid>hi("ReferenceText", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "", "")
call <sid>hi("ReferenceRead", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "", "")
call <sid>hi("ReferenceWrite", s:gui01, s:gui08, s:cterm01, s:cterm08, "", "")
" 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
" "
" LANGUAGES
" "
" C
call <sid>hi("cOperator", s:gui0C, "", s:cterm0C, "", "", "")
call <sid>hi("cPreCondit", s:gui0E, "", s:cterm0E, "", "", "")
@ -728,8 +886,8 @@ call <sid>hi("phpMethodsVar", s:gui0C, "", s:cterm0C, "", "", "")
" hi! link pythonBuiltinObj ThemeCyan
" hi! link pythonBuiltinFunc ThemeGreen
" hi! link pythonFunction Function
hi! link pythonDecorator ThemeYellow
hi! link pythonDecoratorName ThemeYellow
" hi! link pythonDecorator ThemeYellow
" hi! link pythonDecoratorName ThemeYellow
" hi! link pythonTripleQuotes ThemeGreenItalic
" hi! link pythonInclude ThemeBlue
" hi! link pythonImport ThemeBlue
@ -777,58 +935,6 @@ call <sid>hi("StartifySelect", s:gui0C, "", s:cterm0C, "", "", "")
call <sid>hi("StartifySlash", s:gui03, "", s:cterm03, "", "", "")
call <sid>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 <sid>hi("javaOperator", s:gui0D, "", s:cterm0D, "", "", "")
@ -864,12 +970,18 @@ hi! link markdownUrlTitleDelimiter ThemeGreen
hi! link markdownLink ThemeGreen
hi! link markdownWikiLink ThemeViolet
hi! link markdownUrl ThemeOrange
"hi! link markdownUrl ThemeOrange
hi! link markdownUrl ThemeRed
hi! link markdownUrlProtocol ThemeGreenItalic
hi! link markdownInlineUrl ThemeOrange
hi! link markdownLinkText ThemeViolet
hi! link markdownIdDeclaration markdownLinkText
hi! link pandocAtxHeader ThemeRed
hi! link pandocAtxStart ThemeOrange
"call s:HL('markdownItalic', s:fg3, s:none, s:italic)
"call s:HL('markdownLinkText', s:gray, s:none, s:underline)
@ -880,3 +992,4 @@ delf <sid>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

View File

@ -7,26 +7,48 @@
" - `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.
"
" There are several kinds of syntax identifiers:
"
" - Vim/editor related (e.g., Normal, Folded): these control colors of central Vim
" elements, like whitespace, bold text, the foldcolumn, etc
" - Generic syntax identifiers (e.g., Boolean, Conditional): these are key groups for
" syntax elements that various language syntax files link to. For instance, Python
" syntax files might have specific patterns that match function keywords like "def," and
" the resulting syntax region can be highlighted by linking it to the core "Function"
" highlight identifier.
" - Treesitter-based identifiers (e.g., @variable, @boolean): highlight groups for
" treesitter-based syntax highlighting, which can replace regex-based matching when
" enabled for richer (and often faster) highlighting. These groups can be linked to the
" core identifiers like any other language.
"
" *Note*: each of these identifiers can add a lang-specific suffix to style those groups
" as they apply to particular languages. For ex, `@boolean.python ThemeRed` would style
" Python booleans red, while the lang-agnostic `@boolean` definition remains.
" - Plugin-oriented identifiers (e.g., SpellBad, ErrorFloat): these are groups mostly core
" to vim/nvim, but often appear only in the context of plugins or certain modules (like
" LSP). For instance, ErrorFloat styles floating windows that might be drawn by nvim's
" built-in LSP hover info.
" 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:gui00 = "#c9d0ca"
let g:base16_gui00 = "#c9d0ca"
let s:gui01 = "#b9c0ba"
let g:base16_gui01 = "#b9c0ba"
let s:gui02 = "#a9b0aa"
let g:base16_gui02 = "#a9b0aa"
let s:gui03 = "#9aa09b"
let g:base16_gui03 = "#9aa09b"
let s:gui04 = "#373c37"
let g:base16_gui04 = "#373c37"
let s:gui05 = "#2a2f2b"
let g:base16_gui05 = "#2a2f2b"
let s:gui06 = "#1e231f"
let g:base16_gui06 = "#1e231f"
let s:gui07 = "#131713"
let g:base16_gui07 = "#131713"
let s:gui08 = "#9d1a13"
let g:base16_gui08 = "#9d1a13"
let s:gui09 = "#7c4706"
let g:base16_gui09 = "#7c4706"
let s:gui0A = "#5b572e"
@ -39,10 +61,10 @@ 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:gui0F = "#9d1a13"
let g:base16_gui0F = "#9d1a13"
let s:grey = "#58554e"
let s:grey = "#6d736e"
" Terminal color definitions
let s:cterm00 = "00"
@ -81,22 +103,22 @@ 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_0 = "#c9d0ca"
let g:terminal_color_1 = "#9d1a13"
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_7 = "#2a2f2b"
let g:terminal_color_8 = "#9aa09b"
let g:terminal_color_9 = "#9d1a13"
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_15 = "#131713"
let g:terminal_color_background = g:terminal_color_0
let g:terminal_color_foreground = g:terminal_color_5
@ -107,22 +129,22 @@ if has("nvim")
elseif has("terminal")
let g:terminal_ansi_colors = [
\ "#c0bdb6",
\ "#9d1912",
\ "#c9d0ca",
\ "#9d1a13",
\ "#2e6337",
\ "#5b572e",
\ "#2d5299",
\ "#2d5299",
\ "#2e6337",
\ "#24211c",
\ "#928f88",
\ "#9d1912",
\ "#2a2f2b",
\ "#9aa09b",
\ "#9d1a13",
\ "#2e6337",
\ "#5b572e",
\ "#2d5299",
\ "#2d5299",
\ "#2e6337",
\ "#0d0b06",
\ "#131713",
\ ]
endif
@ -199,7 +221,25 @@ call <sid>hi("ThemeFg3", s:gui04, "", s:cterm04, "", "", "")
call <sid>hi("ThemeFg2", s:gui05, "", s:cterm05, "", "", "")
call <sid>hi("ThemeFg1", s:gui06, "", s:cterm06, "", "", "")
call <sid>hi("ThemeFg0", s:gui07, "", s:cterm07, "", "", "")
"
call <sid>hi("ThemeBg0bold", s:gui00, "", s:cterm00, "", "bold", "")
call <sid>hi("ThemeBg1bold", s:gui01, "", s:cterm01, "", "bold", "")
call <sid>hi("ThemeBg2bold", s:gui02, "", s:cterm02, "", "bold", "")
call <sid>hi("ThemeBg3bold", s:gui03, "", s:cterm03, "", "bold", "")
call <sid>hi("ThemeFg3bold", s:gui04, "", s:cterm04, "", "bold", "")
call <sid>hi("ThemeFg2bold", s:gui05, "", s:cterm05, "", "bold", "")
call <sid>hi("ThemeFg1bold", s:gui06, "", s:cterm06, "", "bold", "")
call <sid>hi("ThemeFg0bold", s:gui07, "", s:cterm07, "", "bold", "")
call <sid>hi("ThemeBg0Italic", s:gui00, "", s:cterm00, "", "italic", "")
call <sid>hi("ThemeBg1Italic", s:gui01, "", s:cterm01, "", "italic", "")
call <sid>hi("ThemeBg2Italic", s:gui02, "", s:cterm02, "", "italic", "")
call <sid>hi("ThemeBg3Italic", s:gui03, "", s:cterm03, "", "italic", "")
call <sid>hi("ThemeFg3Italic", s:gui04, "", s:cterm04, "", "italic", "")
call <sid>hi("ThemeFg2Italic", s:gui05, "", s:cterm05, "", "italic", "")
call <sid>hi("ThemeFg1Italic", s:gui06, "", s:cterm06, "", "italic", "")
call <sid>hi("ThemeFg0Italic", s:gui07, "", s:cterm07, "", "italic", "")
call <sid>hi("ThemeRed", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("ThemeOrange", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("ThemeYellow", s:gui0A, "", s:cterm0A, "", "", "")
@ -209,6 +249,15 @@ call <sid>hi("ThemeBlue", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("ThemeViolet", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("ThemeMagenta", s:gui0F, "", s:cterm0F, "", "", "")
call <sid>hi("ThemeRedNone", s:gui08, "", s:cterm08, "", "NONE", "")
call <sid>hi("ThemeOrangeNone", s:gui09, "", s:cterm09, "", "NONE", "")
call <sid>hi("ThemeYellowNone", s:gui0A, "", s:cterm0A, "", "NONE", "")
call <sid>hi("ThemeGreenNone", s:gui0B, "", s:cterm0B, "", "NONE", "")
call <sid>hi("ThemeCyanNone", s:gui0C, "", s:cterm0C, "", "NONE", "")
call <sid>hi("ThemeBlueNone", s:gui0D, "", s:cterm0D, "", "NONE", "")
call <sid>hi("ThemeVioletNone", s:gui0E, "", s:cterm0E, "", "NONE", "")
call <sid>hi("ThemeMagentaNone", s:gui0F, "", s:cterm0F, "", "NONE", "")
call <sid>hi("ThemeRedBold", s:gui08, "", s:cterm08, "", "bold", "")
call <sid>hi("ThemeOrangeBold", s:gui09, "", s:cterm09, "", "bold", "")
call <sid>hi("ThemeYellowBold", s:gui0A, "", s:cterm0A, "", "bold", "")
@ -227,22 +276,33 @@ call <sid>hi("ThemeBlueItalic", s:gui0D, "", s:cterm0D, "", "italic", "")
call <sid>hi("ThemeVioletItalic", s:gui0E, "", s:cterm0E, "", "italic", "")
call <sid>hi("ThemeMagentaItalic", s:gui0F, "", s:cterm0F, "", "italic", "")
call <sid>hi("ThemeRedBoldItalic", s:gui08, "", s:cterm08, "", "bold,italic", "")
call <sid>hi("ThemeOrangeBoldItalic", s:gui09, "", s:cterm09, "", "bold,italic", "")
call <sid>hi("ThemeYellowBoldItalic", s:gui0A, "", s:cterm0A, "", "bold,italic", "")
call <sid>hi("ThemeGreenBoldItalic", s:gui0B, "", s:cterm0B, "", "bold,italic", "")
call <sid>hi("ThemeCyanBoldItalic", s:gui0C, "", s:cterm0C, "", "bold,italic", "")
call <sid>hi("ThemeBlueBoldItalic", s:gui0D, "", s:cterm0D, "", "bold,italic", "")
call <sid>hi("ThemeVioletBoldItalic", s:gui0E, "", s:cterm0E, "", "bold,italic", "")
call <sid>hi("ThemeMagentaBoldItalic", s:gui0F, "", s:cterm0F, "", "bold,italic", "")
call <sid>hi("ThemeGrey", s:grey, "", s:cterm03, "", "", "")
call <sid>hi("ThemeGreyItalic", s:grey, "", s:cterm03, "", "italic", "")
" Vim editor colors
call <sid>hi("Normal", s:gui05, s:guibg, s:cterm05, s:ctermbg, "", "")
call <sid>hi("Bold", "", "", "", "", "bold", "")
call <sid>hi("Italic", "", "", "", "", "italic", "")
call <sid>hi("BoldItalic", "", "", "", "", "italic,bold", "")
call <sid>hi("Normal", s:gui05, s:guibg, s:cterm05, s:ctermbg, "", "")
call <sid>hi("Debug", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("Directory", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("Error", s:guibg, s:gui08, s:ctermbg, s:cterm08, "", "")
call <sid>hi("ErrorMsg", s:gui08, s:guibg, s:cterm08, s:ctermbg, "", "")
call <sid>hi("Exception", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("FoldColumn", s:gui03, s:guibg, s:cterm03, s:ctermbg, "", "")
call <sid>hi("Folded", s:gui02, s:guibg, s:cterm02, s:ctermbg, "", "")
call <sid>hi("Folded", s:gui03, s:gui01, s:cterm02, s:ctermbg, "", "")
call <sid>hi("IncSearch", s:gui01, s:gui09, s:cterm01, s:cterm09, "none", "")
call <sid>hi("Italic", "", "", "", "", "italic", "")
call <sid>hi("Macro", s:gui0C, "", s:cterm0C, "", "", "")
call <sid>hi("MatchParen", "", s:gui03, "", s:cterm03, "", "")
call <sid>hi("ModeMsg", s:gui0B, "", s:cterm0B, "", "", "")
@ -258,7 +318,10 @@ call <sid>hi("VisualNOS", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("WarningMsg", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("WildMenu", s:guibg, s:gui06, s:ctermbg, s:cterm05, "", "")
call <sid>hi("Title", s:gui0D, "", s:cterm0D, "", "none", "")
call <sid>hi("Conceal", s:gui0D, s:guibg, s:cterm0D, s:ctermbg, "", "")
"call <sid>hi("Conceal", s:gui0D, s:guibg, s:cterm0D, s:ctermbg, "", "")
hi! link Conceal ThemeBlue
call <sid>hi("Cursor", s:gui05, s:guibg, "", "", "inverse", "")
call <sid>hi("NonText", s:gui03, "", s:cterm03, "", "", "")
call <sid>hi("Whitespace", s:gui03, "", s:cterm03, "", "", "")
@ -270,7 +333,7 @@ call <sid>hi("VertSplit", s:gui01, s:guibg, s:cterm01, s:ctermbg, "none", ""
call <sid>hi("ColorColumn", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("CursorColumn", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("CursorLine", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("CursorLineNr", s:gui04, s:gui01, s:cterm04, s:cterm01, "bold", "")
call <sid>hi("CursorLineNr", s:gui04, s:gui00, s:cterm04, s:cterm01, "", "")
call <sid>hi("QuickFixLine", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("PMenu", s:gui06, s:gui01, s:cterm06, s:cterm01, "none", "")
call <sid>hi("PMenuSel", s:gui06, s:gui02, s:cterm06, s:cterm02, "", "")
@ -281,27 +344,21 @@ call <sid>hi("TabLineFill", s:gui03, s:gui01, s:cterm03, s:cterm01, "none", ""
call <sid>hi("TabLineSel", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "none", "")
" Standard syntax
call <sid>hi("Define", s:gui0E, "", s:cterm0E, "", "none", "")
call <sid>hi("Identifier", s:gui06, "", s:cterm05, "", "none", "")
call <sid>hi("Keyword", s:gui0D, "", s:cterm0E, "", "none", "")
call <sid>hi("Todo", s:gui08, s:guibg, s:cterm08, s:ctermbg, "italic", "")
hi! link Boolean ThemeOrange
hi! link Character ThemeRed
"call <sid>hi("Comment", s:gui03, "", s:cterm03, "", "italic", "")
hi! link Comment ThemeGreyItalic
hi! link Conditional ThemeRed
hi! link Constant ThemeOrange
call <sid>hi("Define", s:gui0E, "", s:cterm0E, "", "none", "")
hi! link Delimiter ThemeFg1
if has("patch-8.0.1038")
call <sid>hi("Deprecated", "", "", "", "", "strikethrough", "")
endif
hi! link Float ThemeOrange
hi! link Function ThemeBlue
call <sid>hi("Identifier", s:gui06, "", s:cterm05, "", "none", "")
hi! link Include ThemeBlue
hi! link Constant ThemeOrange
call <sid>hi("Keyword", s:gui0E, "", s:cterm0E, "", "none", "")
hi! link Label ThemeOrange
hi! link Number ThemeOrange
hi! link Operator ThemeYellow
@ -314,101 +371,145 @@ hi! link StorageClass ThemeOrange
hi! link String ThemeGreen
hi! link Structure ThemeOrange
hi! link Tag ThemeOrange
call <sid>hi("Todo", s:gui08, s:guibg, s:cterm08, s:ctermbg, "italic", "")
call <sid>hi("Type", s:gui0A, "", s:cterm0A, "", "none", "")
hi! link Type ThemeYellow
hi! link Typedef ThemeOrange
" Treesitter
if has("nvim-0.8.0")
call <sid>hi("@field", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@property", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@namespace", s:gui06, "", s:cterm05, "", "italic", "")
call <sid>hi("@variable.builtin", s:gui06, "", s:cterm05, "", "italic", "")
call <sid>hi("@text.reference", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@text.uri", s:gui08, "", s:cterm08, "", "italic", "")
hi! link @field ThemeRed
hi! link @property ThemeRed
hi! link @namespace ThemeFg1Italic
hi! link @variable.builtin ThemeFg1Italic
hi! link @variable ThemeFg2
hi! link @conceal ThemeBlue
" Annotations & Attributes
call <sid>hi("@annotation", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@attribute", s:gui0D, "", s:cterm0D, "", "", "")
hi! link @text.uri ThemeRedItalic
hi! link @text.reference ThemeRed
" Booleans, Characters & Comments
call <sid>hi("@boolean", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@character", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@character.special", s:gui0F, "", s:cterm0F, "", "", "")
call <sid>hi("@comment", s:gui03, "", s:cterm03, "", "", "")
hi! link @annotation ThemeViolet
hi! link @attribute ThemeBlue
" Conditionals, Constants & Debugging
call <sid>hi("@keyword.conditional", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@constant", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@constant.builtin", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@constant.macro", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@keyword.debug", s:gui08, "", s:cterm08, "", "", "")
hi! link @boolean ThemeOrange
hi! link @character ThemeRed
hi! link @character.special ThemeMagenta
hi! link @comment Comment
" Directives & Exceptions
call <sid>hi("@keyword.directive.define", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@keyword.exception", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @constant ThemeBlue
hi! link @constant.builtin ThemeBlue
" Floats & Functions
call <sid>hi("@number.float", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@function", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@function.builtin", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@function.call", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@function.macro", s:gui08, "", s:cterm08, "", "", "")
hi! link @constant.macro ThemeRed
" Imports, Operators & Returns
call <sid>hi("@keyword.import", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@keyword.coroutine", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@keyword.operator", s:gui06, "", s:cterm05, "", "", "")
call <sid>hi("@keyword.return", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @keyword.directive.define ThemeViolet
hi! link @keyword.exception ThemeRed
" Methods & Namespaces
call <sid>hi("@function.method", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@function.method.call", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@namespace.builtin", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @comment.error ThemeRed
hi! link @number.float ThemeRed
hi! link @keyword.function ThemeRed
" Numbers & Directives
call <sid>hi("@none", s:gui06, "", s:cterm05, "", "", "")
call <sid>hi("@number", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@keyword.directive", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @function ThemeBlue
hi! link @function.builtin ThemeBlue
hi! link @function.call ThemeBlue
hi! link @function.macro ThemeRed
hi! link @function.method ThemeBlue
hi! link @function.method.call ThemeBlue
" Repeats, Storage & Strings
call <sid>hi("@keyword.repeat", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@keyword.storage", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@string", s:gui0B, "", s:cterm0B, "", "", "")
hi! link @keyword.debug ThemeRed
hi! link @keyword.conditional ThemeRed
hi! link @keyword.import ThemeViolet
hi! link @keyword.coroutine ThemeViolet
hi! link @keyword.operator ThemeYellow
hi! link @keyword.directive ThemeViolet
hi! link @keyword.repeat ThemeViolet
hi! link @keyword.storage ThemeViolet
hi! link @keyword.return ThemeRed
" Tags & Markup
call <sid>hi("@markup.link.label", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.link.label.symbol", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@tag", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@tag.attribute", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@tag.delimiter", s:gui0F, "", s:cterm0F, "", "", "")
hi! link @constructor ThemeBlue
hi! link @namespace.builtin ThemeViolet
" More Markup
call <sid>hi("@markup", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.environment", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.environment.name", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.raw", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@markup.math", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.strong", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.emphasis", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.strikethrough", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.underline", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.heading", s:gui0D, "", s:cterm0D, "", "", "")
hi! link @none ThemeFg1
hi! link @number ThemeOrange
hi! link @string ThemeGreen
" Comments & Types
call <sid>hi("@comment.note", s:gui03, "", s:cterm03, "", "", "")
call <sid>hi("@comment.error", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@comment.hint", s:gui0B, "", s:cterm0B, "", "", "")
call <sid>hi("@comment.info", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@comment.warning", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@comment.todo", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.link.url", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@type", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@type.definition", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@type.qualifier", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @tag ThemeRed
hi! link @tag.delimiter ThemeViolet
hi! link @tag.attribute ThemeYellow
" affects markdown
hi! link @markup ThemeYellow
hi! link @markup.raw ThemeGreen
hi! link @markup.raw.block.lang ThemeFg2Bold
hi! link @markup.raw.block.marker ThemeRed
"call <sid>hi("@markup.raw.block.lang", s:gui08, "#1e0000", "", s:ctermbg, "", "")
hi! link @markup.list ThemeBlue
hi! link @markup.quote ThemeGrey
hi! link @markup.link ThemeYellow " borders
hi! link @markup.link.text ThemeBlue
hi! link @markup.link.label ThemeYellow
hi! link @markup.link.url ThemeYellow
hi! link @markup.link.dest ThemeFg3
hi! link @markup.link.wiki ThemeYellow
hi! link @markup.link.wiki.text ThemeBlue
hi! link @markup.link.wiki.label ThemeYellow
"hi! link @markup.link.label.symbol ThemeGreen
"hi! link markdownWikiLink ThemeViolet
"
hi! link @markup.environment ThemeYellow
hi! link @markup.environment.name ThemeYellow
hi! link @markup.math ThemeYellow
hi! link @punctuation.delimiter.latex ThemeOrange
hi! link @markup.strong Bold
hi! link @markup.emphasis Bold
hi! link @markup.strikethrough ThemeYellow
hi! link @markup.underline ThemeYellow
hi! link @comment.info ThemeBlue
hi! link @comment.todo ThemeYellow
hi! link @comment.note ThemeBg3
hi! link @comment.hint ThemeGreen
hi! link @comment.warning ThemeOrange
hi! link @type ThemeYellow
hi! link @type.builtin ThemeOrange
hi! link @type.definition ThemeViolet
hi! link @type.qualifier ThemeViolet
" Markdown
" hi! link @spell.markdown ThemeFg3
"call <sid>hi("@markup.heading.marker", s:gui08, "", "", s:ctermbg, "bold", "")
"hi! link @markup.heading ThemeRed
hi! link @markup.heading.marker ThemeOrange
hi! link @markup.heading.title ThemeRed "Italic
" set this for a strong background
"call <sid>hi("@markup.heading.title", s:gui08, "#440503", "", s:ctermbg, "italic", "")
hi! link @markup.heading.title.1 Bold
hi! link @markup.heading.title.3 Italic
"hi! link @markup.heading.4.title Italic
" YAML
hi! link @string.yaml ThemeBlue
hi! link @punctuation.delimiter.yaml ThemeGreen
hi! link @property.yaml ThemeFg2
" Diff
hi! link @diff.minus ThemeRed
hi! link @diff.plus ThemeGreen
call <sid>hi("TreesitterContext", "", s:gui00, "", "", "", "")
"hi TreesitterContextLineNumberBottom gui=underline guisp=Gray
"call <sid>hi("TreesitterContextBottom", "", "", "", "", "underline", s:gui02)
call <sid>hi("TreesitterContextSeparator", s:gui03, "", "", "", "", "")
"call <sid>hi("TreesitterContextLineNumberBottom", "", "", "", "", "underline", s:gui02)
endif
" Standard highlights to be used by plugins
@ -433,6 +534,7 @@ call <sid>hi("WarningFloat", s:gui09, s:gui01, s:cterm09, s:cterm01, "", "")
call <sid>hi("InfoFloat", s:gui0D, s:gui01, s:cterm0D, s:cterm01, "", "")
call <sid>hi("HintFloat", s:gui0C, s:gui01, s:cterm0C, s:cterm01, "", "")
call <sid>hi("OkFloat", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "")
call <sid>hi("NormalFloat", s:gui05, s:gui01, s:cterm05, s:cterm01, "", "")
call <sid>hi("ErrorHighlight", "", "", s:ctermbg, s:cterm08, "underline", s:gui08)
call <sid>hi("WarningHighlight", "", "", s:ctermbg, s:cterm09, "underline", s:gui09)
@ -449,6 +551,62 @@ call <sid>hi("ReferenceText", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "", "")
call <sid>hi("ReferenceRead", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "", "")
call <sid>hi("ReferenceWrite", s:gui01, s:gui08, s:cterm01, s:cterm08, "", "")
" 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
" "
" LANGUAGES
" "
" C
call <sid>hi("cOperator", s:gui0C, "", s:cterm0C, "", "", "")
call <sid>hi("cPreCondit", s:gui0E, "", s:cterm0E, "", "", "")
@ -728,8 +886,8 @@ call <sid>hi("phpMethodsVar", s:gui0C, "", s:cterm0C, "", "", "")
" hi! link pythonBuiltinObj ThemeCyan
" hi! link pythonBuiltinFunc ThemeGreen
" hi! link pythonFunction Function
hi! link pythonDecorator ThemeYellow
hi! link pythonDecoratorName ThemeYellow
" hi! link pythonDecorator ThemeYellow
" hi! link pythonDecoratorName ThemeYellow
" hi! link pythonTripleQuotes ThemeGreenItalic
" hi! link pythonInclude ThemeBlue
" hi! link pythonImport ThemeBlue
@ -777,58 +935,6 @@ call <sid>hi("StartifySelect", s:gui0C, "", s:cterm0C, "", "", "")
call <sid>hi("StartifySlash", s:gui03, "", s:cterm03, "", "", "")
call <sid>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 <sid>hi("javaOperator", s:gui0D, "", s:cterm0D, "", "", "")
@ -864,12 +970,18 @@ hi! link markdownUrlTitleDelimiter ThemeGreen
hi! link markdownLink ThemeGreen
hi! link markdownWikiLink ThemeViolet
hi! link markdownUrl ThemeOrange
"hi! link markdownUrl ThemeOrange
hi! link markdownUrl ThemeRed
hi! link markdownUrlProtocol ThemeGreenItalic
hi! link markdownInlineUrl ThemeOrange
hi! link markdownLinkText ThemeViolet
hi! link markdownIdDeclaration markdownLinkText
hi! link pandocAtxHeader ThemeRed
hi! link pandocAtxStart ThemeOrange
"call s:HL('markdownItalic', s:fg3, s:none, s:italic)
"call s:HL('markdownLinkText', s:gray, s:none, s:underline)
@ -880,3 +992,4 @@ delf <sid>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

View File

@ -7,6 +7,28 @@
" - `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.
"
" There are several kinds of syntax identifiers:
"
" - Vim/editor related (e.g., Normal, Folded): these control colors of central Vim
" elements, like whitespace, bold text, the foldcolumn, etc
" - Generic syntax identifiers (e.g., Boolean, Conditional): these are key groups for
" syntax elements that various language syntax files link to. For instance, Python
" syntax files might have specific patterns that match function keywords like "def," and
" the resulting syntax region can be highlighted by linking it to the core "Function"
" highlight identifier.
" - Treesitter-based identifiers (e.g., @variable, @boolean): highlight groups for
" treesitter-based syntax highlighting, which can replace regex-based matching when
" enabled for richer (and often faster) highlighting. These groups can be linked to the
" core identifiers like any other language.
"
" *Note*: each of these identifiers can add a lang-specific suffix to style those groups
" as they apply to particular languages. For ex, `@boolean.python ThemeRed` would style
" Python booleans red, while the lang-agnostic `@boolean` definition remains.
" - Plugin-oriented identifiers (e.g., SpellBad, ErrorFloat): these are groups mostly core
" to vim/nvim, but often appear only in the context of plugins or certain modules (like
" LSP). For instance, ErrorFloat styles floating windows that might be drawn by nvim's
" built-in LSP hover info.
" GUI color definitions
let s:gui00 = "#2e2e2e"
@ -27,8 +49,8 @@ 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:gui09 = "#d98937"
let g:base16_gui09 = "#d98937"
let s:gui0A = "#a7a15f"
let g:base16_gui0A = "#a7a15f"
let s:gui0B = "#6eb178"
@ -42,7 +64,7 @@ let g:base16_gui0E = "#799ee3"
let s:gui0F = "#f37060"
let g:base16_gui0F = "#f37060"
let s:grey = "#8f8f8f"
let s:grey = "#808080"
" Terminal color definitions
let s:cterm00 = "00"
@ -199,7 +221,25 @@ call <sid>hi("ThemeFg3", s:gui04, "", s:cterm04, "", "", "")
call <sid>hi("ThemeFg2", s:gui05, "", s:cterm05, "", "", "")
call <sid>hi("ThemeFg1", s:gui06, "", s:cterm06, "", "", "")
call <sid>hi("ThemeFg0", s:gui07, "", s:cterm07, "", "", "")
"
call <sid>hi("ThemeBg0bold", s:gui00, "", s:cterm00, "", "bold", "")
call <sid>hi("ThemeBg1bold", s:gui01, "", s:cterm01, "", "bold", "")
call <sid>hi("ThemeBg2bold", s:gui02, "", s:cterm02, "", "bold", "")
call <sid>hi("ThemeBg3bold", s:gui03, "", s:cterm03, "", "bold", "")
call <sid>hi("ThemeFg3bold", s:gui04, "", s:cterm04, "", "bold", "")
call <sid>hi("ThemeFg2bold", s:gui05, "", s:cterm05, "", "bold", "")
call <sid>hi("ThemeFg1bold", s:gui06, "", s:cterm06, "", "bold", "")
call <sid>hi("ThemeFg0bold", s:gui07, "", s:cterm07, "", "bold", "")
call <sid>hi("ThemeBg0Italic", s:gui00, "", s:cterm00, "", "italic", "")
call <sid>hi("ThemeBg1Italic", s:gui01, "", s:cterm01, "", "italic", "")
call <sid>hi("ThemeBg2Italic", s:gui02, "", s:cterm02, "", "italic", "")
call <sid>hi("ThemeBg3Italic", s:gui03, "", s:cterm03, "", "italic", "")
call <sid>hi("ThemeFg3Italic", s:gui04, "", s:cterm04, "", "italic", "")
call <sid>hi("ThemeFg2Italic", s:gui05, "", s:cterm05, "", "italic", "")
call <sid>hi("ThemeFg1Italic", s:gui06, "", s:cterm06, "", "italic", "")
call <sid>hi("ThemeFg0Italic", s:gui07, "", s:cterm07, "", "italic", "")
call <sid>hi("ThemeRed", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("ThemeOrange", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("ThemeYellow", s:gui0A, "", s:cterm0A, "", "", "")
@ -209,6 +249,15 @@ call <sid>hi("ThemeBlue", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("ThemeViolet", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("ThemeMagenta", s:gui0F, "", s:cterm0F, "", "", "")
call <sid>hi("ThemeRedNone", s:gui08, "", s:cterm08, "", "NONE", "")
call <sid>hi("ThemeOrangeNone", s:gui09, "", s:cterm09, "", "NONE", "")
call <sid>hi("ThemeYellowNone", s:gui0A, "", s:cterm0A, "", "NONE", "")
call <sid>hi("ThemeGreenNone", s:gui0B, "", s:cterm0B, "", "NONE", "")
call <sid>hi("ThemeCyanNone", s:gui0C, "", s:cterm0C, "", "NONE", "")
call <sid>hi("ThemeBlueNone", s:gui0D, "", s:cterm0D, "", "NONE", "")
call <sid>hi("ThemeVioletNone", s:gui0E, "", s:cterm0E, "", "NONE", "")
call <sid>hi("ThemeMagentaNone", s:gui0F, "", s:cterm0F, "", "NONE", "")
call <sid>hi("ThemeRedBold", s:gui08, "", s:cterm08, "", "bold", "")
call <sid>hi("ThemeOrangeBold", s:gui09, "", s:cterm09, "", "bold", "")
call <sid>hi("ThemeYellowBold", s:gui0A, "", s:cterm0A, "", "bold", "")
@ -227,22 +276,33 @@ call <sid>hi("ThemeBlueItalic", s:gui0D, "", s:cterm0D, "", "italic", "")
call <sid>hi("ThemeVioletItalic", s:gui0E, "", s:cterm0E, "", "italic", "")
call <sid>hi("ThemeMagentaItalic", s:gui0F, "", s:cterm0F, "", "italic", "")
call <sid>hi("ThemeRedBoldItalic", s:gui08, "", s:cterm08, "", "bold,italic", "")
call <sid>hi("ThemeOrangeBoldItalic", s:gui09, "", s:cterm09, "", "bold,italic", "")
call <sid>hi("ThemeYellowBoldItalic", s:gui0A, "", s:cterm0A, "", "bold,italic", "")
call <sid>hi("ThemeGreenBoldItalic", s:gui0B, "", s:cterm0B, "", "bold,italic", "")
call <sid>hi("ThemeCyanBoldItalic", s:gui0C, "", s:cterm0C, "", "bold,italic", "")
call <sid>hi("ThemeBlueBoldItalic", s:gui0D, "", s:cterm0D, "", "bold,italic", "")
call <sid>hi("ThemeVioletBoldItalic", s:gui0E, "", s:cterm0E, "", "bold,italic", "")
call <sid>hi("ThemeMagentaBoldItalic", s:gui0F, "", s:cterm0F, "", "bold,italic", "")
call <sid>hi("ThemeGrey", s:grey, "", s:cterm03, "", "", "")
call <sid>hi("ThemeGreyItalic", s:grey, "", s:cterm03, "", "italic", "")
" Vim editor colors
call <sid>hi("Normal", s:gui05, s:guibg, s:cterm05, s:ctermbg, "", "")
call <sid>hi("Bold", "", "", "", "", "bold", "")
call <sid>hi("Italic", "", "", "", "", "italic", "")
call <sid>hi("BoldItalic", "", "", "", "", "italic,bold", "")
call <sid>hi("Normal", s:gui05, s:guibg, s:cterm05, s:ctermbg, "", "")
call <sid>hi("Debug", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("Directory", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("Error", s:guibg, s:gui08, s:ctermbg, s:cterm08, "", "")
call <sid>hi("ErrorMsg", s:gui08, s:guibg, s:cterm08, s:ctermbg, "", "")
call <sid>hi("Exception", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("FoldColumn", s:gui03, s:guibg, s:cterm03, s:ctermbg, "", "")
call <sid>hi("Folded", s:gui02, s:guibg, s:cterm02, s:ctermbg, "", "")
call <sid>hi("Folded", s:gui03, s:gui01, s:cterm02, s:ctermbg, "", "")
call <sid>hi("IncSearch", s:gui01, s:gui09, s:cterm01, s:cterm09, "none", "")
call <sid>hi("Italic", "", "", "", "", "italic", "")
call <sid>hi("Macro", s:gui0C, "", s:cterm0C, "", "", "")
call <sid>hi("MatchParen", "", s:gui03, "", s:cterm03, "", "")
call <sid>hi("ModeMsg", s:gui0B, "", s:cterm0B, "", "", "")
@ -258,7 +318,10 @@ call <sid>hi("VisualNOS", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("WarningMsg", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("WildMenu", s:guibg, s:gui06, s:ctermbg, s:cterm05, "", "")
call <sid>hi("Title", s:gui0D, "", s:cterm0D, "", "none", "")
call <sid>hi("Conceal", s:gui0D, s:guibg, s:cterm0D, s:ctermbg, "", "")
"call <sid>hi("Conceal", s:gui0D, s:guibg, s:cterm0D, s:ctermbg, "", "")
hi! link Conceal ThemeBlue
call <sid>hi("Cursor", s:gui05, s:guibg, "", "", "inverse", "")
call <sid>hi("NonText", s:gui03, "", s:cterm03, "", "", "")
call <sid>hi("Whitespace", s:gui03, "", s:cterm03, "", "", "")
@ -270,7 +333,7 @@ call <sid>hi("VertSplit", s:gui01, s:guibg, s:cterm01, s:ctermbg, "none", ""
call <sid>hi("ColorColumn", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("CursorColumn", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("CursorLine", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("CursorLineNr", s:gui04, s:gui01, s:cterm04, s:cterm01, "bold", "")
call <sid>hi("CursorLineNr", s:gui04, s:gui00, s:cterm04, s:cterm01, "", "")
call <sid>hi("QuickFixLine", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("PMenu", s:gui06, s:gui01, s:cterm06, s:cterm01, "none", "")
call <sid>hi("PMenuSel", s:gui06, s:gui02, s:cterm06, s:cterm02, "", "")
@ -281,27 +344,21 @@ call <sid>hi("TabLineFill", s:gui03, s:gui01, s:cterm03, s:cterm01, "none", ""
call <sid>hi("TabLineSel", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "none", "")
" Standard syntax
call <sid>hi("Define", s:gui0E, "", s:cterm0E, "", "none", "")
call <sid>hi("Identifier", s:gui06, "", s:cterm05, "", "none", "")
call <sid>hi("Keyword", s:gui0D, "", s:cterm0E, "", "none", "")
call <sid>hi("Todo", s:gui08, s:guibg, s:cterm08, s:ctermbg, "italic", "")
hi! link Boolean ThemeOrange
hi! link Character ThemeRed
"call <sid>hi("Comment", s:gui03, "", s:cterm03, "", "italic", "")
hi! link Comment ThemeGreyItalic
hi! link Conditional ThemeRed
hi! link Constant ThemeOrange
call <sid>hi("Define", s:gui0E, "", s:cterm0E, "", "none", "")
hi! link Delimiter ThemeFg1
if has("patch-8.0.1038")
call <sid>hi("Deprecated", "", "", "", "", "strikethrough", "")
endif
hi! link Float ThemeOrange
hi! link Function ThemeBlue
call <sid>hi("Identifier", s:gui06, "", s:cterm05, "", "none", "")
hi! link Include ThemeBlue
hi! link Constant ThemeOrange
call <sid>hi("Keyword", s:gui0E, "", s:cterm0E, "", "none", "")
hi! link Label ThemeOrange
hi! link Number ThemeOrange
hi! link Operator ThemeYellow
@ -314,101 +371,145 @@ hi! link StorageClass ThemeOrange
hi! link String ThemeGreen
hi! link Structure ThemeOrange
hi! link Tag ThemeOrange
call <sid>hi("Todo", s:gui08, s:guibg, s:cterm08, s:ctermbg, "italic", "")
call <sid>hi("Type", s:gui0A, "", s:cterm0A, "", "none", "")
hi! link Type ThemeYellow
hi! link Typedef ThemeOrange
" Treesitter
if has("nvim-0.8.0")
call <sid>hi("@field", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@property", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@namespace", s:gui06, "", s:cterm05, "", "italic", "")
call <sid>hi("@variable.builtin", s:gui06, "", s:cterm05, "", "italic", "")
call <sid>hi("@text.reference", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@text.uri", s:gui08, "", s:cterm08, "", "italic", "")
hi! link @field ThemeRed
hi! link @property ThemeRed
hi! link @namespace ThemeFg1Italic
hi! link @variable.builtin ThemeFg1Italic
hi! link @variable ThemeFg2
hi! link @conceal ThemeBlue
" Annotations & Attributes
call <sid>hi("@annotation", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@attribute", s:gui0D, "", s:cterm0D, "", "", "")
hi! link @text.uri ThemeRedItalic
hi! link @text.reference ThemeRed
" Booleans, Characters & Comments
call <sid>hi("@boolean", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@character", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@character.special", s:gui0F, "", s:cterm0F, "", "", "")
call <sid>hi("@comment", s:gui03, "", s:cterm03, "", "", "")
hi! link @annotation ThemeViolet
hi! link @attribute ThemeBlue
" Conditionals, Constants & Debugging
call <sid>hi("@keyword.conditional", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@constant", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@constant.builtin", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@constant.macro", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@keyword.debug", s:gui08, "", s:cterm08, "", "", "")
hi! link @boolean ThemeOrange
hi! link @character ThemeRed
hi! link @character.special ThemeMagenta
hi! link @comment Comment
" Directives & Exceptions
call <sid>hi("@keyword.directive.define", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@keyword.exception", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @constant ThemeBlue
hi! link @constant.builtin ThemeBlue
" Floats & Functions
call <sid>hi("@number.float", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@function", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@function.builtin", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@function.call", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@function.macro", s:gui08, "", s:cterm08, "", "", "")
hi! link @constant.macro ThemeRed
" Imports, Operators & Returns
call <sid>hi("@keyword.import", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@keyword.coroutine", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@keyword.operator", s:gui06, "", s:cterm05, "", "", "")
call <sid>hi("@keyword.return", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @keyword.directive.define ThemeViolet
hi! link @keyword.exception ThemeRed
" Methods & Namespaces
call <sid>hi("@function.method", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@function.method.call", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@namespace.builtin", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @comment.error ThemeRed
hi! link @number.float ThemeRed
hi! link @keyword.function ThemeRed
" Numbers & Directives
call <sid>hi("@none", s:gui06, "", s:cterm05, "", "", "")
call <sid>hi("@number", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@keyword.directive", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @function ThemeBlue
hi! link @function.builtin ThemeBlue
hi! link @function.call ThemeBlue
hi! link @function.macro ThemeRed
hi! link @function.method ThemeBlue
hi! link @function.method.call ThemeBlue
" Repeats, Storage & Strings
call <sid>hi("@keyword.repeat", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@keyword.storage", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@string", s:gui0B, "", s:cterm0B, "", "", "")
hi! link @keyword.debug ThemeRed
hi! link @keyword.conditional ThemeRed
hi! link @keyword.import ThemeViolet
hi! link @keyword.coroutine ThemeViolet
hi! link @keyword.operator ThemeYellow
hi! link @keyword.directive ThemeViolet
hi! link @keyword.repeat ThemeViolet
hi! link @keyword.storage ThemeViolet
hi! link @keyword.return ThemeRed
" Tags & Markup
call <sid>hi("@markup.link.label", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.link.label.symbol", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@tag", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@tag.attribute", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@tag.delimiter", s:gui0F, "", s:cterm0F, "", "", "")
hi! link @constructor ThemeBlue
hi! link @namespace.builtin ThemeViolet
" More Markup
call <sid>hi("@markup", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.environment", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.environment.name", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.raw", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@markup.math", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.strong", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.emphasis", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.strikethrough", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.underline", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.heading", s:gui0D, "", s:cterm0D, "", "", "")
hi! link @none ThemeFg1
hi! link @number ThemeOrange
hi! link @string ThemeGreen
" Comments & Types
call <sid>hi("@comment.note", s:gui03, "", s:cterm03, "", "", "")
call <sid>hi("@comment.error", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@comment.hint", s:gui0B, "", s:cterm0B, "", "", "")
call <sid>hi("@comment.info", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@comment.warning", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@comment.todo", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.link.url", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@type", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@type.definition", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@type.qualifier", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @tag ThemeRed
hi! link @tag.delimiter ThemeViolet
hi! link @tag.attribute ThemeYellow
" affects markdown
hi! link @markup ThemeYellow
hi! link @markup.raw ThemeGreen
hi! link @markup.raw.block.lang ThemeFg2Bold
hi! link @markup.raw.block.marker ThemeRed
"call <sid>hi("@markup.raw.block.lang", s:gui08, "#1e0000", "", s:ctermbg, "", "")
hi! link @markup.list ThemeBlue
hi! link @markup.quote ThemeGrey
hi! link @markup.link ThemeYellow " borders
hi! link @markup.link.text ThemeBlue
hi! link @markup.link.label ThemeYellow
hi! link @markup.link.url ThemeYellow
hi! link @markup.link.dest ThemeFg3
hi! link @markup.link.wiki ThemeYellow
hi! link @markup.link.wiki.text ThemeBlue
hi! link @markup.link.wiki.label ThemeYellow
"hi! link @markup.link.label.symbol ThemeGreen
"hi! link markdownWikiLink ThemeViolet
"
hi! link @markup.environment ThemeYellow
hi! link @markup.environment.name ThemeYellow
hi! link @markup.math ThemeYellow
hi! link @punctuation.delimiter.latex ThemeOrange
hi! link @markup.strong Bold
hi! link @markup.emphasis Bold
hi! link @markup.strikethrough ThemeYellow
hi! link @markup.underline ThemeYellow
hi! link @comment.info ThemeBlue
hi! link @comment.todo ThemeYellow
hi! link @comment.note ThemeBg3
hi! link @comment.hint ThemeGreen
hi! link @comment.warning ThemeOrange
hi! link @type ThemeYellow
hi! link @type.builtin ThemeOrange
hi! link @type.definition ThemeViolet
hi! link @type.qualifier ThemeViolet
" Markdown
" hi! link @spell.markdown ThemeFg3
"call <sid>hi("@markup.heading.marker", s:gui08, "", "", s:ctermbg, "bold", "")
"hi! link @markup.heading ThemeRed
hi! link @markup.heading.marker ThemeOrange
hi! link @markup.heading.title ThemeRed "Italic
" set this for a strong background
"call <sid>hi("@markup.heading.title", s:gui08, "#440503", "", s:ctermbg, "italic", "")
hi! link @markup.heading.title.1 Bold
hi! link @markup.heading.title.3 Italic
"hi! link @markup.heading.4.title Italic
" YAML
hi! link @string.yaml ThemeBlue
hi! link @punctuation.delimiter.yaml ThemeGreen
hi! link @property.yaml ThemeFg2
" Diff
hi! link @diff.minus ThemeRed
hi! link @diff.plus ThemeGreen
call <sid>hi("TreesitterContext", "", s:gui00, "", "", "", "")
"hi TreesitterContextLineNumberBottom gui=underline guisp=Gray
"call <sid>hi("TreesitterContextBottom", "", "", "", "", "underline", s:gui02)
call <sid>hi("TreesitterContextSeparator", s:gui03, "", "", "", "", "")
"call <sid>hi("TreesitterContextLineNumberBottom", "", "", "", "", "underline", s:gui02)
endif
" Standard highlights to be used by plugins
@ -433,6 +534,7 @@ call <sid>hi("WarningFloat", s:gui09, s:gui01, s:cterm09, s:cterm01, "", "")
call <sid>hi("InfoFloat", s:gui0D, s:gui01, s:cterm0D, s:cterm01, "", "")
call <sid>hi("HintFloat", s:gui0C, s:gui01, s:cterm0C, s:cterm01, "", "")
call <sid>hi("OkFloat", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "")
call <sid>hi("NormalFloat", s:gui05, s:gui01, s:cterm05, s:cterm01, "", "")
call <sid>hi("ErrorHighlight", "", "", s:ctermbg, s:cterm08, "underline", s:gui08)
call <sid>hi("WarningHighlight", "", "", s:ctermbg, s:cterm09, "underline", s:gui09)
@ -449,6 +551,62 @@ call <sid>hi("ReferenceText", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "", "")
call <sid>hi("ReferenceRead", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "", "")
call <sid>hi("ReferenceWrite", s:gui01, s:gui08, s:cterm01, s:cterm08, "", "")
" 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
" "
" LANGUAGES
" "
" C
call <sid>hi("cOperator", s:gui0C, "", s:cterm0C, "", "", "")
call <sid>hi("cPreCondit", s:gui0E, "", s:cterm0E, "", "", "")
@ -728,8 +886,8 @@ call <sid>hi("phpMethodsVar", s:gui0C, "", s:cterm0C, "", "", "")
" hi! link pythonBuiltinObj ThemeCyan
" hi! link pythonBuiltinFunc ThemeGreen
" hi! link pythonFunction Function
hi! link pythonDecorator ThemeYellow
hi! link pythonDecoratorName ThemeYellow
" hi! link pythonDecorator ThemeYellow
" hi! link pythonDecoratorName ThemeYellow
" hi! link pythonTripleQuotes ThemeGreenItalic
" hi! link pythonInclude ThemeBlue
" hi! link pythonImport ThemeBlue
@ -777,58 +935,6 @@ call <sid>hi("StartifySelect", s:gui0C, "", s:cterm0C, "", "", "")
call <sid>hi("StartifySlash", s:gui03, "", s:cterm03, "", "", "")
call <sid>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 <sid>hi("javaOperator", s:gui0D, "", s:cterm0D, "", "", "")
@ -864,12 +970,18 @@ hi! link markdownUrlTitleDelimiter ThemeGreen
hi! link markdownLink ThemeGreen
hi! link markdownWikiLink ThemeViolet
hi! link markdownUrl ThemeOrange
"hi! link markdownUrl ThemeOrange
hi! link markdownUrl ThemeRed
hi! link markdownUrlProtocol ThemeGreenItalic
hi! link markdownInlineUrl ThemeOrange
hi! link markdownLinkText ThemeViolet
hi! link markdownIdDeclaration markdownLinkText
hi! link pandocAtxHeader ThemeRed
hi! link pandocAtxStart ThemeOrange
"call s:HL('markdownItalic', s:fg3, s:none, s:italic)
"call s:HL('markdownLinkText', s:gray, s:none, s:underline)
@ -880,3 +992,4 @@ delf <sid>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

View File

@ -7,26 +7,48 @@
" - `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.
"
" There are several kinds of syntax identifiers:
"
" - Vim/editor related (e.g., Normal, Folded): these control colors of central Vim
" elements, like whitespace, bold text, the foldcolumn, etc
" - Generic syntax identifiers (e.g., Boolean, Conditional): these are key groups for
" syntax elements that various language syntax files link to. For instance, Python
" syntax files might have specific patterns that match function keywords like "def," and
" the resulting syntax region can be highlighted by linking it to the core "Function"
" highlight identifier.
" - Treesitter-based identifiers (e.g., @variable, @boolean): highlight groups for
" treesitter-based syntax highlighting, which can replace regex-based matching when
" enabled for richer (and often faster) highlighting. These groups can be linked to the
" core identifiers like any other language.
"
" *Note*: each of these identifiers can add a lang-specific suffix to style those groups
" as they apply to particular languages. For ex, `@boolean.python ThemeRed` would style
" Python booleans red, while the lang-agnostic `@boolean` definition remains.
" - Plugin-oriented identifiers (e.g., SpellBad, ErrorFloat): these are groups mostly core
" to vim/nvim, but often appear only in the context of plugins or certain modules (like
" LSP). For instance, ErrorFloat styles floating windows that might be drawn by nvim's
" built-in LSP hover info.
" 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: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 = "#9d1a13"
let g:base16_gui08 = "#9d1a13"
let s:gui09 = "#7c4706"
let g:base16_gui09 = "#7c4706"
let s:gui0A = "#5b572e"
@ -39,10 +61,10 @@ 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:gui0F = "#9d1a13"
let g:base16_gui0F = "#9d1a13"
let s:grey = "#555555"
let s:grey = "#717171"
" Terminal color definitions
let s:cterm00 = "00"
@ -81,22 +103,22 @@ 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_0 = "#cecece"
let g:terminal_color_1 = "#9d1a13"
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_7 = "#2e2e2e"
let g:terminal_color_8 = "#9e9e9e"
let g:terminal_color_9 = "#9d1a13"
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_15 = "#161616"
let g:terminal_color_background = g:terminal_color_0
let g:terminal_color_foreground = g:terminal_color_5
@ -107,22 +129,22 @@ if has("nvim")
elseif has("terminal")
let g:terminal_ansi_colors = [
\ "#bebebe",
\ "#9d1912",
\ "#cecece",
\ "#9d1a13",
\ "#2e6337",
\ "#5b572e",
\ "#2d5299",
\ "#2d5299",
\ "#2e6337",
\ "#222222",
\ "#8f8f8f",
\ "#9d1912",
\ "#2e2e2e",
\ "#9e9e9e",
\ "#9d1a13",
\ "#2e6337",
\ "#5b572e",
\ "#2d5299",
\ "#2d5299",
\ "#2e6337",
\ "#0b0b0b",
\ "#161616",
\ ]
endif
@ -199,7 +221,25 @@ call <sid>hi("ThemeFg3", s:gui04, "", s:cterm04, "", "", "")
call <sid>hi("ThemeFg2", s:gui05, "", s:cterm05, "", "", "")
call <sid>hi("ThemeFg1", s:gui06, "", s:cterm06, "", "", "")
call <sid>hi("ThemeFg0", s:gui07, "", s:cterm07, "", "", "")
"
call <sid>hi("ThemeBg0bold", s:gui00, "", s:cterm00, "", "bold", "")
call <sid>hi("ThemeBg1bold", s:gui01, "", s:cterm01, "", "bold", "")
call <sid>hi("ThemeBg2bold", s:gui02, "", s:cterm02, "", "bold", "")
call <sid>hi("ThemeBg3bold", s:gui03, "", s:cterm03, "", "bold", "")
call <sid>hi("ThemeFg3bold", s:gui04, "", s:cterm04, "", "bold", "")
call <sid>hi("ThemeFg2bold", s:gui05, "", s:cterm05, "", "bold", "")
call <sid>hi("ThemeFg1bold", s:gui06, "", s:cterm06, "", "bold", "")
call <sid>hi("ThemeFg0bold", s:gui07, "", s:cterm07, "", "bold", "")
call <sid>hi("ThemeBg0Italic", s:gui00, "", s:cterm00, "", "italic", "")
call <sid>hi("ThemeBg1Italic", s:gui01, "", s:cterm01, "", "italic", "")
call <sid>hi("ThemeBg2Italic", s:gui02, "", s:cterm02, "", "italic", "")
call <sid>hi("ThemeBg3Italic", s:gui03, "", s:cterm03, "", "italic", "")
call <sid>hi("ThemeFg3Italic", s:gui04, "", s:cterm04, "", "italic", "")
call <sid>hi("ThemeFg2Italic", s:gui05, "", s:cterm05, "", "italic", "")
call <sid>hi("ThemeFg1Italic", s:gui06, "", s:cterm06, "", "italic", "")
call <sid>hi("ThemeFg0Italic", s:gui07, "", s:cterm07, "", "italic", "")
call <sid>hi("ThemeRed", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("ThemeOrange", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("ThemeYellow", s:gui0A, "", s:cterm0A, "", "", "")
@ -209,6 +249,15 @@ call <sid>hi("ThemeBlue", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("ThemeViolet", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("ThemeMagenta", s:gui0F, "", s:cterm0F, "", "", "")
call <sid>hi("ThemeRedNone", s:gui08, "", s:cterm08, "", "NONE", "")
call <sid>hi("ThemeOrangeNone", s:gui09, "", s:cterm09, "", "NONE", "")
call <sid>hi("ThemeYellowNone", s:gui0A, "", s:cterm0A, "", "NONE", "")
call <sid>hi("ThemeGreenNone", s:gui0B, "", s:cterm0B, "", "NONE", "")
call <sid>hi("ThemeCyanNone", s:gui0C, "", s:cterm0C, "", "NONE", "")
call <sid>hi("ThemeBlueNone", s:gui0D, "", s:cterm0D, "", "NONE", "")
call <sid>hi("ThemeVioletNone", s:gui0E, "", s:cterm0E, "", "NONE", "")
call <sid>hi("ThemeMagentaNone", s:gui0F, "", s:cterm0F, "", "NONE", "")
call <sid>hi("ThemeRedBold", s:gui08, "", s:cterm08, "", "bold", "")
call <sid>hi("ThemeOrangeBold", s:gui09, "", s:cterm09, "", "bold", "")
call <sid>hi("ThemeYellowBold", s:gui0A, "", s:cterm0A, "", "bold", "")
@ -227,22 +276,33 @@ call <sid>hi("ThemeBlueItalic", s:gui0D, "", s:cterm0D, "", "italic", "")
call <sid>hi("ThemeVioletItalic", s:gui0E, "", s:cterm0E, "", "italic", "")
call <sid>hi("ThemeMagentaItalic", s:gui0F, "", s:cterm0F, "", "italic", "")
call <sid>hi("ThemeRedBoldItalic", s:gui08, "", s:cterm08, "", "bold,italic", "")
call <sid>hi("ThemeOrangeBoldItalic", s:gui09, "", s:cterm09, "", "bold,italic", "")
call <sid>hi("ThemeYellowBoldItalic", s:gui0A, "", s:cterm0A, "", "bold,italic", "")
call <sid>hi("ThemeGreenBoldItalic", s:gui0B, "", s:cterm0B, "", "bold,italic", "")
call <sid>hi("ThemeCyanBoldItalic", s:gui0C, "", s:cterm0C, "", "bold,italic", "")
call <sid>hi("ThemeBlueBoldItalic", s:gui0D, "", s:cterm0D, "", "bold,italic", "")
call <sid>hi("ThemeVioletBoldItalic", s:gui0E, "", s:cterm0E, "", "bold,italic", "")
call <sid>hi("ThemeMagentaBoldItalic", s:gui0F, "", s:cterm0F, "", "bold,italic", "")
call <sid>hi("ThemeGrey", s:grey, "", s:cterm03, "", "", "")
call <sid>hi("ThemeGreyItalic", s:grey, "", s:cterm03, "", "italic", "")
" Vim editor colors
call <sid>hi("Normal", s:gui05, s:guibg, s:cterm05, s:ctermbg, "", "")
call <sid>hi("Bold", "", "", "", "", "bold", "")
call <sid>hi("Italic", "", "", "", "", "italic", "")
call <sid>hi("BoldItalic", "", "", "", "", "italic,bold", "")
call <sid>hi("Normal", s:gui05, s:guibg, s:cterm05, s:ctermbg, "", "")
call <sid>hi("Debug", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("Directory", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("Error", s:guibg, s:gui08, s:ctermbg, s:cterm08, "", "")
call <sid>hi("ErrorMsg", s:gui08, s:guibg, s:cterm08, s:ctermbg, "", "")
call <sid>hi("Exception", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("FoldColumn", s:gui03, s:guibg, s:cterm03, s:ctermbg, "", "")
call <sid>hi("Folded", s:gui02, s:guibg, s:cterm02, s:ctermbg, "", "")
call <sid>hi("Folded", s:gui03, s:gui01, s:cterm02, s:ctermbg, "", "")
call <sid>hi("IncSearch", s:gui01, s:gui09, s:cterm01, s:cterm09, "none", "")
call <sid>hi("Italic", "", "", "", "", "italic", "")
call <sid>hi("Macro", s:gui0C, "", s:cterm0C, "", "", "")
call <sid>hi("MatchParen", "", s:gui03, "", s:cterm03, "", "")
call <sid>hi("ModeMsg", s:gui0B, "", s:cterm0B, "", "", "")
@ -258,7 +318,10 @@ call <sid>hi("VisualNOS", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("WarningMsg", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("WildMenu", s:guibg, s:gui06, s:ctermbg, s:cterm05, "", "")
call <sid>hi("Title", s:gui0D, "", s:cterm0D, "", "none", "")
call <sid>hi("Conceal", s:gui0D, s:guibg, s:cterm0D, s:ctermbg, "", "")
"call <sid>hi("Conceal", s:gui0D, s:guibg, s:cterm0D, s:ctermbg, "", "")
hi! link Conceal ThemeBlue
call <sid>hi("Cursor", s:gui05, s:guibg, "", "", "inverse", "")
call <sid>hi("NonText", s:gui03, "", s:cterm03, "", "", "")
call <sid>hi("Whitespace", s:gui03, "", s:cterm03, "", "", "")
@ -270,7 +333,7 @@ call <sid>hi("VertSplit", s:gui01, s:guibg, s:cterm01, s:ctermbg, "none", ""
call <sid>hi("ColorColumn", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("CursorColumn", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("CursorLine", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("CursorLineNr", s:gui04, s:gui01, s:cterm04, s:cterm01, "bold", "")
call <sid>hi("CursorLineNr", s:gui04, s:gui00, s:cterm04, s:cterm01, "", "")
call <sid>hi("QuickFixLine", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("PMenu", s:gui06, s:gui01, s:cterm06, s:cterm01, "none", "")
call <sid>hi("PMenuSel", s:gui06, s:gui02, s:cterm06, s:cterm02, "", "")
@ -281,27 +344,21 @@ call <sid>hi("TabLineFill", s:gui03, s:gui01, s:cterm03, s:cterm01, "none", ""
call <sid>hi("TabLineSel", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "none", "")
" Standard syntax
call <sid>hi("Define", s:gui0E, "", s:cterm0E, "", "none", "")
call <sid>hi("Identifier", s:gui06, "", s:cterm05, "", "none", "")
call <sid>hi("Keyword", s:gui0D, "", s:cterm0E, "", "none", "")
call <sid>hi("Todo", s:gui08, s:guibg, s:cterm08, s:ctermbg, "italic", "")
hi! link Boolean ThemeOrange
hi! link Character ThemeRed
"call <sid>hi("Comment", s:gui03, "", s:cterm03, "", "italic", "")
hi! link Comment ThemeGreyItalic
hi! link Conditional ThemeRed
hi! link Constant ThemeOrange
call <sid>hi("Define", s:gui0E, "", s:cterm0E, "", "none", "")
hi! link Delimiter ThemeFg1
if has("patch-8.0.1038")
call <sid>hi("Deprecated", "", "", "", "", "strikethrough", "")
endif
hi! link Float ThemeOrange
hi! link Function ThemeBlue
call <sid>hi("Identifier", s:gui06, "", s:cterm05, "", "none", "")
hi! link Include ThemeBlue
hi! link Constant ThemeOrange
call <sid>hi("Keyword", s:gui0E, "", s:cterm0E, "", "none", "")
hi! link Label ThemeOrange
hi! link Number ThemeOrange
hi! link Operator ThemeYellow
@ -314,101 +371,145 @@ hi! link StorageClass ThemeOrange
hi! link String ThemeGreen
hi! link Structure ThemeOrange
hi! link Tag ThemeOrange
call <sid>hi("Todo", s:gui08, s:guibg, s:cterm08, s:ctermbg, "italic", "")
call <sid>hi("Type", s:gui0A, "", s:cterm0A, "", "none", "")
hi! link Type ThemeYellow
hi! link Typedef ThemeOrange
" Treesitter
if has("nvim-0.8.0")
call <sid>hi("@field", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@property", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@namespace", s:gui06, "", s:cterm05, "", "italic", "")
call <sid>hi("@variable.builtin", s:gui06, "", s:cterm05, "", "italic", "")
call <sid>hi("@text.reference", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@text.uri", s:gui08, "", s:cterm08, "", "italic", "")
hi! link @field ThemeRed
hi! link @property ThemeRed
hi! link @namespace ThemeFg1Italic
hi! link @variable.builtin ThemeFg1Italic
hi! link @variable ThemeFg2
hi! link @conceal ThemeBlue
" Annotations & Attributes
call <sid>hi("@annotation", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@attribute", s:gui0D, "", s:cterm0D, "", "", "")
hi! link @text.uri ThemeRedItalic
hi! link @text.reference ThemeRed
" Booleans, Characters & Comments
call <sid>hi("@boolean", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@character", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@character.special", s:gui0F, "", s:cterm0F, "", "", "")
call <sid>hi("@comment", s:gui03, "", s:cterm03, "", "", "")
hi! link @annotation ThemeViolet
hi! link @attribute ThemeBlue
" Conditionals, Constants & Debugging
call <sid>hi("@keyword.conditional", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@constant", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@constant.builtin", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@constant.macro", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@keyword.debug", s:gui08, "", s:cterm08, "", "", "")
hi! link @boolean ThemeOrange
hi! link @character ThemeRed
hi! link @character.special ThemeMagenta
hi! link @comment Comment
" Directives & Exceptions
call <sid>hi("@keyword.directive.define", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@keyword.exception", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @constant ThemeBlue
hi! link @constant.builtin ThemeBlue
" Floats & Functions
call <sid>hi("@number.float", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@function", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@function.builtin", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@function.call", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@function.macro", s:gui08, "", s:cterm08, "", "", "")
hi! link @constant.macro ThemeRed
" Imports, Operators & Returns
call <sid>hi("@keyword.import", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@keyword.coroutine", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@keyword.operator", s:gui06, "", s:cterm05, "", "", "")
call <sid>hi("@keyword.return", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @keyword.directive.define ThemeViolet
hi! link @keyword.exception ThemeRed
" Methods & Namespaces
call <sid>hi("@function.method", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@function.method.call", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@namespace.builtin", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @comment.error ThemeRed
hi! link @number.float ThemeRed
hi! link @keyword.function ThemeRed
" Numbers & Directives
call <sid>hi("@none", s:gui06, "", s:cterm05, "", "", "")
call <sid>hi("@number", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@keyword.directive", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @function ThemeBlue
hi! link @function.builtin ThemeBlue
hi! link @function.call ThemeBlue
hi! link @function.macro ThemeRed
hi! link @function.method ThemeBlue
hi! link @function.method.call ThemeBlue
" Repeats, Storage & Strings
call <sid>hi("@keyword.repeat", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@keyword.storage", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@string", s:gui0B, "", s:cterm0B, "", "", "")
hi! link @keyword.debug ThemeRed
hi! link @keyword.conditional ThemeRed
hi! link @keyword.import ThemeViolet
hi! link @keyword.coroutine ThemeViolet
hi! link @keyword.operator ThemeYellow
hi! link @keyword.directive ThemeViolet
hi! link @keyword.repeat ThemeViolet
hi! link @keyword.storage ThemeViolet
hi! link @keyword.return ThemeRed
" Tags & Markup
call <sid>hi("@markup.link.label", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.link.label.symbol", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@tag", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@tag.attribute", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@tag.delimiter", s:gui0F, "", s:cterm0F, "", "", "")
hi! link @constructor ThemeBlue
hi! link @namespace.builtin ThemeViolet
" More Markup
call <sid>hi("@markup", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.environment", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.environment.name", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.raw", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@markup.math", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.strong", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.emphasis", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.strikethrough", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.underline", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.heading", s:gui0D, "", s:cterm0D, "", "", "")
hi! link @none ThemeFg1
hi! link @number ThemeOrange
hi! link @string ThemeGreen
" Comments & Types
call <sid>hi("@comment.note", s:gui03, "", s:cterm03, "", "", "")
call <sid>hi("@comment.error", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@comment.hint", s:gui0B, "", s:cterm0B, "", "", "")
call <sid>hi("@comment.info", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@comment.warning", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@comment.todo", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.link.url", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@type", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@type.definition", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@type.qualifier", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @tag ThemeRed
hi! link @tag.delimiter ThemeViolet
hi! link @tag.attribute ThemeYellow
" affects markdown
hi! link @markup ThemeYellow
hi! link @markup.raw ThemeGreen
hi! link @markup.raw.block.lang ThemeFg2Bold
hi! link @markup.raw.block.marker ThemeRed
"call <sid>hi("@markup.raw.block.lang", s:gui08, "#1e0000", "", s:ctermbg, "", "")
hi! link @markup.list ThemeBlue
hi! link @markup.quote ThemeGrey
hi! link @markup.link ThemeYellow " borders
hi! link @markup.link.text ThemeBlue
hi! link @markup.link.label ThemeYellow
hi! link @markup.link.url ThemeYellow
hi! link @markup.link.dest ThemeFg3
hi! link @markup.link.wiki ThemeYellow
hi! link @markup.link.wiki.text ThemeBlue
hi! link @markup.link.wiki.label ThemeYellow
"hi! link @markup.link.label.symbol ThemeGreen
"hi! link markdownWikiLink ThemeViolet
"
hi! link @markup.environment ThemeYellow
hi! link @markup.environment.name ThemeYellow
hi! link @markup.math ThemeYellow
hi! link @punctuation.delimiter.latex ThemeOrange
hi! link @markup.strong Bold
hi! link @markup.emphasis Bold
hi! link @markup.strikethrough ThemeYellow
hi! link @markup.underline ThemeYellow
hi! link @comment.info ThemeBlue
hi! link @comment.todo ThemeYellow
hi! link @comment.note ThemeBg3
hi! link @comment.hint ThemeGreen
hi! link @comment.warning ThemeOrange
hi! link @type ThemeYellow
hi! link @type.builtin ThemeOrange
hi! link @type.definition ThemeViolet
hi! link @type.qualifier ThemeViolet
" Markdown
" hi! link @spell.markdown ThemeFg3
"call <sid>hi("@markup.heading.marker", s:gui08, "", "", s:ctermbg, "bold", "")
"hi! link @markup.heading ThemeRed
hi! link @markup.heading.marker ThemeOrange
hi! link @markup.heading.title ThemeRed "Italic
" set this for a strong background
"call <sid>hi("@markup.heading.title", s:gui08, "#440503", "", s:ctermbg, "italic", "")
hi! link @markup.heading.title.1 Bold
hi! link @markup.heading.title.3 Italic
"hi! link @markup.heading.4.title Italic
" YAML
hi! link @string.yaml ThemeBlue
hi! link @punctuation.delimiter.yaml ThemeGreen
hi! link @property.yaml ThemeFg2
" Diff
hi! link @diff.minus ThemeRed
hi! link @diff.plus ThemeGreen
call <sid>hi("TreesitterContext", "", s:gui00, "", "", "", "")
"hi TreesitterContextLineNumberBottom gui=underline guisp=Gray
"call <sid>hi("TreesitterContextBottom", "", "", "", "", "underline", s:gui02)
call <sid>hi("TreesitterContextSeparator", s:gui03, "", "", "", "", "")
"call <sid>hi("TreesitterContextLineNumberBottom", "", "", "", "", "underline", s:gui02)
endif
" Standard highlights to be used by plugins
@ -433,6 +534,7 @@ call <sid>hi("WarningFloat", s:gui09, s:gui01, s:cterm09, s:cterm01, "", "")
call <sid>hi("InfoFloat", s:gui0D, s:gui01, s:cterm0D, s:cterm01, "", "")
call <sid>hi("HintFloat", s:gui0C, s:gui01, s:cterm0C, s:cterm01, "", "")
call <sid>hi("OkFloat", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "")
call <sid>hi("NormalFloat", s:gui05, s:gui01, s:cterm05, s:cterm01, "", "")
call <sid>hi("ErrorHighlight", "", "", s:ctermbg, s:cterm08, "underline", s:gui08)
call <sid>hi("WarningHighlight", "", "", s:ctermbg, s:cterm09, "underline", s:gui09)
@ -449,6 +551,62 @@ call <sid>hi("ReferenceText", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "", "")
call <sid>hi("ReferenceRead", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "", "")
call <sid>hi("ReferenceWrite", s:gui01, s:gui08, s:cterm01, s:cterm08, "", "")
" 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
" "
" LANGUAGES
" "
" C
call <sid>hi("cOperator", s:gui0C, "", s:cterm0C, "", "", "")
call <sid>hi("cPreCondit", s:gui0E, "", s:cterm0E, "", "", "")
@ -728,8 +886,8 @@ call <sid>hi("phpMethodsVar", s:gui0C, "", s:cterm0C, "", "", "")
" hi! link pythonBuiltinObj ThemeCyan
" hi! link pythonBuiltinFunc ThemeGreen
" hi! link pythonFunction Function
hi! link pythonDecorator ThemeYellow
hi! link pythonDecoratorName ThemeYellow
" hi! link pythonDecorator ThemeYellow
" hi! link pythonDecoratorName ThemeYellow
" hi! link pythonTripleQuotes ThemeGreenItalic
" hi! link pythonInclude ThemeBlue
" hi! link pythonImport ThemeBlue
@ -777,58 +935,6 @@ call <sid>hi("StartifySelect", s:gui0C, "", s:cterm0C, "", "", "")
call <sid>hi("StartifySlash", s:gui03, "", s:cterm03, "", "", "")
call <sid>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 <sid>hi("javaOperator", s:gui0D, "", s:cterm0D, "", "", "")
@ -864,12 +970,18 @@ hi! link markdownUrlTitleDelimiter ThemeGreen
hi! link markdownLink ThemeGreen
hi! link markdownWikiLink ThemeViolet
hi! link markdownUrl ThemeOrange
"hi! link markdownUrl ThemeOrange
hi! link markdownUrl ThemeRed
hi! link markdownUrlProtocol ThemeGreenItalic
hi! link markdownInlineUrl ThemeOrange
hi! link markdownLinkText ThemeViolet
hi! link markdownIdDeclaration markdownLinkText
hi! link pandocAtxHeader ThemeRed
hi! link pandocAtxStart ThemeOrange
"call s:HL('markdownItalic', s:fg3, s:none, s:italic)
"call s:HL('markdownLinkText', s:gray, s:none, s:underline)
@ -880,3 +992,4 @@ delf <sid>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

View File

@ -7,28 +7,50 @@
" - `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.
"
" There are several kinds of syntax identifiers:
"
" - Vim/editor related (e.g., Normal, Folded): these control colors of central Vim
" elements, like whitespace, bold text, the foldcolumn, etc
" - Generic syntax identifiers (e.g., Boolean, Conditional): these are key groups for
" syntax elements that various language syntax files link to. For instance, Python
" syntax files might have specific patterns that match function keywords like "def," and
" the resulting syntax region can be highlighted by linking it to the core "Function"
" highlight identifier.
" - Treesitter-based identifiers (e.g., @variable, @boolean): highlight groups for
" treesitter-based syntax highlighting, which can replace regex-based matching when
" enabled for richer (and often faster) highlighting. These groups can be linked to the
" core identifiers like any other language.
"
" *Note*: each of these identifiers can add a lang-specific suffix to style those groups
" as they apply to particular languages. For ex, `@boolean.python ThemeRed` would style
" Python booleans red, while the lang-agnostic `@boolean` definition remains.
" - Plugin-oriented identifiers (e.g., SpellBad, ErrorFloat): these are groups mostly core
" to vim/nvim, but often appear only in the context of plugins or certain modules (like
" LSP). For instance, ErrorFloat styles floating windows that might be drawn by nvim's
" built-in LSP hover info.
" 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:gui00 = "#2f2e28"
let g:base16_gui00 = "#2f2e28"
let s:gui01 = "#3b3b34"
let g:base16_gui01 = "#3b3b34"
let s:gui02 = "#484841"
let g:base16_gui02 = "#484841"
let s:gui03 = "#56564f"
let g:base16_gui03 = "#56564f"
let s:gui04 = "#bfbeb6"
let g:base16_gui04 = "#bfbeb6"
let s:gui05 = "#cfcec6"
let g:base16_gui05 = "#cfcec6"
let s:gui06 = "#dfded6"
let g:base16_gui06 = "#dfded6"
let s:gui07 = "#efefe7"
let g:base16_gui07 = "#efefe7"
let s:gui08 = "#f37060"
let g:base16_gui08 = "#f37060"
let s:gui09 = "#da8934"
let g:base16_gui09 = "#da8934"
let s:gui09 = "#d98937"
let g:base16_gui09 = "#d98937"
let s:gui0A = "#a7a15f"
let g:base16_gui0A = "#a7a15f"
let s:gui0B = "#6eb178"
@ -42,7 +64,7 @@ let g:base16_gui0E = "#799ee3"
let s:gui0F = "#f37060"
let g:base16_gui0F = "#f37060"
let s:grey = "#928f88"
let s:grey = "#818179"
" Terminal color definitions
let s:cterm00 = "00"
@ -81,22 +103,22 @@ let g:base16_cterm0F = "14"
" Neovim terminal colours
if has("nvim")
let g:terminal_color_0 = "#302e28"
let g:terminal_color_0 = "#2f2e28"
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_7 = "#cfcec6"
let g:terminal_color_8 = "#56564f"
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_15 = "#efefe7"
let g:terminal_color_background = g:terminal_color_0
let g:terminal_color_foreground = g:terminal_color_5
@ -107,22 +129,22 @@ if has("nvim")
elseif has("terminal")
let g:terminal_ansi_colors = [
\ "#302e28",
\ "#2f2e28",
\ "#f37060",
\ "#6eb178",
\ "#a7a15f",
\ "#799ee3",
\ "#799ee3",
\ "#6eb178",
\ "#d0cec6",
\ "#58554e",
\ "#cfcec6",
\ "#56564f",
\ "#f37060",
\ "#6eb178",
\ "#a7a15f",
\ "#799ee3",
\ "#799ee3",
\ "#6eb178",
\ "#f1eee6",
\ "#efefe7",
\ ]
endif
@ -199,7 +221,25 @@ call <sid>hi("ThemeFg3", s:gui04, "", s:cterm04, "", "", "")
call <sid>hi("ThemeFg2", s:gui05, "", s:cterm05, "", "", "")
call <sid>hi("ThemeFg1", s:gui06, "", s:cterm06, "", "", "")
call <sid>hi("ThemeFg0", s:gui07, "", s:cterm07, "", "", "")
"
call <sid>hi("ThemeBg0bold", s:gui00, "", s:cterm00, "", "bold", "")
call <sid>hi("ThemeBg1bold", s:gui01, "", s:cterm01, "", "bold", "")
call <sid>hi("ThemeBg2bold", s:gui02, "", s:cterm02, "", "bold", "")
call <sid>hi("ThemeBg3bold", s:gui03, "", s:cterm03, "", "bold", "")
call <sid>hi("ThemeFg3bold", s:gui04, "", s:cterm04, "", "bold", "")
call <sid>hi("ThemeFg2bold", s:gui05, "", s:cterm05, "", "bold", "")
call <sid>hi("ThemeFg1bold", s:gui06, "", s:cterm06, "", "bold", "")
call <sid>hi("ThemeFg0bold", s:gui07, "", s:cterm07, "", "bold", "")
call <sid>hi("ThemeBg0Italic", s:gui00, "", s:cterm00, "", "italic", "")
call <sid>hi("ThemeBg1Italic", s:gui01, "", s:cterm01, "", "italic", "")
call <sid>hi("ThemeBg2Italic", s:gui02, "", s:cterm02, "", "italic", "")
call <sid>hi("ThemeBg3Italic", s:gui03, "", s:cterm03, "", "italic", "")
call <sid>hi("ThemeFg3Italic", s:gui04, "", s:cterm04, "", "italic", "")
call <sid>hi("ThemeFg2Italic", s:gui05, "", s:cterm05, "", "italic", "")
call <sid>hi("ThemeFg1Italic", s:gui06, "", s:cterm06, "", "italic", "")
call <sid>hi("ThemeFg0Italic", s:gui07, "", s:cterm07, "", "italic", "")
call <sid>hi("ThemeRed", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("ThemeOrange", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("ThemeYellow", s:gui0A, "", s:cterm0A, "", "", "")
@ -209,6 +249,15 @@ call <sid>hi("ThemeBlue", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("ThemeViolet", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("ThemeMagenta", s:gui0F, "", s:cterm0F, "", "", "")
call <sid>hi("ThemeRedNone", s:gui08, "", s:cterm08, "", "NONE", "")
call <sid>hi("ThemeOrangeNone", s:gui09, "", s:cterm09, "", "NONE", "")
call <sid>hi("ThemeYellowNone", s:gui0A, "", s:cterm0A, "", "NONE", "")
call <sid>hi("ThemeGreenNone", s:gui0B, "", s:cterm0B, "", "NONE", "")
call <sid>hi("ThemeCyanNone", s:gui0C, "", s:cterm0C, "", "NONE", "")
call <sid>hi("ThemeBlueNone", s:gui0D, "", s:cterm0D, "", "NONE", "")
call <sid>hi("ThemeVioletNone", s:gui0E, "", s:cterm0E, "", "NONE", "")
call <sid>hi("ThemeMagentaNone", s:gui0F, "", s:cterm0F, "", "NONE", "")
call <sid>hi("ThemeRedBold", s:gui08, "", s:cterm08, "", "bold", "")
call <sid>hi("ThemeOrangeBold", s:gui09, "", s:cterm09, "", "bold", "")
call <sid>hi("ThemeYellowBold", s:gui0A, "", s:cterm0A, "", "bold", "")
@ -227,22 +276,33 @@ call <sid>hi("ThemeBlueItalic", s:gui0D, "", s:cterm0D, "", "italic", "")
call <sid>hi("ThemeVioletItalic", s:gui0E, "", s:cterm0E, "", "italic", "")
call <sid>hi("ThemeMagentaItalic", s:gui0F, "", s:cterm0F, "", "italic", "")
call <sid>hi("ThemeRedBoldItalic", s:gui08, "", s:cterm08, "", "bold,italic", "")
call <sid>hi("ThemeOrangeBoldItalic", s:gui09, "", s:cterm09, "", "bold,italic", "")
call <sid>hi("ThemeYellowBoldItalic", s:gui0A, "", s:cterm0A, "", "bold,italic", "")
call <sid>hi("ThemeGreenBoldItalic", s:gui0B, "", s:cterm0B, "", "bold,italic", "")
call <sid>hi("ThemeCyanBoldItalic", s:gui0C, "", s:cterm0C, "", "bold,italic", "")
call <sid>hi("ThemeBlueBoldItalic", s:gui0D, "", s:cterm0D, "", "bold,italic", "")
call <sid>hi("ThemeVioletBoldItalic", s:gui0E, "", s:cterm0E, "", "bold,italic", "")
call <sid>hi("ThemeMagentaBoldItalic", s:gui0F, "", s:cterm0F, "", "bold,italic", "")
call <sid>hi("ThemeGrey", s:grey, "", s:cterm03, "", "", "")
call <sid>hi("ThemeGreyItalic", s:grey, "", s:cterm03, "", "italic", "")
" Vim editor colors
call <sid>hi("Normal", s:gui05, s:guibg, s:cterm05, s:ctermbg, "", "")
call <sid>hi("Bold", "", "", "", "", "bold", "")
call <sid>hi("Italic", "", "", "", "", "italic", "")
call <sid>hi("BoldItalic", "", "", "", "", "italic,bold", "")
call <sid>hi("Normal", s:gui05, s:guibg, s:cterm05, s:ctermbg, "", "")
call <sid>hi("Debug", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("Directory", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("Error", s:guibg, s:gui08, s:ctermbg, s:cterm08, "", "")
call <sid>hi("ErrorMsg", s:gui08, s:guibg, s:cterm08, s:ctermbg, "", "")
call <sid>hi("Exception", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("FoldColumn", s:gui03, s:guibg, s:cterm03, s:ctermbg, "", "")
call <sid>hi("Folded", s:gui02, s:guibg, s:cterm02, s:ctermbg, "", "")
call <sid>hi("Folded", s:gui03, s:gui01, s:cterm02, s:ctermbg, "", "")
call <sid>hi("IncSearch", s:gui01, s:gui09, s:cterm01, s:cterm09, "none", "")
call <sid>hi("Italic", "", "", "", "", "italic", "")
call <sid>hi("Macro", s:gui0C, "", s:cterm0C, "", "", "")
call <sid>hi("MatchParen", "", s:gui03, "", s:cterm03, "", "")
call <sid>hi("ModeMsg", s:gui0B, "", s:cterm0B, "", "", "")
@ -258,7 +318,10 @@ call <sid>hi("VisualNOS", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("WarningMsg", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("WildMenu", s:guibg, s:gui06, s:ctermbg, s:cterm05, "", "")
call <sid>hi("Title", s:gui0D, "", s:cterm0D, "", "none", "")
call <sid>hi("Conceal", s:gui0D, s:guibg, s:cterm0D, s:ctermbg, "", "")
"call <sid>hi("Conceal", s:gui0D, s:guibg, s:cterm0D, s:ctermbg, "", "")
hi! link Conceal ThemeBlue
call <sid>hi("Cursor", s:gui05, s:guibg, "", "", "inverse", "")
call <sid>hi("NonText", s:gui03, "", s:cterm03, "", "", "")
call <sid>hi("Whitespace", s:gui03, "", s:cterm03, "", "", "")
@ -270,7 +333,7 @@ call <sid>hi("VertSplit", s:gui01, s:guibg, s:cterm01, s:ctermbg, "none", ""
call <sid>hi("ColorColumn", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("CursorColumn", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("CursorLine", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("CursorLineNr", s:gui04, s:gui01, s:cterm04, s:cterm01, "bold", "")
call <sid>hi("CursorLineNr", s:gui04, s:gui00, s:cterm04, s:cterm01, "", "")
call <sid>hi("QuickFixLine", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("PMenu", s:gui06, s:gui01, s:cterm06, s:cterm01, "none", "")
call <sid>hi("PMenuSel", s:gui06, s:gui02, s:cterm06, s:cterm02, "", "")
@ -281,27 +344,21 @@ call <sid>hi("TabLineFill", s:gui03, s:gui01, s:cterm03, s:cterm01, "none", ""
call <sid>hi("TabLineSel", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "none", "")
" Standard syntax
call <sid>hi("Define", s:gui0E, "", s:cterm0E, "", "none", "")
call <sid>hi("Identifier", s:gui06, "", s:cterm05, "", "none", "")
call <sid>hi("Keyword", s:gui0D, "", s:cterm0E, "", "none", "")
call <sid>hi("Todo", s:gui08, s:guibg, s:cterm08, s:ctermbg, "italic", "")
hi! link Boolean ThemeOrange
hi! link Character ThemeRed
"call <sid>hi("Comment", s:gui03, "", s:cterm03, "", "italic", "")
hi! link Comment ThemeGreyItalic
hi! link Conditional ThemeRed
hi! link Constant ThemeOrange
call <sid>hi("Define", s:gui0E, "", s:cterm0E, "", "none", "")
hi! link Delimiter ThemeFg1
if has("patch-8.0.1038")
call <sid>hi("Deprecated", "", "", "", "", "strikethrough", "")
endif
hi! link Float ThemeOrange
hi! link Function ThemeBlue
call <sid>hi("Identifier", s:gui06, "", s:cterm05, "", "none", "")
hi! link Include ThemeBlue
hi! link Constant ThemeOrange
call <sid>hi("Keyword", s:gui0E, "", s:cterm0E, "", "none", "")
hi! link Label ThemeOrange
hi! link Number ThemeOrange
hi! link Operator ThemeYellow
@ -314,101 +371,145 @@ hi! link StorageClass ThemeOrange
hi! link String ThemeGreen
hi! link Structure ThemeOrange
hi! link Tag ThemeOrange
call <sid>hi("Todo", s:gui08, s:guibg, s:cterm08, s:ctermbg, "italic", "")
call <sid>hi("Type", s:gui0A, "", s:cterm0A, "", "none", "")
hi! link Type ThemeYellow
hi! link Typedef ThemeOrange
" Treesitter
if has("nvim-0.8.0")
call <sid>hi("@field", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@property", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@namespace", s:gui06, "", s:cterm05, "", "italic", "")
call <sid>hi("@variable.builtin", s:gui06, "", s:cterm05, "", "italic", "")
call <sid>hi("@text.reference", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@text.uri", s:gui08, "", s:cterm08, "", "italic", "")
hi! link @field ThemeRed
hi! link @property ThemeRed
hi! link @namespace ThemeFg1Italic
hi! link @variable.builtin ThemeFg1Italic
hi! link @variable ThemeFg2
hi! link @conceal ThemeBlue
" Annotations & Attributes
call <sid>hi("@annotation", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@attribute", s:gui0D, "", s:cterm0D, "", "", "")
hi! link @text.uri ThemeRedItalic
hi! link @text.reference ThemeRed
" Booleans, Characters & Comments
call <sid>hi("@boolean", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@character", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@character.special", s:gui0F, "", s:cterm0F, "", "", "")
call <sid>hi("@comment", s:gui03, "", s:cterm03, "", "", "")
hi! link @annotation ThemeViolet
hi! link @attribute ThemeBlue
" Conditionals, Constants & Debugging
call <sid>hi("@keyword.conditional", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@constant", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@constant.builtin", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@constant.macro", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@keyword.debug", s:gui08, "", s:cterm08, "", "", "")
hi! link @boolean ThemeOrange
hi! link @character ThemeRed
hi! link @character.special ThemeMagenta
hi! link @comment Comment
" Directives & Exceptions
call <sid>hi("@keyword.directive.define", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@keyword.exception", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @constant ThemeBlue
hi! link @constant.builtin ThemeBlue
" Floats & Functions
call <sid>hi("@number.float", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@function", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@function.builtin", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@function.call", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@function.macro", s:gui08, "", s:cterm08, "", "", "")
hi! link @constant.macro ThemeRed
" Imports, Operators & Returns
call <sid>hi("@keyword.import", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@keyword.coroutine", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@keyword.operator", s:gui06, "", s:cterm05, "", "", "")
call <sid>hi("@keyword.return", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @keyword.directive.define ThemeViolet
hi! link @keyword.exception ThemeRed
" Methods & Namespaces
call <sid>hi("@function.method", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@function.method.call", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@namespace.builtin", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @comment.error ThemeRed
hi! link @number.float ThemeRed
hi! link @keyword.function ThemeRed
" Numbers & Directives
call <sid>hi("@none", s:gui06, "", s:cterm05, "", "", "")
call <sid>hi("@number", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@keyword.directive", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @function ThemeBlue
hi! link @function.builtin ThemeBlue
hi! link @function.call ThemeBlue
hi! link @function.macro ThemeRed
hi! link @function.method ThemeBlue
hi! link @function.method.call ThemeBlue
" Repeats, Storage & Strings
call <sid>hi("@keyword.repeat", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@keyword.storage", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@string", s:gui0B, "", s:cterm0B, "", "", "")
hi! link @keyword.debug ThemeRed
hi! link @keyword.conditional ThemeRed
hi! link @keyword.import ThemeViolet
hi! link @keyword.coroutine ThemeViolet
hi! link @keyword.operator ThemeYellow
hi! link @keyword.directive ThemeViolet
hi! link @keyword.repeat ThemeViolet
hi! link @keyword.storage ThemeViolet
hi! link @keyword.return ThemeRed
" Tags & Markup
call <sid>hi("@markup.link.label", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.link.label.symbol", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@tag", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@tag.attribute", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@tag.delimiter", s:gui0F, "", s:cterm0F, "", "", "")
hi! link @constructor ThemeBlue
hi! link @namespace.builtin ThemeViolet
" More Markup
call <sid>hi("@markup", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.environment", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.environment.name", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.raw", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@markup.math", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.strong", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.emphasis", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.strikethrough", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.underline", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.heading", s:gui0D, "", s:cterm0D, "", "", "")
hi! link @none ThemeFg1
hi! link @number ThemeOrange
hi! link @string ThemeGreen
" Comments & Types
call <sid>hi("@comment.note", s:gui03, "", s:cterm03, "", "", "")
call <sid>hi("@comment.error", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@comment.hint", s:gui0B, "", s:cterm0B, "", "", "")
call <sid>hi("@comment.info", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@comment.warning", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@comment.todo", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.link.url", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@type", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@type.definition", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@type.qualifier", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @tag ThemeRed
hi! link @tag.delimiter ThemeViolet
hi! link @tag.attribute ThemeYellow
" affects markdown
hi! link @markup ThemeYellow
hi! link @markup.raw ThemeGreen
hi! link @markup.raw.block.lang ThemeFg2Bold
hi! link @markup.raw.block.marker ThemeRed
"call <sid>hi("@markup.raw.block.lang", s:gui08, "#1e0000", "", s:ctermbg, "", "")
hi! link @markup.list ThemeBlue
hi! link @markup.quote ThemeGrey
hi! link @markup.link ThemeYellow " borders
hi! link @markup.link.text ThemeBlue
hi! link @markup.link.label ThemeYellow
hi! link @markup.link.url ThemeYellow
hi! link @markup.link.dest ThemeFg3
hi! link @markup.link.wiki ThemeYellow
hi! link @markup.link.wiki.text ThemeBlue
hi! link @markup.link.wiki.label ThemeYellow
"hi! link @markup.link.label.symbol ThemeGreen
"hi! link markdownWikiLink ThemeViolet
"
hi! link @markup.environment ThemeYellow
hi! link @markup.environment.name ThemeYellow
hi! link @markup.math ThemeYellow
hi! link @punctuation.delimiter.latex ThemeOrange
hi! link @markup.strong Bold
hi! link @markup.emphasis Bold
hi! link @markup.strikethrough ThemeYellow
hi! link @markup.underline ThemeYellow
hi! link @comment.info ThemeBlue
hi! link @comment.todo ThemeYellow
hi! link @comment.note ThemeBg3
hi! link @comment.hint ThemeGreen
hi! link @comment.warning ThemeOrange
hi! link @type ThemeYellow
hi! link @type.builtin ThemeOrange
hi! link @type.definition ThemeViolet
hi! link @type.qualifier ThemeViolet
" Markdown
" hi! link @spell.markdown ThemeFg3
"call <sid>hi("@markup.heading.marker", s:gui08, "", "", s:ctermbg, "bold", "")
"hi! link @markup.heading ThemeRed
hi! link @markup.heading.marker ThemeOrange
hi! link @markup.heading.title ThemeRed "Italic
" set this for a strong background
"call <sid>hi("@markup.heading.title", s:gui08, "#440503", "", s:ctermbg, "italic", "")
hi! link @markup.heading.title.1 Bold
hi! link @markup.heading.title.3 Italic
"hi! link @markup.heading.4.title Italic
" YAML
hi! link @string.yaml ThemeBlue
hi! link @punctuation.delimiter.yaml ThemeGreen
hi! link @property.yaml ThemeFg2
" Diff
hi! link @diff.minus ThemeRed
hi! link @diff.plus ThemeGreen
call <sid>hi("TreesitterContext", "", s:gui00, "", "", "", "")
"hi TreesitterContextLineNumberBottom gui=underline guisp=Gray
"call <sid>hi("TreesitterContextBottom", "", "", "", "", "underline", s:gui02)
call <sid>hi("TreesitterContextSeparator", s:gui03, "", "", "", "", "")
"call <sid>hi("TreesitterContextLineNumberBottom", "", "", "", "", "underline", s:gui02)
endif
" Standard highlights to be used by plugins
@ -433,6 +534,7 @@ call <sid>hi("WarningFloat", s:gui09, s:gui01, s:cterm09, s:cterm01, "", "")
call <sid>hi("InfoFloat", s:gui0D, s:gui01, s:cterm0D, s:cterm01, "", "")
call <sid>hi("HintFloat", s:gui0C, s:gui01, s:cterm0C, s:cterm01, "", "")
call <sid>hi("OkFloat", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "")
call <sid>hi("NormalFloat", s:gui05, s:gui01, s:cterm05, s:cterm01, "", "")
call <sid>hi("ErrorHighlight", "", "", s:ctermbg, s:cterm08, "underline", s:gui08)
call <sid>hi("WarningHighlight", "", "", s:ctermbg, s:cterm09, "underline", s:gui09)
@ -449,6 +551,62 @@ call <sid>hi("ReferenceText", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "", "")
call <sid>hi("ReferenceRead", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "", "")
call <sid>hi("ReferenceWrite", s:gui01, s:gui08, s:cterm01, s:cterm08, "", "")
" 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
" "
" LANGUAGES
" "
" C
call <sid>hi("cOperator", s:gui0C, "", s:cterm0C, "", "", "")
call <sid>hi("cPreCondit", s:gui0E, "", s:cterm0E, "", "", "")
@ -728,8 +886,8 @@ call <sid>hi("phpMethodsVar", s:gui0C, "", s:cterm0C, "", "", "")
" hi! link pythonBuiltinObj ThemeCyan
" hi! link pythonBuiltinFunc ThemeGreen
" hi! link pythonFunction Function
hi! link pythonDecorator ThemeYellow
hi! link pythonDecoratorName ThemeYellow
" hi! link pythonDecorator ThemeYellow
" hi! link pythonDecoratorName ThemeYellow
" hi! link pythonTripleQuotes ThemeGreenItalic
" hi! link pythonInclude ThemeBlue
" hi! link pythonImport ThemeBlue
@ -777,58 +935,6 @@ call <sid>hi("StartifySelect", s:gui0C, "", s:cterm0C, "", "", "")
call <sid>hi("StartifySlash", s:gui03, "", s:cterm03, "", "", "")
call <sid>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 <sid>hi("javaOperator", s:gui0D, "", s:cterm0D, "", "", "")
@ -864,12 +970,18 @@ hi! link markdownUrlTitleDelimiter ThemeGreen
hi! link markdownLink ThemeGreen
hi! link markdownWikiLink ThemeViolet
hi! link markdownUrl ThemeOrange
"hi! link markdownUrl ThemeOrange
hi! link markdownUrl ThemeRed
hi! link markdownUrlProtocol ThemeGreenItalic
hi! link markdownInlineUrl ThemeOrange
hi! link markdownLinkText ThemeViolet
hi! link markdownIdDeclaration markdownLinkText
hi! link pandocAtxHeader ThemeRed
hi! link pandocAtxStart ThemeOrange
"call s:HL('markdownItalic', s:fg3, s:none, s:italic)
"call s:HL('markdownLinkText', s:gray, s:none, s:underline)
@ -880,3 +992,4 @@ delf <sid>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

View File

@ -7,26 +7,48 @@
" - `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.
"
" There are several kinds of syntax identifiers:
"
" - Vim/editor related (e.g., Normal, Folded): these control colors of central Vim
" elements, like whitespace, bold text, the foldcolumn, etc
" - Generic syntax identifiers (e.g., Boolean, Conditional): these are key groups for
" syntax elements that various language syntax files link to. For instance, Python
" syntax files might have specific patterns that match function keywords like "def," and
" the resulting syntax region can be highlighted by linking it to the core "Function"
" highlight identifier.
" - Treesitter-based identifiers (e.g., @variable, @boolean): highlight groups for
" treesitter-based syntax highlighting, which can replace regex-based matching when
" enabled for richer (and often faster) highlighting. These groups can be linked to the
" core identifiers like any other language.
"
" *Note*: each of these identifiers can add a lang-specific suffix to style those groups
" as they apply to particular languages. For ex, `@boolean.python ThemeRed` would style
" Python booleans red, while the lang-agnostic `@boolean` definition remains.
" - Plugin-oriented identifiers (e.g., SpellBad, ErrorFloat): these are groups mostly core
" to vim/nvim, but often appear only in the context of plugins or certain modules (like
" LSP). For instance, ErrorFloat styles floating windows that might be drawn by nvim's
" built-in LSP hover info.
" 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:gui00 = "#cfcec6"
let g:base16_gui00 = "#cfcec6"
let s:gui01 = "#bfbeb6"
let g:base16_gui01 = "#bfbeb6"
let s:gui02 = "#afaea7"
let g:base16_gui02 = "#afaea7"
let s:gui03 = "#9f9f97"
let g:base16_gui03 = "#9f9f97"
let s:gui04 = "#3b3b34"
let g:base16_gui04 = "#3b3b34"
let s:gui05 = "#2f2e28"
let g:base16_gui05 = "#2f2e28"
let s:gui06 = "#22221c"
let g:base16_gui06 = "#22221c"
let s:gui07 = "#171611"
let g:base16_gui07 = "#171611"
let s:gui08 = "#9d1a13"
let g:base16_gui08 = "#9d1a13"
let s:gui09 = "#7c4706"
let g:base16_gui09 = "#7c4706"
let s:gui0A = "#5b572e"
@ -39,10 +61,10 @@ 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:gui0F = "#9d1a13"
let g:base16_gui0F = "#9d1a13"
let s:grey = "#505754"
let s:grey = "#72726b"
" Terminal color definitions
let s:cterm00 = "00"
@ -81,22 +103,22 @@ 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_0 = "#cfcec6"
let g:terminal_color_1 = "#9d1a13"
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_7 = "#2f2e28"
let g:terminal_color_8 = "#9f9f97"
let g:terminal_color_9 = "#9d1a13"
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_15 = "#171611"
let g:terminal_color_background = g:terminal_color_0
let g:terminal_color_foreground = g:terminal_color_5
@ -107,22 +129,22 @@ if has("nvim")
elseif has("terminal")
let g:terminal_ansi_colors = [
\ "#b7c0bc",
\ "#9d1912",
\ "#cfcec6",
\ "#9d1a13",
\ "#2e6337",
\ "#5b572e",
\ "#2d5299",
\ "#2d5299",
\ "#2e6337",
\ "#1d2321",
\ "#89918e",
\ "#9d1912",
\ "#2f2e28",
\ "#9f9f97",
\ "#9d1a13",
\ "#2e6337",
\ "#5b572e",
\ "#2d5299",
\ "#2d5299",
\ "#2e6337",
\ "#070d0a",
\ "#171611",
\ ]
endif
@ -199,7 +221,25 @@ call <sid>hi("ThemeFg3", s:gui04, "", s:cterm04, "", "", "")
call <sid>hi("ThemeFg2", s:gui05, "", s:cterm05, "", "", "")
call <sid>hi("ThemeFg1", s:gui06, "", s:cterm06, "", "", "")
call <sid>hi("ThemeFg0", s:gui07, "", s:cterm07, "", "", "")
"
call <sid>hi("ThemeBg0bold", s:gui00, "", s:cterm00, "", "bold", "")
call <sid>hi("ThemeBg1bold", s:gui01, "", s:cterm01, "", "bold", "")
call <sid>hi("ThemeBg2bold", s:gui02, "", s:cterm02, "", "bold", "")
call <sid>hi("ThemeBg3bold", s:gui03, "", s:cterm03, "", "bold", "")
call <sid>hi("ThemeFg3bold", s:gui04, "", s:cterm04, "", "bold", "")
call <sid>hi("ThemeFg2bold", s:gui05, "", s:cterm05, "", "bold", "")
call <sid>hi("ThemeFg1bold", s:gui06, "", s:cterm06, "", "bold", "")
call <sid>hi("ThemeFg0bold", s:gui07, "", s:cterm07, "", "bold", "")
call <sid>hi("ThemeBg0Italic", s:gui00, "", s:cterm00, "", "italic", "")
call <sid>hi("ThemeBg1Italic", s:gui01, "", s:cterm01, "", "italic", "")
call <sid>hi("ThemeBg2Italic", s:gui02, "", s:cterm02, "", "italic", "")
call <sid>hi("ThemeBg3Italic", s:gui03, "", s:cterm03, "", "italic", "")
call <sid>hi("ThemeFg3Italic", s:gui04, "", s:cterm04, "", "italic", "")
call <sid>hi("ThemeFg2Italic", s:gui05, "", s:cterm05, "", "italic", "")
call <sid>hi("ThemeFg1Italic", s:gui06, "", s:cterm06, "", "italic", "")
call <sid>hi("ThemeFg0Italic", s:gui07, "", s:cterm07, "", "italic", "")
call <sid>hi("ThemeRed", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("ThemeOrange", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("ThemeYellow", s:gui0A, "", s:cterm0A, "", "", "")
@ -209,6 +249,15 @@ call <sid>hi("ThemeBlue", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("ThemeViolet", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("ThemeMagenta", s:gui0F, "", s:cterm0F, "", "", "")
call <sid>hi("ThemeRedNone", s:gui08, "", s:cterm08, "", "NONE", "")
call <sid>hi("ThemeOrangeNone", s:gui09, "", s:cterm09, "", "NONE", "")
call <sid>hi("ThemeYellowNone", s:gui0A, "", s:cterm0A, "", "NONE", "")
call <sid>hi("ThemeGreenNone", s:gui0B, "", s:cterm0B, "", "NONE", "")
call <sid>hi("ThemeCyanNone", s:gui0C, "", s:cterm0C, "", "NONE", "")
call <sid>hi("ThemeBlueNone", s:gui0D, "", s:cterm0D, "", "NONE", "")
call <sid>hi("ThemeVioletNone", s:gui0E, "", s:cterm0E, "", "NONE", "")
call <sid>hi("ThemeMagentaNone", s:gui0F, "", s:cterm0F, "", "NONE", "")
call <sid>hi("ThemeRedBold", s:gui08, "", s:cterm08, "", "bold", "")
call <sid>hi("ThemeOrangeBold", s:gui09, "", s:cterm09, "", "bold", "")
call <sid>hi("ThemeYellowBold", s:gui0A, "", s:cterm0A, "", "bold", "")
@ -227,22 +276,33 @@ call <sid>hi("ThemeBlueItalic", s:gui0D, "", s:cterm0D, "", "italic", "")
call <sid>hi("ThemeVioletItalic", s:gui0E, "", s:cterm0E, "", "italic", "")
call <sid>hi("ThemeMagentaItalic", s:gui0F, "", s:cterm0F, "", "italic", "")
call <sid>hi("ThemeRedBoldItalic", s:gui08, "", s:cterm08, "", "bold,italic", "")
call <sid>hi("ThemeOrangeBoldItalic", s:gui09, "", s:cterm09, "", "bold,italic", "")
call <sid>hi("ThemeYellowBoldItalic", s:gui0A, "", s:cterm0A, "", "bold,italic", "")
call <sid>hi("ThemeGreenBoldItalic", s:gui0B, "", s:cterm0B, "", "bold,italic", "")
call <sid>hi("ThemeCyanBoldItalic", s:gui0C, "", s:cterm0C, "", "bold,italic", "")
call <sid>hi("ThemeBlueBoldItalic", s:gui0D, "", s:cterm0D, "", "bold,italic", "")
call <sid>hi("ThemeVioletBoldItalic", s:gui0E, "", s:cterm0E, "", "bold,italic", "")
call <sid>hi("ThemeMagentaBoldItalic", s:gui0F, "", s:cterm0F, "", "bold,italic", "")
call <sid>hi("ThemeGrey", s:grey, "", s:cterm03, "", "", "")
call <sid>hi("ThemeGreyItalic", s:grey, "", s:cterm03, "", "italic", "")
" Vim editor colors
call <sid>hi("Normal", s:gui05, s:guibg, s:cterm05, s:ctermbg, "", "")
call <sid>hi("Bold", "", "", "", "", "bold", "")
call <sid>hi("Italic", "", "", "", "", "italic", "")
call <sid>hi("BoldItalic", "", "", "", "", "italic,bold", "")
call <sid>hi("Normal", s:gui05, s:guibg, s:cterm05, s:ctermbg, "", "")
call <sid>hi("Debug", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("Directory", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("Error", s:guibg, s:gui08, s:ctermbg, s:cterm08, "", "")
call <sid>hi("ErrorMsg", s:gui08, s:guibg, s:cterm08, s:ctermbg, "", "")
call <sid>hi("Exception", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("FoldColumn", s:gui03, s:guibg, s:cterm03, s:ctermbg, "", "")
call <sid>hi("Folded", s:gui02, s:guibg, s:cterm02, s:ctermbg, "", "")
call <sid>hi("Folded", s:gui03, s:gui01, s:cterm02, s:ctermbg, "", "")
call <sid>hi("IncSearch", s:gui01, s:gui09, s:cterm01, s:cterm09, "none", "")
call <sid>hi("Italic", "", "", "", "", "italic", "")
call <sid>hi("Macro", s:gui0C, "", s:cterm0C, "", "", "")
call <sid>hi("MatchParen", "", s:gui03, "", s:cterm03, "", "")
call <sid>hi("ModeMsg", s:gui0B, "", s:cterm0B, "", "", "")
@ -258,7 +318,10 @@ call <sid>hi("VisualNOS", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("WarningMsg", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("WildMenu", s:guibg, s:gui06, s:ctermbg, s:cterm05, "", "")
call <sid>hi("Title", s:gui0D, "", s:cterm0D, "", "none", "")
call <sid>hi("Conceal", s:gui0D, s:guibg, s:cterm0D, s:ctermbg, "", "")
"call <sid>hi("Conceal", s:gui0D, s:guibg, s:cterm0D, s:ctermbg, "", "")
hi! link Conceal ThemeBlue
call <sid>hi("Cursor", s:gui05, s:guibg, "", "", "inverse", "")
call <sid>hi("NonText", s:gui03, "", s:cterm03, "", "", "")
call <sid>hi("Whitespace", s:gui03, "", s:cterm03, "", "", "")
@ -270,7 +333,7 @@ call <sid>hi("VertSplit", s:gui01, s:guibg, s:cterm01, s:ctermbg, "none", ""
call <sid>hi("ColorColumn", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("CursorColumn", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("CursorLine", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("CursorLineNr", s:gui04, s:gui01, s:cterm04, s:cterm01, "bold", "")
call <sid>hi("CursorLineNr", s:gui04, s:gui00, s:cterm04, s:cterm01, "", "")
call <sid>hi("QuickFixLine", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("PMenu", s:gui06, s:gui01, s:cterm06, s:cterm01, "none", "")
call <sid>hi("PMenuSel", s:gui06, s:gui02, s:cterm06, s:cterm02, "", "")
@ -281,27 +344,21 @@ call <sid>hi("TabLineFill", s:gui03, s:gui01, s:cterm03, s:cterm01, "none", ""
call <sid>hi("TabLineSel", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "none", "")
" Standard syntax
call <sid>hi("Define", s:gui0E, "", s:cterm0E, "", "none", "")
call <sid>hi("Identifier", s:gui06, "", s:cterm05, "", "none", "")
call <sid>hi("Keyword", s:gui0D, "", s:cterm0E, "", "none", "")
call <sid>hi("Todo", s:gui08, s:guibg, s:cterm08, s:ctermbg, "italic", "")
hi! link Boolean ThemeOrange
hi! link Character ThemeRed
"call <sid>hi("Comment", s:gui03, "", s:cterm03, "", "italic", "")
hi! link Comment ThemeGreyItalic
hi! link Conditional ThemeRed
hi! link Constant ThemeOrange
call <sid>hi("Define", s:gui0E, "", s:cterm0E, "", "none", "")
hi! link Delimiter ThemeFg1
if has("patch-8.0.1038")
call <sid>hi("Deprecated", "", "", "", "", "strikethrough", "")
endif
hi! link Float ThemeOrange
hi! link Function ThemeBlue
call <sid>hi("Identifier", s:gui06, "", s:cterm05, "", "none", "")
hi! link Include ThemeBlue
hi! link Constant ThemeOrange
call <sid>hi("Keyword", s:gui0E, "", s:cterm0E, "", "none", "")
hi! link Label ThemeOrange
hi! link Number ThemeOrange
hi! link Operator ThemeYellow
@ -314,101 +371,145 @@ hi! link StorageClass ThemeOrange
hi! link String ThemeGreen
hi! link Structure ThemeOrange
hi! link Tag ThemeOrange
call <sid>hi("Todo", s:gui08, s:guibg, s:cterm08, s:ctermbg, "italic", "")
call <sid>hi("Type", s:gui0A, "", s:cterm0A, "", "none", "")
hi! link Type ThemeYellow
hi! link Typedef ThemeOrange
" Treesitter
if has("nvim-0.8.0")
call <sid>hi("@field", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@property", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@namespace", s:gui06, "", s:cterm05, "", "italic", "")
call <sid>hi("@variable.builtin", s:gui06, "", s:cterm05, "", "italic", "")
call <sid>hi("@text.reference", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@text.uri", s:gui08, "", s:cterm08, "", "italic", "")
hi! link @field ThemeRed
hi! link @property ThemeRed
hi! link @namespace ThemeFg1Italic
hi! link @variable.builtin ThemeFg1Italic
hi! link @variable ThemeFg2
hi! link @conceal ThemeBlue
" Annotations & Attributes
call <sid>hi("@annotation", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@attribute", s:gui0D, "", s:cterm0D, "", "", "")
hi! link @text.uri ThemeRedItalic
hi! link @text.reference ThemeRed
" Booleans, Characters & Comments
call <sid>hi("@boolean", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@character", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@character.special", s:gui0F, "", s:cterm0F, "", "", "")
call <sid>hi("@comment", s:gui03, "", s:cterm03, "", "", "")
hi! link @annotation ThemeViolet
hi! link @attribute ThemeBlue
" Conditionals, Constants & Debugging
call <sid>hi("@keyword.conditional", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@constant", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@constant.builtin", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@constant.macro", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@keyword.debug", s:gui08, "", s:cterm08, "", "", "")
hi! link @boolean ThemeOrange
hi! link @character ThemeRed
hi! link @character.special ThemeMagenta
hi! link @comment Comment
" Directives & Exceptions
call <sid>hi("@keyword.directive.define", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@keyword.exception", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @constant ThemeBlue
hi! link @constant.builtin ThemeBlue
" Floats & Functions
call <sid>hi("@number.float", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@function", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@function.builtin", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@function.call", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@function.macro", s:gui08, "", s:cterm08, "", "", "")
hi! link @constant.macro ThemeRed
" Imports, Operators & Returns
call <sid>hi("@keyword.import", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@keyword.coroutine", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@keyword.operator", s:gui06, "", s:cterm05, "", "", "")
call <sid>hi("@keyword.return", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @keyword.directive.define ThemeViolet
hi! link @keyword.exception ThemeRed
" Methods & Namespaces
call <sid>hi("@function.method", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@function.method.call", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@namespace.builtin", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @comment.error ThemeRed
hi! link @number.float ThemeRed
hi! link @keyword.function ThemeRed
" Numbers & Directives
call <sid>hi("@none", s:gui06, "", s:cterm05, "", "", "")
call <sid>hi("@number", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@keyword.directive", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @function ThemeBlue
hi! link @function.builtin ThemeBlue
hi! link @function.call ThemeBlue
hi! link @function.macro ThemeRed
hi! link @function.method ThemeBlue
hi! link @function.method.call ThemeBlue
" Repeats, Storage & Strings
call <sid>hi("@keyword.repeat", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@keyword.storage", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@string", s:gui0B, "", s:cterm0B, "", "", "")
hi! link @keyword.debug ThemeRed
hi! link @keyword.conditional ThemeRed
hi! link @keyword.import ThemeViolet
hi! link @keyword.coroutine ThemeViolet
hi! link @keyword.operator ThemeYellow
hi! link @keyword.directive ThemeViolet
hi! link @keyword.repeat ThemeViolet
hi! link @keyword.storage ThemeViolet
hi! link @keyword.return ThemeRed
" Tags & Markup
call <sid>hi("@markup.link.label", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.link.label.symbol", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@tag", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@tag.attribute", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@tag.delimiter", s:gui0F, "", s:cterm0F, "", "", "")
hi! link @constructor ThemeBlue
hi! link @namespace.builtin ThemeViolet
" More Markup
call <sid>hi("@markup", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.environment", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.environment.name", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.raw", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@markup.math", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.strong", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.emphasis", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.strikethrough", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.underline", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.heading", s:gui0D, "", s:cterm0D, "", "", "")
hi! link @none ThemeFg1
hi! link @number ThemeOrange
hi! link @string ThemeGreen
" Comments & Types
call <sid>hi("@comment.note", s:gui03, "", s:cterm03, "", "", "")
call <sid>hi("@comment.error", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@comment.hint", s:gui0B, "", s:cterm0B, "", "", "")
call <sid>hi("@comment.info", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@comment.warning", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@comment.todo", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.link.url", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@type", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@type.definition", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@type.qualifier", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @tag ThemeRed
hi! link @tag.delimiter ThemeViolet
hi! link @tag.attribute ThemeYellow
" affects markdown
hi! link @markup ThemeYellow
hi! link @markup.raw ThemeGreen
hi! link @markup.raw.block.lang ThemeFg2Bold
hi! link @markup.raw.block.marker ThemeRed
"call <sid>hi("@markup.raw.block.lang", s:gui08, "#1e0000", "", s:ctermbg, "", "")
hi! link @markup.list ThemeBlue
hi! link @markup.quote ThemeGrey
hi! link @markup.link ThemeYellow " borders
hi! link @markup.link.text ThemeBlue
hi! link @markup.link.label ThemeYellow
hi! link @markup.link.url ThemeYellow
hi! link @markup.link.dest ThemeFg3
hi! link @markup.link.wiki ThemeYellow
hi! link @markup.link.wiki.text ThemeBlue
hi! link @markup.link.wiki.label ThemeYellow
"hi! link @markup.link.label.symbol ThemeGreen
"hi! link markdownWikiLink ThemeViolet
"
hi! link @markup.environment ThemeYellow
hi! link @markup.environment.name ThemeYellow
hi! link @markup.math ThemeYellow
hi! link @punctuation.delimiter.latex ThemeOrange
hi! link @markup.strong Bold
hi! link @markup.emphasis Bold
hi! link @markup.strikethrough ThemeYellow
hi! link @markup.underline ThemeYellow
hi! link @comment.info ThemeBlue
hi! link @comment.todo ThemeYellow
hi! link @comment.note ThemeBg3
hi! link @comment.hint ThemeGreen
hi! link @comment.warning ThemeOrange
hi! link @type ThemeYellow
hi! link @type.builtin ThemeOrange
hi! link @type.definition ThemeViolet
hi! link @type.qualifier ThemeViolet
" Markdown
" hi! link @spell.markdown ThemeFg3
"call <sid>hi("@markup.heading.marker", s:gui08, "", "", s:ctermbg, "bold", "")
"hi! link @markup.heading ThemeRed
hi! link @markup.heading.marker ThemeOrange
hi! link @markup.heading.title ThemeRed "Italic
" set this for a strong background
"call <sid>hi("@markup.heading.title", s:gui08, "#440503", "", s:ctermbg, "italic", "")
hi! link @markup.heading.title.1 Bold
hi! link @markup.heading.title.3 Italic
"hi! link @markup.heading.4.title Italic
" YAML
hi! link @string.yaml ThemeBlue
hi! link @punctuation.delimiter.yaml ThemeGreen
hi! link @property.yaml ThemeFg2
" Diff
hi! link @diff.minus ThemeRed
hi! link @diff.plus ThemeGreen
call <sid>hi("TreesitterContext", "", s:gui00, "", "", "", "")
"hi TreesitterContextLineNumberBottom gui=underline guisp=Gray
"call <sid>hi("TreesitterContextBottom", "", "", "", "", "underline", s:gui02)
call <sid>hi("TreesitterContextSeparator", s:gui03, "", "", "", "", "")
"call <sid>hi("TreesitterContextLineNumberBottom", "", "", "", "", "underline", s:gui02)
endif
" Standard highlights to be used by plugins
@ -433,6 +534,7 @@ call <sid>hi("WarningFloat", s:gui09, s:gui01, s:cterm09, s:cterm01, "", "")
call <sid>hi("InfoFloat", s:gui0D, s:gui01, s:cterm0D, s:cterm01, "", "")
call <sid>hi("HintFloat", s:gui0C, s:gui01, s:cterm0C, s:cterm01, "", "")
call <sid>hi("OkFloat", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "")
call <sid>hi("NormalFloat", s:gui05, s:gui01, s:cterm05, s:cterm01, "", "")
call <sid>hi("ErrorHighlight", "", "", s:ctermbg, s:cterm08, "underline", s:gui08)
call <sid>hi("WarningHighlight", "", "", s:ctermbg, s:cterm09, "underline", s:gui09)
@ -449,6 +551,62 @@ call <sid>hi("ReferenceText", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "", "")
call <sid>hi("ReferenceRead", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "", "")
call <sid>hi("ReferenceWrite", s:gui01, s:gui08, s:cterm01, s:cterm08, "", "")
" 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
" "
" LANGUAGES
" "
" C
call <sid>hi("cOperator", s:gui0C, "", s:cterm0C, "", "", "")
call <sid>hi("cPreCondit", s:gui0E, "", s:cterm0E, "", "", "")
@ -728,8 +886,8 @@ call <sid>hi("phpMethodsVar", s:gui0C, "", s:cterm0C, "", "", "")
" hi! link pythonBuiltinObj ThemeCyan
" hi! link pythonBuiltinFunc ThemeGreen
" hi! link pythonFunction Function
hi! link pythonDecorator ThemeYellow
hi! link pythonDecoratorName ThemeYellow
" hi! link pythonDecorator ThemeYellow
" hi! link pythonDecoratorName ThemeYellow
" hi! link pythonTripleQuotes ThemeGreenItalic
" hi! link pythonInclude ThemeBlue
" hi! link pythonImport ThemeBlue
@ -777,58 +935,6 @@ call <sid>hi("StartifySelect", s:gui0C, "", s:cterm0C, "", "", "")
call <sid>hi("StartifySlash", s:gui03, "", s:cterm03, "", "", "")
call <sid>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 <sid>hi("javaOperator", s:gui0D, "", s:cterm0D, "", "", "")
@ -864,12 +970,18 @@ hi! link markdownUrlTitleDelimiter ThemeGreen
hi! link markdownLink ThemeGreen
hi! link markdownWikiLink ThemeViolet
hi! link markdownUrl ThemeOrange
"hi! link markdownUrl ThemeOrange
hi! link markdownUrl ThemeRed
hi! link markdownUrlProtocol ThemeGreenItalic
hi! link markdownInlineUrl ThemeOrange
hi! link markdownLinkText ThemeViolet
hi! link markdownIdDeclaration markdownLinkText
hi! link pandocAtxHeader ThemeRed
hi! link pandocAtxStart ThemeOrange
"call s:HL('markdownItalic', s:fg3, s:none, s:italic)
"call s:HL('markdownLinkText', s:gray, s:none, s:underline)
@ -880,3 +992,4 @@ delf <sid>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

View File

@ -7,28 +7,50 @@
" - `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.
"
" There are several kinds of syntax identifiers:
"
" - Vim/editor related (e.g., Normal, Folded): these control colors of central Vim
" elements, like whitespace, bold text, the foldcolumn, etc
" - Generic syntax identifiers (e.g., Boolean, Conditional): these are key groups for
" syntax elements that various language syntax files link to. For instance, Python
" syntax files might have specific patterns that match function keywords like "def," and
" the resulting syntax region can be highlighted by linking it to the core "Function"
" highlight identifier.
" - Treesitter-based identifiers (e.g., @variable, @boolean): highlight groups for
" treesitter-based syntax highlighting, which can replace regex-based matching when
" enabled for richer (and often faster) highlighting. These groups can be linked to the
" core identifiers like any other language.
"
" *Note*: each of these identifiers can add a lang-specific suffix to style those groups
" as they apply to particular languages. For ex, `@boolean.python ThemeRed` would style
" Python booleans red, while the lang-agnostic `@boolean` definition remains.
" - Plugin-oriented identifiers (e.g., SpellBad, ErrorFloat): these are groups mostly core
" to vim/nvim, but often appear only in the context of plugins or certain modules (like
" LSP). For instance, ErrorFloat styles floating windows that might be drawn by nvim's
" built-in LSP hover info.
" 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:gui00 = "#2b2e33"
let g:base16_gui00 = "#2b2e33"
let s:gui01 = "#373b40"
let g:base16_gui01 = "#373b40"
let s:gui02 = "#44484e"
let g:base16_gui02 = "#44484e"
let s:gui03 = "#52555c"
let g:base16_gui03 = "#52555c"
let s:gui04 = "#babec5"
let g:base16_gui04 = "#babec5"
let s:gui05 = "#caced5"
let g:base16_gui05 = "#caced5"
let s:gui06 = "#dadee6"
let g:base16_gui06 = "#dadee6"
let s:gui07 = "#eaeff6"
let g:base16_gui07 = "#eaeff6"
let s:gui08 = "#f37060"
let g:base16_gui08 = "#f37060"
let s:gui09 = "#da8934"
let g:base16_gui09 = "#da8934"
let s:gui09 = "#d98937"
let g:base16_gui09 = "#d98937"
let s:gui0A = "#a7a15f"
let g:base16_gui0A = "#a7a15f"
let s:gui0B = "#6eb178"
@ -42,7 +64,7 @@ let g:base16_gui0E = "#799ee3"
let s:gui0F = "#f37060"
let g:base16_gui0F = "#f37060"
let s:grey = "#8a9096"
let s:grey = "#7d8087"
" Terminal color definitions
let s:cterm00 = "00"
@ -81,22 +103,22 @@ let g:base16_cterm0F = "14"
" Neovim terminal colours
if has("nvim")
let g:terminal_color_0 = "#2a2e33"
let g:terminal_color_0 = "#2b2e33"
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_7 = "#caced5"
let g:terminal_color_8 = "#52555c"
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_15 = "#eaeff6"
let g:terminal_color_background = g:terminal_color_0
let g:terminal_color_foreground = g:terminal_color_5
@ -107,22 +129,22 @@ if has("nvim")
elseif has("terminal")
let g:terminal_ansi_colors = [
\ "#2a2e33",
\ "#2b2e33",
\ "#f37060",
\ "#6eb178",
\ "#a7a15f",
\ "#799ee3",
\ "#799ee3",
\ "#6eb178",
\ "#c8ced5",
\ "#51565b",
\ "#caced5",
\ "#52555c",
\ "#f37060",
\ "#6eb178",
\ "#a7a15f",
\ "#799ee3",
\ "#799ee3",
\ "#6eb178",
\ "#e9eff6",
\ "#eaeff6",
\ ]
endif
@ -199,7 +221,25 @@ call <sid>hi("ThemeFg3", s:gui04, "", s:cterm04, "", "", "")
call <sid>hi("ThemeFg2", s:gui05, "", s:cterm05, "", "", "")
call <sid>hi("ThemeFg1", s:gui06, "", s:cterm06, "", "", "")
call <sid>hi("ThemeFg0", s:gui07, "", s:cterm07, "", "", "")
"
call <sid>hi("ThemeBg0bold", s:gui00, "", s:cterm00, "", "bold", "")
call <sid>hi("ThemeBg1bold", s:gui01, "", s:cterm01, "", "bold", "")
call <sid>hi("ThemeBg2bold", s:gui02, "", s:cterm02, "", "bold", "")
call <sid>hi("ThemeBg3bold", s:gui03, "", s:cterm03, "", "bold", "")
call <sid>hi("ThemeFg3bold", s:gui04, "", s:cterm04, "", "bold", "")
call <sid>hi("ThemeFg2bold", s:gui05, "", s:cterm05, "", "bold", "")
call <sid>hi("ThemeFg1bold", s:gui06, "", s:cterm06, "", "bold", "")
call <sid>hi("ThemeFg0bold", s:gui07, "", s:cterm07, "", "bold", "")
call <sid>hi("ThemeBg0Italic", s:gui00, "", s:cterm00, "", "italic", "")
call <sid>hi("ThemeBg1Italic", s:gui01, "", s:cterm01, "", "italic", "")
call <sid>hi("ThemeBg2Italic", s:gui02, "", s:cterm02, "", "italic", "")
call <sid>hi("ThemeBg3Italic", s:gui03, "", s:cterm03, "", "italic", "")
call <sid>hi("ThemeFg3Italic", s:gui04, "", s:cterm04, "", "italic", "")
call <sid>hi("ThemeFg2Italic", s:gui05, "", s:cterm05, "", "italic", "")
call <sid>hi("ThemeFg1Italic", s:gui06, "", s:cterm06, "", "italic", "")
call <sid>hi("ThemeFg0Italic", s:gui07, "", s:cterm07, "", "italic", "")
call <sid>hi("ThemeRed", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("ThemeOrange", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("ThemeYellow", s:gui0A, "", s:cterm0A, "", "", "")
@ -209,6 +249,15 @@ call <sid>hi("ThemeBlue", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("ThemeViolet", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("ThemeMagenta", s:gui0F, "", s:cterm0F, "", "", "")
call <sid>hi("ThemeRedNone", s:gui08, "", s:cterm08, "", "NONE", "")
call <sid>hi("ThemeOrangeNone", s:gui09, "", s:cterm09, "", "NONE", "")
call <sid>hi("ThemeYellowNone", s:gui0A, "", s:cterm0A, "", "NONE", "")
call <sid>hi("ThemeGreenNone", s:gui0B, "", s:cterm0B, "", "NONE", "")
call <sid>hi("ThemeCyanNone", s:gui0C, "", s:cterm0C, "", "NONE", "")
call <sid>hi("ThemeBlueNone", s:gui0D, "", s:cterm0D, "", "NONE", "")
call <sid>hi("ThemeVioletNone", s:gui0E, "", s:cterm0E, "", "NONE", "")
call <sid>hi("ThemeMagentaNone", s:gui0F, "", s:cterm0F, "", "NONE", "")
call <sid>hi("ThemeRedBold", s:gui08, "", s:cterm08, "", "bold", "")
call <sid>hi("ThemeOrangeBold", s:gui09, "", s:cterm09, "", "bold", "")
call <sid>hi("ThemeYellowBold", s:gui0A, "", s:cterm0A, "", "bold", "")
@ -227,22 +276,33 @@ call <sid>hi("ThemeBlueItalic", s:gui0D, "", s:cterm0D, "", "italic", "")
call <sid>hi("ThemeVioletItalic", s:gui0E, "", s:cterm0E, "", "italic", "")
call <sid>hi("ThemeMagentaItalic", s:gui0F, "", s:cterm0F, "", "italic", "")
call <sid>hi("ThemeRedBoldItalic", s:gui08, "", s:cterm08, "", "bold,italic", "")
call <sid>hi("ThemeOrangeBoldItalic", s:gui09, "", s:cterm09, "", "bold,italic", "")
call <sid>hi("ThemeYellowBoldItalic", s:gui0A, "", s:cterm0A, "", "bold,italic", "")
call <sid>hi("ThemeGreenBoldItalic", s:gui0B, "", s:cterm0B, "", "bold,italic", "")
call <sid>hi("ThemeCyanBoldItalic", s:gui0C, "", s:cterm0C, "", "bold,italic", "")
call <sid>hi("ThemeBlueBoldItalic", s:gui0D, "", s:cterm0D, "", "bold,italic", "")
call <sid>hi("ThemeVioletBoldItalic", s:gui0E, "", s:cterm0E, "", "bold,italic", "")
call <sid>hi("ThemeMagentaBoldItalic", s:gui0F, "", s:cterm0F, "", "bold,italic", "")
call <sid>hi("ThemeGrey", s:grey, "", s:cterm03, "", "", "")
call <sid>hi("ThemeGreyItalic", s:grey, "", s:cterm03, "", "italic", "")
" Vim editor colors
call <sid>hi("Normal", s:gui05, s:guibg, s:cterm05, s:ctermbg, "", "")
call <sid>hi("Bold", "", "", "", "", "bold", "")
call <sid>hi("Italic", "", "", "", "", "italic", "")
call <sid>hi("BoldItalic", "", "", "", "", "italic,bold", "")
call <sid>hi("Normal", s:gui05, s:guibg, s:cterm05, s:ctermbg, "", "")
call <sid>hi("Debug", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("Directory", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("Error", s:guibg, s:gui08, s:ctermbg, s:cterm08, "", "")
call <sid>hi("ErrorMsg", s:gui08, s:guibg, s:cterm08, s:ctermbg, "", "")
call <sid>hi("Exception", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("FoldColumn", s:gui03, s:guibg, s:cterm03, s:ctermbg, "", "")
call <sid>hi("Folded", s:gui02, s:guibg, s:cterm02, s:ctermbg, "", "")
call <sid>hi("Folded", s:gui03, s:gui01, s:cterm02, s:ctermbg, "", "")
call <sid>hi("IncSearch", s:gui01, s:gui09, s:cterm01, s:cterm09, "none", "")
call <sid>hi("Italic", "", "", "", "", "italic", "")
call <sid>hi("Macro", s:gui0C, "", s:cterm0C, "", "", "")
call <sid>hi("MatchParen", "", s:gui03, "", s:cterm03, "", "")
call <sid>hi("ModeMsg", s:gui0B, "", s:cterm0B, "", "", "")
@ -258,7 +318,10 @@ call <sid>hi("VisualNOS", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("WarningMsg", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("WildMenu", s:guibg, s:gui06, s:ctermbg, s:cterm05, "", "")
call <sid>hi("Title", s:gui0D, "", s:cterm0D, "", "none", "")
call <sid>hi("Conceal", s:gui0D, s:guibg, s:cterm0D, s:ctermbg, "", "")
"call <sid>hi("Conceal", s:gui0D, s:guibg, s:cterm0D, s:ctermbg, "", "")
hi! link Conceal ThemeBlue
call <sid>hi("Cursor", s:gui05, s:guibg, "", "", "inverse", "")
call <sid>hi("NonText", s:gui03, "", s:cterm03, "", "", "")
call <sid>hi("Whitespace", s:gui03, "", s:cterm03, "", "", "")
@ -270,7 +333,7 @@ call <sid>hi("VertSplit", s:gui01, s:guibg, s:cterm01, s:ctermbg, "none", ""
call <sid>hi("ColorColumn", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("CursorColumn", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("CursorLine", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("CursorLineNr", s:gui04, s:gui01, s:cterm04, s:cterm01, "bold", "")
call <sid>hi("CursorLineNr", s:gui04, s:gui00, s:cterm04, s:cterm01, "", "")
call <sid>hi("QuickFixLine", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("PMenu", s:gui06, s:gui01, s:cterm06, s:cterm01, "none", "")
call <sid>hi("PMenuSel", s:gui06, s:gui02, s:cterm06, s:cterm02, "", "")
@ -281,27 +344,21 @@ call <sid>hi("TabLineFill", s:gui03, s:gui01, s:cterm03, s:cterm01, "none", ""
call <sid>hi("TabLineSel", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "none", "")
" Standard syntax
call <sid>hi("Define", s:gui0E, "", s:cterm0E, "", "none", "")
call <sid>hi("Identifier", s:gui06, "", s:cterm05, "", "none", "")
call <sid>hi("Keyword", s:gui0D, "", s:cterm0E, "", "none", "")
call <sid>hi("Todo", s:gui08, s:guibg, s:cterm08, s:ctermbg, "italic", "")
hi! link Boolean ThemeOrange
hi! link Character ThemeRed
"call <sid>hi("Comment", s:gui03, "", s:cterm03, "", "italic", "")
hi! link Comment ThemeGreyItalic
hi! link Conditional ThemeRed
hi! link Constant ThemeOrange
call <sid>hi("Define", s:gui0E, "", s:cterm0E, "", "none", "")
hi! link Delimiter ThemeFg1
if has("patch-8.0.1038")
call <sid>hi("Deprecated", "", "", "", "", "strikethrough", "")
endif
hi! link Float ThemeOrange
hi! link Function ThemeBlue
call <sid>hi("Identifier", s:gui06, "", s:cterm05, "", "none", "")
hi! link Include ThemeBlue
hi! link Constant ThemeOrange
call <sid>hi("Keyword", s:gui0E, "", s:cterm0E, "", "none", "")
hi! link Label ThemeOrange
hi! link Number ThemeOrange
hi! link Operator ThemeYellow
@ -314,101 +371,145 @@ hi! link StorageClass ThemeOrange
hi! link String ThemeGreen
hi! link Structure ThemeOrange
hi! link Tag ThemeOrange
call <sid>hi("Todo", s:gui08, s:guibg, s:cterm08, s:ctermbg, "italic", "")
call <sid>hi("Type", s:gui0A, "", s:cterm0A, "", "none", "")
hi! link Type ThemeYellow
hi! link Typedef ThemeOrange
" Treesitter
if has("nvim-0.8.0")
call <sid>hi("@field", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@property", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@namespace", s:gui06, "", s:cterm05, "", "italic", "")
call <sid>hi("@variable.builtin", s:gui06, "", s:cterm05, "", "italic", "")
call <sid>hi("@text.reference", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@text.uri", s:gui08, "", s:cterm08, "", "italic", "")
hi! link @field ThemeRed
hi! link @property ThemeRed
hi! link @namespace ThemeFg1Italic
hi! link @variable.builtin ThemeFg1Italic
hi! link @variable ThemeFg2
hi! link @conceal ThemeBlue
" Annotations & Attributes
call <sid>hi("@annotation", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@attribute", s:gui0D, "", s:cterm0D, "", "", "")
hi! link @text.uri ThemeRedItalic
hi! link @text.reference ThemeRed
" Booleans, Characters & Comments
call <sid>hi("@boolean", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@character", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@character.special", s:gui0F, "", s:cterm0F, "", "", "")
call <sid>hi("@comment", s:gui03, "", s:cterm03, "", "", "")
hi! link @annotation ThemeViolet
hi! link @attribute ThemeBlue
" Conditionals, Constants & Debugging
call <sid>hi("@keyword.conditional", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@constant", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@constant.builtin", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@constant.macro", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@keyword.debug", s:gui08, "", s:cterm08, "", "", "")
hi! link @boolean ThemeOrange
hi! link @character ThemeRed
hi! link @character.special ThemeMagenta
hi! link @comment Comment
" Directives & Exceptions
call <sid>hi("@keyword.directive.define", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@keyword.exception", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @constant ThemeBlue
hi! link @constant.builtin ThemeBlue
" Floats & Functions
call <sid>hi("@number.float", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@function", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@function.builtin", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@function.call", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@function.macro", s:gui08, "", s:cterm08, "", "", "")
hi! link @constant.macro ThemeRed
" Imports, Operators & Returns
call <sid>hi("@keyword.import", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@keyword.coroutine", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@keyword.operator", s:gui06, "", s:cterm05, "", "", "")
call <sid>hi("@keyword.return", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @keyword.directive.define ThemeViolet
hi! link @keyword.exception ThemeRed
" Methods & Namespaces
call <sid>hi("@function.method", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@function.method.call", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@namespace.builtin", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @comment.error ThemeRed
hi! link @number.float ThemeRed
hi! link @keyword.function ThemeRed
" Numbers & Directives
call <sid>hi("@none", s:gui06, "", s:cterm05, "", "", "")
call <sid>hi("@number", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@keyword.directive", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @function ThemeBlue
hi! link @function.builtin ThemeBlue
hi! link @function.call ThemeBlue
hi! link @function.macro ThemeRed
hi! link @function.method ThemeBlue
hi! link @function.method.call ThemeBlue
" Repeats, Storage & Strings
call <sid>hi("@keyword.repeat", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@keyword.storage", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@string", s:gui0B, "", s:cterm0B, "", "", "")
hi! link @keyword.debug ThemeRed
hi! link @keyword.conditional ThemeRed
hi! link @keyword.import ThemeViolet
hi! link @keyword.coroutine ThemeViolet
hi! link @keyword.operator ThemeYellow
hi! link @keyword.directive ThemeViolet
hi! link @keyword.repeat ThemeViolet
hi! link @keyword.storage ThemeViolet
hi! link @keyword.return ThemeRed
" Tags & Markup
call <sid>hi("@markup.link.label", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.link.label.symbol", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@tag", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@tag.attribute", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@tag.delimiter", s:gui0F, "", s:cterm0F, "", "", "")
hi! link @constructor ThemeBlue
hi! link @namespace.builtin ThemeViolet
" More Markup
call <sid>hi("@markup", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.environment", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.environment.name", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.raw", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@markup.math", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.strong", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.emphasis", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.strikethrough", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.underline", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.heading", s:gui0D, "", s:cterm0D, "", "", "")
hi! link @none ThemeFg1
hi! link @number ThemeOrange
hi! link @string ThemeGreen
" Comments & Types
call <sid>hi("@comment.note", s:gui03, "", s:cterm03, "", "", "")
call <sid>hi("@comment.error", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@comment.hint", s:gui0B, "", s:cterm0B, "", "", "")
call <sid>hi("@comment.info", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@comment.warning", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@comment.todo", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.link.url", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@type", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@type.definition", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@type.qualifier", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @tag ThemeRed
hi! link @tag.delimiter ThemeViolet
hi! link @tag.attribute ThemeYellow
" affects markdown
hi! link @markup ThemeYellow
hi! link @markup.raw ThemeGreen
hi! link @markup.raw.block.lang ThemeFg2Bold
hi! link @markup.raw.block.marker ThemeRed
"call <sid>hi("@markup.raw.block.lang", s:gui08, "#1e0000", "", s:ctermbg, "", "")
hi! link @markup.list ThemeBlue
hi! link @markup.quote ThemeGrey
hi! link @markup.link ThemeYellow " borders
hi! link @markup.link.text ThemeBlue
hi! link @markup.link.label ThemeYellow
hi! link @markup.link.url ThemeYellow
hi! link @markup.link.dest ThemeFg3
hi! link @markup.link.wiki ThemeYellow
hi! link @markup.link.wiki.text ThemeBlue
hi! link @markup.link.wiki.label ThemeYellow
"hi! link @markup.link.label.symbol ThemeGreen
"hi! link markdownWikiLink ThemeViolet
"
hi! link @markup.environment ThemeYellow
hi! link @markup.environment.name ThemeYellow
hi! link @markup.math ThemeYellow
hi! link @punctuation.delimiter.latex ThemeOrange
hi! link @markup.strong Bold
hi! link @markup.emphasis Bold
hi! link @markup.strikethrough ThemeYellow
hi! link @markup.underline ThemeYellow
hi! link @comment.info ThemeBlue
hi! link @comment.todo ThemeYellow
hi! link @comment.note ThemeBg3
hi! link @comment.hint ThemeGreen
hi! link @comment.warning ThemeOrange
hi! link @type ThemeYellow
hi! link @type.builtin ThemeOrange
hi! link @type.definition ThemeViolet
hi! link @type.qualifier ThemeViolet
" Markdown
" hi! link @spell.markdown ThemeFg3
"call <sid>hi("@markup.heading.marker", s:gui08, "", "", s:ctermbg, "bold", "")
"hi! link @markup.heading ThemeRed
hi! link @markup.heading.marker ThemeOrange
hi! link @markup.heading.title ThemeRed "Italic
" set this for a strong background
"call <sid>hi("@markup.heading.title", s:gui08, "#440503", "", s:ctermbg, "italic", "")
hi! link @markup.heading.title.1 Bold
hi! link @markup.heading.title.3 Italic
"hi! link @markup.heading.4.title Italic
" YAML
hi! link @string.yaml ThemeBlue
hi! link @punctuation.delimiter.yaml ThemeGreen
hi! link @property.yaml ThemeFg2
" Diff
hi! link @diff.minus ThemeRed
hi! link @diff.plus ThemeGreen
call <sid>hi("TreesitterContext", "", s:gui00, "", "", "", "")
"hi TreesitterContextLineNumberBottom gui=underline guisp=Gray
"call <sid>hi("TreesitterContextBottom", "", "", "", "", "underline", s:gui02)
call <sid>hi("TreesitterContextSeparator", s:gui03, "", "", "", "", "")
"call <sid>hi("TreesitterContextLineNumberBottom", "", "", "", "", "underline", s:gui02)
endif
" Standard highlights to be used by plugins
@ -433,6 +534,7 @@ call <sid>hi("WarningFloat", s:gui09, s:gui01, s:cterm09, s:cterm01, "", "")
call <sid>hi("InfoFloat", s:gui0D, s:gui01, s:cterm0D, s:cterm01, "", "")
call <sid>hi("HintFloat", s:gui0C, s:gui01, s:cterm0C, s:cterm01, "", "")
call <sid>hi("OkFloat", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "")
call <sid>hi("NormalFloat", s:gui05, s:gui01, s:cterm05, s:cterm01, "", "")
call <sid>hi("ErrorHighlight", "", "", s:ctermbg, s:cterm08, "underline", s:gui08)
call <sid>hi("WarningHighlight", "", "", s:ctermbg, s:cterm09, "underline", s:gui09)
@ -449,6 +551,62 @@ call <sid>hi("ReferenceText", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "", "")
call <sid>hi("ReferenceRead", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "", "")
call <sid>hi("ReferenceWrite", s:gui01, s:gui08, s:cterm01, s:cterm08, "", "")
" 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
" "
" LANGUAGES
" "
" C
call <sid>hi("cOperator", s:gui0C, "", s:cterm0C, "", "", "")
call <sid>hi("cPreCondit", s:gui0E, "", s:cterm0E, "", "", "")
@ -728,8 +886,8 @@ call <sid>hi("phpMethodsVar", s:gui0C, "", s:cterm0C, "", "", "")
" hi! link pythonBuiltinObj ThemeCyan
" hi! link pythonBuiltinFunc ThemeGreen
" hi! link pythonFunction Function
hi! link pythonDecorator ThemeYellow
hi! link pythonDecoratorName ThemeYellow
" hi! link pythonDecorator ThemeYellow
" hi! link pythonDecoratorName ThemeYellow
" hi! link pythonTripleQuotes ThemeGreenItalic
" hi! link pythonInclude ThemeBlue
" hi! link pythonImport ThemeBlue
@ -777,58 +935,6 @@ call <sid>hi("StartifySelect", s:gui0C, "", s:cterm0C, "", "", "")
call <sid>hi("StartifySlash", s:gui03, "", s:cterm03, "", "", "")
call <sid>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 <sid>hi("javaOperator", s:gui0D, "", s:cterm0D, "", "", "")
@ -864,12 +970,18 @@ hi! link markdownUrlTitleDelimiter ThemeGreen
hi! link markdownLink ThemeGreen
hi! link markdownWikiLink ThemeViolet
hi! link markdownUrl ThemeOrange
"hi! link markdownUrl ThemeOrange
hi! link markdownUrl ThemeRed
hi! link markdownUrlProtocol ThemeGreenItalic
hi! link markdownInlineUrl ThemeOrange
hi! link markdownLinkText ThemeViolet
hi! link markdownIdDeclaration markdownLinkText
hi! link pandocAtxHeader ThemeRed
hi! link pandocAtxStart ThemeOrange
"call s:HL('markdownItalic', s:fg3, s:none, s:italic)
"call s:HL('markdownLinkText', s:gray, s:none, s:underline)
@ -880,3 +992,4 @@ delf <sid>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

View File

@ -7,26 +7,48 @@
" - `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.
"
" There are several kinds of syntax identifiers:
"
" - Vim/editor related (e.g., Normal, Folded): these control colors of central Vim
" elements, like whitespace, bold text, the foldcolumn, etc
" - Generic syntax identifiers (e.g., Boolean, Conditional): these are key groups for
" syntax elements that various language syntax files link to. For instance, Python
" syntax files might have specific patterns that match function keywords like "def," and
" the resulting syntax region can be highlighted by linking it to the core "Function"
" highlight identifier.
" - Treesitter-based identifiers (e.g., @variable, @boolean): highlight groups for
" treesitter-based syntax highlighting, which can replace regex-based matching when
" enabled for richer (and often faster) highlighting. These groups can be linked to the
" core identifiers like any other language.
"
" *Note*: each of these identifiers can add a lang-specific suffix to style those groups
" as they apply to particular languages. For ex, `@boolean.python ThemeRed` would style
" Python booleans red, while the lang-agnostic `@boolean` definition remains.
" - Plugin-oriented identifiers (e.g., SpellBad, ErrorFloat): these are groups mostly core
" to vim/nvim, but often appear only in the context of plugins or certain modules (like
" LSP). For instance, ErrorFloat styles floating windows that might be drawn by nvim's
" built-in LSP hover info.
" 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:gui00 = "#caced5"
let g:base16_gui00 = "#caced5"
let s:gui01 = "#babec5"
let g:base16_gui01 = "#babec5"
let s:gui02 = "#aaaeb5"
let g:base16_gui02 = "#aaaeb5"
let s:gui03 = "#9b9fa5"
let g:base16_gui03 = "#9b9fa5"
let s:gui04 = "#373b40"
let g:base16_gui04 = "#373b40"
let s:gui05 = "#2b2e33"
let g:base16_gui05 = "#2b2e33"
let s:gui06 = "#1f2227"
let g:base16_gui06 = "#1f2227"
let s:gui07 = "#13161b"
let g:base16_gui07 = "#13161b"
let s:gui08 = "#9d1a13"
let g:base16_gui08 = "#9d1a13"
let s:gui09 = "#7c4706"
let g:base16_gui09 = "#7c4706"
let s:gui0A = "#5b572e"
@ -39,10 +61,10 @@ 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:gui0F = "#9d1a13"
let g:base16_gui0F = "#9d1a13"
let s:grey = "#51565b"
let s:grey = "#6e7278"
" Terminal color definitions
let s:cterm00 = "00"
@ -81,22 +103,22 @@ 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_0 = "#caced5"
let g:terminal_color_1 = "#9d1a13"
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_7 = "#2b2e33"
let g:terminal_color_8 = "#9b9fa5"
let g:terminal_color_9 = "#9d1a13"
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_15 = "#13161b"
let g:terminal_color_background = g:terminal_color_0
let g:terminal_color_foreground = g:terminal_color_5
@ -107,22 +129,22 @@ if has("nvim")
elseif has("terminal")
let g:terminal_ansi_colors = [
\ "#b9bec5",
\ "#9d1912",
\ "#caced5",
\ "#9d1a13",
\ "#2e6337",
\ "#5b572e",
\ "#2d5299",
\ "#2d5299",
\ "#2e6337",
\ "#1e2227",
\ "#8a9096",
\ "#9d1912",
\ "#2b2e33",
\ "#9b9fa5",
\ "#9d1a13",
\ "#2e6337",
\ "#5b572e",
\ "#2d5299",
\ "#2d5299",
\ "#2e6337",
\ "#080c10",
\ "#13161b",
\ ]
endif
@ -199,7 +221,25 @@ call <sid>hi("ThemeFg3", s:gui04, "", s:cterm04, "", "", "")
call <sid>hi("ThemeFg2", s:gui05, "", s:cterm05, "", "", "")
call <sid>hi("ThemeFg1", s:gui06, "", s:cterm06, "", "", "")
call <sid>hi("ThemeFg0", s:gui07, "", s:cterm07, "", "", "")
"
call <sid>hi("ThemeBg0bold", s:gui00, "", s:cterm00, "", "bold", "")
call <sid>hi("ThemeBg1bold", s:gui01, "", s:cterm01, "", "bold", "")
call <sid>hi("ThemeBg2bold", s:gui02, "", s:cterm02, "", "bold", "")
call <sid>hi("ThemeBg3bold", s:gui03, "", s:cterm03, "", "bold", "")
call <sid>hi("ThemeFg3bold", s:gui04, "", s:cterm04, "", "bold", "")
call <sid>hi("ThemeFg2bold", s:gui05, "", s:cterm05, "", "bold", "")
call <sid>hi("ThemeFg1bold", s:gui06, "", s:cterm06, "", "bold", "")
call <sid>hi("ThemeFg0bold", s:gui07, "", s:cterm07, "", "bold", "")
call <sid>hi("ThemeBg0Italic", s:gui00, "", s:cterm00, "", "italic", "")
call <sid>hi("ThemeBg1Italic", s:gui01, "", s:cterm01, "", "italic", "")
call <sid>hi("ThemeBg2Italic", s:gui02, "", s:cterm02, "", "italic", "")
call <sid>hi("ThemeBg3Italic", s:gui03, "", s:cterm03, "", "italic", "")
call <sid>hi("ThemeFg3Italic", s:gui04, "", s:cterm04, "", "italic", "")
call <sid>hi("ThemeFg2Italic", s:gui05, "", s:cterm05, "", "italic", "")
call <sid>hi("ThemeFg1Italic", s:gui06, "", s:cterm06, "", "italic", "")
call <sid>hi("ThemeFg0Italic", s:gui07, "", s:cterm07, "", "italic", "")
call <sid>hi("ThemeRed", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("ThemeOrange", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("ThemeYellow", s:gui0A, "", s:cterm0A, "", "", "")
@ -209,6 +249,15 @@ call <sid>hi("ThemeBlue", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("ThemeViolet", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("ThemeMagenta", s:gui0F, "", s:cterm0F, "", "", "")
call <sid>hi("ThemeRedNone", s:gui08, "", s:cterm08, "", "NONE", "")
call <sid>hi("ThemeOrangeNone", s:gui09, "", s:cterm09, "", "NONE", "")
call <sid>hi("ThemeYellowNone", s:gui0A, "", s:cterm0A, "", "NONE", "")
call <sid>hi("ThemeGreenNone", s:gui0B, "", s:cterm0B, "", "NONE", "")
call <sid>hi("ThemeCyanNone", s:gui0C, "", s:cterm0C, "", "NONE", "")
call <sid>hi("ThemeBlueNone", s:gui0D, "", s:cterm0D, "", "NONE", "")
call <sid>hi("ThemeVioletNone", s:gui0E, "", s:cterm0E, "", "NONE", "")
call <sid>hi("ThemeMagentaNone", s:gui0F, "", s:cterm0F, "", "NONE", "")
call <sid>hi("ThemeRedBold", s:gui08, "", s:cterm08, "", "bold", "")
call <sid>hi("ThemeOrangeBold", s:gui09, "", s:cterm09, "", "bold", "")
call <sid>hi("ThemeYellowBold", s:gui0A, "", s:cterm0A, "", "bold", "")
@ -227,22 +276,33 @@ call <sid>hi("ThemeBlueItalic", s:gui0D, "", s:cterm0D, "", "italic", "")
call <sid>hi("ThemeVioletItalic", s:gui0E, "", s:cterm0E, "", "italic", "")
call <sid>hi("ThemeMagentaItalic", s:gui0F, "", s:cterm0F, "", "italic", "")
call <sid>hi("ThemeRedBoldItalic", s:gui08, "", s:cterm08, "", "bold,italic", "")
call <sid>hi("ThemeOrangeBoldItalic", s:gui09, "", s:cterm09, "", "bold,italic", "")
call <sid>hi("ThemeYellowBoldItalic", s:gui0A, "", s:cterm0A, "", "bold,italic", "")
call <sid>hi("ThemeGreenBoldItalic", s:gui0B, "", s:cterm0B, "", "bold,italic", "")
call <sid>hi("ThemeCyanBoldItalic", s:gui0C, "", s:cterm0C, "", "bold,italic", "")
call <sid>hi("ThemeBlueBoldItalic", s:gui0D, "", s:cterm0D, "", "bold,italic", "")
call <sid>hi("ThemeVioletBoldItalic", s:gui0E, "", s:cterm0E, "", "bold,italic", "")
call <sid>hi("ThemeMagentaBoldItalic", s:gui0F, "", s:cterm0F, "", "bold,italic", "")
call <sid>hi("ThemeGrey", s:grey, "", s:cterm03, "", "", "")
call <sid>hi("ThemeGreyItalic", s:grey, "", s:cterm03, "", "italic", "")
" Vim editor colors
call <sid>hi("Normal", s:gui05, s:guibg, s:cterm05, s:ctermbg, "", "")
call <sid>hi("Bold", "", "", "", "", "bold", "")
call <sid>hi("Italic", "", "", "", "", "italic", "")
call <sid>hi("BoldItalic", "", "", "", "", "italic,bold", "")
call <sid>hi("Normal", s:gui05, s:guibg, s:cterm05, s:ctermbg, "", "")
call <sid>hi("Debug", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("Directory", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("Error", s:guibg, s:gui08, s:ctermbg, s:cterm08, "", "")
call <sid>hi("ErrorMsg", s:gui08, s:guibg, s:cterm08, s:ctermbg, "", "")
call <sid>hi("Exception", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("FoldColumn", s:gui03, s:guibg, s:cterm03, s:ctermbg, "", "")
call <sid>hi("Folded", s:gui02, s:guibg, s:cterm02, s:ctermbg, "", "")
call <sid>hi("Folded", s:gui03, s:gui01, s:cterm02, s:ctermbg, "", "")
call <sid>hi("IncSearch", s:gui01, s:gui09, s:cterm01, s:cterm09, "none", "")
call <sid>hi("Italic", "", "", "", "", "italic", "")
call <sid>hi("Macro", s:gui0C, "", s:cterm0C, "", "", "")
call <sid>hi("MatchParen", "", s:gui03, "", s:cterm03, "", "")
call <sid>hi("ModeMsg", s:gui0B, "", s:cterm0B, "", "", "")
@ -258,7 +318,10 @@ call <sid>hi("VisualNOS", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("WarningMsg", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("WildMenu", s:guibg, s:gui06, s:ctermbg, s:cterm05, "", "")
call <sid>hi("Title", s:gui0D, "", s:cterm0D, "", "none", "")
call <sid>hi("Conceal", s:gui0D, s:guibg, s:cterm0D, s:ctermbg, "", "")
"call <sid>hi("Conceal", s:gui0D, s:guibg, s:cterm0D, s:ctermbg, "", "")
hi! link Conceal ThemeBlue
call <sid>hi("Cursor", s:gui05, s:guibg, "", "", "inverse", "")
call <sid>hi("NonText", s:gui03, "", s:cterm03, "", "", "")
call <sid>hi("Whitespace", s:gui03, "", s:cterm03, "", "", "")
@ -270,7 +333,7 @@ call <sid>hi("VertSplit", s:gui01, s:guibg, s:cterm01, s:ctermbg, "none", ""
call <sid>hi("ColorColumn", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("CursorColumn", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("CursorLine", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("CursorLineNr", s:gui04, s:gui01, s:cterm04, s:cterm01, "bold", "")
call <sid>hi("CursorLineNr", s:gui04, s:gui00, s:cterm04, s:cterm01, "", "")
call <sid>hi("QuickFixLine", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("PMenu", s:gui06, s:gui01, s:cterm06, s:cterm01, "none", "")
call <sid>hi("PMenuSel", s:gui06, s:gui02, s:cterm06, s:cterm02, "", "")
@ -281,27 +344,21 @@ call <sid>hi("TabLineFill", s:gui03, s:gui01, s:cterm03, s:cterm01, "none", ""
call <sid>hi("TabLineSel", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "none", "")
" Standard syntax
call <sid>hi("Define", s:gui0E, "", s:cterm0E, "", "none", "")
call <sid>hi("Identifier", s:gui06, "", s:cterm05, "", "none", "")
call <sid>hi("Keyword", s:gui0D, "", s:cterm0E, "", "none", "")
call <sid>hi("Todo", s:gui08, s:guibg, s:cterm08, s:ctermbg, "italic", "")
hi! link Boolean ThemeOrange
hi! link Character ThemeRed
"call <sid>hi("Comment", s:gui03, "", s:cterm03, "", "italic", "")
hi! link Comment ThemeGreyItalic
hi! link Conditional ThemeRed
hi! link Constant ThemeOrange
call <sid>hi("Define", s:gui0E, "", s:cterm0E, "", "none", "")
hi! link Delimiter ThemeFg1
if has("patch-8.0.1038")
call <sid>hi("Deprecated", "", "", "", "", "strikethrough", "")
endif
hi! link Float ThemeOrange
hi! link Function ThemeBlue
call <sid>hi("Identifier", s:gui06, "", s:cterm05, "", "none", "")
hi! link Include ThemeBlue
hi! link Constant ThemeOrange
call <sid>hi("Keyword", s:gui0E, "", s:cterm0E, "", "none", "")
hi! link Label ThemeOrange
hi! link Number ThemeOrange
hi! link Operator ThemeYellow
@ -314,101 +371,145 @@ hi! link StorageClass ThemeOrange
hi! link String ThemeGreen
hi! link Structure ThemeOrange
hi! link Tag ThemeOrange
call <sid>hi("Todo", s:gui08, s:guibg, s:cterm08, s:ctermbg, "italic", "")
call <sid>hi("Type", s:gui0A, "", s:cterm0A, "", "none", "")
hi! link Type ThemeYellow
hi! link Typedef ThemeOrange
" Treesitter
if has("nvim-0.8.0")
call <sid>hi("@field", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@property", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@namespace", s:gui06, "", s:cterm05, "", "italic", "")
call <sid>hi("@variable.builtin", s:gui06, "", s:cterm05, "", "italic", "")
call <sid>hi("@text.reference", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@text.uri", s:gui08, "", s:cterm08, "", "italic", "")
hi! link @field ThemeRed
hi! link @property ThemeRed
hi! link @namespace ThemeFg1Italic
hi! link @variable.builtin ThemeFg1Italic
hi! link @variable ThemeFg2
hi! link @conceal ThemeBlue
" Annotations & Attributes
call <sid>hi("@annotation", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@attribute", s:gui0D, "", s:cterm0D, "", "", "")
hi! link @text.uri ThemeRedItalic
hi! link @text.reference ThemeRed
" Booleans, Characters & Comments
call <sid>hi("@boolean", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@character", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@character.special", s:gui0F, "", s:cterm0F, "", "", "")
call <sid>hi("@comment", s:gui03, "", s:cterm03, "", "", "")
hi! link @annotation ThemeViolet
hi! link @attribute ThemeBlue
" Conditionals, Constants & Debugging
call <sid>hi("@keyword.conditional", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@constant", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@constant.builtin", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@constant.macro", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@keyword.debug", s:gui08, "", s:cterm08, "", "", "")
hi! link @boolean ThemeOrange
hi! link @character ThemeRed
hi! link @character.special ThemeMagenta
hi! link @comment Comment
" Directives & Exceptions
call <sid>hi("@keyword.directive.define", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@keyword.exception", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @constant ThemeBlue
hi! link @constant.builtin ThemeBlue
" Floats & Functions
call <sid>hi("@number.float", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@function", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@function.builtin", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@function.call", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@function.macro", s:gui08, "", s:cterm08, "", "", "")
hi! link @constant.macro ThemeRed
" Imports, Operators & Returns
call <sid>hi("@keyword.import", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@keyword.coroutine", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@keyword.operator", s:gui06, "", s:cterm05, "", "", "")
call <sid>hi("@keyword.return", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @keyword.directive.define ThemeViolet
hi! link @keyword.exception ThemeRed
" Methods & Namespaces
call <sid>hi("@function.method", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@function.method.call", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@namespace.builtin", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @comment.error ThemeRed
hi! link @number.float ThemeRed
hi! link @keyword.function ThemeRed
" Numbers & Directives
call <sid>hi("@none", s:gui06, "", s:cterm05, "", "", "")
call <sid>hi("@number", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@keyword.directive", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @function ThemeBlue
hi! link @function.builtin ThemeBlue
hi! link @function.call ThemeBlue
hi! link @function.macro ThemeRed
hi! link @function.method ThemeBlue
hi! link @function.method.call ThemeBlue
" Repeats, Storage & Strings
call <sid>hi("@keyword.repeat", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@keyword.storage", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@string", s:gui0B, "", s:cterm0B, "", "", "")
hi! link @keyword.debug ThemeRed
hi! link @keyword.conditional ThemeRed
hi! link @keyword.import ThemeViolet
hi! link @keyword.coroutine ThemeViolet
hi! link @keyword.operator ThemeYellow
hi! link @keyword.directive ThemeViolet
hi! link @keyword.repeat ThemeViolet
hi! link @keyword.storage ThemeViolet
hi! link @keyword.return ThemeRed
" Tags & Markup
call <sid>hi("@markup.link.label", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.link.label.symbol", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@tag", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@tag.attribute", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@tag.delimiter", s:gui0F, "", s:cterm0F, "", "", "")
hi! link @constructor ThemeBlue
hi! link @namespace.builtin ThemeViolet
" More Markup
call <sid>hi("@markup", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.environment", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.environment.name", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.raw", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@markup.math", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.strong", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.emphasis", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.strikethrough", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.underline", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.heading", s:gui0D, "", s:cterm0D, "", "", "")
hi! link @none ThemeFg1
hi! link @number ThemeOrange
hi! link @string ThemeGreen
" Comments & Types
call <sid>hi("@comment.note", s:gui03, "", s:cterm03, "", "", "")
call <sid>hi("@comment.error", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("@comment.hint", s:gui0B, "", s:cterm0B, "", "", "")
call <sid>hi("@comment.info", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("@comment.warning", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@comment.todo", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@markup.link.url", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("@type", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("@type.definition", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("@type.qualifier", s:gui0E, "", s:cterm0E, "", "", "")
hi! link @tag ThemeRed
hi! link @tag.delimiter ThemeViolet
hi! link @tag.attribute ThemeYellow
" affects markdown
hi! link @markup ThemeYellow
hi! link @markup.raw ThemeGreen
hi! link @markup.raw.block.lang ThemeFg2Bold
hi! link @markup.raw.block.marker ThemeRed
"call <sid>hi("@markup.raw.block.lang", s:gui08, "#1e0000", "", s:ctermbg, "", "")
hi! link @markup.list ThemeBlue
hi! link @markup.quote ThemeGrey
hi! link @markup.link ThemeYellow " borders
hi! link @markup.link.text ThemeBlue
hi! link @markup.link.label ThemeYellow
hi! link @markup.link.url ThemeYellow
hi! link @markup.link.dest ThemeFg3
hi! link @markup.link.wiki ThemeYellow
hi! link @markup.link.wiki.text ThemeBlue
hi! link @markup.link.wiki.label ThemeYellow
"hi! link @markup.link.label.symbol ThemeGreen
"hi! link markdownWikiLink ThemeViolet
"
hi! link @markup.environment ThemeYellow
hi! link @markup.environment.name ThemeYellow
hi! link @markup.math ThemeYellow
hi! link @punctuation.delimiter.latex ThemeOrange
hi! link @markup.strong Bold
hi! link @markup.emphasis Bold
hi! link @markup.strikethrough ThemeYellow
hi! link @markup.underline ThemeYellow
hi! link @comment.info ThemeBlue
hi! link @comment.todo ThemeYellow
hi! link @comment.note ThemeBg3
hi! link @comment.hint ThemeGreen
hi! link @comment.warning ThemeOrange
hi! link @type ThemeYellow
hi! link @type.builtin ThemeOrange
hi! link @type.definition ThemeViolet
hi! link @type.qualifier ThemeViolet
" Markdown
" hi! link @spell.markdown ThemeFg3
"call <sid>hi("@markup.heading.marker", s:gui08, "", "", s:ctermbg, "bold", "")
"hi! link @markup.heading ThemeRed
hi! link @markup.heading.marker ThemeOrange
hi! link @markup.heading.title ThemeRed "Italic
" set this for a strong background
"call <sid>hi("@markup.heading.title", s:gui08, "#440503", "", s:ctermbg, "italic", "")
hi! link @markup.heading.title.1 Bold
hi! link @markup.heading.title.3 Italic
"hi! link @markup.heading.4.title Italic
" YAML
hi! link @string.yaml ThemeBlue
hi! link @punctuation.delimiter.yaml ThemeGreen
hi! link @property.yaml ThemeFg2
" Diff
hi! link @diff.minus ThemeRed
hi! link @diff.plus ThemeGreen
call <sid>hi("TreesitterContext", "", s:gui00, "", "", "", "")
"hi TreesitterContextLineNumberBottom gui=underline guisp=Gray
"call <sid>hi("TreesitterContextBottom", "", "", "", "", "underline", s:gui02)
call <sid>hi("TreesitterContextSeparator", s:gui03, "", "", "", "", "")
"call <sid>hi("TreesitterContextLineNumberBottom", "", "", "", "", "underline", s:gui02)
endif
" Standard highlights to be used by plugins
@ -433,6 +534,7 @@ call <sid>hi("WarningFloat", s:gui09, s:gui01, s:cterm09, s:cterm01, "", "")
call <sid>hi("InfoFloat", s:gui0D, s:gui01, s:cterm0D, s:cterm01, "", "")
call <sid>hi("HintFloat", s:gui0C, s:gui01, s:cterm0C, s:cterm01, "", "")
call <sid>hi("OkFloat", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "")
call <sid>hi("NormalFloat", s:gui05, s:gui01, s:cterm05, s:cterm01, "", "")
call <sid>hi("ErrorHighlight", "", "", s:ctermbg, s:cterm08, "underline", s:gui08)
call <sid>hi("WarningHighlight", "", "", s:ctermbg, s:cterm09, "underline", s:gui09)
@ -449,6 +551,62 @@ call <sid>hi("ReferenceText", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "", "")
call <sid>hi("ReferenceRead", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "", "")
call <sid>hi("ReferenceWrite", s:gui01, s:gui08, s:cterm01, s:cterm08, "", "")
" 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
" "
" LANGUAGES
" "
" C
call <sid>hi("cOperator", s:gui0C, "", s:cterm0C, "", "", "")
call <sid>hi("cPreCondit", s:gui0E, "", s:cterm0E, "", "", "")
@ -728,8 +886,8 @@ call <sid>hi("phpMethodsVar", s:gui0C, "", s:cterm0C, "", "", "")
" hi! link pythonBuiltinObj ThemeCyan
" hi! link pythonBuiltinFunc ThemeGreen
" hi! link pythonFunction Function
hi! link pythonDecorator ThemeYellow
hi! link pythonDecoratorName ThemeYellow
" hi! link pythonDecorator ThemeYellow
" hi! link pythonDecoratorName ThemeYellow
" hi! link pythonTripleQuotes ThemeGreenItalic
" hi! link pythonInclude ThemeBlue
" hi! link pythonImport ThemeBlue
@ -777,58 +935,6 @@ call <sid>hi("StartifySelect", s:gui0C, "", s:cterm0C, "", "", "")
call <sid>hi("StartifySlash", s:gui03, "", s:cterm03, "", "", "")
call <sid>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 <sid>hi("javaOperator", s:gui0D, "", s:cterm0D, "", "", "")
@ -864,12 +970,18 @@ hi! link markdownUrlTitleDelimiter ThemeGreen
hi! link markdownLink ThemeGreen
hi! link markdownWikiLink ThemeViolet
hi! link markdownUrl ThemeOrange
"hi! link markdownUrl ThemeOrange
hi! link markdownUrl ThemeRed
hi! link markdownUrlProtocol ThemeGreenItalic
hi! link markdownInlineUrl ThemeOrange
hi! link markdownLinkText ThemeViolet
hi! link markdownIdDeclaration markdownLinkText
hi! link pandocAtxHeader ThemeRed
hi! link pandocAtxStart ThemeOrange
"call s:HL('markdownItalic', s:fg3, s:none, s:italic)
"call s:HL('markdownLinkText', s:gray, s:none, s:underline)
@ -880,3 +992,4 @@ delf <sid>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

View File

@ -0,0 +1,995 @@
" 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.
"
" There are several kinds of syntax identifiers:
"
" - Vim/editor related (e.g., Normal, Folded): these control colors of central Vim
" elements, like whitespace, bold text, the foldcolumn, etc
" - Generic syntax identifiers (e.g., Boolean, Conditional): these are key groups for
" syntax elements that various language syntax files link to. For instance, Python
" syntax files might have specific patterns that match function keywords like "def," and
" the resulting syntax region can be highlighted by linking it to the core "Function"
" highlight identifier.
" - Treesitter-based identifiers (e.g., @variable, @boolean): highlight groups for
" treesitter-based syntax highlighting, which can replace regex-based matching when
" enabled for richer (and often faster) highlighting. These groups can be linked to the
" core identifiers like any other language.
"
" *Note*: each of these identifiers can add a lang-specific suffix to style those groups
" as they apply to particular languages. For ex, `@boolean.python ThemeRed` would style
" Python booleans red, while the lang-agnostic `@boolean` definition remains.
" - Plugin-oriented identifiers (e.g., SpellBad, ErrorFloat): these are groups mostly core
" to vim/nvim, but often appear only in the context of plugins or certain modules (like
" LSP). For instance, ErrorFloat styles floating windows that might be drawn by nvim's
" built-in LSP hover info.
" GUI color definitions
let s:gui00 = "#1f2227"
let g:base16_gui00 = "#1f2227"
let s:gui01 = "#2b2e33"
let g:base16_gui01 = "#2b2e33"
let s:gui02 = "#373b40"
let g:base16_gui02 = "#373b40"
let s:gui03 = "#44484e"
let g:base16_gui03 = "#44484e"
let s:gui04 = "#aaaeb5"
let g:base16_gui04 = "#aaaeb5"
let s:gui05 = "#babec5"
let g:base16_gui05 = "#babec5"
let s:gui06 = "#caced5"
let g:base16_gui06 = "#caced5"
let s:gui07 = "#dadee6"
let g:base16_gui07 = "#dadee6"
let s:gui08 = "#e95949"
let g:base16_gui08 = "#e95949"
let s:gui09 = "#c97920"
let g:base16_gui09 = "#c97920"
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 = "#6e7278"
" 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 = "#1f2227"
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 = "#babec5"
let g:terminal_color_8 = "#44484e"
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 = "#dadee6"
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 = [
\ "#1f2227",
\ "#e95949",
\ "#5da268",
\ "#989250",
\ "#658ed9",
\ "#658ed9",
\ "#5da268",
\ "#babec5",
\ "#44484e",
\ "#e95949",
\ "#5da268",
\ "#989250",
\ "#658ed9",
\ "#658ed9",
\ "#5da268",
\ "#dadee6",
\ ]
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 <sid>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 <sid>hi("ThemeBg0", s:gui00, "", s:cterm00, "", "", "")
call <sid>hi("ThemeBg1", s:gui01, "", s:cterm01, "", "", "")
call <sid>hi("ThemeBg2", s:gui02, "", s:cterm02, "", "", "")
call <sid>hi("ThemeBg3", s:gui03, "", s:cterm03, "", "", "")
call <sid>hi("ThemeFg3", s:gui04, "", s:cterm04, "", "", "")
call <sid>hi("ThemeFg2", s:gui05, "", s:cterm05, "", "", "")
call <sid>hi("ThemeFg1", s:gui06, "", s:cterm06, "", "", "")
call <sid>hi("ThemeFg0", s:gui07, "", s:cterm07, "", "", "")
call <sid>hi("ThemeBg0bold", s:gui00, "", s:cterm00, "", "bold", "")
call <sid>hi("ThemeBg1bold", s:gui01, "", s:cterm01, "", "bold", "")
call <sid>hi("ThemeBg2bold", s:gui02, "", s:cterm02, "", "bold", "")
call <sid>hi("ThemeBg3bold", s:gui03, "", s:cterm03, "", "bold", "")
call <sid>hi("ThemeFg3bold", s:gui04, "", s:cterm04, "", "bold", "")
call <sid>hi("ThemeFg2bold", s:gui05, "", s:cterm05, "", "bold", "")
call <sid>hi("ThemeFg1bold", s:gui06, "", s:cterm06, "", "bold", "")
call <sid>hi("ThemeFg0bold", s:gui07, "", s:cterm07, "", "bold", "")
call <sid>hi("ThemeBg0Italic", s:gui00, "", s:cterm00, "", "italic", "")
call <sid>hi("ThemeBg1Italic", s:gui01, "", s:cterm01, "", "italic", "")
call <sid>hi("ThemeBg2Italic", s:gui02, "", s:cterm02, "", "italic", "")
call <sid>hi("ThemeBg3Italic", s:gui03, "", s:cterm03, "", "italic", "")
call <sid>hi("ThemeFg3Italic", s:gui04, "", s:cterm04, "", "italic", "")
call <sid>hi("ThemeFg2Italic", s:gui05, "", s:cterm05, "", "italic", "")
call <sid>hi("ThemeFg1Italic", s:gui06, "", s:cterm06, "", "italic", "")
call <sid>hi("ThemeFg0Italic", s:gui07, "", s:cterm07, "", "italic", "")
call <sid>hi("ThemeRed", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("ThemeOrange", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("ThemeYellow", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("ThemeGreen", s:gui0B, "", s:cterm0B, "", "", "")
call <sid>hi("ThemeCyan", s:gui0C, "", s:cterm0C, "", "", "")
call <sid>hi("ThemeBlue", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("ThemeViolet", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("ThemeMagenta", s:gui0F, "", s:cterm0F, "", "", "")
call <sid>hi("ThemeRedNone", s:gui08, "", s:cterm08, "", "NONE", "")
call <sid>hi("ThemeOrangeNone", s:gui09, "", s:cterm09, "", "NONE", "")
call <sid>hi("ThemeYellowNone", s:gui0A, "", s:cterm0A, "", "NONE", "")
call <sid>hi("ThemeGreenNone", s:gui0B, "", s:cterm0B, "", "NONE", "")
call <sid>hi("ThemeCyanNone", s:gui0C, "", s:cterm0C, "", "NONE", "")
call <sid>hi("ThemeBlueNone", s:gui0D, "", s:cterm0D, "", "NONE", "")
call <sid>hi("ThemeVioletNone", s:gui0E, "", s:cterm0E, "", "NONE", "")
call <sid>hi("ThemeMagentaNone", s:gui0F, "", s:cterm0F, "", "NONE", "")
call <sid>hi("ThemeRedBold", s:gui08, "", s:cterm08, "", "bold", "")
call <sid>hi("ThemeOrangeBold", s:gui09, "", s:cterm09, "", "bold", "")
call <sid>hi("ThemeYellowBold", s:gui0A, "", s:cterm0A, "", "bold", "")
call <sid>hi("ThemeGreenBold", s:gui0B, "", s:cterm0B, "", "bold", "")
call <sid>hi("ThemeCyanBold", s:gui0C, "", s:cterm0C, "", "bold", "")
call <sid>hi("ThemeBlueBold", s:gui0D, "", s:cterm0D, "", "bold", "")
call <sid>hi("ThemeVioletBold", s:gui0E, "", s:cterm0E, "", "bold", "")
call <sid>hi("ThemeMagentaBold", s:gui0F, "", s:cterm0F, "", "bold", "")
call <sid>hi("ThemeRedItalic", s:gui08, "", s:cterm08, "", "italic", "")
call <sid>hi("ThemeOrangeItalic", s:gui09, "", s:cterm09, "", "italic", "")
call <sid>hi("ThemeYellowItalic", s:gui0A, "", s:cterm0A, "", "italic", "")
call <sid>hi("ThemeGreenItalic", s:gui0B, "", s:cterm0B, "", "italic", "")
call <sid>hi("ThemeCyanItalic", s:gui0C, "", s:cterm0C, "", "italic", "")
call <sid>hi("ThemeBlueItalic", s:gui0D, "", s:cterm0D, "", "italic", "")
call <sid>hi("ThemeVioletItalic", s:gui0E, "", s:cterm0E, "", "italic", "")
call <sid>hi("ThemeMagentaItalic", s:gui0F, "", s:cterm0F, "", "italic", "")
call <sid>hi("ThemeRedBoldItalic", s:gui08, "", s:cterm08, "", "bold,italic", "")
call <sid>hi("ThemeOrangeBoldItalic", s:gui09, "", s:cterm09, "", "bold,italic", "")
call <sid>hi("ThemeYellowBoldItalic", s:gui0A, "", s:cterm0A, "", "bold,italic", "")
call <sid>hi("ThemeGreenBoldItalic", s:gui0B, "", s:cterm0B, "", "bold,italic", "")
call <sid>hi("ThemeCyanBoldItalic", s:gui0C, "", s:cterm0C, "", "bold,italic", "")
call <sid>hi("ThemeBlueBoldItalic", s:gui0D, "", s:cterm0D, "", "bold,italic", "")
call <sid>hi("ThemeVioletBoldItalic", s:gui0E, "", s:cterm0E, "", "bold,italic", "")
call <sid>hi("ThemeMagentaBoldItalic", s:gui0F, "", s:cterm0F, "", "bold,italic", "")
call <sid>hi("ThemeGrey", s:grey, "", s:cterm03, "", "", "")
call <sid>hi("ThemeGreyItalic", s:grey, "", s:cterm03, "", "italic", "")
" Vim editor colors
call <sid>hi("Bold", "", "", "", "", "bold", "")
call <sid>hi("Italic", "", "", "", "", "italic", "")
call <sid>hi("BoldItalic", "", "", "", "", "italic,bold", "")
call <sid>hi("Normal", s:gui05, s:guibg, s:cterm05, s:ctermbg, "", "")
call <sid>hi("Debug", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("Directory", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("Error", s:guibg, s:gui08, s:ctermbg, s:cterm08, "", "")
call <sid>hi("ErrorMsg", s:gui08, s:guibg, s:cterm08, s:ctermbg, "", "")
call <sid>hi("Exception", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("FoldColumn", s:gui03, s:guibg, s:cterm03, s:ctermbg, "", "")
call <sid>hi("Folded", s:gui03, s:gui01, s:cterm02, s:ctermbg, "", "")
call <sid>hi("IncSearch", s:gui01, s:gui09, s:cterm01, s:cterm09, "none", "")
call <sid>hi("Macro", s:gui0C, "", s:cterm0C, "", "", "")
call <sid>hi("MatchParen", "", s:gui03, "", s:cterm03, "", "")
call <sid>hi("ModeMsg", s:gui0B, "", s:cterm0B, "", "", "")
call <sid>hi("MoreMsg", s:gui0B, "", s:cterm0B, "", "", "")
call <sid>hi("Question", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("Search", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "", "")
call <sid>hi("Substitute", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "none", "")
call <sid>hi("SpecialKey", s:gui03, "", s:cterm03, "", "", "")
call <sid>hi("TooLong", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("Underlined", "", "", "", "", "underline", "fg")
call <sid>hi("Visual", "", s:gui02, "", s:cterm02, "", "")
call <sid>hi("VisualNOS", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("WarningMsg", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("WildMenu", s:guibg, s:gui06, s:ctermbg, s:cterm05, "", "")
call <sid>hi("Title", s:gui0D, "", s:cterm0D, "", "none", "")
"call <sid>hi("Conceal", s:gui0D, s:guibg, s:cterm0D, s:ctermbg, "", "")
hi! link Conceal ThemeBlue
call <sid>hi("Cursor", s:gui05, s:guibg, "", "", "inverse", "")
call <sid>hi("NonText", s:gui03, "", s:cterm03, "", "", "")
call <sid>hi("Whitespace", s:gui03, "", s:cterm03, "", "", "")
call <sid>hi("LineNr", s:gui03, s:guibg, s:cterm03, s:ctermbg, "", "")
call <sid>hi("SignColumn", s:gui03, s:guibg, s:cterm03, s:ctermbg, "", "")
call <sid>hi("StatusLine", s:gui07, s:gui01, s:cterm07, s:cterm01, "none", "")
call <sid>hi("StatusLineNC", s:gui06, s:gui01, s:cterm05, s:cterm01, "none", "")
call <sid>hi("VertSplit", s:gui01, s:guibg, s:cterm01, s:ctermbg, "none", "")
call <sid>hi("ColorColumn", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("CursorColumn", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("CursorLine", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("CursorLineNr", s:gui04, s:gui00, s:cterm04, s:cterm01, "", "")
call <sid>hi("QuickFixLine", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("PMenu", s:gui06, s:gui01, s:cterm06, s:cterm01, "none", "")
call <sid>hi("PMenuSel", s:gui06, s:gui02, s:cterm06, s:cterm02, "", "")
call <sid>hi("PMenuSbar", "", s:gui03, "", s:cterm03, "", "")
call <sid>hi("PMenuThumb", "", s:gui04, "", s:cterm04, "", "")
call <sid>hi("TabLine", s:gui03, s:gui01, s:cterm03, s:cterm01, "none", "")
call <sid>hi("TabLineFill", s:gui03, s:gui01, s:cterm03, s:cterm01, "none", "")
call <sid>hi("TabLineSel", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "none", "")
" Standard syntax
call <sid>hi("Define", s:gui0E, "", s:cterm0E, "", "none", "")
call <sid>hi("Identifier", s:gui06, "", s:cterm05, "", "none", "")
call <sid>hi("Keyword", s:gui0D, "", s:cterm0E, "", "none", "")
call <sid>hi("Todo", s:gui08, s:guibg, s:cterm08, s:ctermbg, "italic", "")
hi! link Boolean ThemeOrange
hi! link Character ThemeRed
hi! link Comment ThemeGreyItalic
hi! link Conditional ThemeRed
hi! link Constant ThemeOrange
hi! link Delimiter ThemeFg1
hi! link Float ThemeOrange
hi! link Function ThemeBlue
hi! link Include ThemeBlue
hi! link Constant ThemeOrange
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
hi! link Type ThemeYellow
hi! link Typedef ThemeOrange
" Treesitter
if has("nvim-0.8.0")
hi! link @field ThemeRed
hi! link @property ThemeRed
hi! link @namespace ThemeFg1Italic
hi! link @variable.builtin ThemeFg1Italic
hi! link @variable ThemeFg2
hi! link @conceal ThemeBlue
hi! link @text.uri ThemeRedItalic
hi! link @text.reference ThemeRed
hi! link @annotation ThemeViolet
hi! link @attribute ThemeBlue
hi! link @boolean ThemeOrange
hi! link @character ThemeRed
hi! link @character.special ThemeMagenta
hi! link @comment Comment
hi! link @constant ThemeBlue
hi! link @constant.builtin ThemeBlue
hi! link @constant.macro ThemeRed
hi! link @keyword.directive.define ThemeViolet
hi! link @keyword.exception ThemeRed
hi! link @comment.error ThemeRed
hi! link @number.float ThemeRed
hi! link @keyword.function ThemeRed
hi! link @function ThemeBlue
hi! link @function.builtin ThemeBlue
hi! link @function.call ThemeBlue
hi! link @function.macro ThemeRed
hi! link @function.method ThemeBlue
hi! link @function.method.call ThemeBlue
hi! link @keyword.debug ThemeRed
hi! link @keyword.conditional ThemeRed
hi! link @keyword.import ThemeViolet
hi! link @keyword.coroutine ThemeViolet
hi! link @keyword.operator ThemeYellow
hi! link @keyword.directive ThemeViolet
hi! link @keyword.repeat ThemeViolet
hi! link @keyword.storage ThemeViolet
hi! link @keyword.return ThemeRed
hi! link @constructor ThemeBlue
hi! link @namespace.builtin ThemeViolet
hi! link @none ThemeFg1
hi! link @number ThemeOrange
hi! link @string ThemeGreen
hi! link @tag ThemeRed
hi! link @tag.delimiter ThemeViolet
hi! link @tag.attribute ThemeYellow
" affects markdown
hi! link @markup ThemeYellow
hi! link @markup.raw ThemeGreen
hi! link @markup.raw.block.lang ThemeFg2Bold
hi! link @markup.raw.block.marker ThemeRed
"call <sid>hi("@markup.raw.block.lang", s:gui08, "#1e0000", "", s:ctermbg, "", "")
hi! link @markup.list ThemeBlue
hi! link @markup.quote ThemeGrey
hi! link @markup.link ThemeYellow " borders
hi! link @markup.link.text ThemeBlue
hi! link @markup.link.label ThemeYellow
hi! link @markup.link.url ThemeYellow
hi! link @markup.link.dest ThemeFg3
hi! link @markup.link.wiki ThemeYellow
hi! link @markup.link.wiki.text ThemeBlue
hi! link @markup.link.wiki.label ThemeYellow
"hi! link @markup.link.label.symbol ThemeGreen
"hi! link markdownWikiLink ThemeViolet
"
hi! link @markup.environment ThemeYellow
hi! link @markup.environment.name ThemeYellow
hi! link @markup.math ThemeYellow
hi! link @punctuation.delimiter.latex ThemeOrange
hi! link @markup.strong Bold
hi! link @markup.emphasis Bold
hi! link @markup.strikethrough ThemeYellow
hi! link @markup.underline ThemeYellow
hi! link @comment.info ThemeBlue
hi! link @comment.todo ThemeYellow
hi! link @comment.note ThemeBg3
hi! link @comment.hint ThemeGreen
hi! link @comment.warning ThemeOrange
hi! link @type ThemeYellow
hi! link @type.builtin ThemeOrange
hi! link @type.definition ThemeViolet
hi! link @type.qualifier ThemeViolet
" Markdown
" hi! link @spell.markdown ThemeFg3
"call <sid>hi("@markup.heading.marker", s:gui08, "", "", s:ctermbg, "bold", "")
"hi! link @markup.heading ThemeRed
hi! link @markup.heading.marker ThemeOrange
hi! link @markup.heading.title ThemeRed "Italic
" set this for a strong background
"call <sid>hi("@markup.heading.title", s:gui08, "#440503", "", s:ctermbg, "italic", "")
hi! link @markup.heading.title.1 Bold
hi! link @markup.heading.title.3 Italic
"hi! link @markup.heading.4.title Italic
" YAML
hi! link @string.yaml ThemeBlue
hi! link @punctuation.delimiter.yaml ThemeGreen
hi! link @property.yaml ThemeFg2
" Diff
hi! link @diff.minus ThemeRed
hi! link @diff.plus ThemeGreen
call <sid>hi("TreesitterContext", "", s:gui00, "", "", "", "")
"hi TreesitterContextLineNumberBottom gui=underline guisp=Gray
"call <sid>hi("TreesitterContextBottom", "", "", "", "", "underline", s:gui02)
call <sid>hi("TreesitterContextSeparator", s:gui03, "", "", "", "", "")
"call <sid>hi("TreesitterContextLineNumberBottom", "", "", "", "", "underline", s:gui02)
endif
" Standard highlights to be used by plugins
if has("patch-8.0.1038")
call <sid>hi("Deprecated", "", "", "", "", "strikethrough", "")
endif
call <sid>hi("SearchMatch", s:gui0C, "", s:cterm0C, "", "", "")
call <sid>hi("GitAddSign", s:gui0B, "", s:cterm0B, "", "", "")
call <sid>hi("GitChangeSign", s:gui04, "", s:cterm04, "", "", "")
call <sid>hi("GitDeleteSign", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("GitChangeDeleteSign", s:gui04, "", s:cterm04, "", "", "")
call <sid>hi("ErrorSign", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("WarningSign", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("InfoSign", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("HintSign", s:gui0C, "", s:cterm0C, "", "", "")
call <sid>hi("OkSign", s:gui0B, "", s:cterm0B, "", "", "")
call <sid>hi("ErrorFloat", s:gui08, s:gui01, s:cterm08, s:cterm01, "", "")
call <sid>hi("WarningFloat", s:gui09, s:gui01, s:cterm09, s:cterm01, "", "")
call <sid>hi("InfoFloat", s:gui0D, s:gui01, s:cterm0D, s:cterm01, "", "")
call <sid>hi("HintFloat", s:gui0C, s:gui01, s:cterm0C, s:cterm01, "", "")
call <sid>hi("OkFloat", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "")
call <sid>hi("NormalFloat", s:gui05, s:gui01, s:cterm05, s:cterm01, "", "")
call <sid>hi("ErrorHighlight", "", "", s:ctermbg, s:cterm08, "underline", s:gui08)
call <sid>hi("WarningHighlight", "", "", s:ctermbg, s:cterm09, "underline", s:gui09)
call <sid>hi("InfoHighlight", "", "", s:ctermbg, s:cterm0D, "underline", s:gui0D)
call <sid>hi("HintHighlight", "", "", s:ctermbg, s:cterm0C, "underline", s:gui0C)
call <sid>hi("OkHighlight", "", "", s:ctermbg, s:cterm0B, "underline", s:gui0B)
call <sid>hi("SpellBad", "", "", s:ctermbg, s:cterm08, "undercurl", s:gui08)
call <sid>hi("SpellLocal", "", "", s:ctermbg, s:cterm0C, "undercurl", s:gui0C)
call <sid>hi("SpellCap", "", "", s:ctermbg, s:cterm0D, "undercurl", s:gui0D)
call <sid>hi("SpellRare", "", "", s:ctermbg, s:cterm0E, "undercurl", s:gui0E)
call <sid>hi("ReferenceText", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "", "")
call <sid>hi("ReferenceRead", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "", "")
call <sid>hi("ReferenceWrite", s:gui01, s:gui08, s:cterm01, s:cterm08, "", "")
" 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
" "
" LANGUAGES
" "
" C
call <sid>hi("cOperator", s:gui0C, "", s:cterm0C, "", "", "")
call <sid>hi("cPreCondit", s:gui0E, "", s:cterm0E, "", "", "")
" C#
call <sid>hi("csClass", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("csAttribute", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("csModifier", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("csType", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("csUnspecifiedStatement", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("csContextualStatement", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>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 <sid>hi("CocHighlightRead", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "")
call <sid>hi("CocHighlightText", s:gui0A, s:gui01, s:cterm0A, s:cterm01, "", "")
call <sid>hi("CocHighlightWrite", s:gui08, s:gui01, s:cterm08, s:cterm01, "", "")
call <sid>hi("CocListMode", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "bold", "")
call <sid>hi("CocListPath", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "", "")
call <sid>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 <sid>hi("DiffAdd", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "")
call <sid>hi("DiffChange", s:gui06, s:gui01, s:cterm05, s:cterm01, "", "")
call <sid>hi("DiffDelete", s:gui02, s:guibg, s:cterm02, s:ctermbg, "", "")
call <sid>hi("DiffText", s:gui0D, s:gui01, s:cterm0D, s:cterm01, "", "")
call <sid>hi("DiffAdded", s:gui0B, s:guibg, s:cterm0B, s:ctermbg, "", "")
call <sid>hi("DiffFile", s:gui08, s:guibg, s:cterm08, s:ctermbg, "", "")
call <sid>hi("DiffNewFile", s:gui0B, s:guibg, s:cterm0B, s:ctermbg, "", "")
call <sid>hi("DiffLine", s:gui0D, s:guibg, s:cterm0D, s:ctermbg, "", "")
call <sid>hi("DiffRemoved", s:gui08, s:guibg, s:cterm08, s:ctermbg, "", "")
" Git
call <sid>hi("gitcommitOverflow", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("gitcommitSummary", s:gui0B, "", s:cterm0B, "", "", "")
call <sid>hi("gitcommitComment", s:gui03, "", s:cterm03, "", "", "")
call <sid>hi("gitcommitUntracked", s:gui03, "", s:cterm03, "", "", "")
call <sid>hi("gitcommitDiscarded", s:gui03, "", s:cterm03, "", "", "")
call <sid>hi("gitcommitSelected", s:gui03, "", s:cterm03, "", "", "")
call <sid>hi("gitcommitHeader", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("gitcommitSelectedType", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("gitcommitUnmergedType", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("gitcommitDiscardedType", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("gitcommitBranch", s:gui09, "", s:cterm09, "", "bold", "")
call <sid>hi("gitcommitUntrackedFile", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("gitcommitUnmergedFile", s:gui08, "", s:cterm08, "", "bold", "")
call <sid>hi("gitcommitDiscardedFile", s:gui08, "", s:cterm08, "", "bold", "")
call <sid>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 <sid>hi("@ibl.indent.char.1",s:gui01, "", s:cterm01, "", "", "")
endif
" HTML
call <sid>hi("htmlBold", s:gui07, "", s:cterm0A, "", "bold", "")
call <sid>hi("htmlItalic", s:gui06, "", s:cterm0E, "", "italic", "")
call <sid>hi("htmlEndTag", s:gui06, "", s:cterm05, "", "", "")
call <sid>hi("htmlTag", s:gui06, "", s:cterm05, "", "", "")
" JavaScript
call <sid>hi("javaScript", s:gui06, "", s:cterm05, "", "", "")
call <sid>hi("javaScriptBraces", s:gui06, "", s:cterm05, "", "", "")
call <sid>hi("javaScriptNumber", s:gui09, "", s:cterm09, "", "", "")
" pangloss/vim-javascript
call <sid>hi("jsOperator", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("jsStatement", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("jsReturn", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("jsThis", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("jsClassDefinition", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("jsFunction", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("jsFuncName", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("jsFuncCall", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("jsClassFuncName", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("jsClassMethodType", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("jsRegexpString", s:gui0C, "", s:cterm0C, "", "", "")
call <sid>hi("jsGlobalObjects", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("jsGlobalNodeObjects", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("jsExceptions", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("jsBuiltins", s:gui0A, "", s:cterm0A, "", "", "")
" Mail
call <sid>hi("mailQuoted1", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("mailQuoted2", s:gui0B, "", s:cterm0B, "", "", "")
call <sid>hi("mailQuoted3", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("mailQuoted4", s:gui0C, "", s:cterm0C, "", "", "")
call <sid>hi("mailQuoted5", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("mailQuoted6", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("mailURL", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("mailEmail", s:gui0D, "", s:cterm0D, "", "", "")
" Markdown
call <sid>hi("markdownCode", s:gui0B, "", s:cterm0B, "", "", "")
call <sid>hi("markdownError", s:gui06, s:guibg, s:cterm05, s:ctermbg, "", "")
call <sid>hi("markdownCodeBlock", s:gui0B, "", s:cterm0B, "", "", "")
call <sid>hi("markdownHeadingDelimiter", s:gui0D, "", s:cterm0D, "", "", "")
" Matchup
call <sid>hi("MatchWord", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "underline", "")
" NERDTree
call <sid>hi("NERDTreeDirSlash", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>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 <sid>hi("phpMemberSelector", s:gui06, "", s:cterm05, "", "", "")
call <sid>hi("phpComparison", s:gui06, "", s:cterm05, "", "", "")
call <sid>hi("phpParent", s:gui06, "", s:cterm05, "", "", "")
call <sid>hi("phpMethodsVar", s:gui0C, "", s:cterm0C, "", "", "")
" Python
"call <sid>hi("pythonOperator", s:gui0E, "", s:cterm0E, "", "", "")
"call <sid>hi("pythonRepeat", s:gui0E, "", s:cterm0E, "", "", "")
"call <sid>hi("pythonInclude", s:gui0E, "", s:cterm0E, "", "", "")
"call <sid>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 <sid>hi("rubyAttribute", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("rubyConstant", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("rubyInterpolationDelimiter", s:gui0F, "", s:cterm0F, "", "", "")
call <sid>hi("rubyRegexp", s:gui0C, "", s:cterm0C, "", "", "")
call <sid>hi("rubySymbol", s:gui0B, "", s:cterm0B, "", "", "")
call <sid>hi("rubyStringDelimiter", s:gui0B, "", s:cterm0B, "", "", "")
" SASS
call <sid>hi("sassidChar", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("sassClassChar", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("sassInclude", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("sassMixing", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("sassMixinName", s:gui0D, "", s:cterm0D, "", "", "")
" Signify
hi! link SignifySignAdd GitAddSign
hi! link SignifySignChange GitChangeSign
hi! link SignifySignDelete GitDeleteSign
" Startify
call <sid>hi("StartifyBracket", s:gui03, "", s:cterm03, "", "", "")
call <sid>hi("StartifyFile", s:gui07, "", s:cterm07, "", "", "")
call <sid>hi("StartifyFooter", s:gui03, "", s:cterm03, "", "", "")
call <sid>hi("StartifyHeader", s:gui0B, "", s:cterm0B, "", "", "")
call <sid>hi("StartifyNumber", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("StartifyPath", s:gui03, "", s:cterm03, "", "", "")
call <sid>hi("StartifySection", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("StartifySelect", s:gui0C, "", s:cterm0C, "", "", "")
call <sid>hi("StartifySlash", s:gui03, "", s:cterm03, "", "", "")
call <sid>hi("StartifySpecial", s:gui03, "", s:cterm03, "", "", "")
" Java
call <sid>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 markdownUrl ThemeRed
hi! link markdownUrlProtocol ThemeGreenItalic
hi! link markdownInlineUrl ThemeOrange
hi! link markdownLinkText ThemeViolet
hi! link markdownIdDeclaration markdownLinkText
hi! link pandocAtxHeader ThemeRed
hi! link pandocAtxStart ThemeOrange
"call s:HL('markdownItalic', s:fg3, s:none, s:italic)
"call s:HL('markdownLinkText', s:gray, s:none, s:underline)
" Remove functions
delf <sid>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

View File

@ -0,0 +1,995 @@
" 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.
"
" There are several kinds of syntax identifiers:
"
" - Vim/editor related (e.g., Normal, Folded): these control colors of central Vim
" elements, like whitespace, bold text, the foldcolumn, etc
" - Generic syntax identifiers (e.g., Boolean, Conditional): these are key groups for
" syntax elements that various language syntax files link to. For instance, Python
" syntax files might have specific patterns that match function keywords like "def," and
" the resulting syntax region can be highlighted by linking it to the core "Function"
" highlight identifier.
" - Treesitter-based identifiers (e.g., @variable, @boolean): highlight groups for
" treesitter-based syntax highlighting, which can replace regex-based matching when
" enabled for richer (and often faster) highlighting. These groups can be linked to the
" core identifiers like any other language.
"
" *Note*: each of these identifiers can add a lang-specific suffix to style those groups
" as they apply to particular languages. For ex, `@boolean.python ThemeRed` would style
" Python booleans red, while the lang-agnostic `@boolean` definition remains.
" - Plugin-oriented identifiers (e.g., SpellBad, ErrorFloat): these are groups mostly core
" to vim/nvim, but often appear only in the context of plugins or certain modules (like
" LSP). For instance, ErrorFloat styles floating windows that might be drawn by nvim's
" built-in LSP hover info.
" GUI color definitions
let s:gui00 = "#dadee6"
let g:base16_gui00 = "#dadee6"
let s:gui01 = "#caced5"
let g:base16_gui01 = "#caced5"
let s:gui02 = "#babec5"
let g:base16_gui02 = "#babec5"
let s:gui03 = "#aaaeb5"
let g:base16_gui03 = "#aaaeb5"
let s:gui04 = "#44484e"
let g:base16_gui04 = "#44484e"
let s:gui05 = "#373b40"
let g:base16_gui05 = "#373b40"
let s:gui06 = "#2b2e33"
let g:base16_gui06 = "#2b2e33"
let s:gui07 = "#1f2227"
let g:base16_gui07 = "#1f2227"
let s:gui08 = "#b42219"
let g:base16_gui08 = "#b42219"
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 = "#b42219"
let g:base16_gui0F = "#b42219"
let s:grey = "#7d8087"
" 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 = "#dadee6"
let g:terminal_color_1 = "#b42219"
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 = "#373b40"
let g:terminal_color_8 = "#aaaeb5"
let g:terminal_color_9 = "#b42219"
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 = "#1f2227"
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 = [
\ "#dadee6",
\ "#b42219",
\ "#377242",
\ "#6a6535",
\ "#3860ac",
\ "#3860ac",
\ "#377242",
\ "#373b40",
\ "#aaaeb5",
\ "#b42219",
\ "#377242",
\ "#6a6535",
\ "#3860ac",
\ "#3860ac",
\ "#377242",
\ "#1f2227",
\ ]
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 <sid>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 <sid>hi("ThemeBg0", s:gui00, "", s:cterm00, "", "", "")
call <sid>hi("ThemeBg1", s:gui01, "", s:cterm01, "", "", "")
call <sid>hi("ThemeBg2", s:gui02, "", s:cterm02, "", "", "")
call <sid>hi("ThemeBg3", s:gui03, "", s:cterm03, "", "", "")
call <sid>hi("ThemeFg3", s:gui04, "", s:cterm04, "", "", "")
call <sid>hi("ThemeFg2", s:gui05, "", s:cterm05, "", "", "")
call <sid>hi("ThemeFg1", s:gui06, "", s:cterm06, "", "", "")
call <sid>hi("ThemeFg0", s:gui07, "", s:cterm07, "", "", "")
call <sid>hi("ThemeBg0bold", s:gui00, "", s:cterm00, "", "bold", "")
call <sid>hi("ThemeBg1bold", s:gui01, "", s:cterm01, "", "bold", "")
call <sid>hi("ThemeBg2bold", s:gui02, "", s:cterm02, "", "bold", "")
call <sid>hi("ThemeBg3bold", s:gui03, "", s:cterm03, "", "bold", "")
call <sid>hi("ThemeFg3bold", s:gui04, "", s:cterm04, "", "bold", "")
call <sid>hi("ThemeFg2bold", s:gui05, "", s:cterm05, "", "bold", "")
call <sid>hi("ThemeFg1bold", s:gui06, "", s:cterm06, "", "bold", "")
call <sid>hi("ThemeFg0bold", s:gui07, "", s:cterm07, "", "bold", "")
call <sid>hi("ThemeBg0Italic", s:gui00, "", s:cterm00, "", "italic", "")
call <sid>hi("ThemeBg1Italic", s:gui01, "", s:cterm01, "", "italic", "")
call <sid>hi("ThemeBg2Italic", s:gui02, "", s:cterm02, "", "italic", "")
call <sid>hi("ThemeBg3Italic", s:gui03, "", s:cterm03, "", "italic", "")
call <sid>hi("ThemeFg3Italic", s:gui04, "", s:cterm04, "", "italic", "")
call <sid>hi("ThemeFg2Italic", s:gui05, "", s:cterm05, "", "italic", "")
call <sid>hi("ThemeFg1Italic", s:gui06, "", s:cterm06, "", "italic", "")
call <sid>hi("ThemeFg0Italic", s:gui07, "", s:cterm07, "", "italic", "")
call <sid>hi("ThemeRed", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("ThemeOrange", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("ThemeYellow", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("ThemeGreen", s:gui0B, "", s:cterm0B, "", "", "")
call <sid>hi("ThemeCyan", s:gui0C, "", s:cterm0C, "", "", "")
call <sid>hi("ThemeBlue", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("ThemeViolet", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("ThemeMagenta", s:gui0F, "", s:cterm0F, "", "", "")
call <sid>hi("ThemeRedNone", s:gui08, "", s:cterm08, "", "NONE", "")
call <sid>hi("ThemeOrangeNone", s:gui09, "", s:cterm09, "", "NONE", "")
call <sid>hi("ThemeYellowNone", s:gui0A, "", s:cterm0A, "", "NONE", "")
call <sid>hi("ThemeGreenNone", s:gui0B, "", s:cterm0B, "", "NONE", "")
call <sid>hi("ThemeCyanNone", s:gui0C, "", s:cterm0C, "", "NONE", "")
call <sid>hi("ThemeBlueNone", s:gui0D, "", s:cterm0D, "", "NONE", "")
call <sid>hi("ThemeVioletNone", s:gui0E, "", s:cterm0E, "", "NONE", "")
call <sid>hi("ThemeMagentaNone", s:gui0F, "", s:cterm0F, "", "NONE", "")
call <sid>hi("ThemeRedBold", s:gui08, "", s:cterm08, "", "bold", "")
call <sid>hi("ThemeOrangeBold", s:gui09, "", s:cterm09, "", "bold", "")
call <sid>hi("ThemeYellowBold", s:gui0A, "", s:cterm0A, "", "bold", "")
call <sid>hi("ThemeGreenBold", s:gui0B, "", s:cterm0B, "", "bold", "")
call <sid>hi("ThemeCyanBold", s:gui0C, "", s:cterm0C, "", "bold", "")
call <sid>hi("ThemeBlueBold", s:gui0D, "", s:cterm0D, "", "bold", "")
call <sid>hi("ThemeVioletBold", s:gui0E, "", s:cterm0E, "", "bold", "")
call <sid>hi("ThemeMagentaBold", s:gui0F, "", s:cterm0F, "", "bold", "")
call <sid>hi("ThemeRedItalic", s:gui08, "", s:cterm08, "", "italic", "")
call <sid>hi("ThemeOrangeItalic", s:gui09, "", s:cterm09, "", "italic", "")
call <sid>hi("ThemeYellowItalic", s:gui0A, "", s:cterm0A, "", "italic", "")
call <sid>hi("ThemeGreenItalic", s:gui0B, "", s:cterm0B, "", "italic", "")
call <sid>hi("ThemeCyanItalic", s:gui0C, "", s:cterm0C, "", "italic", "")
call <sid>hi("ThemeBlueItalic", s:gui0D, "", s:cterm0D, "", "italic", "")
call <sid>hi("ThemeVioletItalic", s:gui0E, "", s:cterm0E, "", "italic", "")
call <sid>hi("ThemeMagentaItalic", s:gui0F, "", s:cterm0F, "", "italic", "")
call <sid>hi("ThemeRedBoldItalic", s:gui08, "", s:cterm08, "", "bold,italic", "")
call <sid>hi("ThemeOrangeBoldItalic", s:gui09, "", s:cterm09, "", "bold,italic", "")
call <sid>hi("ThemeYellowBoldItalic", s:gui0A, "", s:cterm0A, "", "bold,italic", "")
call <sid>hi("ThemeGreenBoldItalic", s:gui0B, "", s:cterm0B, "", "bold,italic", "")
call <sid>hi("ThemeCyanBoldItalic", s:gui0C, "", s:cterm0C, "", "bold,italic", "")
call <sid>hi("ThemeBlueBoldItalic", s:gui0D, "", s:cterm0D, "", "bold,italic", "")
call <sid>hi("ThemeVioletBoldItalic", s:gui0E, "", s:cterm0E, "", "bold,italic", "")
call <sid>hi("ThemeMagentaBoldItalic", s:gui0F, "", s:cterm0F, "", "bold,italic", "")
call <sid>hi("ThemeGrey", s:grey, "", s:cterm03, "", "", "")
call <sid>hi("ThemeGreyItalic", s:grey, "", s:cterm03, "", "italic", "")
" Vim editor colors
call <sid>hi("Bold", "", "", "", "", "bold", "")
call <sid>hi("Italic", "", "", "", "", "italic", "")
call <sid>hi("BoldItalic", "", "", "", "", "italic,bold", "")
call <sid>hi("Normal", s:gui05, s:guibg, s:cterm05, s:ctermbg, "", "")
call <sid>hi("Debug", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("Directory", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("Error", s:guibg, s:gui08, s:ctermbg, s:cterm08, "", "")
call <sid>hi("ErrorMsg", s:gui08, s:guibg, s:cterm08, s:ctermbg, "", "")
call <sid>hi("Exception", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("FoldColumn", s:gui03, s:guibg, s:cterm03, s:ctermbg, "", "")
call <sid>hi("Folded", s:gui03, s:gui01, s:cterm02, s:ctermbg, "", "")
call <sid>hi("IncSearch", s:gui01, s:gui09, s:cterm01, s:cterm09, "none", "")
call <sid>hi("Macro", s:gui0C, "", s:cterm0C, "", "", "")
call <sid>hi("MatchParen", "", s:gui03, "", s:cterm03, "", "")
call <sid>hi("ModeMsg", s:gui0B, "", s:cterm0B, "", "", "")
call <sid>hi("MoreMsg", s:gui0B, "", s:cterm0B, "", "", "")
call <sid>hi("Question", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("Search", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "", "")
call <sid>hi("Substitute", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "none", "")
call <sid>hi("SpecialKey", s:gui03, "", s:cterm03, "", "", "")
call <sid>hi("TooLong", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("Underlined", "", "", "", "", "underline", "fg")
call <sid>hi("Visual", "", s:gui02, "", s:cterm02, "", "")
call <sid>hi("VisualNOS", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("WarningMsg", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("WildMenu", s:guibg, s:gui06, s:ctermbg, s:cterm05, "", "")
call <sid>hi("Title", s:gui0D, "", s:cterm0D, "", "none", "")
"call <sid>hi("Conceal", s:gui0D, s:guibg, s:cterm0D, s:ctermbg, "", "")
hi! link Conceal ThemeBlue
call <sid>hi("Cursor", s:gui05, s:guibg, "", "", "inverse", "")
call <sid>hi("NonText", s:gui03, "", s:cterm03, "", "", "")
call <sid>hi("Whitespace", s:gui03, "", s:cterm03, "", "", "")
call <sid>hi("LineNr", s:gui03, s:guibg, s:cterm03, s:ctermbg, "", "")
call <sid>hi("SignColumn", s:gui03, s:guibg, s:cterm03, s:ctermbg, "", "")
call <sid>hi("StatusLine", s:gui07, s:gui01, s:cterm07, s:cterm01, "none", "")
call <sid>hi("StatusLineNC", s:gui06, s:gui01, s:cterm05, s:cterm01, "none", "")
call <sid>hi("VertSplit", s:gui01, s:guibg, s:cterm01, s:ctermbg, "none", "")
call <sid>hi("ColorColumn", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("CursorColumn", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("CursorLine", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("CursorLineNr", s:gui04, s:gui00, s:cterm04, s:cterm01, "", "")
call <sid>hi("QuickFixLine", "", s:gui01, "", s:cterm01, "none", "")
call <sid>hi("PMenu", s:gui06, s:gui01, s:cterm06, s:cterm01, "none", "")
call <sid>hi("PMenuSel", s:gui06, s:gui02, s:cterm06, s:cterm02, "", "")
call <sid>hi("PMenuSbar", "", s:gui03, "", s:cterm03, "", "")
call <sid>hi("PMenuThumb", "", s:gui04, "", s:cterm04, "", "")
call <sid>hi("TabLine", s:gui03, s:gui01, s:cterm03, s:cterm01, "none", "")
call <sid>hi("TabLineFill", s:gui03, s:gui01, s:cterm03, s:cterm01, "none", "")
call <sid>hi("TabLineSel", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "none", "")
" Standard syntax
call <sid>hi("Define", s:gui0E, "", s:cterm0E, "", "none", "")
call <sid>hi("Identifier", s:gui06, "", s:cterm05, "", "none", "")
call <sid>hi("Keyword", s:gui0D, "", s:cterm0E, "", "none", "")
call <sid>hi("Todo", s:gui08, s:guibg, s:cterm08, s:ctermbg, "italic", "")
hi! link Boolean ThemeOrange
hi! link Character ThemeRed
hi! link Comment ThemeGreyItalic
hi! link Conditional ThemeRed
hi! link Constant ThemeOrange
hi! link Delimiter ThemeFg1
hi! link Float ThemeOrange
hi! link Function ThemeBlue
hi! link Include ThemeBlue
hi! link Constant ThemeOrange
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
hi! link Type ThemeYellow
hi! link Typedef ThemeOrange
" Treesitter
if has("nvim-0.8.0")
hi! link @field ThemeRed
hi! link @property ThemeRed
hi! link @namespace ThemeFg1Italic
hi! link @variable.builtin ThemeFg1Italic
hi! link @variable ThemeFg2
hi! link @conceal ThemeBlue
hi! link @text.uri ThemeRedItalic
hi! link @text.reference ThemeRed
hi! link @annotation ThemeViolet
hi! link @attribute ThemeBlue
hi! link @boolean ThemeOrange
hi! link @character ThemeRed
hi! link @character.special ThemeMagenta
hi! link @comment Comment
hi! link @constant ThemeBlue
hi! link @constant.builtin ThemeBlue
hi! link @constant.macro ThemeRed
hi! link @keyword.directive.define ThemeViolet
hi! link @keyword.exception ThemeRed
hi! link @comment.error ThemeRed
hi! link @number.float ThemeRed
hi! link @keyword.function ThemeRed
hi! link @function ThemeBlue
hi! link @function.builtin ThemeBlue
hi! link @function.call ThemeBlue
hi! link @function.macro ThemeRed
hi! link @function.method ThemeBlue
hi! link @function.method.call ThemeBlue
hi! link @keyword.debug ThemeRed
hi! link @keyword.conditional ThemeRed
hi! link @keyword.import ThemeViolet
hi! link @keyword.coroutine ThemeViolet
hi! link @keyword.operator ThemeYellow
hi! link @keyword.directive ThemeViolet
hi! link @keyword.repeat ThemeViolet
hi! link @keyword.storage ThemeViolet
hi! link @keyword.return ThemeRed
hi! link @constructor ThemeBlue
hi! link @namespace.builtin ThemeViolet
hi! link @none ThemeFg1
hi! link @number ThemeOrange
hi! link @string ThemeGreen
hi! link @tag ThemeRed
hi! link @tag.delimiter ThemeViolet
hi! link @tag.attribute ThemeYellow
" affects markdown
hi! link @markup ThemeYellow
hi! link @markup.raw ThemeGreen
hi! link @markup.raw.block.lang ThemeFg2Bold
hi! link @markup.raw.block.marker ThemeRed
"call <sid>hi("@markup.raw.block.lang", s:gui08, "#1e0000", "", s:ctermbg, "", "")
hi! link @markup.list ThemeBlue
hi! link @markup.quote ThemeGrey
hi! link @markup.link ThemeYellow " borders
hi! link @markup.link.text ThemeBlue
hi! link @markup.link.label ThemeYellow
hi! link @markup.link.url ThemeYellow
hi! link @markup.link.dest ThemeFg3
hi! link @markup.link.wiki ThemeYellow
hi! link @markup.link.wiki.text ThemeBlue
hi! link @markup.link.wiki.label ThemeYellow
"hi! link @markup.link.label.symbol ThemeGreen
"hi! link markdownWikiLink ThemeViolet
"
hi! link @markup.environment ThemeYellow
hi! link @markup.environment.name ThemeYellow
hi! link @markup.math ThemeYellow
hi! link @punctuation.delimiter.latex ThemeOrange
hi! link @markup.strong Bold
hi! link @markup.emphasis Bold
hi! link @markup.strikethrough ThemeYellow
hi! link @markup.underline ThemeYellow
hi! link @comment.info ThemeBlue
hi! link @comment.todo ThemeYellow
hi! link @comment.note ThemeBg3
hi! link @comment.hint ThemeGreen
hi! link @comment.warning ThemeOrange
hi! link @type ThemeYellow
hi! link @type.builtin ThemeOrange
hi! link @type.definition ThemeViolet
hi! link @type.qualifier ThemeViolet
" Markdown
" hi! link @spell.markdown ThemeFg3
"call <sid>hi("@markup.heading.marker", s:gui08, "", "", s:ctermbg, "bold", "")
"hi! link @markup.heading ThemeRed
hi! link @markup.heading.marker ThemeOrange
hi! link @markup.heading.title ThemeRed "Italic
" set this for a strong background
"call <sid>hi("@markup.heading.title", s:gui08, "#440503", "", s:ctermbg, "italic", "")
hi! link @markup.heading.title.1 Bold
hi! link @markup.heading.title.3 Italic
"hi! link @markup.heading.4.title Italic
" YAML
hi! link @string.yaml ThemeBlue
hi! link @punctuation.delimiter.yaml ThemeGreen
hi! link @property.yaml ThemeFg2
" Diff
hi! link @diff.minus ThemeRed
hi! link @diff.plus ThemeGreen
call <sid>hi("TreesitterContext", "", s:gui00, "", "", "", "")
"hi TreesitterContextLineNumberBottom gui=underline guisp=Gray
"call <sid>hi("TreesitterContextBottom", "", "", "", "", "underline", s:gui02)
call <sid>hi("TreesitterContextSeparator", s:gui03, "", "", "", "", "")
"call <sid>hi("TreesitterContextLineNumberBottom", "", "", "", "", "underline", s:gui02)
endif
" Standard highlights to be used by plugins
if has("patch-8.0.1038")
call <sid>hi("Deprecated", "", "", "", "", "strikethrough", "")
endif
call <sid>hi("SearchMatch", s:gui0C, "", s:cterm0C, "", "", "")
call <sid>hi("GitAddSign", s:gui0B, "", s:cterm0B, "", "", "")
call <sid>hi("GitChangeSign", s:gui04, "", s:cterm04, "", "", "")
call <sid>hi("GitDeleteSign", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("GitChangeDeleteSign", s:gui04, "", s:cterm04, "", "", "")
call <sid>hi("ErrorSign", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("WarningSign", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("InfoSign", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("HintSign", s:gui0C, "", s:cterm0C, "", "", "")
call <sid>hi("OkSign", s:gui0B, "", s:cterm0B, "", "", "")
call <sid>hi("ErrorFloat", s:gui08, s:gui01, s:cterm08, s:cterm01, "", "")
call <sid>hi("WarningFloat", s:gui09, s:gui01, s:cterm09, s:cterm01, "", "")
call <sid>hi("InfoFloat", s:gui0D, s:gui01, s:cterm0D, s:cterm01, "", "")
call <sid>hi("HintFloat", s:gui0C, s:gui01, s:cterm0C, s:cterm01, "", "")
call <sid>hi("OkFloat", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "")
call <sid>hi("NormalFloat", s:gui05, s:gui01, s:cterm05, s:cterm01, "", "")
call <sid>hi("ErrorHighlight", "", "", s:ctermbg, s:cterm08, "underline", s:gui08)
call <sid>hi("WarningHighlight", "", "", s:ctermbg, s:cterm09, "underline", s:gui09)
call <sid>hi("InfoHighlight", "", "", s:ctermbg, s:cterm0D, "underline", s:gui0D)
call <sid>hi("HintHighlight", "", "", s:ctermbg, s:cterm0C, "underline", s:gui0C)
call <sid>hi("OkHighlight", "", "", s:ctermbg, s:cterm0B, "underline", s:gui0B)
call <sid>hi("SpellBad", "", "", s:ctermbg, s:cterm08, "undercurl", s:gui08)
call <sid>hi("SpellLocal", "", "", s:ctermbg, s:cterm0C, "undercurl", s:gui0C)
call <sid>hi("SpellCap", "", "", s:ctermbg, s:cterm0D, "undercurl", s:gui0D)
call <sid>hi("SpellRare", "", "", s:ctermbg, s:cterm0E, "undercurl", s:gui0E)
call <sid>hi("ReferenceText", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "", "")
call <sid>hi("ReferenceRead", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "", "")
call <sid>hi("ReferenceWrite", s:gui01, s:gui08, s:cterm01, s:cterm08, "", "")
" 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
" "
" LANGUAGES
" "
" C
call <sid>hi("cOperator", s:gui0C, "", s:cterm0C, "", "", "")
call <sid>hi("cPreCondit", s:gui0E, "", s:cterm0E, "", "", "")
" C#
call <sid>hi("csClass", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("csAttribute", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("csModifier", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("csType", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("csUnspecifiedStatement", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("csContextualStatement", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>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 <sid>hi("CocHighlightRead", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "")
call <sid>hi("CocHighlightText", s:gui0A, s:gui01, s:cterm0A, s:cterm01, "", "")
call <sid>hi("CocHighlightWrite", s:gui08, s:gui01, s:cterm08, s:cterm01, "", "")
call <sid>hi("CocListMode", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "bold", "")
call <sid>hi("CocListPath", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "", "")
call <sid>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 <sid>hi("DiffAdd", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "")
call <sid>hi("DiffChange", s:gui06, s:gui01, s:cterm05, s:cterm01, "", "")
call <sid>hi("DiffDelete", s:gui02, s:guibg, s:cterm02, s:ctermbg, "", "")
call <sid>hi("DiffText", s:gui0D, s:gui01, s:cterm0D, s:cterm01, "", "")
call <sid>hi("DiffAdded", s:gui0B, s:guibg, s:cterm0B, s:ctermbg, "", "")
call <sid>hi("DiffFile", s:gui08, s:guibg, s:cterm08, s:ctermbg, "", "")
call <sid>hi("DiffNewFile", s:gui0B, s:guibg, s:cterm0B, s:ctermbg, "", "")
call <sid>hi("DiffLine", s:gui0D, s:guibg, s:cterm0D, s:ctermbg, "", "")
call <sid>hi("DiffRemoved", s:gui08, s:guibg, s:cterm08, s:ctermbg, "", "")
" Git
call <sid>hi("gitcommitOverflow", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("gitcommitSummary", s:gui0B, "", s:cterm0B, "", "", "")
call <sid>hi("gitcommitComment", s:gui03, "", s:cterm03, "", "", "")
call <sid>hi("gitcommitUntracked", s:gui03, "", s:cterm03, "", "", "")
call <sid>hi("gitcommitDiscarded", s:gui03, "", s:cterm03, "", "", "")
call <sid>hi("gitcommitSelected", s:gui03, "", s:cterm03, "", "", "")
call <sid>hi("gitcommitHeader", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("gitcommitSelectedType", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("gitcommitUnmergedType", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("gitcommitDiscardedType", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("gitcommitBranch", s:gui09, "", s:cterm09, "", "bold", "")
call <sid>hi("gitcommitUntrackedFile", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("gitcommitUnmergedFile", s:gui08, "", s:cterm08, "", "bold", "")
call <sid>hi("gitcommitDiscardedFile", s:gui08, "", s:cterm08, "", "bold", "")
call <sid>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 <sid>hi("@ibl.indent.char.1",s:gui01, "", s:cterm01, "", "", "")
endif
" HTML
call <sid>hi("htmlBold", s:gui07, "", s:cterm0A, "", "bold", "")
call <sid>hi("htmlItalic", s:gui06, "", s:cterm0E, "", "italic", "")
call <sid>hi("htmlEndTag", s:gui06, "", s:cterm05, "", "", "")
call <sid>hi("htmlTag", s:gui06, "", s:cterm05, "", "", "")
" JavaScript
call <sid>hi("javaScript", s:gui06, "", s:cterm05, "", "", "")
call <sid>hi("javaScriptBraces", s:gui06, "", s:cterm05, "", "", "")
call <sid>hi("javaScriptNumber", s:gui09, "", s:cterm09, "", "", "")
" pangloss/vim-javascript
call <sid>hi("jsOperator", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("jsStatement", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("jsReturn", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("jsThis", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("jsClassDefinition", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("jsFunction", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("jsFuncName", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("jsFuncCall", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("jsClassFuncName", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("jsClassMethodType", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("jsRegexpString", s:gui0C, "", s:cterm0C, "", "", "")
call <sid>hi("jsGlobalObjects", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("jsGlobalNodeObjects", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("jsExceptions", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("jsBuiltins", s:gui0A, "", s:cterm0A, "", "", "")
" Mail
call <sid>hi("mailQuoted1", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("mailQuoted2", s:gui0B, "", s:cterm0B, "", "", "")
call <sid>hi("mailQuoted3", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("mailQuoted4", s:gui0C, "", s:cterm0C, "", "", "")
call <sid>hi("mailQuoted5", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("mailQuoted6", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("mailURL", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("mailEmail", s:gui0D, "", s:cterm0D, "", "", "")
" Markdown
call <sid>hi("markdownCode", s:gui0B, "", s:cterm0B, "", "", "")
call <sid>hi("markdownError", s:gui06, s:guibg, s:cterm05, s:ctermbg, "", "")
call <sid>hi("markdownCodeBlock", s:gui0B, "", s:cterm0B, "", "", "")
call <sid>hi("markdownHeadingDelimiter", s:gui0D, "", s:cterm0D, "", "", "")
" Matchup
call <sid>hi("MatchWord", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "underline", "")
" NERDTree
call <sid>hi("NERDTreeDirSlash", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>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 <sid>hi("phpMemberSelector", s:gui06, "", s:cterm05, "", "", "")
call <sid>hi("phpComparison", s:gui06, "", s:cterm05, "", "", "")
call <sid>hi("phpParent", s:gui06, "", s:cterm05, "", "", "")
call <sid>hi("phpMethodsVar", s:gui0C, "", s:cterm0C, "", "", "")
" Python
"call <sid>hi("pythonOperator", s:gui0E, "", s:cterm0E, "", "", "")
"call <sid>hi("pythonRepeat", s:gui0E, "", s:cterm0E, "", "", "")
"call <sid>hi("pythonInclude", s:gui0E, "", s:cterm0E, "", "", "")
"call <sid>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 <sid>hi("rubyAttribute", s:gui0D, "", s:cterm0D, "", "", "")
call <sid>hi("rubyConstant", s:gui0A, "", s:cterm0A, "", "", "")
call <sid>hi("rubyInterpolationDelimiter", s:gui0F, "", s:cterm0F, "", "", "")
call <sid>hi("rubyRegexp", s:gui0C, "", s:cterm0C, "", "", "")
call <sid>hi("rubySymbol", s:gui0B, "", s:cterm0B, "", "", "")
call <sid>hi("rubyStringDelimiter", s:gui0B, "", s:cterm0B, "", "", "")
" SASS
call <sid>hi("sassidChar", s:gui08, "", s:cterm08, "", "", "")
call <sid>hi("sassClassChar", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("sassInclude", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("sassMixing", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("sassMixinName", s:gui0D, "", s:cterm0D, "", "", "")
" Signify
hi! link SignifySignAdd GitAddSign
hi! link SignifySignChange GitChangeSign
hi! link SignifySignDelete GitDeleteSign
" Startify
call <sid>hi("StartifyBracket", s:gui03, "", s:cterm03, "", "", "")
call <sid>hi("StartifyFile", s:gui07, "", s:cterm07, "", "", "")
call <sid>hi("StartifyFooter", s:gui03, "", s:cterm03, "", "", "")
call <sid>hi("StartifyHeader", s:gui0B, "", s:cterm0B, "", "", "")
call <sid>hi("StartifyNumber", s:gui09, "", s:cterm09, "", "", "")
call <sid>hi("StartifyPath", s:gui03, "", s:cterm03, "", "", "")
call <sid>hi("StartifySection", s:gui0E, "", s:cterm0E, "", "", "")
call <sid>hi("StartifySelect", s:gui0C, "", s:cterm0C, "", "", "")
call <sid>hi("StartifySlash", s:gui03, "", s:cterm03, "", "", "")
call <sid>hi("StartifySpecial", s:gui03, "", s:cterm03, "", "", "")
" Java
call <sid>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 markdownUrl ThemeRed
hi! link markdownUrlProtocol ThemeGreenItalic
hi! link markdownInlineUrl ThemeOrange
hi! link markdownLinkText ThemeViolet
hi! link markdownIdDeclaration markdownLinkText
hi! link pandocAtxHeader ThemeRed
hi! link pandocAtxStart ThemeOrange
"call s:HL('markdownItalic', s:fg3, s:none, s:italic)
"call s:HL('markdownLinkText', s:gray, s:none, s:underline)
" Remove functions
delf <sid>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

View File

@ -1,22 +0,0 @@
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="│"'

View File

@ -1,22 +0,0 @@
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="│"'

View File

@ -1,22 +0,0 @@
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="│"'

View File

@ -1,22 +0,0 @@
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="│"'

View File

@ -1,22 +0,0 @@
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="│"'

View File

@ -1,22 +0,0 @@
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="│"'

View File

@ -1,22 +0,0 @@
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="│"'

View File

@ -1,22 +0,0 @@
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="│"'

Some files were not shown because too many files have changed in this diff Show More