Commit Graph

514 Commits (1941355128adc17440f0a8d297b7abf3655219f5)

Author SHA1 Message Date
Arijit Basu 1941355128
Imrove builds
- Add more build targets
- Allow cross compile (if you have the resources, I don't)
- Fix failing nixos tests
11 months ago
Arijit Basu 2f78691333
Update/upgrade deps 11 months ago
Arijit Basu bc7f3cbbcf
Minor update 11 months ago
Arijit Basu ad50342260
Fix focus on back 11 months ago
Arijit Basu 313c61db96
Optimize get_current_dir
Closes: https://github.com/sayanarijit/xplr/issues/628
11 months ago
Arijit Basu 255517c2a9
Also respect general.table.headers.cols[*].style 11 months ago
Arijit Basu 9844ae1476
Respect low priority styles
- xplr.config.general.selection.item.style
- xplr.config.general.table.row.style
- xplr.config.general.table.row.cols[*].style
- xplr.config.general.table.header.cols[*].style

Ref: https://github.com/sayanarijit/xplr/issues/640
11 months ago
Arijit Basu d282032b3d
Fix symlink base again 11 months ago
Arijit Basu ba26752f6c
Use correct base for symlink for alternate layouts 11 months ago
Arijit Basu 2f3c2ea0e4
Fix lint 11 months ago
Arijit Basu 9d1bd99fd4
Implement on_selection_change
Also optimize navigation with selection items.
Refresh selection only when it's required.

Closes: https://github.com/sayanarijit/xplr/issues/635
11 months ago
Arijit Basu 33c5aa9f14
Bring back enqueue 11 months ago
Arijit Basu cae50e4bcf
Remove unnecessary enqueue step 11 months ago
Arijit Basu 508f4b980b
Fix doc 12 months ago
Noah Mayr 4ccd9796c4
Use xdg-rust crate instead of dirs crate (#631)
* Use xdg-rust crate instead of dirs crate

* Fix clippy warning
12 months ago
Solitude 36a7f1dc17
Honor XDG_CONFIG_HOME (#629) 1 year ago
Arijit Basu ab90381fda
Prompt when in doubt (#623)
* Update deps

* Prompt for user input when in doubt

- Ask before delete.
- For copy, move or symlink operations, ask what to do if a file with
  the same name exists.
- Update version.

Closes: https://github.com/sayanarijit/xplr/issues/615
1 year ago
Arijit Basu 2a775371f6
Use sayanarijit/jf for xplr -m 1 year ago
Arijit Basu 3bee8060c7
Lower LS_COLORS priority (#622)
* Lower LS_COLORS priority

Fixes: https://github.com/sayanarijit/xplr/issues/620

* Remove default style

* Fix doc markdown
1 year ago
Arijit Basu 97e30e2a6f
Allow nesting layouts inside a custom layout (#618)
This adds `CustomLayout` panel for nesting a `Layout` inside the `Static` and
`Dynamic` layouts.

This will help switching between different layouts dynamically, without
having to switch modes.
1 year ago
Arijit Basu 8aff0ba918
Clarify how to deal with init.lua 1 year ago
Arijit Basu 252a1f5c37
Documentation fixes and cli help improvement 1 year ago
Kian-Meng Ang 8cca2d3566 Fix typos
Found via `codespell -S target -L ratatui,crate,ser,enque,noice`
1 year ago
Arijit Basu b995be0089 Fix SelectAll and UI colors (#604)
- SelectAll will not unselect the existing paths. Same for
  ToggleSelectAll.
- Fixed UI bug causing random bold characters (deps).
1 year ago
Arijit Basu c79175764b SelectAll: extend selection list rather than replacing (#603)
Also applies to ToggleSelectAll i.e. `ctrl-a`
1 year ago
Arijit Basu e0d683b13a
Release 0.21.0 (#602)
* 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>

* 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>

* 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>

* Add xplr.util.layout_replaced (#574)

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

* 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

* Minor updates

* 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

* 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

* Some fixes

* Fix selection editor

* Fix clear selection for selection editor

* Add selection navigation (#583)

* Add selection navigation

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

Also improve batch operations

* Minor doc fixes

* Minor doc fix

* Remove tab -> ctrl-i binding

* Improve batch operation interaction

- More robust focus operation.
- Focus on failed to delete paths.

* Fix Rust compatibility

* Fix panic on permission denial

Also, improve the error messages.

* More logging improvements

* Fix layout_replace only working with table parameters (#586)

* 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>

* Fix layout replace for unit layouts (#588)

* 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

* Fix search order

* Improve working with file permissions (#591)

* Improve working with file permissions

Implements:

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

* Edit permissions

* Add permissions in Resolved Node (#592)

* Add permissions in Relolved Node

And handle application/x-executable mime type.

* Fix bench

* Improve permissions editor

* More permissions editor improvements

* Doc updates

* Remove ResolvedNode.permissions (#593)

Reason: Too much serialization making lua calls slow.

* Add workaround for macos with legacy coreutils (#595)

Refs:
- https://github.com/sayanarijit/xplr/issues/594
- https://github.com/sayanarijit/xplr/issues/559

* Use H:M:S format to display logs (#596)

* Keep the selection list and clear manually (#597)

* Keep the selection list and clear manually

Ref: https://github.com/sayanarijit/map.xplr/issues/4

* Fix linting err

* Fix broken history (#599)

* Fix broken hostory

Fixes: https://github.com/sayanarijit/xplr/issues/598

* Minor cleanup

* Slightly optimize selection retention (#600)

* Update deps

* chrono -> time

* update: 0.20.2 -> 0.21.1

* Update post-install.md

* Upgrade guide

* Minor fix

* Fix tests

* Add missing doc

* Fix clippy lints

---------

Co-authored-by: Noah Mayr <dev@noahmayr.com>
1 year ago
Arijit Basu d80b1b4db8 Alternate theme 1 year ago
Arijit Basu 5f07e6143f Update v0.20.2 1 year ago
Arijit Basu d52ccac8ba Fix file creation for mac's default bash 1 year ago
Arijit Basu 553b4ed3d6
Fix keeping input buffer 1 year ago
Arijit Basu e9fc643bd9
Fix test 1 year ago
Arijit Basu 3afccf2a54
Doc fix 1 year ago
Arijit Basu 1d9d5f5145
Minor changes 1 year ago
Emanuel 0715e242ef fix: run cargo fmt 1 year ago
Emanuel 105e770f58 feat: complete last changes to add hooks 1 year ago
emanuel d6e33e68e3 :feat: Add hooks for mode and layout changes 1 year ago
Arijit Basu 0cd5a9163d
Minor fixes 1 year ago
Arijit Basu 7fbcd18bb4
Update util.rs 1 year 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
Arijit Basu 6558ba8092 Hide counts if 0
Closes https://github.com/sayanarijit/xplr/issues/542
2 years ago
Arijit Basu 91c87a3901 Fix creating file with spaces
Fixes: https://github.com/sayanarijit/xplr/issues/544
2 years ago
Arijit Basu 25798009ad Fix displaying multispace characters
Ref: https://github.com/sayanarijit/tui-input/pull/14
2 years ago
Arijit Basu 104dc0534b
Minor doc fixes 2 years ago
Arijit Basu 053615b041 Fix linting errors 2 years ago