pimutils / todoman

✅ A simple, standards-based, cli todo (aka: task) manager.

Home Page:https://todoman.readthedocs.io

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

UI rewrite to use `prompt()`

WhyNotHugo opened this issue · comments

commented

The current TUI is a bit clunky and wierd to use. It needs to be scrolled down with arrows, which isn't handy, [have to leave the home row] and the feedback loop when a value is invalid is not very friendly.

Something that prompts for fields and provides immediate feedback if any is invalid should be more friendly and allow more code reuse with the cli frontend. It's likely we can drop urwid entirely, and just use click.prompt().

todo new
Summary?
> some summary
Description? [none]
>
...

Not sure if to ask about all fields each time or not. It might get annoying quickly, but there's always the one liner:

todo new "Using quotes is handy if you todo's description has apostrophes."
commented

Not sure if to ask about all fields each time or not.

How about leaving it to the users to set up classes of todos in their config files?

sample config:

class_a = "default;summary"
class_b = "summary,location"
class_c = "*"

Here, default class a has just the summary, is used when todo new is called with no option or todo new -c a

todo new -c b additionally asks for location and class c for everything (but you could still skip by entering nothing).

commented

I like this approach, will definitely keep it in mind.

I was wondering if it could be [none]/[d]one
With a single "d" saving the todo in the actual state.