Slow buffer updates with Undotree plugin
Ninguém assumiu esta issue ainda.
Avaliação
- Dificuldade
- 4/5
- Tempo estimado
- 3-5 dias
- Facilidade para iniciantes
- 35/100
- Tipo de issue
- Bug
- Clareza
- Razoavelmente clara
- Status de atividade
- Estagnada
- Stack de tecnologia
- macos, vim
- Domínio
- desktop, performance
Direção de pesquisa
Reproduza o atraso usando MacVim com mvim -u vimrc, packadd undotree e :UndotreeToggle, e depois compare-o com mvim -v -u vimrc conforme descrito. Rastreie o caminho da GUI envolvido durante as operações de desfazer, refazer ou unir linhas; a issue estará concluída quando essas operações não forem mais visivelmente mais lentas com a visualização do Undotree aberta.
Escrita pelo modelo de indexação a partir do texto da issue.
Descrição
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:
- Add the Undotree plugin to
~/.vim/pack/mbbill/opt/undotreeso that it will be found bypackadd:
mkdir -p ~/.vim/pack/mbbill/opt
git clone https://github.com/mbbill/undotree ~/.vim/pack/mbbill/opt
- Start MacVim with
mvim -u vimrcwherevimrcis
set nocompatible
set undofile
packadd undotree
- Open the undo tree visualiser added by Undotree:
:UndotreeToggle - Insert 100 lines:
100ii<CR><Esc> - Go the first line:
gg - 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:
https://github.com/macvim-dev/macvim/assets/123784102/4e1828c4-4e40-4f29-9171-6c77a1b15f9e
Terminal.app:
https://github.com/macvim-dev/macvim/assets/123784102/26cc3bda-fd04-4165-9bd1-712da0132d45
System details:
OS: macOS Ventura 13.4 arm64
Shell: zsh 5.9
Terminal: Terminal.app
$TERM: xterm-256color
Vim: Downloaded from GitHub Releases
- Linguagem predominante
- Vim Script
- Estrelas
- 7.9k
- Forks
- 691
- Métricas de merge de PRs
- Nenhum PR com merge em 30d
Guia de contribuição
Primeiros passos
- Leia a issue inteira e depois o guia de contribuição do projeto.
- Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
- Faça um fork do repositório e trabalhe em uma branch.
- Abra um pull request que referencie o número da issue.
Mais de macvim-dev/macvim
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 68/100
macvim-dev/macvim#1697 · 5 comentários ·
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 76/100
macvim-dev/macvim#1658 ·
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 76/100
macvim-dev/macvim#1657 ·
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 76/100
macvim-dev/macvim#1655 ·
-
Dificuldade 2/5 Meio dia Facilidade para iniciantes 72/100
macvim-dev/macvim#1653 ·
Todas as issues de macvim-dev/macvim
Issues semelhantes
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 75/100
longbridge/gpui-kit#3223 ·
-
area:desktop area:ui bug platform:macos
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 75/100
anthropics/claude-code#96687 ·
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 75/100
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 75/100
flutter-webrtc/flutter-webrtc#2206 ·
-
切换供应商后codex的智能体配置报错 Abertabug
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 65/100
farion1231/cc-switch#7660 ·