comments, renamed and rearranged commands
This commit is contained in:
205
src/main.sh
205
src/main.sh
@@ -95,6 +95,15 @@ MODE_INSERT="show"
|
|||||||
. "sh/fzf.sh"
|
. "sh/fzf.sh"
|
||||||
|
|
||||||
# Command-line options that may only be used internally.
|
# Command-line options that may only be used internally.
|
||||||
|
# --lines
|
||||||
|
# --playback
|
||||||
|
# --playlist
|
||||||
|
# --action-playlistcursor
|
||||||
|
# --action-filter
|
||||||
|
# --action-gotoartist
|
||||||
|
# --action-draw
|
||||||
|
# --mbsearch
|
||||||
|
# --preview-artist
|
||||||
case "${1:-}" in
|
case "${1:-}" in
|
||||||
"--lines")
|
"--lines")
|
||||||
# Print lines that are fed into fzf.
|
# Print lines that are fed into fzf.
|
||||||
@@ -172,7 +181,42 @@ case "${1:-}" in
|
|||||||
esac
|
esac
|
||||||
exit 0
|
exit 0
|
||||||
;;
|
;;
|
||||||
"--filter")
|
"--playlist")
|
||||||
|
# Run playback commands
|
||||||
|
#
|
||||||
|
# @argument $2: playback command (see `src/sh/playback.sh`)
|
||||||
|
#
|
||||||
|
# This is a wrapper to execute mpv commands.
|
||||||
|
case "$2" in
|
||||||
|
"$PLAYLIST_CMD_REMOVE") mpv_rm_index $((FZF_POS - 1)) ;;
|
||||||
|
"$PLAYLIST_CMD_UP") mpv_playlist_move $((FZF_POS - 1)) $((FZF_POS - 2)) ;;
|
||||||
|
"$PLAYLIST_CMD_DOWN") mpv_playlist_move $((FZF_POS - 0)) $((FZF_POS - 1)) ;;
|
||||||
|
"$PLAYLIST_CMD_CLEAR") mpv_playlist_clear ;;
|
||||||
|
"$PLAYLIST_CMD_CLEAR_ABOVE")
|
||||||
|
for i in $(seq "$FZF_POS"); do
|
||||||
|
mpv_rm_index 0
|
||||||
|
done
|
||||||
|
;;
|
||||||
|
"$PLAYLIST_CMD_CLEAR_BELOW")
|
||||||
|
cnt=$(mpv_playlist_count)
|
||||||
|
rem=$((cnt - FZF_POS + 1))
|
||||||
|
for i in $(seq "$rem"); do
|
||||||
|
mpv_rm_index $((FZF_POS - 1))
|
||||||
|
done
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
exit 0
|
||||||
|
;;
|
||||||
|
"--action-playlistcursor")
|
||||||
|
# Print fzf command to replace cursor in playlist
|
||||||
|
#
|
||||||
|
# This prints the command read by a `transform` fzf binding, with which the
|
||||||
|
# cursor is placed on the currently played track in the playlist view.
|
||||||
|
pos=$(mpv_playlist_position)
|
||||||
|
printf "pos(%s)" $((pos + 1))
|
||||||
|
exit 0
|
||||||
|
;;
|
||||||
|
"--action-filter")
|
||||||
# fzf instructions to invoke filters
|
# fzf instructions to invoke filters
|
||||||
#
|
#
|
||||||
# @argument #2: mode
|
# @argument #2: mode
|
||||||
@@ -189,7 +233,7 @@ case "${1:-}" in
|
|||||||
[ "$mode" = "$MODE_NORMAL" ] && printf "+hide-input"
|
[ "$mode" = "$MODE_NORMAL" ] && printf "+hide-input"
|
||||||
exit 0
|
exit 0
|
||||||
;;
|
;;
|
||||||
"--jumpto-artist")
|
"--action-gotoartist")
|
||||||
# fzf instructions to go to artist
|
# fzf instructions to go to artist
|
||||||
#
|
#
|
||||||
# @argument $2: mode
|
# @argument $2: mode
|
||||||
@@ -223,10 +267,10 @@ case "${1:-}" in
|
|||||||
cnt=$(echo "$j" | $JQ 'length')
|
cnt=$(echo "$j" | $JQ 'length')
|
||||||
[ "$cnt" -eq 1 ] && aid="$(echo "$j" | $JQ -r '.[0].artist.id')"
|
[ "$cnt" -eq 1 ] && aid="$(echo "$j" | $JQ -r '.[0].artist.id')"
|
||||||
fi
|
fi
|
||||||
[ "${aid:-}" ] && $0 --draw "$mode" "$VIEW_ARTIST" "$aid" || printf "print(%s)+print(%s)+print(%s)+print(%s)+accept" "$VIEW_SELECT_ARTIST" "$j" "$view" "$mbid_cur"
|
[ "${aid:-}" ] && $0 --action-draw "$mode" "$VIEW_ARTIST" "$aid" || printf "print(%s)+print(%s)+print(%s)+print(%s)+accept" "$VIEW_SELECT_ARTIST" "$j" "$view" "$mbid_cur"
|
||||||
exit 0
|
exit 0
|
||||||
;;
|
;;
|
||||||
"--draw")
|
"--action-draw")
|
||||||
# Generate fzf command to draw screen.
|
# Generate fzf command to draw screen.
|
||||||
#
|
#
|
||||||
# @argument $2: mode (default `normal`)
|
# @argument $2: mode (default `normal`)
|
||||||
@@ -320,7 +364,7 @@ case "${1:-}" in
|
|||||||
[ "$mode" = "$MODE_NORMAL" ] && printf "+hide-input"
|
[ "$mode" = "$MODE_NORMAL" ] && printf "+hide-input"
|
||||||
exit 0
|
exit 0
|
||||||
;;
|
;;
|
||||||
"--fzf-change")
|
"--mbsearch")
|
||||||
# Trigger search on MusicBrainz
|
# Trigger search on MusicBrainz
|
||||||
#
|
#
|
||||||
# @argument $2: view
|
# @argument $2: view
|
||||||
@@ -331,6 +375,21 @@ case "${1:-}" in
|
|||||||
fzf_handle_change "$2"
|
fzf_handle_change "$2"
|
||||||
exit 0
|
exit 0
|
||||||
;;
|
;;
|
||||||
|
"--preview-artist")
|
||||||
|
# Generate content for artist preview
|
||||||
|
#
|
||||||
|
# @argument $2: MusicBrainz Artist ID
|
||||||
|
#
|
||||||
|
# This prints the text to be displayed in the preview window for the
|
||||||
|
# specified artist.
|
||||||
|
__preview_artist "$2"
|
||||||
|
exit 0
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
# Non-interactive user commands intended to the user. These commands do not
|
||||||
|
# require temporary files, fzf, nor the mpv instance.
|
||||||
|
case "${1:-}" in
|
||||||
"--decorate")
|
"--decorate")
|
||||||
# Decorate directory with tagged audio files
|
# Decorate directory with tagged audio files
|
||||||
#
|
#
|
||||||
@@ -362,51 +421,6 @@ case "${1:-}" in
|
|||||||
info "Done"
|
info "Done"
|
||||||
exit 0
|
exit 0
|
||||||
;;
|
;;
|
||||||
"--preview-artist")
|
|
||||||
# Generate content for artist preview
|
|
||||||
#
|
|
||||||
# @argument $2: MusicBrainz Artist ID
|
|
||||||
#
|
|
||||||
# This prints the text to be displayed in the preview window for the
|
|
||||||
# specified artist.
|
|
||||||
__preview_artist "$2"
|
|
||||||
exit 0
|
|
||||||
;;
|
|
||||||
"--playlistcmd")
|
|
||||||
# Run playback commands
|
|
||||||
#
|
|
||||||
# @argument $2: playback command (see `src/sh/playback.sh`)
|
|
||||||
#
|
|
||||||
# This is a wrapper to execute mpv commands.
|
|
||||||
case "$2" in
|
|
||||||
"$PLAYLIST_CMD_REMOVE") mpv_rm_index $((FZF_POS - 1)) ;;
|
|
||||||
"$PLAYLIST_CMD_UP") mpv_playlist_move $((FZF_POS - 1)) $((FZF_POS - 2)) ;;
|
|
||||||
"$PLAYLIST_CMD_DOWN") mpv_playlist_move $((FZF_POS - 0)) $((FZF_POS - 1)) ;;
|
|
||||||
"$PLAYLIST_CMD_CLEAR") mpv_playlist_clear ;;
|
|
||||||
"$PLAYLIST_CMD_CLEAR_ABOVE")
|
|
||||||
for i in $(seq "$FZF_POS"); do
|
|
||||||
mpv_rm_index 0
|
|
||||||
done
|
|
||||||
;;
|
|
||||||
"$PLAYLIST_CMD_CLEAR_BELOW")
|
|
||||||
cnt=$(mpv_playlist_count)
|
|
||||||
rem=$((cnt - FZF_POS + 1))
|
|
||||||
for i in $(seq "$rem"); do
|
|
||||||
mpv_rm_index $((FZF_POS - 1))
|
|
||||||
done
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
exit 0
|
|
||||||
;;
|
|
||||||
"--playlist-place-cursor")
|
|
||||||
# Print fzf command to replace cursor in playlist
|
|
||||||
#
|
|
||||||
# This prints the command read by a `transform` fzf binding, with which the
|
|
||||||
# cursor is placed on the currently played track in the playlist view.
|
|
||||||
pos=$(mpv_playlist_position)
|
|
||||||
printf "pos(%s)" $((pos + 1))
|
|
||||||
exit 0
|
|
||||||
;;
|
|
||||||
"--help")
|
"--help")
|
||||||
# Print help string
|
# Print help string
|
||||||
cat <<EOF
|
cat <<EOF
|
||||||
@@ -433,26 +447,15 @@ EOF
|
|||||||
"--refresh-view")
|
"--refresh-view")
|
||||||
# Recompute main views
|
# Recompute main views
|
||||||
#
|
#
|
||||||
# With this method, the content for the views VIEW_LIST_ARTISTS and
|
# With this method, the content for the views VIEW_LIST_ARTISTS and VIEW_LIST_ALBUMS are recomputed.
|
||||||
# VIEW_LIST_ALBUMS are recomputed.
|
|
||||||
precompute_view
|
precompute_view
|
||||||
exit 0
|
exit 0
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
|
|
||||||
# Set window title
|
# Interactive user commands
|
||||||
printf '\033]0;%s\007' "$WINDOW_TITLE"
|
# If no unknown command is passed, then this will continue to starting the mpv
|
||||||
|
# instance and fzf.
|
||||||
# Generate filenames for temporary files
|
|
||||||
tmpdir=$(mktemp -d)
|
|
||||||
LOCKFILE="$tmpdir/lock"
|
|
||||||
RESULTS="$tmpdir/results"
|
|
||||||
PIDFILE="$tmpdir/pid"
|
|
||||||
trap 'rm -rf "$tmpdir"' EXIT INT
|
|
||||||
export LOCKFILE RESULTS PIDFILE
|
|
||||||
|
|
||||||
# Views and modes
|
|
||||||
|
|
||||||
case "${1:-}" in
|
case "${1:-}" in
|
||||||
"--artist")
|
"--artist")
|
||||||
[ ! "${2:-}" ] && err "MusicBrainz Artist ID not specified (see --help)" && exit 1
|
[ ! "${2:-}" ] && err "MusicBrainz Artist ID not specified (see --help)" && exit 1
|
||||||
@@ -498,6 +501,17 @@ case "${1:-}" in
|
|||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
|
|
||||||
|
# Start application: Set title, get temporary directory, start mpv daemon, and
|
||||||
|
# enter main fzf loop.
|
||||||
|
# Set window title
|
||||||
|
printf '\033]0;%s\007' "$WINDOW_TITLE"
|
||||||
|
# Generate filenames for temporary files
|
||||||
|
tmpdir=$(mktemp -d)
|
||||||
|
LOCKFILE="$tmpdir/lock"
|
||||||
|
RESULTS="$tmpdir/results"
|
||||||
|
PIDFILE="$tmpdir/pid"
|
||||||
|
trap 'rm -rf "$tmpdir"' EXIT INT
|
||||||
|
export LOCKFILE RESULTS PIDFILE
|
||||||
# Start mpv
|
# Start mpv
|
||||||
mpv_start
|
mpv_start
|
||||||
|
|
||||||
@@ -519,13 +533,10 @@ mpv_start
|
|||||||
IN_NORMAL_MODE="[ \$FZF_INPUT_STATE = hidden ]"
|
IN_NORMAL_MODE="[ \$FZF_INPUT_STATE = hidden ]"
|
||||||
IN_VIEW_PATTERN="[ \$FZF_BORDER_LABEL = %s ]"
|
IN_VIEW_PATTERN="[ \$FZF_BORDER_LABEL = %s ]"
|
||||||
IN_LIST_ARTISTS_VIEW="$(printf "$IN_VIEW_PATTERN" "$VIEW_LIST_ARTISTS")"
|
IN_LIST_ARTISTS_VIEW="$(printf "$IN_VIEW_PATTERN" "$VIEW_LIST_ARTISTS")"
|
||||||
IN_LIST_ALBUMS_VIEW="$(printf "$IN_VIEW_PATTERN" "$VIEW_LIST_ALBUMS")"
|
|
||||||
IN_SEARCH_ARTIST_VIEW="$(printf "$IN_VIEW_PATTERN" "$VIEW_SEARCH_ARTIST")"
|
|
||||||
IN_SEARCH_ALBUM_VIEW="$(printf "$IN_VIEW_PATTERN" "$VIEW_SEARCH_ALBUM")"
|
|
||||||
FZF_CURRENT_MODE="\$FZF_INPUT_STATE"
|
FZF_CURRENT_MODE="\$FZF_INPUT_STATE"
|
||||||
FZF_CURRENT_VIEW="\$FZF_BORDER_LABEL"
|
FZF_CURRENT_VIEW="\$FZF_BORDER_LABEL"
|
||||||
FZF_RELOAD_PLAYLIST="reload-sync($0 --lines $VIEW_PLAYLIST)"
|
FZF_RELOAD_PLAYLIST="reload-sync($0 --lines $VIEW_PLAYLIST)"
|
||||||
FZF_POS_PLAYLIST="transform:$0 --playlist-place-cursor"
|
FZF_POS_PLAYLIST="transform:$0 --action-playlistcursor"
|
||||||
PUT_FZF_KEY_LOGIC="case \$FZF_KEY in space) echo \"put( )\";; left) echo backward-char;; right) echo forward-char;; backspace|bspace|bs) echo backward-delete-char;; delete|del) echo delete-char;; *) echo \"put(\$FZF_KEY)\";; esac"
|
PUT_FZF_KEY_LOGIC="case \$FZF_KEY in space) echo \"put( )\";; left) echo backward-char;; right) echo forward-char;; backspace|bspace|bs) echo backward-delete-char;; delete|del) echo delete-char;; *) echo \"put(\$FZF_KEY)\";; esac"
|
||||||
while true; do
|
while true; do
|
||||||
case "$VIEW" in
|
case "$VIEW" in
|
||||||
@@ -576,7 +587,7 @@ while true; do
|
|||||||
--bind="$KEYS_N_BOT:last" \
|
--bind="$KEYS_N_BOT:last" \
|
||||||
--bind="$KEYS_N_TOP:first" \
|
--bind="$KEYS_N_TOP:first" \
|
||||||
--bind="$KEYS_OUT,$KEYS_N_OUT,$KEYS_QUIT,$KEYS_N_QUIT:print($LASTVIEW)+print($LASTARG)+print($VIEW_PLAYLIST)+print()+accept" \
|
--bind="$KEYS_OUT,$KEYS_N_OUT,$KEYS_QUIT,$KEYS_N_QUIT:print($LASTVIEW)+print($LASTARG)+print($VIEW_PLAYLIST)+print()+accept" \
|
||||||
--bind="$KEYS_SELECT_ARTIST:transform:$0 --jumpto-artist $MODE_NORMAL $VIEW_PLAYLIST {2} {3}" \
|
--bind="$KEYS_SELECT_ARTIST:transform:$0 --action-gotoartist $MODE_NORMAL $VIEW_PLAYLIST {2} {3}" \
|
||||||
--bind="$KEYS_LIST_ARTISTS:print($VIEW_LIST_ARTISTS)+accept" \
|
--bind="$KEYS_LIST_ARTISTS:print($VIEW_LIST_ARTISTS)+accept" \
|
||||||
--bind="$KEYS_LIST_ALBUMS:print($VIEW_LIST_ALBUMS)+accept" \
|
--bind="$KEYS_LIST_ALBUMS:print($VIEW_LIST_ALBUMS)+accept" \
|
||||||
--bind="$KEYS_SEARCH_ARTIST:print($VIEW_SEARCH_ARTIST)+accept" \
|
--bind="$KEYS_SEARCH_ARTIST:print($VIEW_SEARCH_ARTIST)+accept" \
|
||||||
@@ -585,12 +596,12 @@ while true; do
|
|||||||
--bind="$KEYS_OPEN:execute-silent:open \"\$(dirname {4})\"" \
|
--bind="$KEYS_OPEN:execute-silent:open \"\$(dirname {4})\"" \
|
||||||
--bind="$KEYS_PLAYBACK,$KEYS_N_PLAYBACK:transform($0 --playback $VIEW_PLAYLIST {2} {3} {4})+$FZF_RELOAD_PLAYLIST+$FZF_POS_PLAYLIST" \
|
--bind="$KEYS_PLAYBACK,$KEYS_N_PLAYBACK:transform($0 --playback $VIEW_PLAYLIST {2} {3} {4})+$FZF_RELOAD_PLAYLIST+$FZF_POS_PLAYLIST" \
|
||||||
--bind="$KEYS_PLAYLIST_RELOAD:$FZF_RELOAD_PLAYLIST+$FZF_POS_PLAYLIST" \
|
--bind="$KEYS_PLAYLIST_RELOAD:$FZF_RELOAD_PLAYLIST+$FZF_POS_PLAYLIST" \
|
||||||
--bind="$KEYS_PLAYLIST_REMOVE:execute-silent($0 --playlistcmd $PLAYLIST_CMD_REMOVE)+$FZF_RELOAD_PLAYLIST" \
|
--bind="$KEYS_PLAYLIST_REMOVE:execute-silent($0 --playlist $PLAYLIST_CMD_REMOVE)+$FZF_RELOAD_PLAYLIST" \
|
||||||
--bind="$KEYS_PLAYLIST_UP:execute-silent($0 --playlistcmd $PLAYLIST_CMD_UP)+up+$FZF_RELOAD_PLAYLIST" \
|
--bind="$KEYS_PLAYLIST_UP:execute-silent($0 --playlist $PLAYLIST_CMD_UP)+up+$FZF_RELOAD_PLAYLIST" \
|
||||||
--bind="$KEYS_PLAYLIST_DOWN:execute-silent($0 --playlistcmd $PLAYLIST_CMD_DOWN)+down+$FZF_RELOAD_PLAYLIST" \
|
--bind="$KEYS_PLAYLIST_DOWN:execute-silent($0 --playlist $PLAYLIST_CMD_DOWN)+down+$FZF_RELOAD_PLAYLIST" \
|
||||||
--bind="$KEYS_PLAYLIST_CLEAR:execute-silent($0 --playlistcmd $PLAYLIST_CMD_CLEAR)+$FZF_RELOAD_PLAYLIST" \
|
--bind="$KEYS_PLAYLIST_CLEAR:execute-silent($0 --playlist $PLAYLIST_CMD_CLEAR)+$FZF_RELOAD_PLAYLIST" \
|
||||||
--bind="$KEYS_PLAYLIST_CLEAR_ABOVE:execute-silent($0 --playlistcmd $PLAYLIST_CMD_CLEAR_ABOVE)+$FZF_RELOAD_PLAYLIST" \
|
--bind="$KEYS_PLAYLIST_CLEAR_ABOVE:execute-silent($0 --playlist $PLAYLIST_CMD_CLEAR_ABOVE)+$FZF_RELOAD_PLAYLIST" \
|
||||||
--bind="$KEYS_PLAYLIST_CLEAR_BELOW:execute-silent($0 --playlistcmd $PLAYLIST_CMD_CLEAR_BELOW)+$FZF_RELOAD_PLAYLIST" \
|
--bind="$KEYS_PLAYLIST_CLEAR_BELOW:execute-silent($0 --playlist $PLAYLIST_CMD_CLEAR_BELOW)+$FZF_RELOAD_PLAYLIST" \
|
||||||
--bind="$KEYS_PLAYLIST_GOTO_RELEASE:print($VIEW_RELEASE)+accept" \
|
--bind="$KEYS_PLAYLIST_GOTO_RELEASE:print($VIEW_RELEASE)+accept" \
|
||||||
--delimiter="\t" \
|
--delimiter="\t" \
|
||||||
--with-nth="{1}" \
|
--with-nth="{1}" \
|
||||||
@@ -625,7 +636,7 @@ while true; do
|
|||||||
--info="inline-right" \
|
--info="inline-right" \
|
||||||
--header-first \
|
--header-first \
|
||||||
--header-border="bottom" \
|
--header-border="bottom" \
|
||||||
--bind="start:transform:$0 --draw $MODE $VIEW $MBID" \
|
--bind="start:transform:$0 --action-draw $MODE $VIEW $MBID" \
|
||||||
--bind="$KEYS_I_NORMAL:transform:$IN_NORMAL_MODE || echo hide-input" \
|
--bind="$KEYS_I_NORMAL:transform:$IN_NORMAL_MODE || echo hide-input" \
|
||||||
--bind="$KEYS_N_INSERT:transform:$IN_NORMAL_MODE && echo show-input || $PUT_FZF_KEY_LOGIC" \
|
--bind="$KEYS_N_INSERT:transform:$IN_NORMAL_MODE && echo show-input || $PUT_FZF_KEY_LOGIC" \
|
||||||
--bind="$KEYS_DOWN:down" \
|
--bind="$KEYS_DOWN:down" \
|
||||||
@@ -636,28 +647,28 @@ while true; do
|
|||||||
--bind="$KEYS_N_UP:transform:$IN_NORMAL_MODE && echo up || $PUT_FZF_KEY_LOGIC" \
|
--bind="$KEYS_N_UP:transform:$IN_NORMAL_MODE && echo up || $PUT_FZF_KEY_LOGIC" \
|
||||||
--bind="$KEYS_N_BOT:transform:$IN_NORMAL_MODE && echo last || $PUT_FZF_KEY_LOGIC" \
|
--bind="$KEYS_N_BOT:transform:$IN_NORMAL_MODE && echo last || $PUT_FZF_KEY_LOGIC" \
|
||||||
--bind="$KEYS_N_TOP:transform:$IN_NORMAL_MODE && echo first || $PUT_FZF_KEY_LOGIC" \
|
--bind="$KEYS_N_TOP:transform:$IN_NORMAL_MODE && echo first || $PUT_FZF_KEY_LOGIC" \
|
||||||
--bind="$KEYS_IN:transform:[ {3} ] && $0 --draw $FZF_CURRENT_MODE $FZF_CURRENT_VIEW {3} \"+1\"" \
|
--bind="$KEYS_IN:transform:[ {3} ] && $0 --action-draw $FZF_CURRENT_MODE $FZF_CURRENT_VIEW {3} \"+1\"" \
|
||||||
--bind="$KEYS_OUT:transform:[ {2} ] && $0 --draw $FZF_CURRENT_MODE $FZF_CURRENT_VIEW {2} \"-1\"" \
|
--bind="$KEYS_OUT:transform:[ {2} ] && $0 --action-draw $FZF_CURRENT_MODE $FZF_CURRENT_VIEW {2} \"-1\"" \
|
||||||
--bind="$KEYS_N_IN:transform:$IN_NORMAL_MODE && ([ {3} ] && $0 --draw $FZF_CURRENT_MODE $FZF_CURRENT_VIEW {3} \"+1\") || $PUT_FZF_KEY_LOGIC" \
|
--bind="$KEYS_N_IN:transform:$IN_NORMAL_MODE && ([ {3} ] && $0 --action-draw $FZF_CURRENT_MODE $FZF_CURRENT_VIEW {3} \"+1\") || $PUT_FZF_KEY_LOGIC" \
|
||||||
--bind="$KEYS_N_OUT:transform:$IN_NORMAL_MODE && ([ {2} ] && $0 --draw $FZF_CURRENT_MODE $FZF_CURRENT_VIEW {2} \"-1\") || $PUT_FZF_KEY_LOGIC" \
|
--bind="$KEYS_N_OUT:transform:$IN_NORMAL_MODE && ([ {2} ] && $0 --action-draw $FZF_CURRENT_MODE $FZF_CURRENT_VIEW {2} \"-1\") || $PUT_FZF_KEY_LOGIC" \
|
||||||
--bind="$KEYS_SELECT_ARTIST:transform:$0 --jumpto-artist $FZF_CURRENT_MODE $FZF_CURRENT_VIEW {2} {3}" \
|
--bind="$KEYS_SELECT_ARTIST:transform:$0 --action-gotoartist $FZF_CURRENT_MODE $FZF_CURRENT_VIEW {2} {3}" \
|
||||||
--bind="$KEYS_LIST_ARTISTS:transform:$0 --draw \$FZF_INPUT_STATE $VIEW_LIST_ARTISTS" \
|
--bind="$KEYS_LIST_ARTISTS:transform:$0 --action-draw \$FZF_INPUT_STATE $VIEW_LIST_ARTISTS" \
|
||||||
--bind="$KEYS_LIST_ALBUMS:transform:$0 --draw \$FZF_INPUT_STATE $VIEW_LIST_ALBUMS" \
|
--bind="$KEYS_LIST_ALBUMS:transform:$0 --action-draw \$FZF_INPUT_STATE $VIEW_LIST_ALBUMS" \
|
||||||
--bind="$KEYS_SEARCH_ARTIST:transform:$0 --draw $MODE_INSERT $VIEW_SEARCH_ARTIST" \
|
--bind="$KEYS_SEARCH_ARTIST:transform:$0 --action-draw $MODE_INSERT $VIEW_SEARCH_ARTIST" \
|
||||||
--bind="$KEYS_SEARCH_ALBUM:transform:$0 --draw $MODE_INSERT $VIEW_SEARCH_ALBUM" \
|
--bind="$KEYS_SEARCH_ALBUM:transform:$0 --action-draw $MODE_INSERT $VIEW_SEARCH_ALBUM" \
|
||||||
--bind="$KEYS_SWITCH_ARTIST_ALBUM:transform:case $FZF_CURRENT_VIEW in
|
--bind="$KEYS_SWITCH_ARTIST_ALBUM:transform:case $FZF_CURRENT_VIEW in
|
||||||
$VIEW_LIST_ARTISTS) $0 --draw $FZF_CURRENT_MODE $VIEW_LIST_ALBUMS ;;
|
$VIEW_LIST_ARTISTS) $0 --action-draw $FZF_CURRENT_MODE $VIEW_LIST_ALBUMS ;;
|
||||||
$VIEW_LIST_ALBUMS) $0 --draw $FZF_CURRENT_MODE $VIEW_LIST_ARTISTS ;;
|
$VIEW_LIST_ALBUMS) $0 --action-draw $FZF_CURRENT_MODE $VIEW_LIST_ARTISTS ;;
|
||||||
$VIEW_SEARCH_ARTIST) $0 --draw $MODE_INSERT $VIEW_SEARCH_ALBUM ;;
|
$VIEW_SEARCH_ARTIST) $0 --action-draw $MODE_INSERT $VIEW_SEARCH_ALBUM ;;
|
||||||
$VIEW_SEARCH_ALBUM) $0 --draw $MODE_INSERT $VIEW_SEARCH_ARTIST ;;
|
$VIEW_SEARCH_ALBUM) $0 --action-draw $MODE_INSERT $VIEW_SEARCH_ARTIST ;;
|
||||||
esac" \
|
esac" \
|
||||||
--bind="$KEYS_SWITCH_LOCAL_REMOTE:transform:case $FZF_CURRENT_VIEW in
|
--bind="$KEYS_SWITCH_LOCAL_REMOTE:transform:case $FZF_CURRENT_VIEW in
|
||||||
$VIEW_LIST_ARTISTS) $0 --draw $MODE_INSERT $VIEW_SEARCH_ARTIST ;;
|
$VIEW_LIST_ARTISTS) $0 --action-draw $MODE_INSERT $VIEW_SEARCH_ARTIST ;;
|
||||||
$VIEW_LIST_ALBUMS) $0 --draw $MODE_INSERT $VIEW_SEARCH_ALBUM ;;
|
$VIEW_LIST_ALBUMS) $0 --action-draw $MODE_INSERT $VIEW_SEARCH_ALBUM ;;
|
||||||
$VIEW_SEARCH_ARTIST) $0 --draw $MODE_NORMAL $VIEW_LIST_ARTISTS ;;
|
$VIEW_SEARCH_ARTIST) $0 --action-draw $MODE_NORMAL $VIEW_LIST_ARTISTS ;;
|
||||||
$VIEW_SEARCH_ALBUM) $0 --draw $MODE_NORMAL $VIEW_LIST_ALBUMS ;;
|
$VIEW_SEARCH_ALBUM) $0 --action-draw $MODE_NORMAL $VIEW_LIST_ALBUMS ;;
|
||||||
esac" \
|
esac" \
|
||||||
--bind="$KEYS_FILTER:transform:$0 --filter $FZF_CURRENT_MODE $FZF_CURRENT_VIEW" \
|
--bind="$KEYS_FILTER:transform:$0 --action-filter $FZF_CURRENT_MODE $FZF_CURRENT_VIEW" \
|
||||||
--bind="$KEYS_BROWSE:execute-silent:
|
--bind="$KEYS_BROWSE:execute-silent:
|
||||||
[ {3} ] || exit 0
|
[ {3} ] || exit 0
|
||||||
case \$FZF_BORDER_LABEL in
|
case \$FZF_BORDER_LABEL in
|
||||||
@@ -672,10 +683,10 @@ open \"https://musicbrainz.org/\$t/{r3}\"" \
|
|||||||
open \"\$(dirname {4})\"" \
|
open \"\$(dirname {4})\"" \
|
||||||
--bind="$KEYS_SHOW_PLAYLIST:transform:echo \"print($VIEW_PLAYLIST)+print()+print($FZF_CURRENT_VIEW)+print({2})+accept\"" \
|
--bind="$KEYS_SHOW_PLAYLIST:transform:echo \"print($VIEW_PLAYLIST)+print()+print($FZF_CURRENT_VIEW)+print({2})+accept\"" \
|
||||||
--bind="$KEYS_QUIT:print($VIEW_QUIT)+accept" \
|
--bind="$KEYS_QUIT:print($VIEW_QUIT)+accept" \
|
||||||
--bind="$KEYS_N_QUIT:transform:$IN_NORMAL_MODE && ($IN_LIST_ARTISTS_VIEW && echo \"print($VIEW_QUIT)+accept\" || $0 --draw $MODE_NORMAL $VIEW_LIST_ARTISTS) || $PUT_FZF_KEY_LOGIC" \
|
--bind="$KEYS_N_QUIT:transform:$IN_NORMAL_MODE && ($IN_LIST_ARTISTS_VIEW && echo \"print($VIEW_QUIT)+accept\" || $0 --action-draw $MODE_NORMAL $VIEW_LIST_ARTISTS) || $PUT_FZF_KEY_LOGIC" \
|
||||||
--bind="$KEYS_PLAYBACK:transform:$0 --playback $FZF_CURRENT_VIEW {2} {3} {4}" \
|
--bind="$KEYS_PLAYBACK:transform:$0 --playback $FZF_CURRENT_VIEW {2} {3} {4}" \
|
||||||
--bind="$KEYS_N_PLAYBACK:transform:$IN_NORMAL_MODE && $0 --playback $FZF_CURRENT_VIEW {2} {3} {4} || $PUT_FZF_KEY_LOGIC" \
|
--bind="$KEYS_N_PLAYBACK:transform:$IN_NORMAL_MODE && $0 --playback $FZF_CURRENT_VIEW {2} {3} {4} || $PUT_FZF_KEY_LOGIC" \
|
||||||
--bind="change:execute-silent($0 --fzf-change $FZF_CURRENT_VIEW &)+reload:$0 --lines $FZF_CURRENT_VIEW" \
|
--bind="change:execute-silent($0 --mbsearch $FZF_CURRENT_VIEW &)+reload:$0 --lines $FZF_CURRENT_VIEW" \
|
||||||
--preview-window="right,25%,border-left,wrap,<30(hidden)" \
|
--preview-window="right,25%,border-left,wrap,<30(hidden)" \
|
||||||
--preview="$0 --preview-artist {3}" \
|
--preview="$0 --preview-artist {3}" \
|
||||||
--delimiter="\t" \
|
--delimiter="\t" \
|
||||||
|
Reference in New Issue
Block a user