public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Junio C Hamano <junkio@cox.net>
To: Andries Brouwer <aebr@win.tue.nl>
Cc: linux-kernel@vger.kernel.org,
	Norman Diamond <ndiamond@wta.att.ne.jp>,
	Vojtech Pavlik <vojtech@suse.cz>
Subject: Re: 2.6.0-test5 vs. Japanese keyboards [3]
Date: Tue, 16 Sep 2003 11:11:46 -0700	[thread overview]
Message-ID: <7voexkhacd.fsf@assigned-by-dhcp.cox.net> (raw)
In-Reply-To: <fa.gddv2je.1jk671u@ifi.uio.no> (Andries Brouwer's message of "Tue, 16 Sep 2003 13:45:29 GMT")

>>>>> "AB" == Andries Brouwer <aebr@win.tue.nl> writes:

AB> So the question arises: do we need a kernel patch, and if
AB> so, what patch?

Norman wants the second one with 181 and 183.  For PS/2
keyboards, only 183 is enough, but both are needed for some
other kind (USB).

There are some good reasons to include Norman's patch:

 - This whole thread started when I noticed that pipe ('|') did
   not work on 2.6.0-test1 as it used to in 2.4:

   http://marc.theaimsgroup.com/?l=linux-kernel&m=105861161105970&w=2

   You kindly took time to suggest adding 183 to the keymap, and
   the first variant Norman reposted recently is the outcome of
   that suggestion.  In short, adding 183 is just to regain what
   used to be supported in stock 2.4 but not in the current 2.6.
   It is not new; just fixing the regression.  I cannot test
   this anymore but I remember interacting with a shell under
   using such a keyboard during 2.2 days without trouble with
   forming pipeline, so I am reasonably sure that stock 2.2 also
   supported this key.

 - The keymap arrays in defkeymap.c_shipped are all defined to
   be arrays of NR_KEYS u_short elements, and without the patch
   they contain 0 for the 181 and 183 keys.  The patch replaces
   these zeroes with some useful values there for the affected
   keyboards.  The change does not bloat the kernel binary.

 - The patch looks bigger than necessary because changes to the
   file defkeymap.c_shipped is included for the general public's
   convenience, and it has to be big only because the stock
   kernel defkeymap.c_shipped seems to have been generated by a
   loadkeys command that still thinks NR_KEYS is 128.  As
   clarified in another thread recently, that is a generated
   file not a source.  The true change just adds six lines or so
   to the defkeymap.map.  The change does not increase the
   maintenance cost of the kernel that much.

AB> There is no need to have knowledge of the Japanese keymap in
AB> the kernel, just as there is no knowledge of the German or
AB> French keymap. That knowledge belongs in the keymap that one
AB> loads.

A purist might say that there is no reason to include pipe ('|')
key support for Japanese keyboards in the kernel source, nor
include any keyboard support for that matter ;-).  Everybody can
run loadkeys from their init script during the bootup sequence
;-).  We do not do that for an obvious reason: convenience for
the common cases.

The only technical reason to reject this is if some other
keyboards want to claim 181 and/or 183 for some other symbols.
Although I do not think it is likely, integrating Norman's patch
in the mainline would be a good way to detect this anyway since
somebody would start screaming if there is such a conflicting
case.  Once we know there are two conflicting camps who want to
define 181 and/or 183 to different symbols, we can worry about
which one to make the default by perhaps user population; this
is remotely similar to the way we ship qwerty not dvorak as the
default keymap in the kernel.


  parent reply	other threads:[~2003-09-16 18:11 UTC|newest]

Thread overview: 28+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2003-09-14  3:51 2.6.0-test5 vs. Japanese keyboards Norman Diamond
2003-09-14 10:20 ` Andries Brouwer
2003-09-14 11:14   ` 2.6.0-test5 vs. Japanese keyboards [1] Norman Diamond
2003-09-14 11:15   ` 2.6.0-test5 vs. Japanese keyboards [2] Norman Diamond
2003-09-14 11:21   ` 2.6.0-test5 vs. Japanese keyboards [3] Norman Diamond
2003-09-16 13:43     ` Andries Brouwer
2003-09-17 12:35       ` OGAWA Hirofumi
2003-09-17 17:22         ` Andries Brouwer
2003-09-18 16:15           ` OGAWA Hirofumi
2003-09-21 11:06       ` Vojtech Pavlik
2003-09-21 12:39         ` Andries Brouwer
2003-09-21 12:48           ` Vojtech Pavlik
2003-09-21 14:49             ` Andries Brouwer
2003-09-21 17:07               ` Vojtech Pavlik
2003-09-21 17:42                 ` Andries Brouwer
2003-09-21 17:52                   ` Vojtech Pavlik
2003-09-22 12:22                 ` Norman Diamond
2003-09-24 10:02               ` Pavel Machek
     [not found]     ` <fa.gddv2je.1jk671u@ifi.uio.no>
2003-09-16 18:11       ` Junio C Hamano [this message]
2003-09-21 11:01 ` 2.6.0-test5 vs. Japanese keyboards Vojtech Pavlik
2003-09-21 13:26   ` Norman Diamond
2003-09-21 15:16     ` Andries Brouwer
2003-09-22 12:21       ` Norman Diamond
2003-09-22 20:14         ` Andries Brouwer
2003-09-23 11:44           ` Norman Diamond
2003-09-23 17:22             ` Andries Brouwer
2003-10-15 10:22               ` Norman Diamond
2003-09-21 16:00   ` Andries Brouwer

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=7voexkhacd.fsf@assigned-by-dhcp.cox.net \
    --to=junkio@cox.net \
    --cc=aebr@win.tue.nl \
    --cc=linux-kernel@vger.kernel.org \
    --cc=ndiamond@wta.att.ne.jp \
    --cc=vojtech@suse.cz \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox