35 lines
843 B
Python
35 lines
843 B
Python
from talon import Context, Module, actions, settings, ui
|
|
|
|
mod = Module()
|
|
|
|
mod.tag("i3wm", desc="tag for loading i3wm related files")
|
|
mod.setting(
|
|
"i3_config_path",
|
|
type=str,
|
|
default="~/.i3/config",
|
|
desc="Where to find the configuration path",
|
|
)
|
|
mod.setting(
|
|
"i3_mod_key",
|
|
type=str,
|
|
default="super",
|
|
desc="The default key to use for i3wm commands",
|
|
)
|
|
|
|
|
|
@mod.action_class
|
|
class Actions:
|
|
def i3wm_launch():
|
|
"""Trigger the i3 launcher: ex rofi"""
|
|
key = settings.get("user.i3_mod_key")
|
|
actions.key(f"{key}-d")
|
|
|
|
def i3wm_shell():
|
|
"""Launch a shell"""
|
|
key = settings.get("user.i3_mod_key")
|
|
actions.key(f"{key}-enter")
|
|
|
|
def i3wm_lock():
|
|
"""Trigger the lock screen"""
|
|
key = settings.get("user.i3_mod_key")
|
|
actions.key(f"{key}-shift-x")
|