http://www.enjoyclick.org/keyboard-layout-editor/

http://tkg.io/

复合层:

["Esc\n\n\n\nPOWER","!\n1\n\n\nF1","@\n2\n\n\nF2","#\n3\n\n\nF3","$\n4\n\n\nF4","%\n5\n\n\nF5","^\n6\n\n\nF6","&\n7\n\n\nF7","*\n8\n\n\nF8","(\n9\n\n\nF9",")\n0\n\n\nF10","_\n-\n\n\nF11","+\n=\n\n\nF12","|\n\\\n\n\nins","~\n`\n\n\ndel"],
[{w:1.5},"Tab\n\n\n\nCAPS","Q","W","E","R","T","Y","U","I\n\n\n\npsc","O\n\n\n\nScrLk",{a:0},"P\n\n\n\npus\nbrk",{a:4},"{\n[\n\n\n↑","}\n]",{w:1.5},"BS"],
[{w:1.75},"Ctrl","A\n\n\n\nVol_Dn","S\n\n\n\nVol_Up","D\n\n\n\nMute","F\n\n\n\nEject","G","H\n\n\n\n*","J\n\n\n\n/","K\n\n\n\nHome","L\n\n\n\nPgUp",":\n;\n\n\n←","\"\n'\n\n\n→",{w:2.25},"Return"],
[{w:2.25},"Shift","Z","X","C\n\n\n\nfn1","V\n\n\n\nfn2","B\n\n\n\nfn3","N\n\n\n\n+","M\n\n\n\n-","<\n,\n\n\nEnd",">\n.\n\n\nPgDn","?\n/\n\n\n↓",{w:1.75},"RShift","Fn"],
[{x:1.5},"opt",{w:1.5},"Meta",{w:7},"spc",{w:1.5},"rMeta\n\n\n\nStop","Ropt"]

Fn:

"0":["ACTION_LAYER_MOMENTARY",1]

上面的格式很好理解。
唯一特殊的就是,hhkb的空格键是6x的,而gh60的是7x的。

https://github.com/kairyu/tkg-toolkit

OSX: brew install dfu-programmer