For all my colemak-dh lovers out there. (ANSI variant). With caps lock replaced with backspace.
#!/bin/bash
# Framework en-us qwerty >>> colemak-dh (caps lock changed to backspace)
ectool raw 0x3E0C d1,d1,b3,b2,w0d # Tab > Tab
ectool raw 0x3E0C d1,d1,b0,b2,w15 # q > q
ectool raw 0x3E0C d1,d1,b6,b5,w1d # w > w
ectool raw 0x3E0C d1,d1,b2,b4,w2b # e > f
ectool raw 0x3E0C d1,d1,b6,b6,w4d # r > p
ectool raw 0x3E0C d1,d1,b3,b6,w32 # t > b
ectool raw 0x3E0C d1,d1,b3,b7,w3b # y > j
ectool raw 0x3E0C d1,d1,b6,b7,w4b # u > l
ectool raw 0x3E0C d1,d1,b6,ba,w3c # i > u
ectool raw 0x3E0C d1,d1,b3,b8,w35 # o > y
ectool raw 0x3E0C d1,d1,b5,bd,w4c # p > ;
ectool raw 0x3E0C d1,d1,b6,bd,w54 # [ > [
ectool raw 0x3E0C d1,d1,b6,be,w5b # ] > ]
ectool raw 0x3E0C d1,d1,b2,b8,w5d # \ > \
ectool raw 0x3E0C d1,d1,b4,b4,w66 # Caps > Bkspc
ectool raw 0x3E0C d1,d1,b7,b2,w1c # a > a
ectool raw 0x3E0C d1,d1,b4,b5,w2d # s > r
ectool raw 0x3E0C d1,d1,b7,be,w1b # d > s
ectool raw 0x3E0C d1,d1,b7,b6,w2c # f > t
ectool raw 0x3E0C d1,d1,b2,b6,w34 # g > g
ectool raw 0x3E0C d1,d1,b2,b7,w3a # h > m
ectool raw 0x3E0C d1,d1,b7,b7,w31 # j > n
ectool raw 0x3E0C d1,d1,b7,ba,w24 # k > e
ectool raw 0x3E0C d1,d1,b7,b8,w43 # l > i
ectool raw 0x3E0C d1,d1,b7,bd,w44 # ; > o
ectool raw 0x3E0C d1,d1,b0,be,w52 # ' > '
ectool raw 0x3E0C d1,d1,b1,b5,w22 # z > x
ectool raw 0x3E0C d1,d1,b0,b5,w21 # x > c
ectool raw 0x3E0C d1,d1,b0,b0,w23 # c > d
ectool raw 0x3E0C d1,d1,b0,b6,w2a # v > v
ectool raw 0x3E0C d1,d1,b1,b6,w1a # b > z
ectool raw 0x3E0C d1,d1,b1,b7,w42 # n > k
ectool raw 0x3E0C d1,d1,b0,b7,w33 # m > h
ectool raw 0x3E0C d1,d1,b0,ba,w41 # , > ,
ectool raw 0x3E0C d1,d1,b0,b8,w49 # . > .
ectool raw 0x3E0C d1,d1,b0,bd,w4a # / > /