-
-int stringlength (int str_ptr)
-{
- return (str_start[str_ptr + 1] - str_start[str_ptr]) + 2;
-}
-
-char * add_string (char *s, char * str_string)
-{
- int n;
-
- n = strlen(str_string);
- memcpy(s, &str_string, n);
- s += n;
- strcpy(s, "\r\n");
- s += 2;
-
- return s;
-}
-
-int addextrahelp = 1;
-
-// make one long \r\n separated string out of help lines
-// str_pool is packed_ASCII_code *
-
-char * make_up_help_string (int nhelplines)
-{
- char * helpstring, *s;
- int k, nlen = 0;
-
-// get length of help for this specific message
- for (k = nhelplines - 1; k >= 0; k--)
- {
- nlen += strlen(help_line[k]);
- }
-
- nlen += 2; // for blank line separator: "\r\n"
-
- if (addextrahelp)
- {
- nlen += stringlength(265);
- nlen += stringlength(266);
- nlen += stringlength(267);
-
- if (base_ptr > 0)
- nlen += stringlength(268);
-
- if (deletions_allowed)
- nlen += stringlength(269);
-
- nlen += stringlength(270);
- }
-
- helpstring = (char *) malloc(nlen + 1); // +1 = '\0'
- s = helpstring;
-
- for (k = nhelplines-1; k >= 0; k--)
- {
- s = add_string(s, help_line[k]);
- }
-
- if (addextrahelp)
- {
- strcpy(s, "\r\n");
- s += 2;
- s = add_string(s, "Type <return> to proceed, S to scroll future error messages,");
- s = add_string(s, "R to run without stopping, Q to run quietly,");
- s = add_string(s, "I to insert something, ");
-
- if (base_ptr > 0)
- s = add_string(s, "E to edit your file, ");
-
- if (deletions_allowed)
- s = add_string(s, "1 or ... or 9 to ignore the next 1 to 9 tokens of input,");
-
- s = add_string(s, "H for help, X to quit.");
- }
-
- return helpstring;
-}
-
-char * make_up_query_string (int promptstr)
-{
- char *querystr;
- int nstart, nnext, n;
- char *s;
-
- nstart = str_start[ promptstr];
- nnext = str_start[ promptstr + 1];
- n = nnext - nstart;
- querystr = (char *) malloc(n + 1);
- s = querystr;
- memcpy(s, &str_pool[nstart], n);
- s += n;
- *s = '\0';
-
- return querystr;
-}
-
-// abort_flag set if input_line / ConsoleInput returns non-zero
-// should set interrupt instead ???
-// called from tex0.c, tex2.c, tex3.c