Commit Graph

601 Commits

Author SHA1 Message Date
shadmansaleh 1afc45294a refactor: rename cterm_color.lua -> color_utils.lua 2021-08-30 19:02:01 +06:00
shadmansaleh 1439ba6d37 perf: Improve startup by droping most of the requires + refactors
Important: It's no longer guaranteed that if component/extension
of same name exists in multiple entries in rtp which one will be
loaded. The guarantee is still there for themes . Means other
plugins or users config can overwrite a lualines internal theme
with same file name . I'm droping the guarantee for components
and extensions because there isn't much usecase for it . It's simple
to have a unique name and droping that guarantee allows more
optimizations that speeds up lualine.
2021-08-30 17:54:23 +06:00
shadmansaleh 2b90200998 enahce: sync diff&branch component to buffer based of bufnr instead of BufEnter 2021-08-30 12:18:08 +06:00
shadmansaleh 0a032cf43e fix: Properly disable internal diff when source is given 2021-08-30 12:03:07 +06:00
shadmansaleh 114a840a41 enhace: Allow transitional hl to be applied at begining and end of stl
Since for left sep at left most location we will not find and prev_hl
We will use 'Normal' for right sep of right most position we will not
find a next_hl we will use 'Normal'.
2021-08-30 09:45:42 +06:00
shadmansaleh 649b7dd652 Skip right sep when %<left_sep is righr after it(lualine_b->c) 2021-08-30 09:41:26 +06:00
shadmansaleh 9be79955b8 Revert "enhace: Allow transitional hl to be applied at beginung and end of stl"
This reverts commit bae19db8d0.
2021-08-30 09:37:50 +06:00
shadmansaleh bae19db8d0 enhace: Allow transitional hl to be applied at beginung and end of stl
Since for left sep at left most location we will not find and prev_hl
We will use the next hl after component similarly for right sep of right most position
we will not find a next_hl we will use previous hl before component
2021-08-29 17:59:13 +06:00
Ashish Panigrahi 09169739fa added powerline-dark theme
* added replace colorscheme

 * updated screenshots

 * added patched font screenshots
2021-08-28 23:29:51 +06:00
shadmansaleh 6c9330d240 Enhance: Truncate from section c this way a&b won't disapear when stl becomes wide 2021-08-28 01:06:19 +06:00
shadmansaleh 276ba5d19e feat: Support indexing dictionaries in var components 2021-08-28 00:32:44 +06:00
shadmansaleh 2348eaea2f enhace: Use nvim_call_function instead of vim.fn so vim.fn does not get populated 2021-08-28 00:13:50 +06:00
shadmansaleh 1c57d7e61c chore: update extensions to have empty section_c so transitional separators can work
closes #23
2021-08-27 01:02:32 +06:00
shadmansaleh cfb6e3db14 perf: remove ale diagnostics source from default config
It is too expensive to check if ale is installed or not when ale is not
instaled . It is not that expensive when is is installed. So anyone
useing ale can just add ale to sources option in their config.
2021-08-27 01:02:20 +06:00
shadmansaleh d4f83afa7f Enhance: extract helper functions from apply_trans_sep() 2021-08-27 00:46:29 +06:00
shadmansaleh dd9e1b7bf0 fix: Section seperator disapearing when x section is empty
closes #22
2021-08-26 20:29:25 +06:00
shadmansaleh e831cfa9c5 Reintroduce docs for component specific transitional separators
This reverts commit fd5f635f4f.
2021-08-26 18:20:16 +06:00
shadmansaleh c0b9757ab0 Fix tests 2021-08-26 18:20:16 +06:00
shadmansaleh c9b5f364dc Fix various visual bugs in components transitional sep 2021-08-26 18:20:16 +06:00
shadmansaleh f728edd31d fix: odd situation of section separators with ayz/abz section configured 2021-08-26 18:20:16 +06:00
shadmansaleh 1c57497863 refactor: Improve section separators
- behaviour change now statusline won't be separated with %=
  if you don't have at lest one of lualine_x/y/z
- fixed some bugs
- simplified the transitional separators quite a bit. I think now
  it's understandable . Yay .
- Perf improvements too.
2021-08-26 18:20:16 +06:00
shadmansaleh fa1f001207 fix: branch assumes git file will be correctly formated 2021-08-26 17:09:18 +06:00
shadmansaleh 1cbf0686b4 fix: branch incorrectly assumes .git/ without .git/HEAD to be valid
fixes high cpu uses on windows in projects with empty .git folder.
2021-08-26 17:09:18 +06:00
Daniel Enrique 8648ee6d06 Add toggleterm extension.
Add # symbol.
2021-08-26 07:00:42 +06:00
shadmansaleh 017620b847 chore(doc): mention discussions and wiki in Readme 2021-08-22 15:25:31 +06:00
shadmansaleh c5bd65d05b chore: Add focused arg to statusline function (To make debugging easier) 2021-08-22 14:06:46 +06:00
shadmansaleh c9c5e3f9d1 feat: Add type option to hint what type of component is the string
String values for component are way too overloaded . This means lualine
has to make lots of checks to understand how to load a string value
as a component . With type option users can specify exactly what they
want.
2021-08-22 13:54:05 +06:00
Shadman be83cb947e
Merge pull request #14 from bluz71/moonfly-theme
feat: Add moonfly theme
2021-08-20 10:51:40 +06:00
shadmansaleh 15dcaababd fix: Add '-' to valid filename chars 2021-08-20 10:34:31 +06:00
Dennis B 7b7fe983f8 Add moonfly theme 2021-08-20 14:15:31 +10:00
shadmansaleh 6c99ba6ba7 Fix string component containging ['{] taking long to load 2021-08-20 09:54:18 +06:00
shadmansaleh 849d6acc66 feat: Allow (neo)vim's statusline items to be used as component directly 2021-08-20 08:15:57 +06:00
Shadman aa65ef46fd
Merge pull request #13 from shadmansaleh/fix/component_color_on_linked_theme
fix: component highlight fall backs failing
2021-08-20 01:43:34 +06:00
shadmansaleh 895fda9b91 fix: component highlight fall backs failing
Color/theme created with `highlight_group_name` are handled with link.
Because of that we don't have a table on bg/fg instead a name .
Currently component highlights doesn't take this into account.

After colors from those groups will be extracted to provide fall backs
for component highlight.
2021-08-20 01:40:14 +06:00
shadmansaleh 284bad71a1 chore: Update Issue templates 2021-08-17 14:03:47 +06:00
shadmansaleh bdc3073d31 fix: Partially process config when setup is called
Otherwise successive calls to setups before redraw are ignored.

closes #12
2021-08-17 13:26:44 +06:00
shadmansaleh fcb61280f2 config: Add diff and diagnostics components to default config 2021-08-17 00:30:33 +06:00
shadmansaleh 33defeffb5 feat: Allow function as diagnostics source 2021-08-17 00:17:56 +06:00
shadmansaleh 0126ac0cc0 perf: lazy load modules and dalay config loading till status redraw
This should make require'lualine' less expensive and make lualine
have less impact in startuptime
2021-08-16 23:40:27 +06:00
shadmansaleh d360039969 fix(filename): include window_width to space estimation & expose
shorting_target option

setting shorting target to 0 disables path shorting
closes #8

Co-authored-by: NullVoxPopuli <LPSego3+dev@gmail.com>
2021-08-14 21:24:48 +06:00
shadmansaleh ee5c56e911 enhance: Allow external sources to overwrite components and extensions
this is like the themes now . If some component/extension found in
both lualine repo and in some other rtp path then the one outside
the repo will be loaded.
+ Added better error handling for extensions.
2021-08-14 20:31:08 +06:00
shadmansaleh fdb4d35507 doc: Update docs for default theme and auto 2021-08-14 14:39:10 +06:00
shadmansaleh 32727039a9 |DEPRECATION| enhance(themes): Auto colorscheme detection and more
- `auto` theme now auto loads available theme for colorschme based on
  g:color_name . If that fails then it generates a theme for that
  colorschme like before.
- Theme from external source is preferred over bundled version in
  lualine . This means if user has a colorschme that provided the same
  theme as lualine the one from colorschme will be loaded.
- Default value of theme is changed to `auto` from `gruvbox`.
- Now when users theme from config fails lualine will fallbavk to
  `auto`. If `auto` fails then lualine will fallback to `gruvbox`
- Some themes have been renamed to their actual name (g:color_name).
  older names have been deprecated. [DEPRECATION]
    oceanicnext -> OceanicNext
    papercolor -> PaperColor
    tomorrow -> Tomorrow
    gruvbox_material -> gruvbox-material
    modus_vivendi -> modus-vivendi
- A few more adaptive themes added (aye, gruvbox, iceberg)
- Updated THEMES.md to reflect changes in theme name
2021-08-14 12:35:08 +06:00
Shadman 570e68095e
Merge pull request #10 from shadmansaleh/enhance/add_eviline
Add evilline in repo under examples/
2021-08-14 01:39:38 +06:00
shadmansaleh 7f02a3a292 Include evil_lualine config in examples/ and fix warnings in evil_lualine 2021-08-14 01:36:14 +06:00
shadmansaleh 967ddcb5ca fix: Reloading config causing extesions to disaprear 2021-08-13 07:29:28 +06:00
shadmansaleh fcb88aebba Fix: quickfix extention not apearing 2021-08-13 07:20:56 +06:00
shadmansaleh 0f3ad7e248 fix: Branch stuck in infinite loop in windows
Solution: Using poll-watch instead of event-watch on windows.
Additionally now gitdir paths are cached as optimization

Special thanks to @Shatur for raising the issue and for testing patches.
closes #2
2021-08-09 22:44:38 +06:00
shadmansaleh dd2236cc3b Mention tsbline.nvim & nvim-bufferline in docs for tabline 2021-08-09 16:36:52 +06:00
shadmansaleh edb8c344f7 Fix: branch and diff disappearing with diagnostics.goto_next())
I've added a workaround to re sync those components when they
go out of sync . Until upstream issue is addressed this should
prevent this issue from occurring in lualine.
2021-08-09 15:11:50 +06:00