Add terminal type configuration to the Options screen. It allows selecting
a monochrome display after booting into sysinstall, if you have any trouble with the default color scheme. Approved by: jkh MFC after: 2 weeks
This commit is contained in:
parent
4bb69e3542
commit
f3a6406c66
Notes:
svn2git
2020-12-20 02:59:44 +00:00
svn path=/head/; revision=78160
@ -175,6 +175,7 @@
|
||||
#define VAR_USR_SIZE "usrSize"
|
||||
#define VAR_VAR_SIZE "varSize"
|
||||
#define VAR_XF86_CONFIG "_xf86config"
|
||||
#define VAR_TERM "TERM"
|
||||
|
||||
#define DEFAULT_TAPE_BLOCKSIZE "20"
|
||||
|
||||
|
@ -38,6 +38,7 @@
|
||||
#include <ctype.h>
|
||||
|
||||
int fixitTtyWhich(dialogMenuItem *);
|
||||
int termSetType(dialogMenuItem *);
|
||||
|
||||
static char *
|
||||
varCheck(Option opt)
|
||||
@ -124,6 +125,8 @@ static Option Options[] = {
|
||||
OPT_IS_FUNC, mediaSetFTPUserPass, VAR_FTP_USER, varCheck },
|
||||
{ "Editor", "Which text editor to use during installation",
|
||||
OPT_IS_VAR, EDITOR_PROMPT, VAR_EDITOR, varCheck },
|
||||
{ "Terminal", "Set terminal type (TERMCAP)",
|
||||
OPT_IS_FUNC, termSetType, VAR_TERM, varCheck },
|
||||
{ "Tape Blocksize", "Tape media block size in 512 byte blocks",
|
||||
OPT_IS_VAR, TAPE_PROMPT, VAR_TAPE_BLOCKSIZE, varCheck },
|
||||
{ "Extract Detail", "How verbosely to display file name information during extractions",
|
||||
@ -333,3 +336,32 @@ fixitTtyWhich(dialogMenuItem *self)
|
||||
}
|
||||
return DITEM_SUCCESS;
|
||||
}
|
||||
|
||||
/* Select terminal type */
|
||||
int
|
||||
termSetType(dialogMenuItem *self)
|
||||
{
|
||||
char *cp = variable_get(VAR_TERM);
|
||||
|
||||
if (!cp) {
|
||||
msgConfirm("TERMCAP is not set to anything!");
|
||||
return DITEM_FAILURE;
|
||||
}
|
||||
else {
|
||||
if (!strcmp(cp, "ansi"))
|
||||
variable_set2(VAR_TERM, "vt100", 0);
|
||||
else if (!strcmp(cp, "vt100"))
|
||||
variable_set2(VAR_TERM, "cons25w", 0);
|
||||
else if (!strcmp(cp, "cons25w"))
|
||||
variable_set2(VAR_TERM, "cons25", 0);
|
||||
else if (!strcmp(cp, "cons25"))
|
||||
variable_set2(VAR_TERM, "cons25-m", 0);
|
||||
else if (!strcmp(cp, "cons25-m"))
|
||||
variable_set2(VAR_TERM, "xterm", 0);
|
||||
else /* must be "high" - wrap around */
|
||||
variable_set2(VAR_TERM, "ansi", 0);
|
||||
}
|
||||
|
||||
setterm (cp);
|
||||
return DITEM_SUCCESS;
|
||||
}
|
||||
|
@ -175,6 +175,7 @@
|
||||
#define VAR_USR_SIZE "usrSize"
|
||||
#define VAR_VAR_SIZE "varSize"
|
||||
#define VAR_XF86_CONFIG "_xf86config"
|
||||
#define VAR_TERM "TERM"
|
||||
|
||||
#define DEFAULT_TAPE_BLOCKSIZE "20"
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user