conf: TERM can now be set in footrc

This commit is contained in:
Daniel Eklöf 2019-07-18 14:29:40 +02:00
parent d5157c15b0
commit 7e36027237
No known key found for this signature in database
GPG key ID: 5BBD4992C116573F
3 changed files with 11 additions and 4 deletions

View file

@ -85,9 +85,9 @@ static bool
parse_section_main(const char *key, const char *value, struct config *conf,
const char *path, unsigned lineno)
{
if (strcmp(key, "font") == 0) {
free(conf->font);
conf->font = strdup(value);
if (strcmp(key, "term") == 0) {
free(conf->term);
conf->term = strdup(value);
}
else if (strcmp(key, "shell") == 0) {
@ -95,6 +95,11 @@ parse_section_main(const char *key, const char *value, struct config *conf,
conf->shell = strdup(value);
}
else if (strcmp(key, "font") == 0) {
free(conf->font);
conf->font = strdup(value);
}
else {
LOG_WARN("%s:%u: invalid key: %s", path, lineno, key);
return false;
@ -211,6 +216,7 @@ config_load(struct config *conf)
bool ret = false;
*conf = (struct config) {
.term = strdup("foot"),
.shell = get_shell(),
.font = strdup("monospace"),
};

View file

@ -3,6 +3,7 @@
#include <stdbool.h>
struct config {
char *term;
char *shell;
char *font;
};

2
main.c
View file

@ -312,7 +312,7 @@ main(int argc, char *const *argv)
argv += optind;
setlocale(LC_ALL, "");
setenv("TERM", "foot", 1); /* TODO: configurable */
setenv("TERM", conf.term, 1);
int repeat_pipe_fds[2] = {-1, -1};
if (pipe2(repeat_pipe_fds, O_CLOEXEC) == -1) {