From mboxrd@z Thu Jan 1 00:00:00 1970 Subject: Re: [9fans] keyboard maps From: Pavel Mihaylov To: 9fans@cse.psu.edu In-Reply-To: <2ddd507ce00ca87c2bcc7eb42e70c919@plan9.escet.urjc.es> References: <2ddd507ce00ca87c2bcc7eb42e70c919@plan9.escet.urjc.es> Content-Type: multipart/mixed; boundary="=-SJVkvrUSn4SQpYdDoSI5" Message-Id: <1021498469.3079.20.camel@dator> Mime-Version: 1.0 Date: Thu, 16 May 2002 00:34:28 +0300 Topicbox-Message-UUID: 93c41c22-eaca-11e9-9e20-41e7f4b1d025 --=-SJVkvrUSn4SQpYdDoSI5 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable =D0=9D=D0=B0 14 =D0=BC=D0=B0=D0=B9 2002 =D0=B3. (=D0=B2=D1=82=D0=BE=D1=80= =D0=BD=D0=B8=D0=BA), =D0=B2 14.37 =D1=87=D0=B0=D1=81=D0=B0, Fco.J.Ballester= os =D0=BF=D0=B8=D1=81=D0=B0: > Two of my students ({jvergara,jgato}@gsyc.escet.urjc.es) have > changed the keyboard driver to support static maps allowing > to switch at run time between them using the function keys. >=20 In kbd.h Altgr is defined as 0x38 which disagrees with the other shift-state keys (Shift, Ctrl, etc). This is apparently the reason to use variable gr, needed to differentiate between Altgr and simply 0x38 (which is actually '8'). I've changed the definition of Altgr to Spec|0x67 (right after the other shift keys) and removed gr. I also removed last_altgr which seems to be unused. All that fixed a bug for me - when using keymaps without Altgr (i.e. us map) right Alt was supposed to work as the left one but after pressing it I could enter any arbitrary character _before_ collecting of compose sequence begins. The revised kbd.c and kbd.h are attached. Btw, isn't it wise to rename Latin from kbd.h to something more meaningful, such as Compose, since composing is used to enter much more than Roman-script based characters? Pavel --=-SJVkvrUSn4SQpYdDoSI5 Content-Type: multipart/mixed; boundary="upas-ephhdvlkslvudetowevhoyyzmv" Content-Disposition: inline This is a multi-part message in MIME format. --upas-ephhdvlkslvudetowevhoyyzmv Content-Disposition: inline Content-Type: text/plain; charset="US-ASCII" Content-Transfer-Encoding: 7bit The following attachment had content that we can't prove to be harmless. To avoid possible automatic execution, we changed the content headers. The original header was: Content-Disposition: attachment; filename=kbdfix.tgz Content-Type: application/x-gzip; name=kbdfix.tgz Content-Transfer-Encoding: base64 --upas-ephhdvlkslvudetowevhoyyzmv Content-Type: application/octet-stream Content-Disposition: attachment; filename="kbdfix.tgz.suspect" Content-Transfer-Encoding: base64 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 --upas-ephhdvlkslvudetowevhoyyzmv-- --=-SJVkvrUSn4SQpYdDoSI5--