Arun Prakash Jana
130cea3598
Adapt picker mode to new selection changes
2019-11-30 20:36:04 +05:30
Arun Prakash Jana
e28197f066
Remove a startup loop and use self-fixing
2019-11-30 19:51:57 +05:30
Arun Prakash Jana
178705a951
End selection before archive, new, rename
2019-11-30 16:15:12 +05:30
Arun Prakash Jana
0a5dc2e336
Selection should work across contexts
2019-11-30 04:28:09 +05:30
Arun Prakash Jana
ef88a31a7c
Do not access invalid lastdir
2019-11-30 03:51:29 +05:30
Arun Prakash Jana
f9058e1aaa
Support link creation for hovered file
2019-11-29 20:58:12 +05:30
Arun Prakash Jana
965499c671
Show all selected files on M
2019-11-29 08:38:11 +05:30
Arun Prakash Jana
35b3cf3b1f
Update program help
2019-11-29 02:11:27 +05:30
Arun Prakash Jana
20ac9da988
Support deselection
2019-11-28 23:13:10 +05:30
Arun Prakash Jana
249836923e
Reduce delay, use a more meaningful msg
2019-11-25 08:21:14 +05:30
Arun Prakash Jana
e4ffe35892
Update comment to reflect millisecond
2019-11-25 07:50:22 +05:30
Arun Prakash Jana
e6f9d6d2d0
Add rclone support for remote access
2019-11-24 21:24:32 +05:30
Arun Prakash Jana
5d0af863b5
Set hovered and file as
2019-11-24 02:13:27 +05:30
Arun Prakash Jana
ca7405311f
Force undetachable edits in EDITOR
2019-11-24 01:54:06 +05:30
Arun Prakash Jana
c2998a819b
Revert "Indicative inode hash bitmap implementation. Read details."
...
This reverts commit 547d87bfc2
.
2019-11-23 10:07:05 +05:30
Arun Prakash Jana
547d87bfc2
Indicative inode hash bitmap implementation. Read details.
...
Known issues:
- To optimize dentfill() on most architectures we don't fstatat() with
AT_SYMLINK_NOFOLLOW to get the inode number of the symlink itself.
- The current hash size serves the purpose of one filesystem. To serve
more and have unique bits, we have to add more bits to prefix dev ID
to the inode. Memory consumption will be significant.
This will be reverted in next commit.
2019-11-23 10:05:06 +05:30
Arun Prakash Jana
b63c00c9af
Quote so files with newline in name work
2019-11-22 23:43:43 +05:30
Arun Prakash Jana
2c35beb0a2
Rename utility macros
2019-11-22 20:46:05 +05:30
Arun Prakash Jana
ababa87434
Organize strings together
2019-11-22 20:30:13 +05:30
Arun Prakash Jana
d4b7897b41
All binary confirmation is now y or Y
2019-11-21 19:11:56 +05:30
KlzXS
4db8a61dea
Don't use xargs options -I -o and -a ( #388 )
...
Also removed another stray cat
2019-11-21 18:19:55 +05:30
Arun Prakash Jana
7d70a655e6
Fix picker mode
2019-11-21 00:56:55 +05:30
Arun Prakash Jana
2d91768d88
Fix some cat abuses in code, plugins
2019-11-21 00:31:39 +05:30
Arun Prakash Jana
0c0f12b528
Use single API to create dir tree
2019-11-20 23:23:44 +05:30
Arun Prakash Jana
f0ca47afae
dirs and files can be created with parent dirs
2019-11-20 21:11:13 +05:30
Arun Prakash Jana
cc3702b2e1
Fix lint error
2019-11-20 01:34:07 +05:30
Arun Prakash Jana
3a9def25d8
Create new files and dirs with parent (like mkdir -p)
2019-11-20 01:28:11 +05:30
Arun Prakash Jana
9729b1f5a6
Refresh dirs on disruptive chnages, update sxiv plugin to browse and rename
2019-11-19 21:01:59 +05:30
Arun Prakash Jana
97e16364bb
Readahead is not available on all platforms
2019-11-18 22:04:09 +05:30
Arun Prakash Jana
6d3f3ba6a2
Show [selmode:num_selected] in status bar
2019-11-18 21:46:38 +05:30
Arun Prakash Jana
084a4c77c5
Add key ] to show prompt
2019-11-18 20:21:00 +05:30
Arun Prakash Jana
8705cb99a3
Seek advantage of kernel readahead()
...
References:
1. http://man7.org/linux/man-pages/man2/posix_fadvise.2.html
2. https://www.oreilly.com/library/view/linux-system-programming/9781449341527/ch04.html
2019-11-18 19:54:14 +05:30
Arun Prakash Jana
0ef9ec196e
Use boxes to show number of selected files.
2019-11-18 19:34:03 +05:30
Arun Prakash Jana
3004694cd4
Update man page on executing commands directly.
...
Remove extra static string.
2019-11-18 18:57:04 +05:30
Arun Prakash Jana
4ee9e2d129
Add key ; to execute plugin
2019-11-18 00:30:00 +05:30
Arun Prakash Jana
4f787fd59e
Fix line count when editing selection
2019-11-17 20:26:01 +05:30
Arun Prakash Jana
0f5f04d087
Revert "Fix #384 : support busybox xargs"
...
This reverts commit 407b690404
.
2019-11-17 19:17:39 +05:30
Arun Prakash Jana
407b690404
Fix #384 : support busybox xargs
2019-11-17 17:45:22 +05:30
Arun Prakash Jana
6693bf8f13
Fixes the following workflow:
...
- press pick plugin key
- navigate away from the plugin directory (to ~, say)
- try to open any file, fails
When we are in run plugin mode, but detect we are in a different
context or a non-plugin directory, just cancel the runplgin mode
and continue as usual.
It also cleans up the plugin run function.
2019-11-17 10:05:23 +05:30
Arun Prakash Jana
05c84f7b80
Clear prompt after running a command.
2019-11-17 05:36:39 +05:30
Arun Prakash Jana
e3aed0f658
Update help
2019-11-17 05:30:14 +05:30
Arun Prakash Jana
61048258a7
Do not reload for help, edit and page if in selection mode
2019-11-17 04:49:50 +05:30
Arun Prakash Jana
efa9a6727d
Change the key to size sort to z
2019-11-17 04:11:27 +05:30
Arun Prakash Jana
37bf6b1010
Redraw in non-filter mode after hovered file deletion
2019-11-16 21:46:15 +05:30
Arun Prakash Jana
88698b372b
Edit also flushes selection
2019-11-16 20:39:05 +05:30
Arun Prakash Jana
4c863d9b7b
Do not check for events when selecting files
2019-11-16 20:10:03 +05:30
Arun Prakash Jana
c7b037d6a1
Use small letters
2019-11-16 14:06:38 +05:30
Arun Prakash Jana
2b4bd35ba6
Simplify running commands
2019-11-16 07:20:18 +05:30
Arun Prakash Jana
f31fa09f56
Fix issue with running plugin when help screen is shown
2019-11-15 22:36:57 +05:30
Arun Prakash Jana
950a8f6a65
Fix #381
2019-11-15 21:55:18 +05:30
Arun Prakash Jana
3c28d1f1d7
Refactor plugin handling
2019-11-14 02:55:05 +05:30
Arun Prakash Jana
fa4c37f230
Fix segfault
2019-11-11 21:43:56 +05:30
Arun Prakash Jana
12f108cac9
Fix fzcd not working from other contexts
2019-11-09 02:52:44 +05:30
Arun Prakash Jana
53a2e4c560
Incorporate PR #368
2019-11-08 19:15:53 +05:30
Arun Prakash Jana
9272c90f93
Removal of current dir can be a pain without force
2019-11-05 22:05:49 +05:30
Arun Prakash Jana
8a7d2bd1ed
Clear buffer for no locale compilation
2019-11-05 20:03:12 +05:30
Arun Prakash Jana
94e4dc51ba
Make bulk delete more verbose
2019-11-05 19:52:07 +05:30
Arun Prakash Jana
6713bfba13
Fix #373
2019-11-02 21:50:26 +05:30
Arun Prakash Jana
169c2141f6
Print improvements
2019-11-02 07:51:45 +05:30
Arun Prakash Jana
5c336fb7da
Fix build break
2019-11-01 16:19:34 +05:30
Arun Prakash Jana
ef8db1fd45
Show size of file in bytes in status bar in du mode
2019-11-01 15:28:13 +05:30
Arun Prakash Jana
7416bb8503
Print version in debug output
2019-11-01 02:34:06 +05:30
Arun Prakash Jana
6eeab1af9f
Use macro for 512B sector size
2019-10-30 22:43:22 +05:30
Arun Prakash Jana
a97e3ed5c4
Fix opening files from browser
2019-10-30 20:17:31 +05:30
Arun Prakash Jana
b987931f47
Do not pass path to commands
2019-10-24 20:25:07 +05:30
Arun Prakash Jana
5bebd4ac67
Extend plugin mechanism to arbitrary commands
2019-10-24 12:44:01 +05:30
Arun Prakash Jana
cb916661c8
Minor reformat
2019-10-24 11:53:34 +05:30
Arun Prakash Jana
5734f49126
Fix KEY_RESIZE loop
2019-10-24 08:47:45 +05:30
Arun Prakash Jana
3dd95fd9a8
Fix checkpatch warnings
2019-10-24 08:44:36 +05:30
Anna Arad
9afd7cf3bf
Implement plugins control of nnn + plugins ( #364 )
...
* Implement plugins control of nnn + plugins
* Refactor plugins control code and fix getplugs to recognize hidden files
* Fix bug when going to dir on non-current context from plugin
* Fix some plugins to work on openbsd and freebsd
* Renamings
* Switch to -R flag in cp instead of -r; BSDs complain
* Change braces of function location
* Rewrite plugin creation in README and add new plugins to the table
* Update the fzcd script to include fzy or fzf
* Change plugin name resolve-link-dir -> lncd
* Fixing plugins README table
* Remove some cd plugins but add them as examples to plugins README
2019-10-23 15:34:12 +05:30
Arun Prakash Jana
0144f44060
Remove special characters from help
2019-10-21 20:13:52 +05:30
Arun Prakash Jana
3966465171
Change spaces to tab
2019-10-21 06:55:19 +05:30
Arun Prakash Jana
651b27032d
Fix #366
2019-10-20 19:37:35 +05:30
Arun Prakash Jana
f601d825bc
Refactor fixes
2019-10-20 19:19:25 +05:30
Arun Prakash Jana
71bf18cee3
Refactor
2019-10-20 05:35:41 +05:30
Arun Prakash Jana
1b3b9f503d
Refactor cp, mv, cp-mv as, rm
2019-10-19 13:25:50 +05:30
Arun Prakash Jana
95e9151c90
Refactor screen move
2019-10-19 09:10:52 +05:30
Arun Prakash Jana
864273dd9b
Refactor current directory removal
2019-10-19 08:43:32 +05:30
Arun Prakash Jana
ae7a3fbdc1
Clean up plugin handling code
2019-10-19 07:00:04 +05:30
Arun Prakash Jana
3aebeaec58
Update docs on session
2019-10-19 04:03:46 +05:30
Anna Arad
60dac94a5e
Implementing sessions support ( #360 )
...
* Initial commit of sessions implementation
* Reduce code duplication
* Move load session to program flag -e
* Fix context initialization problem when loading session
* Add pinned directory to session and reduce session file size
* Make load_session print an error if exists and few minor adjustments
* Refactor session's file structure
* Initialize required structures in load_session before loading
* Add load session dynamically, restore last session, and extra fixes
* Fix indentation
* Add sessions documentation to man page
* Update fish completions with sessions and make some improvements
* Move to single keybinding session management and add help info
* ESC when asked to insert session name behaves better
* Add sessions completion for bash
* Remove pinned dir from session and minor code refactors
2019-10-19 03:41:39 +05:30
Arun Prakash Jana
2da5602a4f
Use a single keybind for cp/mv as
2019-10-17 23:35:49 +05:30
Arun Prakash Jana
522626a88d
Combine related cases together
2019-10-16 08:29:49 +05:30
Sijmen J. Mulder
3953639c5d
Fix build (and more) on SmartOS ( #363 )
...
* Define _XOPEN_SOURCE_EXTENDED on SmartOS
Enables wide ncurses.
* SmartOS has alloca() in alloca.h
* SmartOS does not have sig_t
* dprintf() is not available on SmartOS
So replace its usage with fprintf.
* SmartOS has no d_type
* SmartOS has no CLOCK_MONOTONIC_RAW
* SmartOS has no O_DIRECTORY
* Work around SmartOS not having mime detection
* Missing comma
2019-10-16 07:07:45 +05:30
Sijmen J. Mulder
98042ad7d0
Fix strftime() buffer overflow ( #362 )
...
If the formatted string is longer than 17 characters the string won't
be null terminated, causing gibberish to be printed on the status line
and possibly worse.
This occurs with my current locale in which a date is printed as such:
2019-okt.-15 19:26
Which is 18 characters.
2019-10-16 07:01:19 +05:30
Arun Prakash Jana
43c636d95c
Simplify functions
2019-10-15 06:15:32 +05:30
Arun Prakash Jana
269b80dbb2
Minor reformat
2019-10-15 05:56:34 +05:30
Arun Prakash Jana
29a934a1d2
Improve readibility
2019-10-15 04:17:12 +05:30
Arun Prakash Jana
8ac4a834ad
Minor refactor
2019-10-15 03:47:57 +05:30
Arun Prakash Jana
9469479c0a
Add function to count newlines in file
2019-10-14 22:49:24 +05:30
Arun Prakash Jana
ff562983e1
Fix build break on macOS
2019-10-14 22:08:07 +05:30
KlzXS
b9d183db26
Added copy/move-as (copy/move and rename) ( #356 )
...
* Added copy/move-as (copy/move and rename)
* Little refactorings
* Also handle selection file for cpmv_rename()
2019-10-14 22:06:45 +05:30
Arun Prakash Jana
04cba31128
Use a macro for readability
2019-10-14 17:58:16 +05:30
0xACE
2ac22cfc9f
Mouseclicks are no longer delayed ( #353 )
...
This patch changes the mouseinterval to 0. And handles detection of
doubleclicking events internally.
This allows much faster response times for mouse clicks as nnn no longer
has to wait for ncurses to confirm what type of click it was.
It introduces a new config setting for changing how many milliseconds it
may take for a double click to be registered.
2019-10-14 17:55:04 +05:30
0xACE
ab0fe6c408
unmount() ask for target if not found ( #358 )
...
* unmount() ask for target if not found
unmount() now properly asks for which target to unmount if it cannot
automatically deduce which folder to unmount.
* no more automatic unmounts outside of cfgdir
2019-10-13 20:53:32 +05:30
Anna Arad
06ff2c55da
Remove -Wno-unused-parameter and do cleanup ( #357 )
2019-10-13 19:10:06 +05:30
Arun Prakash Jana
087380968d
Pass path as second argument
2019-10-13 17:28:02 +05:30
Arun Prakash Jana
e371182a5b
Optional fortune quotes in help/config page
2019-10-12 23:04:34 +05:30
Arun Prakash Jana
19df7777db
Mount archives using archivemount
2019-10-12 02:13:08 +05:30
Arun Prakash Jana
c54f50cf4f
Remove unused param
2019-10-12 00:26:34 +05:30
Arun Prakash Jana
d1d491c102
Fix #350 : cd on quit if NNN_TMPFILE is set
2019-10-11 23:19:25 +05:30
Arun Prakash Jana
45c8730d2c
Fix build break
2019-10-11 21:19:51 +05:30
Arun Prakash Jana
fe80d5aa9d
Update key collision detection
2019-10-11 20:59:22 +05:30
Anna Arad
ab8e3e445e
Implement a basic keybinding collision checker. (ToDo list #337 ) ( #348 )
2019-10-11 19:41:56 +05:30
Arun Prakash Jana
a7d224f1e5
Fix #351 : reduce prompt length for new file/dir
2019-10-11 18:38:06 +05:30
Arun Prakash Jana
b42efcbb1f
Document edit selection
2019-10-10 19:26:08 +05:30
KlzXS
b7c2ce741a
Implemented edit selection buffer ( #345 )
...
* Implemented edit selection buffer
* Added checks and changed keybind
* Forgot check and style fixes
* Don't work late at night again
You forget things when you're tired
2019-10-10 18:37:16 +05:30
Arun Prakash Jana
4f6f1a59d3
Fix #338 : export current file as $NNN
2019-10-07 16:32:00 +05:30
Arun Prakash Jana
048c5195c3
Prepare for release v2.7
2019-10-06 20:19:22 +05:30
Arun Prakash Jana
914e180287
Update help
2019-10-05 07:23:25 +05:30
Arun Prakash Jana
baac461b33
Limit imput length at readline prompt
2019-10-05 07:17:01 +05:30
Arun Prakash Jana
2f4144b0bd
Key ^N replaces ^T to toggle nav mode
2019-10-05 07:06:32 +05:30
Arun Prakash Jana
14c355bacf
Add keys: Shift+TAB, '
2019-10-05 06:59:43 +05:30
Arun Prakash Jana
402f5651a1
Use type that fits length
2019-10-04 20:34:37 +05:30
Arun Prakash Jana
8b9f96e645
Remove redundant alignment requirement
2019-10-04 08:10:35 +05:30
Arun Prakash Jana
133f55170b
Target nolocale: saves more on memory
2019-10-04 08:10:31 +05:30
Arun Prakash Jana
d493f78dea
Track up to 8 events
2019-10-03 21:15:11 +05:30
Arun Prakash Jana
3489c87b98
Remove weak check for CLI detection
2019-10-03 18:14:51 +05:30
Arun Prakash Jana
f4ec874b79
Fix
2019-10-03 03:44:54 +05:30
Arun Prakash Jana
9f68e74289
Revert "Fix #334 : Detect session type"
...
This reverts commit e226e8c889
.
2019-10-03 03:33:15 +05:30
Arun Prakash Jana
e226e8c889
Fix #334 : Detect session type
2019-10-03 02:38:26 +05:30
Arun Prakash Jana
a9f60d0353
Block range selection only when dir chanegs
2019-10-02 23:57:26 +05:30
Arun Prakash Jana
5f4046b63d
Fix #334
2019-10-02 23:04:56 +05:30
Arun Prakash Jana
67c33a5e80
Code refactor
2019-10-02 22:34:11 +05:30
Arun Prakash Jana
757a783d49
^S is used by stty, use ^K
2019-10-02 12:14:38 +05:30
Arun Prakash Jana
afdec4a573
Fix crc8 match on range selection
2019-10-01 02:55:40 +05:30
Arun Prakash Jana
951d43eb77
Clear selection file on clear selection
2019-09-30 23:02:44 +05:30
Arun Prakash Jana
025c7f0a48
Remove selmode indicator
2019-09-30 22:23:54 +05:30
Arun Prakash Jana
57d9edfed3
Get rid of selection mode. Plus associated changes.
...
- distinct keybinds for single entry, range or all selection
- selecting a file/range/all files would turn selection mode on
- single file/range or all selection appends to selection
- any operation (cp, mv, rm, plugin/file execution, cmd prompt, launch app, spawn
shell) on selection ends the selection mode
- selection buffer is cleared after mv, rm on selection
- repeat range selection on same file clears selection and exits seleciton mode
- basic check (won't work on dir reload) added to avoid duplicates in selection
2019-09-30 21:35:52 +05:30
Arun Prakash Jana
7cae5dfe44
Shortcut to list selection y is now M
2019-09-30 18:54:27 +05:30
Arun Prakash Jana
62a0932976
Update docs on new selection shortcuts
2019-09-30 08:53:34 +05:30
Arun Prakash Jana
6ba1e48e62
End multi selection mode before link
2019-09-30 07:41:34 +05:30
Arun Prakash Jana
9d23517d10
key ^Y is now ^S, key ^K is now ^J, kwy ' is now m
2019-09-30 06:54:06 +05:30
Arun Prakash Jana
318ddd2ca6
Remove shortcut Leadq to quit context
2019-09-30 06:35:16 +05:30
Arun Prakash Jana
b340ecc257
Do not clear buffer on selection end
2019-09-29 23:06:27 +05:30
Arun Prakash Jana
17de5bfc27
Use better keys for selection mode
2019-09-29 22:59:27 +05:30
Arun Prakash Jana
b046157b61
End selection mode when an operation is run
2019-09-29 21:44:47 +05:30
Arun Prakash Jana
1d5f1bf653
Rename selection related tokens
2019-09-29 11:27:42 +05:30
Arun Prakash Jana
3309736060
Show Z for size sort
2019-09-29 10:44:53 +05:30
Arun Prakash Jana
2446d7c68c
Update help screen
2019-09-28 22:15:49 +05:30
Arun Prakash Jana
a7b61f79c4
Shorten option list
2019-09-28 20:04:24 +05:30
Arun Prakash Jana
e80b9b3c6a
Export current entry name as NN
...
The current file or dir name is exported in env var NN before running a cmd at
the command prompt or spawning a shell.
Export current file name as NCUR
2019-09-28 16:33:22 +05:30
Arun Prakash Jana
85b5d33fa4
Do not reload dir after running plugin
2019-09-26 21:45:08 +05:30
Arun Prakash Jana
d7ce06b10b
Add plugin to take quick notes
2019-09-26 19:56:43 +05:30
Arun Prakash Jana
b0c0cc72c4
Use uniform separator
2019-09-26 08:22:53 +05:30
Arun Prakash Jana
52b413adae
Fix lint error
2019-09-26 06:24:11 +05:30
Arun Prakash Jana
1ca1705219
Set num files selected in single select mode
2019-09-21 12:03:19 +05:30
Arun Prakash Jana
7335deb022
du status line change
2019-09-20 08:35:37 +05:30
Arun Prakash Jana
7ec54342ae
Remove redundant newline
2019-09-19 21:58:34 +05:30
Arun Prakash Jana
99840a6fa3
Show file size in status bar
2019-09-16 02:03:16 +05:30