diff options
| author | 2019-11-02 06:56:34 +0530 | |
|---|---|---|
| committer | 2019-11-02 06:56:34 +0530 | |
| commit | aedb9c2753af80fadfa3cf8f5f876473b44531e3 (patch) | |
| tree | e529d600b4f4865d079e577b6fc4a5fdadd811ec /plugins/drag-and-drop | |
| parent | 3c1645ca904578a7c43ed8e8e7e264cf99f997da (diff) | |
| download | nnn-aedb9c2753af80fadfa3cf8f5f876473b44531e3.tar.gz | |
Update drag and drop plugin
Diffstat (limited to 'plugins/drag-and-drop')
| -rwxr-xr-x | plugins/drag-and-drop | 78 |
1 files changed, 0 insertions, 78 deletions
diff --git a/plugins/drag-and-drop b/plugins/drag-and-drop deleted file mode 100755 index 6db7d5a..0000000 --- a/plugins/drag-and-drop +++ /dev/null @@ -1,78 +0,0 @@ -#!/usr/bin/env sh - -# Description: Open a Drag and drop window, to drop files onto other programs. -# Also provides drag and drop window for files. -# -# Files that are dropped will be added to nnn's selection -# Some webbased files will be downloaded to current directory with curl -# and it may overwrite some existing files -# -# The user has to mm to clear nnn's selection first -# -# Dependency: https://github.com/mwh/dragon -# Shell: POSIX compliant -# Author: 0xACE - -selection=${XDG_CONFIG_HOME:-$HOME/.config}/nnn/.selection -resp=f -all= - -dnd() -{ - if which dragon-drag-and-drop; then - dragon-drag-and-drop "$@" - else - dragon "$@" - fi -} - -function add_file() { - echo -n "$@" >> "$selection" - echo -ne "\0" >> "$selection" -} - -function use_all() -{ - echo -n "mark --all (a) [default=none]: " - read resp - if [ "$resp" = "a" ]; then - all="--all" - else - all="" - fi -} - -if [ -s "$selection" ]; then - echo -n "Drop file (r). Drag selection (s), Drag current directory (d) or drag current file (f) [default=f]: " - read resp -else - echo -n "Drop file (r). Drag current directory (d) or drag current file (f) [default=f]: " - read resp - if [ "$resp" = "s" ]; then - resp=f - fi -fi - -if [ "$resp" = "s" ]; then - use_all - sed -z 's|'"$PWD/"'||g' < "$selection" | xargs -0 dnd "$all" & -elif [ "$resp" = "d" ]; then - use_all - dnd "$all" "$PWD/"* & -elif [ "$resp" = "r" ]; then - echo -n > "$selection" - dnd --print-path --target | while read f - do - if echo -n "$f" | grep '^\(https\?\|ftps\?\|s\?ftp\):\/\/' ; then - curl -LJO "$f" - add_file "$PWD/$(basename "$f")" - elif [ -e "$f" ]; then - add_file "$f" - fi - done & -else - if [ -n "$1" ] && [ -e "$1" ]; then - dnd "$1" & - fi -fi - |