Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ setkey(C) — OpenDesktop 1.0.0y

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

keyboard(HW)

SETKEY(C)


     SETKEY(C)                                  UNIX System V



     Name
          setkey - assigns the function keys


     Syntax
          setkey keynum string


     Description
          The setkey command assigns the given ANSI string to  be  the
          output  of  the  computer function key given by keynum.  For
          example, the command:

               setkey 1 date

          assigns the string "date" as the output of function  key  1.
          The string can contain control characters, such as a newline
          character,  and  should  be  quoted  to  protect   it   from
          processing by the shell.  For example, the command:

               setkey 2 "pwd ; lc\n"

          assigns the command sequence "pwd ; lc" to function  key  2.
          Notice  how  the newline character is embedded in the quoted
          string.  This causes the commands to  be  carried  out  when
          function  key  2  is pressed. Otherwise, the Enter key would
          have to be pressed after pressing the function  key,  as  in
          the previous example.

          setkey translates ^ into  ^^,  which,  when  passed  to  the
          screen  driver, is interpreted as a right angle bracket (>),
          or greater than key.


     Notes
          setkey works only on the console keyboard.

          The string mapping table is  where  the  function  keys  are
          defined.   It  is  an array of 512 bytes (typedef strmap_t )
          where null terminated strings can be  put  to  redefine  the
          function  keys. The first null terminated string is assigned
          to the first string key, the second  to  the  second  string
          key,  and  so  on.   There  is  one string mapping table per
          multiscreen.

          Although the size of the setkey string mapping table is  512
          bytes,  there  is  a  limit  of  30  characters  that can be
          assigned to any individual function key.

          Assigning more than 512 characters  to  the  string  mapping
          table  causes the function key buffer to overflow. When this
          happens,  the  sequences  sent  by  the   arrow   keys   are
          overwritten,  effectively disabling them.  Once the function
          key buffer overflows, the only way to enable the arrow  keys
          is to reboot the system.

          The table below lists the  keynum values  for  the  function
          keys:

          ___________________________________________________________
          |     Function key   keynum |      Function key     keynum |
          |                           |                              |
          |___________________________|______________________________|
          |     F1             1      |      Ctrl-F10         34     |
          |     F2             2      |      Ctrl-F11         35     |
          |     F3             3      |      Ctrl-F12         36     |
          |     F4             4      |      Ctrl-Shift-F1    37     |
          |     F5             5      |      Ctrl-Shift-F2    38     |
          |     F6             6      |      Ctrl-Shift-F3    39     |
          |     F7             7      |      Ctrl-Shift-F4    40     |
          |     F8             8      |      Ctrl-Shift-F5    41     |
          |     F9             9      |      Ctrl-Shift-F6    42     |
          |     F10            10     |      Ctrl-Shift-F7    43     |
          |     F11            11     |      Ctrl-Shift-F8    44     |
          |     F12            12     |      Ctrl-Shift-F9    45     |
          |     Shift-F1       13     |      Ctrl-Shift-F10   46     |
          |     Shift-F2       14     |      Ctrl-Shift-F11   47     |
          |     Shift-F3       15     |      Ctrl-Shift-F12   48     |
          |     Shift-F4       16     |______________________________|
          |     Shift-F5       17     | Numeric Key-Pad       keynum |
          |     Shift-F6       18     |______________________________|
          |     Shift-F7       19     |            7          49     |
          |     Shift-F8       20     |            8          50     |
          |     Shift-F9       21     |            9          51     |
          |     Shift-F10      22     |            -          52     |
          |     Shift-F11      23     |            4          53     |
          |     Shift-F12      24     |            5          54     |
          |     Ctrl-F1        25     |            6          55     |
          |     Ctrl-F2        26     |            +          56     |
          |     Ctrl-F3        27     |            1          57     |
          |     Ctrl-F4        28     |            2          58     |
          |     Ctrl-F5        29     |            3          59     |
          |     Ctrl-F6        30     |            0          60     |
          |     Ctrl-F7        31     |                              |
          |     Ctrl-F8        32     |                              |
          |     Ctrl-F9        33     |                              |
          |                           |                              |
          |___________________________|______________________________|

          For a table of the escape sequences, refer to keyboard(HW).


     Files
          /bin/setkey


     See Also
          keyboard(HW)


     (printed 8/25/89)                                  SETKEY(C)

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026