Hi!I know custom keyboards are probably a question that often comes up, but after some research I couldn't find answers to some of my questions, so here I am.
Being a student in math / physics, I'd like to build a keyboard that would allow me to type easily for these subjets, including mathematical symbols and greek letters. I know it's something I could do with a software solution, but I find this project amusing.
The first thing is that… I'm French. So I'm used to using an AZERTY keyboard, which has, besides the different layout for letters, a different "numbers row" layout.
How do I do this? I mean, my question is probably stupid, but when I'll have my keyboard finished, what will Windows see it like? Do I just have to reproduce the layout with corrent places for letters, and putting the numbers at the place they would be on a QWERTY keyboard (that would make sense in my opinion since the keyboard only sends signal, I guess Windows recognizes the "Key 2" signal and then converts it depending on the active layout: 2 for QWERTY, é for AZERTY, etc. That was my first question.
Second, and concerning the custom features.
Here is a prototype of the layout I'd need. The alpha on the bottom right is a modifier for the greek letters mode, and the blackboard R for the "math" mode.
Well… how do I do that?
I plan to use QMK since it supports Unicode and (afaik) I have to use unicode if I want to produce all these symbols. Is there a better way to do it than configuring a layer for each "mode" and putting Unicode codes on the corresponding layers?
Last, concering the hardware. How is a keyboard made? I mean, I understand the matrix thingy, the switches, the electronics in a general way, but I don't really get what is put on what. After browsing the /r/mk FAQ - and yours - I didn't find anything related to that.
Would anyone have a scheme or something that could explain what the keyboard is supposed to look like?
Thank you for your answers
EDIT : I was also wondering. When keymapping, to get my AZERTY layout, should I rather do that:
KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, \
TAB, KC_A, KC_Z, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, \
...
Or that:
KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, \
TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, \
...
If I'm not wrong, the first one will work as an AZERTY Layout if the Windows Layout is a QWERTY layout, and the second will work as an AZERTY layout if the Windows layout is QWERTY. Am I right or didn't I understand anything?