Arun Prakash Jana
ef2d5a54d2
Support file colors in detail mode
2020-08-04 21:02:19 +05:30
Arun Prakash Jana
42fd2a4d13
Program option to use older
2020-08-04 20:36:19 +05:30
Arun Prakash Jana
ae961da157
Support file colors
2020-08-04 19:22:29 +05:30
Arun Prakash Jana
ccfccb7187
Detect odd hex symbols in NNN_COLORS
2020-08-04 00:42:58 +05:30
Arun Prakash Jana
8d94809897
Identify orphaned symlinks
2020-08-03 23:55:14 +05:30
Arun Prakash Jana
33953147d6
Use wrapper API
2020-08-03 22:25:42 +05:30
Arun Prakash Jana
f03ddb587c
Fix #691
2020-08-03 14:57:00 +05:30
Arun Prakash Jana
2fbb6ae35f
Minor reformat
2020-08-02 23:58:52 +05:30
Arun Prakash Jana
b3f2e47173
Revert "Reduce processing if NNN_COLORS is unset"
...
This reverts commit b948423a80
.
2020-08-02 23:18:13 +05:30
Arun Prakash Jana
b948423a80
Reduce processing if NNN_COLORS is unset
2020-08-02 23:15:48 +05:30
Arun Prakash Jana
359b6f7a37
Clear selection list after copy
...
Without this, there is a conflict with using the `-u` option (use selection).
After copying selected files, the selection is intact and if the user issues
a deletion next, the source files (meant for copying) are deleted.
2020-08-02 19:16:15 +05:30
Arun Prakash Jana
d5e303beb7
Fix illegal access
2020-08-02 17:03:35 +05:30
Arun Prakash Jana
83fa6a0ff6
Support xterm 256 color
2020-08-02 16:28:25 +05:30
Arun Prakash Jana
110a4eb108
Avoid redundant printw() call for order
2020-08-02 00:54:07 +05:30
Arun Prakash Jana
9bad3c9399
Show selection in reverse in status bar
2020-08-02 00:40:51 +05:30
Arun Prakash Jana
1fb1ab55a7
Fix build break
2020-08-01 23:31:30 +05:30
Martin Roa Villescas
e557bd2ed9
Write last dir on quit in vim picker mode
2020-08-01 22:53:27 +05:30
Arun Prakash Jana
defc1965ee
Code reduction
2020-07-22 20:19:38 +05:30
Arun Prakash Jana
32ec37a796
Create mountpoint by hostname, clear prompt
2020-07-22 17:57:15 +05:30
Arun Prakash Jana
f4ff4b0793
Fix #684 : support path appended to hostname
2020-07-22 17:00:45 +05:30
Arun Prakash Jana
a58c65a51a
Fix #685 : indicator H fo hidden
2020-07-21 22:30:30 +05:30
Arun Prakash Jana
f17911e189
Prepare for release v3.3
2020-07-14 05:50:22 +05:30
Arun Prakash Jana
a02ff64e9c
Update help
2020-07-13 00:20:12 +05:30
Arun Prakash Jana
387bd048e7
Alt+Esc to exit nav-to-type and redraw
2020-07-13 00:00:34 +05:30
Arun Prakash Jana
890425c08c
Add a note that Esc cancels
2020-07-09 20:30:30 +05:30
Arun Prakash Jana
1d8a14c6b4
Fix #675
2020-07-09 20:25:39 +05:30
Arun Prakash Jana
d3e20e9015
Use the term mark instead of pin
2020-07-07 07:57:43 +05:30
Arun Prakash Jana
6fa4978230
Pin dir when visitng target file in find and list
2020-07-07 07:29:38 +05:30
Arun Prakash Jana
709e7bd7dd
Remove snprintf() from start-up path
2020-07-04 23:01:36 +05:30
Arun Prakash Jana
1faf9f2480
Revert "Simplify check"
...
This reverts commit 37e5e6189a
.
2020-06-28 20:33:54 +05:30
Arun Prakash Jana
4178aaa98e
Copy the correct length
2020-06-28 00:52:24 +05:30
Arun Prakash Jana
90cf84186a
Minor refactor
2020-06-28 00:09:48 +05:30
Arun Prakash Jana
06651f3f00
Fix build break
2020-06-27 23:48:23 +05:30
KlzXS
45d96ee60d
Add relative paths support for cp/mv as ( #668 )
2020-06-27 23:16:17 +05:30
Arun Prakash Jana
cb9e785145
Fix build break
2020-06-27 23:14:14 +05:30
Arun Prakash Jana
56b96cbf74
Pin current path on archive/remote mount
2020-06-27 22:22:20 +05:30
Arun Prakash Jana
37e5e6189a
Simplify check
2020-06-25 19:59:47 +05:30
Sijmen J. Mulder
235eb29614
Fix check when char is unsigned ( #665 )
...
If char is unsigned (as on ARM) subtracting a larger number would
result in a wrap around, not a negative value.
src/nnn.c: In function 'readpipe':
src/nnn.c:4325:11: warning: comparison is always false due to limited
range of data type [-Wtype-limits]
if (ctx < 0 || ctx > CTX_MAX)
^
2020-06-24 04:35:42 +05:30
Sijmen J. Mulder
3686ef756a
Always use builtin alloca() ( #666 )
...
Fixes the build on NetBSD 9 on arm64.
GCC expands alloca() to __builtin_alloca() but only in nonstandard mode,
e.g. when -std=... is not supplied. In standards mode (with -std=...)
alloca() is left undefined by GCC. The C library may define it but it
also may not, as on NetBSD on arm64:
$ uname -srp
NetBSD 9.0 aarch64
$ cat alloca.c
#include <stdlib.h>
int main() { char *p = alloca(10); }
$ gcc alloca.c
$ gcc -std=c99 alloca.c
alloca.c:(.text+0xc): warning: Warning: reference to the libc
supplied alloca(3); this most likely will not work. Please use the
compiler provided version of alloca(3), by supplying the
appropriate compiler flags (e.g. not -std=c89).
ld: alloca.c:(.text+0xc): undefined reference to `alloca'
The fix is to either not use standards mode (undesirable) or to
explicitly use the builtin, which is what this patch does.
This is also sufficient for Solarius/Illumos so that check and include
are removed.
2020-06-24 04:17:05 +05:30
Arun Prakash Jana
306af787ca
Add -Wshadow to CFLAGS and fixes
2020-06-22 09:17:59 +05:30
lvgx
7a1a4e293e
Avoid SIGWINCH interruptions of NNN_PIPE IO ( #659 )
...
Fixes #656
2020-06-19 07:10:37 +05:30
Arun Prakash Jana
4b4bf6cca5
Option -u to disable current/selection prompt
2020-06-15 19:54:44 +05:30
Arun Prakash Jana
d9b8b0e821
Clear selection after some operations (see notes)
...
Selection is cleared after successful:
- file removal
- batch rename
- link creation
However, selection is not cleared after:
- archive creation: user may want to delete the files after archiving
2020-06-15 19:13:08 +05:30
Arun Prakash Jana
7c802cce60
Show '+' in statusbar instead of 's' for selection
2020-06-14 09:56:34 +05:30
Arun Prakash Jana
b3076e35d6
Refactor key-val pair parsing
2020-06-14 00:31:48 +05:30
Arun Prakash Jana
a1ec2236d8
Make once-used function inline
2020-06-14 00:09:16 +05:30
Ian R
1f22da2994
Feature #534 : Support hardware cursor sync
2020-06-11 11:30:43 +05:30
Arun Prakash Jana
b3e2ffc2e6
Selection mode don't need to be persistent
2020-06-09 23:43:49 +05:30
Arun Prakash Jana
05b1db059e
Plugin run flags don't need to be persistent
2020-06-09 23:33:32 +05:30
Arun Prakash Jana
796334354e
Picker mode doesn't need to be persistent
2020-06-09 23:03:36 +05:30
Arun Prakash Jana
b481b23280
Retain order on session load
2020-06-09 22:26:35 +05:30
Arun Prakash Jana
c5f0a25e7e
Simplify subdir creation
2020-06-08 21:56:33 +05:30
Arun Prakash Jana
d19d8d5f02
Derive session and mount paths, shorten paths
2020-06-08 09:44:53 +05:30
Arun Prakash Jana
b62adec72c
Subdir 'mounts' for remote/archive mounts
2020-06-08 08:48:20 +05:30
Arun Prakash Jana
fdfbac0386
Fix #639 : store NNNLVL in tmp var
2020-06-07 00:35:05 +05:30
Arun Prakash Jana
65cf067dc4
Fix #637 : remove mount dir after unmount
2020-06-06 16:22:32 +05:30
Arun Prakash Jana
58fd92c7ae
Add new ToDo list
2020-06-03 16:12:27 +05:30
Arun Prakash Jana
2fc115bddc
Esc to send hovered path to FIFO
2020-06-03 15:56:10 +05:30
Arun Prakash Jana
709c0d209e
Force notify on left click (right selects & updates)
2020-06-03 14:51:52 +05:30
Arun Prakash Jana
1dbbc45c78
Key | to send file path to FIFO
2020-06-02 16:50:06 +05:30
Arun Prakash Jana
61b4416e08
Refresh hovered for preview on mouse click
2020-06-02 16:29:26 +05:30
Arun Prakash Jana
0ebc6db163
Fix #624 : wait for user input if cmd fails
2020-06-01 21:21:01 +05:30
Sijmen J. Mulder
68b9185071
Wrap FILE_MIME_OPTS use in check ( #622 )
...
We leave it undefined on Solaris/Illumos because no such options exist,
so only use it if we have it.
2020-06-01 06:47:03 +05:30
Arun Prakash Jana
8549121d86
Remove redundant key F5
2020-05-31 23:20:08 +05:30
Arun Prakash Jana
7263a5f89b
Do not auto-revive filter in nav-to-type mode
2020-05-31 23:05:59 +05:30
Arun Prakash Jana
4a2d978630
Simplify get_input()
2020-05-31 20:10:11 +05:30
Arun Prakash Jana
984cffecc4
Set the corrent keybind for plugin
2020-05-31 13:27:05 +05:30
Arun Prakash Jana
8e9c4ec88b
F5 to redraw (even with filter)
2020-05-30 23:25:01 +05:30
Arun Prakash Jana
04f9698d86
Retire ^S as select plugin
2020-05-30 22:02:55 +05:30
Arun Prakash Jana
309ed0ed67
Remove NNN_PIPE on exit
2020-05-30 15:31:37 +05:30
Arun Prakash Jana
e3d90a98ce
Support make option O_CTX8 for 8 contexts
...
Note that this is not compatible with 4 contexts.
2020-05-30 07:01:34 +05:30
Arun Prakash Jana
4d291d0ac2
Use bitfields for runtime transient states
2020-05-30 06:45:45 +05:30
Arun Prakash Jana
32ab43a9ff
Handle number of contexts in a generic fashion
...
This supports using a power of 2 number of contexts like 2, 4 or 8.
Note that the number of contexts are not backward compatible. So if
user is having 8 contexts and plans to use 4, his sessions with > 1
contexts open may break.
We can have a make option to enable 8 contexts. 4 remains default.
2020-05-30 06:07:53 +05:30
Arun Prakash Jana
c48b8d02a1
Revert "Alt+Enter: clear filter and exit filter prompt"
...
This reverts commit 2232772db4
.
2020-05-30 05:24:41 +05:30
Mischievous Meerkat
e47a04865e
Merge pull request #607 from leovilok/signals
...
Cleanly handle SIGTERM and SIGHUP
2020-05-30 05:08:45 +05:30
lvgx
41dc17883a
Fix detecting end of evironment options ( #610 )
...
This allow using both NNN_OPTS and options with arguments from argv.
2020-05-30 04:51:16 +05:30
Léo Villeveygoux
75e8bf44be
Use sigaction() instead of signal()
2020-05-29 22:48:36 +02:00
Léo Villeveygoux
3426d0d0a3
Cleanly handle SIGTERM and SIGHUP
2020-05-29 22:48:36 +02:00
Arun Prakash Jana
2232772db4
Alt+Enter: clear filter and exit filter prompt
2020-05-29 22:16:36 +05:30
Arun Prakash Jana
87bb2d7742
Remove F5 for toggle hidden (misfit)
2020-05-29 09:25:33 +05:30
Arun Prakash Jana
2599564e64
Set Escape delay to 0
2020-05-29 08:51:22 +05:30
Arun Prakash Jana
dd5a936bf4
Alt+Esc to clear filter and exit filter prompt
...
It's a little annoying that one has to press ^L followed by Esc to go back
to the normal view. We cannot reload the directory on Esc because that will
break the filter filtered view feature. So we take this route.
2020-05-29 08:50:33 +05:30
Arun Prakash Jana
713bab21ea
Prepare for release v3.2
2020-05-26 05:38:38 +05:30
Arun Prakash Jana
38829e5610
Fix build break
2020-05-24 09:28:29 +05:30
Arun Prakash Jana
56886922a6
Select file if file path is passed
2020-05-24 03:33:39 +05:30
Arun Prakash Jana
c1f88d00ff
Fix filterfn not in sync with cfg.regex
2020-05-24 01:51:59 +05:30
lvgx
b1027150ed
Add -a option to generate a temporary NNN_FIFO ( #588 )
...
* Add -a option to generate a temporary NNN_FIFO
* Add documentation for -a option
* plugins/README.md: promote the use of -a
This obsoletes the global FIFO unlink trick, so I remove mentions of it.
@jarun update:
Polish -a
2020-05-23 17:40:51 +05:30
Arun Prakash Jana
a4909beb44
Fix build break
2020-05-20 19:07:00 +05:30
Arun Prakash Jana
9e41c39138
Fix #582
2020-05-20 18:46:12 +05:30
lvgx
0c916ae7b0
Notify FIFO readers on exit (if any) ( #581 )
...
This allows to close preview windows opened just before exiting nnn.
2020-05-19 22:29:13 +05:30
Arun Prakash Jana
b465bf9427
Fix regression from commit 2200a1c
2020-05-19 17:54:36 +05:30
Arun Prakash Jana
709b2f229e
Fix build break
2020-05-19 08:50:04 +05:30
Arun Prakash Jana
1b5c3096ca
Option -P: specify plugin key to run on start
2020-05-18 09:05:19 +05:30
Arun Prakash Jana
cafcf1c485
Take to target on Right/l on symlink in list dir
2020-05-17 22:54:39 +05:30
Arun Prakash Jana
74b95eb9bd
Fix #575
2020-05-16 15:31:34 +05:30
Arun Prakash Jana
124666cb38
Fix #571
2020-05-14 12:46:37 +05:30
lvgx
2200a1c9be
Allow launching plugins with Alt + plugin's key ( #569 )
...
* Allow launching plugins with Alt + plugin's key
* Fix Alt key in filter/prompts modes
* Fix handling Alt key in nextsel()
In filter mode: run the associated plugin.
In prompt mode: just throw out the Alt+key input.
In nextsel(): differentiate Alt+key and Esc
2020-05-13 12:29:47 +05:30
Arun Prakash Jana
38e61fb864
Skip printing and erasing
2020-05-12 15:15:47 +05:30
Arun Prakash Jana
5f3faf613a
Do not leak wfd
2020-05-10 22:50:29 +05:30
Arun Prakash Jana
861d44f934
Simplify cd
2020-05-10 19:15:40 +05:30
Arun Prakash Jana
cfd4a66596
Fix #565 : chdir when dir is changed
2020-05-10 16:23:45 +05:30
Arun Prakash Jana
14beb0746f
Fix #564 : Option -l: number of lines to move on mouse scroll
2020-05-10 11:22:02 +05:30
Arun Prakash Jana
609561494f
Remove blocking pipe open in child
2020-05-10 11:19:13 +05:30
Arun Prakash Jana
f0535dbd76
Use standard exit status everywhere
2020-05-10 10:04:03 +05:30
Arun Prakash Jana
0b0166816a
Use exit status
2020-05-10 09:57:20 +05:30
Arun Prakash Jana
1f51417c63
Fix reading from pipe when running plugin
2020-05-10 00:47:02 +05:30
Arun Prakash Jana
151bbf000d
Increase pipe capacity
2020-05-09 14:55:21 +05:30
Arun Prakash Jana
db3a46a197
Ignore -S when start dir is specified
2020-05-06 23:26:40 +05:30
Arun Prakash Jana
2a5f8433b8
Ignore false lint issue
2020-05-06 21:28:59 +05:30
Arun Prakash Jana
ab9f560fa8
Fix no preview update when dir changed with same entry number hovered
2020-05-06 19:29:46 +05:30
Arun Prakash Jana
ce06bf15d6
Fix broken dir read from pipe
2020-05-06 19:03:29 +05:30
Arun Prakash Jana
4832fc5fe1
Drop fzy support
2020-05-06 18:41:01 +05:30
Léo Villeveygoux
5b34d0dbe7
Prevent open FIFO prom leaking to subprocess
...
This fix previews window staying open after nnn exits, because they
inherited open FIFO (in write mode) from parent nnn process, and never
close it.
2020-05-06 01:45:21 +02:00
Arun Prakash Jana
4c18f22587
Fix double free when starting in list mode
2020-05-05 23:35:14 +05:30
0xACE
65da1c1941
Double click only works on same item ( #555 )
...
This patch disables accidental triggering of double clicking when you
are just single clicking on multiple objects fast.
2020-05-05 18:02:42 +05:30
0xACE
c9f0e279af
SEL_FIRST now displays the correct message ( #556 )
...
A bit scary when you get prompted to remove a file but you wanted to
select a file.
I also made sure all strings are correctly ordered.
2020-05-05 17:49:26 +05:30
Arun Prakash Jana
6ee257920d
Fix context range check
2020-05-05 17:14:42 +05:30
lvgx
86e579799b
Add an option to print hovered files to a FIFO ( #548 )
...
* Add an option to print hovered files to a FIFO
This adds an env variable, `NNN_FIFO`, that can be set to a path that
`nnn` will open/create as a FIFO, and where every hovered file's path is
printed. This allows creating external perview/quick open plugins, ...
It can be compiled out with the make variable `O_NOFIFO`.
* Check filename ptr instead of full path (for FIFO)
* Add documentation to use NNN_FIFO in plugins
* Fix path sent to FIFO in empty dirs
2020-05-04 09:35:13 +05:30
Arun Prakash Jana
b5de18c28f
Use const type
2020-05-04 07:48:51 +05:30
Arun Prakash Jana
625c8d11f4
Refactor move_cursor()
2020-05-04 06:17:38 +05:30
Arun Prakash Jana
f2fd923573
Fix #550
2020-05-04 04:25:26 +05:30
Arun Prakash Jana
ffc0790fba
Add is_prefix(), block empty files completely
2020-05-04 04:08:12 +05:30
Arun Prakash Jana
ebb6f153b5
Context code '+' to create context smartly
2020-05-03 16:25:59 +05:30
Arun Prakash Jana
3f60a1931f
Decouple listpath and initpath
2020-05-03 15:25:19 +05:30
Arun Prakash Jana
8b764a5f7c
Show messages appropriately
2020-05-03 15:14:26 +05:30
Arun Prakash Jana
eee5057da5
Plugin mimelist: support reading file list from (cmd as) plugin
2020-05-03 14:55:33 +05:30
Danh Doan
e8e87f6ba2
browse: fix nnn -e ( #549 )
...
The current code will start editor if the mime doesn't start with
"text/". But, we want the opposite.
Simplify the check by using `strncmp` instead.
We may improve by writing a helper: `start_withs` in the future.
This change also cleans -Wstrict-aliasing on Ubuntu 16.04 LTS
2020-05-03 09:56:16 +05:30
Arun Prakash Jana
ff568ea748
Simplify unescape() in no locale mode
2020-05-03 02:52:48 +05:30
Arun Prakash Jana
f5c6f4f90b
Dim file details in detail mode
2020-05-02 19:58:10 +05:30
Arun Prakash Jana
f1a9446b99
Use mem* function
2020-04-27 08:25:13 +05:30
Arun Prakash Jana
e7147c1f39
Show error at source
2020-04-26 14:05:56 +05:30
Arun Prakash Jana
33fdbc2216
Fix #537
2020-04-26 13:54:12 +05:30
Arun Prakash Jana
6689870460
Fix buffer cleanup
2020-04-26 10:59:01 +05:30
Arun Prakash Jana
01392d48ad
Fix buffer cleanup
2020-04-26 02:37:16 +05:30
Arun Prakash Jana
99d21531b4
Use memrchr if available
2020-04-26 02:06:17 +05:30
Arun Prakash Jana
c732de32e4
Resolve path in list mode
2020-04-25 20:52:23 +05:30
Arun Prakash Jana
06fe7d52dd
Minor refactor
2020-04-25 03:42:34 +05:30
Arun Prakash Jana
f8a243ea91
Silently ignore invalid paths (documented)
2020-04-25 00:46:29 +05:30
Arun Prakash Jana
d118c4cc24
Fix #532 : support picker and list modes together
2020-04-25 00:46:25 +05:30
Arun Prakash Jana
fffaa74a09
Fix return and show error
2020-04-24 20:30:16 +05:30
KlzXS
7b7252dd32
Fix picker and list mode conflict ( #533 )
...
* Fix picker and list mode conflict
* Comment the change
2020-04-24 20:26:09 +05:30
Arun Prakash Jana
bc572df55a
NNN_SEL: custom selection file
2020-04-24 18:12:18 +05:30
Arun Prakash Jana
752bc67de0
Bookmark key get priority over session
2020-04-24 09:54:43 +05:30
Arun Prakash Jana
4b5ecbe8fc
Do a complete erase
2020-04-19 03:11:12 +05:30
Arun Prakash Jana
12df1ab083
Fix listing files directly under /
2020-04-18 15:08:23 +05:30
Arun Prakash Jana
b40e12ee9f
Remove hacky single path handling
2020-04-18 13:35:57 +05:30
Arun Prakash Jana
75724f9e3b
Fix #520 : minimal erasure
2020-04-18 07:18:35 +05:30
Arun Prakash Jana
645f43355e
Fix #526 : persistent session
2020-04-18 04:54:07 +05:30
Todd Yamakawa
c63fb28eff
Fix #523 : handle NNN_PIPE ( #525 )
...
Co-authored-by: Todd Yamakawa <todd.yamakawa@arm.com>
2020-04-17 17:51:57 +05:30
Arun Prakash Jana
58ecc240ed
Save offset in key-val pairs
2020-04-17 16:53:19 +05:30
Arun Prakash Jana
e92b523976
Fix #523 : create NNN_PIPE early
2020-04-17 08:54:50 +05:30
Arun Prakash Jana
ddaddcaf21
Experimental: guards to reduce repeat screen redraws
2020-04-16 17:45:58 +05:30
Arun Prakash Jana
37ebf8054f
Go to first file or next match
2020-04-16 03:44:07 +05:30
Arun Prakash Jana
63c177bb15
Env var NNN_LOCKER
2020-04-16 00:29:45 +05:30
Arun Prakash Jana
135172a1c6
Fix #520
2020-04-15 22:36:33 +05:30
Arun Prakash Jana
124d66dcbd
Fix build break
2020-04-15 21:05:10 +05:30
Arun Prakash Jana
425c0559a5
One-pass key-val pair parsing for bms and plugs
2020-04-15 20:43:26 +05:30
Arun Prakash Jana
ac8b56ecc2
Show entry even if no permission
2020-04-15 17:52:21 +05:30
Arun Prakash Jana
588b413832
Optimized xstrlen(), xstrdup()
2020-04-15 16:18:41 +05:30
Arun Prakash Jana
30a6caf8bc
Refactor set_time_type()
2020-04-14 22:38:33 +05:30
Arun Prakash Jana
e0cdbcb521
Check for file first (more in number)
2020-04-14 20:59:37 +05:30
Arun Prakash Jana
1029ff0d5b
MInor refactor
2020-04-14 09:54:42 +05:30
Arun Prakash Jana
e72fa538d7
Reduce the scope of loop variables
2020-04-13 23:21:43 +05:30
lvgx
a6cef2504c
Make NNN_COLORS override NO_COLORS ( #515 )
2020-04-13 22:21:56 +05:30
Arun Prakash Jana
cd1c458c96
Fix build break
2020-04-13 21:55:11 +05:30
Arun Prakash Jana
a9436cfe7b
Fix build break
2020-04-13 21:42:23 +05:30
Arun Prakash Jana
c58434d078
Fix symlink to dir indicator in detail mode
2020-04-13 20:42:19 +05:30
Arun Prakash Jana
35c3497364
Use memccpy
2020-04-13 20:35:14 +05:30
Arun Prakash Jana
315132b363
Happy Birthday nnn! 🍰
2020-04-13 09:01:09 +05:30
Arun Prakash Jana
f54d51c863
Change nav-as-you-type to type-to-nav
2020-04-12 22:39:14 +05:30
Arun Prakash Jana
806b91b60d
Simplified dirname()
2020-04-12 17:44:29 +05:30
Arun Prakash Jana
2b3214bd58
Simplify finding valid parent
2020-04-12 17:12:14 +05:30
Arun Prakash Jana
5e0049b6fa
Fix indent
2020-04-12 09:50:03 +05:30
Saagar Jha
3bab34e962
Opinionated xstrlcpy changes ( #513 )
...
* Unvectorize xstrlcpy
On all libcs I could find, memcpy does a better job than we can.
* Rename xstrlcpy to xstrsncpy to avoid confusion
The semantics of our xstrlcpy differed slightly from strlcpy; we return
the number of copied characters; strlcpy returns the strlen(src).
strscpy from Linux is similar except it returns the number of copied
characters sans the NUL byte, so this is named strsncpy to be different.
2020-04-12 06:05:14 +05:30
Arun Prakash Jana
2115d75ac6
Minor refactor
2020-04-11 23:48:05 +05:30
Arun Prakash Jana
0b66191dd5
Minor refactor
2020-04-11 20:23:24 +05:30
Arun Prakash Jana
36ae4b8250
Hover on dir and connect remote
2020-04-10 19:53:16 +05:30
Arun Prakash Jana
b3f8e4e511
Minor reformat
2020-04-09 19:13:42 +05:30
Arun Prakash Jana
707e30a590
Show status bar info in context color
2020-04-09 16:52:36 +05:30
Arun Prakash Jana
341b1ccb00
x to extract archive
2020-04-07 21:18:24 +05:30
Arun Prakash Jana
46f17885ce
Fix #511 : chew ling strings at filter prompt
2020-04-06 21:39:37 +05:30
Arun Prakash Jana
cee24984bc
Fix #511
2020-04-06 21:06:39 +05:30
Arun Prakash Jana
e1ed4c62c5
Fix #510
2020-04-06 19:30:16 +05:30
Arun Prakash Jana
b060115a19
A nocolor msg print
2020-04-05 22:46:16 +05:30
Arun Prakash Jana
1195dc86e0
Remove redundant calls
2020-04-05 21:45:30 +05:30
Arun Prakash Jana
078d05dc7a
Fix jump on canceled duplicate
2020-04-05 14:42:32 +05:30
Arun Prakash Jana
1014d941b1
Support only NO_COLOR, revert -C to disable color
2020-04-05 13:07:18 +05:30
lvgx
f14fb9c0f9
Add suport for "standard" NO_COLOR env variable ( #508 )
...
See https://no-color.org
2020-04-05 03:56:18 +02:00
Arun Prakash Jana
6d13fce698
Fix screen not cleared with drag down on narrow terms
2020-04-05 06:37:26 +05:30
Arun Prakash Jana
0c966b2178
With dimming, @ is not required for symlink to dir
2020-04-05 06:30:28 +05:30
Arun Prakash Jana
02c02c520d
Option -C to disable color
2020-04-05 05:53:46 +05:30
Arun Prakash Jana
0e3146ebd2
Status bar in context color
2020-04-04 23:39:21 +05:30
Arun Prakash Jana
38bd3c4900
(Sh)TAB should get a new context if required
2020-04-02 20:47:15 +05:30
Arun Prakash Jana
a3f509ffc6
Fix #499 : add fflush() as well
2020-04-01 15:16:21 +05:30
Arun Prakash Jana
ef159b9985
Fix clang-tidy warnings
2020-04-01 04:21:39 +05:30
Arun Prakash Jana
f8d2be504a
Remove redundant param
2020-04-01 04:21:39 +05:30
Arun Prakash Jana
91bd84cd5d
Fix #499
2020-04-01 04:21:40 +05:30
Arun Prakash Jana
47ec055651
Fix #499 : broken readline prompt
2020-04-01 02:26:32 +05:30
Arun Prakash Jana
c01857cddb
Fix fzcd at /, minot refactor
2020-03-31 22:26:20 +05:30
Arun Prakash Jana
2d27902ac0
Quicker re-sort
2020-03-31 03:44:52 +05:30
Arun Prakash Jana
eea1b5da7d
Update docs
2020-03-31 01:59:30 +05:30
Arun Prakash Jana
a4243edacc
make var O_NOBATCH to compile out native batch renamer
2020-03-30 22:09:39 +05:30
Arun Prakash Jana
54d2580799
Add fortune to help
2020-03-30 09:09:11 +05:30
Arun Prakash Jana
9fea0220c4
List mode: limit exceeded error
2020-03-29 22:35:41 +05:30
Arun Prakash Jana
b8ede9895f
Use more sensible msg
2020-03-29 21:27:52 +05:30
Arun Prakash Jana
8f910fe85a
Fix build break
2020-03-29 20:32:11 +05:30
Arun Prakash Jana
3d9905615d
Fix crash
2020-03-29 20:26:31 +05:30
Arun Prakash Jana
267dc04f6c
Reduce presel usage
2020-03-29 20:22:43 +05:30
Arun Prakash Jana
d2e83b2cfe
Refactor change directory
2020-03-29 17:25:11 +05:30
Arun Prakash Jana
6ea33f1db3
Remove redundant name copy
2020-03-29 15:48:10 +05:30
Arun Prakash Jana
e9ff65a7b5
No re-filter on MSGWAIT
2020-03-29 14:03:11 +05:30
Arun Prakash Jana
0bfc032e5d
Do not reload
2020-03-29 10:02:21 +05:30
Arun Prakash Jana
446266d4c7
Fix build error
2020-03-29 04:24:31 +05:30
Arun Prakash Jana
df1e17a4c2
Reload dir when entering filter mode
2020-03-29 04:04:57 +05:30
Arun Prakash Jana
dc7711271c
Fix sorting
2020-03-29 03:19:15 +05:30
Arun Prakash Jana
8f3f64b5a6
Experimental: retain filter in normal mode
2020-03-29 01:58:07 +05:30
Arun Prakash Jana
c3ff380354
Retain hovered file name in filtered view with delayed msg
2020-03-28 12:28:00 +05:30
Arun Prakash Jana
b87cdcde60
Fix wrong lint report
2020-03-28 09:45:22 +05:30
Arun Prakash Jana
22ccf5e2e6
Support time type (access/change/mod) change
2020-03-28 09:20:14 +05:30
Arun Prakash Jana
72333dcdd6
Statics are always initalized to 0
2020-03-27 14:38:56 +05:30
Arun Prakash Jana
bf057c1007
Fix #498
2020-03-27 13:06:01 +05:30
Arun Prakash Jana
68fd0d7dd2
Use meaningful vars
2020-03-25 20:52:27 +05:30
Arun Prakash Jana
dc08354b0f
Update docs
2020-03-25 11:47:30 +05:30
Arun Prakash Jana
33f2a2f37b
Remove redundant assignments
2020-03-21 21:28:48 +05:30
Arun Prakash Jana
49e36a4707
Reformat bookmark handling
2020-03-21 19:10:01 +05:30
Arun Prakash Jana
41f80f1f60
Key > to export file list
2020-03-20 23:46:58 +05:30
Arun Prakash Jana
0c55977465
Fix #496 : option -f to use readline history file
2020-03-20 22:24:49 +05:30
Arun Prakash Jana
f4786da9bc
Option -T obsoletes option -v
2020-03-18 02:41:30 +05:30
Arun Prakash Jana
85379a703b
Option -T to change default sort order
2020-03-18 02:35:05 +05:30
Arun Prakash Jana
fc8c5b46b3
Skip erasing the complete screen
2020-03-16 21:39:44 +05:30
Arun Prakash Jana
1cf50e738f
Add clang-9 to compilation matrix
2020-03-16 07:33:54 +05:30
Arun Prakash Jana
ea2de804f8
batch rename: check dep, handle invalid input
2020-03-15 20:26:53 +05:30
Arun Prakash Jana
03e6d7d553
Adapt PR #495
2020-03-15 19:52:02 +05:30
Arun Prakash Jana
67994ff4b2
Check if file is accessible
2020-03-14 21:44:48 +05:30
Arun Prakash Jana
1e53cd8ea1
Highlight the last copied/moved file
2020-03-14 20:22:58 +05:30
Arun Prakash Jana
0ef2b61a17
Increase number of events handled
2020-03-14 06:51:52 +05:30
Arun Prakash Jana
2d952795a8
Start watching dir if filter mode is disabled
2020-03-14 05:14:25 +05:30
Arun Prakash Jana
02754205a2
Fix #492
2020-03-11 21:59:34 +05:30
Arun Prakash Jana
f527dd1c6a
Integrate batch renamer plugin
2020-03-11 17:52:38 +05:30
Arun Prakash Jana
bf89040ace
Case-insensitive Ctrl-key handling, man page update
2020-03-11 09:14:59 +05:30
lvgx
c9a17d80be
Add middle click copy ( #491 )
...
* Add middle click copy
* Make middle click action configurable
This introduces the NNN_MIDDLECLICK environment variable, containing the
key that middle mouse click emulates. Only the first character is read.
* Document NNN_MIDDLECLICK in nnn.1
* Use NNN_MCLICK instead of NNN_MIDDLECLICK
* Add '^key' syntax to set middle click to Ctrl+Key
2020-03-11 09:09:57 +05:30
Arun Prakash Jana
3dbe08aad6
Fix #486
2020-03-06 18:58:08 +05:30
Arun Prakash Jana
d97d152269
Fix #486
2020-03-06 04:50:04 +05:30
Arun Prakash Jana
9bfda074bd
Show statusbar in du/au mode
2020-03-05 21:08:55 +05:30
Arun Prakash Jana
0cb5ddf3f1
Fix regression in calculating apparent du for dirs
2020-03-05 21:05:37 +05:30
Arun Prakash Jana
1fbaa61052
Add option to clear sort order
2020-03-05 20:45:07 +05:30
Arun Prakash Jana
646cd10b57
Fix #484
2020-03-04 06:18:08 +05:30
Arun Prakash Jana
0941e511e4
Clear filter at start
2020-03-02 18:54:53 +05:30
Arun Prakash Jana
a54a23eae5
Minor refactor
2020-03-01 22:26:52 +05:30
Arun Prakash Jana
146f24e5de
Use target vars to create dirs
2020-03-01 21:00:45 +05:30
Arun Prakash Jana
78d0ea50f4
Use the same convention for global var names
2020-03-01 19:48:40 +05:30
Arun Prakash Jana
5533e38fbb
Guard against too many key-value pairs
2020-03-01 18:59:27 +05:30
Arun Prakash Jana
f3c4dae1dd
Fix build break
2020-03-01 18:34:59 +05:30
Arun Prakash Jana
1224270104
Drop path validation
2020-03-01 17:25:49 +05:30
Arun Prakash Jana
ad9f834b64
Update right click sel
2020-03-01 12:44:28 +05:30
lvgx
b2f2b78990
Add right click file selection ( #482 )
2020-03-01 12:40:35 +05:30
Arun Prakash Jana
2b11601f89
Set attrs in a go
2020-03-01 12:19:17 +05:30
Arun Prakash Jana
b52d17caa2
Do not store force quit option in session
2020-02-29 20:06:39 +05:30
Arun Prakash Jana
a5a3a84bd1
Shorten messages
2020-02-29 15:10:42 +05:30
Arun Prakash Jana
edb9fe14e4
Reformat get archive cmd
2020-02-29 13:53:16 +05:30
Arun Prakash Jana
0d7d0ca7db
realpath allocates memory
2020-02-29 12:56:10 +05:30
Arun Prakash Jana
5198c62863
Unlimited bookmarks, several fixes
2020-02-29 09:53:49 +05:30
Arun Prakash Jana
a1e2ef055e
Continue in filter mode
2020-02-29 06:32:02 +05:30
Arun Prakash Jana
37987d487e
Ignore backspace at empty filter prompt
2020-02-29 06:08:26 +05:30
Arun Prakash Jana
d1fcc5351e
Fix lint
2020-02-28 19:36:00 +05:30
Arun Prakash Jana
88167511f6
Unlimited bookmarks and plugin keys
2020-02-28 19:23:57 +05:30
Arun Prakash Jana
76cf0c65d4
Hover next file on delete
2020-02-28 07:34:02 +05:30
Arun Prakash Jana
fc805dac26
Do not count hard links for dirs
2020-02-28 01:57:33 +05:30
Arun Prakash Jana
9c100f987c
Single struct for patterns strings
2020-02-28 00:33:35 +05:30
Arun Prakash Jana
c9f9ca32dd
Extra space for size column
2020-02-28 00:00:44 +05:30
Arun Prakash Jana
993ea99b76
Remove redundant buffers
2020-02-27 23:55:23 +05:30
Arun Prakash Jana
4eae58edd3
Fix filename truncation if O_NOLOC set
2020-02-27 21:41:06 +05:30
Arun Prakash Jana
95356681ff
Fix handling hard-links
2020-02-27 18:49:44 +05:30
Arun Prakash Jana
74e77f78fa
Support more sepecial keys at empty prompt in nav-as-you-type
2020-02-27 08:47:00 +05:30
Arun Prakash Jana
c6cc8a5181
Use 32-bit unsigned params
2020-02-27 07:30:14 +05:30
Arun Prakash Jana
05f3d5fdbe
Hash inodes with lesser number of bits
2020-02-27 00:38:30 +05:30
Arun Prakash Jana
f12bf0a2ee
Dim links
2020-02-26 23:49:20 +05:30
Arun Prakash Jana
987cc9b4b3
Drop / indicator for directories
2020-02-26 22:19:48 +05:30
Arun Prakash Jana
dd2be32382
Get rid of printw()
2020-02-26 20:49:20 +05:30
Arun Prakash Jana
f0f8008014
Restore filter on context switch in non nav-as-you-type mode
2020-02-26 19:42:37 +05:30
Arun Prakash Jana
7aa72ddd79
Optimize print entry
2020-02-26 08:54:34 +05:30
Arun Prakash Jana
07437a897c
Reformat entry printing
2020-02-26 03:31:32 +05:30
Arun Prakash Jana
71bac356d6
Optimize unescape
2020-02-26 01:53:43 +05:30
Arun Prakash Jana
ae1d656a27
Update help, check for mocp before using mocplay
2020-02-25 21:37:52 +05:30
Arun Prakash Jana
dd5b419742
Treat ~ as special shortcut in filterentries
2020-02-22 21:25:05 +05:30
Arun Prakash Jana
04ab3751af
Minor refactor
2020-02-22 18:42:55 +05:30
Arun Prakash Jana
f2ba23bb3a
Combine file mode check
2020-02-22 17:10:29 +05:30
Arun Prakash Jana
f61323cccd
Simplify detail print
2020-02-22 15:08:59 +05:30
Arun Prakash Jana
d0930d0ccf
Show hard link symbol
2020-02-22 12:49:50 +05:30
Arun Prakash Jana
4a91df950b
Ignore hard links on du
2020-02-22 08:44:28 +05:30
Arun Prakash Jana
0f03b41995
Fix build break
2020-02-22 04:28:27 +05:30
Arun Prakash Jana
b816a90256
Macro for confirmation
2020-02-22 04:18:15 +05:30
Arun Prakash Jana
ca257e6016
Do not save trash setting in config (and session)
2020-02-21 21:54:26 +05:30
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
Arun Prakash Jana
50df09b918
Do not show file name in status bar
...
Both in light and detail modes we show more characters than in status bar.
2020-01-23 21:21:24 +05:30
Arun Prakash Jana
de4b817998
Lazy unmount, umount (macOS) support
2020-01-23 02:00:16 +05:30
Arun Prakash Jana
60dfb79b8d
Check if path exists before trying to create
2020-01-22 20:09:16 +05:30
Arun Prakash Jana
a87be62204
Use indicative dir names when creating
2020-01-22 00:00:33 +05:30
Arun Prakash Jana
8d6f766e75
Remove redundant variables/assignments
2020-01-21 23:09:05 +05:30
Arun Prakash Jana
8df6602fac
Remove redundant check
2020-01-21 21:53:45 +05:30
Arun Prakash Jana
abd1df8770
Initialize mask
2020-01-20 23:33:57 +05:30