microsoft / vscode

Visual Studio Code
https://code.visualstudio.com
MIT License
162.6k stars 28.66k forks source link

Limited handling of files >50MB by extensions #118981

Open papadeltasierra opened 3 years ago

papadeltasierra commented 3 years ago

I have seen a number of questions and comments regarding large files and it looks like outside of extensions, there is now some limited support for these. However this does not go far enough and I would like to request limited (tiered?) support for such files inside extensions. For example even if I pre-open a large file in VSCode, it doesn't appear in the list of TextEditors that an extension can query. To give you a concrete example, I've used Sublime, and before that VSlick and before that Slick and they support large files. To make VSCode really useful to me, it has to be not just a development environment but capable of handling the large debug files that I sometimes get sent. Now we cannot expect a huge file to be handled in real-time with full features but here's an example of where VSCode could do much better and be more useful to me. The debug info I receive typically contains a "summary/index" file and then a very large "lots of useful debug" file; a small "debug" file is 60-70MB and often they are much, much larger. However the summary/index file provides a line-index into the debug file so really all I need is the ability to open the debug file and "goto line XYZ". Sublime, Vsick and Slick all allowed me to macro extensions that could switch to/from the summary from/to the debug, albeit slowly, but VSCode does not support this.. So what I would like to see is VScode support features that can be enabled/disabled, perhaps based on filesize and/or file type with the understanding that they will be slow, and won't be instant and the first two features would be...

  1. Open a large file and jump to line XYZ (yes, could be very slow first time out if you jump to the last line!)
  2. Ability to work forward/backwards from current position and read the data on each line. I'm sure others can suggest other useful stuff but the key is to ensure it can be enabled/disabled as people require it.
alefragnani commented 1 year ago

/duplicate of #31078