Commit graph

3156 commits

Author SHA1 Message Date
Arun Prakash Jana 928699d4a4
float is suficient and a _little_ faster in coolsize() 2018-03-05 08:46:34 +05:30
Arun Prakash Jana 4d93a7f9fe Revert "Integer-only coolsize() (#84)"
This reverts commit 7be0726164.
2018-03-05 01:12:10 +05:30
Arun Prakash Jana 58d90bfcf6 Revert "fix rounding carry in coolsize() (#91)"
This reverts commit 7654a2e0c6.
2018-03-05 01:11:29 +05:30
Arun Prakash Jana 90e8b81c3e Revert "Fix compilation warning"
This reverts commit 30fdb6ff11.
2018-03-05 01:11:14 +05:30
Arun Prakash Jana 30fdb6ff11
Fix compilation warning 2018-03-05 00:57:31 +05:30
Alex Suykov 7654a2e0c6 fix rounding carry in coolsize() (#91)
Sizes like 1.999 get rounded to (1 + 100/100), which should be displayed
as 2.00 not 1.100 as simple %i.%02i would do without additional measures.
2018-03-05 00:48:10 +05:30
Arun Prakash Jana 3036b8a733
Fix #89: User-specific tmp file for copying filenames
Use distinct (by username) tmp filename to copy file paths.

The pattern used is:
/tmp/nnncp$USER

If username is 'arun', the file name is `/tmp/nnncparun`.
2018-03-04 10:37:18 +05:30
Arun Prakash Jana 43134cdfa8
Support ~, - and & keyboard shortcuts at the bookmark prompt.
In nav-as-you-type mode only control keys are understood when filter is enabled.
We need some way to quicly jump HOME, last visited dir or start dir.
2018-03-03 19:19:06 +05:30
Arun Prakash Jana 2094157630
Add ruby files as text file 2018-03-03 09:30:03 +05:30
Arun Prakash Jana 10e84a28ed
Both src and dst should be alignment checked separately
The following pattern passes the current check:

src  - 1010
dst  - 0101
mask - 1111
2018-03-03 01:08:15 +05:30
Nexie Kind 815d8fb21c Fix zsh path autocompletion (#88) 2018-03-02 17:31:11 +05:30
Giacomo Rossetto 73932da9dd Improved portability on MacOS (#86) 2018-03-01 18:36:26 +05:30
Alex Suykov 7be0726164 Integer-only coolsize() (#84) 2018-03-01 13:22:25 +05:30
Arun Prakash Jana 1ad5a7bd7d
Add openSUSE Leap badge 2018-02-28 16:53:48 +05:30
ilovezfs b750e4162b Makefile: don't use non-portable -t option (#83)
This fixes the build with the BSD install command by eschewing the GNU 
specific -t option, which is not portable.
2018-02-28 14:17:35 +05:30
Arun Prakash Jana b99c036242
openSUSE build system provides several distro packages. thanks @dilawar! 2018-02-28 10:20:29 +05:30
Arun Prakash Jana 12951d1ddb
Fix Fedora 25 deps 2018-02-28 02:14:53 +05:30
Arun Prakash Jana 0f89943d95
Prepare for release v1.7 2018-02-28 01:54:42 +05:30
Arun Prakash Jana 045da7a172
Update documentation on vidir 2018-02-27 09:01:39 +05:30
Arun Prakash Jana fa549aa5f7
Update README 2018-02-26 17:50:31 +05:30
Arun Prakash Jana 11dac5e3db
Add shortcut ^G to quit and cd 2018-02-24 22:54:54 +05:30
Arun Prakash Jana bd1d9e3b6d
Update changelog 2018-02-24 21:08:49 +05:30
Arun Prakash Jana 58e27fb2de
Use macros for external utils 2018-02-24 20:45:50 +05:30
Arun Prakash Jana ee733a39b1
Support batch file rename in vidir 2018-02-24 19:46:58 +05:30
Arun Prakash Jana 63512152df
Update features 2018-02-24 15:57:07 +05:30
Arun Prakash Jana 4f4b19cbcc
Update Changelog 2018-02-24 13:35:19 +05:30
Arun Prakash Jana d905abecff
Add packages for CentOS 7.2, Fedora 25 and 27 2018-02-24 11:03:05 +05:30
Arun Prakash Jana ba8799e249
Update copyright year 2018-02-24 10:55:35 +05:30
Arun Prakash Jana a963d166c8
Enable file extract in nav-as-you-type mode 2018-02-24 10:43:06 +05:30
Arun Prakash Jana d0a08ca173
Document file path copy usage sans clipboard 2018-02-24 08:56:44 +05:30
Arun Prakash Jana b22d8c32f9
Support file path copy when X is unavailable 2018-02-24 07:49:59 +05:30
Arun Prakash Jana 04dc774116
Add Gentoo as packager, FreeBSD command 2018-02-24 05:36:25 +05:30
Arun Prakash Jana 035bcdb198
Re-populate after spawning shell 2018-02-15 19:21:58 +05:30
Arun Prakash Jana af35b8a27c
Start dir watch, preserve cur entry when navigate-as-you-type is disabled 2018-02-13 13:28:18 +05:30
Arun Prakash Jana 19e5990d3a
Better message for multi-copy 2018-02-04 22:54:58 +05:30
Arun Prakash Jana 991ef57340
Do not show quotes on ^K 2018-01-29 20:49:38 +05:30
Arun Prakash Jana 1d067df0b5
Show copymode on/off 2018-01-28 12:44:29 +05:30
Arun Prakash Jana 1f87bb3bcb
Interpret ^T in filter mode 2018-01-28 12:23:23 +05:30
Arun Prakash Jana d48e91f011
Support file path quote on single copy 2018-01-28 12:04:56 +05:30
Arun Prakash Jana 6da9d5f499 Support file path quote on copy 2018-01-28 11:34:18 +05:30
maxice8 ff502f0b3e Makefile: use PKG_CONFIG instead of hardcoding pkg-config (#78) 2018-01-22 18:39:17 +05:30
Arun Prakash Jana e797a7eefd
Use macro for CRC8 table length 2018-01-19 20:39:23 +05:30
Arun Prakash Jana 98c79a69b5
Redraw if no entries when navigate-as-you-type is turned off
The main reason to do this is to start watching the current dir for changes. In
any case, this does not harm; if there are dir entries shown on redraw that's
better than showing nothing.
2018-01-17 20:22:07 +05:30
Arun Prakash Jana cbfeec5625
keybind to pin current dir - b 2018-01-17 19:32:22 +05:30
Arun Prakash Jana e359f60294
Set to last selection if filter is empty 2018-01-14 14:05:19 +05:30
Arun Prakash Jana bac199d0cf
Use consistent date format 2018-01-14 12:43:20 +05:30
Arun Prakash Jana 9f4199481a
Improve common message handling 2018-01-14 12:11:46 +05:30
Arun Prakash Jana 9bcca1a45c
Use concise and lowercase messages 2018-01-14 10:20:41 +05:30
Arun Prakash Jana e6580c38bf
Replace snprintf() with xstrlcpy() 2018-01-14 03:27:24 +05:30
Arun Prakash Jana a40d29ba9f
Support multiple file path copy
Design overview:

We are introducing multiple file path copy as a mode which can be toggled using
the keybind `^Y`. `^K` works as the individual entry selector. If the user wants
to select a range, (s)he can press `^Y` on the first entry and `^Y` on the last
entry.

We subscribe to notifications, so we need a fail-proof way to detect changes in
the directory contents. For example, if a file is deleted, it becomes difficult
to get the names of all the files in a range containing that file. If the file
is on a range boundary it would lead to wrong calculations. To handle this the
right way we use CRC8 checksum of all the visible entries in the directory. The
checksum is calculated based on the file information buffer. If the CRC changes
on a redraw(), we reset the multi-select mode.

New line (`\n`) works as the delimiter between file paths. Note that you may have
to disable IFS in the `NNN_COPIER` script to show file paths separated by spaces.
2018-01-14 01:43:30 +05:30