Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Slow buffer updates with Undotree plugin #1420

Open
jgvanwyk opened this issue Jul 12, 2023 · 2 comments
Open

Slow buffer updates with Undotree plugin #1420

jgvanwyk opened this issue Jul 12, 2023 · 2 comments
Milestone

Comments

@jgvanwyk
Copy link

Undotree is a plugin that adds a visual representation of Vim's undo tree. When this tree view is open, certain operations (undo, redo, joining lines) are slow in the GUI, but not in the terminal.

To reproduce:

  1. Add the Undotree plugin to ~/.vim/pack/mbbill/opt/undotree so that it will be found by packadd:
mkdir -p ~/.vim/pack/mbbill/opt
git clone https://github.com/mbbill/undotree ~/.vim/pack/mbbill/opt
  1. Start MacVim with mvim -u vimrc where vimrc is
set nocompatible
set undofile
packadd undotree
  1. Open the undo tree visualiser added by Undotree: :UndotreeToggle
  2. Insert 100 lines: 100ii<CR><Esc>
  3. Go the first line: gg
  4. Join all the lines: Hold J

There should be noticeable lag. Now repeat steps 1-6 except with mvim -v -u vimrc in step 2. Joining the lines should be quite snappy.

I've attached two videos below showing the behaviour in each case, and I've included my system details.

GUI:

GUI.mov

Terminal.app:

Terminal.mov

System details:
OS: macOS Ventura 13.4 arm64
Shell: zsh 5.9
Terminal: Terminal.app
$TERM: xterm-256color
Vim: Downloaded from GitHub Releases

@ychin
Copy link
Member

ychin commented Jul 12, 2023

I can reproduce this, but not 100% what the cause is yet. It's probably the renderer. Will probably need to take a look a little later. Currently slot it for the next release (r178).

@ychin ychin added this to the Release 178 milestone Jul 12, 2023
@ychin ychin modified the milestones: Release 178, Release 179 Sep 12, 2023
@ychin
Copy link
Member

ychin commented Sep 12, 2023

Seems related to #1259, but not sure.

@ychin ychin modified the milestones: Release 179, Release 180 Jan 3, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants