From CSWiki
//array with key codes, for MacBook anyhow
[
[30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 45, 46, 42], //1234... row
[20, 26, 8, 21, 23, 28, 24, 12, 18, 19, 47, 48, 49], //qwer... row
[4, 22, 7, 9, 10, 11, 13, 14, 15, 51, 52], //asdf... row
[29, 27, 6, 25, 5, 17, 16, 54, 55, 56] //zxcv... row
] @=> int row[][];
//step through the rows and columns to see how this works....
for (0 => int i; i<4; i++) {
for (0 => int j; j<row[i].cap(); j++) {
<<< "row: ", i, " column: ", j, " = ", row[i][j] >>>;
}
}