]> Sergey Matveev's repositories - nnn.git/commitdiff
Env var NNN_LOCKER
authorArun Prakash Jana <engineerarun@gmail.com>
Wed, 15 Apr 2020 18:59:45 +0000 (00:29 +0530)
committerArun Prakash Jana <engineerarun@gmail.com>
Wed, 15 Apr 2020 18:59:45 +0000 (00:29 +0530)
README.md
nnn.1
src/nnn.c

index fc2edba73b64a3a2c29a95ab4a72b6ac334bd456..c1fe19567db26eeeafd28558afb752185423f615 100644 (file)
--- a/README.md
+++ b/README.md
@@ -144,7 +144,7 @@ A curses library with wide char support (e.g. ncursesw), libreadline (optional)
 | archivemount, fusermount(3)/umount (macOS) | optional | mount, unmount archives |
 | sshfs, [rclone](https://rclone.org/), fusermount(3)/umount (macOS) | optional | mount, unmount remotes |
 | trash-cli | optional | trash files (default action: rm) |
-| vlock (Linux), bashlock (macOS), lock(1) (BSD),<br>peaclock (Haiku) | optional | terminal locker (fallback: [cmatrix](https://github.com/abishekvashok/cmatrix)) |
+| vlock (Linux), bashlock (macOS), lock(1) (BSD),<br>peaclock (Haiku) | optional | terminal locker (else `$NNN_LOCKER`) |
 | advcpmv (Linux) ([integration](https://github.com/jarun/nnn/wiki/Advanced-use-cases#cp-mv-progress)) | optional | copy, move progress |
 | fortune | optional | random quotes in help screen |
 | `$VISUAL` (else `$EDITOR`), `$PAGER`, `$SHELL` | optional | fallback vi, less, sh |
diff --git a/nnn.1 b/nnn.1
index cc3f829a1aeebded38ca46665647048a7c2a48c3..a4beb877850b0e2528cd8f517b163188a22ad2c7 100644 (file)
--- a/nnn.1
+++ b/nnn.1
@@ -407,6 +407,12 @@ separated by \fI;\fR:
     export NNN_TRASH=1
 .Ed
 .Pp
+\fBNNN_LOCKER:\fR terminal locker program.
+.Bd -literal
+    export NNN_LOCKER='bmon -p wlp1s0'
+    export NNN_LOCKER='cmatrix'
+.Ed
+.Pp
 \fBNNN_MCLICK:\fR key emulated by a middle mouse click.
 .Bd -literal
     export NNN_MCLICK='^R'
index 56c5e3f2759af3976457135b5ae35c94e4220b22..33ab5c81fc9d4f87470603b7cee459d427333d94 100644 (file)
--- a/src/nnn.c
+++ b/src/nnn.c
@@ -416,9 +416,9 @@ static uint g_states;
 #define UTIL_UNZIP 3
 #define UTIL_TAR 4
 #define UTIL_LOCKER 5
-#define UTIL_CMATRIX 6
-#define UTIL_LAUNCH 7
-#define UTIL_SH_EXEC 8
+#define UTIL_LAUNCH 6
+#define UTIL_SH_EXEC 7
+#define UTIL_BASH 8
 #define UTIL_ARCHIVEMOUNT 9
 #define UTIL_SSHFS 10
 #define UTIL_RCLONE 11
@@ -429,8 +429,7 @@ static uint g_states;
 #define UTIL_FZY 16
 #define UTIL_NTFY 17
 #define UTIL_CBCP 18
-#define UTIL_BASH 19
-#define UTIL_NMV 20
+#define UTIL_NMV 19
 
 /* Utilities to open files, run actions */
 static char * const utils[] = {
@@ -456,9 +455,9 @@ static char * const utils[] = {
 #else
        "vlock",
 #endif
-       "cmatrix",
        "launch",
        "sh -c",
+       "bash",
        "archivemount",
        "sshfs",
        "rclone",
@@ -469,7 +468,6 @@ static char * const utils[] = {
        "fzy",
        ".ntfy",
        ".cbcp",
-       "bash",
        ".nmv",
 };
 
@@ -3969,12 +3967,7 @@ static bool unmount(char *name, char *newpath, int *presel, char *currentpath)
 
 static void lock_terminal(void)
 {
-       char *tmp = utils[UTIL_LOCKER];
-
-       if (!getutil(tmp))
-               tmp = utils[UTIL_CMATRIX];
-
-       spawn(tmp, NULL, NULL, NULL, F_NORMAL);
+       spawn(xgetenv("NNN_LOCKER", utils[UTIL_LOCKER]), NULL, NULL, NULL, F_CLI);
 }
 
 static void printkv(kv *kvarr, FILE *fp, uchar max)