void pr_scaps() { char *retptr; char padbuffer[512]; /* Backspace if not "^H" */ if (verbose) (void) fprintf(trace, "looking at 'bc'\n"); retptr = cconvert(rmpadding(cursor_left, padbuffer, (int *) 0)); if (strcmp("\\b", retptr) != 0) pr_string((char *)0, "bc", (char *)0, cursor_left); /* Newline character (default "\n") */ if (verbose) (void) fprintf(trace, "looking at 'nl'\n"); retptr = cconvert(rmpadding(cursor_down, padbuffer, (int *) 0)); if (strcmp("\\n", retptr) != 0) pr_string((char *)0, "nl", (char *)0, cursor_down); /* Handle "ko" here: Termcap entries for other non-function keys */ pr_ko(); /* Ignore "ma": Arrow key map, used by vi version 2 only */ }
void pr_bcaps() { char *retptr; char padbuffer[512]; if (verbose) (void) fprintf(trace, "looking at 'bs'\n"); retptr = cconvert(rmpadding(cursor_left, padbuffer, (int *) 0)); if (strcmp("\\b", retptr) == 0) pr_boolean((char *)0, "bs", (char *)0, 1); if (verbose) (void) fprintf(trace, "looking at 'pt'\n"); retptr = cconvert(rmpadding(tab, padbuffer, (int *) 0)); if (strcmp("\\t", retptr) == 0) pr_boolean((char *)0, "pt", (char *)0, 1); if (verbose) (void) fprintf(trace, "looking at 'nc'\n"); retptr = cconvert(rmpadding(carriage_return, padbuffer, (int *) 0)); if (strcmp("\\r", retptr) != 0) pr_boolean((char *)0, "nc", (char *)0, 1); if (verbose) (void) fprintf(trace, "looking at 'ns'\n"); if (scroll_forward == NULL) pr_boolean((char *)0, "ns", (char *)0, 1); /* Ignore "xr": Return acts like ce \r \n (Delta Data) */ }
void pr_ncaps() { char padbuffer[512]; int padding; if (verbose) (void) fprintf(trace, "looking at 'ug'\n"); /* Duplicate sg for ug: Number of blank chars left by us or ue */ if (magic_cookie_glitch > -1) pr_number((char *)0, "ug", (char *)0, magic_cookie_glitch); if (verbose) (void) fprintf(trace, "looking at 'dB'\n"); /* Number of millisec of bs delay needed */ (void) rmpadding(cursor_left, padbuffer, &padding); if (padding > 0) pr_number((char *)0, "dB", (char *)0, padding); if (verbose) (void) fprintf(trace, "looking at 'dC'\n"); /* Number of millisec of cr delay needed */ (void) rmpadding(carriage_return, padbuffer, &padding); if (padding > 0) pr_number((char *)0, "dC", (char *)0, padding); if (verbose) (void) fprintf(trace, "looking at 'dF'\n"); /* Number of millisec of ff delay needed */ (void) rmpadding(form_feed, padbuffer, &padding); if (padding > 0) pr_number((char *)0, "dF", (char *)0, padding); if (verbose) (void) fprintf(trace, "looking at 'dN'\n"); /* Number of millisec of nl delay needed */ (void) rmpadding(cursor_down, padbuffer, &padding); if (padding > 0) pr_number((char *)0, "dN", (char *)0, padding); if (verbose) (void) fprintf(trace, "looking at 'dT'\n"); /* Number of millisec of tab delay needed */ (void) rmpadding(tab, padbuffer, &padding); if (padding > 0) pr_number((char *)0, "dT", (char *)0, padding); /* Handle "kn": Number of "other" keys */ setupknko(); pr_kn(); }
char *cexpand(char *str) { char padbuffer[512]; char *retptr; retptr = rmpadding(str, padbuffer, (int *)0); (void) sprintf(ret2buffer, "%s%s", padbuffer, cconvert(retptr)); return (ret2buffer); }
char *addko(char *output, char *input, char *koptr) { char *inptr, *outptr, padbuffer[512]; inptr = tgetstr(input, (char **)0); if (inptr == NULL) return (koptr); outptr = tgetstr(output, (char **)0); if (outptr == NULL) return (koptr); outptr = rmpadding(outptr, padbuffer, (int *) 0); if (strcmp(inptr, outptr) == 0) { *koptr++ = *output++; *koptr++ = *output++; *koptr++ = ','; kncounter++; } return (koptr); }