#!/bin/python3 import asyncio from i3ipc import Event from i3ipc.aio import Connection async def main(): sway = await Connection().connect() @sway.on(Event.WINDOW_FOCUS) async def on_window_focus(sway, e): focused_window = (await sway.get_tree()).find_focused() focused_workspace = focused_window.workspace() new_name = f'{focused_workspace.num}:' app_name = e.container.app_id if not app_name: app_name = e.container.window_instance if app_name: if 'kitty' in app_name: new_name += '' elif app_name in ['Chromium', 'google-chrome']: if 'YouTube' in e.container.name: new_name += '' else: new_name += '' elif app_name == 'discord': new_name += '' elif app_name == 'spotify': new_name += '' elif app_name in ['GEMOC Studio', 'code-oss']: new_name += '' elif 'okular' in app_name: new_name += '' elif app_name == 'pavucontrol': new_name += '' else: new_name += app_name await sway.command(f'rename workspace to "{new_name}"') await sway.main() asyncio.get_event_loop().run_until_complete(main())