From 5a3594366f2bd8a4aed34f6d085d9c516b9dbc32 Mon Sep 17 00:00:00 2001 From: Joel Challis Date: Sun, 1 Jan 2023 00:46:17 +0000 Subject: Initial DD keycode regen workflow (#19400) --- util/lang_conv.py | 65 ------------------------------------------------------- util/lang_gen.sh | 8 ------- util/regen.sh | 9 ++++++++ 3 files changed, 9 insertions(+), 73 deletions(-) delete mode 100644 util/lang_conv.py delete mode 100755 util/lang_gen.sh create mode 100755 util/regen.sh (limited to 'util') diff --git a/util/lang_conv.py b/util/lang_conv.py deleted file mode 100644 index a0da6c392d..0000000000 --- a/util/lang_conv.py +++ /dev/null @@ -1,65 +0,0 @@ -from pathlib import Path - -langs = set() -files = Path('quantum/keymap_extras/').glob('keymap_*.h') -for file in files: - langs.add(file.stem.replace('keymap_', '')) - -for lang in langs: - try: - file = Path(f'quantum/keymap_extras/keymap_{lang}.h') - print(f'Reading:{file}') - collect = None - out = [] - out += ['{'] - out += [' "aliases": {'] - lines = file.read_text(encoding='utf-8').split('\n') - for line in lines: - - if line.startswith("// Row"): - # print(line) - continue - elif line.startswith("/*******************************************************************************"): - raise Exception(f'Skipping:{file}') - elif '/*' in line: - collect = [line] - elif '*/' in line: - collect += [line] - if 'copyright' in collect[0].lower(): - collect = None - continue - out += collect - collect = None - elif collect: - collect += [line] - - elif '#define' in line: - define = line.split() - while len(define) < 5: - define.append("") - - if define[4] == "(backslash)": - define[4] = '\\\\' - - define[4] = " ".join(define[4:]).strip() - define[4] = define[4].replace('"', '\\"') - - if define[4]: - out += [f' "{define[2]}": {{'] - out += [f' "key": "{define[1]}",'] - out += [f' "label": "{define[4]}",'] - out += [f' }}'] - else: - out += [f' "{define[2]}": {{'] - out += [f' "key": "{define[1]}"'] - out += [f' }}'] - - out += [' }'] - out += ['}'] - - dump = Path(f'data/constants/keycodes/extras/keycodes_{lang}_0.0.1.hjson') - print(f'Writing:{dump}') - dump.write_text("\n".join(out), encoding='utf-8') - - except Exception as e: - print(e) diff --git a/util/lang_gen.sh b/util/lang_gen.sh deleted file mode 100755 index 0b062b1a09..0000000000 --- a/util/lang_gen.sh +++ /dev/null @@ -1,8 +0,0 @@ -#!/bin/bash - -for lang in $(find data/constants/keycodes/extras/ -type f -printf "%f\n" | sed "s/keycodes_//g" | sed "s/_[0-9].*//"); do - data=$(qmk generate-keycode-extras --version latest --lang $lang) - if [ "$?" == "0" ]; then - echo "$data" > quantum/keymap_extras/keymap_$lang.h - fi -done diff --git a/util/regen.sh b/util/regen.sh new file mode 100755 index 0000000000..e4c52ec9a1 --- /dev/null +++ b/util/regen.sh @@ -0,0 +1,9 @@ +#!/bin/bash +set -e + +qmk generate-rgb-breathe-table -o quantum/rgblight/rgblight_breathe_table.h +qmk generate-keycodes --version latest -o quantum/keycodes.h + +for lang in $(find data/constants/keycodes/extras/ -type f -printf "%f\n" | sed "s/keycodes_\(.*\)_[0-9].*/\1/"); do + qmk generate-keycode-extras --version latest --lang $lang -o quantum/keymap_extras/keymap_$lang.h +done -- cgit v1.2.3