AMythicDev / minus

An asynchronous, runtime data feedable terminal paging library for Rust
https://crates.io/crates/minus/
Apache License 2.0
317 stars 23 forks source link

feat: Command queue #119

Closed AMythicDev closed 9 months ago

AMythicDev commented 9 months ago

Many Commands is minus require additional operations to be done after their main objective have been completed. One example of this would be something like the Search command which after executing successfully also requires a update of the prompt to show the search match count. Currently all such commands directly use the functions handling these operations which makes the code look more confusing as well as introduces code duplication.

To solve this issue, a new type called CommandQueue is being introduced so that eachCcommand can issue other Commands to be executed once its main objective is finished executing.

Although the implementation of this new type is mostly complete, we need to port all the Commands that require such cases to use this new type