[0m


XARMKEYMAP(1)	    UNIX Programmer's Manual	    XARMKEYMAP(1)



[1mNAME
     [0mxarmkeymap - keyboard map file generator for Xarm

[1mSYNOPSIS
     xarmkeymap [0m[ [1m-v [0m] [ [1m-q [0m] [ [1m-kfile [0m_o_u_t_p_u_t _f_i_l_e ] [ _i_n_p_u_t _f_i_l_e
     ]

[1mDESCRIPTION
     [0m_X_a_r_m_k_e_y_m_a_p is a utility program which will generate a key-
     board mapping file for use by _X_a_r_m(1).

     The output is a binary file which can be used as an argument
     to the [1m-kfile [0moption to _X_a_r_m(1).

     The input to _x_a_r_m_k_e_y_m_a_p is a text file, and so can be read
     using any editor.	The output contains binary data, however
     the indentification fields can be extracted using
     _s_t_r_i_n_g_s(1).  This will display the file header, the name of
     the keyboard description, a drawing number (of an Acorn
     specification which describes the keyboard) and finally the
     file trailer - a copyright message.

[1mOPTIONS
     -v   [0mVerbose output - the program outputs a few messages
	  about what it is doing.

     [1m-q   [0mQuiet output - no error messages are output.	The only
	  indication of success is the program return code.

     [1m-kfile [0m_o_u_t_p_u_t
	  Specifies the name of the output file.  The name may
	  contain a %_d escape which is replaced by the keyboard
	  id (from the input file).  Because _s_p_r_i_n_t_f(3) is used
	  to produce the output file name other numeric escapes
	  may be used - see the documentation of _s_p_r_i_n_t_f.  No
	  checks are made to ensure that the argument to [1m-kfile
	  [0mcontains a sensible escape sequence.	Use of invalid
	  (non-numeric) escape sequences will cause the program
	  to crash.

[1mINPUT FORMAT
     [0mInput to _x_a_r_m_k_e_y_m_a_p consists of lines of text each of which
     may be a blank line, a tagged parameter or a key definition.
     All lines may also contain comments, a comment starts with
     the first [1m# [0mcharacter in the line and continues to the end
     of the line.  Blank lines (including lines which consist
     solely of space or tab characters and comments) are ignored.
     Tagged parameters consist of the parameter name, terminated
     with a [1m: [0mcharacter, white space (space or tab characters)
     then the value of the parameter - all the remaining charac-
     ters up to the end of the line or the start of a comment.
     Space characters are included in the value.  The following



Printed 31/1/92     Revision 1.1 of 19/04/90			1






XARMKEYMAP(1)	    UNIX Programmer's Manual	    XARMKEYMAP(1)



     tags are recognised:-

     [1mID:  [0mThe value is a (decimal) number giving the keyboard id
	  to which this description applies.  This tag must occur
	  in the file.

     [1mNAME:
	  [0mThe name of the keyboard.  Normally the name of a coun-
	  try for which the keyboard definition is intended.  The
	  first fifteen characters of the value are stored in the
	  output file.

     [1mDRAWING:
	  [0mA 14 character drawing number with format [1mXXXX,XXX/Yy-
	  Ii [0mwith these characters replaced as follows:-

	       X    A digit (0-9)
	       ,    A comma
	       /    A forwards slash
	       Y    A capital letter (A-Z)
	       y    A capital letter or a space
	       -    A hyphen
	       I    A digit or a capital letter
	       i    A digit, captial letter or space

     If the [1mNAME: [0mor [1mDRAWING: [0mparameters are not specified the
     relevant fields of the output are replaced by [1m<undefined>[0m.
     The [1mID: [0mfield must be given, but it is only used when gen-
     erating the output file name from the [1m-kfile [0mparameter.

     All other lines of the file are interpreted as key defini-
     tions.  These have the format:-

     [shift]   key  keysym {keysym} [XTestCommandKey]

     Items enclosed in [1m[] [0mare optional.  Items enclosed in [1m{} [0mare
     optional and may be repeated.  The _s_h_i_f_t item, if given,
     specifies that the key is a standard X modifier.  It must be
     one of [1mShift Lock Control Mod1 Mod2 Mod3 [0mor [1mMod5[0m.	The
     _k_e_y_s_y_m items specify up to four keysyms which are mapped to
     the key.  The keysyms are interpreted exactly as in the
     [1mChangeKeyboardMapping [0mprotocol request.  A single keysym has
     the same format as a (valid) argument to the function
     _X_S_t_r_i_n_g_T_o_K_e_y_s_y_m(3X11).  The value _N_o_S_y_m_b_o_l may also be used.

     The optional [1mXTestCommandKey [0margument may be appended to one
     definition.  It indicates that this key is to be used for
     the [1mXTESTEXT1 [0minput synthesis extension as the command key.

     The _k_e_y item specifies the key ([1mKeyCode[0m) to be defined.  It
     must either be an A series keyboard key position or a scan
     row/column digit pair identifying the keyboard.  The easiest



Printed 31/1/92     Revision 1.1 of 19/04/90			2






XARMKEYMAP(1)	    UNIX Programmer's Manual	    XARMKEYMAP(1)



     way to find the valid key positions is to examine the file
     /_u_s_r/_l_i_b/_X_1_1/_X_K_e_y_b_o_a_r_d/_U_K._k_e_y which defines the key posi-
     tions for the UK national variant of the A series keyboard.
     There are 112 valid key codes, in the range 8-119
     (inclusive).  Each code is obtained by adding 8 (to leave
     space for the mouse buttons) to the hex value [1mRC [0mwhere [1mR [0mis
     the scan row (0-6) and [1mC [0mis the scan column (0-F).  Key
     positions relate directly to the position of the key on the
     keyboard.	A valid key position has the format [1mXn [0mor [1mXnx
     [0mwhere [1mX [0mis a capital letter from the set A, B, C, D, E, F, [1mn
     [0mis a number in the range 1-22 and [1mx [0mis one of a or b.  (This
     latter form is used to name key positions which change with
     national variants).  All the valid key positions are con-
     tained in /_u_s_r/_l_i_b/_X_1_1/_X_K_e_y_b_o_a_r_d/_U_K._k_e_y.  The initial letter
     is the row of the keyboard, starting at the bottom (space
     bar row) with A and going up to the function keys (F).  The
     number is a count of the key position from the leftmost key
     on the keyboard (1).

[1mFILES
     [0m/usr/lib/X11/XKeyboard/KB%d - files used by the server

[1mSEE ALSO
     [0mXarm(1)

[1mAUTHORS
     [0mJB, Acorn Computers Ltd




























Printed 31/1/92     Revision 1.1 of 19/04/90			3



[0m