- Added `M.get_mode_suffix()` in `highlight.lua` to simplify retrieving the mode suffix.
- Fixed graphical bug occurring when `buffers` component color was changed.
- Separators would not change to new color.
- Fixed by adding the mode suffix to the highlight name
in `M.component_format_highlight` if the output of
`highlight.fn()` is a string.
- Added `use_mode_colors` option to `buffers`, `tabs`, and `windows` components.
- If it's set to true, the component's colors will change with the
mode, as most other components do.
- Updated readme.
* feat: add draw_empty option to always draw component event when it's empty
Closes#963
* tests: add test for component draw_empty option
* docs: add docs for component draw_empty option
---------
Co-authored-by: Carl Johnson <carl.darick.johnson@gmail.com>
Mitigation for #967
This happens primarily because of
https://github.com/neovim/neovim/issues/22263
To prevent this from affecting lualine. Mode changed event
for op-pending mode no longer gets scheduled.
As a side effect lualine no longer properly refreshes upon switching
to op-pending mode.
* Refactor tests to use stubs for nvim-web-devicons
* Simplify getting icon
`get_icon` does not need the 2nd parameter (`ext`) as it will derive it
from the given `name` (1st argument) itself.
* fix component(filetype) proper icon based on filetype
With https://github.com/kyazdani42/nvim-web-devicons/pull/125 a filetype
based lookup was implemented upstream which can be used to get an icon
when a file doesn't have an extension.
fixes#578
* feat: added searchcount component
* feat: added timeout and maxcount to vim.fn.searchcount
* docs: added searchcount to README
* style: sorted list of components
Instead of shortening a path segment to just the dot, it is now always
using 2 characters.
E.g.
```
~/.config/nvim/lua/config/lualine.lua
```
is shortened to
```
~/.c/n/l/c/lualine.lua
```
This includes a rewrite of the shortening logic as it cannot be
expressed easily/readable using patterns. The current approach starts at
the beginning and replaces each segment by a shortened version and
keeping track of the overall length (basic book keeping on how many
characters were saved by the replacement).