From owner-man-jp-reviewer@jp.freebsd.org  Thu Feb 25 07:32:00 1999
Received: (from daemon@localhost)
	by jaz.jp.freebsd.org (8.9.2+3.1W/8.7.3) id HAA19378;
	Thu, 25 Feb 1999 07:32:00 +0900 (JST)
	(envelope-from owner-man-jp-reviewer@jp.FreeBSD.org)
Received: from ma3.seikyou.ne.jp (ma3.seikyou.ne.jp [202.211.152.179])
	by jaz.jp.freebsd.org (8.9.2+3.1W/8.7.3) with ESMTP id HAA19373
	for <man-jp-reviewer@jp.freebsd.org>; Thu, 25 Feb 1999 07:31:57 +0900 (JST)
	(envelope-from hiloshi@seikyou.ne.jp)
Received: from hiloshi.seikyou.ne.jp (kyoto-503.seikyou.ne.jp [202.211.148.58])
	by ma3.seikyou.ne.jp (8.8.8/3.6WNSK98032401) with ESMTP id HAA22026
	for <man-jp-reviewer@jp.freebsd.org>; Thu, 25 Feb 1999 07:31:53 +0900
Received: (from hiloshi@localhost) by hiloshi.seikyou.ne.jp (8.8.5/3.5Wpl7) id HAA00380; Thu, 25 Feb 1999 07:31:36 +0900 (JST)
Date: Thu, 25 Feb 1999 07:31:36 +0900 (JST)
Message-Id: <199902242231.HAA00380@hiloshi.seikyou.ne.jp>
From: =?ISO-2022-JP?B?GyRCNmIkc0VEGyhC?= <vanitas@ma3.seikyou.ne.jp>
To: man-jp-reviewer@jp.freebsd.org
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-2022-JP
Reply-To: man-jp-reviewer@jp.freebsd.org
Precedence: list
X-Distribute: distribute version 2.1 (Alpha) patchlevel 24e+981115
X-Sequence: man-jp-reviewer 1048
Subject: [man-jp-reviewer 1048] keyboard.4
Errors-To: owner-man-jp-reviewer@jp.freebsd.org
Sender: owner-man-jp-reviewer@jp.freebsd.org
X-Originator: vanitas@ma3.seikyou.ne.jp

$B6b$sED$G$9!#(B

 keyboard.4 $B$N=iLu$G$9!#(B

$B?t;z$O9THV9f(B($B3g8LFb$O86J8$N9THV9f(B)$B$G$9!#(B
$B!|(B $B:$$C$?E@(B
$B!&(B97(90):
   switch-screen key $B$d(B no-op key $B$C$F2?$+I8=`E*$J(B
   $BLu8l$,$"$k$N$G$7$g$&$+!)(B
$B!&(B99(91):
   bitmap$B!V(Bmap $B$N%S%C%H!W(B
   $BJ8L.$+$i$3$&$$$&0UL#$@$m$&$HH=CG$7$^$7$?!#(B
   ($B$3$NCJMn$NFbMF$,$$$^$$$A$D$+$a$F$J$/$F!"$A$g$C$HLu$,%"%d%7%$$G$9!#(B)
$B!&(B110(101):
   fx.$B!VNc$($P!W(B
   fx. $B$C$FKM$N<-=q$K$O:\$C$F$J$$$s$G$9$,!"(BFor eXample $B$N$3$H$G$9$h$M!D!)(B

$B$=$NB>!"FC$K<+?.$N$J$$Lu8l$O!"(B
   history		$BMzNr(B ($B%9%/%m!<%k$5$l$?I=<(FbMF$rLa$95!G=(B)
   numerical keypad	$B?t;z%-!<%Q%C%I(B
   scancode		$B%9%-%c%s%3!<%I(B
   substructure		$B%5%V9=B$BN(B ($B9=B$BNCf$N9=B$BN%a%s%P(B)
$B$G$9!#(B $B$h$m$7$/$*4j$$$7$^$9!#(B
___________________________________________
$B6bED(B $B9@;J(B  email: vanitas@ma3.seikyou.ne.jp
$B!|(B============================== $B0J2<(B ==============================$B!|(B
.\"
.\"	$Id: keyboard.4,v 1.16 1998/06/29 07:04:08 hoek Exp $
.\" jpman %Id: keyboard.4,v 0.0 1999/02/22 16:13:40 horikawa Stab %
.\" WORD: function key		$B%U%!%s%/%7%g%s%-!<(B
.\" WORD: history		$BMzNr(B [keyboard.4] ($B%9%/%m!<%k$5$l$?I=<(FbMF$rLa$95!G=(B)
.\" WORD: modifier key		$B=$>~%-!<(B
.\" WORD: normal key		$BDL>o%-!<(B
.\" WORD: numerical keypad	$B?t;z%-!<%Q%C%I(B
.\" WORD: scancode		$B%9%-%c%s%3!<%I(B [keyboard.4]
.\" WORD: substructure		$B%5%V9=B$BN(B ($B9=B$BNCf$N9=B$BN%a%s%P(B)
.\" "
.Dd January 8, 1995
.Dt KEYBOARD 4 i386
.Os FreeBSD
.Sh $BL>>N(B
.Nm keyboard
.Nd PC $B%-!<%\!<%I$N%$%s%?%U%'!<%9(B
.Sh $B2r@b(B

PC $B%-!<%\!<%I$O%3%s%=!<%kJ8;z$NF~NO%G%P%$%9$H$7$F;HMQ$5$l$^$9!#(B
$B%-!<%\!<%I$O8=:_$N2>A[%3%s%=!<%k$K@lM-$5$l$^$9!#(B
$B2>A[%3%s%=!<%k$r@Z$jBX$($k$K$O!"%7!<%1%s%9(B
.Ar ALT+Fn
$B$r;H$C$F$/$@$5$$!#$3$l$O!"(BALT $B$r2!2<$7$J$,$i%U%!%s%/%7%g%s%-!<$N(B
$B$R$H$D$r2!$9$H$$$&0UL#$G$9!#$=$&$9$k$H!"$=$N%U%!%s%/%7%g%s%-!<$N(B
$BHV9f$HF1$82>A[%3%s%=!<%k$,8=:_$N2>A[%3%s%=!<%k$H$7$FA*Br$5$l!"(B
$B%-!<%\!<%I$d%G%#%9%W%l%$$N@lM-E*$J;HMQ8"$,M?$($i$l$^$9!#(B

$B%3%s%=!<%k$G$O!"FCJL$J%-!<%7!<%1%s%9$rMQ$$$F%-!<%\!<%I>e$KJ*M}E*$K(B
$BB8:_$7$J$$CM$rF~NO$G$-$^$9!#$3$N5!G=$r;H$&$K$O!"(BALT $B$r2!$7$?$^$^$K$7$F!"(B
$B?t;z%-!<%Q%C%I$G(B 0 $B$+$i(B 255 $B$N(B 10 $B?J?t;z$rF~NO$7!"(BALT $B$rN%$7$F$/$@$5$$!#(B
$B$=$&$9$k$H!"F~NO$5$l$?CM$,$R$H$D$NJ8;z$rI=$9(B ASCII $BCM$H$7$F;H$o$l$^$9!#(B
$B$3$N$h$&$K$7$F!"%-!<%\!<%I>e$KL5$$G$0U$N(B ASCII $BCM$rF~NO$9$k$3$H$,$G$-$^$9!#(B
$B$^$?!"%3%s%=!<%k%I%i%$%P$OMzNr5!G=$bHw$($F$$$^$9!#(B
$BMzNr5!G=$O%9%/%m!<%k%m%C%/(B (scroll-lock) $B%-!<$r2!$9$3$H$GM-8z$K$J$j$^$9!#(B
$B$3$l$OI=<($r8GDj$7!":G8e$K%9%/%m!<%k$5$l$?9T$KEO$C$F%+!<%=%kLp0u$r(B
$B%9%/%m!<%k%"%C%W!&%@%&%s$G$-$k$h$&$K$7$^$9!#(B

$B%-!<%\!<%I$O!"8D!9$N%f!<%6$d9q$N0c$$$K$h$kG[CV$K9g$o$;$F@_Dj$G$-$^$9!#(B

$B%-!<%\!<%I>e$N%-!<$O<!$N5!G=$N$I$l$G$b;}$D$3$H$,$G$-$^$9(B:

	$BDL>o%-!<(B		- $B$=$N%-!<$K4XO"IU$1$i$l$?(B ASCII $BCM$rF~NO!#(B

	$B%U%!%s%/%7%g%s%-!<(B	- ASCII $B?tCMNs$rF~NO!#(B

	$B%9%$%C%A%-!<(B		- $B2>A[%3%s%=!<%k$r@Z$jBX$($k!#(B

	$B=$>~%-!<(B		- $BJL$N%-!<$N0UL#$rJQ99$9$k!#(B


$B%-!<%\!<%I$H$O!"(B1 $B$+$i(B n $B$NHV9f$rIU$1$i$l$?%-!<$N=89g$H8+$J$;$^$9!#(B
$B$3$NHV9f$O$h$/!"$"$k%-!<$KBP$9$k!V%9%-%c%s%3!<%I(B (scancode)$B!W$H8F$P$l$^$9!#(B
$B$"$k%-!<$,2!$5$l$?$H$-!"$=$N%-!<$NHV9f$O%S%C%H(B 7 $B$,(B 0 $B$N(B 8 $B%S%C%HJ8;z$K(B
$BJQ49$5$l!"N%$5$l$?$H$-$O%S%C%H(B 7 $B$,(B 1 $B$N?tCM$KJQ49$5$l$^$9!#(B
$B$3$l$K$h$j!"%-!<$N%^%C%T%s%0$,40A4$K@_Dj2DG=$H$J$j$^$9!#(B

$B$=$l$>$l$N%-!<$N;}$D0UL#$O(B PIO_KEYMAP ioctl $B$N8F$S=P$7$K$h$C$F(B
$B%W%m%0%i%`$G$-$^$9!#$3$l$O(B keymap_t $B9=B$BN$r0z?t$K<h$j$^$9!#(B
$B$3$N9=B$BN$N9=@.$O<!$N$h$&$K$J$j$^$9(B:
.Pp
.Bd -literal -offset indent
		struct keymap {
			u_short	n_keys;
			struct key_t {
				u_char map[NUM_STATES];
				u_char spcl;
				u_char flgs;
			} key[NUM_KEYS];
		};
.Ed
.Pp
$B%U%#!<%k%I(B n_keys $B$O$$$/$D$N%-!<Dj5A(B ($B%9%-%c%s%3!<%I(B) $B$,B3$/$+$r%7%9%F%`$K(B
$B<($7$^$9!#3F%9%-%c%s%3!<%I$O%5%V9=B$BN$N(B key_t $B$G;XDj$5$l$^$9!#(B

$B3F%9%-%c%s%3!<%I$O!"(Bshift, control, alt $B$N>uBV$K$h$j(B
8 $B$D$N0[$J$kCM$KJQ49$5$lF@$^$9!#(B
$B$3$l$i(B 8 $BDL$j$N>uBV$O<!$N$h$&$JG[Ns(B map $B$GI=8=$5$l$^$9(B:

                                                            alt
 scan                          cntrl          alt    alt   cntrl
 code     base   shift  cntrl  shift   alt   shift  cntrl  shift
 map[n]      0       1      2      3     4       5      6      7
 ----     ------------------------------------------------------
 0x1E      'a'     'A'   0x01   0x01    'a'    'A'   0x01   0x01

$B$3$l$O!"DL>o(B 0x1E $B$N%9%-%c%s%3!<%I$r;}$D!V(BA$B!W$H5-$5$l$?%-!<$N(B
$B%G%U%)%k%H$N%^%C%T%s%0$G$9!#(B8 $BDL$j$N>uBV$,<($5$l$F$$$k$h$&$K!"(B
$B!V(BA$B!W%-!<$NDL>o$NF0:n$rM?$($^$9!#(B
$B%U%#!<%k%I(B spcl $B$O!"%-!<$K!VFC<l$J(B (special)$B!W07$$$rM?$($k$?$a$K;H$o$l!"(B
$B<!$N$h$&$K2r<a$5$l$^$9!#(B
$B3F%S%C%H$O>e5-$N>uBV$N$R$H$D$KBP1~$7$^$9!#(B
$B$=$N%S%C%H$,(B 0 $B$J$i!"$=$N%-!<$O(B map[] $B$NBP1~$9$k%(%s%H%j$K<($5$l$??tCM$r(B
$BAw=P$7$^$9!#%S%C%H$,(B 1 $B$J$i!"$=$N%-!<$O!VFC<l!W$G$9!#(B
$B$9$J$o$A!"$=$N%-!<$O2?$bAw=P$7$^$;$s!#(B
$BBe$o$j$K!"!V>uBV(B (state)$B!W$NJQ99$r;\$7$^$9!#(B
$B$D$^$j!"$=$N%-!<$O(B shift, control, alt, lock, switch-screen,
$B%U%!%s%/%7%g%s%-!<(B, $B$"$k$$$O(B no-op $B%-!<$G$"$k$H$$$&$3$H$G$9!#(B
map $B$N%S%C%H$O5U8~$-$K$J$j$^$9!#(B
$B$D$^$j!"%S%C%H(B 7 $B$,(B base $B$K!"%S%C%H(B 6 $B$,(B shift $B$K!"$J$I$HBP1~$7$^$9!#(B

$B%U%#!<%k%I(B flgs $B$O!"$=$N%-!<$,(B caps-lock (1)$B!"(Bnum-lock (2)$B!"$^$?$O(B
$B$=$NN>J}(B (3) $B$KH?1~$9$Y$-$+!"$"$k$$$ON>J}$H$bL5;k(B (0) $B$9$k$Y$-$+$r7h$a$^$9!#(B

.Xr kbdcontrol 1
$B%f!<%F%#%j%F%#$O!"$3$&$$$C$?5-=R$r%+!<%M%k$K(B/$B%+!<%M%k$+$i(B
$B<B9T;~$K%m!<%I$9$k$?$a$K;H$o$l$^$9!#$3$l$K$h$j<B9T;~$K%-!<3d$jEv$F$r(B
$BJQ99$9$k$3$H$,$G$-$^$9!#$"$k$$$O!"$h$j=EMW$J$3$H$G$9$,!"(B
$B%-!<$N@53N$J0UL#$r(B (GIO_KEYMAP ioctl $B$G(B) $B%+!<%M%k$+$i<hF@$7$^$9(B
($BNc$($P!"(BX $B%5!<%P$,MxMQ$7$^$9(B)$B!#(B

$B%U%!%s%/%7%g%s%-!<$O(B SETFKEY ioctl $B8F$S=P$7$rMQ$$$F%W%m%0%i%`$G$-$^$9!#(B

$B$3$N(B ioctl $B$O(B fkeyarg_t $B7?$N0z?t$r<h$j$^$9(B:
.Bd -literal -offset indent
		struct fkeyarg {
			u_short	keynum;
			char	keydef[MAXFK];
			char	flen;
		};
.Ed
.Pp
$B%U%#!<%k%I(B keynum $B$O$I$N%U%!%s%/%7%g%s%-!<$r%W%m%0%i%`$9$k$+$r7h$a$^$9!#(B
$BG[Ns(B keydef $B$O;HMQ$9$k?7$7$$J8;zNs(B ($BD9$5$O(B MAXFK $B$^$G(B) $B$r4^$_!"(B
$B$=$ND9$5$r(B flen $B$KF~$l$J$1$l$P$J$j$^$;$s!#(B

GETFKEY ioctl $B8F$S=P$7$O;w$?$h$&$KF/$-$^$9$,!"(B
$B$3$l$O(B keynum $B$N8=:_$N@_Dj$rJV$7$^$9!#(B

$B%U%!%s%/%7%g%s%-!<$O<!$N$h$&$KHV9fIU$1$5$l$^$9(B:
.Bd -literal -offset indent
	F1-F12 			key 1 - 12
	Shift F1-F12		key 13 - 24
	Ctrl F1-F12		key 25 - 36
	Ctrl+shift F1-F12	key 37 - 48
	
	Home			key 49
	Up arrow		key 50
	Page Up			key 51
	(keypad) -		key 52
	Left arrow		key 53
	(keypad) 5              key 54
	Right arrow		key 55
	(keypad) +		key 56
	End			key 57
	Down arrow		key 58
	Page down		key 59
	Insert 			key 60
	Delete			key 61

	Right window		key 62
	Left window		key 63
	Menu			key 64
.Ed

.Xr kbdcontrol 1
$B%f!<%F%#%j%F%#$G<B9T;~$K$3$l$i$NCM$rJQ99$9$k$3$H$b$G$-$^$9!#(B
.Pp
.Sh $B:n<T(B
.ie t .An S\(/oren Schmidt Aq sos@FreeBSD.org
.el .An Soren Schmidt Aq sos@FreeBSD.org
.\" ISO-8859 $B=89g$NJ8;z(B(0xe4)$B$KBP=h(B     $B6b$sED(B 1999.02.23
.\" .An Soren Schmidt Aq sos@FreeBSD.org
.\"      ^0xe4
