NetBSD Problem Report #44570

From www@NetBSD.org  Mon Feb 14 17:42:00 2011
Return-Path: <www@NetBSD.org>
Received: from mail.netbsd.org (mail.netbsd.org [204.152.190.11])
	by www.NetBSD.org (Postfix) with ESMTP id 2B4CD63B879
	for <gnats-bugs@gnats.NetBSD.org>; Mon, 14 Feb 2011 17:42:00 +0000 (UTC)
Message-Id: <20110214174158.D7EB163B100@www.NetBSD.org>
Date: Mon, 14 Feb 2011 17:41:58 +0000 (UTC)
From: hugoborgescarvalho@gmail.com
Reply-To: hugoborgescarvalho@gmail.com
To: gnats-bugs@NetBSD.org
Subject: brazilian keyboard layout
X-Send-Pr-Version: www-1.0

>Number:         44570
>Category:       kern
>Synopsis:       brazilian keyboard layout
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    kern-bug-people
>State:          closed
>Class:          change-request
>Submitter-Id:   net
>Arrival-Date:   Mon Feb 14 17:45:00 +0000 2011
>Closed-Date:    Tue Jul 21 12:45:58 +0000 2020
>Last-Modified:  Tue Jul 21 12:45:58 +0000 2020
>Originator:     hugo
>Release:        5.1
>Organization:
>Environment:
NetBSD 5.1.0_PATCH NETBSD 5.1.0_PATCH (GENERIC) #0: Sun Feb 13 19:06:43 BRST 2011 root#fedora:/home/hugo/netbsd/src/sys/arch/amd64/compile/obj/GENERIC amd64
>Description:
Support for brazilian abnt2 keyboard layout.
http://en.wikipedia.org/wiki/Keyboard_layout#Portuguese_.28Brazil.29
>How-To-Repeat:

>Fix:
Index: src/sys/dev/wscons/wsksymdef.h
===================================================================
RCS file: /cvsroot/src/sys/dev/wscons/wsksymdef.h,v
retrieving revision 1.61.8.1
diff -c -r1.61.8.1 wsksymdef.h
*** src/sys/dev/wscons/wsksymdef.h	1 Nov 2009 16:13:10 -0000	1.61.8.1
--- src/sys/dev/wscons/wsksymdef.h	14 Feb 2011 17:34:22 -0000
***************
*** 641,646 ****
--- 641,647 ----
  action(KB_USER,	0,	0x0100,	"user",	,	"User-defined")	\
  action(KB_US,	0,	0x0200,	"us",	,	"US-English")	\
  action(KB_UK,	0,	0x0700,	"uk",	,	"UK-English")	\
+ action(KB_BR,	0,	0x1500, "br",	,	"Brazilian")	\
  action(KB_BE,	0,	0x1300,	"be",	,	"Belgian")	\
  action(KB_DK,	0,	0x0400,	"dk",	,	"Danish")	\
  action(KB_FI,	0,	0x0900,	"fi",	,	"Finnish")	\
***************
*** 663,669 ****

  /* Define all the KB_xx numeric values using above table */
  #define KBF_ENUM(tag, tagf, value, cc, ccf, country) tag=value,
! enum { KB_ENC_FUN(KBF_ENUM) KB_NEXT=0x1500 };

  /* Define list of KB_xxx and country codes for array initialisation */
  #define KBF_ENCTAB(tag, tagf, value, cc, ccf, country) { tag, cc },
--- 664,670 ----

  /* Define all the KB_xx numeric values using above table */
  #define KBF_ENUM(tag, tagf, value, cc, ccf, country) tag=value,
! enum { KB_ENC_FUN(KBF_ENUM) KB_NEXT=0x1600 };

  /* Define list of KB_xxx and country codes for array initialisation */
  #define KBF_ENCTAB(tag, tagf, value, cc, ccf, country) { tag, cc },
---------------------------



I got this from OpenBSD:

Index: src/sys/dev/pckbport/wskbdmap_mfii.c
===================================================================
RCS file: /cvsroot/src/sys/dev/pckbport/wskbdmap_mfii.c,v
retrieving revision 1.15.8.5
diff -c -r1.15.8.5 wskbdmap_mfii.c
*** src/sys/dev/pckbport/wskbdmap_mfii.c	15 Nov 2009 06:03:59 -0000	1.15.8.5
--- src/sys/dev/pckbport/wskbdmap_mfii.c	14 Feb 2011 17:35:17 -0000
***************
*** 524,529 ****
--- 524,551 ----
      KC(184), KS_Mode_switch,	KS_Multi_key,
  };

+ static const keysym_t pckbd_keydesc_br[] = {
+ /*  pos      normal		shifted         altgr           shift-altgr */
+     KC(2),   KS_1,		KS_exclam,	KS_onesuperior,
+     KC(3),   KS_2,		KS_at,		KS_twosuperior,
+     KC(4),   KS_3,		KS_numbersign,	KS_threesuperior,
+     KC(5),   KS_4,		KS_dollar,	KS_sterling,
+     KC(6),   KS_5,		KS_percent,	KS_cent,
+     KC(7),   KS_6,		KS_dead_diaeresis,	KS_notsign,
+     KC(13),  KS_equal,		KS_plus,	KS_section,
+     KC(26),  KS_dead_acute,	KS_dead_grave,
+     KC(27),  KS_bracketleft,	KS_braceleft,	KS_ordfeminine,
+     KC(39),  KS_ccedilla,	KS_Ccedilla,
+     KC(40),  KS_dead_tilde,	KS_dead_circumflex,
+     KC(41),  KS_apostrophe,	KS_quotedbl,
+     KC(43),  KS_bracketright,	KS_braceright,	KS_masculine,
+     KC(53),  KS_semicolon,	KS_colon,
+     KC(83),  KS_KP_Delete,	KS_KP_Decimal,
+     KC(86),  KS_backslash,	KS_bar,
+     KC(115), KS_slash,		KS_question,	KS_degree,
+ };
+ 
+ 
  static const keysym_t pckbd_keydesc_us_declk[] = {
  /*  pos      normal		shifted		altgr		shift-altgr */
      KC(1),	KS_grave,	KS_asciitilde, /* replace escape */
***************
*** 718,723 ****
--- 740,746 ----
  	KBD_MAP(KB_PT,			KB_US,	pckbd_keydesc_pt),
  	KBD_MAP(KB_GR,			KB_US,	pckbd_keydesc_gr),
  	KBD_MAP(KB_HU,			KB_US,	pckbd_keydesc_hu),
+ 	KBD_MAP(KB_BR,			KB_US,	pckbd_keydesc_br),
  #endif /* WSKBD_USONLY */

  	/* placeholders */
--------------------

>Release-Note:

>Audit-Trail:
From: Matthew Mondor <mm_lists@pulsar-zone.net>
To: gnats-bugs@NetBSD.org
Cc: 
Subject: Re: kern/44570: brazilian keyboard layout
Date: Tue, 15 Feb 2011 15:50:34 -0500

 On Mon, 14 Feb 2011 17:45:00 +0000 (UTC)
 hugoborgescarvalho@gmail.com wrote:

 > >Synopsis:       brazilian keyboard layout

 Hello Hugo,

 would it be possible to provide a version of the keymap suitable for
 use under /usr/share/wscons/keymaps/ ?  This is more likely to get
 integrated into NetBSD, and it's possible to select that keymap for use
 in /etc/wscons.conf using the mapfile directive.

 Perhaps also check if /usr/share/wscons/keymaps/pckbd.br.abnt2 doesn't
 already provide what you need.

 Thanks,
 -- 
 Matt

From: Hugo Borges de Carvalho <hugoborgescarvalho@gmail.com>
To: gnats-bugs@NetBSD.org
Cc: 
Subject: Re: kern/44570
Date: Fri, 18 Feb 2011 15:30:55 -0200

 Hello.

 The mapfile thing works. The guide should mention it.

 I made another mapfile that just match with my wskbdmap_mfii.c because
 the other has a problem whith shift-page up/down.

 --------cuuuuuuuuut------------
 keycode 2 = 1 exclam onesuperior
 keycode 3 = 2 at twosuperior
 keycode 4 = 3 numbersign threesuperior
 keycode 5 = 4 dollar sterling
 keycode 6 = 5 percent cent
 keycode 7 = 6 dead_diaeresis notsign
 keycode 13 = equal plus section
 keycode 26 = dead_acute dead_grave
 keycode 27 = bracketleft braceleft ordfeminine
 keycode 39 = ccedilla Ccedilla
 keycode 40 = dead_tilde dead_circumflex
 keycode 41 = apostrophe quotedbl
 keycode 43 = bracketright braceright masculine
 keycode 53 = semicolon colon
 keycode 83 = KP_Delete KP_Decimal
 keycode 86 = backslash bar
 keycode 115 = slash question degree
 --------cuuuuuuuuut------------

 thanks.

 -- 
 Hugo ^_^ /
 (my english is bad)

From: Vicente Chaves de Melo <vchaves@ymail.com>
To: gnats-bugs@NetBSD.org, netbsd-bugs@netbsd.org, 
 hugoborgescarvalho@gmail.com
Cc: 
Subject: Re: kern/44570: brazilian keyboard layout
Date: Thu, 18 Jun 2015 14:44:37 -0300

 Hello
 As I am suffering the same problem I would suggest the following patch 
 to the ABNT2 keyboard keymaps.

 dm4# cvs diff share/wscons/keymaps/
 cvs diff: Diffing .
 cvs diff: Diffing share
 cvs diff: Diffing share/wscons
 cvs diff: Diffing share/wscons/keymaps
 Index: share/wscons/keymaps/pckbd.br.abnt2
 ===================================================================
 RCS file: /cvsroot/src/share/wscons/keymaps/pckbd.br.abnt2,v
 retrieving revision 1.1
 diff -r1.1 pckbd.br.abnt2
 5d4
 < keycode 1 = Escape
 12a12,14
  > keycode 16 = q Q slash
  > keycode 17 = w W question
  > keycode 18 = e E degree
 20,21d21
 < keycode 73 = KP_Prior KP_9
 < keycode 81 = KP_Next KP_3
 24,25d23
 < keycode 201 = Prior
 < keycode 209 = Next

 It solves the problem of scroll back in the console and adds some 
 mapping that became more common since the creation of this PR.

 Note:
 This keymap works only for PS/2 keyboard.
 I can create a version of this for USB keyboards if necessary.

 Best regards
 Vicente.


From: "Nia Alarie" <nia@netbsd.org>
To: gnats-bugs@gnats.NetBSD.org
Cc: 
Subject: PR/44570 CVS commit: src/sys/dev
Date: Sun, 12 Jul 2020 01:35:59 +0000

 Module Name:	src
 Committed By:	nia
 Date:		Sun Jul 12 01:35:59 UTC 2020

 Modified Files:
 	src/sys/dev/hid: hidkbdmap.c
 	src/sys/dev/pckbport: wskbdmap_mfii.c
 	src/sys/dev/wscons: wsksymdef.h

 Log Message:
 Add support for the Brazilian keyboard layout to pckbd and ukbd.

 This is significantly different from the European Portugese layout,
 and was pieced together from Wikipedia, X11 layout files, and to
 some extent with trial and error.

 Thanks to lun-4 for helping test this.

 PR kern/44570


 To generate a diff of this commit:
 cvs rdiff -u -r1.3 -r1.4 src/sys/dev/hid/hidkbdmap.c
 cvs rdiff -u -r1.27 -r1.28 src/sys/dev/pckbport/wskbdmap_mfii.c
 cvs rdiff -u -r1.67 -r1.68 src/sys/dev/wscons/wsksymdef.h

 Please note that diffs are not public domain; they are subject to the
 copyright notices on the relevant files.

From: "Martin Husemann" <martin@netbsd.org>
To: gnats-bugs@gnats.NetBSD.org
Cc: 
Subject: PR/44570 CVS commit: [netbsd-9] src
Date: Mon, 13 Jul 2020 14:22:48 +0000

 Module Name:	src
 Committed By:	martin
 Date:		Mon Jul 13 14:22:47 UTC 2020

 Modified Files:
 	src/etc [netbsd-9]: wscons.conf
 	src/sbin/wsconsctl [netbsd-9]: wsconsctl.8
 	src/share/man/man4 [netbsd-9]: pckbd.4 wskbd.4
 	src/sys/dev/hid [netbsd-9]: hidkbdmap.c
 	src/sys/dev/pckbport [netbsd-9]: wskbdmap_mfii.c
 	src/sys/dev/wscons [netbsd-9]: wsksymdef.h

 Log Message:
 Pull up following revision(s) (requested by nia in ticket #1002):

 	sys/dev/wscons/wsksymdef.h: revision 1.68
 	sys/dev/wscons/wsksymdef.h: revision 1.69
 	sys/dev/pckbport/wskbdmap_mfii.c: revision 1.28
 	sys/dev/pckbport/wskbdmap_mfii.c: revision 1.29
 	sys/dev/hid/hidkbdmap.c: revision 1.10
 	share/man/man4/pckbd.4: revision 1.23
 	share/man/man4/wskbd.4: revision 1.18
 	share/man/man4/wskbd.4: revision 1.19
 	share/man/man4/pckbd.4: revision 1.25
 	sys/dev/wscons/wsksymdef.h: revision 1.70
 	sys/dev/wscons/wsksymdef.h: revision 1.71
 	sys/dev/pckbport/wskbdmap_mfii.c: revision 1.30
 	sys/dev/wscons/wsksymdef.h: revision 1.72
 	sys/dev/pckbport/wskbdmap_mfii.c: revision 1.31
 	sys/dev/wscons/wsksymdef.h: revision 1.73
 	sys/dev/pckbport/wskbdmap_mfii.c: revision 1.32
 	sys/dev/pckbport/wskbdmap_mfii.c: revision 1.33
 	sys/dev/hid/hidkbdmap.c: revision 1.4
 	sbin/wsconsctl/wsconsctl.8: revision 1.30
 	sys/dev/hid/hidkbdmap.c: revision 1.5
 	etc/wscons.conf: revision 1.20
 	sys/dev/hid/hidkbdmap.c: revision 1.6
 	etc/wscons.conf: revision 1.21
 	sys/dev/hid/hidkbdmap.c: revision 1.7
 	sys/dev/hid/hidkbdmap.c: revision 1.8
 	sys/dev/hid/hidkbdmap.c: revision 1.9

 Add support for the Brazilian keyboard layout to pckbd and ukbd.

 This is significantly different from the European Portugese layout,
 and was pieced together from Wikipedia, X11 layout files, and to
 some extent with trial and error.

 Thanks to lun-4 for helping test this.

 PR kern/44570
 Update lists of keyboard layouts to add Turkish and Brazilian

 Bring br.nodead closer to X11

 Add Estonian layout as a variation of Swedish for ukbd and pckbd

 Add KB_TR for uhid keyboards (it was PS/2 only, this seems wrong)

 Add Icelandic keyboard layout to ukbd/pckbd.

 Add keyboard layout for Latin American Spanish to ukbd/pckbd

 Canadian French keyboard layout for ukbd/pckbd

 Clarify that KB_TR is the "Q" layout - there's two standards for Turkish.

 Move description of keyboard layouts to wskbd.4, add newer layouts

 Previously, the best reference was pckbd.4. This does not make much
 sense to read if you are on, say, an evbarm device with only USB.
 wsconsctl.8 contained a vaguer description of supported language names,
 which isn't very useful because you can't pass full language names
 to the command. Point readers to wskbd.4 instead.

 Note in the wskbd.4 page that while all layouts are generally supported
 by pckbd(4) and ukbd(4), older keyboard interfaces might only support
 a subset.

 wskbd.4: Add KB_LA

 Point readers at wskbd.4


 To generate a diff of this commit:
 cvs rdiff -u -r1.19 -r1.19.46.1 src/etc/wscons.conf
 cvs rdiff -u -r1.28 -r1.28.42.1 src/sbin/wsconsctl/wsconsctl.8
 cvs rdiff -u -r1.21.44.1 -r1.21.44.2 src/share/man/man4/pckbd.4
 cvs rdiff -u -r1.16 -r1.16.34.1 src/share/man/man4/wskbd.4
 cvs rdiff -u -r1.1.10.1 -r1.1.10.2 src/sys/dev/hid/hidkbdmap.c
 cvs rdiff -u -r1.26.10.1 -r1.26.10.2 src/sys/dev/pckbport/wskbdmap_mfii.c
 cvs rdiff -u -r1.67 -r1.67.10.1 src/sys/dev/wscons/wsksymdef.h

 Please note that diffs are not public domain; they are subject to the
 copyright notices on the relevant files.

State-Changed-From-To: open->closed
State-Changed-By: nia@NetBSD.org
State-Changed-When: Tue, 21 Jul 2020 12:45:58 +0000
State-Changed-Why:


>Unformatted:

NetBSD Home
NetBSD PR Database Search

(Contact us) $NetBSD: query-full-pr,v 1.46 2020/01/03 16:35:01 leot Exp $
$NetBSD: gnats_config.sh,v 1.9 2014/08/02 14:16:04 spz Exp $
Copyright © 1994-2020 The NetBSD Foundation, Inc. ALL RIGHTS RESERVED.