mirror of
https://github.com/eth-p/bat-extras.git
synced 2025-02-12 15:19:12 +01:00
batpipe: Add BATPIPE_TERM_WIDTH
This commit is contained in:
parent
998e2ff1a9
commit
ea604457ea
@ -17,6 +17,14 @@ Like [lesspipe](https://github.com/wofr06/lesspipe), `batpipe` is designed to wo
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
## Environment
|
||||||
|
|
||||||
|
| Variable | Description |
|
||||||
|
| -------------------- | ------------------------------------------------------------ |
|
||||||
|
| `BATPIPE_TERM_WIDTH` | Sets the terminal width provided to `bat`. If this variable starts with a hyphen (`-`), the number provided will be relative to the detected terminal size. |
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
## Built-in Viewers
|
## Built-in Viewers
|
||||||
|
|
||||||
| Files | Program |
|
| Files | Program |
|
||||||
@ -51,7 +59,7 @@ The `viewer_${viewer}_supports` function is called to determine if the external
|
|||||||
|
|
||||||
batpipe_header [pattern] [...] -- Print a viewer header line.
|
batpipe_header [pattern] [...] -- Print a viewer header line.
|
||||||
batpipe_subheader [pattern] [...] -- Print a viewer subheader line.
|
batpipe_subheader [pattern] [...] -- Print a viewer subheader line.
|
||||||
|
|
||||||
strip_trailing_slashes [path] -- Strips trailing slashes from a path.
|
strip_trailing_slashes [path] -- Strips trailing slashes from a path.
|
||||||
|
|
||||||
|
|
||||||
|
@ -115,9 +115,17 @@ BATPIPE_INSIDE_LESS=false
|
|||||||
BATPIPE_INSIDE_BAT=false
|
BATPIPE_INSIDE_BAT=false
|
||||||
TERM_WIDTH="$(term_width)"
|
TERM_WIDTH="$(term_width)"
|
||||||
|
|
||||||
|
if [[ -n "${BATPIPE_TERM_WIDTH:-}" ]]; then
|
||||||
|
if [[ "${BATPIPE_TERM_WIDTH:0:1}" = "-" ]]; then
|
||||||
|
TERM_WIDTH=$((TERM_WIDTH + BATPIPE_TERM_WIDTH)) || true
|
||||||
|
else
|
||||||
|
TERM_WIDTH="$BATPIPE_TERM_WIDTH"
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
BATPIPE_PARENT_EXECUTABLE_PID="$PPID"
|
BATPIPE_PARENT_EXECUTABLE_PID="$PPID"
|
||||||
for i in 1 2 3; do
|
for i in 1 2 3; do
|
||||||
BATPIPE_PARENT_EXECUTABLE="$(parent_executable "$BATPIPE_PARENT_EXECUTABLE_PID")"
|
BATPIPE_PARENT_EXECUTABLE="${BATPIPE_DEBUG_PARENT_EXECUTABLE:-$(parent_executable "$BATPIPE_PARENT_EXECUTABLE_PID")}"
|
||||||
BATPIPE_PARENT_EXECUTABLE_BASENAME="$(basename -- "${BATPIPE_PARENT_EXECUTABLE}" | cut -d' ' -f1)"
|
BATPIPE_PARENT_EXECUTABLE_BASENAME="$(basename -- "${BATPIPE_PARENT_EXECUTABLE}" | cut -d' ' -f1)"
|
||||||
BATPIPE_PARENT_EXECUTABLE_PID="$(parent_executable_pid "$BATPIPE_PARENT_EXECUTABLE_PID")"
|
BATPIPE_PARENT_EXECUTABLE_PID="$(parent_executable_pid "$BATPIPE_PARENT_EXECUTABLE_PID")"
|
||||||
|
|
||||||
|
@ -0,0 +1,26 @@
|
|||||||
|
[38;5;238m───────┬────────────────────────────────[0m
|
||||||
|
[38;5;238m│ [0mFile: [1mfile.txt[0m
|
||||||
|
[38;5;238m───────┼────────────────────────────────[0m
|
||||||
|
[38;5;238m 1[0m [38;5;238m│[0m [38;5;231mcat[0m
|
||||||
|
[38;5;238m 2[0m [38;5;238m│[0m [38;5;231mdog[0m
|
||||||
|
[38;5;238m 3[0m [38;5;238m│[0m [38;5;231mcar[0m
|
||||||
|
[38;5;238m 4[0m [38;5;238m│[0m [38;5;231mfrog[0m
|
||||||
|
[38;5;238m 5[0m [38;5;238m│[0m [38;5;231mfox[0m
|
||||||
|
[38;5;238m 6[0m [38;5;238m│[0m [38;5;231mclocks[0m
|
||||||
|
[38;5;238m 7[0m [38;5;238m│[0m [38;5;231mbash[0m
|
||||||
|
[38;5;238m 8[0m [38;5;238m│[0m [38;5;231m$300[0m
|
||||||
|
[38;5;238m 9[0m [38;5;238m│[0m [38;5;231m^$!@[0m
|
||||||
|
[38;5;238m───────┴────────────────────────────────[0m
|
||||||
|
[38;5;238m───────┬────────────────────────────────────────────────────[0m
|
||||||
|
[38;5;238m│ [0mFile: [1mfile.txt[0m
|
||||||
|
[38;5;238m───────┼────────────────────────────────────────────────────[0m
|
||||||
|
[38;5;238m 1[0m [38;5;238m│[0m [38;5;231mcat[0m
|
||||||
|
[38;5;238m 2[0m [38;5;238m│[0m [38;5;231mdog[0m
|
||||||
|
[38;5;238m 3[0m [38;5;238m│[0m [38;5;231mcar[0m
|
||||||
|
[38;5;238m 4[0m [38;5;238m│[0m [38;5;231mfrog[0m
|
||||||
|
[38;5;238m 5[0m [38;5;238m│[0m [38;5;231mfox[0m
|
||||||
|
[38;5;238m 6[0m [38;5;238m│[0m [38;5;231mclocks[0m
|
||||||
|
[38;5;238m 7[0m [38;5;238m│[0m [38;5;231mbash[0m
|
||||||
|
[38;5;238m 8[0m [38;5;238m│[0m [38;5;231m$300[0m
|
||||||
|
[38;5;238m 9[0m [38;5;238m│[0m [38;5;231m^$!@[0m
|
||||||
|
[38;5;238m───────┴────────────────────────────────────────────────────[0m
|
@ -25,3 +25,14 @@ test:viewer_gzip() {
|
|||||||
|
|
||||||
assert_equal "$(batpipe compressed.txt.gz)" "OK"
|
assert_equal "$(batpipe compressed.txt.gz)" "OK"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
test:batpipe_term_width() {
|
||||||
|
description "Test support for BATPIPE_TERM_WIDTH"
|
||||||
|
snapshot STDOUT
|
||||||
|
|
||||||
|
export BATPIPE=color
|
||||||
|
export BATPIPE_DEBUG_PARENT_EXECUTABLE=less
|
||||||
|
|
||||||
|
BATPIPE_TERM_WIDTH=40 batpipe file.txt
|
||||||
|
BATPIPE_TERM_WIDTH=-20 batpipe file.txt
|
||||||
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user