mirror of
https://github.com/erjiang/huion-keys.git
synced 2026-03-23 21:54:53 +03:00
Add ability to read config file
This commit is contained in:
parent
f5a6941b01
commit
fada7e6a94
@ -9,10 +9,10 @@ BUTTON_BINDINGS = [
|
|||||||
None,
|
None,
|
||||||
None,
|
None,
|
||||||
|
|
||||||
b'a',
|
None,
|
||||||
b'b',
|
None,
|
||||||
b'c',
|
None,
|
||||||
b'd',
|
None,
|
||||||
|
|
||||||
# right side, top to bottom
|
# right side, top to bottom
|
||||||
None,
|
None,
|
||||||
@ -20,10 +20,10 @@ BUTTON_BINDINGS = [
|
|||||||
None,
|
None,
|
||||||
None,
|
None,
|
||||||
|
|
||||||
b'e',
|
None,
|
||||||
b'f',
|
None,
|
||||||
b'g',
|
None,
|
||||||
b'h',
|
None,
|
||||||
|
|
||||||
# scroll strip, up/down
|
# scroll strip, up/down
|
||||||
# even though the Kamvas 22 (2019) has two scroll strips, they both send
|
# even though the Kamvas 22 (2019) has two scroll strips, they both send
|
||||||
@ -38,6 +38,7 @@ def main():
|
|||||||
if hidraw_path is None:
|
if hidraw_path is None:
|
||||||
print("Could not find tablet hidraw device")
|
print("Could not find tablet hidraw device")
|
||||||
print("Found tablet at " + hidraw_path)
|
print("Found tablet at " + hidraw_path)
|
||||||
|
read_config(os.path.expanduser('~/.config/huion_keys.conf'))
|
||||||
hidraw = open(hidraw_path, 'rb')
|
hidraw = open(hidraw_path, 'rb')
|
||||||
while True:
|
while True:
|
||||||
btn = get_button_press(hidraw)
|
btn = get_button_press(hidraw)
|
||||||
@ -62,6 +63,26 @@ def get_tablet_hidraw(vendor_id, product_id):
|
|||||||
return None
|
return None
|
||||||
|
|
||||||
|
|
||||||
|
def read_config(config_file):
|
||||||
|
with open(config_file, 'r') as config:
|
||||||
|
for line in config.readlines():
|
||||||
|
# strip out any comment
|
||||||
|
if line.find('#') > -1:
|
||||||
|
line = line[:line.find('#')]
|
||||||
|
if line.find('='):
|
||||||
|
setting = line[:line.find('=')].strip()
|
||||||
|
value = line[line.find('=')+1:].strip()
|
||||||
|
if setting.isdigit():
|
||||||
|
# button bindings are 0-indexed so need to subtract one
|
||||||
|
BUTTON_BINDINGS[int(setting)-1] = value.encode('utf-8')
|
||||||
|
elif setting == 'scroll_up':
|
||||||
|
BUTTON_BINDINGS[16] = value.encode('utf-8')
|
||||||
|
elif setting == 'scroll_down':
|
||||||
|
BUTTON_BINDINGS[17] = value.encode('utf-8')
|
||||||
|
else:
|
||||||
|
print("[WARN] unrecognized setting '%s'" % (setting,))
|
||||||
|
|
||||||
|
|
||||||
BUTTON_BITS = {
|
BUTTON_BITS = {
|
||||||
0x01: 0,
|
0x01: 0,
|
||||||
0x02: 1,
|
0x02: 1,
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user