Comments (6)
match-up is already using lazy loading, one problem is that it really does need to be loaded at buffer load since highlighting is a core feature. If you start it on % press, you'd miss the highlighting.
Can you provide any startup time logs so I can see where the improvements might be?
from vim-matchup.
Sure, would you like me to run nvim --startuptime tmp.txt
and attach the file or anything else (also, do you need part of the file in particular or the whole lot)?
from vim-matchup.
Yeah, I can work with the whole startuptime file, if you are able to share that. Ideally it would show the 300 ms is coming from to help me debug.
For comparison the entire match-up load takes under 5ms on my computer
from vim-matchup.
Please find attached the startup logs
P. S. I am using lazy.nvim as package manager and on start-up I see the below:
which seems to be closer to the actual time I feel for start-up to take.
P. P. S. I have now accidentally noticed (by using another computer where I don't run nightly) that such problem doesn't exist with nvim --version 0.9
, it is instead accentuated on nightly where I have observed treesitter to take a longer startup time than expected, en passant. Hence this may be due to possible treesitter dependencies within the plugin?
from vim-matchup.
problem doesn't exist with nvim --version 0.9
Might explain why it works on my side
BTW as another sanity check, what happens when you don't lazy load and instead load using normal methods,; vim-matchup has an autoload system already, maybe lazy.nvim is messing with that?
from vim-matchup.
what happens when you don't lazy load and instead load using normal methods
The above numbers are obtained without any lazy loading, even removing the event BufReadPost
(which after all doesn't change much anyway). I am led to think that this may in truth due to treesitter alone, especially given that there are no other issues of users noticing it throughout the history of this plugin (which means that the plugin itself is very good and does most if not anything right already :) )
from vim-matchup.
Related Issues (20)
- Feature: Option to set motion timeouts HOT 5
- [Feature Request]: Hybrid winbar/statusline option for offscreen matches HOT 11
- Treesitter integration broken on Javascript HOT 26
- Matchup error with treesitter in javascript files HOT 1
- Latest tree-sitter-c parser breaks vim-matchup HOT 1
- Add support for statuscolumn and foldcolumn in offscreen matches
- Error since last update → If treesitter matchup is enabled HOT 2
- Feature request: disable closing hint HOT 3
- offscreen doesn't display
- Wrong matching across strings HOT 2
- Crash when shell case is incomplete
- Matchup adding random characters on the beginning of the buffer. HOT 8
- Incompatibility with nvim-cmp snippet completion HOT 8
- Matching string and char delimeters HOT 2
- how to activate ruby's `|` delimeter for block arguments HOT 4
- MatchParen(Cur) Highlight persists in virtual fold text
- invalid node type for language perl
- invalid node type for language bash HOT 5
- Svelte error was reported after treesitter's commit of svelte parsing HOT 4
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from vim-matchup.