Add script to auto generate window rules for gameslist, add settings for better steam experience

This commit is contained in:
Pablu23
2024-08-03 20:04:17 +02:00
parent 6eb33e2e6a
commit 33f2d0b65b
4 changed files with 35 additions and 12 deletions

View File

@@ -76,6 +76,7 @@ master {
misc { misc {
force_default_wallpaper = -1 # Set to 0 or 1 to disable the anime mascot wallpapers force_default_wallpaper = -1 # Set to 0 or 1 to disable the anime mascot wallpapers
disable_hyprland_logo = false # If true disables the random hyprland logo / anime girl background. :( disable_hyprland_logo = false # If true disables the random hyprland logo / anime girl background. :(
focus_on_activate = false
} }

View File

@@ -16,16 +16,5 @@ workspace=10,monitor:DP-2,persistent:true
windowrulev2 = stayfocused, class:(swappy) windowrulev2 = stayfocused, class:(swappy)
windowrulev2 = forceinput, class:(discord) windowrulev2 = forceinput, class:(discord)
windowrulev2 = monitor DP-2, class:(discord) windowrulev2 = monitor DP-2, class:(discord)
windowrulev2 = noinitialfocus, initialclass:(steam)
windowrulev2 = monitor DP-2, initialclass:(steam) windowrulev2 = monitor DP-2, initialclass:(steam)
# Game rules
windowrulev2 = monitor DP-3, class:^steam_app_.*$
windowrulev2 = fullscreen, class:^steam_app_.*$
windowrulev2 = monitor DP-3, class:^ffxiv*$
windowrulev2 = fullscreen, class:^ffxiv*$
windowrulev2 = stayfocused, class:^ffxiv*$
windowrulev2 = forceinput, class:^ffxiv*$
windowrulev2 = fullscreen, class:^Stardew Valley*$
windowrulev2 = monitor DP-3, class:^Stardew Valley*$

32
.config/hypr/games.py Normal file
View File

@@ -0,0 +1,32 @@
games = [
"Stardew Valley",
"steam_app_.*",
("ffxiv*", "sf"),
"Hollow Knight",
]
def main():
f = open("config/games.conf", "w")
conf: str = "# Auto generated window rules for Games\n\n"
for game in games:
if type(game) is tuple:
name = game[0]
for setting in game[1::]:
match setting:
case "sf":
conf += f"windowrulev2 = stayfocused, class:({name}), title:({name})\n"
else:
name = game
conf += f"""windowrulev2 = fullscreen, class:({name}), title:({name})
windowrulev2 = monitor DP-3, class:({name}), title:({name})
windowrulev2 = forceinput, class:({name}), title:({name})
"""
f.write(conf)
f.close()
if __name__ == "__main__":
main()

View File

@@ -4,3 +4,4 @@ source = config/binds.conf
# Dont source because it is sourced in binds.conf to set Program specific keybinds # Dont source because it is sourced in binds.conf to set Program specific keybinds
# source = config/programs.conf # source = config/programs.conf
source = config/rules.conf source = config/rules.conf
source = config/games.conf