Handle `find_command` inside state itself -> `get_command_by_name`. Move tips to a seperate file for modularity. Pass the whole args to state instead of seperate args. Use const for float and confirmation prompt float sizes. Add the `longest_tab_length` to appstate struct so that it will not be calculated for each frame render use static str instead String for tips. Use function for spawning confirmprompt. Merge command list and task items list rendering a single widget instead of two. Remove redundant keys in handle_key. Optimize scrolling logic. Rename `toggle_task_list_guide` -> `enable_task_list_guide`
Reference instead of borrowing commands from state, Refactor draw function variables to immutable, calculate innersize from block instead of manual definition
* implement a root check menu
* code needs to be readable
* rephrase it a lil bit
* disregard escalation tool variable if found as root
* refactor: Call root check from within AppState constructor (#7)
* remove duplicate check
* add comment back
---------
Co-authored-by: Liam <33645555+lj3954@users.noreply.github.com>
Replaced ansi related code for tree sitter highlight with direct ratatui::text. Cache the processed text in appstate to remove processing of text for every frame render.Create paragraph instead of list so that scroll and wrapping can be done without external crates. Add caps keys for handle_key_event.
Use Vec<char> for search_input to prevent panics when using multi-byte characters, use lowercase conversion instead of regex, Added comments for clarity
Use theme color instead of using ratatui::Color for running_command success and fail + search preview text color + min tui warning color, add colors for confirmation prompt, fix inverted success and fail colors
* 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>