mirror of
https://github.com/jarun/nnn.git
synced 2024-11-25 04:11:29 +00:00
a40d29ba9f
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.
6 lines
110 B
Bash
Executable file
6 lines
110 B
Bash
Executable file
#!/bin/sh
|
|
|
|
# comment the next line to convert newlines to spaces
|
|
IFS=
|
|
echo -n $1 | `xsel --clipboard --input`
|