diff --git a/user-scripts/README.md b/user-scripts/README.md
index 9c2fd83..f4589e9 100644
--- a/user-scripts/README.md
+++ b/user-scripts/README.md
@@ -7,7 +7,8 @@
 | fzy | Fuzzy find a file in directory subtree with fzy and open using xdg-open |
 | imgur | Upload an image file to imgur |
 | kdeconnect | Send selected files to Android device using kdeconnect-cli |
-| nlaunch | drop-down app launcher (needs fzy), drop in `$PATH`; fallback regular prompt |
+| ndiff | File and directory diff for selection using vimdiff |
+| nlaunch | Drop-down app launcher (needs fzy), drop in `$PATH`; fallback regular prompt |
 | picker | Pick files and pipe the newline-separated list to another utility |
 | sxiv | Open images in current directory in sxiv |
 | upgrade | Check and update to latest version of nnn manually on Debian 9 Stretch |
diff --git a/user-scripts/ndiff b/user-scripts/ndiff
new file mode 100755
index 0000000..10af0b3
--- /dev/null
+++ b/user-scripts/ndiff
@@ -0,0 +1,8 @@
+#!/usr/bin/env sh
+
+# Description: File and directory diff using vimdiff
+#
+# Shell: POSIX compliant
+# Author: Arun Prakash Jana
+
+vimdiff $(cat ~/.nnncp | tr '\0' '\n')