Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

"t d" shortcut for scheduling for today can easily be mistyped as task completion #52

Closed
mgsloan opened this issue Dec 2, 2018 · 9 comments

Comments

@mgsloan
Copy link
Owner

mgsloan commented Dec 2, 2018

Seems a bit dangerous to me that t d uses the key d, because d is used to complete tasks. This is particularly bad if multiple tasks are selected, since completing them can't be properly undone due to this Todoist issue - #23

Issue is that both of these key sequences are already in my muscle memory, and probably in the muscle memory of users. Perhaps there should be a deprecation period where there are two valid bindings, but t d causes a notification to pop up that it is deprecated?

What should the new binding be?

@mrderiuzz
Copy link

happened to me a couple of times so that's definitely a good idea to alter the shortcut. So I was thinking maybe t+t for today and t+m or t+o for tomorrow? I personally think t+t for today is more intuitive but I don't really know.

@zsection
Copy link

zsection commented Jan 22, 2019

I can't actually get t+d to work for 'today', t+t is currently for 'tomorrow'. What's the current shortcut for today? (I like t+t for today instead of tomorrow fwiw.)

Thanks for your work on this btw! been a game changer for me.

Update: I must have not been pressing fast enough or something but t+d is working for me now. You're right though, dangerously close to just 'd' for complete.

@pratul
Copy link

pratul commented Jan 30, 2019

@mgsloan your depreciation idea seems like a perfectly reasonable way of implementing this.

@mgsloan
Copy link
Owner Author

mgsloan commented Jan 30, 2019

@pratul Agreed! It's on my agenda :)

@frankydee
Copy link

@mgsloan, I support removing t d for the reasons you stated. 👍

However, if I may share my opinion, I'm not sure assigning t t for "today" would be a good idea since it's currently assigned to ""tomorrow". It would cause unwanted results for existing users unaware of the change... before they figure out the amended binding (and as you say, even for those who are aware... it's in our muscle memory and we'll just be using it for the wrong purpose by force of habit)

Maybe deprecating both t t and t d would be the tidiest solution from a "change management perspective"? I would suggest the following new bindings:

  • t n to move to today (n as in now, make sure this is mentioned in the documentation)
  • t m to move to tomorrow

...and as you suggested, have a notification popup for both t t and t d to help our muscle memory rehabilitate 😉

@mgsloan
Copy link
Owner Author

mgsloan commented Jan 31, 2019

@frankydee Agreed, I also have way too much muscle memory for t t. The main justification for that binding is that it's my most commonly used rescheduling and it's still mnemonic ("time" + "tomorrow"). So I would prefer to keep it.

t n was actually the old binding, but it got changed in this PR - #6 . I didn't think very hard about the overlap with d for done. I believe the motivation there was that it was still mnemonic ("ToDay"), and meant that rescheduling actions can be done entirely by the left hand on a qwerty board. Since task focus is determined by mouse hovering, this allows a workflow where you use the mouse to indicate which task to reschedule, and use your left hand for the rescheduling.

Perhaps t c, where the mnemonic is "time" + "current day". c could still get fumbled to type a d, but ehh not too concerned about key adjacencies. The user error that's an issue with t d is if you accidentally omit the t and only type d. In the case of t c, only typing c would just cause the comment dialog to pop up, which is no big deal.

@frankydee
Copy link

frankydee commented Feb 1, 2019

@mgsloan, hmm... valid points. I do use t t a lot as well, so it would be handy to keep "tomorrow" bound to that for convenience.

And regarding t m and t n, I never considered the "single hand on keyboard" workflow, but I suppose it is quite vital for some users. I prefer to keep both hands on the keyboard as much as possible though, that's why I'm so thankful for this add-on, because apart from rare exceptions, it allows me to do just that. 😃

I think t c makes sense for "Current day" since it is mnemonic and allows for single hand operation... but personally, I will keep my local version mapped to t n because I find the finger-gymnastics of quickly typing t c with a left index less efficient than having one index on t and one on n. My typical workflow is going through a list of items and scheduling them for today or tomorrow. Using j ,k' to navigate up and down and t t&t n` for scheduling is really smooth.

One last thought regarding the "one hand on the keyboard, one hand on the mouse" workflow... I tend to think that most users of this add-on are vim-loving-keyboard-focused-techies who'd rather leave the mouse alone as much as possible... but maybe I'm generalising? ;)

@mgsloan
Copy link
Owner Author

mgsloan commented Feb 1, 2019

@frankydee You're probably right, I'll bet that few people are aware of the mouse + left hand workflow. Perhaps it should be documented! I don't use it myself, but I think it's pretty clever.

Certainly feel free to remap it. I've considered making bindings customizable via UI, but it'd be a fair bit of work.

@mgsloan
Copy link
Owner Author

mgsloan commented Feb 3, 2019

I've implemented a deprecation message for d and changed it over to c. It's released in version 42.

Thanks for discussion, y'all

@mgsloan mgsloan closed this as completed Feb 3, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

5 participants