Skip to content

Enhancements for default behavior, customization and features #2

@cardoso-thiago

Description

@cardoso-thiago

I've been using Dooit on my personal computer (Linux) and at work (Mac), and I’m really loving it. I thought I’d share a few things that could really help people who are just getting started:

  • I think the behaviors you’ve shown in the images should be the default. Users could then disable anything they don’t need, like the strike on tasks when they’re marked as done. A simple solution, if you like this idea, could be to include a pre-filled config.py file that replicates the behavior shown in the images. This would make it much more intuitive for users to tweak or remove specific features.
  • The documentation could use more practical examples, like how to achieve specific customizations, what can be edited in the key bindings, and what’s available in the extras. I managed to set up almost everything I wanted, basically trying to replicate what’s in the images, but I had to dig into the source code a lot to figure things out.
  • I was initially confused about how to change the theme, so I ended up creating my own by looking through the source code. While trying to get the "paste" feature to work, I accidentally discovered that Ctrl + P switches the theme. I may have missed it, but I don't think this shortcut is mentioned anywhere.

And here are a few feature suggestions that I think would really improve day-to-day use:

  • Paste from clipboard: I work a lot with repository links that I need to check later. It’d be amazing to just copy from the browser and paste it into a task. This might be a bug. I noticed there is some handling with pyperclip in the source code, but I couldn’t get it to work on any of my machines. It doesn’t throw any errors either. I also noticed that Ctrl + 1 to clear the input doesn’t work for me. I did a quick test by capturing Ctrl + V and using pyperclip to paste, and it worked. I am unable to test Command + V at the moment. In the _input.py class:
if key == "ctrl+v" or key == "command+v":
    self._insert_text(pyperclip.paste())
  • Change hierarchy: Sometimes I accidentally create tasks as a “child” instead of a “sibling” and only notice later. I couldn’t find a way to change the hierarchy, but being able to promote or demote tasks would be really useful.
  • Don’t create empty tasks on ESC: I think pressing ESC without typing anything shouldn’t create an empty task. For workspaces, I see some potential use cases, but I can’t think of a reason to have completely blank tasks.
  • Add notes to tasks: For longer tasks, I often come across new info while working (like someone’s email, a repository link, or documentation). It’d be awesome to add these as notes to a task without cluttering up the description itself. Maybe a little note icon could show up next to the task description if it has a note attached.
  • Auto-expand: It’d be great to have a setting to automatically expand all workspaces and todos.

Congrats on the amazing work! I was using Taskwarrior before, but honestly, I find Dooit way more intuitive and enjoyable to use.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions