Aqui está a minha solução para reproduzir todos os arquivos em um diretório e todos os subdiretórios com mplayer2 e ranger em ordem aleatória. Não é exatamente a resposta para a pergunta, mas talvez você possa expandi-lo.
Primeiro eu escrevi um script chamado ptv :
#!/bin/sh
if [[ -z "$1" ]]; then
echo "usage: $(basename $0) directory [count]"
else
if [[ ! -z "$2" ]]; then
SHUFPARAM="-n$2"
fi
PLAYLIST="/tmp/playlist-$(whoami)"
CWD="$(realpath "$1")"
find "$CWD" -type f -iname \*.mkv -or -iname \*.mp4 -or -iname \*.avi | shuf $SHUFPARAM > $PLAYLIST && \
mplayer2 --playlist=$PLAYLIST && rm -f $PLAYLIST
fi
Este script encontra todos os meus arquivos de filme em um determinado diretório, cria uma lista de reprodução ordenada aleatória e chama mplayer2 com essa lista de reprodução gerada. Deixe o comando shuf para fora, se você quiser uma lista ordenada.
A próxima etapa é editar rifle.conf no diretório de configurações ( ~/.config/ranger ). Adicione esta linha:
directory, label pseudoTV, has mplayer2, flag f = /path/to/ptv "$@"
Agora você pode usar o script para open_with (mapeado para a chave: r ) com mplayer2 . Em mplayer2 você pode navegar com < e > entre os itens da playlist.
DICA: Copie seus diretórios diretórios para o yank_buffer e salve-o em ranger . Em seguida, expanda ptv para localizar arquivos em todos os diretórios selecionados ...