mirror of
https://github.com/jarun/nnn.git
synced 2024-11-24 11:51:27 +00:00
Refresh dirs on disruptive chnages, update sxiv plugin to browse and rename
This commit is contained in:
parent
97e16364bb
commit
9729b1f5a6
|
@ -47,7 +47,7 @@ Plugins extend the capabilities of `nnn`. They are _executable_ scripts (or bina
|
|||
| ringtone | sh | date, ffmpeg | Create a variable bitrate mp3 ringtone from file |
|
||||
| splitjoin | sh | split, cat | Split file or join selection |
|
||||
| suedit | sh | sudoedit/sudo/doas | Edit file using superuser permissions |
|
||||
| sxiv | sh | sxiv | View images in dir, set wallpaper, copy path ([config](https://wiki.archlinux.org/index.php/Sxiv#Assigning_keyboard_shortcuts))|
|
||||
| sxiv | sh | sxiv | Browse images in dir, set wallpaper, copy path ([config](https://wiki.archlinux.org/index.php/Sxiv#Assigning_keyboard_shortcuts)), [rename](https://github.com/jarun/nnn/wiki/Basic-use-cases#browse-rename-images)|
|
||||
| thumb | sh | [lsix](https://github.com/hackerb9/lsix) | View thumbnail of an image or dir of images |
|
||||
| transfer | sh | curl | Upload file to transfer.sh |
|
||||
| treeview | sh | tree | Informative tree output in `$EDITOR` |
|
||||
|
|
16
plugins/sxiv
16
plugins/sxiv
|
@ -1,8 +1,20 @@
|
|||
#!/usr/bin/env sh
|
||||
|
||||
# Description: Open images in current directory in sxiv
|
||||
# Description: Open images in hovered directory and thumbnails
|
||||
# open hovered image in sxiv and browse other images in the directory
|
||||
#
|
||||
# Shell: POSIX compliant
|
||||
# Author: Arun Prakash Jana
|
||||
|
||||
sxiv -q * >/dev/null 2>&1 &
|
||||
if command -v sxiv >/dev/null 2>&1; then
|
||||
if ! [ -z "$1" ]; then
|
||||
if [ -f "$1" ]; then
|
||||
sxiv -q "$PWD"
|
||||
elif [ -d "$1" ] || [ -h "$1" ]; then
|
||||
sxiv -qt "$1"
|
||||
fi
|
||||
fi
|
||||
else
|
||||
echo "sxiv missing"
|
||||
read dummy
|
||||
fi
|
||||
|
|
|
@ -4591,6 +4591,8 @@ nochange:
|
|||
case SEL_RUNPAGE: // fallthrough
|
||||
case SEL_LOCK:
|
||||
{
|
||||
bool refresh = FALSE;
|
||||
|
||||
if (ndents)
|
||||
mkpath(path, dents[cur].name, newpath);
|
||||
else if (sel == SEL_ARCHIVELS || sel == SEL_EXTRACT
|
||||
|
@ -4600,11 +4602,14 @@ nochange:
|
|||
switch (sel) {
|
||||
case SEL_ARCHIVELS:
|
||||
handle_archive(newpath, path, 'l');
|
||||
refresh = TRUE;
|
||||
break;
|
||||
case SEL_EXTRACT:
|
||||
handle_archive(newpath, path, 'x');
|
||||
refresh = TRUE;
|
||||
break;
|
||||
case SEL_REDRAW:
|
||||
refresh = TRUE;
|
||||
break;
|
||||
case SEL_RENAMEMUL:
|
||||
endselection();
|
||||
|
@ -4613,6 +4618,7 @@ nochange:
|
|||
printwait(messages[OPERATION_FAILED], &presel);
|
||||
goto nochange;
|
||||
}
|
||||
refresh = TRUE;
|
||||
break;
|
||||
case SEL_HELP:
|
||||
show_help(path);
|
||||
|
@ -4631,7 +4637,7 @@ nochange:
|
|||
/* In case of successful operation, reload contents */
|
||||
|
||||
/* Continue in navigate-as-you-type mode, if enabled */
|
||||
if (cfg.filtermode && sel != SEL_REDRAW)
|
||||
if (cfg.filtermode && !refresh)
|
||||
break;
|
||||
|
||||
/* Save current */
|
||||
|
|
Loading…
Reference in a new issue