Commit Graph

15 Commits

Author SHA1 Message Date
shadmansaleh fac96d71cc [Breaking] Refactor: switch to %{%expr%} from %!expr
Huge change to internal mechanics.
- Now %{%expr%} blocks are used for evaluating statusline instead of
  %!expr . Pros for this is statusline is evaluated on current win and
  buf context instead of active win & bufs context.
- Now all components branch & diff(These two are cached) including users
  function components updates on inactive status.
  - now components update status and function components receive an
    argument (is_focused) when called. It indicates whether it's running
    for active or inactive statusline.
- Now lualine no longer aggrasively takes over 'statusline' option.
  instead it sets the global version of statusline option. So it's
  possible to unset it to hide lualine . Or set buffer local version
  of that option to have different statusline then lualine on thay
  buffer
- Switch vim.o to vim.go or vim.opt.
- BugFix autcommands being set everytime an instence of diff or branch
  component is created
- Added new utils functions define_autocmd & is_focused
- Remove utils function lualine_eval
- Removed hacky require cache modification from component.lua
2021-08-08 22:50:17 +06:00
shadmansaleh cb5c4c031e Refactor: async jobs and diff component
- Use neovims job api instead of uv.spawn (Probably a bit less
  performent but should be more stable)
- Fix async jobs leaking pipes
- Fix wrong diff counts .Used to occur because job might not be dead
  after closing it . And that still alive job may send data over stdout
  corrupting the cache.
- lots of variable renames in diff.
- utils/async.lua has been replaced by utils/job.lua
2021-08-08 14:47:20 +06:00
shadmansaleh ea2432cc1e feat: Add source option to diff
It allows you to easily integrate external source for diff count.
If user has some other plugin keeping track of diff counts. There's
no reason for lualine to make same calculations again . It can just
reuse them. But lualine knows nothing about how other plugin exposes
their api so user will have to glue them together with this option.
2021-08-03 17:41:37 +06:00
shadmansaleh ac9a9e0a8b fix: Possible fix to diff sometimws not apearing 2021-08-03 12:19:12 +06:00
shadmansaleh 51daaf6f5a fix: Fixes bug diff somtimes doubled 2021-08-03 09:56:07 +06:00
JL Bas 1ee99e0473
enhancement: show diff when component is loaded (#234) 2021-05-13 12:24:51 +02:00
Tim Bedard 96938c5db2
style: Spell fix instence -> instance (#184) 2021-04-20 09:02:21 +06:00
Shadman 4f53d053a1
Refactor: Remove cterm from hlighlight extractor (#174)
- remove cterm color extraction
- fix lint issues
- apply lua-format
2021-04-13 18:36:51 +06:00
Shadman 1b81b0021f
Refactor: Components now use OOP style (#141) 2021-04-11 10:20:41 +02:00
Shadman 7c8ddf307b
refactor: highlight improvements
* Refactor highlight restoring after ColorScheme

Previously custom highlights/ component highlights had to call
expand_set_theme to make them restored . That's unintuative . Now any
highlight created by lualine.highlight.highlight() will be restored :)

* Renamed component -> var_name | Proper BugFix
2021-03-22 15:29:37 +01:00
hoob3rt 0a7f268970 refactor: async.lua -> utils/async.lua 2021-03-18 02:24:44 +01:00
hoob3rt b31b66fa79 refactor: applied lua-format to all files 2021-03-16 00:37:46 +01:00
JINNOUCHI Yasushi e4723362c4
feat: enable to set symbols for diff component (#116)
Changes logic to store diffs in `git_diff` because the original has
stored them in a list:

```
{1, 2, 3} => {added = 1, modified = 2, removed = 3}
```
2021-03-02 01:10:23 +01:00
Shadman ec47bb0447
fix: wrong data displayed by diff component (#117)
Sometimes async process outputs partial data. Previously that data was
processed imediatly causing wrong results. Now the data is processed
after async processes finishes
2021-02-24 18:03:24 +01:00
Shadman f47f68cee6
feat: drop signify dependency (added diff component) (#87) 2021-02-23 13:54:04 +01:00