help-gnu-emacs
[Top][All Lists]
Advanced

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

Re: Sanest way to make emacs behave on a Solaris OS


From: Dan Espen
Subject: Re: Sanest way to make emacs behave on a Solaris OS
Date: Tue, 30 Jul 2013 14:00:30 -0400
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.1 (gnu/linux)

Harry Putnam <reader@newsguy.com> writes:

> Dan Espen <despen@verizon.net> writes:
>
>> Harry Putnam <reader@newsguy.com> writes:
>>
>>> I hope there may be a longtime emacs on Solaris user in the house who
>>> can tell me the sanest way to make emacs behave on that OS.
>>>
>>> I'm running a recent install of openindiana (one of the offshoot
>>> solaris OS's) and its been a good long while since I've run Solaris. 
>>>
>>> The biggest problem is that the M (alt) key is not recognized on
>>> solaris and so one must use the Esc key which is really awkward.  And
>>> it seems I vaguely recall some other problems too, but right now that
>>> Esc key thing is such an absolute pain I haven't got that far.
>>>
>>> I realize I can do some key re-assignments but I seem to remember
>>> there being some drawbacks to that too.  So anyway, someone who has
>>> run emacs on Solaris will maybe know a comprehensive solution I can
>>> try. 
>>
>> Haven't had my hands on Solaris for a while, so from memory:
>>
>> Are you running under X or in a terminal?
>>
>> I'm going to assume you are running under X.
>>
>> Under X you want the left alt key to emit Alt_L.
>> Use xev to see what the key emits.
>>
>> Alt_L should show up as mod1 when you display modifiers.
>> Use the command:
>>
>> xmodmap -pm
>
> Thanks for the input.
> Running X yes, but will also use emacs in terminal mode.
>
> xev reveals Alt is Alt_L:
>   KeyRelease event, serial 133, synthetic NO, window 0x4000019,
>       root 0x101, subw 0x400001a, time 64504583, (255,507), root:(952,559),
>       state 0x8, keycode 64 (keysym 0xffe9, Alt_L), same_screen YES,
>       XLookupString gives 0 bytes: 
>       XFilterEvent returns: False
>
> xmodmap -pm reveals that Alt_L is mod1:
>   shift       Shift_L (0x32),  Shift_R (0x3e)
>   lock        Caps_Lock (0x42)
>   control     Control_L (0x25),  Control_R (0x6d)
>   mod1        Alt_L (0x40)
>   mod2        Num_Lock (0x4d)
>   mod3      
>   mod4        Meta_L (0x73),  Meta_R (0x74),  Super_L (0x7f),  Hyper_L (0x80)
>   mod5        Mode_switch (0x5d),  ISO_Level3_Shift (0x71),  ISO_Level3_Shift 
> (0x7c)
>
> By the way, xev reveals the following for the Esc key on emacs
>
>   KeyRelease event, serial 133, synthetic NO, window 0x4000019,
>       root 0x101, subw 0x400001a, time 64689391, (457,441), root:(1154,493),
>       state 0x0, keycode 9 (keysym 0xff1b, Escape), same_screen YES,
>       XLookupString gives 1 bytes: (1b) "
>   FilterEvent returns: False
>
>>From your post it appears you are saying if Alt emits Alt_L and Alt_L is
> mapped to mod1... I should be good to go.  Is that right?
>
> Because it appears that Alt does emit Alt_L and Alt_l is mapped to mod1
> but it is not recognized as M in emacs.. as in such commands as 
> M-x whatever RET
>
> What I get when I press the Alt key in emacs is "A-x is not defined." So
> have to press Esc x to run M-x. 
>
> I mentioned it is an antique version of emacs:
>   GNU Emacs 23.1.1 (x86_64-pc-solaris2.11, X toolkit) of 2012-09-23 on
>  oidev0
> If that makes a difference.
>
> -------        ---------       ---=---       ---------      -------- 
>
> Gack... I just noticed that the Windows key (Meta_L acts like M (alt)
> key to emacs.
>
> xev shows this for Windows key:
>
>   KeyRelease event, serial 134, synthetic NO, window 0x4000019,
>       root 0x101, subw 0x400001a, time 66248204, (504,302), root:(1197,383),
>       state 0x40, keycode 115 (keysym 0xffe7, Meta_L), same_screen YES,
>       XLookupString gives 0 bytes: 
>       XFilterEvent returns: False
>
> xmodmap -pm shows it as Mod4
>   xmodmap:  up to 4 keys per modifier, (keycodes in parentheses):
>
>   shift       Shift_L (0x32),  Shift_R (0x3e)
>   lock        Caps_Lock (0x42)
>   control     Control_L (0x25),  Control_R (0x6d)
>   mod1        Alt_L (0x40)
>   mod2        Num_Lock (0x4d)
>   mod3      
>   mod4        Meta_L (0x73),  Meta_R (0x74),  Super_L (0x7f),  Hyper_L (0x80)
>   mod5        Mode_switch (0x5d),  ISO_Level3_Shift (0x71),  ISO_Level3_Shift 
> (0x7c)
>
> At least that key is way better than the escape key.

Cool, I guess problem solved.
Using xmodmap, you can switch keys around to suit the way you want to
use them.  If I remember Solaris right, they'd switch keys around every
so often driving me nuts.  (Not that Linux hasn't followed the same path.)

-- 
Dan Espen


reply via email to

[Prev in Thread] Current Thread [Next in Thread]