5 releases

0.2.2 Jun 10, 2023
0.2.1 Jun 10, 2023
0.2.0 Jun 10, 2023
0.1.1 Jun 10, 2023
0.1.0 Jun 10, 2023

#2503 in Command line utilities

MIT/Apache

19KB
325 lines

Rusty Tasks V 0.2.0

Your own terminal based to-do list with folders to store your tasks

This is a terminal tool that will help you keep track of what you need to do without using yet another free website!

Rusty Tasks uses a pretty table style renderer that makes your tasks look like this!

+-------------+-----------------------------------------------+
| Folder      | Tasks                                         |
+=============+===============================================+
| Cool Things |  ID | Task                     | Status       |
|             | ====+==========================+============= |
|             |  63 | This is a test task that | In Progress  |
|             |     | will automatically add   |              |
|             |     | newlines                 |              |
+-------------+-----------------------------------------------+

Installation

First, make sure that you have sqlite installed, if you don't, install it with your favorite package manager.

Then, installing RustyTasks is as simple as having cargo and running cargo install rusty_tasks

Usage

To start, run Rusty Tasks by typing rt in your terminal! It will show you a list of all of the awesome things you can do with it! But we'll explain a couple of them here!

List

This one is simple, type rt list or rt list -f "folder/name/here" To see all of your tasks, or just the tasks under the specific folder!

Optional: You can use the -d flag followed by a number to set the max depth that the system will recurse into folders (Default of 3)

Add

This one is how you add a new task!

Using rt add followed by a -f "folder/name/here" and -t "task_here" You will have created a task, and it will show you everything about your new task!

Update

This one is the most complicated,

Type rt update followed with -i id_here replacing id_here with the unique id of the task, shown in the example at the top, you can add a ton of flags to customize your ticket!

Examples

//           ID     Change the folder         Change the task     Set the status
rt update -i 123 -f "New Folder Location" -t "Change Task Name" -s incomplete

That is a simple example, but it will do what you want.

You Can However Set Custom Statuses!

Using the -c flag, you can set the status of your task to whatever you want!

Example rt update -i 123 -c "Needs confirmation" This will make sure you can know what is going on with and why whatever task isn't done!

Delete

This one is also simple. Get the unique id of the task, and type rt delete -i id_here to pop up a confirmation screen. If that looks like the ticket you were wanting to delete, type Y or YES to confirm the deletion. If it isn't the right ticket, type any other character to cancel!

Directories

This one is cool! Any paths with a / character think of the path that follows as a subdirectory! Ex: hello/world This command would be thought of as a subdirectory hello and another subdirectory world, allowing infinite customization.

In order to list these, simple type it as the same way you created it!

However You can only see 5 levels into the tasks, if you want to see deeper, list a subdirectory, and you will be able to see 5 levels deep into that directory!

Roadmap

Although things work pretty well, we have a couple of goals before 1.0 is ready!

  • Allow the use of helix/vim to create and modify tasks
  • Add some more prettyness and customization options to the way it looks
  • Add a subfolder system that allows for infinite recursion!

Dependencies

~57MB
~1M SLoC