Problem with readline (command line editing)
suvayu ali
fatkasuvayu+linux at gmail.com
Thu Dec 1 09:39:28 UTC 2011
Hi Cameron,
On Thu, Dec 1, 2011 at 04:59, Cameron Simpson <cs at zip.com.au> wrote:
> Might your terminal emulator settings have changed?
>
I use Terminal (the XFCE terminal app) as my terminal emulator. I looked
at its settings file, and everything seemed to be the way I have set it
(I haven't touched this file in over a year). That said, I think
Terminal is to blame here. I tried bash on xterm, and everything worked
just the way it should.
> Possibilities:
>
> Alt and Meta are actually distinct keys in the X11 keyboard model;
> this association may have been changed.
>
How do I check this in my case?
> Terminal emulators choose to associate Alt and Meta too. Maybe your
> terminal emulator config has changed.
>
Some how Terminal is choosing to ignore the Alt key. When I try to quote
say Alt+1 with Ctrl+v, I only get 1.
> Ctrl-S is "XOFF" - cease output - when flow control is on on a
> terminal/serial device (and terminals _are_ serial devices:-).
> Readline probably turns this off, but may not. If Ctrl-S doesn't
> prevent other typing, you can probably ignore this idea.
>
Ctrl-s seems to do nothing in my case. But as I mentioned in response to
Ranjan, this particular binding probably has never worked for me.
> Check your newly created user - be sure there is no default .inputrc.
> And isn't there a system wide inputrc, maybe in /etc?
>
The new user doesn't have an ~/.inputrc. I checked the global
/etc/inputrc, there seemed no out of the ordinary settings.
> Check that you're using "emacs" command line editing; bash may only
> offer that, but zsh at least has a "vi" mode command line editing
> as well, which would break the mappings you expect.
>
The global inputrc has these lines:
...
set meta-flag on
set input-meta on
set convert-meta off
set output-meta on
...
$if mode=emacs
...
"\e[5C": forward-word
"\e[5D": backward-word
"\e[1;5C": forward-word
"\e[1;5D": backward-word
...
$endif
And using bind I see I am using emacs mode:
$ bind -v | grep emacs
set editing-mode emacs
set keymap emacs
> Do other readline capable programs also fail?
>
When run inside Terminal, they fail (e.g. python, zsh). But inside xterm
they work as expected.
I guess the problem is clear, Terminal has somehow changed. Maybe there
is some obscure settings somewhere which got changed somehow. I'll ask
on the fedora XFCE list.
> Cheers,
Thanks a lot for all the suggestions. They were very helpful.
--
Suvayu
Open source is the future. It sets us free.
More information about the users
mailing list