Comments (6)
Hello, please tell me the size of the specific file on which Blockman needs many seconds to render blocks.
I have tested Blockman on 5000 line TypeScript file and it needs no more than 1-2 seconds to render blocks. Often less than 1 second.
If your file has more than 5000 or more than 10000 lines, then I guess we cannot do much about it, because VS Code does not give extensions access to the natively optimized parsed tokens, so extensions have to parse/tokenize themselves and it is not optimized, because we, extension developers, don't always have the super knowledge and experience of writing optimized tokenization algorithms for so many languages.
So, after analyzing file, rendering blocks is always fast. The analyzation process is slow because of the VS Code limitation I mentioned above.
I hope VS Code will soon give extensions access to the native tokens.
Also, one noteworthy thing is that Blockman uses 1.2 seconds (you can change this number) debouncing for every render and for every text change event to rerender blocks. You can change it to maybe 0.2 seconds, but probably it will be too much load on the CPU.
from vscode-blockman.
I encountered the same issue not in first load but when scrolling up and down in the file it stuck to render the file has 158 lines only but it stuck.
I loved the extension but it stuck in the rendering
I use vs code in Windows 10
from vscode-blockman.
file has 158 lines only but it stuck
@BacemJ, this is very strange. 158 lines is very little code, I have never seen Blockman stuck on 100-200 lines file. Could you please provide the exact file text? So I will be able to test it on my environment, maybe the file has some kind of "edge case" code in it? I don't know.
from vscode-blockman.
If your file has more than 5000 or more than 10000 lines, then I guess we cannot do much about it, because VS Code does not give extensions access to the natively optimized parsed tokens, so extensions have to parse/tokenize themselves and it is not optimized, because we, extension developers, don't always have the super knowledge and experience of writing optimized tokenization algorithms for so many languages.
Unfortunately that's the case because I have a few generated files (like the Prisma Client) that are a few thousands lines long.
So I had to disable the Blockman extension :'(
from vscode-blockman.
@leonard-henriquez, maybe you don't need to completely disable or uninstall it. Blockman has customizable black list of file formats to ignore files with specific formats, for example: prisma, plaintext, markdown, css, less, scss, html, json, jsonc, typescriptreact, typescript, javascriptreact, javascript, python, go, dart, php, c, csharp, cpp, java.
Also Blockman has quick toggle (disable/enable) command to disable when it is not convenient to use it and reenable it quickly.
Just press F1 and type blockman toggle
and you will find two kinds of enable/disable toggle commands.
1] simple enable/disable
2] enable/disable with forced show/hide indent guides of VS Code.
from vscode-blockman.
it is super slow also on my mac. but i can't say cause of typescript. as far as i saw it has trying optimization. it renders only when i change new code sections.
from vscode-blockman.
Related Issues (20)
- Inverse depth (bottom-up) highlighting HOT 1
- Blockman doesn't work with in line code suggestions from other extensions HOT 15
- Support `extensions.experimental.affinity` to speed up extension HOT 1
- Blockman showing "random" errors. HOT 2
- Feature Request: Support vscode.dev HOT 1
- Feature Request: Whitelist HOT 2
- Feature Request: Drop shadows HOT 2
- Visual issue with inline parameter HOT 2
- Creates settings.json in every project HOT 6
- C# XML Comments highlighting non existent blocks. HOT 1
- Rightmost Edge of Viewport no longer works on the latest VSCode version HOT 3
- request: invisble/same color borders HOT 1
- Enabling Blockman while viewing PySide6 function definitions causes VSCode and Pylance to hang HOT 1
- Feature Request: Support Verilog Language HOT 1
- Error: invalid syntax at line 28442 col 1: " > /dev/stderr HOT 1
- Support HAML HOT 1
- Selected text is invisible on Cursor (an editor based on VS Code) HOT 3
- Ignore un-indented preprocessing commands in C/C++ HOT 3
- vim plugin cannot show selections highlight color in cursor when enable blockman
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 vscode-blockman.