Hello hasu and others!
I've (finnaly) managed to complete my custom keyboard to that point where it's alive and I can begin to design my keymap. However, I have som problems I hope you could help me with.
First, I don't use a normal keymap and would like to have special characters accessable on some keys directly without using shift or other layers. I have found the function(?) modified key which seems to be useful, but don't know how to implement it in the code to get it to work properly. I have tested inserting it in one of the keymaps in keymap_common.h, it compiles but only the last key is fired as the key is pressed.
For example, I want the key next to backspace to fire "!" on activation, but with this syntax it just works as a normal KC_1 key. (look for
ACTION_MODS_KEY(MOD_LSFT, KC_1) )
More
#define KEYMAP( \
K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0E,\
K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E,\
K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2D, K2E,\
K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3C, K3D, K3E,\
K40, K42, K43, K47, K4A, K4B, K4C, K4D, K4E\
) { \
{ KC_##K00, KC_##K01, KC_##K02, KC_##K03, KC_##K04, KC_##K05, KC_##K06, KC_##K07, KC_##K08, KC_##K09, KC_##K0A, KC_##K0B, ACTION_MODS_KEY(MOD_LSFT, KC_1), KC_NO, KC_##K0E }, \
{ KC_##K10, KC_##K11, KC_##K12, KC_##K13, KC_##K14, KC_##K15, KC_##K16, KC_##K17, KC_##K18, KC_##K19, KC_##K1A, KC_##K1B, KC_##K1C, KC_##K1D, KC_##K1E }, \
{ KC_##K20, KC_##K21, KC_##K22, KC_##K23, KC_##K24, KC_##K25, KC_##K26, KC_##K27, KC_##K28, KC_##K29, KC_##K2A, KC_##K2B, KC_NO, KC_##K2D, KC_##K2E }, \
{ KC_##K30, KC_##K31, KC_##K32, KC_##K33, KC_##K34, KC_##K35, KC_##K36, KC_##K37, KC_##K38, KC_##K39, KC_##K3A, KC_NO, KC_##K3C, KC_##K3D, KC_##K3E }, \
{ KC_##K40, KC_NO, KC_##K42, KC_##K43, KC_NO, KC_NO, KC_NO, KC_##K47, KC_NO, KC_NO, KC_##K4A, KC_##K4B, KC_##K4C, KC_##K4D, KC_##K4E} \
}
Next, I would like to have other characters than the usual on that keys when shift is pressed, but have shift working as it should on the letter part of the keymap. It's possible that this is easy done with layers or something like that, that I haven't reseached very much yet. I guess I alway can make shift an FN layer button and use the action_mods_key-thing with shift key on the qwerty part although it seems like bad programming for me.
Here's a picture of the keyboard so you can see what layout I seek for. I'm planning to have a keypad hidden under the qwerty-part on an fn-layer accesable via lower and only have symbols and commands on the fifth row.
More
Hope you can help me or link a page where I can read more about implementing the functions described in .../tmk_core/doc/keymap.md.