nnn/plugins/kdeconnect

44 lines
1.1 KiB
Plaintext
Raw Normal View History

#!/usr/bin/env sh
# Description: Send files or folders to your Android device using kdeconnect-cli.
2021-05-15 17:32:01 +00:00
# kdeconnect must be configured on the Android device and the PC.
#
# Usage:
# - Hover over a file or a folder and call the plugin.
# - Alternatively, select the files and folders you would like to send, and activate the plugin.
#
# Shell: POSIX compliant
# Author: juacq97, raffaem
# If you want system notification, put this equal to 1
notify=0
2019-04-21 18:29:51 +00:00
note() {
if [ $notify = 1 ]; then
notify-send -a "Kdeconnect" "$1"
else
echo "[Kdeconnect] $1"
fi
}
2020-12-12 15:23:00 +00:00
send() {
xargs -0 -I{} kdeconnect-cli --name "$devname" --share {}
note "Files sent"
}
devname=$(kdeconnect-cli --list-available --name-only 2>/dev/null | awk NR==1)
if [ -z "$devname" ]; then
note "No devices available"
exit
fi
selection=${NNN_SEL:-${XDG_CONFIG_HOME:-$HOME/.config}/nnn/.selection}
if [ -s "$selection" ]; then
send < "$selection"
[ -p "$NNN_PIPE" ] && printf "-" > "$NNN_PIPE" # clear selection
elif [ -n "$1" ]; then
printf "%s" "$1" | send
else
note "No selection and no hovered file"
fi