several issues + wishes

Pavel Roskin proski at gnu.org
Tue Feb 18 08:22:36 UTC 2003


Hello!

> mc forgets to reset the x window title when it exits.

It was never meant to "reset" the title.  There was a discussion how to
restore the original title, but no good solution was suggested.

> a cmdline switch to replace the "mc" prefix in the window title would be
> very helpful. i usually have dozens of xterms with mc open, some of them
> are root consoles and some on remote hosts. it's impossible to manage
> them if they are all titled "mc - ...".

I think an environment variable would be better.  Something like PS1, but
specific to mc.  Then you would set it in .profile on the remote host.
I'm adding this to the TODO list.

> a single esc keypress should be translated to esc esc after some
> timeout. the timeout could be made dependent on the "slow terminal"
> setting and/or could be automatically adopted based on measurements of
> previous key sequences. dunno if this is simply doable with curses ...

Sometimes it's useful when Escape doesn't time out.  Users don't have to
use three fingers to run the "Find File" dialog.  Also, Escape+number is
the last resort if the functional keys don't work.

> the text viewer should support syntax highlighting.

I have no idea how to do it.  The syntax highlighting used in the internal
editor is tied to a memory model used in the editor.  The viewer uses
mmap() on files, so it can read huge files without loading them into
memory.  I think this feature is more important than syntax highlighting.

> the type/ keyword in mc.etx should use "file -z", not "plain" "file".
> for now i simply created wrapper script for "file" and put it in the
> path in front of the regular "file", but i think this will potentially
> cause trouble. using "file -z" allows things like:
> type/^(ASCII )?troff.*gzip compressed
>         Open=gzip -dc %f | nroff  -Tlatin1 -mandoc | sensible-pager
>         View=%view{ascii,nroff} gzip -dc %f | nroff  -Tlatin1 -mandoc
> which is obviously by far more reliable than some magic based on file
> extensions (don't you hate having your rotated+compressed log files
> formatted like man pages?).

How portable is "file -z"?  I agree, if we want to distinguish compressed
manual pages from compressed logs, we have to look inside.

> under some weird circumstances cooledit eats files (makes them
> zero-length). i think this happens if the directory containing the file
> is renamed below cooledit's feet. similar, but by far not so fatal is
> that cd-ing below cooledit makes it save the file to the wrong (new)
> directory.

This was already reported, and I even remember that somebody posted a
patch, but I cannot find it in the patch manager or in the list archives.
Anyway, I'm adding this problem to the TODO list for the next version.

> c is treated like c++. that's somewhat annoying.

It's annoying for a reason.  Calling a variable "new" or "class" is not a
good idea.

> c++ style comments are not recognized after preprocessor directives.

Fixed now.

> vim marks #if 0 -ed code as comment. this would be a nice feature to
> steal. :)

It's technically possible, but some people don't like the color used for
comments, and this would annoy them even more.  It's better to make colors
more flexible first.

> complex sh syntax highlighting, in particular bash syntax is totally
> screwed. see these examples:
>   cont=$((${delay2[i]}+$now-$(date '+%s')))
>   "${mailclasses:1:$((${#mailclasses}-2))}"
>   fil=$(egrep -i "/([0-9]{2,3} - )?${i% $dsh *}( $dsh |( $dsh [^/]+)?(/.+)?/([0-9]{2,3} - )?)${i##* $dsh }\$" /tmp/xm-$$ | tr '\n' '\\')
>   dfil="$ddir/$i - ${sartist:+$(escape "${artist[cntr]}") $dsh
}$(escape "${title[cntr]}").$ext"

The current syntax highlighting code cannot deal with such complex
expressions.  It seems that kate 2.1 from KDE 3.1 is not much better at
handling this script.

> a "backspace unindents" option (as known from the borland IDEs for
> example) would be very nice.

I would not object if somebody implements it.

> the type of white-space used by auto-indent should not be based on the
> "fill tabs with spaces" setting. instead, the leading whitespace from
> the above line should be copied. otherwise it's impossible to use a
> tabbing style like
> <tab>if (...)
> <tab><tab>if (cond1 && function(par1,
> <tab><tab>                      par2))
> <tab><tab><tab>statement;
> (which is _the_ tabbing style).

I have no idea what you mean.  I normally use indent for indentation and
don't waste my time writing indented code, unless I'm trying to emulate
the original indentation of the code, but it's manual work anyways.

> "intelligent home" which alternates between column 1 and the first
> column with non-whitespace on it would not hurt.

You probably need an editor designed for programmers from the beginning
(like kate).  Again, I wouldn't object is somebody implements it in
mcedit.

> some basic file locking would be nice. i often end up editing the same
> file in two windows.

Added to the TODO list.

> dunno if this is simply an issue of terminfo: a lot of advanced key
> combinations (in particular [shift-]ctrl-<move>) are not recognized in
> xterm, even though they produce keycodes.

That's already in TODO.  Some keys were hardcoded for xterm and rxvt, but
the right solution is to read the definition from mc.lib.  To read
definitions for keys with modifiers, the format of mc.lib should be
changed.

> as a consequence of this, it is impossible to insert selection into the
> x-clipboard -> entries should be added to the menu.

X Clipboard is not supported.  This also goes to the TODO list.

-- 
Regards,
Pavel Roskin



More information about the mc-devel mailing list