Commit graph

984 commits

Author SHA1 Message Date
Arun Prakash Jana c5d122e299
Fix broken abort msg when starting in du mode 2020-02-19 19:04:51 +05:30
0xACE 75f6d5d735
Avoid trying to edit a non-existing file (#477)
The previous implementation was inconsistent, sometimes it would
inherit the name of the parent folder of the current directory.

Other scenarios i encountered were:
1. Yield a empty search result, and try to edit. It would seemingly
   randomly select a file or folder
2. What would happen in a root path without any files residing?
2020-02-18 03:51:46 +05:30
Arun Prakash Jana 9cf77708a1
Late get and set NNNLVL before spawning shell 2020-02-17 20:34:03 +05:30
Arun Prakash Jana 1a8f9ee459
Minor reformat 2020-02-17 19:51:24 +05:30
Arun Prakash Jana 6024c51839
Remember file name when refresh is not requested 2020-02-14 22:44:49 +05:30
Arun Prakash Jana f2c4890d6e
Polish PR #476 2020-02-14 20:55:42 +05:30
Uffe Jakobsen 1ed015e988
Add NNN_OPTS environment variable feature (#476) 2020-02-14 20:35:17 +05:30
Arun Prakash Jana 9b199b3253
Remove redundant mouse mask variable 2020-02-14 18:48:44 +05:30
Arun Prakash Jana e664b2d29f
Compile option O_NOMOUSE to disable mouse support 2020-02-14 08:21:30 +05:30
Arun Prakash Jana a0339adf84
Minor refactor 2020-02-14 07:17:09 +05:30
Arun Prakash Jana 928f325a74
Use atoi from lib, use attribute for unused 2020-02-14 06:42:30 +05:30
Arun Prakash Jana ed616cf746
Minor refactor 2020-02-13 20:28:08 +05:30
Arun Prakash Jana 4ffb42c73e
Use s in statusbar to indicate selection enabled 2020-02-13 01:56:16 +05:30
Arun Prakash Jana a8bca5f440
Enable UTF8 for PCRE 2020-02-12 23:02:02 +05:30
Arun Prakash Jana bc7a81921e
Prepare for release v3.0 2020-02-12 07:30:15 +05:30
Arun Prakash Jana fb2793354b
Do not end selection on redraw 2020-02-10 19:23:15 +05:30
Arun Prakash Jana e318672904
Fix prefix calcualtion 2020-02-09 08:21:12 +05:30
Arun Prakash Jana 43fc9890e8
When a file is edited, vim adds a \n at the end 2020-02-09 05:38:12 +05:30
Arun Prakash Jana bc5234be8d
Simplify and fix common prefix calculation 2020-02-09 00:25:58 +05:30
Arun Prakash Jana 58357912bc
Fix build break 2020-02-08 19:58:30 +05:30
Arun Prakash Jana 13e28fdecc
Use xrealpath() to show unresolved symlinks 2020-02-08 19:35:07 +05:30
Arun Prakash Jana 0a48b6b8cc
Ignore . and .. in file list 2020-02-08 19:18:49 +05:30
Arun Prakash Jana ae486e36b8
1. dirname() loses path, 2. use realpath() 2020-02-08 18:51:56 +05:30
Arun Prakash Jana 72668069ed
Show target file size in list mode 2020-02-08 17:45:49 +05:30
Arun Prakash Jana 1d60b6a475
Fix empty dir on list files 2020-02-08 00:11:10 +05:30
Arun Prakash Jana eaba594a9e
Clear filter on a manual dir relaod 2020-02-07 05:53:15 +05:30
Arun Prakash Jana 6d77b04032
Minor refactor 2020-02-04 23:21:50 +05:30
Arun Prakash Jana 1614ce172b
Late allocate memory for path pointers 2020-02-02 19:10:35 +05:30
Arun Prakash Jana 6faab79ba9
xrealloc() may move memory 2020-02-02 17:36:35 +05:30
Arun Prakash Jana 06f6435ebd
Fix build break 2020-02-02 17:25:47 +05:30
Arun Prakash Jana 47a2f93e02
Refactor file list processing 2020-02-02 17:07:53 +05:30
Arun Prakash Jana da4f585188
Fix #446 2020-02-01 22:30:32 +05:30
Arun Prakash Jana 897f01c2c3
Reduce the number of redundant checks 2020-02-01 22:00:53 +05:30
KlzXS 2390ac7b74
List of files as input (#443)
* Start implementation on show list of files as input

* Remove tmp dir on exit, set global flag

* Bug fixes and improvements

* Follow symlinks when in list paths mode

* Fix bugs

* Add flag check

* Add message for invalid paths and style fixes

* Change the message

* Addressing review comments

* Handle errno being set

* Fix CI break

* Decreased startup memory usage and removed loops

* Fix CI break
2020-02-01 20:24:56 +05:30
Maxim Baz 099a9af289
Do not swallow keypress after printwait (#461) 2020-02-01 20:07:18 +05:30
Arun Prakash Jana c0f423496e
Use _exit() to terminate children
The NNN_PIPE file gets deleted after spawning a child in NOWAIT mode. Steps:
- open `nnn` with option `-x`
- press `;o` (custom binding) to open fzopen plugin
- press `^J` to select a file; it will spawn plugin `.cbcp` in NOWAIT mode
- when the intermediate child quits, the NNN_PIPE of parent is also deleted
2020-02-01 19:28:59 +05:30
Arun Prakash Jana 4401dbe092
Ignore link assuming stdscr is NULL 2020-02-01 18:46:56 +05:30
Arun Prakash Jana 27943b9efb
Fix #459
The following changes are made:

- STDOUT and STDIN are redirected to /dev/null when spawning rclone
  rclone blocks and also shows error/warning messages. nnn needs to spawn
  rclone and return without waiting. To avoid the rclone messages from
  corrupting the screen nnn makes the child silent.
  Note: sshfs returns after mount with a proper error code
- prompt only if both sshfs and rclone are installed
2020-02-01 08:57:16 +05:30
Arun Prakash Jana 6f48a711d4
Auto-proceed on open (key + to toggle) 2020-01-31 01:45:06 +05:30
Arun Prakash Jana 6aed714347
Run GUI app as plugin 2020-01-30 23:41:19 +05:30
Sijmen J. Mulder 46fc9c983c
Fallbacks for absent NAME_MAX and PATH_MAX (#455)
* Fallbacks for absent NAME_MAX and PATH_MAX

Certainly NAME_MAX isn't guaranteed to exist and on (some versions of?)
Illumos and SmartOS it doesn't, so provide some reasonably accommodating
fallbacks.

* Smaller limits

* Remove now redundant PATH_MAX definition for Hurd
2020-01-29 19:01:07 +05:30
Arun Prakash Jana c434d8d4bc
Use enough buffer length for file names 2020-01-29 05:22:03 +05:30
Arun Prakash Jana 9cbadc12be
Fix typo 2020-01-27 23:50:29 +05:30
Arun Prakash Jana e3d80da2ad
Exit prompt on ^D at empty prompt 2020-01-27 19:46:10 +05:30
Ethan R 812368cce6 Added more readline bindings (#452) 2020-01-27 18:57:56 +05:30
Arun Prakash Jana e5ad7d81ff
PCRE 2 - fix check for filter match
Kind contribution from uno20001:

https://old.reddit.com/r/C_Programming/comments/etavho/file_manager_nnn_needs_help_with_pcre/fffk4wr/
2020-01-24 22:46:47 +05:30
Arun Prakash Jana 196c09ab9b
PCRE 2 - fix compilation error 2020-01-24 22:25:27 +05:30
Arun Prakash Jana e2d37632ea
PCRE - add error handling 2020-01-24 19:00:45 +05:30
KlzXS 27617c0446 Detach process with F_NOWAIT (#450)
* Experimental PCRE library support

To compile with PCRE install libpcre-dev(el) and run:

cc  -Wall -Wextra -O3 -DPCRE -D_GNU_SOURCE -D_DEFAULT_SOURCE -I/usr/include/ncursesw -I/usr/include -o nnn src/nnn.c -lreadline -lncursesw -ltinfo -lpcre

* Detach process with F_NOWAIT

Co-authored-by: Mischievous Meerkat <engineerarun@gmail.com>
2020-01-24 18:58:43 +05:30
Arun Prakash Jana 827875c3ef
Experimental PCRE library support
To compile with PCRE install libpcre-dev(el) and run:

cc  -Wall -Wextra -O3 -DPCRE -D_GNU_SOURCE -D_DEFAULT_SOURCE -I/usr/include/ncursesw -I/usr/include -o nnn src/nnn.c -lreadline -lncursesw -ltinfo -lpcre
2020-01-24 02:17:48 +05:30