summaryrefslogtreecommitdiffstats
path: root/lib/libmytinfo/tcapconv.c
diff options
context:
space:
mode:
Diffstat (limited to 'lib/libmytinfo/tcapconv.c')
-rw-r--r--lib/libmytinfo/tcapconv.c194
1 files changed, 0 insertions, 194 deletions
diff --git a/lib/libmytinfo/tcapconv.c b/lib/libmytinfo/tcapconv.c
deleted file mode 100644
index 3cd4d36..0000000
--- a/lib/libmytinfo/tcapconv.c
+++ /dev/null
@@ -1,194 +0,0 @@
-/*
- * tcapconv.c
- *
- * By Ross Ridge
- * Public Domain
- * 92/02/01 07:30:20
- *
- */
-
-#include "defs.h"
-#define SINGLE
-#include <term.h>
-
-#ifdef USE_SCCS_IDS
-static const char SCCSid[] = "@(#) mytinfo tcapconv.c 3.2 92/02/01 public domain, By Ross Ridge";
-#endif
-
-extern char **_sstrcodes[], **_sstrnames[];
-
-static char *C_CR = "\r";
-static char *C_LF = "\n";
-static char *C_BS = "\b";
-/* static char *C_FF = "\f"; */
-static char *C_HT = "\t";
-/* static char *C_VT = "\013"; */
-/* static char *C_NL = "\r\n"; */
-
-#define DEF(s) ((s) != (char *) -1 && (s) != NULL)
-#define NOTSET(s) ((s) == (char *) -1)
-
-/*
- * This routine fills in caps that either had defaults under termcap or
- * can be manufactured from obsolete termcap capabilities.
- */
-
-void
-_tcapdefault() {
- char buf[MAX_LINE * 2 + 2];
- int set_scroll_forward_to_lf;
-
- if (NOTSET(carriage_return)) {
- if (carriage_return_delay > 0) {
- sprintf(buf, "%s$<%d>", C_CR, carriage_return_delay);
- carriage_return = _addstr(buf);
- } else
- carriage_return = _addstr(C_CR);
- }
- if (NOTSET(cursor_left)) {
- if (backspace_delay > 0) {
- sprintf(buf, "%s$<%d>", C_BS, backspace_delay);
- cursor_left = _addstr(buf);
- } else if (backspaces_with_bs == 1)
- cursor_left = _addstr(C_BS);
- else if (DEF(backspace_if_not_bs))
- cursor_left = _addstr(backspace_if_not_bs);
- }
-/* vi doesn't use "do", but it does seems to use nl (or '\n') instead */
- if (NOTSET(cursor_down)) {
- if (DEF(linefeed_if_not_lf))
- cursor_down = _addstr(linefeed_if_not_lf);
- else if (linefeed_is_newline != 1) {
- if (new_line_delay > 0) {
- sprintf(buf, "%s$<%d>", C_LF, new_line_delay);
- cursor_down = _addstr(buf);
- } else
- cursor_down = _addstr(C_LF);
- }
- }
- set_scroll_forward_to_lf = 0;
- if (NOTSET(scroll_forward) && crt_without_scrolling != 1) {
- set_scroll_forward_to_lf = 1;
- if (DEF(linefeed_if_not_lf))
- scroll_forward = _addstr(linefeed_if_not_lf);
- else if (linefeed_is_newline != 1) {
- if (new_line_delay > 0) {
- sprintf(buf, "%s$<%d>", C_LF, new_line_delay);
- scroll_forward = _addstr(buf);
- } else
- scroll_forward = _addstr(C_LF);
- }
- }
- if (NOTSET(newline)) {
- if (linefeed_is_newline == 1) {
- if (new_line_delay > 0) {
- sprintf(buf, "%s$<%d>", C_LF, new_line_delay);
- newline = _addstr(buf);
- } else
- newline = _addstr(C_LF);
- } else if (DEF(carriage_return) && carriage_return_delay <= 0) {
- if (set_scroll_forward_to_lf) {
- strncpy(buf, carriage_return, MAX_LINE-2);
- buf[MAX_LINE-1] = '\0';
- strncat(buf, scroll_forward, MAX_LINE-strlen(buf)-1);
- } else if (DEF(linefeed_if_not_lf)) {
- strncpy(buf, carriage_return, MAX_LINE-2);
- buf[MAX_LINE-1] = '\0';
- strncat(buf, linefeed_if_not_lf, MAX_LINE-strlen(buf)-1);
- }
- else if (new_line_delay > 0)
- sprintf(buf, "%s%s$<%d>", carriage_return, C_LF, new_line_delay);
- else {
- strncpy(buf, carriage_return, MAX_LINE-2);
- buf[MAX_LINE-1] = '\0';
- strncat(buf, C_LF, MAX_LINE-strlen(buf)-1);
- }
- buf[MAX_LINE-1] = '\0';
- newline = _addstr(buf);
- }
- }
-
-/*
- * We wait until know to decide if we've got a working cr because even
- * one that doesn't work can be used for newline. Unfortunately the
- * space allocated for it is wasted.
- */
- if (return_does_clr_eol == 1 || no_correctly_working_cr == 1)
- carriage_return = NULL;
-
-/*
- * supposedly most termcap entries have ta now and '\t' is no longer a
- * default, but it doesn't seem to be true...
- */
- if (NOTSET(tab)) {
- if (horizontal_tab_delay > 0) {
- sprintf(buf, "%s$<%d>", C_HT, horizontal_tab_delay);
- tab = _addstr(buf);
- } else
- tab = _addstr(C_HT);
- }
-#if 0
-/* probably not needed and might confuse some programmes */
- if (NOTSET(form_feed)) {
- if (form_feed_delay > 0) {
- sprintf(buf, "%s$<%d>", C_FF, form_feed_delay);
- form_feed = _addstr(buf);
- } else
- form_feed = _addstr(C_FF);
- }
-#endif
- if (init_tabs == -1 && has_hardware_tabs == 1)
- init_tabs = 8;
-
- if (NOTSET(key_backspace))
- key_backspace = _addstr(C_BS);
- if (NOTSET(key_left))
- key_left = _addstr(C_BS);
- if (NOTSET(key_down))
- key_down = _addstr(C_LF);
-}
-
-void
-_tcapconv() {
- char buf[MAX_LINE+1];
-
- if (GNU_tab_width > 0 && init_tabs == -1)
- init_tabs = GNU_tab_width;
-
- if (GNU_has_meta_key == 1 && has_meta_key == -1)
- has_meta_key = 1;
-
-/*
- * this is some what a kludge, but should work unless someone breaks
- * conventions.
- */
- if (DEF(other_non_function_keys)) {
- register char *s;
- static char *o;
- static char name[MAX_NAME] = "k";
- char *str;
- int ind;
-
- s = strcpy(buf, other_non_function_keys);
- while(*s != '\0') {
- o = s;
- while(*s != ',' && *s != '\0')
- s++;
- if (*s != '\0')
- *s++ = '\0';
- ind = _findstrcode(o);
- if (ind == -1)
- continue;
- str = _term_buf.strs[ind];
- if (!DEF(str))
- continue;
- strncpy(name + 1, strnames[ind], MAX_NAME - 2);
- ind = _findstrname(name);
- if (ind == -1)
- continue;
- if (!NOTSET(_term_buf.strs[ind]))
- continue;
- _term_buf.strs[ind] = _addstr(str);
- }
- }
-}
OpenPOWER on IntegriCloud