2 stable releases
1.0.1 | May 2, 2024 |
---|---|
1.0.0 | Apr 29, 2024 |
#1598 in Command line utilities
22KB
393 lines
⚡ToDo_Rust⚡
Overview
This is a simple command-line interface (CLI) todo program written in Rust.
Installation
To install this program, you'll need Rust installed on your system. If you don't have it installed, you can get it from here.
Once Rust is installed, you can build the program using Cargo:
cargo build --release
After successful compilation, you can copy the executable to a directory in your PATH, for example:
cp target/release/todo-rust /usr/local/bin/todo
Usage
The following commands are available:
list
orlist-all
: Lists all the tasks.list-done
: Lists only the completed tasks.list-undone
: Lists only the tasks that are not completed.add <task>
: Adds a new task.rm <task_index>
: Removes the task at the specified index.rm-all
: Removes all tasks.done <task_index>
: Marks the task at the specified index as done.undone <task_index>
: Marks the task at the specified index as undone.sort
orsort-asc
: Sorts the tasks in ascending order.sort-dsc
: Sorts the tasks in descending order.sort-done
orsort-done-asc
: Sorts the completed tasks in ascending order.sort-done-dsc
: Sorts the completed tasks in descending order.sort-undone
orsort-undone-asc
: Sorts the tasks that are not completed in ascending order.sort-undone-dsc
: Sorts the tasks that are not completed in descending order.
Future Improvements
- Backup Option: Implement a backup option, utilizing a configuration file (
todo/config.ini
). - Date and Time: Add functionality to include date and time for tasks.
- Sort by Date-Time: Implement sorting functionality based on date and time.
- Macros for File Operations: Utilize macros for file operations, such as opening files with read or write permissions.
- Config Options: Add configuration options to
todo/config
. - Separate Function: Create a separate function for managing configuration options.
- Use Colored Output: Utilize colored output for better notifications.
In the future, additional features such as support handling more command-line arguments may be added.
Dependencies
~2.3–3.5MB
~57K SLoC