home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Professional / OS2PRO194.ISO / os2 / editor / elvis / termcap.doc < prev    next >
Text File  |  1994-01-30  |  6KB  |  199 lines

  1.  
  2.  
  3.  
  4.  
  5.  
  6.  
  7. _1_0.  _T_E_R_M_C_A_P
  8.  
  9.      Elvis uses fairly  standard  termcap  fields  for  most
  10. things.   I  invented  the cursor shape names but other than
  11. that there should be few surprises.
  12.  
  13. _R_e_q_u_i_r_e_d _n_u_m_e_r_i_c _f_i_e_l_d_s
  14.  
  15.         :co#:   number of columns on the screen (chars per line)
  16.         :li#:   number of lines on the screen
  17.  
  18.  
  19. _R_e_q_u_i_r_e_d _s_t_r_i_n_g _f_i_e_l_d_s
  20.  
  21.         :ce=:   clear to end-of-line
  22.         :cl=:   home the cursor & clear the screen
  23.         :cm=:   move the cursor to a given row/column
  24.         :up=:   move the cursor up one line
  25.  
  26.  
  27. _B_o_o_l_e_a_n _f_i_e_l_d_s
  28.  
  29.         :am:    auto margins - wrap when char is written in last column?
  30.         :xn:    brain-damaged auto margins - newline ignored after wrap
  31.         :pt:    physical tabs?
  32.  
  33.  
  34. _O_p_t_i_o_n_a_l _s_t_r_i_n_g _f_i_e_l_d_s
  35.  
  36.         :al=:   insert a blank row on the screen
  37.         :dl=:   delete a row from the screen
  38.         :cd=:   clear to end of display
  39.         :ei=:   end insert mode
  40.         :ic=:   insert a blank character
  41.         :im=:   start insert mode
  42.         :dc=:   delete a character
  43.         :sr=:   scroll reverse (insert row at top of screen)
  44.         :vb=:   visible bell
  45.         :ti=:   terminal initialization string, to start full-screen mode
  46.         :te=:   terminal termination, to end full-screen mode
  47.  
  48.  
  49. _O_p_t_i_o_n_a_l _s_t_r_i_n_g_s _r_e_c_e_i_v_e_d _f_r_o_m _t_h_e _k_e_y_b_o_a_r_d
  50.  
  51.         :kd=:   sequence sent by the <down arrow> key
  52.         :kl=:   sequence sent by the <left arrow> key
  53.         :kr=:   sequence sent by the <right arrow> key
  54.         :ku=:   sequence sent by the <up arrow> key
  55.         :kP=:   sequence sent by the <PgUp> key
  56.         :kN=:   sequence sent by the <PgDn> key
  57.         :kh=:   sequence sent by the <Home> key
  58.         :kH=:   sequence sent by the <End> key
  59.         :kI=:   sequence sent by the <Insert> key
  60.  
  61.  
  62.  
  63.  
  64.                        June 13, 1992
  65.  
  66.  
  67.  
  68.  
  69.  
  70. 10-2                      TERMCAP                       10-2
  71.  
  72.  
  73.      Originally, termcap  didn't  have  any  names  for  the
  74. <PgUp>,  <PgDn>, <Home>, and <End> keys.  Although the capa-
  75. bility names shown in the table above are the  most  common,
  76. they  are  _n_o_t  universal.  SCO Xenix uses :PU=:PD=:HM=:EN=:
  77. for those keys.  Also, if the four arrow keys happen  to  be
  78. part  of  a  3x3 keypad, then the five non-arrow keys may be
  79. named :K1=: through :K5=:, so an  IBM  PC  keyboard  may  be
  80. described  using those names instead.  Elvis can find any of
  81. these names.
  82.  
  83. _O_p_t_i_o_n_a_l _s_t_r_i_n_g_s _s_e_n_t _b_y _f_u_n_c_t_i_o_n _k_e_y_s
  84.  
  85.         :k1=:...:k9=:k0=:       codes sent by <F1> through <F10> keys
  86.         :s1=:...:s9=:s0=:       codes sent by <Shift F1> ... <Shift F10>
  87.         :c1=:...:c9=:c0=:       codes sent by <Ctrl F1> ... <Ctrl F10>
  88.         :a1=:...:a9=:a0=:       codes sent by <Alt F1> ... <Alt F10>
  89.  
  90.  
  91.      Note that :k0=: is used  to  describe  the  <F10>  key.
  92. Some  termcap  documents  recommend  :ka=: or even :k;=: for
  93. describing the <F10> key, but Elvis doesn't support that.
  94.  
  95.      Also, the :s1=:..., :c1=:..., and  :a1=:...  codes  are
  96. very  non-standard.   The  terminfo  library doesn't support
  97. them.
  98.  
  99. _O_p_t_i_o_n_a_l _f_i_e_l_d_s _t_h_a_t _d_e_s_c_r_i_b_e _c_h_a_r_a_c_t_e_r _a_t_t_r_i_b_u_t_e_s
  100.  
  101.         :so=:se=:       start/end standout mode (We don't care about :sg#:)
  102.         :us=:ue=:       start/end underlined mode
  103.         :md=:me=:       start/end boldface mode
  104.         :as=:ae=:       start/end alternate character set (italics)
  105.         :ug#:           visible gap left by :us=:ue=:md=:me=:as=:ae=:
  106.  
  107.  
  108. _O_p_t_i_o_n_a_l _f_i_e_l_d_s _t_h_a_t _a_f_f_e_c_t _t_h_e _c_u_r_s_o_r'_s _s_h_a_p_e
  109.  
  110.      The :cQ=: string is used by  Elvis  immediately  before
  111. exiting  to  undo  the  effects  of  the  other cursor shape
  112. strings.  If :cQ=: is not given, then all other cursor shape
  113. strings are ignored.
  114.  
  115.         :cQ=:   normal cursor
  116.         :cX=:   cursor used for reading EX command
  117.         :cV=:   cursor used for reading VI commands
  118.         :cI=:   cursor used during VI input mode
  119.         :cR=:   cursor used during VI replace mode
  120.  
  121.  
  122.      If the capabilities above aren't given, then Elvis will
  123. try to use the following values instead.
  124.  
  125.         :ve=:   normal cursor, used as :cQ=:cX=:cI=:cR=:
  126.         :vs=:   gaudy cursor, used as :cV=:
  127.  
  128.  
  129.  
  130.                        June 13, 1992
  131.  
  132.  
  133.  
  134.  
  135.  
  136. 10-3                      TERMCAP                       10-3
  137.  
  138.  
  139. _A_n _e_x_a_m_p_l_e
  140.  
  141.      Here's the termcap entry I use on my  Minix-ST  system.
  142. Some  of  the  fields  in  it have nothing to do with Elvis.
  143. Some can only work on my system; I have modified my kernel's
  144. screen driver.
  145.  
  146.  
  147. mx|minix|minixst|ansi:\
  148.         :is=\E[0~:co#80:li#25:bs:pt:\
  149.         :cm=\E[%i%d;%dH:up=\E[A:do=^J:nd=\E[C:sr=\EM:\
  150.         :cd=\E[J:ce=\E[K:cl=\E[H\E[J:\
  151.         :al=\E[L:dl=\E[M:ic=\E[@:dc=\E[P:im=:ei=:\
  152.         :so=\E[7m:se=\E[m:us=\E[4m:ue=\E[m:\
  153.         :md=\E[1m:me=\E[m:as=\E[1;3m:ae=\E[m:\
  154.         :ku=\E[A:kd=\E[B:kr=\E[C:kl=\E[D:\
  155.         :k1=\E[1~:k2=\E[2~:k3=\E[3~:k4=\E[4~:k5=\E[5~:\
  156.         :k6=\E[6~:k7=\E[17~:k8=\E[18~:k9=\E[19~:k0=\E[20~:\
  157.         :kU=\E[36~:kQ=\E[32~:kH=\E[28~:\
  158.         :GV=3:GH=D:G1=?:G2=Z:G3=@:G4=Y:GC=E:GL=4:GR=C:GU=A:GD=B:\
  159.         :cQ=\E[k:cX=\E[2;0k:cV=\E[16;0k:cI=\E[k:cR=\E[16;20k:
  160.  
  161.  
  162.  
  163.  
  164.  
  165.  
  166.  
  167.  
  168.  
  169.  
  170.  
  171.  
  172.  
  173.  
  174.  
  175.  
  176.  
  177.  
  178.  
  179.  
  180.  
  181.  
  182.  
  183.  
  184.  
  185.  
  186.  
  187.  
  188.  
  189.  
  190.  
  191.  
  192.  
  193.  
  194.  
  195.  
  196.                        June 13, 1992
  197.  
  198.  
  199.