this commit is mostly porting over some recent performance improvements
from `sxiv-rifle`: https://github.com/ranger/ranger/pull/2411
there's one "bug-fix" in this commit. currently a file named "afilejpeg"
would be matched due to the `-iregex` in listimages. this commit changes
that so only extensions would match, so for example "afile.jpeg" would
match but not "afilejpeg".
As for performance, there's a couple things this commit does:
* store the result of listimages into a tmp file instead of calling that
function twice, this is probably the biggest performance improvement.
especially when loading large directories.
* abspath now sets the var abs_target instead of calling printf. since
abspath is only called from load_dir, we can go one step further and
inline it. but i haven't done that since the function might be useful
later on.
* avoid call to dirname and use parameter subsitution instead inside
`listimages`
* use grep instead of `-iregex`, it's POSIX compliant and can be faster.
i've tested this out with sxiv and everything seems to be working as
expected.
* nuke: use macOS open when GUI enabled
* nuke: use is_mac function to test for macOS
This is consistent with how the imgur plugin does detection.
* Add macOS open command to plugins
* pskill: only execute if input is non-empty
- Add a native vector icon for Haiku (it hasn't been Haiku-ified yet however)
- Add a rdef file (specifies application metadata)
- Add clipboard support, notififcation support, and basic nuke support
- Fix support for fortunes on Haiku ("-s" option is not available on Haiku)
- Cleanup Haiku recipe
* Add nvim as a diff tool for getplugs plugin
* Comment out `is_cmd_exists()`
* Add nvim diff tool for diffs plugin
* Add $EDITOR to nuke plugin for editing/reading text file format
* Modify diff command to fix CircleCI failures
* Fix getplugs prompt
* Allow nuke to use custom $PAGER