From eb42f7a948104dedfdc84bedd566ddc0d4c0fd5d Mon Sep 17 00:00:00 2001 From: Arun Prakash Jana Date: Sat, 16 Apr 2022 17:36:07 +0530 Subject: [PATCH] Bind ^J with toggle auto-jump on open --- README.md | 2 +- misc/auto-completion/fish/nnn.fish | 2 +- misc/auto-completion/zsh/_nnn | 2 +- nnn.1 | 4 ++-- patches/gitstatus/mainline.diff | 2 +- patches/gitstatus/namefirst.diff | 2 +- patches/restorepreview/mainline.diff | 4 ++-- src/nnn.c | 10 +++++----- src/nnn.h | 4 ++-- 9 files changed, 16 insertions(+), 16 deletions(-) diff --git a/README.md b/README.md index 627d2692..92263b63 100644 --- a/README.md +++ b/README.md @@ -64,7 +64,7 @@ Runs on the Pi, [Termux](https://www.youtube.com/embed/AbaauM7gUJw) (Android), L - Remote mounts (needs `sshfs`, `rclone`) - Familiar shortcuts (arrows, ~, -, @), quick look-up - `cd` on quit (*easy* shell integration) - - Auto-proceed on file open and selection + - Jump to next file on file open and selection - Search - Instant filtering with *search-as-you-type* - Regex (POSIX/PCRE) and string (default) filters diff --git a/misc/auto-completion/fish/nnn.fish b/misc/auto-completion/fish/nnn.fish index 213c5e43..968759fd 100644 --- a/misc/auto-completion/fish/nnn.fish +++ b/misc/auto-completion/fish/nnn.fish @@ -24,7 +24,7 @@ complete -c nnn -s f -d 'use readline history file' complete -c nnn -s g -d 'regex filters' complete -c nnn -s H -d 'show hidden files' complete -c nnn -s i -d 'show current file info' -complete -c nnn -s J -d 'no auto-proceed on select' +complete -c nnn -s J -d 'no auto-jump on select' complete -c nnn -s K -d 'detect key collision' complete -c nnn -s l -r -d 'lines to move per scroll' complete -c nnn -s n -d 'start in type-to-nav mode' diff --git a/misc/auto-completion/zsh/_nnn b/misc/auto-completion/zsh/_nnn index fbb451f4..c2dfb31e 100644 --- a/misc/auto-completion/zsh/_nnn +++ b/misc/auto-completion/zsh/_nnn @@ -22,7 +22,7 @@ args=( '(-g)-g[regex filters]' '(-H)-H[show hidden files]' '(-i)-i[show current file info]' - '(-J)-J[no auto-proceed on select]' + '(-J)-J[no auto-jump on select]' '(-K)-K[detect key collision]' '(-l)-l[lines to move per scroll]:val' '(-n)-n[start in type-to-nav mode]' diff --git a/nnn.1 b/nnn.1 index b9deaa6d..e7d0f0d3 100644 --- a/nnn.1 +++ b/nnn.1 @@ -88,7 +88,7 @@ supports the following options: show current file information in info bar (may be slow) .Pp .Fl J - disable auto-proceed on selection + disable auto-jump on selection (eg. selecting an entry will no longer move cursor to the next entry) .Pp .Fl K @@ -235,7 +235,7 @@ in \fBtype-to-nav\fR mode: Key | Function ------ + ------------------------ ' | Go to first non-dir file - + | Toggle auto-proceed on open + + | Toggle file selection , | Mark CWD - | Go to last visited dir . | Show hidden files diff --git a/patches/gitstatus/mainline.diff b/patches/gitstatus/mainline.diff index ddf331cf..88d19908 100644 --- a/patches/gitstatus/mainline.diff +++ b/patches/gitstatus/mainline.diff @@ -210,7 +210,7 @@ index 1028906a..c80314de 100644 + " -G always show git status\n" " -H show hidden files\n" " -i show current file info\n" - " -J no auto-proceed on select\n" + " -J no auto-jump on select\n" @@ -8266,6 +8382,7 @@ static void cleanup(void) free(hostname); } diff --git a/patches/gitstatus/namefirst.diff b/patches/gitstatus/namefirst.diff index c11dde2d..7f0befff 100644 --- a/patches/gitstatus/namefirst.diff +++ b/patches/gitstatus/namefirst.diff @@ -213,7 +213,7 @@ index af586056..9ebfb203 100644 + " -G always show git status\n" " -H show hidden files\n" " -i show current file info\n" - " -J no auto-proceed on select\n" + " -J no auto-jump on select\n" @@ -8272,6 +8387,7 @@ static void cleanup(void) free(hostname); } diff --git a/patches/restorepreview/mainline.diff b/patches/restorepreview/mainline.diff index 979f9659..01558899 100644 --- a/patches/restorepreview/mainline.diff +++ b/patches/restorepreview/mainline.diff @@ -1,5 +1,5 @@ # Description: Adds preview pipe to enable closing and re-opening the preview -# pane when running an undetached editor. If you are using vim +# pane when running an undetached editor. If you are using vim # you might experience incorrectly resized window. Consider adding # the following to your vimrc: # autocmd VimEnter * :silent exec "!kill -s WINCH $PPID" @@ -11,7 +11,7 @@ index 4243f2cc..b893f573 100644 --- a/src/nnn.c +++ b/src/nnn.c @@ -370,7 +370,8 @@ typedef struct { - uint_t stayonsel : 1; /* Disable auto-proceed on select */ + uint_t stayonsel : 1; /* Disable auto-jump on select */ uint_t trash : 2; /* Trash method 0: rm -rf, 1: trash-cli, 2: gio trash */ uint_t uidgid : 1; /* Show owner and group info */ - uint_t reserved : 7; /* Adjust when adding/removing a field */ diff --git a/src/nnn.c b/src/nnn.c index a102d9ea..3a95f1b4 100644 --- a/src/nnn.c +++ b/src/nnn.c @@ -350,7 +350,7 @@ typedef struct { /* Non-persistent program-internal states (alphabeical order) */ typedef struct { uint_t autofifo : 1; /* Auto-create NNN_FIFO */ - uint_t autonext : 1; /* Auto-proceed on open */ + uint_t autonext : 1; /* Auto-jump on open */ uint_t dircolor : 1; /* Current status of dir color */ uint_t dirctx : 1; /* Show dirs in context color */ uint_t duinit : 1; /* Initialize disk usage */ @@ -368,7 +368,7 @@ typedef struct { uint_t runctx : 3; /* The context in which plugin is to be run */ uint_t runplugin : 1; /* Choose plugin mode */ uint_t selmode : 1; /* Set when selecting files */ - uint_t stayonsel : 1; /* Disable auto-proceed on select */ + uint_t stayonsel : 1; /* Disable auto-jump on select */ uint_t trash : 2; /* Trash method 0: rm -rf, 1: trash-cli, 2: gio trash */ uint_t uidgid : 1; /* Show owner and group info */ uint_t reserved : 7; /* Adjust when adding/removing a field */ @@ -3376,7 +3376,7 @@ static int filterentries(char *path, char *lastname) if (cfg.filtermode) { switch (*ch) { case '\'': // fallthrough /* Go to first non-dir file */ - case '+': // fallthrough /* Toggle auto-proceed on open */ + case '+': // fallthrough /* Toggle file selection */ case ',': // fallthrough /* Mark CWD */ case '-': // fallthrough /* Visit last visited dir */ case '.': // fallthrough /* Show hidden files */ @@ -5023,7 +5023,7 @@ static void show_help(const char *path) "9Lt h Parent%-12c~ ` @ - ~, /, start, prev\n" "5Ret Rt l Open%-20c' First file/match\n" "9g ^A Top%-21c. Toggle hidden\n" - "9G ^E End%-21c+ Toggle auto-proceed on open\n" + "9G ^E End%-20c^J Toggle auto-jump on open\n" "8B (,) Book(mark)%-11cb ^/ Select bookmark\n" "a1-4 Context%-11c(Sh)Tab Cycle/new context\n" "62Esc ^Q Quit%-20cq Quit context\n" @@ -8146,7 +8146,7 @@ static void usage(void) " -g regex filters\n" " -H show hidden files\n" " -i show current file info\n" - " -J no auto-proceed on selection\n" + " -J no auto-jump on selection\n" " -K detect key collision\n" " -l val set scroll lines\n" " -n type-to-nav mode\n" diff --git a/src/nnn.h b/src/nnn.h index 58841314..5e23cc3d 100644 --- a/src/nnn.h +++ b/src/nnn.h @@ -247,8 +247,8 @@ static struct key bindings[] = { { 'u', SEL_UMOUNT }, /* Show help */ { '?', SEL_HELP }, - /* Quit a context */ - { '+', SEL_AUTONEXT }, + /* Toggle auto-jump on open */ + { CONTROL('J'), SEL_AUTONEXT }, /* Edit in EDITOR */ { 'e', SEL_EDIT }, /* Run a plugin */