[BACK]Return to ttykbd.c CVS log [TXT][DIR] Up to [local] / src / usr.bin / mg

Diff for /src/usr.bin/mg/ttykbd.c between version 1.2 and 1.3

version 1.2, 2000/02/26 22:53:16 version 1.3, 2000/02/27 16:10:19
Line 10 
Line 10 
 #include        <term.h>  #include        <term.h>
   
 #ifdef  FKEYS  #ifdef  FKEYS
 #include        "key.h"  
 /*  /*
  * Get keyboard character.  Very simple if you use keymaps and keys files.   * Get keyboard character.  Very simple if you use keymaps and keys files.
  * Bob was right -- the old XKEYS code is not the right solution.   * Bob was right -- the old XKEYS code is not the right solution.
Line 19 
Line 18 
  */   */
   
 char    *keystrings[] = { NULL } ;  char    *keystrings[] = { NULL } ;
   
 int  
 dobindkey(str, func)  
         char *str;  
         char *func;  
 {  
         int i;  
         extern int bindkey(); /* XXX */  
   
         for (i = 0; *str && i < MAXKEY; i++) {  
                 /* XXX - how to convert numbers? */  
                 if (*str != '\\')  
                         key.k_chars[i] = *str;  
                 else {  
                         switch(*++str) {  
                         case 't': case 'T':  
                                 key.k_chars[i] = '\t';  
                                 break;  
                         case 'n': case 'N':  
                                 key.k_chars[i] = '\n';  
                                 break;  
                         case 'r': case 'R':  
                                 key.k_chars[i] = '\r';  
                                 break;  
                         case 'e': case 'E':  
                                 key.k_chars[i] = CCHR('[');  
                                 break;  
                         }  
                 }  
                 str++;  
         }  
         key.k_count = i;  
         return(bindkey(&map_table[0].p_map, func, key.k_chars, key.k_count));  
 }  
 #endif  #endif
   
 /*  /*
Line 64 
Line 29 
   
 ttykeymapinit()  ttykeymapinit()
 {  {
           extern int dobindkey(); /* XXX */
         char *cp;          char *cp;
 #ifdef FKEYS  #ifdef FKEYS
         /* Bind keypad function keys. */          /* Bind keypad function keys. */
         if (key_left)          if (key_left)
                 dobindkey(key_left, "backward-char");                  dobindkey(map_table[0].p_map, "backward-char", key_left);
         if (key_left)  
                 dobindkey(key_left, "backward-char");  
         if (key_right)          if (key_right)
                 dobindkey(key_right, "forward-char");                  dobindkey(map_table[0].p_map, "forward-char", key_right);
         if (key_up)          if (key_up)
                 dobindkey(key_up, "previous-line");                  dobindkey(map_table[0].p_map, "previous-line", key_up);
         if (key_down)          if (key_down)
                 dobindkey(key_down, "next-line");                  dobindkey(map_table[0].p_map, "next-line", key_down);
         if (key_beg)          if (key_beg)
                 dobindkey(key_beg, "beginning-of-line");                  dobindkey(map_table[0].p_map, "beginning-of-line", key_beg);
         if (key_end)          if (key_end)
                 dobindkey(key_end, "end-of-line");                  dobindkey(map_table[0].p_map, "end-of-line", key_end);
         if (key_npage)          if (key_npage)
                 dobindkey(key_npage, "scroll-up");                  dobindkey(map_table[0].p_map, "scroll-up", key_npage);
         if (key_ppage)          if (key_ppage)
                 dobindkey(key_ppage, "scroll-down");                  dobindkey(map_table[0].p_map, "scroll-down", key_ppage);
 #endif  #endif
 #ifndef NO_STARTUP  #ifndef NO_STARTUP
         if (cp = gettermtype()) {          if (cp = gettermtype()) {

Legend:
Removed from v.1.2  
changed lines
  Added in v.1.3