Commit Graph

519 Commits (8fb969bca1784129b9489a6204eb1a2b7e6118dd)

Author SHA1 Message Date
Arijit Basu 8fb969bca1
Fix linting err 2 years ago
Arijit Basu 67c3a7c12c
Keep the selection list and clear manually
Ref: https://github.com/sayanarijit/map.xplr/issues/4
2 years ago
Arijit Basu 39c04edfca
Add workaround for macos with legacy coreutils (#595)
Refs:
- https://github.com/sayanarijit/xplr/issues/594
- https://github.com/sayanarijit/xplr/issues/559
2 years ago
Arijit Basu 4536b2c4f0
Remove ResolvedNode.permissions (#593)
Reason: Too much serialization making lua calls slow.
2 years ago
Arijit Basu af68177e63 More permissions editor improvements 2 years ago
Arijit Basu 85a27b961d Improve permissions editor 2 years ago
Arijit Basu 2ed800d552
Add permissions in Resolved Node (#592)
* Add permissions in Relolved Node

And handle application/x-executable mime type.

* Fix bench
2 years ago
Arijit Basu 670f6596f1
Improve working with file permissions (#591)
* Improve working with file permissions

Implements:

- xplr.util.permissions_rwx
- xplr.util.permissions_octal

* Edit permissions
2 years ago
Arijit Basu 0b03fda363 Fix search order 2 years ago
Arijit Basu 08e1f6aa2d
Allow custom title and ui config in custom layout. (#589)
* Allow custom title and ui config in custom layout.

Adds the following layouts:

- Static
- Dynamic

Deprecates `CustomContent` (but won't be removed to maintain compatibility).

Closes: https://github.com/sayanarijit/xplr/issues/563

* Delete init.lua

* Update docs/en/src/layout.md

* Update docs/en/src/layout.md

* Rename

- Paragraph => CustomParagraph
- List => CustomList
- Table => CustomTable

Also update init.lua

* Fix clippy errs

* Fix doc links
2 years ago
Arijit Basu 6595e2ee93
Fix layout replace for unit layouts (#588) 2 years ago
Noah Mayr ecd7ff9a4e
Improve builtin search mode (#585)
* Improve builtin search mode

* Remove commented out code

* Make search ranking and algorithm more extensible

* Flatten messages

BREAKING: xplr.config.general.sort_and_filter_ui.search_identifier -> xplr.config.general.sort_and_filter_ui.search_identifiers

Messages:

- Search
- SearchFromInput
- SearchFuzzy
- SearchFuzzyUnranked
- SearchFuzzyUnrankedFromInput
- SearchRegexUnrankedFromInput
- SearchRegex
- SearchRegexUnranked
- SearchRegexUnrankedFromInput
- SearchRegexUnrankedFromInput
- CycleSearchAlgorithm
- EnableRankedSearch
- DisableRankedSearch
- ToggleRankedSearch

Static config:

xplr.config.general.search.algorithm = "Fuzzy"

* Handle search ranking in search algorithm

* Make CycleSearchAlgorithm only cycle between algorithms, without changing ranking

* Separate algorithm and ordering

* Minor doc updates

* Some cleanup

* Final touch

* Cycle -> Toggle

---------

Co-authored-by: Arijit Basu <sayanarijit@gmail.com>
2 years ago
Noah Mayr 2240c74db2
Fix layout_replace only working with table parameters (#586) 2 years ago
Arijit Basu 70989b5fc3 More logging improvements 2 years ago
Arijit Basu 903e0dda92 Fix panic on permission denial
Also, improve the error messages.
2 years ago
Arijit Basu da354cbcf9 Fix Rust compatibility 2 years ago
Arijit Basu f430381f5b Improve batch operation interaction
- More robust focus operation.
- Focus on failed to delete paths.
2 years ago
Arijit Basu f9e78319fb Remove tab -> ctrl-i binding 2 years ago
Arijit Basu 0436825b52 Minor doc fix 2 years ago
Arijit Basu 35cc591cb9
Add selection navigation (#583)
* Add selection navigation

- FocusNextSelection      (ctrl-n)
- FocusPreviousSelection  (ctrl-p)

Also improve batch operations

* Minor doc fixes
2 years ago
Arijit Basu 0e43198093 Fix clear selection for selection editor 2 years ago
Arijit Basu 42618ad463 Fix selection editor 2 years ago
Arijit Basu 28af947ee8 Some fixes 2 years ago
Arijit Basu 77b99ae413
More UI utilities and improvements (#582)
* More UI utilities and improvements

- Apply style only to the file column in the table.
- Properly quote paths.
- Expose the applicable style from config in the table renderer argument.
- Add utility functions:
  - xplr.util.node_type
  - xplr.util.style_mix
  - xplr.util.shell_escape

* Make escaping play nice with shorten

* Fix tests

* Fix doc
2 years ago
Arijit Basu adccbae8f5
Add more features (#581)
* Add more features

- Key binding ":se" to edit selection list in $EDITOR
- New utility functions:
  - xplr.util.clone
  - xplr.util.exists
  - xplr.util.is_dir
  - xplr.util.is_file
  - xplr.util.is_symlink
  - xplr.util.is_absolute
  - xplr.util.path_split
  - xplr.util.node

Closes: https://github.com/sayanarijit/xplr/issues/580
Closes: https://github.com/sayanarijit/xplr/issues/579
Closes: https://github.com/sayanarijit/xplr/issues/577

* Fix edit selection list

* Fix clippy lints

* Fix layout link in doc

* xplr.util.shortened -> xplr.util.shorten

* Fix more clippy lints

* Fix xplr.util.shorten name change
2 years ago
Arijit Basu d9d2fa15e3 Minor updates 2 years ago
Arijit Basu 1212acdf99
Improve selection operations (#575)
- `:sl` to list selection.
- `:ss` to softlink.
- `:sh` to hardlink.
- Avoid conflict by adding suffix.
- Unselect individual path only on operation success.

Closes:

- https://github.com/sayanarijit/xplr/issues/572
- https://github.com/sayanarijit/xplr/issues/571
- https://github.com/sayanarijit/xplr/issues/570
2 years ago
Arijit Basu 628d2cfc26
Add xplr.util.layout_replaced (#574)
Closes: https://github.com/sayanarijit/xplr/issues/573
2 years ago
Noah Mayr f64835609c
Add xplr.util.relative_to and xplr.util.path_shorthand (#568)
* Add xplr.util.relative_to and xplr.util.path_shorthand

* Remove duplicate slash at end

* Use pwd from env and remove pathdiff package

* Some fixes and improvements

* Generate docs

* Some more improvements

* Improve selection rendering

* Improve functions with test cases

* Update docs

* Minor doc fix

* Rename path_shorthand -> shortened

* Handle homedir edgecase

Also fix init.lua

* Minor fix

* Use config argument for relative and shortened paths

* Prefix relative paths with "." and fix edge cases where we're not showing the file name

* Use and_then instead of map and flatten

* WIP: Move selection rendering to lua

* Make selection renderer function configurable on lua side

* Some improvements

* Some impovements

* Minor doc fix

* Remove symlink style

---------

Co-authored-by: Arijit Basu <sayanarijit@gmail.com>
2 years ago
Noah Mayr 1618c504fb
Add utility function xplr.util.textwrap (#567)
* Add utility function xplr.util.wrap

* Cleanup and fix formatting

* Update src/lua/util.rs

Co-authored-by: Arijit Basu <sayanarijit@users.noreply.github.com>

* Update wrap to return lines instead

* Fix doc

* Rename wrap -> text wrap

Co-authored-by: Arijit Basu <sayanarijit@users.noreply.github.com>
Co-authored-by: Arijit Basu <sayanarijit@gmail.com>
2 years ago
Arijit Basu c1fc5aee70
Add xplr.util.lscolor and xplr.util.paint (#569)
* Add xplr.util.lscolor and xplr.util.style

* Fix formatting

* Fix clippy suggestions

* Remove redundant closures

* Optimize, support NO_COLOR, and rename style to paint

* Use xplr.util.paint and xplr.util.color in init.lua

Co-authored-by: Noah Mayr <dev@noahmayr.com>
2 years ago
Arijit Basu d80b1b4db8 Alternate theme 2 years ago
Arijit Basu 5f07e6143f Update v0.20.2 2 years ago
Arijit Basu d52ccac8ba Fix file creation for mac's default bash 2 years ago
Arijit Basu 553b4ed3d6
Fix keeping input buffer 2 years ago
Arijit Basu e9fc643bd9
Fix test 2 years ago
Arijit Basu 3afccf2a54
Doc fix 2 years ago
Arijit Basu 1d9d5f5145
Minor changes 2 years ago
Emanuel 0715e242ef fix: run cargo fmt 2 years ago
Emanuel 105e770f58 feat: complete last changes to add hooks 2 years ago
emanuel d6e33e68e3 :feat: Add hooks for mode and layout changes 2 years ago
Arijit Basu 0cd5a9163d
Minor fixes 2 years ago
Arijit Basu 7fbcd18bb4
Update util.rs 2 years ago
Arijit Basu d17489de8d Update version 2 years ago
Arijit Basu 57492b84c0
Show HelpMenu in intermediate modes
Also, use xplr.util api in xplr.fn.builtin.try_complete_path
2 years ago
Arijit Basu d719700122 Launch $SHELL, fallback to bash
Closes: #499
2 years ago
Arijit Basu 011d3d4a68
Fix logs count 2 years ago
Arijit Basu efb4d605c5 Fix doc 2 years ago
Arijit Basu e559b96e31 Implement xplr.util.version
Closes: https://github.com/sayanarijit/xplr/issues/540
2 years ago
Arijit Basu c382768f23 Implement xplr.util.to/from_json/yaml
Closes: https://github.com/sayanarijit/xplr/issues/541
2 years ago