akinsho / akinsho/bufferline.nvim

[Feature Request]: Expose next_item API

Aperta
#1,032 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub
enhancement
Lingua principale
Lua
Stelle
4.4k
Fork
240
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Descrizione

### What?

Expose next_item api, so as user could get a next buffer a potential call of cycle in a given direction or BufferLineCyclePrev cmd move to.

### Why?

In order to easier integrate plugins such as bufdel.
At the moment a user is required to call a private API (I guess so) and duplicate a part of cycle command, e.g.

```lua
{
"ojroques/nvim-bufdel",
opts = {
next = function()
-- TODO: if it's first then next, otherwise prev
local state = require("bufferline.lazy").require("bufferline.state")
local index = require("bufferline.commands").get_current_element_index(state)
if not index then
return
end

local next_index = index - 1

if next_index <= 0 then
next_index = #state.components
end

local item = state.components[next_index]
if not item then
return vim.notify("This " .. item.type .. " does not exist", vim.log.levels.ERROR)
end
return item.id
end,
quit = true,
},
},
```

Guida per i contributori

Nessuna guida per i contributori indicizzata per questo repository

Valutazione

Questa issue non è ancora stata valutata.

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.