Arun Prakash Jana
86c3f75512
Fix: can't go to parent if only dir name specified
Invoking nnn with:
nnn dir
nnn ./dir
nnn dir
wouldn't allow user to navigate to parent directory.
8 years ago
Arun Prakash Jana
8775a52779
Rename project to nnn (Noice is Not Noice)
8 years ago
Arun Prakash Jana
c42790aa18
Support file name copier
Add keybind 'Ctrl-k' to copy the absolute path of the file under the cursor if environment variable NOICE_COPIER is set.
8 years ago
Arun Prakash Jana
6b169bbd86
Re-format detailed view, show filename
8 years ago
Arun Prakash Jana
055439f23e
Use reverse video in detail view
1. Highlight the currently selected item in reverse video.
2. Fix: remember the current item when toggling detail view.
8 years ago
Arun Prakash Jana
187835c2bb
Show modification time in detail view
8 years ago
Arun Prakash Jana
3c94193992
Show number of entries in detailed view
8 years ago
Arun Prakash Jana
98e3f22cb4
Simpler regular listing
8 years ago
Arun Prakash Jana
5c7aaa6d0d
Shows 'Cannot resolve path' on narrow terminal
noice truncates the cwd string dynamically. If the numbers of columns is lesser than the length of the path, cwd is truncated so that the correct path cannot be resolved. We should try to resolve the full path instead.
8 years ago
Arun Prakash Jana
b5e0023bfc
Concise file type info in detail view
B - Block Device
C - Character Device
D - Directory
E - Executable
F - Fifo
L - Symbolic Link
R - Regular File
S - Socket
8 years ago
Arun Prakash Jana
4bf17cb7bc
Switches to toggle detail view, file size sort
1. The detailed view shows file type and size using keybind 'd'. Disabled by default.
2. Option 's' sorts dir entries by descending order of size.
8 years ago
Arun Prakash Jana
c64327b4a6
Re-scan directory contents after spawning a shell
The contents of the directory may be changed from the shell by adding or deleting content. Permissions may have changed too. We must re-populate the contents of the current directory.
8 years ago
Arun Prakash Jana
56dca997b9
Various optimizations
8 years ago
Arun Prakash Jana
ad0fb1df8c
Implement navigation roll over
8 years ago
sin
45e6fafc47
Split out default filter initialization
8 years ago
sin
dd29e81df5
Make toggle dot behaviour persistent
Once set, the default filter is updated. This means that
toggle dot will also work as expected when noice is executed
as root.
Based on discussion with Ypnose.
8 years ago
Arun Prakash Jana
0b5cdd468b
List alphabetically, case ignored (like 'ls -l').
8 years ago
Arun Prakash Jana
4eaf071fc2
Document NOICE_FALLBAK_OPENER.
8 years ago
Arun Prakash Jana
95ca9c3a95
Support NOICE_FALLBAK_OPENER.
8 years ago
Arun Prakash Jana
8b12ac4b5c
Support NOICE_OPENER env variable.
8 years ago
Arun Prakash Jana
2958ecd040
Remove libmagic, use file command.
The magic.mgc file gets created in the local directory, opening
the global file throws unwanted messages. So we are using the o/p
of the file command to determine if the file is a plain text file.
8 years ago
Arun Prakash Jana
8cb25227b3
Fix compilation issues with -O3 optimization.
8 years ago
Arun Prakash Jana
bc731cd9c0
Modify file type handling.
Use mpv, fmedia, zathura.
Invoke libmagic to identify text files and open with vim.
Use xdg-open for unhandled mimes.
8 years ago
sin
3ccbaef87b
Fix initscr() crash on NetBSD
NetBSD has its own curses implementation and initscr() does not
terminate with an error if TERM is not set properly.
Instead check the return value and exit if an initialization
error occurs.
9 years ago
sin
829bcdd7d4
Add command to cd back to HOME
Original patch written by Richard Hyde and taken from
https://github.com/RichardHyde/noice
9 years ago
sin
e1c26079b1
Add command to toggle hide .dot files
Patch written by Richard Hyde and taken from
https://github.com/RichardHyde/noice
9 years ago
sin
de1e3394a6
Style fix
9 years ago
sin
81ec260516
Fix strlcpy() size argument
It should be the size of the destination buffer, not the source.
In this case, both src and dest have the same size.
9 years ago
sin
afc0652067
Move mkpath() higher up so we don't need to declare it
9 years ago
sin
5629b49113
Move path[], oldpath[] and fltr[] inside browse()
9 years ago
sin
5456b8a36a
Minor style fix
9 years ago
sin
872a0f4620
Rename global `n` to `ndents`
This is more descriptive for a global variable which
can easily be shadowed.
9 years ago
sin
414ea845bb
Use dents name directly like we do in other places
9 years ago
sin
78461b8a06
Minor style fix
9 years ago
sin
c27f605a62
Nuke some newlines
9 years ago
sin
9af81fdc65
Remove some const bullshit
9 years ago
sin
35ca388e9d
Remove some more useless memory allocations
9 years ago
sin
9f6d1cfb33
Remove filter as you type mode
Nobody uses it and adds additional complexity.
9 years ago
sin
d909de605c
No need for cast in qsort callback
9 years ago
sin
65fae61bea
noice: No need to perform so many memory allocations
The code was quite fragile. As a first pass, use buffers of size
PATH_MAX and LINE_MAX accordingly until we simplify the overall logic.
9 years ago
sin
6d4166f0d6
Fix memory leak
9 years ago
sin
5fb5e9f82f
Avoid another allocation
9 years ago
sin
fa6b45a96d
Avoid unneeded memory allocation in xdirname()
9 years ago
sin
e27af6f1db
sizeof(char) is always 1, no need to be explicit
9 years ago
sin
a715201255
Print the resolved path for cwd
Avoids weird things like /etc/.. when displaying cwd.
Also no need for cwd to be on the heap.
9 years ago
sin
71ece08aad
Add usage
9 years ago
sin
013bcdee35
Don't use printerr() before curses has been initialized
9 years ago
sin
4abc9f0b46
Don't name vars in prototypes
9 years ago
sin
29701b4878
Rename makepath() to mkpath()
9 years ago
sin
16109053f5
Only use the environment variable when it is not empty
9 years ago