nvim-window-picker icon indicating copy to clipboard operation
nvim-window-picker copied to clipboard

it conflicts with lualine.nvim

Open adoyle-h opened this issue 5 months ago • 0 comments

I'm using hint = 'statusline-winbar'. It can't work with https://github.com/nvim-lualine/lualine.nvim .

When set use_winbar = 'always' in nvim-window-picker, and lualine uses the winbar.

  1. the display string in winbar will be rewritten by lualine. It always flash disappeared.
  2. it throws an error "Vim:E36: Not enough room". Refer to https://github.com/nvim-lualine/lualine.nvim/issues/872

When set use_winbar = 'never' in nvim-window-picker, and lualine uses the statusline.

  1. the display string in statusline will be rewritten by lualine. It always flash disappeared.

Version

nvim-window-picker: 41cfaa42 nvim: v0.10.1

Config

{
			-- type of hints you want to get
			-- following types are supported
			-- 'statusline-winbar' | 'floating-big-letter'
			-- 'statusline-winbar' draw on 'statusline' if possible, if not 'winbar' will be
			-- 'floating-big-letter' draw big letter on a floating window
			-- used
			hint = 'statusline-winbar',

			-- when you go to window selection mode, status bar will show one of
			-- following letters on them so you can use that letter to select the window
			selection_chars = 'FJDKSLA;CMRUEIWOQP',

			-- This section contains picker specific configurations
			picker_config = {
				statusline_winbar_picker = {
					-- You can change the display string in status bar.
					-- It supports '%' printf style. Such as `return char .. ': %f'` to display
					-- buffer file path. See :h 'stl' for details.
					selection_display = function(char, windowid)
						return string.format('[%s] %s', char, '%f')
					end,

					-- whether you want to use winbar instead of the statusline
					-- "always" means to always use winbar,
					-- "never" means to never use winbar
					-- "smart" means to use winbar if cmdheight=0 and statusline if cmdheight > 0
					use_winbar = 'always', -- "always" | "never" | "smart"
				},

				floating_big_letter = {
					-- window picker plugin provides bunch of big letter fonts
					-- fonts will be lazy loaded as they are being requested
					-- additionally, user can pass in a table of fonts in to font
					-- property to use instead

					font = 'ansi-shadow', -- ansi-shadow |
				},
			},

			-- whether to show 'Pick window:' prompt
			show_prompt = true,

			-- prompt message to show to get the user input
			prompt_message = 'Pick window: ',

			-- if you want to manually filter out the windows, pass in a function that
			-- takes two parameters. you should return window ids that should be
			-- included in the selection
			-- EX:-
			-- function(window_ids, filters)
			--    -- filter the window_ids
			--    -- return only the ones you want to include
			--    return {1000, 1001}
			-- end
			filter_func = nil,

			-- following filters are only applied when you are using the default filter
			-- defined by this plugin. if you pass in a function to "filter_func"
			-- property, you are on your own
			filter_rules = {

				-- when there is only one window available to pick from, use that window
				-- without prompting the user to select
				autoselect_one = true,

				-- whether you want to include the window you are currently on to window
				-- selection or not
				include_current_win = true,
			},
		}

adoyle-h avatar Sep 03 '24 04:09 adoyle-h