Fix buffer management #138
Open
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This longer PR has the main goal of respecting the window layout when switching worktrees. Instead of trying to just update the current buffer, it will go to every open window and attempt to update the buffer there to the new worktree. If only some buffers can be updated, then those windows will be kept open while the others will be closed. If no buffer can be updated, then
update_change_on_commandwill be called.An additional behavior is to both open new buffers and delete all buffers that do not correspond to the current worktree. If working with buffers, this eliminates the confusion of which buffer belongs to which worktree.
Finally, the use of the api is modernized to
vim.uvinstead ofvim.loop.