Re: annoyances which seem to arise from Unicode





On Sun, 19 Apr 2009, Russell Shaw wrote:

Theodore Kilgore wrote:

I wrote in some time ago about the problem of some key bindings not working properly in an xterm. Namely, the Cntrl and Alt key behavior changes from what it is in the terminal. The Alt key bindings for MC cease to work and instead are used to print funny characters on the command line, and one has to use Cntrl instead of Alt. Thus, as one example, Alt-s for search down the directory listing now prints a Hungarian long "o" (single stroke on top of the "o") and one has to use Cntrl-s instead. Alt-o for "other panel" now prints some other funny character. Cntrl-o has the behavior which ought to be done by Alt-o, and the normal behavior of Cntrl-o (send MC into the background) is inoperative.

There are partial cures for this, of course. It is possible to create a file called .Xdefaults and put into that file the single line

XTerm*metaSendsEscape:  true

and the problem is cured, in part.

By "in part" I mean exactly that an ordinary user now can use MC in a normal manner in the xterm.

There are however two difficulties which remain, and perhaps someone knows a way to overcome them:

1. If one is doing any real business, such as running a compiler to install something, then one has to do something like open a window and run "su" and become root in that window. After one has done this, the .Xresources entry becomes inoperative in that window, and the described uncooperative behavior takes over again.

1 a. One might think that, well, root also should have a copy of the .Xdefaults file. So to anticipate this suggestion let me point out right now that it does not help. To be sure, it will help if one starts X as root, but not if one has started X as a user and then has opened an xterm and switched over to be root in that xterm. In this event, the root user's copy of the .Xdefaults file is obviously either not read, or is inoperative.

2. If one has two machines (for example, home and office) and has the same userid on both and if one does something like ssh (other machine), then again the .Xdefaults file is ignored. Again, it does not matter if one has a copy of the .Xdefaults file, with identical contents, on both machines. Clearly, it does not get read when one makes a connection in from the outside, using ssh.

Any suggestions?

Have you tried ~/.Xresources? In mine (debian) i have:

!Make Alt-o send ESC-o in mc, instead of "i" with daeresis.
XTerm*eightBitInput: true
XTerm*altSendsEscape: true
XTerm*metaSendsEscape: true

Well, I believe in the minimalist, incremental approach whenever possible. So I decided to try these things one at a time to see what happens. Indeed, the addition of the one line

XTerm*metaSendsEscape:  true

in $HOME/.Xresources does make the problem to go away, which is associated with using su to log in as root in one of the open xterms.

This still leaves one to figure out what to do about the problem when one logs into another machine.

Theodore Kilgore



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