+ * Get a string from the terminfo database for the current terminal.
+ *
+ * Retrieve the specified terminfo capability and return a string that
+ * can be output to the terminal. The string returned has already been
+ * processed by tputs(), so it is safe to output directly. The return
+ * value of this function is valid until the next call.
+ *
+ * Arguments:
+ *
+ * capability - The name of the terminfo capability (see terminfo(5)).
+ *
+ * Returns a tputs-processed string, or NULL if terminal initialization failed
+ * or the capability wasn't found.
+ */
+
+char *
+get_term_stringcap(char *capability)
+{
+ char *parm;
+
+ initialize_terminfo();
+
+ if (termstatus == -1)
+ return NULL;
+
+ termcbufp = termcbuf;
+
+ parm = tigetstr(capability);
+
+ if (parm == (char *) -1 || parm == NULL) {
+ return NULL;
+ }
+
+ tputs(parm, 1, termbytes);
+
+ *termcbufp = '\0';
+
+ return termcbuf;
+}
+
+/*
+ * Get a parameterized string from the terminfo database for the current
+ * terminal.
+ *
+ * We don't yet have a standardized tparm() that will take a stdarg
+ * argument. Right now we don't want many parameters, so we only
+ * take two. Everything gets passed to tparm() as-is. If we need
+ * a capability with more arguments, we'll just add more later.
+ *
+ * Arguments:
+ *
+ * capability - The name of the terminfo capability (see terminfo(5)).
+ * arg1..argN - Arguments 1-N.
+ *
+ * Returns a tparm and tputs-processed string, or NULL if there was a problem
+ * initialising the terminal or retrieving the capability.