Commit Graph

314 Commits

Author SHA1 Message Date
Arijit Basu
07959c8114
Minor fix 2023-03-20 00:48:13 +05:30
Arijit Basu
26f74bdbb4
Upgrade guide 2023-03-20 00:48:12 +05:30
Arijit Basu
01996189f0
Update post-install.md 2023-03-20 00:48:12 +05:30
Arijit Basu
4536b2c4f0
Remove ResolvedNode.permissions (#593)
Reason: Too much serialization making lua calls slow.
2023-02-18 13:41:28 +05:30
Arijit Basu
531df24cc6 Doc updates 2023-02-14 10:02:03 +05:30
Arijit Basu
2ed800d552
Add permissions in Resolved Node (#592)
* Add permissions in Relolved Node

And handle application/x-executable mime type.

* Fix bench
2023-02-13 20:01:41 +05:30
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
2023-02-13 19:06:22 +05:30
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
2023-02-12 15:16:59 +05:30
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>
2023-02-08 00:15:53 +05:30
Arijit Basu
903e0dda92 Fix panic on permission denial
Also, improve the error messages.
2023-01-30 20:07:41 +05:30
Arijit Basu
0436825b52 Minor doc fix 2023-01-30 13:20:11 +05:30
Arijit Basu
35cc591cb9
Add selection navigation (#583)
* Add selection navigation

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

Also improve batch operations

* Minor doc fixes
2023-01-30 13:16:36 +05:30
Arijit Basu
28af947ee8 Some fixes 2023-01-29 17:28:25 +05:30
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
2023-01-29 16:44:15 +05:30
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
2023-01-29 10:20:50 +05:30
Arijit Basu
d9d2fa15e3 Minor updates 2023-01-28 23:56:29 +05:30
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>
2023-01-28 21:28:25 +05:30
Arijit Basu
5f07e6143f Update v0.20.2 2023-01-13 11:33:48 +05:30
Arijit Basu
43c88b4873 Improve install instruction for macOS 2023-01-12 16:54:49 +05:30
Arijit Basu
26d79bd799
Update awesome-plugins.md 2023-01-11 15:51:27 +05:30
Arijit Basu
3afccf2a54
Doc fix 2023-01-09 16:42:15 +05:30
Arijit Basu
1d9d5f5145
Minor changes 2023-01-09 16:40:38 +05:30
Emanuel
006c655e3a fix: restore a wrongly removed part 2023-01-09 16:34:58 +05:30
Emanuel
105e770f58 feat: complete last changes to add hooks 2023-01-09 16:34:58 +05:30
BoolPurist
078da205ca Fixed own typo. 2023-01-07 22:32:40 +05:30
BoolPurist
caa365b4a0 link to header for crates.io install is fixed 2023-01-07 22:32:40 +05:30
emanuel
4c4e7f41b4 Add style.xplr plugin to awesome-plugins.md 2022-12-30 23:11:04 +05:30
Arijit Basu
e6e701b371
Update alternatives.md 2022-12-29 12:09:51 +05:30
Arijit Basu
0cd5a9163d
Minor fixes 2022-12-19 23:50:28 +05:30
Arijit Basu
ac958c9532
Update awesome-plugins.md 2022-12-18 22:41:58 +05:30
Arijit Basu
1369fcea9a
Update xplr.util.md 2022-12-16 23:15:11 +05:30
Arijit Basu
d17489de8d Update version 2022-12-04 15:03:06 +05:30
Arijit Basu
efb4d605c5 Fix doc 2022-11-30 03:19:49 +05:30
Arijit Basu
e559b96e31 Implement xplr.util.version
Closes: https://github.com/sayanarijit/xplr/issues/540
2022-11-30 03:19:49 +05:30
Arijit Basu
d4edf3302f Gen docs 2022-11-30 03:04:40 +05:30
Arijit Basu
104dc0534b
Minor doc fixes 2022-11-13 12:12:26 +05:30
Arijit Basu
555bc02e10
Update lua-function-calls.md 2022-11-12 18:19:16 +05:30
Arijit Basu
aea17b415b
Update writing-plugins.md 2022-11-07 13:06:05 +05:30
Arijit Basu
15e7123aba
Update awesome-hacks.md 2022-11-04 23:50:43 +05:30
Arijit Basu
ea8a1fcd46
Update xplr.util.md 2022-10-29 10:03:35 +05:30
Arijit Basu
70cb745c9f Implement and expose xplr.util
Closes: https://github.com/sayanarijit/xplr/issues/517
2022-10-29 02:46:31 +05:30
Arijit Basu
15979e4974 Release v0.20.0 2022-10-29 02:46:31 +05:30
Arijit Basu
01060ed025
Add $XPLR_INITIAL_PWD and 'gi' key binding
This will allow enable workspace like features, without using vroot.
2022-10-28 11:23:12 +05:30
Arijit Basu
74318435e8
Update version 2022-10-27 23:22:11 +05:30
Arijit Basu
553f6b9bc6
Fix doc 2022-10-27 23:05:48 +05:30
Arijit Basu
71bd2e2776
Add more vroot options
- ToggleVroot
- UnsetVroot

Along with key bindings.
2022-10-27 23:00:10 +05:30
Arijit Basu
94154c56df
Consistent help text 2022-10-27 21:54:06 +05:30
Arijit Basu
289556f452
Add builtin vroot mode
Also fix ResetVroot
2022-10-27 21:39:48 +05:30
Arijit Basu
e3a5f3c044 Add messages SetVroot and ResetVroot 2022-10-27 17:05:32 +05:30
Arijit Basu
a62b72bf2a Add support for --vroot
--vroot helps isolating navigation of an xplr session inside a specific
directory. However, interaction still requires passing full paths
(`/tmp/vroot`). Shell scripts and Lua functions can still access files
outside the virtual root.

This PR also fixes unwanted dot (.) and extra slash (//) issues in paths.
2022-10-27 17:05:32 +05:30