1
0
Fork 0

gBoards Common (#8921)

Co-Authored-By: Drashna Jaelre <drashna@live.com>
This commit is contained in:
Jeremy Bernhardt 2020-05-04 10:49:47 -06:00 committed by GitHub
parent 6f30b402a2
commit 15e84f79f1
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
57 changed files with 11774 additions and 0 deletions

View file

@ -0,0 +1,99 @@
{
"the ":"TH",
"of ":"OF",
"and ":"ND",
"to ":"TO",
"in ":"IN",
"for ":"FR",
"is ":"IS",
"on ":"ON",
"that ":"TA",
"by ":"BY",
"this ":"TS",
"with ":"WT",
"you ":"YU",
"it ":"IT",
"not ":"NT",
"or ":"OR",
"be ":"BE",
"are ":"AR",
"from ":"FE",
"at ":"AD",
"as ":"AS",
"your ":"UR",
"all ":"AL",
"have ":"HV",
"new ":"NU",
"more ":"MR",
"an ":"AN",
"was ":"WS",
"we ":"WI",
"will ":"WL",
"home ":"HM",
"can ":"CN",
"us ":"US",
"about ":"AB",
"if ":"IF",
"page ":"PG",
"my ":"MK",
"has ":"HS",
"search ":"SR",
"free ":"FH",
"but ":"BU",
"our ":"OU",
"one ":"WU",
"other ":"OH",
"do ":"DO",
"no ":"NK",
"information ":"IR",
"time ":"TM",
"they ":"TY",
"site ":"SY",
"he ":"HE",
"up ":"UP",
"may ":"MA",
"what ":"WA",
"which ":"WH",
"their ":"TR",
"news ":"NS",
"out ":"OG",
"use ":"UE",
"any ":"NE",
"there ":"TE",
"see ":"SE",
"only ":"LY",
"so ":"SO",
"his ":"HI",
"when ":"WN",
"contact ":"KT",
"here ":"HR",
"business ":"BS",
"who ":"WO",
"web ":"WB",
"also ":"LS",
"now ":"NQ",
"help ":"HL",
"get ":"GT",
"view ":"VU",
"online ":"LN",
"first ":"FS",
"been ":"BN",
"would ":"WD",
"how ":"HU",
"were ":"WR",
"me ":"ME",
"some ":"SM",
"these ":"TZ",
"click ":"CL",
"its ":"IZ",
"like ":"LK",
"service ":"SV",
"than ":"HN",
"find ":"FN",
"price ":"PR",
"date ":"DT",
"back ":"BK",
"top ":"TP",
"people ":"PE",
"had ":"HD"
}

View file

@ -0,0 +1,60 @@
// Package for taking a mapping of words to keys and outputing a
// combo engine commpatible def
package main
import (
"io/ioutil"
"fmt"
"encoding/json"
"os"
"sort"
"strings"
"hash/crc64"
//"encoding/base64"
)
func main() {
// Show Usage
if len(os.Args) < 3 {
fmt.Println("Usage: ./keymap-gen inputfile outfile")
fmt.Println("Outputs dict in current dir")
return
}
// Read the source
data, err := ioutil.ReadFile(os.Args[1])
if err != nil {
panic(err)
}
// Unbundle Data
var FullDict map[string]string
var output []string
json.Unmarshal(data, &FullDict)
// Loop over entries and store
for i,v := range FullDict {
// This checks for colllisions, Generates hash
hash := crc64.Checksum([]byte(v), crc64.MakeTable(crc64.ECMA))
hashStr := fmt.Sprintf("txt_%x", hash)[:10]
// Format keys into combo
var keys string
for _, k := range(v) {
keys += fmt.Sprintf("KC_%v, ", string(k))
}
keys = keys[:len(keys)-2]
// Append to output
spacer := strings.Repeat(" ", 15-len(i))
output = append(output, fmt.Sprintf("SUBS(%v, %v\"%v\", %v)\n", hashStr, spacer, i, keys))
}
sort.Slice(output, func (i,j int) bool {
return strings.Count(output[i], " ") > strings.Count(output[j], " ")
})
ioutil.WriteFile(os.Args[2], []byte(strings.Join(output, "")), 0555)
}