From e4b0980d15620df447406a4ad4e517efc796907b Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Fri, 2 Aug 2019 07:18:42 +0530 Subject: [PATCH] DRYer --- kitty/keys.py | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/kitty/keys.py b/kitty/keys.py index e11a10161..2b95e586b 100644 --- a/kitty/keys.py +++ b/kitty/keys.py @@ -289,12 +289,7 @@ def shortcut_matches(s, mods, key, scancode): return s[0] & 0b1111 == mods & 0b1111 and s[2] == q -def generate_key_table(): - # To run this, use: python3 . +runpy "from kitty.keys import *; generate_key_table()" - import os - from functools import partial - f = open(os.path.join(os.path.dirname(os.path.abspath(__file__)), 'keys.h'), 'w') - w = partial(print, file=f) +def generate_key_table_impl(w): w('// auto-generated from keys.py, do not edit!') w('#pragma once') w('#include ') @@ -389,3 +384,12 @@ def generate_key_table(): ind('return NULL;') i -= 1 w('}') + + +def generate_key_table(): + # To run this, use: python3 . +runpy "from kitty.keys import *; generate_key_table()" + import os + from functools import partial + with open(os.path.join(os.path.dirname(os.path.abspath(__file__)), 'keys.h'), 'w') as f: + w = partial(print, file=f) + generate_key_table_impl(w)