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

Re: which layer to configure so Alt-x does Meta-x in bash?



> What's the right layer to reconfigure so that Alt functions as Meta in bash
> command line editing?
> 
> Right now, when I try to type Alt-f to execute bash's Meta-f line-editing
> function (Forward Word), bash instead inserts a non-ASCII character (the
> a-e ligature).  That happens in bash in xterm and in ssh sessions, but not
> in bash on a virtual console.
> 
> (What I mean by "right layer" above is the layer that probably would have
> the fewest unwanted side effects.  For example, on an older system, Alt-f
> works as Meta-a in bash, but still inserts the a-e character when typed
> while running a command such as "cat" (that is, just echoing typed input
> to output), so I don't think I want a solution that completely disables
> the non-ASCII character generation.)
> 
> 
> Do I want to be looking in bash?  in inputrc?  in xterm?  somewhere else?

Hi Daniel,

Setting the X resource for xterm will cause Alt-f to send Meta-f, but
it's not exclusive to bash. But an alternative quick and easy way to
enter ligatures and other special characters is to use the compose key.

To make Alt function as Meta, put this line in your
~/.Xresources file:
*metaSendsEscape:    True
It will take effect when you next login to X. To apply it immediately,
run
xrdb -merge ~/.Xresources
The metaSendsEscape resource will work for xterm and uxterm, not sure
about any other terminal emulators.

To enable the Compose key, run
dpkg-reconfigure keyboard-configuration
and choose which key you wish to function as Compose (e.g. the Menu key).

To use it, press (don't hold) the Compose key followed by the two keys
which make up the special character. They're mostly intuitive, for
example
Compose a e gives æ
Compose 1 2 gives ½
Compose " o gives ö
Compose o c gives ©
and so on.

I hope this helps.

-- 
Cheers,
Clive


Reply to: