Bläddra i källkod

Fix #526: persistent session

master
Arun Prakash Jana 4 år sedan
förälder
incheckning
645f43355e
Ingen känd nyckel hittad för denna signaturen i databasen GPG-nyckel ID: A75979F35C080412
2 ändrade filer med 10 tillägg och 7 borttagningar
  1. +3
    -2
      nnn.1
  2. +7
    -5
      src/nnn.c

+ 3
- 2
nnn.1 Visa fil

@@ -109,7 +109,7 @@ supports the following options:
load a session by name
.Pp
.Fl S
start in disk usage analyzer mode
persistent session
.Pp
.Fl "t secs"
idle timeout in seconds to lock terminal
@@ -160,7 +160,8 @@ Sessions can be loaded dynamically from within a running
instance, or with a program option.
.Pp
When a session is loaded dynamically, the last working session is saved
automatically to a dedicated -- "last session" -- session file.
automatically to a dedicated -- "last session" -- session file. The "last
session" is also used in persistent session mode.
.Pp
All the session files are located by session name in the directory
.Pp


+ 7
- 5
src/nnn.c Visa fil

@@ -6245,6 +6245,9 @@ nochange:
break; // fallthrough
}

if (session && *session == '@' && !session[1])
save_session(TRUE, NULL);

/* CD on Quit */
/* In vim picker mode, clear selection and exit */
/* Picker mode: reset buffer or clear file */
@@ -6531,7 +6534,7 @@ static void usage(void)
" -r use advcpmv patched cp, mv\n"
" -R no rollover at edges\n"
" -s name load session by name\n"
" -S du mode\n"
" -S persistent session\n"
" -t secs timeout to lock\n"
" -T key sort order [a/d/e/r/s/t/v]\n"
" -V show version\n"
@@ -6696,10 +6699,6 @@ int main(int argc, char *argv[])
case 'c':
cfg.cliopener = 1;
break;
case 'S':
cfg.blkorder = 1;
nftw_fn = sum_bsize;
blk_shift = ffs(S_BLKSIZE) - 1; // fallthrough
case 'd':
cfg.showdetail = 1;
printptr = &printent_long;
@@ -6770,6 +6769,9 @@ int main(int argc, char *argv[])
if (env_opts_id < 0)
session = optarg;
break;
case 'S':
session = "@";
break;
case 't':
if (env_opts_id < 0)
idletimeout = atoi(optarg);


Laddar…
Avbryt
Spara