summaryrefslogtreecommitdiff
path: root/actions.go
diff options
context:
space:
mode:
authortjp <tjp@ctrl-c.club>2024-01-05 10:02:07 -0700
committertjp <tjp@ctrl-c.club>2024-01-05 10:02:07 -0700
commita8bfa115fb7186643258d1d654b770c9773bff4a (patch)
tree0077ca05305afc79c453830c4ff25bee086b8a6d /actions.go
parentcccf020a84f7cfe7f17ea94dedb0e5fb89f57c94 (diff)
auto_pager bool to pager string always/auto/never
Diffstat (limited to 'actions.go')
-rw-r--r--actions.go15
1 files changed, 11 insertions, 4 deletions
diff --git a/actions.go b/actions.go
index 08838a8..09e6a07 100644
--- a/actions.go
+++ b/actions.go
@@ -440,20 +440,27 @@ func print(state *BrowserState) error {
out = state.Modal
}
- if state.AutoPager {
+ lessarg := []string{}
+ switch state.Pager {
+ case "auto":
+ lessarg = []string{"-F"}
+ fallthrough
+ case "always":
less, err := exec.LookPath("less")
if err != nil {
return err
}
- cmd := exec.Command(less, "-F")
+ cmd := exec.Command(less, lessarg...)
cmd.Stdin = bytes.NewBuffer(out)
cmd.Stdout = os.Stdout
cmd.Stderr = os.Stderr
return cmd.Run()
+ case "never":
+ _, err := os.Stdout.Write(out)
+ return err
}
- _, err := os.Stdout.Write(out)
- return err
+ return errors.New("invalid 'pager' value in configuration")
}
func Print(state *BrowserState) error {