Does that mean, I can’t swap the arrow keys on the M0118 without swapping them on the AEKII?
PS: I just noticed, the right most column on the M0118 from top to bottom is *, +, -, Enter, but *, -, +, Enter on the AEKII. Apple really liked to change layouts …
PPS: And Enter has to be one row down, next to NUHS (hash sign). This is what I’m using at the moment, works perfect:
#include "keymap_common.h"
const uint8_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
KEYMAP_M0118_ISO(
FN0,
ESC, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, MINS,EQL, BSPC, FN3, DOT, PSLS,PAST,
FN1, Q, W, E, R, T, Y, U, I, O, P, LBRC,FN2, P7, P8, P9, PPLS,
LCAP,A, S, D, F, G, H, J, K, L, SCLN,QUOT,NUHS,ENT, P4, P5, P6, PMNS,
LSFT,NUBS,Z, X, C, V, B, N, M, COMM,DOT, SLSH,RSFT, UP, P1, P2, P3,
LCTL,LALT,RALT, SPC, LEFT,DOWN,RGHT, P0, PDOT,PENT
),
KEYMAP_M0118_ISO(
FN0,
TRNS,F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11, F12, TRNS, FN3, TRNS,TRNS,TRNS,
FN1, TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,FN2, INS, HOME,PGUP,TRNS,
TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS, DEL, END, PGDN,TRNS,
TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS, TRNS,TRNS,TRNS,
TRNS,TRNS,TRNS, TRNS, TRNS,TRNS,TRNS, TRNS,TRNS ,TRNS
),
};
const action_t PROGMEM fn_actions[] = {
ACTION_MODS_KEY(MOD_LCTL | MOD_LALT, KC_DEL),
ACTION_LAYER_TAP_KEY(1, KC_TAB),
ACTION_LAYER_TAP_KEY(1, KC_RBRC),
ACTION_LAYER_TOGGLE(1),
};
Arrows swapped, F-keys and proper nav cluster instead of deactivated numpad.
PPPS: No, there’s one flaw, of course …
This is better:
#include "keymap_common.h"
const uint8_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
KEYMAP_M0118_ISO(
FN0,
ESC, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, MINS,EQL, BSPC, FN1, DOT, PSLS,PAST,
FN2, Q, W, E, R, T, Y, U, I, O, P, LBRC,FN3, P7, P8, P9, PPLS,
LCAP,A, S, D, F, G, H, J, K, L, SCLN,QUOT,NUHS,ENT, P4, P5, P6, PMNS,
LSFT,NUBS,Z, X, C, V, B, N, M, COMM,DOT, SLSH,RSFT, UP, P1, P2, P3,
LCTL,LALT,RALT, SPC, LEFT,DOWN,RGHT, P0, PDOT,PENT
),
KEYMAP_M0118_ISO(
FN0,
TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS, FN1, TRNS,TRNS,TRNS,
FN2, TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,FN3, INS, HOME,PGUP,TRNS,
TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS, DEL, END, PGDN,TRNS,
TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS, TRNS,TRNS,TRNS,
TRNS,TRNS,TRNS, TRNS, TRNS,TRNS,TRNS, TRNS,TRNS ,TRNS
),
KEYMAP_M0118_ISO(
FN0,
TRNS,F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11, F12, TRNS, TRNS,TRNS,TRNS,TRNS,
FN2, TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,FN3, TRNS,TRNS,TRNS,TRNS,
TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS, TRNS,TRNS,TRNS,TRNS,
TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS, TRNS,TRNS,TRNS,
TRNS,TRNS,TRNS, TRNS, TRNS,TRNS,TRNS, TRNS,TRNS ,TRNS
),
};
const action_t PROGMEM fn_actions[] = {
ACTION_MODS_KEY(MOD_LCTL | MOD_LALT, KC_DEL),
ACTION_LAYER_TOGGLE(1),
ACTION_LAYER_TAP_KEY(2, KC_TAB),
ACTION_LAYER_TAP_KEY(2, KC_RBRC),
};