Author Topic: Proper column sizing in List view  (Read 6449 times)

ags

  • Active Member
  • ***
  • Posts: 53
    • View Profile
Proper column sizing in List view
« on: November 04, 2024, 14:56:56 »
Using build 3026 in List view mode.
Sorting and Columns -> Autosize columns is checked.

I have a lot of files with long names that I need to be able to see.

Expected behavior
MC would set the "Name" column width after the longest file/directory name. Or, if the name is very long, the width of the "Name" column would be equal to the width of the panel.

Obvserved behavior
MC badly truncates every name of my files and I can't read the information stored there. Why is this?
« Last Edit: Yesterday at 17:52:15 by ags »

Mathias (Author)

  • Administrator
  • VIP Member
  • *****
  • Posts: 4533
    • View Profile
    • Multi Commander
Re: Column autosizing in List view
« Reply #1 on: November 04, 2024, 15:45:41 »
Then you do NOT want autosize on.
Autosize column will adjust the columns to fit into the view, So when you adjust the size of date column for example., it will autosize the other columns so they still fit into the view.

Then you want to disable autosize so you can size the column and get an horizontal scrollbar

ags

  • Active Member
  • ***
  • Posts: 53
    • View Profile
Re: Column autosizing in List view
« Reply #2 on: November 04, 2024, 16:03:49 »
Okay, unchecked the auto size of the columns. I can literally see no difference. It is exactly like the option does not have any effect.
I scroll through the list of files and I see about 50% of the name on all of them.

Mathias (Author)

  • Administrator
  • VIP Member
  • *****
  • Posts: 4533
    • View Profile
    • Multi Commander
Re: Column autosizing in List view
« Reply #3 on: November 04, 2024, 16:19:02 »
Okay, unchecked the auto size of the columns. I can literally see no difference. It is exactly like the option does not have any effect.
I scroll through the list of files and I see about 50% of the name on all of them.

If you uncheck autosize, column should not resize it self when you make them very large.. and you can get a horizontal scrollbar.. that does not happen ?
Then you can dubble click on the divider between Name and the column you have next to it, and it will calculate the minimum size it can be set to change change the size to that
« Last Edit: November 04, 2024, 16:22:13 by Mathias (Author) »

ags

  • Active Member
  • ***
  • Posts: 53
    • View Profile
Re: Column autosizing in List view
« Reply #4 on: November 04, 2024, 17:52:19 »
I am not sure we are on the right track here...  :D

The fact is that if MC wants to show long file names, it has to read the list of files, find the longest and adapt the column width to fit as many characters as possible.

Can you make this an automated process, like in the other file managers?

Mathias (Author)

  • Administrator
  • VIP Member
  • *****
  • Posts: 4533
    • View Profile
    • Multi Commander
Re: Column autosizing in List view
« Reply #5 on: November 04, 2024, 22:05:04 »
I am not sure we are on the right track here...  :D

The fact is that if MC wants to show long file names, it has to read the list of files, find the longest and adapt the column width to fit as many characters as possible.

Can you make this an automated process, like in the other file managers?
If you dubble click on header splitter between column it will auto size it. There is was full automatic before, But it was removed. Too messy when going in and out of folder and columns was resizing all the time automatically.

ags

  • Active Member
  • ***
  • Posts: 53
    • View Profile
Re: Column autosizing in List view
« Reply #6 on: November 05, 2024, 14:33:32 »
So every time I enter a directory where I want to see long names I have to resize the Name column by double clicking the splitter?

Mathias (Author)

  • Administrator
  • VIP Member
  • *****
  • Posts: 4533
    • View Profile
    • Multi Commander
Re: Column autosizing in List view
« Reply #7 on: November 05, 2024, 16:40:42 »
So every time I enter a directory where I want to see long names I have to resize the Name column by double clicking the splitter?

If they are so long that they do not normally fit in the view.. you can also temporary switch to 100/0 view to use full with or go Top/Bottom splitting instead of left/right

Constant autosize the column every time you navigated in and out of folder made people kind of dizzy. specially if you navigate using keyboard and go fast in and out. So it was disabled.



Jungle

  • Contributor
  • VIP Member
  • *****
  • Posts: 561
  • Old Skull
    • View Profile
Re: Column autosizing in List view
« Reply #8 on: November 05, 2024, 20:16:00 »
What about optional wordwrap, multiline ?

ags

  • Active Member
  • ***
  • Posts: 53
    • View Profile
Re: Column autosizing in List view
« Reply #9 on: November 06, 2024, 07:46:36 »
I don't know about displaying the files on multiple lines. Wouldn't this create a very busy list, difficult to read, when the names of the files are of different lengths? Some of them would wrap on 2-3 lines, and some of them would remain one line?

Different workarounds can be found. But the fact remains: MC does not know how to handle files with long names. And in a world full of files with long names, this is a big problem, a bug. I am petitioning here for the fixing of this bug.

ags

  • Active Member
  • ***
  • Posts: 53
    • View Profile
Re: Column autosizing in List view
« Reply #10 on: November 06, 2024, 08:47:18 »
I know of and use or used the following orthodox file managers and they all know how to display long names, do it well and do it fast, without any problems or manual intervention:

- Total Commander
- Double Commander
- FreeCommanderXE
- EF Commander
- Speed Commander
- Unreal Commander
- Frigate
- ViewFD
- Far Manager
- Necromancer's Dos Navigator

How could practically anybody in the world have found a way to properly do an important task, but MC?

Mathias (Author)

  • Administrator
  • VIP Member
  • *****
  • Posts: 4533
    • View Profile
    • Multi Commander
Re: Column autosizing in List view
« Reply #11 on: November 07, 2024, 23:10:47 »
MC do display long file names.. up to over 4000+ characters, Just make sure you have a large monitor to view it

And MC do auto size column it is just turned off.
« Last Edit: November 07, 2024, 23:20:36 by Mathias (Author) »

Mathias (Author)

  • Administrator
  • VIP Member
  • *****
  • Posts: 4533
    • View Profile
    • Multi Commander
Re: Column autosizing in List view
« Reply #12 on: November 07, 2024, 23:14:41 »
What about optional wordwrap, multiline ?
For wordwrap to work, dynamic row height need to be supported, and it is not becuse of performance issue.. I would cause a noticeable draw delay when entering a folder with just a couple of 100 files.

ags

  • Active Member
  • ***
  • Posts: 53
    • View Profile
Re: Column autosizing in List view
« Reply #13 on: November 08, 2024, 08:17:10 »
I don't know if managed to clearly explain the problem. I will try again.
I'll exemplify with a screenshot of firefox's source code below.
MC panel is set in List view mode.

The archives names in the first column are truncated with the simbol "..." at the end.
Some files with long names have useful info stored in that long name: date, time, uniqueID, software component etc.

When constantly changing directories that host such files, it is annoying to have to do a manual job that the file manager should automatically calculate and do for you.

Also, my monitor is wide enough so that those archives could be displayed in full.

For comparison, I attached a screenshot from Double Commander, in the same List view mode. DC is also free and on top of that open source and displays correctly long file names without users having to manually adjust the Names column.


ags

  • Active Member
  • ***
  • Posts: 53
    • View Profile
Re: Column autosizing in List view
« Reply #14 on: November 08, 2024, 09:15:21 »
Another bug in showing files in List view can be seen in the screenshot below.

In d:\Downloads directory I have many files, a few columns of them. You can see the scroll bar from the bottom.
MC does not calculate the number of columns correctly, since the last column is empty and should not exist.

Mathias (Author)

  • Administrator
  • VIP Member
  • *****
  • Posts: 4533
    • View Profile
    • Multi Commander
Re: Column autosizing in List view
« Reply #15 on: November 08, 2024, 11:17:44 »
Doing it in List mode is even worse. If you have many files, and just 1 file is very long, all then columns are very width And Alternative is to use dynamic size of each column, but then you run into other issue.
I don't remember all. But the code for it is there but disabled at the moment (This is was trying to do dynamic size for all columns in list mode). mostly because I never use list mode my self. If I get some over i might enabled it and see a simpler version can be added.

« Last Edit: November 08, 2024, 11:59:30 by Mathias (Author) »

ags

  • Active Member
  • ***
  • Posts: 53
    • View Profile
Re: Column autosizing in List view
« Reply #16 on: Yesterday at 17:51:49 »
Please, please consider improving the List mode in MC. Because now it is there but it is not useful at all.

So in List mode it is important to:
- calculate the proper column width, so the size of the columns would be equal to the size of the longest name in the list, plus its extension;
- ignore the header (the one with Name, Ext, Size, Date). In List mode the header is there only for sorting, not for width;
- show the most important properties of the file to the user. Since the size, the date and the time of the file are not shown in columns in the panel, thay have to be shown somewhere: under the table. Otherwise you leave the user to fly blind.

List mode exists to allow the user to navigate easily through files. Notably, to be able to use the left_arrow and right_arrow, keys that do not work in Details mode.

Please see the screenshots attached. I highlighted the most important parts in colors red, green, blue.

TC ignores the header (red) and calculates the column width after the longest name+ext (green) and shows useful properties of the selected object (blue). The result? The user can easily see the full length of the names, and also under the table there is the size, date and time of the selected file. All is good. All the other orthodox file managers do this.

MC makes the header (red) and the column (green) equal in width. This makes no sense, it defeats the whole purpose of List mode. The result? The user cannot see all the long names because thay are truncated, and has no simple way of seeing the size, date and time of the object under the cursor at a glance, because under the table MC shows statistics of the selected files, less important info. :-\

Mathias (Author)

  • Administrator
  • VIP Member
  • *****
  • Posts: 4533
    • View Profile
    • Multi Commander
Re: Column autosizing in List view
« Reply #17 on: Today at 07:56:06 »
So in List mode it is important to:
- calculate the proper column width, so the size of the columns would be equal to the size of the longest name in the list, plus its extension;
- ignore the header (the one with Name, Ext, Size, Date). In List mode the header is there only for sorting, not for width;
- show the most important properties of the file to the user. Since the size, the date and the time of the file are not shown in columns in the panel, thay have to be shown somewhere: under the table. Otherwise you leave the user to fly blind.

List mode exists to allow the user to navigate easily through files. Notably, to be able to use the left_arrow and right_arrow, keys that do not work in Details mode.

Please see the screenshots attached. I highlighted the most important parts in colors red, green, blue.

TC ignores the header (red) and calculates the column width after the longest name+ext (green) and shows useful properties of the selected object (blue). The result? The user can easily see the full length of the names, and also under the table there is the size, date and time of the selected file. All is good. All the other orthodox file managers do this.

MC makes the header (red) and the column (green) equal in width. This makes no sense, it defeats the whole purpose of List mode. The result? The user cannot see all the long names because thay are truncated, and has no simple way of seeing the size, date and time of the object under the cursor at a glance, because under the table MC shows statistics of the selected files, less important info. :-\
[/quote]

There are changes planed in the future for the list view. But not so that filename column is totally automatic.  I prefer to have the filename width be changable.  If I got 200 files.  190 of them are around 15 char.  but 10 of them have long 80char. Then I get a width that is WAY to long for most files.

I don't do changes in MC based on what TC does, MC is not trying to be a clone of TC.  they are similar in many things. but I don't base features in MC on what TC do. If MC would be a clone of TC then there would be no point spending time developing MC.

« Last Edit: Today at 08:02:26 by Mathias (Author) »

ags

  • Active Member
  • ***
  • Posts: 53
    • View Profile
Re: Proper column sizing in List view
« Reply #18 on: Today at 08:43:53 »
Quote
There are changes planed in the future for the list view. But not so that filename column is totally automatic.  I prefer to have the filename width be changable.  If I got 200 files.  190 of them are around 15 char.  but 10 of them have long 80char. Then I get a width that is WAY to long for most files.

If I understand correctly, you want to make an implementation where each column in List mode is as wide as its longest file name. That would result in columns that are not all of the same width. I don't know how would that look, aesthetically. Also at different events, like window resize for example, or creation of new objects, everything would have to be recalculated. If there are many files, it might be slow.


Quote
I don't do changes in MC based on what TC does, MC is not trying to be a clone of TC.  they are similar in many things. but I don't base features in MC on what TC do. If MC would be a clone of TC then there would be no point spending time developing MC.

MC does not have to be a clone of TC. I did not imply that. But it is hard to ignore the fact that TC is very widely used and can stand as a reference. To clone, as you say, means to copy everything. On the other hand, what I was saying in my post was to observe what others have done right. And TC has done a lot of them right. All those TC users are more likely to find a comfortable home in MC if they find familiar things. It is common sense to think that most people want to reuse what they already know and then learn a little extra, than to learn everything from the ground up when they change a software.
In a world where long file names, modification date and time are very important, you cannot have a List mode that leaves the user without seeing any of them properly.

Mathias (Author)

  • Administrator
  • VIP Member
  • *****
  • Posts: 4533
    • View Profile
    • Multi Commander
Re: Proper column sizing in List view
« Reply #19 on: Today at 09:15:44 »
Quote
There are changes planed in the future for the list view. But not so that filename column is totally automatic.  I prefer to have the filename width be changable.  If I got 200 files.  190 of them are around 15 char.  but 10 of them have long 80char. Then I get a width that is WAY to long for most files.

If I understand correctly, you want to make an implementation where each column in List mode is as wide as its longest file name. That would result in columns that are not all of the same width. I don't know how would that look, aesthetically. Also at different events, like window resize for example, or creation of new objects, everything would have to be recalculated. If there are many files, it might be slow.
Ehh What.. Noo, I'm not talking abourt future stuff.  Im taking about why I do not want the auto size filename column that can't be changes like in TC, Currently in MC you can resize the filename width your self, And change that to work like TC. I think that would work worse instead of better



Quote
I don't do changes in MC based on what TC does, MC is not trying to be a clone of TC.  they are similar in many things. but I don't base features in MC on what TC do. If MC would be a clone of TC then there would be no point spending time developing MC.
MC does not have to be a clone of TC. I did not imply that. But it is hard to ignore the fact that TC is very widely used and can stand as a reference. To clone, as you say, means to copy everything. On the other hand, what I was saying in my post was to observe what others have done right. And TC has done a lot of them right. All those TC users are more likely to find a comfortable home in MC if they find familiar things. It is common sense to think that most people want to reuse what they already know and then learn a little extra, than to learn everything from the ground up when they change a software.
In a world where long file names, modification date and time are very important, you cannot have a List mode that leaves the user without seeing any of them properly.
Yes TC is used by many. MC is not. TC is commercial product, and must try to catch as many users as possible. I don't care about how many users I have. I developed MC mainly for my own needs, I don't make any money on MC. I have a day job.
MC is developed on my spare time, so I have to priorities what to spend time on. :)
I just get annoyed when people compare mc with other products. specially commercial.. The biggest reason MC is missing something is because I have not needed it. :)
But I do add stuff I never use my self. I got a long list of things to add and many of them are things I will never use my self. But it is more fun to add stuff I use my self. So things I use my self are higher priorities.
« Last Edit: Today at 09:34:48 by Mathias (Author) »