* feat: Add automation based on config file
* docs: add configuration to the manpage & README
* update roadmap
---------
Co-authored-by: Adam Perkowski <adas1per@protonmail.com>
Co-authored-by: Chris Titus <contact@christitus.com>
* refactor: Export ego-tree from linutil core, rather than workspace
* refactor: Improve code formatting
---------
Co-authored-by: Chris Titus <contact@christitus.com>
* implement dynamic auto updating word wrapping functionality
* run fmt
* remove dupe space
* run fmt
* add remove comments back
* fix compilation errors
* run fmt
* run docgen
* run docgen
* fix conflicts
* run cargo xtask docgen
* use boolean rather than enum
---------
Co-authored-by: nyx <nnyyxxxx@users.noreply.github.com>
* implement fish like tab completion
* grey the pv out and convert to lowercase
* run fmt
* do not tabcomplete if the user hits enter
* fix
* fix lints
* run docgen
---------
Co-authored-by: nyx <nnyyxxxx@users.noreply.github.com>
Co-authored-by: Adam Perkowski <adas1per@protonmail.com>
* do not exit linutil in confirmation prompt when q is pressed
* remove cap support
* add ``ctrl + c`` exiting
Co-authored-by: Adam Perkowski <adas1per@protonmail.com>
---------
Co-authored-by: nyx <nnyyxxxx@users.noreply.github.com>
Co-authored-by: Adam Perkowski <adas1per@protonmail.com>
* dont allow the user to bring up the command desc if there is none
* obey our god lints
---------
Co-authored-by: nyx <nnyyxxxx@users.noreply.github.com>
* dont allow scrolling when last line is visible
* apply changes proposed by adam
Co-authored-by: Adam Perkowski <adas1per@protonmail.com>
---------
Co-authored-by: nyx <nnyyxxxx@users.noreply.github.com>
Co-authored-by: Adam Perkowski <adas1per@protonmail.com>
* allow scrolling past last entry
* Update tui/src/state.rs
Co-authored-by: Liam <33645555+lj3954@users.noreply.github.com>
* Update tui/src/state.rs
Co-authored-by: Liam <33645555+lj3954@users.noreply.github.com>
* apply changes proposed by adam
Co-authored-by: Adam Perkowski <adas1per@protonmail.com>
* apply changes proposed by adam round 2
Co-authored-by: Adam Perkowski <adas1per@protonmail.com>
* undo changes proposed by adam in scroll up and down funcs
---------
Co-authored-by: nyx <nnyyxxxx@users.noreply.github.com>
Co-authored-by: Liam <33645555+lj3954@users.noreply.github.com>
Co-authored-by: Adam Perkowski <adas1per@protonmail.com>
* return user to their previous position if they enter a subdir
* fix lint
* implement changes proposed by adam
Co-authored-by: Adam Perkowski <adas1per@protonmail.com>
* add newline back
* coalesce `visit_stack` and `position_stack` (#6)
---------
Co-authored-by: nyx <nnyyxxxx@users.noreply.github.com>
Co-authored-by: Adam Perkowski <adas1per@protonmail.com>
Co-authored-by: cartercanedy <99052281+cartercanedy@users.noreply.github.com>
* organize shortcut list into a grid-like-pattern
* increase minimum size
* add newline back to satisfy lint
* decrease to 25
* optimization
Co-authored-by: Adam Perkowski <adas1per@protonmail.com>
* satisfy lint
* implement some changes proposed by adam
Co-authored-by: Adam Perkowski <adas1per@protonmail.com>
---------
Co-authored-by: nyx <nnyyxxxx@users.noreply.github.com>
Co-authored-by: Adam Perkowski <adas1per@protonmail.com>
* confirmation prompt
* actually implement scrolling
* finalize styling
* get rid of generics on AppState and Focus
* add bottom title as help text
* number formatting
I am so used to pressing q to quit everything.
Let me know if this is not desired, because I remember using it a lot,
so if it was removed maybe there was a reason?
Co-authored-by: Chris Titus <contact@christitus.com>
* Cargo will rebuild if anything changes in src/, recursively. E.g src/commands/ is also checked
* No need to make a generic, we only use 1 backend
* Delete the imports that are no longer needed
* Replace the weird struct hack with an enum
* Delete a useless line
* The None should be explicit
* Support for non-english keyboard input
* Commit Linutil
* refactor: Improve conciseness of char passthrough
* fix: Respect shebang in script files
* refactor: More efficiently handle shebangs
* refactor: Remove unnecessary error handling
If 2 characters can be read from the file, a line must exist
* fix: Drop accidentally added file
* fix: Ensure that executable exists before displaying entry
* fix: Explicitly check if the executable is a file
* refactor: Replace unnecessary import
Co-authored-by: Adam Perkowski <adas1per@protonmail.com>
* fix: Check whether the file is directly executable
* fix: Comply with rustfmt
Co-authored-by: Adam Perkowski <adas1per@protonmail.com>
---------
Co-authored-by: Andrii Dokhniak <adokhniak@gmail.com>
Co-authored-by: JustLinuxUser <JustLinuxUser@users.noreply.github.com>
Co-authored-by: Adam Perkowski <adas1per@protonmail.com>
* implement syntax highlighting for preview text
* remove errant lifetimes
Co-authored-by: Adam Perkowski <adas1per@protonmail.com>
* remove errant lifetimes
Co-authored-by: Adam Perkowski <adas1per@protonmail.com>
* update Cargo.lock
* only iterate over visible lines
* break lines up on init
* implement side scrolling
* Remove unnecessary #![soft_unstable]
This was accidentally left in from benching
---------
Co-authored-by: Adam Perkowski <adas1per@protonmail.com>
* Fixed someone else's mistakes
* workflow now fails if clippy returns warnings
* refactor: Make base title variable constant
---------
Co-authored-by: Liam <lj3954@users.noreply.github.com>