Comments (5)
Ah sorry, I just can't type, it was 3881 and 3882, I'll update the previous comment just so the reproduction steps should be all there, as for config, I only configured the aforementioned stopline variables, and enabled the treesitter backend.
from vim-matchup.
Can you share the C++ file in question, or at least one having the issue?
I agree optimizing find_unmatched using more TS features is needed at this point. Adjusting timeouts is fine but it's better if we can return the result quickly.
from vim-matchup.
Another thing that we can try is if this suggestion changes the performance: #302 (comment)
If so, then it may be isolated to that specific functionality.
from vim-matchup.
Can you share the C++ file in question, or at least one having the issue?
Yeah, I wasn't working with a file this big when I made the feature request, but since I've tested this issue on my desktop instead of my laptop, and to be able to reproduce it I had to create a much larger file
main.cpp.zip
(the file was generated by replacing a deduced type with a fully deduced one in an expression tree like matrix library I'm working of as a side project, it wouldn't be expected for anyone to write a type that specific, but that's the easiest quickest way I found of generating valid C++ code.)
If you set the cursor at line 3881 find_unmatched should go well over timeout on almost any device and as a result you can't do [%, however, if I out the cursor on the next line (3882) I immediately get the popup showing the matching namespace opening, and can jump to it just fine with %.
Due to the number of lines in the file, I increased the stopline variables to over 9000, and even on my laptop, I still get the popup with the matching bracket almost instantly.
from vim-matchup.
Interestingly I can't seem to reproduce this.
From line 3381 [% goes to line 3147 due to the <
in under 200ms
From line 3382 [% goes to line 3381 again on the <
in under 50ms.
Could I be missing anything config-wise?
from vim-matchup.
Related Issues (20)
- [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
- clarification about lazy loading on keys HOT 6
- 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.