summaryrefslogtreecommitdiffstats
path: root/.local/bin/linkview
diff options
context:
space:
mode:
Diffstat (limited to '')
-rwxr-xr-x.local/bin/linkview12
1 files changed, 8 insertions, 4 deletions
diff --git a/.local/bin/linkview b/.local/bin/linkview
index dea342f..605e0b7 100755
--- a/.local/bin/linkview
+++ b/.local/bin/linkview
@@ -12,8 +12,6 @@ use Capture::Tiny qw(capture);
use POSIX qw(setsid);
use Data::UUID;
-my $menu = "fzf";
-
use constant {
TERMINAL_PATH => $TERMINAL,
MPV_PATH => 'mpv',
@@ -34,6 +32,11 @@ my @func_refs = ( \&vid, \&img_pdf, \&dl, \&audio, \&img_pdf, \&w3m, \&web, \&cl
my %func_list;
@func_list{@keys} = @func_refs;
+my $menu = "fzf --prompt ";
+for (@ARGV) {
+ $menu = "dmenu -i -l " . scalar @keys . " -p " if $_ eq "--dmenu";
+}
+
use constant QUAL_LIST => "" .
"uncap" . "\n" .
"1440" . "\n" .
@@ -174,7 +177,7 @@ sub dl
if (is_yt($url) != 0) {
$list = QUAL_LIST;
- $quality = `printf "$list" | $menu --prompt 'quality > '`;
+ $quality = `printf "$list" | $menu 'quality > '`;
if (not $quality) {
return;
}
@@ -489,7 +492,7 @@ sub fzf_prompt
my $list;
$list = join("\n", @keys);
- $answer = `printf "$list\n" | $menu --prompt '$url > '`;
+ $answer = `printf "$list\n" | $menu '$url >'`;
chomp $answer;
return $answer;
}
@@ -504,6 +507,7 @@ sub linkview
}
$answer = fzf_prompt($ARGV[0]);
+ $ARGV[1] = undef if (exists $ARGV[1] and $ARGV[1] eq '--dmenu');
return unless exists $func_list{$answer};
$func_list{$answer}->($ARGV[0], $ARGV[1], $answer);
return;