You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 

72 lines
1.8 KiB

"""
SnakeSwitch Configuration
=========================
This file should define a dictionary called LAYOUTS.
The keys of this dictionary should be integers corresponding to
NeoTrelllis button numbers, 0-15. Values may be either a
dictionary defining a layout, or a tuple containing keycodes
to fire immediately.
"""
from adafruit_hid.keycode import Keycode
# Define a modifier key here for easy changing if window manager
# configuration changes - this is the Windows key on most keyboards:
MOD_KEY = Keycode.LEFT_GUI
LAYOUTS = {
# A default layout - just the modifier key on the 0th switch:
0: {
0: MOD_KEY,
},
# The second button toggles left and right arrows on the other two
# switches:
1: {
1: Keycode.LEFT_ARROW,
2: Keycode.RIGHT_ARROW,
},
# The third button toggles chorded mod-left, mod-right - workspace
# switching in my XMonad setup:
2: {
1: (MOD_KEY, Keycode.LEFT_ARROW),
2: (MOD_KEY, Keycode.RIGHT_ARROW),
},
3: {
1: Keycode.PAGE_UP,
2: Keycode.PAGE_DOWN,
},
# These add some common chords to the primary mod key if used
# in combination with layout 0:
# Mod-Shift-G - brings up a list of active windows:
4: {
0: (Keycode.SHIFT, Keycode.G)
},
# Add this for mod-tab:
5: {
0: Keycode.TAB
},
# Instead of toggling layouts for the footswitches, pressing and
# releasing buttons 8-15 will instantly fire keyboard events, in
# this case switching between workspaces:
15: (MOD_KEY, Keycode.ONE),
14: (MOD_KEY, Keycode.TWO),
13: (MOD_KEY, Keycode.THREE),
12: (MOD_KEY, Keycode.FOUR),
11: (MOD_KEY, Keycode.FIVE),
10: (MOD_KEY, Keycode.SIX),
9: (MOD_KEY, Keycode.SEVEN),
# Toggle note window:
8: (MOD_KEY, Keycode.SHIFT, Keycode.N)
}