More hotkeys in the UI

I would love to get more UI Hotkeys. These are the ones I came up with:

Taskview:

  • x to open the delete dialog for this task
  • s to open a dialog for a new task that has the current task as parent task (basically creating a subtask)

General:

  • ? to show the hotkeys modal (clicking ? again closes it)
  • Strg+ to open a dialog to quickly create a new task in default list (I’m not sure which hotkey would be the best…)

Improved List Navigation:
- Currently gn goes to the list view. We could advance this by allowing for a number prefix of this to then go to this specific list.
- So 1gn goes to the first list in your namespace
- 25gn goes to the 25. List
- The same is applicable for Favorites and even for the tasks in a list (3gf goes to the 3. favorite, 5gt goes to the 5. task, …)
- But maybe start with the Lists :wink:

This sounds like a nice idea. These hotkeys are relatively simple to add (for example here is the setup for the “t” shortcut to mark a task done), do you want do send a PR?

I can try.
It won’t be this week, but I’ll try to build Vikunja and then try to implement this :slight_smile:

Thanks for the suggestions!

1 Like

+1 on this request:

  1. ? to see the shortcuts dialog
  2. F4 to highlight the “add task” input field when you are in a list view
  3. Ctrl+n to open the “add task” dialog. You could automatically add the +list_name if you are in a list view

Also,
When you are in the command dialog, I would like to be able to search by list name, to switch to that view. And having the top 5 recent searches on top would be super helpful too!

You can already use Ctrl+K to open quick actions which allow you to create a task with quick add magic.

This should happen automatically when opening the list view.

I assume you are referring to the Ctrl+n?

While it’s great to be able to get to it from the command menu, I just think it would be even better if it has a direct shortcut, given the fact that it’s probably the most common command/action in the application.

On F4, you are correct, the hotkey is in case it lost focus. I just picked F4 as it is the hotkey in most browser to focus on the search/address-bar.

1 Like

Okay, so it should open the quick action modal with the “New Task” action preselected?

I think we should try to avoid adding shortcuts that use keys already used by browsers.

For sure, CTRL+n is a bad choice here.

The following list shows the Hotkeys Todoist provides, which is a very good start:

Two things that bothered me the last weeks while using Vikunja extensively:

  • Please allow getting out of any input field with pressing Esc
  • Please allow the user to add a new task from anywhere. Todoist uses Q, when you are not in a list (it then stores the task in the default inbox) or A when in a List

Where should it go?

Did you try the command palette?

Where should it go?

What do you mean by this? What I would like to see is pressing Esc while in a Input field (edit Task, new task for this List, Add label to task, etc.) and it looses focus. Currently when adding a label to a task I have to do:

  • press l
  • enter label name
  • press <CR> to save it

Now I’m still in the label field. I would like to get out of it by pressing Esc, but it doesn’t work :frowning: So I have to use the mouse. I hate using the mouse :smiley:

Did you try the command palette?

The one opened with Ctrl-K? Yes, I tried it. And while it is possible to add a new task here with:

  • press Ctrl-K
  • type “Neue Aufgabe” (german for “new task”)
  • press CR
  • enter new task name
  • press CR

The easier way would be:

  • press Q
  • enter new task
  • press CR

Ah thanks for clarifying. I thought you were talking about the form modals (for example the one to manually create a label from the label overview).

Labels are saved every time you add or remove one. No need to move the focus to somewhere else.

What key is <CR>?

Okay, I agree with that. I think we even have an item in the backlog for that. Do you want to send a PR?

The reason I want to lose focus from the input is that I then can use the other hotkeys again. So suppose for a task I want to add a label and move the task to my Backlog list:

  • l
  • type name of label, press <CR> (Return key, the big one on the right of your right pinkie :D)
  • Manually click outside of the field (this is what I would love to have <Esc> do
  • m
  • type name of list, press <CR>

So for powerusers, the ability to lose focus is quite important.

Oh, I will :smiley: Don’t know when, tho.

The whole thread should serve as a collection of wanted hotkeys features. So I see what others think about it.

Yeah okay that makes sense. Again, PR much appreciated :slight_smile:

Huge +1 from me.

Recently created a new list and populated over 150 tasks - having to move away from the keyboard to click new every time was a huge PITA.

In which view did you create these tasks? You should be able to just press enter while in the input filed to create a new task.

I was in kanban mode because I wanted all of them to be in a specific kanban bucket.
Each time I pressed enter to create the task, I had to click back into the text box to start typing the name of the next task

What would be your preferred solution here? Having a hotkey for each bucket to add a new task to it? Or not closing the input after adding a task to the bucket?

A workaround I’ve used in the past was to move the bucket where I wanted to add a bunch of tasks to the left, making it the default bucket, and then adding the tasks in the list view. Because the bucket is the default bucket, all new tasks from the list view are created in there.

Interesting workaround! Ill certainly keep that in mind for next time.

I guess not releasing the cursor would be optimal in terms of speed as its just input, enter, input, enter etc - then when you want to add more to the task, you click it which would release cursor anyway - obviously we wouldnt know until its tried, but I dont see why that wouldnt work.

Failing that, some sort of shortcut (eg cmd/ctrl+n or an F key) would still be better than constantly reaching back to the mouse