Date: Thu, 29 Oct 1998 16:25:59 -0700 From: "Foster, Jim" <JFOSTER@CSKAUTO.COM> To: "'Greg Lehey'" <grog@lemis.com> Cc: freebsd-questions@FreeBSD.ORG Subject: RE: Meta-key and 107-key keyboard Message-ID: <BF4A830F5207D2119420006008A1DB147F0876@v128041.vandenberg.af.mil>
next in thread | raw e-mail | index | archive | help
Greg,
OK, I think this is starting to sink in....
The change I made was to put 'meta' in for each key that I wanted to be the
meta key (scan codes 105 & 106). The other option is to change EVERY OTHER
key to output its meta value in the alt and alt-shift columns. In other
words the for the letter 'a', meta-a is char code 225 ('a', with the high
order bit set), for 'A', meta-A is char code 193, etc... So, chars with the
high order bit set are really the meta function keys and not some
international or other printed special character.
I think my way is easier ;-).
Thanks
Jim
> -----Original Message-----
> From: Greg Lehey [SMTP:grog@lemis.com]
> Sent: Thursday, October 29, 1998 3:43 PM
> To: Foster, Jim
> Cc: freebsd-questions@FreeBSD.ORG
> Subject: Re: Meta-key and 107-key keyboard
>
> On Thursday, 29 October 1998 at 10:31:44 -0700, Foster, Jim wrote:
> > Greg,
> >
> > I tried your keymap file last night and it would not work for me. After
> > downloading it I tried using
> > kbdcontrol -l /usr/share/syscons/us.emacs.kbd
> > and I get the terse error message:
> > Invalid key definition
>
> Well, I tried it and got
>
> kbdcontrol: keymap file not found: No such file or directory
>
> > Boy!, that told me a lot.
>
> Well, it told me that the pathname was wrong. It should be
> /usr/share/syscons/keymaps/us.emacs.kbd. It's not a problem if you do
> it manually, but it is if you want it to happen automatically at
> startup.
>
> > Maybe it had to due to the fact that I really have a 107-key
> > keyboard instead of the 104 that I originally said.
>
> I don't think that makes any differnce.
>
> > By the way, I am running 2.2.7-R, but recompiled for options that
> > natd needs.
>
> Ah, I tried it there and got the same results. It would be nice if it
> told you the line, wouldn't it?
>
> > Any way, I did some more playing around. I used kbdcontrol to dump out
> my
> > default keymap and edited it. On a lark I tried changing one of the
> lalt's
> > (scancode 056 on my map) to meta. I loaded the map and IT WORKED!
> Next, I
> > went into your us.emacs.kbd file and I could not find the word 'meta'
> > anywhere. What indicates to your system that the alt key is the meta
> key?
>
> Nothing. It maps the characters directly if the Alt key is pressed.
>
> > Finally, I noticed that towards the bottom of my keymap file I had three
> > lines saying...
> > 105 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 O
> > 106 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 O
> > 107 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 O
> > I changed them to...
> > 105 'a' fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 O
> > 106 'b' fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 O
> > 107 'c' fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 O
> >
> > Sure enough, the left window key printed 'a', the right window key
> printed
> > 'b', and the menu key printed 'c'.
> >
> > So, I went back in to the file and changed it to...
> > 105 meta meta meta meta meta meta meta meta O
> > 106 meta meta meta meta meta meta meta meta O
> > 107 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 O
> > and now my two window keys are my meta keys, freeing up the alt key to
> be
> > what ever it is suppose to be. :-)
>
> Well, it doesn't do very much in text mode. But I suppose this way it
> can continue not doing very much.
>
> > Also, at the VERY bottom of my keymap file I had several records that
> were
> > structured like this...
> > dtil '~' ( 'a' 227 ) ( 'A' 195 ) ( 'n' 241 ) ( 'N' 209 )
> > ( 'o' 245 ) ( 'O' 213 )
> >
> > I can only assume it is used to take two keystrokes and combine it into
> one
> > "international" character. Being one of those ignorant Americans, I
> don't
> > tend to use many of those, that's why I am guessing ;-)
>
> You could read keyboard(4), but you'd still be guessing. I suppose I
> need to look at this and fix the man page. Some time.
>
> > So, it seems that I have solved my only problem, but this leaves some
> > academic questions unanswered.
> > 1. Why didn't your keymap file work on my box?
>
> Looks like it contains new stuff introduced for 3.0.
>
> > 2. What about your keymap file indicates that the alt key is really the
> meta
> > key?
>
> It's the 'alt' column. It specifies a different code for alt, etc.
> For example, here's the 'a' key for us.emacs.kbd:
>
> # scan cntrl alt alt cntrl lock
> # code base shift cntrl shift alt shift cntrl shift state
> # ------------------------------------------------------------------
> 030 'a' 'A' soh soh 225 193 129 129 C
>
> And here it is in us.iso.kbd:
>
> 030 'a' 'A' soh soh 'a' 'A' soh soh C
>
> > 3. And on a slightly different subject, *exactly* how do the letters at
> the
> > end of each line affect the keymap. All I can find in the docs is that
> it
> > determines how the map is treated with the caps-lock and num-lock on,
> but it
> > does not say HOW to use them.
>
> I'd have to dig too. Maybe somebody else would like to.
>
> Greg
> --
> See complete headers for address, home page and phone numbers
> finger grog@lemis.com for PGP public key
To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-questions" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?BF4A830F5207D2119420006008A1DB147F0876>
