# Shell: bash
# Author: KlzXS
+# shellcheck disable=SC1090,SC1091
+. "$(dirname "$0")"/.nnn-plugin-helper
+
EDITOR="${EDITOR:-vi}"
TMPDIR="${TMPDIR:-/tmp}"
NNN_INCLUDE_HIDDEN="${NNN_INCLUDE_HIDDEN:-0}"
-NNN_PREFER_SELECTION="${NNN_PREFER_SELECTION:-0}"
VERBOSE="${VERBOSE:-0}"
RECURSIVE="${RECURSIVE:-0}"
RM_UTIL="rm -ri" ;;
esac
-selection=${NNN_SEL:-${XDG_CONFIG_HOME:-$HOME/.config}/nnn/.selection}
exit_status=0
dst_file=$(mktemp "$TMPDIR/.nnnXXXXXX")
-if [ -s "$selection" ]; then
- if [ "$NNN_PREFER_SELECTION" -eq 1 ]; then
- resp="s"
- else
- printf "Rename 'c'urrent / 's'election? "
- read -r resp
-
- if ! [ "$resp" = "c" ] && ! [ "$resp" = "s" ]; then
- exit 1
- fi
- fi
-fi
-
-if [ "$resp" = "s" ]; then
+if nnn_use_selection "Rename"; then
arr=$(tr '\0' '\n' < "$selection")
else
findcmd="find . ! -name ."
CUR_CTX=0
export CUR_CTX
+NNN_PREFER_SELECTION="${NNN_PREFER_SELECTION:-0}"
+export NNN_PREFER_SELECTION
+
## Ask nnn to switch to directory $1 in context $2.
## If $2 is not provided, the function asks explicitly.
nnn_cd () {
type "$1" > /dev/null 2>&1
echo $?
}
+
+nnn_use_selection() {
+ if ! [ -s "$selection" ]; then
+ return 1
+ fi
+
+ if [ "$NNN_PREFER_SELECTION" -eq 1 ]; then
+ return 0
+ else
+ [ -n "$1" ] && printf "$1 "
+ printf "(s)election/(c)urrent? [default=c] "
+ read -r resp__
+
+ if [ "$resp__" = "s" ]; then
+ return 0
+ else
+ return 1
+ fi
+ fi
+}
# Shell: POSIX compliant
# Author: KlzXS
-selection=${NNN_SEL:-${XDG_CONFIG_HOME:-$HOME/.config}/nnn/.selection}
+# shellcheck disable=SC1090,SC1091
+. "$(dirname "$0")"/.nnn-plugin-helper
printf "(s)ymmetric, (a)symmetric? [default=a] "
read -r symmetry
if [ "$symmetry" = "s" ]; then
gpg --symmetric "$1"
else
- printf "(s)election/(c)urrent? [default=c] "
- read -r resp
-
- if [ "$resp" = "s" ]; then
+ if nnn_use_selection; then
+ clear_sel=1
files=$(tr '\0' '\n' < "$selection")
else
+ clear_sel=0
files=$1
fi
printf "%s" "$files" | xargs -n1 gpg --encrypt --recipient "$recipient"
- # Clear selection
- if [ "$resp" = "s" ] && [ -p "$NNN_PIPE" ]; then
- printf "-" > "$NNN_PIPE"
- fi
+ # Clear selection
+ if [ "$clear_sel" -eq 1 ] && [ -p "$NNN_PIPE" ]; then
+ printf "-" > "$NNN_PIPE"
+ fi
fi