nnn

Unnamed repository; edit this file 'description' to name the repository.
Log | Files | Refs | README | LICENSE

commit edf587a48f9dfdee92399b713d5ae0e39789bf70
parent 971129736279cf62cd7473af99fcbd354385821b
Author: Arun Prakash Jana <engineerarun@gmail.com>
Date:   Mon,  3 Jun 2019 18:26:53 +0530

Add plugin to play music in MOC

Diffstat:
Mplugins/README.md | 1+
Aplugins/mocplay | 42++++++++++++++++++++++++++++++++++++++++++
2 files changed, 43 insertions(+), 0 deletions(-)

diff --git a/plugins/README.md b/plugins/README.md @@ -9,6 +9,7 @@ | imgur | bash | - | Upload an image to imgur (from [imgur-screenshot](https://github.com/jomo/imgur-screenshot)) | | ipinfo | sh | curl, whois | Fetch external IP address and whois information | | kdeconnect | sh | kdeconnect-cli | Send selected files to an Android device | +| mocplay | sh | [moc](http://moc.daper.net/) | Appends (and plays, see script) selection/dir/file in moc| | ndiff | bash | vimdiff | Diff for selection (limited to 2 for directories) | | nmount | sh | pmount, udisks2 | Toggle mount status of a device as normal user | | nwal | sh | nitrogen | Set the selected image as wallpaper using nitrogen | diff --git a/plugins/mocplay b/plugins/mocplay @@ -0,0 +1,42 @@ +#!/usr/bin/env sh + +# Description: Appends and optionally plays music in MOC +# +# Notes: +# - if selection is available, plays it, else plays the current file or directory +# - appends tracks and exits is MOC is running, else clears playlist and adds tracks +# +# Shell: POSIX compliant +# Author: Arun Prakash Jana + +selection=~/.config/nnn/.selection +cmd=$(pgrep -x mocp 2>/dev/null) +ret=$cmd + +if [ -s "$selection" ]; then + # try selection first + if [ -z "$ret" ]; then + # mocp not running + mocp -S + + # clear selection and play + cat "$selection" | xargs -0 mocp -acp + else + # mocp running, just append + cat "$selection" | xargs -0 mocp -a + fi +else + # ensure a file/dir is passed + if ! [ -z "$1" ]; then + if [ -z "$ret" ]; then + # mocp not running + mocp -S + + # clear selection and play + mocp -acp "$1" + else + # mocp running, just append + mocp -a "$1" + fi + fi +fi