urlview: finalize

This commit is contained in:
Motiejus Jakštys 2024-04-15 15:36:42 +03:00 committed by Motiejus Jakštys
parent 221ae40e4f
commit 2e71677213
3 changed files with 17 additions and 50 deletions

View File

@ -206,11 +206,13 @@ in {
set-option -g default-terminal "screen-256color" set-option -g default-terminal "screen-256color"
set-option -sa terminal-features ',xterm-256color:RGB' set-option -sa terminal-features ',xterm-256color:RGB'
run-shell ${(pkgs.substituteAll { run-shell ${pkgs.writeShellScript "urlview"
src = ./urlview.tmux; (builtins.readFile
extract_url = pkgs.extract_url; (pkgs.substituteAll {
}) src = ./urlview.tmux;
.outPath} extract_url = pkgs.extract_url;
})
.outPath)}
''; '';
}; };
} }

View File

@ -1,20 +0,0 @@
#!/usr/bin/env bash
get_tmux_option() {
local option=$1
local default_value=$2
local option_value
option_value=$(tmux show-option -gqv "$option")
if [ -z "$option_value" ]; then
echo "$default_value"
else
echo "$option_value"
fi
}
readonly key="$(get_tmux_option "@urlview-key" "u")"
tmux bind-key "$key" capture-pane -J \\\; \
save-buffer "${TMPDIR:-/tmp}/tmux-buffer" \\\; \
delete-buffer \\\; \
split-window -l 10 "@extract_url@/bin/extract_url" '${TMPDIR:-/tmp}/tmux-buffer'"

35
shared/home/urlview.tmux Normal file → Executable file
View File

@ -1,32 +1,17 @@
#!/usr/bin/env bash # shellcheck shell=bash
get_tmux_option() { get_tmux_option() {
local option=$1 local option=$1
local default_value=$2 local default_value=$2
local option_value=$(tmux show-option -gqv "$option") local option_value
if [ -z $option_value ]; then option_value=$(tmux show-option -gqv "$option")
echo $default_value if [ -z "$option_value" ]; then
echo "$default_value"
else else
echo $option_value echo "$option_value"
fi fi
} }
find_executable() { tmux bind-key "$(get_tmux_option "@urlview-key" "u")" capture-pane -J \\\; \
if type urlview >/dev/null 2>&1; then save-buffer "${TMPDIR:-/tmp}/tmux-buffer" \\\; \
echo "urlview" delete-buffer \\\; \
elif type extract_url >/dev/null 2>&1; then split-window -l 10 "@extract_url@/bin/extract_url '${TMPDIR:-/tmp}/tmux-buffer'"
echo "extract_url"
fi
}
readonly key="$(get_tmux_option "@urlview-key" "u")"
readonly cmd="$(find_executable)"
if [ -z "$cmd" ]; then
tmux display-message "Failed to load tmux-urlview: neither urlview nor extract_url were found on the PATH"
else
tmux bind-key "$key" capture-pane -J \\\; \
save-buffer "${TMPDIR:-/tmp}/tmux-buffer" \\\; \
delete-buffer \\\; \
split-window -l 10 "$cmd '${TMPDIR:-/tmp}/tmux-buffer'"
fi