mirror of
				https://github.com/NotAShelf/nvf.git
				synced 2025-10-29 18:33:53 +00:00 
			
		
		
		
	Merge pull request #201 from NotAShelf/lualine-tweaks
statusline/lualine: avoid hardcoding config options
This commit is contained in:
		
				commit
				
					
						6fb2d67a05
					
				
			
		
					 3 changed files with 52 additions and 10 deletions
				
			
		|  | @ -12,6 +12,14 @@ Release notes for release 0.6 | ||||||
| 
 | 
 | ||||||
| - Fixed empty winbar when breadcrumbs are disabled | - Fixed empty winbar when breadcrumbs are disabled | ||||||
| 
 | 
 | ||||||
|  | [donnerinoern](https://github.com/donnerinoern): | ||||||
|  | 
 | ||||||
|  | - Added Gruvbox theme | ||||||
|  | 
 | ||||||
|  | - Added marksman LSP for Markdown | ||||||
|  | 
 | ||||||
|  | - Fixed markdown preview with Glow not working and added an option for changing the preview keybind | ||||||
|  | 
 | ||||||
| [notashelf](https://github.com/notashelf): | [notashelf](https://github.com/notashelf): | ||||||
| 
 | 
 | ||||||
| - Finished moving to `nixosOptionsDoc` in the documentation and changelog. We are fully free of asciidoc now | - Finished moving to `nixosOptionsDoc` in the documentation and changelog. We are fully free of asciidoc now | ||||||
|  | @ -25,10 +33,10 @@ Release notes for release 0.6 | ||||||
| - Added support for css and tailwindcss through vscode-language-servers-extracted & tailwind-language-server. | - Added support for css and tailwindcss through vscode-language-servers-extracted & tailwind-language-server. | ||||||
|   Those can be enabled through `vim.languages.css` and `vim.languages.tailwind` |   Those can be enabled through `vim.languages.css` and `vim.languages.tailwind` | ||||||
| 
 | 
 | ||||||
| [donnerinoern](https://github.com/donnerinoern): | - Lualine module now allows customizing `always_divide_middle`, `ignore_focus` and `disabled_filetypes` through the new | ||||||
|  |   options: [vim.statusline.lualine.alwaysDivideMiddle](vim.statusline.lualine.alwaysDivideMiddle), | ||||||
|  |   [vim.statusline.lualine.ignoreFocus](vim.statusline.lualine.ignoreFocus) and | ||||||
|  |   [vim.statusline.lualine.disabledFiletypes](vim.statusline.lualine.disabledFiletypes) | ||||||
| 
 | 
 | ||||||
| - Added Gruvbox theme | - Updated all plugin inputs to their latest versions (26.01.2024) - this brought minor color changess to the Catppuccin | ||||||
| 
 |   theme | ||||||
| - Added marksman LSP for Markdown |  | ||||||
| 
 |  | ||||||
| - Fixed Markdown-previewer Glow not working and added an option for changing the preview keybind |  | ||||||
|  |  | ||||||
|  | @ -20,10 +20,10 @@ in { | ||||||
|           theme = "${cfg.theme}", |           theme = "${cfg.theme}", | ||||||
|           component_separators = {"${cfg.componentSeparator.left}","${cfg.componentSeparator.right}"}, |           component_separators = {"${cfg.componentSeparator.left}","${cfg.componentSeparator.right}"}, | ||||||
|           section_separators = {"${cfg.sectionSeparator.left}","${cfg.sectionSeparator.right}"}, |           section_separators = {"${cfg.sectionSeparator.left}","${cfg.sectionSeparator.right}"}, | ||||||
|           disabled_filetypes = { 'alpha' }, |           disabled_filetypes = ${nvim.lua.listToLuaTable cfg.disabledFiletypes}, | ||||||
|           always_divide_middle = true, |           always_divide_middle = ${boolToString cfg.alwaysDivideMiddle}, | ||||||
|           globalstatus = ${boolToString cfg.globalStatus}, |           globalstatus = ${boolToString cfg.globalStatus}, | ||||||
|           ignore_focus = {'NvimTree'}, |           ignore_focus = ${nvim.lua.listToLuaTable cfg.ignoreFocus}, | ||||||
|           extensions = {${optionalString config.vim.filetree.nvimTree.enable "'nvim-tree'"}}, |           extensions = {${optionalString config.vim.filetree.nvimTree.enable "'nvim-tree'"}}, | ||||||
|           refresh = { |           refresh = { | ||||||
|             statusline = ${toString cfg.refresh.statusline}, |             statusline = ${toString cfg.refresh.statusline}, | ||||||
|  | @ -31,6 +31,7 @@ in { | ||||||
|             winbar = ${toString cfg.refresh.winbar}, |             winbar = ${toString cfg.refresh.winbar}, | ||||||
|           }, |           }, | ||||||
|         }, |         }, | ||||||
|  | 
 | ||||||
|         -- active sections |         -- active sections | ||||||
|         sections = { |         sections = { | ||||||
|           lualine_a = ${nvim.lua.luaTable (cfg.activeSection.a ++ cfg.extraActiveSection.a)}, |           lualine_a = ${nvim.lua.luaTable (cfg.activeSection.a ++ cfg.extraActiveSection.a)}, | ||||||
|  | @ -40,7 +41,8 @@ in { | ||||||
|           lualine_y = ${nvim.lua.luaTable (cfg.activeSection.y ++ cfg.extraActiveSection.y)}, |           lualine_y = ${nvim.lua.luaTable (cfg.activeSection.y ++ cfg.extraActiveSection.y)}, | ||||||
|           lualine_z = ${nvim.lua.luaTable (cfg.activeSection.z ++ cfg.extraActiveSection.z)}, |           lualine_z = ${nvim.lua.luaTable (cfg.activeSection.z ++ cfg.extraActiveSection.z)}, | ||||||
|         }, |         }, | ||||||
|         -- | 
 | ||||||
|  |         -- inactive sections | ||||||
|         inactive_sections = { |         inactive_sections = { | ||||||
|           lualine_a = ${nvim.lua.luaTable (cfg.inactiveSection.a ++ cfg.extraInactiveSection.a)}, |           lualine_a = ${nvim.lua.luaTable (cfg.inactiveSection.a ++ cfg.extraInactiveSection.a)}, | ||||||
|           lualine_b = ${nvim.lua.luaTable (cfg.inactiveSection.b ++ cfg.extraInactiveSection.b)}, |           lualine_b = ${nvim.lua.luaTable (cfg.inactiveSection.b ++ cfg.extraInactiveSection.b)}, | ||||||
|  | @ -49,9 +51,12 @@ in { | ||||||
|           lualine_y = ${nvim.lua.luaTable (cfg.inactiveSection.y ++ cfg.extraInactiveSection.y)}, |           lualine_y = ${nvim.lua.luaTable (cfg.inactiveSection.y ++ cfg.extraInactiveSection.y)}, | ||||||
|           lualine_z = ${nvim.lua.luaTable (cfg.inactiveSection.z ++ cfg.extraInactiveSection.z)}, |           lualine_z = ${nvim.lua.luaTable (cfg.inactiveSection.z ++ cfg.extraInactiveSection.z)}, | ||||||
|         }, |         }, | ||||||
|  | 
 | ||||||
|  |         -- tabline (currently unsupported) | ||||||
|         tabline = {}, |         tabline = {}, | ||||||
| 
 | 
 | ||||||
|         ${optionalString (breadcrumbsCfg.enable && breadcrumbsCfg.source == "nvim-navic") '' |         ${optionalString (breadcrumbsCfg.enable && breadcrumbsCfg.source == "nvim-navic") '' | ||||||
|  |         -- enable winbar if nvim-navic is enabled | ||||||
|         winbar = { |         winbar = { | ||||||
|           lualine_c = { |           lualine_c = { | ||||||
|             { |             { | ||||||
|  |  | ||||||
|  | @ -24,11 +24,13 @@ in { | ||||||
|         description = "Refresh rate for lualine"; |         description = "Refresh rate for lualine"; | ||||||
|         default = 1000; |         default = 1000; | ||||||
|       }; |       }; | ||||||
|  | 
 | ||||||
|       tabline = mkOption { |       tabline = mkOption { | ||||||
|         type = types.int; |         type = types.int; | ||||||
|         description = "Refresh rate for tabline"; |         description = "Refresh rate for tabline"; | ||||||
|         default = 1000; |         default = 1000; | ||||||
|       }; |       }; | ||||||
|  | 
 | ||||||
|       winbar = mkOption { |       winbar = mkOption { | ||||||
|         type = types.int; |         type = types.int; | ||||||
|         description = "Refresh rate for winbar"; |         description = "Refresh rate for winbar"; | ||||||
|  | @ -42,6 +44,27 @@ in { | ||||||
|       default = true; |       default = true; | ||||||
|     }; |     }; | ||||||
| 
 | 
 | ||||||
|  |     alwaysDivideMiddle = mkOption { | ||||||
|  |       type = types.bool; | ||||||
|  |       description = "Always divide middle section"; | ||||||
|  |       default = true; | ||||||
|  |     }; | ||||||
|  | 
 | ||||||
|  |     disabledFiletypes = mkOption { | ||||||
|  |       type = with types; listOf str; | ||||||
|  |       description = "Filetypes to disable lualine on"; | ||||||
|  |       default = ["alpha"]; | ||||||
|  |     }; | ||||||
|  | 
 | ||||||
|  |     ignoreFocus = mkOption { | ||||||
|  |       type = with types; listOf str; | ||||||
|  |       default = ["NvimTree"]; | ||||||
|  |       description = '' | ||||||
|  |         If current filetype is in this list it'll always be drawn as inactive statusline | ||||||
|  |         and the last window will be drawn as active statusline. | ||||||
|  |       ''; | ||||||
|  |     }; | ||||||
|  | 
 | ||||||
|     theme = let |     theme = let | ||||||
|       themeSupported = elem config.vim.theme.name supported_themes; |       themeSupported = elem config.vim.theme.name supported_themes; | ||||||
|     in |     in | ||||||
|  | @ -175,6 +198,9 @@ in { | ||||||
|                 bg='${colorPuccin}', |                 bg='${colorPuccin}', | ||||||
|                 fg='lavender' |                 fg='lavender' | ||||||
|               }, |               }, | ||||||
|  |               separator = { | ||||||
|  |                 right = '' | ||||||
|  |               }, | ||||||
|             } |             } | ||||||
|           '' |           '' | ||||||
|         ]; |         ]; | ||||||
|  | @ -220,6 +246,9 @@ in { | ||||||
|               end, |               end, | ||||||
|               icon = ' ', |               icon = ' ', | ||||||
|               color = {bg='${colorPuccin}', fg='lavender'}, |               color = {bg='${colorPuccin}', fg='lavender'}, | ||||||
|  |               separator = { | ||||||
|  |                 left = '', | ||||||
|  |               }, | ||||||
|             } |             } | ||||||
|           '' |           '' | ||||||
|           '' |           '' | ||||||
|  |  | ||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 GitHub
					GitHub