toppair / reach.nvim

Buffer, mark, tabpage, colorscheme switcher for Neovim
MIT License
239 stars 7 forks source link

Add `per_tabpage` to reach.buffers options #9

Closed RaafatTurki closed 2 years ago

RaafatTurki commented 2 years ago

This would be the missing piece to make reach integrate with neovim tabs the way they were designed to be used, As separate work spaces.

Here are some places that implement it:

I think reach.marks can benefit from this as well but I don't use marks and hence I can't tell for sure. LMK what you think.

toppair commented 2 years ago

I don't think this is what this plugin should do. ReachOpen buffers lists all your buflisted buffers by default and it's up to you to decide which of them actually get displayed by the usage of filter option. If you look at the scope.nvim code, what it does, it manipulates this buflisted buffer option as you switch between tabpages. The reason why it doesn't work with sessions might be related to tiagovla/scope.nvim#1.

RaafatTurki commented 2 years ago

That makes sense, I didn't think about the filter option.

Now that I think about it I can see how ambiguous the term "buffers in the current tab page" is since buffers don't belong to any tab.

I've looked further into this and found about tabpagebuflist() which give the "buffers currently displayed in windows belonging to the current tab page".

And what I was ultimately after and also what scope.nvim provides is "buffers that are/were opened in windows belonging to the current tab page" which requires extra work.

Thanks for the feedback, I have a much clearer idea on how to approach this problem now, Cheers!