Move tac/tail logic to function to avoid eval

This commit is contained in:
Daniel Berg 2021-07-24 18:27:37 +02:00
parent 5a87af7c08
commit cfb76b9a0b
No known key found for this signature in database
GPG key ID: BFB01A06E7FB4F81
2 changed files with 10 additions and 8 deletions

View file

@ -38,6 +38,14 @@ fzf_popup_cmd() {
--print-query
}
rev_cmd() {
if cmd_exists tac;then
tac
else
tail -r
fi
}
cursor_up() {
local line_number
line_number="$1"
@ -212,7 +220,7 @@ create_head_file() {
head_filename="$(get_head_filename)"
capture_filename="$(get_capture_filename)"
head -n "$head_n" < "$capture_filename" \
| eval "$REV_CMD" \
| rev_cmd \
| nl -b 'a' -s ':' \
| sed 's/^/1:/' \
| sed '1s/$//' \
@ -232,7 +240,7 @@ create_tail_file() {
echo "$trimmed" > "$tail_filename"
else
nl -b 'a' -s ':' < "$tmp_filename" \
| eval "$REV_CMD" \
| rev_cmd \
| sed 's/^/-1:/' \
| sed 's/$//' \
> "$tail_filename"

View file

@ -10,12 +10,6 @@ if cmd_exists gawk; then
AWK_CMD='gawk'
fi
REV_CMD="tac"
if ! cmd_exists tac; then
REV_CMD="tail -r"
fi
# returns a string unique to current pane
# sed removes `$` sign because `session_id` contains is
_pane_unique_id() {