Home / GitHub Page

GSoC Idea - Custom keyboard shortcuts

Thank you so much @PackElend

Hi @PackElend I want to work on this project . I have already known about what to do but May I know some brief description like What shortcut keys do you expected to create, Should I start a prototype for this project. Apart from that I am also intersted to work on the 1. Support for multiple profiles and 6. Password for notes. So Can you give me any suggestions?

@Ak1999 your quite late and you have to do PRs too!

have you read Snippets in Joplin?

You have to write a proposal till Tuesday, you should be able to prioritize by yourself as we don’t know anything about you, you haven’t written an introduction about yourself yet.
If you are capable of doing this than you should know what you have to do next…

Hi, I am Ashis Kumar Sahoo a 2nd-year undergraduate student in Computer Science and Engineering at Silicon Institute of Technology. I am developing web applications using React. Actually I read the snippet.
In the snippet, it has been written that this custom shortcut key project does not belong to Gsoc. So can you tall me in detail, please.

Can you guide me to do any other ideas between multiple profiles support or password for notes?

have you read the GSoC Live Blog ?
Properly not otherwise you would not put your introduction here

Problem:
Currently, there are no shortcut features in Joplin which is basically needed while writing notes. As of now users have to use Markdown syntax for writing the notes and it is a pain for non-technical users. They need a more seamless way to write the notes.

Solution Idea:
Creating a very simple editor component in react as shown in the video. Also below is the list of some shortcut keys :

  1. Paragraph- Ctrl+p
    2.H1- Ctrl+h+1
    3.H2- Ctrl+h+2
    4.H3- Ctrl+h+3
  2. Ordered list- Ctrl+O
  3. Unordered list- Ctrl+shift+U
  4. Tasklist- Ctrl+T
    8.Quote- Ctrl+Q
    9.Bold- Ctrl+B
  5. Italic- Ctrl+I
    11.Underline- Ctrl+U

Here is prototype of the project-


@PackElend Please take a look and suggest me If any modification you want .

ok does look good for the beginning but how user can change them?

Change as in?

I think he means changing the shortcut according the user’s requirement. If the user wants a specific shortcut for some function, how he’ll be able to do it.
For ex: if I want ctrl + a for paragraph instead of ctrl + p

I think, keeping the shortcut keys generic is the best option instead of custom. If you think it from the UX perspective, sometimes it’s important to keep the existing Mental Model that a user already has for certain features. Because it makes more sense for a user to guess the shortcut for the paragraph as Ctrl + P rather than Ctrl + A. And the same follows for all the shortcuts. For making the text bold it should be Ctrl + B, for Quote it should be Ctrl + Q.

Examples:

  1. Paragraph- Ctrl+p
    2.H1- Ctrl+h+1
    3.H2- Ctrl+h+2
    4.H3- Ctrl+h+3
  2. Ordered list- Ctrl+O
  3. Unordered list- Ctrl+shift+U
  4. Tasklist- Ctrl+T
    8.Quote- Ctrl+Q
    9.Bold- Ctrl+B
  5. Italic- Ctrl+I
    11.Underline- Ctrl+U

I think, adding an option for custom shortcuts is an overhead.

That’s totally up to you and admins. But that was just my suggestion. You can keep these as defaults and will allow them to edit, if user wants to. And I don’t think that will be difficult to implement. You can keep these as defaults in a file like a json and if user wants to update them, just change those values in that file later.

that what I meant :slight_smile:
A GUI based dialog would be even better

1 Like

That’s okay but for the MVP I think we should start from the defaults and later on if we get some feature requests for the custom shortcuts we can then think of implementing. In this book “Getting Real” they talk about building less features and having less preferences upfront. This is my sincere suggestion.

peu à peu :+1:

Exactly. Little by little… :slight_smile:

Actually I work as a UX Engineer as a freelancer and I have done User Research quite a few times. Our approach is always like this. We work according to user requirements and we start with User Research. And according to me, I think, I as a user of Joplin will never require custom shortcuts. The defaults are fine for me as a user.

So, Should I proceed with the proposal?

Yes you can but we expect code contribution as well

So, should I create a PR for this particular feature or should I choose a good first issue?

Better fix an existing issue