From f366d58dc1fe51b300167446597750d29687c3c5 Mon Sep 17 00:00:00 2001 From: "Jason A. Donenfeld" Date: Wed, 12 Feb 2014 03:30:10 +0100 Subject: pager: support SYSTEMD_LESS environment variable This allows customization of the arguments used by less. The main motivation is that some folks might not like having --no-init on every invocation of less. --- src/shared/pager.c | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) (limited to 'src/shared/pager.c') diff --git a/src/shared/pager.c b/src/shared/pager.c index 72a29f2285..55b13d6ff6 100644 --- a/src/shared/pager.c +++ b/src/shared/pager.c @@ -84,14 +84,17 @@ int pager_open(bool jump_to_end) { /* In the child start the pager */ if (pager_pid == 0) { + const char* less_opts; dup2(fd[0], STDIN_FILENO); close_pipe(fd); + less_opts = getenv("SYSTEMD_LESS"); + if (!less_opts) + less_opts = "FRSXMK"; if (jump_to_end) - setenv("LESS", "FRSXMK+G", 1); - else - setenv("LESS", "FRSXMK", 1); + less_opts = strappenda(less_opts, " +G"); + setenv("LESS", less_opts, 1); /* Make sure the pager goes away when the parent dies */ if (prctl(PR_SET_PDEATHSIG, SIGTERM) < 0) -- cgit v1.2.3-54-g00ecf