Long filenames



Hello MC,
I found that long filenames are not displayed correctly (or as I would
expect them to be displayed) in the panels and in the line that shows
the currently highlighted file below the panel. Normally when a given
name is longer than the panel width it would show a number of
characters from the beginning of the name, a tilde sign and a portion
of the ending. However for names longer than 128 characters the part
after tilde (~) is not taken from the end of the full name, instead
the name is truncated to 128 chars. This would also affect displaying
file lists in panels wider than 128 chars (which is not a real case
ofcourse). If you prefer I will submit a bug, but I thought I would
write to you directly and wouldn't have to register in the bugtracking
system.

I found that each filename passes through several statically allocated
buffers before being printed. All of these buffers are at least
MC_MAXPATHLEN chars long except the one in string_file_name() in
src/screen.c which is BUF_SMALL bytes long (128 by default) causing a
kindof bottleneck. To fix this it is enough to change this value to
MC_MAXPATHLEN (possibly +1) or even BUF_MEDIUM would be ok (512 by
default). It's a minor change but I attached a patch that does exactly
this.

Beside this, almost all bugs I had found while I was offline for
several last months, have been already fixed in the current CVS
version. Congratulations MC!
There are only some minor issues about the new viewer:
First, the navigation in hex mode is strange: when pressing the down
arrow it will scroll only after the cursor gets to the bottom of the
screen (like in editor) while up arrow scrolls immediately. Also after
using the search feature, the matching text is sometimes not
highlighted correctly, and the vertical bars (|) between each four
columns sometimes change their colour depending on where the cursor
is.

Greetings,
Andrzej Zaborowski
-- 
balrog 2oo5

Attachment: mc-filename-truncation.patch
Description: Binary data



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]