Subject: port-i386/2272: Programming error/typo causes pcvt/kcon to mangle some keycaps+bug in dk keycap
To: None <gnats-bugs@NetBSD.ORG>
From: Erik Bertelsen <erik@erik-be.uni-c.dk>
List: netbsd-bugs
Date: 03/28/1996 14:08:45
>Number:         2272
>Category:       port-i386
>Synopsis:       Misplaced ) causes mis-handling of some keycaps. Correction of Danish keycap.
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    gnats-admin (GNATS administrator)
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Fri Mar 29 14:20:01 1996
>Last-Modified:
>Originator:     Erik Bertelsen
>Organization:
	UNI-C
>Release:        NetBSD-current 28-Mar-1996.
>Environment:
System: NetBSD erik-be.uni-c.dk 1.1B NetBSD 1.1B (EBE) #19: Mon Mar 18 12:00:41 MET 1996 erik@erik-be.uni-c.dk:/usr/sup/netbsd/src/sys/arch/i386/compile/EBE i386


>Description:
	A misplaced ) in the keycap library cause kcon to skip parts of som keycap entries when
	trying to load them.
	In the Danish keycap entry as distributed, the presence of A3=@ causes following entries
	with two-byte scan codes to be skipped.

	On a system with a Danish keyboard, kcon -m dk will only correct some of the key mappings.

	Furthermore the key on the Danish keyboard with ' in lowercase and * in uppercase was
	described incorrectly in the keycap (wrong scan code, no character for lower case)
>How-To-Repeat:
>Fix:
	
*** keycap.c.bak	Sat Oct 14 03:01:46 1995
--- keycap.c	Thu Mar 28 11:28:43 1996
***************
*** 91,97 ****
  	register char *c = cstr+n;
  
  	if (strncmp(id,cstr,n)==0 &&
! 	    (*c==':' || *c=='|' || *c=='=' || *c=='#') || *c=='@') 
  	    	return c;
  	return 0;
  }
--- 91,97 ----
  	register char *c = cstr+n;
  
  	if (strncmp(id,cstr,n)==0 &&
! 	    (*c==':' || *c=='|' || *c=='=' || *c=='#' || *c=='@')) 
  	    	return c;
  	return 0;
  }
*** keycap.src	Sat Oct 14 03:01:49 1995
--- /usr/share/misc/keycap.pcvt	Thu Mar 28 13:15:26 1996
***************
*** 260,268 ****
  	:K13=':S13=`:A13=|:p1#13:\
  	:K27=\345:S27=\305:\
  	:K28=\250:S28=\136:A28=~:p2#28:\
  	:K40=\346:S40=\306:\
  	:K41=\370:S41=\330:\
- 	:K42=:S42=*:\
  	:K45=<:S45=>:A45=\\:\
  	:S53=;:S54=\072:\
  	:K55=-:S55=_:\
--- 260,268 ----
  	:K13=':S13=`:A13=|:p1#13:\
  	:K27=\345:S27=\305:\
  	:K28=\250:S28=\136:A28=~:p2#28:\
+ 	:K29=':S29=*:\
  	:K40=\346:S40=\306:\
  	:K41=\370:S41=\330:\
  	:K45=<:S45=>:A45=\\:\
  	:S53=;:S54=\072:\
  	:K55=-:S55=_:\
>Audit-Trail:
>Unformatted: