Skip to content

Releases: projekt0n/github-nvim-theme

v1.1.2

05 Aug 11:04
v1.1.2
8db454e
Compare
Choose a tag to compare

This release contains a crucial hotfix for a bug that prevented the ability to override specs in any way (see #359).

What's New?

  • Added static/class function Color.is_Color() for detecting Color instances
  • Added live_colors() to the interactive module to assist internal development (debugging, color picking)

Highlight Improvements

  • JSON: keys
  • Lua: keys (in table literals and type annotations)

Changes

  • Moved/migrated plugin/*.vim -> plugin/*.lua

Issues Fix

  • Made Color() constructor idempotent (previously, passing a Color inst silently caused a bug)
  • Fixed unable to override/customize spec (#359)
  • Fixed winhl gets clobbered when set

Note

This release is getting published as v1.1.2 and not v1.1.1 because the v1.1.1 tag was created prematurely on accident (apparently hitting enter from the release creation page is all that is needed to publish a draft and push a tag). That tag was up for ~1 minute and has since been deleted. Just to be safe, and following git's recommendations, this release will be tagged with a fresh, new tag: v1.1.2.

Full Changelog: v1.1.0...v1.1.2

v1.1.0

23 Jul 14:40
v1.1.0
bc0c395
Compare
Choose a tag to compare

Highlight Groups

As of neovim v0.10, several highlight groups have changed. You may need to update your config if you are using or overriding any of the groups listed in the following sections. You can also view the affected groups directly in neovim with :help github-theme.nvim-0.10.0.hlgroups.

Highlight Groups Renamed

Show groups
Old Group New Group
@conditional @keyword.conditional
@debug @keyword.debug
@define @keyword.directive or @keyword.directive.define
@exception @keyword.exception
@field @variable.member
@float @number.float
@include @keyword.import
@method @function.method
@method.call @function.method.call
@namespace @module
@parameter @variable.parameter
@preproc @keyword.directive
@punctuation.special @markup.list (markdown lists only; move subitems from @text.todo)
@repeat @keyword.repeat
@storageclass @keyword.storage
@string.regex @string.regexp
@string.special @markup.link.label (non-url links)
@symbol @string.special.symbol
@text.* @markup.{strong,italic,link,strikethrough} (with exceptions; see below)
@text.diff.{add,delete,} @diff.{plus,minus,delta}
@text.literal @markup.raw
@text.reference @markup.link
@text.title @markup.heading
@text.uri @markup.link.url (in markup links)
@text.uri @string.special.url (outside markup)
@text.{todo,warning,note,danger} @comment.{todo,warning,note,error}

Highlight Groups Removed

Show groups
Group Comment
VertSplit use WinSeparator instead
@error there appears to be no replacement at this time

Highlight Groups Added

Show groups

The following is a list of groups which have been added to neovim since the beginning of 2024 and does not include any of the groups mentioned in the previous sections.

Group Description
@attribute attribute annotations (e.g. Python decorators, Rust lifetimes)
@attribute.builtin builtin annotations (e.g. @property in Python)
@comment.documentation comments documenting code
@function.call function calls
@keyword.conditional.ternary ternary operator (e.g. ?, :)
@keyword.coroutine keywords related to coroutines (e.g. go in Go, async/await in Python)
@keyword.function keywords that define a function (e.g. func in Go, def in Python)
@keyword.modifier keywords defining type modifiers (e.g. const, static, public)
@keyword.operator operators that are English words (e.g. and, or)
@keyword.return keywords like return and yield
@keyword.type keywords defining composite types (e.g. struct, enum)
@markup.heading.1 top-level heading
@markup.heading.2 section heading
@markup.heading.3 subsection heading
@markup.heading.4 and so on
@markup.heading.5 and so forth
@markup.heading.6 six levels ought to be enough for anybody
@markup.list.checked checked todo-style list markers
@markup.list.unchecked unchecked todo-style list markers
@markup.math math environments (e.g. $ ... $ in LaTeX)
@markup.quote block quotes
@markup.raw.block literal or verbatim text as a stand-alone block
@module.builtin built-in modules or namespaces
@punctuation.bracket brackets (e.g. (), {}, [])
@punctuation.delimiter delimiters (e.g. ;, ., ,)
@punctuation.special special symbols (e.g. {} in string interpolation)
@string.documentation string documenting code (e.g. Python docstrings)
@string.special.path filenames (e.g. those in .gitignore)
@tag.attribute XML-style tag attributes
@tag.builtin XML-style tag names (e.g. HTML5 tags)
@tag.delimiter XML-style tag delimiters
@type.builtin built-in types
@variable.builtin built-in variable names (e.g. this, self)
@variable.parameter.builtin special parameters (e.g. _, it)
PmenuMatch Popup menu: Matched text in normal item.
PmenuSel Popup menu: Matched text in selected item.
SnippetTabstop Tabstops in snippets. :help vim.snippet
StatusLineTerm Status line of terminal window.
`S...
Read more

v1.0.2

03 May 10:15
Compare
Choose a tag to compare

What's New?

  • Implement highlight-blend feature #251
  • Added Rust lifetime highlights #289
  • Reimplemented *_default colorschemes.
  • Support WinSeparator highlight, introduced in Neovim >= 0.10, replacing VertSplit.

Changes

  • chore(ci): use actions/checkout@v4
  • fix(ci): update neovim macOS distribution naming

Issues Fix

  • Fixed few regex-based/legacy highlight corrections (fixed #285)
  • Closed #251
  • Fixed bug where the current theme gets compiled multiple times instead of compiling all themes #290
  • Fixed darkened sidebars when disabling options.sidebars.disabled
  • Fixes #311

v1.0.1

23 Jul 12:58
Compare
Choose a tag to compare

What's New?

  • Included Airline themes Fixed #20
  • CI: Get an update primer primitives automatically #253
  • Support coc-explorer highlights

Changes

  • Enhance Current Statusline and Popup selection with a blue tint
  • Enhance indent-blankline.nvim plugin highlights

Issues Fix

v1.0.0

19 May 06:44
Compare
Choose a tag to compare

Deprecation & Breaking Changes

  • The Method of setting and loading colorscheme is changed. Refer to :h github-theme.changelog-10042023
  • The config.vim_config and config.default modules are now deprecated.
  • The config.apply_configuration() function is also deprecated.
  • The theme_style option is removed. Use :colorscheme command instead.
  • The module plugins.lualine moved to util.lualine and plugins module removed.
  • Old util module deprecated.

Configuration Deprecation and Migration

  • msg_area_style -> Removed.
  • comment_style -> options.styles.comments
  • function_style -> options.styles.functions
  • keyword_style -> options.styles.keywords
  • variable_style -> options.styles.variables
  • transparent -> options.transparent
  • hide_end_of_buffer -> options.hide_end_of_buffer
  • hide_inactive_statusline -> options.hide_nc_statusline
  • dark_float -> options.darken.floats
  • dark_sidebar-> options.darken.sidebars.enable
  • sidebars-> options.darken.sidebars.list
  • colors-> palettes or specs
  • overrides -> groups
  • dev -> use vim command :GithubThemeInteractive

New Configuration

  • options.compile_file_suffix -> Option for setting compiled file suffix.
  • options.compile_path -> Option for setting compile files path.
  • options.dim_inactive -> Option for setting darker tint to non active buffers.
  • options.terminal_colors -> Option for toggling builtin terminal highlights.
  • options.module_default -> Option for toggling plugins highlights
  • options.modules -> Option for individual plugins related configuration
  • options.styles.conditionals -> Style for conditionals
  • options.styles.constants -> Style for constants
  • options.styles.numbers -> Style for numbers
  • options.styles.operators -> Style for operators
  • options.styles.strings -> Style for strings
  • options.styles.types -> Style for types
  • options.inverse.match_paren -> Reverse match parentheses
  • options.inverse.visual -> Reverse visual selection
  • options.inverse.search -> Reverse search string

What's New?

  • Compiling colorscheme for blazingly fast load using :GithubThemeCompile
  • Interactive development mode using :GithubThemeInteractive
  • lib.deprecation - A Deprecation library to print Deprecation Messages.
  • lib.log - A logging library to print log Messages.
  • The config.default module has been changed to a variable and moved inside the config module.
  • Support Fidget plugin highlights #202
  • Support fzf-lua plugin highlights #221
  • Support neo-tree.nvim plugin highlights #221
  • Support dap-ui plugin highlights #207
  • Support diffchar.vim plugin highlights #216

Issues Fix

v0.0.7

16 Jan 11:21
Compare
Choose a tag to compare

Fixes

  • Added support for new treesitter group names (merged #222)
  • Removed TS* highlight groups #214
  • Fixed issue with incorrect Typescript highlighting colors when using treesitter #220
  • Fixed issues #223 and #224

v0.0.6

03 Aug 12:01
Compare
Choose a tag to compare

Changes

Added

Fixes

  • fixed #175
  • removed hi clear command from loading colorscheme fixed #181
  • removed html tags from README.md
  • fixed #189
  • fixed #186
  • fixed #190
  • fixed lsp warnings and types

v0.0.5

03 May 10:19
Compare
Choose a tag to compare

What's New?

  • refactor: color types moved to types/palette.lua
  • chore: terminal colors
  • feat: use native autocmds on nvim >=0.7 ( fixed #168 )
  • chore: tmux theme's extension changed to .conf from .tmux
  • BREAKING-CHANGE: removed some colors from colors.lua
  • refactor: implement highlight override function in util.load
  • enhance: overrides function is now able to add custom highlight in dev mode.
  • docs: about developer mode
  • BREAKING-CHANGE: set lualine theme with theme="auto"
  • terminal-theme: Xresources theme added #166
  • chore: unlink 'Visual' highlight from plugin highlights
  • kitty: add cursor foreground color ( fixed #174 )
  • terminal-theme: Windows Terminal theme added #180 @mutecipher

Fixes

  • tmp-fix: deleted lua queries #159
  • nvim-dev-icons colors fixed projekt0n/circles.nvim#6
  • make: tmux prefix fixed
  • tmux: set bg2 as background in 'message-style' fixed #164
  • fixed #163
  • fixed #165
  • lualine docs updated (fixed #167)
  • fixed #177
  • fix: use pcall to clear autocmd silently @xiyaowong #178
  • fix: skip native_autocmds on some neovim0.7 builds
  • fixed #179

v0.0.4

11 Jan 09:12
Compare
Choose a tag to compare

What's New?

  • GitHub Dark Colorblind(Beta) added 🎉 #96
  • GitHub Light Colorblind(Beta) added 🎉 #96
  • Dark background color for inactive statusline and lualine
  • Minimal look (hide_inactive_statusline) removed from lualine
  • terminal highlight added for lualine
  • Added basic coc.nvim highlights #141
  • define global in project luarc config file.
  • Removed unnecessary defer function & highlights
  • allow customizing highlight group ful1e5/onedark.nvim#91
  • refactor: Colors moved to palette module
  • types module initiate
  • proper color docs with gt.ColorPalette type
  • Support ConfigSchema type with all modules
  • refactor: config module
  • feat: githooks init
  • formatter changed LuaFormatter-> StyLua
  • chore: removed unnecessary module (hsluv.lua)
  • feat: luadoc and type added inside util.lua
  • feat: TerminalConf type added in types module
  • refactor: modules export & typing
  • refactor: terminal themes moved 'extras' -> 'terminal'
  • feat: Apply highlight's style using types.HighlightStyle type
  • refactor: color name changed 'term_fg' -> 'fg_term'
  • feat: suggest config in vim.g autocompletion
  • feat: reuse common color in palettes
  • docs: team account added in funding

Fixes

  • dark foreground color for visited entries in telescope.nvim
  • Fix #144 - Re-patch removed hop.nvim highlights
  • Fix #133 - highlights of inactive tabline in lualine plugin
  • inherit eof color from fg_gutter #150
  • cleanup: getColor() from util module
  • fix #156 - highlight added for GitSignsCurrentLineBlame
  • refactor: color renamed lsp.referenceText -> lsp.ref_txt
  • TabLineSel highlight link with PmenuSel
  • Fixed iterm theme generation
  • fix: lualine theme

v0.0.3

09 Dec 11:05
52f8eff
Compare
Choose a tag to compare

What's New?

  • Github dark_default theme added #15 #16 #24
  • Github light_default theme added #15 #16
  • Make target added for reloading kitty theme with kitty_dark_default & kitty_light_default
  • Individual themes for colorscheme command #68
  • Breaking Change: use snake_case inside config instead of camelCase
  • hide_inactive_statusline default value is true
  • dark_float default value is false
  • feat: vim config support with "vim.g"
  • lualine colors refactored inside colors.lua (related to #80)
  • NvimTreeIndentMarker highlight is light #74
  • Github's default themes for tmux
  • plugin support: nvim-compe, nvim-cmp and nvim-notify
  • set vim.o.background while loading individual colorscheme (folke/tokyonight.nvim#102)
  • enhance: assign config default value to vim.g variables
  • re-patch: #72
  • breaking change: github deprecated from colorscheme command
  • pmenu.select color removed
  • pmenu select background color with dynamic blue color
  • breaking change: terminal colors are renamed
  • feat: set vim.o.background with config module (re-patch #60 #116)
  • enhance: support colorschemes with fzf Colors command
  • enhance: unlink NvimTreeGitIgnored from Comment
  • refactor: global variable prefix store in key_prefix variable
  • refactor: pass common config in extra module
  • enhance: StatusLine foreground & StatusLineNC background colors are customizable ( related to #11 )
  • feat: vscode like lspkind highlighting inside nvim-cmp #137
  • enhance: highlight all lspkind list in nvim-cmp #137
  • Link common highlights for diff group

Fixes

  • Fixed diff highlight colors for dark_default & light_default
  • Screenshots and docs updated #63 #16
  • #72 fixed
  • #73 fixed
  • #80 fixed
  • #76 fixed
  • IncSearch highlight linked with Search
  • Search highlight enhanced for transparent mode
  • LineNr highlight enhanced for transparent mode
  • refactor: git_signs & dev_icons colors
  • docs: removed lua table assignment from vim example (related to #89 #77)
  • Linting inside tmux.lua
  • NvimTree git highlight
  • refactor: de-attach 'bg_statusline' color from lualine
  • fix #83: inactive lualine colors
  • enhance: inactive statusline
  • load colorscheme according to theme_style config
  • removed search colors force assignments from transparent mode #113
  • todo highlight foreground color fixed #115
  • make CursorLine and CursorColumn background highlight more visible #109
  • qfLineNr & QuickFixLine colors updated #119
  • LuaDocs: duplicate warning fixed
  • missing ' in vim config (README.md) fixed #134
  • typo inisde theme.lua
  • missing alias fixed inside colors.lua
  • Fix vim.o.background setting in config module
  • Fix assign user_config value to vim.g global variables