vitaly 0.1.12

VIA/Vial API client and cli tool for guiless keyboard configuration.
Documentation
with open("task.2") as f:
    s = f.read()


o = {}
n = {}

for line in s.split("\n"):
    if len(line) > 0:
        #print(line)
        (on, oi, nn, ni) = line.split(",")
        if len(oi) > 0:
            if on == "QK_MACRO" or on == "QK_KB":
                for p in range(32):
                    t = "0x%0.4X" % (int(oi, 0) + p)
                    o[f"{on}_{p}"] = t
            else:
                oi = "0x%0.4X" % int(oi, 0)
                o[on] = oi

        if len(ni) > 0:
            if nn == "QK_MACRO" or nn == "QK_KB":
                for p in range(32):
                    t = "0x%0.4X" % (int(ni, 0) + p)
                    n[f"{nn}_{p}"] = t
            else:
                ni = "0x%0.4X" % int(ni, 0)
                n[nn] = ni


for (k, v) in o.items():
    nv = n.get(k)
    if nv is None:
        print(f"# delete {k}")
    else:
        print(f"sed -i '' 's/{nv}/{v}/ig' src/keycodes/v5/code_to_name.rs src/keycodes/v5/name_to_code.rs")