diff --git a/plugins/README.md b/plugins/README.md
index 0a23369..42af886 100644
--- a/plugins/README.md
+++ b/plugins/README.md
@@ -40,7 +40,6 @@ Plugins extend the capabilities of `nnn`. They are _executable_ scripts (or bina
| nuke | Sample file opener (CLI-only by default) | sh | various |
| oldbigfile | List large files by access time | sh | find, sort |
| organize | Auto-organize files in directories by file type | sh | file |
-| pastebin | Paste contents of a text a file ix.io | sh | - |
| pdfread | Read a PDF or text file aloud | sh | pdftotext, mpv,
pico2wave |
| pdfview | View PDF file in `$PAGER` | sh | pdftotext/
mupdf-tools |
| picker | Pick files and list one per line (to pipe) | sh | nnn |
@@ -52,7 +51,7 @@ Plugins extend the capabilities of `nnn`. They are _executable_ scripts (or bina
| treeview | Informative tree output in `$EDITOR` | sh | tree |
| uidgid | List user and group of all files in dir | sh | ls, less |
| upgrade | Upgrade nnn manually on Debian 9 Stretch | sh | curl |
-| upload | Upload file to file.io | sh | curl, jq, tr |
+| upload | Paste text to ix.io, upload binary to file.io | sh | curl, jq, tr |
| vidthumb | Show video thumbnails in terminal | sh | [ffmpegthumbnailer](https://github.com/dirkvdb/ffmpegthumbnailer),
[lsix](https://github.com/hackerb9/lsix) |
| wall | Set wallpaper or change colorscheme | sh | nitrogen/pywal |
diff --git a/plugins/pastebin b/plugins/pastebin
deleted file mode 100755
index 61039e6..0000000
--- a/plugins/pastebin
+++ /dev/null
@@ -1,11 +0,0 @@
-#!/usr/bin/env sh
-
-# Description: Paste contents of a text a file http://ix.io
-#
-# Shell: POSIX compliant
-# Author: Arun Prakash Jana
-
-if ! [ -z "$1" ]; then
- curl -F "f:1=@$1" ix.io
- read -r _
-fi
diff --git a/plugins/upload b/plugins/upload
index f74ee5c..28112d4 100755
--- a/plugins/upload
+++ b/plugins/upload
@@ -1,19 +1,25 @@
#!/usr/bin/env sh
-# Description: Upload a file to file.io
+# Description: Paste contents of a text a file http://ix.io
+# Upload a binary file to file.io
# Requires: curl, jq, tr
-# Note: File set to expire after a week
+# Note: Binary file set to expire after a week
#
# Shell: POSIX compliant
# Author: Arun Prakash Jana
-if [ -s "$1" ]; then
- # Upload the file, show the download link and wait till user presses any key
- curl -s -F "file=@$1" https://file.io/?expires=1w | jq '.link' | tr -d '"'
+if ! [ -z "$1" ] && [ -s "$1" ]; then
+ if [ "$(mimetype --output-format %m "$1" | awk -F '/' '{print $1}')" = "text" ]; then
+ curl -F "f:1=@$1" ix.io
+ else
+ # Upload the file, show the download link and wait till user presses any key
+ curl -s -F "file=@$1" https://file.io/?expires=1w | jq '.link' | tr -d '"'
- # To write download link to "$1".loc and exit
- # curl -s -F "file=@$1" https://file.io/?expires=1w -o `basename "$1"`.loc
+ # To write download link to "$1".loc and exit
+ # curl -s -F "file=@$1" https://file.io/?expires=1w -o `basename "$1"`.loc
+ fi
else
- echo "empty file!"
+ printf "empty file!"
fi
- read -r _
+
+read -r _