aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rwxr-xr-xmisc/clipboard-copier/copier10
-rwxr-xr-xplugins/fzhist10
-rwxr-xr-xplugins/ndiff4
-rwxr-xr-xplugins/picker2
-rwxr-xr-xplugins/readit4
-rw-r--r--src/nnn.c4
6 files changed, 16 insertions, 18 deletions
diff --git a/misc/clipboard-copier/copier b/misc/clipboard-copier/copier
index 92f7dce..6ac3ba6 100755
--- a/misc/clipboard-copier/copier
+++ b/misc/clipboard-copier/copier
@@ -8,16 +8,16 @@
SELECTION=${XDG_CONFIG_HOME:-$HOME/.config}/nnn/.selection
# Linux
-cat "$SELECTION" | xargs -0 | xsel -bi
+xargs -0 < "$SELECTION" | xsel -bi
# macOS
-# cat "$SELECTION" | xargs -0 | pbcopy
+# xargs -0 < "$SELECTION" | pbcopy
# Termux
-# cat "$SELECTION" | xargs -0 | termux-clipboard-set
+# xargs -0 < "$SELECTION" | termux-clipboard-set
# Cygwin
-# cat "$SELECTION" | xargs -0 | clip
+# xargs -0 < "$SELECTION" | clip
# Wayland
-# cat "$SELECTION" | xargs -0 | wl-copy
+# xargs -0 < "$SELECTION" | wl-copy
diff --git a/plugins/fzhist b/plugins/fzhist
index 52f13bf..ca1db63 100755
--- a/plugins/fzhist
+++ b/plugins/fzhist
@@ -10,10 +10,10 @@ shellname="$(basename "$SHELL")"
if [ "$shellname" = "bash" ]; then
hist_file="$HOME/.bash_history"
- entry="$(cat "$hist_file" | fzy)"
+ entry="$(fzy < "$hist_file")"
elif [ "$shellname" = "fish" ]; then
hist_file="$HOME/.config/fish/fish_history"
- entry="$(cat "$hist_file" | grep "\- cmd: " | cut -c 8- | fzy)"
+ entry="$(grep "\- cmd: " "$hist_file" | cut -c 8- | fzy)"
fi
if ! [ -z "$entry" ]; then
@@ -21,10 +21,8 @@ if ! [ -z "$entry" ]; then
echo "$entry" >> $tmpfile
$EDITOR $tmpfile
- cmd="$(cat $tmpfile)"
-
- if ! [ -z "$cmd" ]; then
- $SHELL -c "$cmd"
+ if [ -s $tmpfile ]; then
+ $SHELL -c "$(cat $tmpfile)"
fi
rm $tmpfile
diff --git a/plugins/ndiff b/plugins/ndiff
index dff24d2..f5ca0dc 100755
--- a/plugins/ndiff
+++ b/plugins/ndiff
@@ -25,9 +25,9 @@ if [ -s $selection ]; then
else
# If xargs supports the -o option, use it to get rid of:
# Vim: Warning: Input is not from a terminal
- # cat $selection | xargs -0 -o vimdiff
+ # xargs -0 -o vimdiff < $selection
- cat $selection | xargs -0 vimdiff +0
+ xargs -0 vimdiff +0 < $selection
fi
else
echo "needs at least 2 files or directories selected for comparison"
diff --git a/plugins/picker b/plugins/picker
index a500435..91101fe 100755
--- a/plugins/picker
+++ b/plugins/picker
@@ -21,6 +21,6 @@
nnn -p /tmp/picked
if [ -f /tmp/picked ]; then
- cat /tmp/picked | tr '\0' '\n'
+ tr '\0' '\n' < /tmp/picked
rm /tmp/picked
fi
diff --git a/plugins/readit b/plugins/readit
index b997235..e0058db 100755
--- a/plugins/readit
+++ b/plugins/readit
@@ -13,11 +13,11 @@ if ! [ -z "$1" ]; then
# Convert using pdftotext
pdftotext -nopgbrk -layout "$1" - | sed 's/\xe2\x80\x8b//g' > "$tmpf".txt
- pico2wave -w "$tmpf".wav -l en-GB "$(cat "$tmpf".txt | tr '\n' ' ')"
+ pico2wave -w "$tmpf".wav -l en-GB "$(tr '\n' ' ' < "$tmpf".txt)"
rm "$tmpf".txt
else
- pico2wave -w "$tmpf".wav -l en-GB "$(cat "$1" | tr '\n' ' ')"
+ pico2wave -w "$tmpf".wav -l en-GB "$(tr '\n' ' ' < "$1")"
fi
# to jump around and note the time
diff --git a/src/nnn.c b/src/nnn.c
index db6108b..52347ff 100644
--- a/src/nnn.c
+++ b/src/nnn.c
@@ -891,7 +891,7 @@ static bool listselfile(void)
if (!sb.st_size)
return FALSE;
- snprintf(g_buf, CMD_LEN_MAX, "cat %s | tr \'\\0\' \'\\n\'", g_selpath);
+ snprintf(g_buf, CMD_LEN_MAX, "tr \'\\0\' \'\\n\' < %s", g_selpath);
spawn(utils[SH_EXEC], g_buf, NULL, NULL, F_CLI | F_CONFIRM);
return TRUE;
@@ -1346,7 +1346,7 @@ static bool cpmv_rename(int choice, const char *path)
/* selsafe() returned TRUE for this to be called */
if (!selbufpos) {
- snprintf(buf, sizeof(buf), "cat %s | tr '\\0' '\\n' > %s", g_selpath, g_tmpfpath);
+ snprintf(buf, sizeof(buf), "tr '\\0' '\\n' < %s > %s", g_selpath, g_tmpfpath);
spawn(utils[SH_EXEC], buf, NULL, NULL, F_CLI);
count = lines_in_file(fd, buf, sizeof(buf));