Releases: Iron-E/nvim-highlite
v1.9.0 – General Improvements
This release brings general improvements to the plugin. It brings added defaults, improved API performance, and more.
Additions
- Add fern.vim defaults.
- Add
.git/config
defaults. - Add
.puml
gantt defaults. - Add
.razor
defaults. - Add
.toml
defaults. - Add better
.css
defaults. - Add better
.rs
defaults. - Document overriding groups from
init.vim
.
Changes
- Fix
.ini
labels not looking likeLabel
s. - Fix
:terminal
showing wrong color. - Fix highlight groups being cleared on
:source
. - Fix Vim user function's not matching Vim builtin function highlighting.
- Improve
.scss
defaults. - Improve
git diff
highlights. - Link
luaNoise
toDelimiter
.
v1.5.0 – APIs
Introduction
While playing around with some other plugins, I wondered what I would be like if I could adjust my colorscheme on the fly using the simplistic highlighting syntax featured in this plugin. As a result, now you can!
local highlite = require('highlite')
local yellow = {'#f0df33', 220, 'yellow'}
-- Highlight a new group
highlite.highlight('Todo', {fg=yellow, style={'bold', 'underline'}})
-- Link a group
highlite.highlight('Identifier', 'Todo')
You can call this function from anywhere, as seen here in my Galaxyline config. It allows the :highlight
command to be entirely bypassed with a much simpler version.
- This also means that
nvim-highlite
can be referenced as a dependency, rather than used as a template. - While I still recommend its use as a template, using the
highlight()
function may be useful in initializing personal configuration settings.
Changes
- Added docs (see
:help highlite
in Neovim) - Exposed
highlite.highlight()
. - Exposed
highlite.highlight_terminal()
. - Added
highlite.__call()
to maintain compatability with previous versions.- Calling the
highlite
module allows you to perform a complete reset of all highlight groups, like is done here in the template.
- Calling the
- Improve startup time ~2ms.
v1.4.0 – Light Theme Development Support
Introduction
This release brings a change requested from a user on #3.
Additions
- Ability to specify individual values for highlight groups inside of
light
anddark
tables.- Logic for determining which data to load is handled automatically.
- Data outside of a
light
ordark
table is set as a default.
- Data outside of a
- Brief instructions are now in the README as well as the
colors/highlite.vim
file.
local highlight_groups = { Normal = {dark={fg=white, bg=black}, light={fg=black, bg=white}, style='italic'} }
- NOTE: This is an optional feature.
- Logic for determining which data to load is handled automatically.
Changes
- The
vim.o.bg
variable is no longer set by the colorscheme.- This is so that the colorscheme can react to changes in the
bg
, rather than administrate them.
- This is so that the colorscheme can react to changes in the
- Minor performance improvements.
- This is to offset performance potential performance losses when defining a ton of
light
anddark
tables.
- This is to offset performance potential performance losses when defining a ton of
- Minor refactors to increase maintainability.
- Documentation has been altered where necessary.
v1.3.0 – Highlight Blending
This release is a very minor update to the highlighting algorithms that allows for you to make use of the highlight-blend
feature of Neovim. See the help page about highlight-blend
ing for more details.
Example:
local highlight_groups = {
Comment = {bg=NONE, fg=gray, blend=50, style='italic'},
}
v1.2.0 – Improved Default Highlight Links
There are no changes to the core of this plugin, and because of that, there is no need to update.
Anyone who has created a colorscheme using this template will only have to perform a git merge
to implement these new defaults, although if you are satisfied with the way your colors look, you can safely ignore it.
Updating is generally recommended as the language coverage has improved.
v1.1.0 – Performance Improvements; Better Defaults; Easier Syntax
Additions
- Allow highlight linking using strings.
-- Previously, you had to do this to link one highlight group to another: DiffAdd = {link='SomeOtherGroup'}, -- Now, you can just do this: DiffAdd = 'SomeOtherGroup',
Changes
- Performance (startup time) has been greatly improved.
- All of the logic that can exist outside of loops has been moved.
- This doesn't necessarily make the code the easiest to follow, but regular users don't have to touch it and it pays in performance.
- Startup times are at most halved, most times they are ⅗ of what they were.
- All of the logic that can exist outside of loops has been moved.
- Defaults are more unique by default.
- Colors are reused less and are more uniquely styled.
- More highlight groups for languages:
- C#
- Lua
- Vimscript
- Add
modeline
to bottom of colors/highlite.vim that sets the filetype to Lua (since the entire file should be highlighted and linted like a Lua file).