Commit graph

1039 commits

Author SHA1 Message Date
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 fef8f041d2
Fix build break 2019-10-12 08:44:58 +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
Arun Prakash Jana 6bb6671118
Update help 2019-09-16 01:33:41 +05:30
Arun Prakash Jana 4a0e3570fe
Remove redundant spaces 2019-09-16 01:33:41 +05:30
Arun Prakash Jana 7c8df20bea
Key : to run plugin 2019-09-16 01:33:41 +05:30
Arun Prakash Jana 2f0dc405b8
No filename in status bar in du mode, coding style fixes 2019-09-15 21:39:39 +05:30
Arun Prakash Jana 6c39d87cdf
Key > to run plugin 2019-09-15 19:11:10 +05:30
Arun Prakash Jana e68e8ad8a5
Show directory size 2019-09-15 18:25:11 +05:30
Arun Prakash Jana 6feaecafe2
An extra column when no indicator 2019-09-15 18:14:56 +05:30
Arun Prakash Jana 9afe09b4b5
Uniform status bar for light and detail modes 2019-09-15 05:35:58 +05:30
Arun Prakash Jana 5936d3f110
Disable du on detail mode switch 2019-09-15 04:56:54 +05:30
Arun Prakash Jana b2199db194
Code refactor 2019-09-15 04:23:12 +05:30
Arun Prakash Jana 2a74640fc6
Status bar: show time and perms in light mode 2019-09-15 04:13:26 +05:30
Arun Prakash Jana a07c542870
Retain filter after running command 2019-09-15 01:37:39 +05:30
Arun Prakash Jana 2820991383
Show extn for regular files 2019-09-12 22:15:25 +05:30
Arun Prakash Jana e4c14ee13c
Shortcut mapping: S for du, A for apparent du 2019-09-12 08:30:12 +05:30
Arun Prakash Jana 684a90a0fb
Batch rename: prompt if selection exists 2019-09-11 19:53:20 +05:30
Arun Prakash Jana c3ce5bc705
Preserve attributes on duplicate, update docs 2019-09-11 18:28:41 +05:30
Arun Prakash Jana bb5ef221b3
Run a command at filter prompt
This is a conveninece for nav-as-you-type mode.
With this program option, on pressing ^P, the filter is  executed as cmd.
2019-09-11 14:54:23 +05:30
Arun Prakash Jana ccf20f830b
Replace printw() with addstr()/addch() 2019-09-11 01:34:18 +05:30
Arun Prakash Jana 8d283886b0
10 chars are printed in for contexts 2019-09-11 00:12:25 +05:30
Arun Prakash Jana d33f469296
Remove redundant variable 2019-09-10 20:26:08 +05:30
Arun Prakash Jana a064818acf
Fold only long paths 2019-09-09 23:41:45 +05:30
Arun Prakash Jana 7621078d52
Show path in short form 2019-09-08 15:28:31 +05:30
Arun Prakash Jana 84119b1238
Prefer selection to copy in names 2019-09-08 14:23:00 +05:30
Arun Prakash Jana 9988d254fe
Fix xitoa() 2019-09-08 14:05:02 +05:30
Arun Prakash Jana 1baf284369
Show selection mode and number of selected files 2019-09-08 12:39:39 +05:30
Arun Prakash Jana bde0f5c354
Fix help alignment 2019-09-05 19:42:59 +05:30
Arun Prakash Jana d55d1ad810
Simplify numeric value check 2019-09-01 11:53:17 +05:30
Arun Prakash Jana cabef475ab
Fix SEL_CYCLE (tab) 2019-08-31 23:19:04 +05:30
Arun Prakash Jana ec873ab4fa
Option -a to use file access time 2019-08-30 21:00:47 +05:30
Arun Prakash Jana 94c3af873c
Implement mediainfo as a plugin 2019-08-28 00:02:33 +05:30
Arun Prakash Jana f781fbe78c
Set mode to detail for option -S 2019-08-25 21:15:17 +05:30
Arun Prakash Jana ea81e2e569
Add F12 as run plugin key:wq 2019-08-25 19:48:08 +05:30
Arun Prakash Jana 2c90999381
Lead followed by . to show hidden files 2019-08-25 06:05:10 +05:30
Arun Prakash Jana 871685f7ca
New keys: F2 (rename) F5 (redraw) 2019-08-25 05:36:28 +05:30
Arun Prakash Jana eb3a9ad2ee
Restore mousemask before exit 2019-08-24 19:44:49 +05:30
Arun Prakash Jana 611eaa51c8
Use canonical replstr 2019-08-23 22:08:29 +05:30
Arun Prakash Jana a4d8d68c7d
Option -r to show cp, mv progress on Linux 2019-08-23 20:28:56 +05:30
Arun Prakash Jana 979fadcc7e
Change history file path.
The new path is ${XDG_CONFIG_HOME:-$HOME/.config}/nnn/.history
2019-08-23 19:10:48 +05:30
Arun Prakash Jana 0fbd68ab48
Use lighter function to print character 2019-08-23 08:30:44 +05:30
Arun Prakash Jana 505bf0574e
Avoid double conversion in light mode 2019-08-20 21:55:54 +05:30
Arun Prakash Jana f4f1acf856
Remove wild load option 2019-08-20 20:00:48 +05:30
KlZX 80c2c469da
Fix 100% CPU usage if STDIN closes 2019-08-19 22:10:08 +05:30
Arun Prakash Jana f378743c49
Keep name unchanged at rename to duplicate 2019-08-19 20:00:01 +05:30
Arun Prakash Jana e9f7b6aa6c
Option -t replaces NNN_NO_AUTOSELECT 2019-08-17 00:07:38 +05:30
Arun Prakash Jana ac815c692a
Option -o replaces NNN_RESTRICT_NAV_OPEN 2019-08-16 23:40:43 +05:30
Arun Prakash Jana 1294a9caf5
Revert rename cp mv progress 2019-08-16 22:22:45 +05:30
Arun Prakash Jana db83e95a37
Symlinks to dirs are recognized by color 2019-08-16 20:03:58 +05:30
Arun Prakash Jana 9927849222
Update docs 2019-08-16 18:56:26 +05:30
KlZX 7e47cd729b Reverted 'batch_rename' to pre-'awk' but with 'sed' 2019-08-15 15:24:03 +02:00
Arun Prakash Jana 5c591422dc
Revert "Replaced 'sed' with 'awk'"
This reverts commit 1027cd0cf2.
2019-08-14 21:58:22 +05:30
Arun Prakash Jana 02b3273233
Use key-plugin pairs for running plugins 2019-08-14 21:58:18 +05:30
Arun Prakash Jana 7b59a7dba9
Rename cp mv progress conf 2019-08-14 19:10:41 +05:30
Arun Prakash Jana 775742150c
Custom keybinds to run plugins directly 2019-08-14 01:38:30 +05:30
Arun Prakash Jana 5ea8dee428
List symlink with target missing 2019-08-13 04:22:34 +05:30
KlZX 1027cd0cf2 Replaced 'sed' with 'awk' 2019-08-12 17:08:02 +02:00
Arun Prakash Jana e774634b5b
A simpler getutil() 2019-08-12 20:15:04 +05:30
KlZX 4cedba3d4d Fix 'batch_rename' moving symlinks 2019-08-12 11:36:09 +02:00
Arun Prakash Jana 7eafce9b45
Fix #320 2019-08-12 07:13:30 +05:30
Arun Prakash Jana 0647c75cd8
Strip cwd path for all non-Linux platforms 2019-08-10 18:32:36 +05:30
Mischievous Meerkat 199fb3ca29
Merge pull request #313 from 0xACE/relativearchives
Make selection based archives use relative paths
2019-08-10 07:06:40 +05:30
0xACE dcad704ae9 Fix keyresize handling of cur in filterentries() 2019-08-08 02:45:40 +02:00
Arun Prakash Jana 8ca96422cd
Fix #315: crash is NNN_BMS is not set 2019-08-08 01:39:41 +05:30
Arun Prakash Jana 29e8ca322c
Update help 2019-08-07 21:59:15 +05:30
Arun Prakash Jana 8bc71c6e5b
Key Lead' to go to first file in dir 2019-08-07 19:47:17 +05:30
Arun Prakash Jana 26e18ab382
Fix #315 2019-08-07 18:46:47 +05:30
Arun Prakash Jana 8c2c7e9e97
Fix #314 2019-08-07 02:03:52 +05:30
Arun Prakash Jana d23c2997af
Rename COPY macros to SEL 2019-08-07 01:38:51 +05:30
Arun Prakash Jana 8ea41dd0e5
Do not pick multiple times in selection mode 2019-08-07 01:27:22 +05:30
Arun Prakash Jana 9a3786f94d
Auto-proceed to next entry in selection mode 2019-08-07 00:51:54 +05:30
Arun Prakash Jana 68b460310e Use auto-compress option for bsdtar, tar 2019-08-06 23:27:06 +05:30
Arun Prakash Jana 75bfcb1834
Prepare for release v2.6 2019-08-06 04:13:10 +05:30
Arun Prakash Jana a95fc0c37a Revert "Use KEY_RESIZE when prompting user input"
This reverts commit ba12fa8b3d.
2019-08-05 19:03:55 +05:30
Arun Prakash Jana dec683c39e
Better prompt for rename/duplicate key 2019-08-04 20:52:54 +05:30
Arun Prakash Jana 9431213e49
Support / as an additional leader key 2019-08-04 14:31:58 +05:30
Arun Prakash Jana 4c4db1430e
Ask for 'd' to duplicate 2019-08-04 11:48:45 +05:30
Arun Prakash Jana 9fdfd9388d
Light mode as default, options changed
-d is to show detail mode
-H is to show hidden files
-l is retired
2019-08-04 09:55:14 +05:30
Arun Prakash Jana cf1b9d34ea
Light mode: show statusbar, use reverse video 2019-08-04 08:56:59 +05:30
Arun Prakash Jana 2bfcb281e7
Support duplicate file/dir 2019-08-04 08:29:32 +05:30
0xACE 2baa42b877 MacOS support for archive_selection() 2019-08-04 02:49:48 +02:00
0xACE 30651d16d7 Make selection based archives use relative paths
This will create archives relative to your current working directory
rather than a full path when when creating the archive based on your
current selection.
2019-08-04 00:41:20 +02:00
Arun Prakash Jana 9d4498e7b3 Revert "Remove bold fonts"
This reverts commit 43762d58c5.
2019-08-03 23:55:02 +05:30
Arun Prakash Jana 21b323b445
Increase function length 2019-08-01 23:01:04 +05:30
Arun Prakash Jana 0f6cb31d61
Sort by file extension 2019-08-01 22:20:40 +05:30
Arun Prakash Jana f1720c8f44
Do not change filter state when clicked below last entry 2019-07-29 19:17:49 +05:30
Arun Prakash Jana 46aa0adafa
Limit nav-as-you-type toggle to click on last 2 rows 2019-07-28 21:55:29 +05:30
Arun Prakash Jana 43762d58c5
Remove bold fonts
This reverts commit d0c2e9da298c1f6042d775deaae33f9b9d70b6e1.

Remove bold fonts
2019-07-27 22:49:16 +05:30
Arun Prakash Jana 281d7cbc8b
Minor reformat 2019-07-27 20:26:12 +05:30
Arun Prakash Jana de931db8a0
Support extract, list archives with default utils 2019-07-27 16:40:30 +05:30
Arun Prakash Jana 8e00d74259
Support archiving with default utils 2019-07-27 12:14:49 +05:30
Arun Prakash Jana a498636263
Document dual pane alias with dvtm 2019-07-27 01:29:58 +05:30
Arun Prakash Jana 8fe4761092
Fix #301 - use local buffer to avoid overwriting g_buf 2019-07-25 20:02:54 +05:30
Arun Prakash Jana 2a4008c9ab
Fix #307 - disable output 2019-07-23 07:13:19 +05:30
Arun Prakash Jana 27214bfca6
Fix #307 2019-07-22 22:55:04 +05:30
Arun Prakash Jana 83bf689058 Revert "Fix #307"
This reverts commit fee2c339cc.
2019-07-21 05:47:15 +05:30
Mischievous Meerkat 124ded8b5b
Merge pull request #310 from 0xACE/keyresize
Use KEY_RESIZE when prompting user input
2019-07-16 18:37:48 +05:30
0xACE 02fd4c4d8c documentation on rl_change_environment
Basically that line lets nnn retain the WINCH signal for itself.
2019-07-16 05:09:11 +02:00
0xACE ef32cf7177 set rl_change_environment in readline gt v6.3
Looked up GNU readline library's repo and looked
for the first occurance of rl_change_environment.
2019-07-16 05:02:45 +02:00
0xACE 3f33f0afb9 stop readline from overwriting LINES
The problem was that readline would completely block LINES from updating
after prompting the user. I'm not entirely sure why this happened, but
at least this patch fixes the problem.
2019-07-16 04:37:38 +02:00
0xACE ba12fa8b3d Use KEY_RESIZE when prompting user input
The problem was that a window wouldn't resize while prompting the user
for input. These changes allows the input methods in nnn to resize
properly if KEY_RESIZE is defined.

A more portable solution would be hooking the WINCH signal and update
the xlines value from there along with some resized flag.

In some cases the full window isn't redrawn until the user has finished
the input. This is because in some functions I wasn't sure the current
"path" was available.
2019-07-16 04:30:16 +02:00
Arun Prakash Jana fee2c339cc
Fix #307 2019-07-16 00:54:31 +05:30
Arun Prakash Jana 140a526249
Add F2 for rename (undocumented) 2019-07-15 20:02:35 +05:30
Arun Prakash Jana fabf9fd47b
Compact notation for time/size sort order 2019-07-15 01:42:12 +05:30
Arun Prakash Jana 6fb4338ffa
Remove redundant initialization 2019-07-15 01:08:24 +05:30
Arun Prakash Jana aa840a7f65
Resurrect default sort 2019-07-14 23:00:14 +05:30
Arun Prakash Jana 1388b9ea71
Remove unused variable 2019-07-14 22:32:50 +05:30
Arun Prakash Jana ba099b6818
Fix coolsize 2019-07-14 22:27:22 +05:30
Arun Prakash Jana 0bc5d82d2f
Fix crash on a broken USB 2019-07-14 14:25:46 +05:30
Arun Prakash Jana bfc8d0a7d3
Termux improvement: toggle nav-as-you-type
2 changes:
- Toggle nav-as-you-type with left single/double click below last entry
- Handle mouse events when filter is on
2019-07-12 23:34:36 +05:30
Arun Prakash Jana 713eed0a21
Fix commenting style (if applicable) 2019-07-12 21:58:21 +05:30
Arun Prakash Jana 051a8b27c2
Termux improvement: remap visit parent click
Visit parent is now left single click outside context nums on top row.
2019-07-12 21:58:18 +05:30
Arun Prakash Jana 9b0cf4a2b9
Support mouse scroll
This is limited to libncurses support of full mouse scrolling.
Ref: https://invisible-island.net/ncurses/man/curs_mouse.3x.html#h3-Mouse-events
2019-07-12 19:50:30 +05:30
Arun Prakash Jana beabe62467
Update comments and debug info 2019-07-12 18:37:12 +05:30
0xACE d640de2589 Keep lastname directory selected
incase the user just lost access, it would be better to remember the
selected directory to keep it highlighted.
2019-07-12 14:55:03 +02:00
0xACE 78ada7a8bc fixed misleading else if & text. removed lastdir 2019-07-12 14:44:59 +02:00
0xACE e3393d0437 Find a parent when CWD disappears
The previous behaviour would exit nnn when the CWD disappeared.
2019-07-12 00:52:25 +02:00
Arun Prakash Jana 406faf63d9
Fix mtime comparison 2019-07-11 22:33:49 +05:30
Arun Prakash Jana 41fcbd9b2f Fix #304 2019-07-10 09:21:52 +05:30
Arun Prakash Jana b0a60cfe64
Set mouse interval 2019-07-08 23:25:21 +05:30
Arun Prakash Jana b7b3dbac22 Revert "Move declarations up"
This reverts commit afdfcecb9c.
2019-07-06 18:55:48 +05:30
Arun Prakash Jana 25a704cd27
Set scrolloff to 3 2019-07-05 21:40:33 +05:30
Arun Prakash Jana bde25e3ca0
Minor refactor 2019-07-05 20:58:36 +05:30
Arun Prakash Jana c373b4b279
Fix #301 2019-07-05 07:42:52 +05:30
Arun Prakash Jana afdfcecb9c
Move declarations up 2019-07-05 02:47:55 +05:30
Arun Prakash Jana a25e878dfc
Do not show mantissa for absolute sizes 2019-07-05 02:08:31 +05:30
Arun Prakash Jana 379fdf50fa
Show stat when file has single quote 2019-07-05 01:27:46 +05:30
Arun Prakash Jana d5408c4e9f
Replace snprintf for printing file size 2019-07-05 01:13:55 +05:30
Arun Prakash Jana bf28a096ba
Use macros for return codes 2019-06-28 21:12:43 +05:30
tanyaionova 3ad5f7f6cb Remove duplicate code (#295)
These three lines are exact copy of 4555-4557.
As opener is not changed in between, we can delete these
2019-06-27 01:01:42 +03:00
Arun Prakash Jana b151e13548
Use generic msg 2019-06-25 01:08:32 +05:30
Arun Prakash Jana 277f156c37
Fix #291 2019-06-24 21:45:02 +05:30
Arun Prakash Jana 4d6f304204
Fix #290: terminate g_buf correctly 2019-06-22 19:17:06 +05:30
Arun Prakash Jana a9392463b0
Fix #290: wchar_t may vary in size 2019-06-22 07:19:00 +05:30
Arun Prakash Jana a4c38d8547
Fix #287 2019-06-20 02:13:59 +05:30
Arun Prakash Jana 4679daa761
Fix #285 2019-06-17 19:48:45 +05:30
Arun Prakash Jana aa56b99326
Add widely available cmatrix as locker fallback 2019-06-17 07:04:42 +05:30
Arun Prakash Jana 32b3445f3b
Use case insensitive version sort to compare 2019-06-17 07:04:25 +05:30
Arun Prakash Jana 538995487b
Wait and show command output when running a command 2019-06-15 21:47:37 +05:30
Arun Prakash Jana dba87bfdbe
Fix warning on CentOS 6 (refer to #282) 2019-06-13 06:21:10 +05:30
Mischievous Meerkat 444cf4b9ab
Merge pull request #280 from sjmulder/pr/sign-compare
Fix sign conversion and comparison warnings
2019-06-13 05:22:31 +05:30
Sijmen J. Mulder da60f55559 Don't ignore fwrite errors
Fixes warning on CentOS 6:

  src/nnn.c:754: warning: ignoring return value of 'fwrite', declared with attribute warn_unused_result
2019-06-13 01:07:03 +02:00
Sijmen J. Mulder 121bbe566b Fix sign conversion and comparison warnings
Building on i386 (NetBSD or Debian):

  src/nnn.c: In function 'selectiontofd':
  src/nnn.c:783:13: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
    while (pos <= lastpos) {
               ^
  src/nnn.c:791:11: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
     if (pos <= lastpos) {
             ^
  src/nnn.c: In function 'showcplist':
  src/nnn.c:823:17: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
    if (pos && pos == copybufpos)
                   ^
  src/nnn.c: In function 'xlink':
  src/nnn.c:1955:13: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
    while (pos < copybufpos) {
2019-06-13 00:51:19 +02:00
Arun Prakash Jana 80c35e85bd
Support XDG_CONFIG_HOME 2019-06-09 10:36:35 +05:30
Arun Prakash Jana fa4f082ac0
Move cd on quit file
The new location is ~/.config/nnn/.lastd
2019-06-07 21:58:45 +05:30
Arun Prakash Jana dee5e5a8e9
Move clang-tidy config 2019-06-05 21:50:03 +05:30
Arun Prakash Jana 1dbbcac84f
Use local buffers for events 2019-06-05 19:03:06 +05:30
Arun Prakash Jana 7f8766247f
Use pipes.sh as fallback user lock 2019-06-05 18:02:27 +05:30
Arun Prakash Jana 4a98d8db50
Use pipes.sh as locker fallback 2019-06-05 10:35:37 +05:30
Arun Prakash Jana c7f83dd179
Commented check 2019-06-04 23:32:23 +05:30
Arun Prakash Jana fcb29fa578
Fix #276 2019-06-04 22:41:48 +05:30
Arun Prakash Jana f269be5802
Restrict opening 0B files.
See #187. The behaviour has always remained so confusing. In my case a 0B file
opens in the GUI editor though I have NNN_USE_EDITOR set. We have a sensible
message in place to help users with what to do next.
2019-06-04 20:32:16 +05:30
Arun Prakash Jana 35fc77027a
Fix #274 2019-06-02 21:37:52 +05:30
Arun Prakash Jana 75768ad29e
Use mode=0755 when creating dirs 2019-05-27 20:16:55 +05:30
Arun Prakash Jana b767d3335c
Create ~/.config if missing 2019-05-27 18:55:05 +05:30
Arun Prakash Jana 5ea8218e4f
Prepare for release v2.5 2019-05-27 08:00:32 +05:30
Arun Prakash Jana 788dc80bb6
Code refactor 2019-05-27 07:23:30 +05:30
Arun Prakash Jana 0d05d71a0f
file: use dereference 2019-05-26 16:44:17 +05:30
Arun Prakash Jana 6ce511cddb
Simplify batch rename 2019-05-22 20:51:53 +05:30
Arun Prakash Jana 93a2d174f0
PR #265: Replace dependency on vidir
Author: @bruce-hill
2019-05-22 18:44:03 +05:30
Arun Prakash Jana 2c2d497809
Update patool wrapper 2019-05-22 08:48:44 +05:30
Arun Prakash Jana 5f6ceb2f43
Support bsdtar 2019-05-22 08:48:44 +05:30
Bruce Hill a752235892
Alternate scrolling rules. 2019-05-22 08:48:44 +05:30
Arun Prakash Jana 9dc3976533
Middle click to visit parent dir 2019-05-22 08:48:44 +05:30
Arun Prakash Jana ace449c0e9
Simpler permission string generation 2019-05-22 08:48:44 +05:30
Arun Prakash Jana e83f4ca62f
Refactor coolsize 2019-05-22 08:48:44 +05:30
Arun Prakash Jana fb4728bc31
Get rid of redundant buffer 2019-05-22 08:48:44 +05:30
Arun Prakash Jana d803521c6d
Fix #264 2019-05-22 08:48:44 +05:30
Arun Prakash Jana 3157ef1214
Code refactor 2019-05-22 08:48:45 +05:30
Arun Prakash Jana 95eaa636ef
Fix #261 2019-05-22 08:44:19 +05:30
Arun Prakash Jana 3ca86eafbe
Get device info from path 2019-05-22 08:44:19 +05:30
Bruce Hill b5272a3973
Adding scrolloff option. 2019-05-22 08:44:19 +05:30
Arun Prakash Jana bd653ac91e
Code refactor 2019-05-22 08:44:42 +05:30
Arun Prakash Jana 7cb2d22e9f
Fix build break 2019-05-22 08:44:19 +05:30
Bruce Hill 2297373306
Fix #257: fix the logic for determining which file was clicked. 2019-05-22 08:44:19 +05:30
Arun Prakash Jana c8e54ce4e2
Code refactor 2019-05-22 08:44:19 +05:30
Arun Prakash Jana 30aaa12e6f
Fix #257 2019-05-22 08:44:19 +05:30
Arun Prakash Jana b093d98a6e
Fix regression with opening binary file 2019-05-22 08:44:19 +05:30
Arun Prakash Jana 3e54217ae9
Fix build break 2019-05-22 08:44:19 +05:30
Bruce Hill 0eec240260
Added mouse support 2019-05-22 08:44:19 +05:30
Arun Prakash Jana ece7654221
Use refresh after tmp escape 2019-05-22 08:44:19 +05:30
Arun Prakash Jana ee11e78f14
nlaunch: add sleep to wait for child 2019-05-22 08:44:19 +05:30
Arun Prakash Jana b41560572c
Unify tmp file creation 2019-05-22 08:44:19 +05:30
Arun Prakash Jana 8166e0169a
Reformat create link to selection 2019-04-27 18:30:40 +05:30
Arun Prakash Jana ce6fc35929
Refactor dentfill() 2019-04-27 18:30:44 +05:30
Arun Prakash Jana 12a4ab3248 Support readline in open with 2019-04-27 01:53:41 +05:30
Arun Prakash Jana c4f39a200a Modular readline call 2019-04-27 01:41:35 +05:30
Arun Prakash Jana 810cf2e403 Add timeout to warnings 2019-04-27 00:55:28 +05:30
Arun Prakash Jana 4f15fb765a
Always detach opener
This may affect issue #227 but the defunct processes do not use any memory and exit when nnn exits. I guess that happens because of xdg-open using an intermediate script.

However, if we do not detach xdg-open, the child process is killed when the terminal is closed which is a severe problem.
2019-04-26 08:46:57 +05:30
Arun Prakash Jana 04bd1ea71d Revert "Fix #225"
This reverts commit 32dde3390a.
2019-04-25 21:11:35 +05:30
Arun Prakash Jana 6186e8b458 Fix check for binary value 2019-04-25 19:02:55 +05:30
Arun Prakash Jana 58e4b443a5 Check binary config values are 1 2019-04-24 20:31:52 +05:30
Arun Prakash Jana 32dde3390a Fix #225 2019-04-23 21:54:59 +05:30
Arun Prakash Jana e973330c91 Fix build break 2019-04-23 19:59:37 +05:30
Arun Prakash Jana adad3f2fe8 Allocate initial path dynamically 2019-04-23 08:50:25 +05:30
Arun Prakash Jana c270b6002f Fix picker mode with file 2019-04-23 01:52:53 +05:30
Arun Prakash Jana cd4009dbf6 Remove redundant change for HOME 2019-04-23 01:13:02 +05:30
Arun Prakash Jana b0132ba440 Remove redundant checks for g_tmpfpath 2019-04-22 23:57:26 +05:30
Arun Prakash Jana 99b1b1f489 SSHFS refinements 2019-04-22 02:14:43 +05:30
Arun Prakash Jana 92bbeb360d
Handle exit status of child process 2019-04-22 01:24:54 +05:30
Arun Prakash Jana a900b2c4fa Support config dir ~/.config/nnn 2019-04-21 23:59:51 +05:30
Arun Prakash Jana f9264577d2 Support copymode across contexts 2019-04-21 19:53:13 +05:30
Arun Prakash Jana 4ceb0800e4 Fix clang-tidy warning 2019-04-21 19:28:55 +05:30
Arun Prakash Jana 7133971052 Revert "Fix clang error"
This reverts commit 78de6b5752.
2019-04-21 15:41:26 +05:30
Arun Prakash Jana b059e08f3a Reduce statements 2019-04-21 15:40:30 +05:30
Arun Prakash Jana 78de6b5752 Fix clang error 2019-04-21 12:05:56 +05:30