Comments (14)
That file is incredibly helpful and will use it for testing.
I was aware of this side effect and in some cases like the one you provided show it being very distracting. I'll give it some thought to see if I can do as you suggest.
from elastictabstops.
By the way, why are the widths recalculated when switching tabs?
The tab widths are associated internally with the Scintilla editor rather than the document itself (each tab represents a different document). So when you switch tabs the editor needs to recompute the widths since the document has changed.
from elastictabstops.
Hi
I have the same issue as aaaxx reported.
I use the Elastic Tab Plugin almost daily with large CSV files and this scrolling issue is really a problem.
I already searched for a solution, and just now stumbled upon this conversation.
I would really appreciate a work around or a solution for this issue.
I can also provide more sample files if needed.
I can also over to help testing .
Best regards
RS
from elastictabstops.
Thanks for your input as well.
I use the Elastic Tab Plugin almost daily with large CSV files and this scrolling issue is really a problem.
What do you define as "large"...as in file size? Number of rows? Number of columns?
I can also provide more sample files if needed.
The dummy file provided should be sufficient for any testing I do.
from elastictabstops.
Hi dail8859
What do you define as "large"...as in file size? Number of rows? Number of columns?
this is totally different. The file size can be from 100kb to 20MB.
I have files with 8 columns, but many have over 20 up to 48 columns.
from elastictabstops.
Thanks for the info. It is just nice for me to keep these kinds of numbers in mind when testing it.
from elastictabstops.
I've tried a couple ways of implementing this. Keeping the columns from shrinking isn't too hard. However, the difficulty comes when then editing the file. The way the algorithm works is that it tries to avoid parsing and measuring columns when possible.
So if the columns are stretched to a specific width (say because you scrolled way down, found a wide column, then scrolled back up) then edit that column, the implementation can either (a) all of a sudden shrink that column width to whatever the width is of the surrounding lines or (b) keep that width and never be able to shrink it back down when editing. The only way to get the (b) implementation to recalculate the width would be switch to another file then switch back.
I'm open to thoughts, or other ideas if anyone has them.
from elastictabstops.
I only seldom edit CSV files in notepad.
I thought about boths possibilities. I think I can live with both solutions (a) and (b).
I'm not sure which solution is more convenient for editing files, I assume (a).
May I suggest a maybe different approach. (I'm not a programmer so may suggestion may be impossible).
Would it be possible that duplicate the first line with the Header of the CSV file, determine the max width for all columns, keep this max width, and show the header line always as first line?
Like the "freeze panes" feature in Excel ?
I know that this may create more /other issues, especially of the with Headerline is not the line with max width.
If this idea sounds crazy for you , please just ignore it.
from elastictabstops.
Would it be possible that duplicate the first line with the Header of the CSV file, determine the max width for all columns, keep this max width, and show the header line always as first line?
This is well beyond what I want to get into with the plugin :) Plus I have no idea how to do it within Noetepad++
from elastictabstops.
ok, no problem, please forget my idee.
How will you proceed ? will you go for solution (a) or (b) ?
If I can help with testing , please let me know.
from elastictabstops.
Not completely sure yet. I want to play around with it some more and see how it works under different situations. The main "use-case" for this plugin is actually for aligning code rather than CSV files, so I want to make sure it still works fine in those cases, and try to do what I can for CSV files.
Before I do anything "permanent" I'll drop a test version here for anyone that wants to try it out.
from elastictabstops.
Took me a while to figure out that by "editing" you meant the situation when the edited text ends up shorter than before.
I really can't decide. I can see arguments for both implementations. Although, the fact that the plugin recalculates widths when switching between tabs, so the potentially too-wide columns aren't necessarily permanent, makes me lean towards B.
By the way, why are the widths recalculated when switching tabs?
from elastictabstops.
Okay, so this plugin slows down opening large files, so you make it so it only works on like 3 screens of text instead of the whole file.
And then, when you do vertical scrolling, the code moves left and right rather unnaturally.
So... we just fixed a problem by introducing another one... Isn't there a better solution? :(
from elastictabstops.
So... we just fixed a problem by introducing another one...
The original intent wasn't to "introduce another one" as you suggest. This change actually fixed more than just the slow opening of large files.
Isn't there a better solution?
I don't know if there is or not...maybe you have a better solution? I've tried a few ways already to fix all the problems, but always run into cases where it breaks. If someone smarter than myself wants to attempt to fix all the issues, then I will gladly accept a pull request.
from elastictabstops.
Related Issues (20)
- Excluded extensions HOT 2
- ReadMe does not explain the problem this plugin solves HOT 1
- Evaluation: Add ElasticTabstops 1.3 and above to nppPluginList HOT 1
- Plugin not working on V7.7 of notepad++ (64bit) HOT 3
- [Enhancement] Elastic CSV (Comma separated) files HOT 2
- Issue with files longer than 94 lines HOT 1
- 1.3.1 does not work in the notepad++ 7.8 HOT 10
- Not working :-( HOT 3
- Access violation reported when used in conjunction with Compare plugin HOT 2
- Port to Lua (LuaScript) HOT 1
- Doesn't work until I change and save settings HOT 3
- Support for elastic/aligned tabs when printed? HOT 3
- ElasticTabstops only works on first view HOT 4
- how to use it? It doesn't work for me HOT 2
- Open torrent file -> not responding HOT 7
- exclude character sequence HOT 4
- Differentiate between tabs at line start and elsewhere HOT 2
- Elastic Tabstops v1.3.1 (64 bit) breaks Notepad++ v8.3 (64-bit) HOT 4
- V1.3.1 does not work in the notepad++ 8.3.3 HOT 3
- Elastic Tabstops stopped working since np++ 8.3? HOT 15
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 elastictabstops.