So, i just started using I3 through Arcolinux, it’s working pretty nicely all things considered but i’m having one little problem, a game i play uses keys that are very close to a keybind combination that is set here and that makes me accidentally trigger it sometimes, and i wanted to know how, if possible i can make so this keybind is disabled while I’m playing this game, searching for a solution i found this thread on reddit (yeah, lack of better places, but hey I’m asking here now so it’s an opportunity to get some info on here!) That seems to be talking about pretty much what i need, buut i have no idea how to create these scripts and all that and i didn’t had much success on searching on how to do this kind of thing before so… a little help please? Is there any more efficient method, or something like that?

  • SpicySquid@lemmy.ml
    link
    fedilink
    arrow-up
    7
    ·
    11 months ago

    I use a gaming-mode for that. Like this:

    # Create a gaming mode
    mode "gaming" {
        # switch to workspace
        bindsym $mod+1 workspace number $ws1 ; mode "default"
        bindsym $mod+2 workspace number $ws2 ; mode "default"
        bindsym $mod+3 workspace number $ws3 ; mode "default"
        bindsym $mod+4 workspace number $ws4 ; mode "default"
        bindsym $mod+5 workspace number $ws5 ; mode "default"
        bindsym $mod+6 workspace number $ws6 ; mode "default"
        bindsym $mod+7 workspace number $ws7 ; mode "default"
        bindsym $mod+8 workspace number $ws8 ; mode "default"
        bindsym $mod+9 workspace number $ws9 ; mode "default"
    
        # move focused container to workspace
        bindsym $mod+Shift+1 move container to workspace number $ws1
        bindsym $mod+Shift+2 move container to workspace number $ws2
        bindsym $mod+Shift+3 move container to workspace number $ws3
        bindsym $mod+Shift+4 move container to workspace number $ws4
        bindsym $mod+Shift+5 move container to workspace number $ws5
        bindsym $mod+Shift+6 move container to workspace number $ws6
        bindsym $mod+Shift+7 move container to workspace number $ws7
        bindsym $mod+Shift+8 move container to workspace number $ws8
        bindsym $mod+Shift+9 move container to workspace number $ws9
        bindsym $mod+Shift+0 move container to workspace number $ws10
    }
    
    # Enter the gaming mode when a game is started
    for_window [class="^steam_app_"] move to workspace $ws10; workspace $ws10; mode "gaming"
    for_window [class="^hl2_linux"] move to workspace $ws10; workspace $ws10; mode "gaming"
    

    This automatically moves (most) games to workspaces 10 and switches to that workspace. This allows me to use key combinations that would otherwise be used by i3.

    • Quills@sh.itjust.worksOP
      link
      fedilink
      English
      arrow-up
      2
      ·
      11 months ago

      It took me a while of looking at it and a youtube video but i think i got what this does, it’s really pretty much what i need! Thank you very much for sharing it, didn’t really knew about this groups thing

      • SpicySquid@lemmy.ml
        link
        fedilink
        arrow-up
        2
        ·
        11 months ago

        I have been in the same spot. Good to read that I’ve been able to help out. Have fun with this in combination with your gaming!

  • wuphysics87@lemmy.ml
    link
    fedilink
    arrow-up
    3
    arrow-down
    2
    ·
    11 months ago

    I use hyprland, but what I do may help (and open the door to all other stupid shit and ways to rice rather than work) Rather than having keybinds to focua a direction, I have it run a script that dumps info about the window or workspace it might move into. It then decides what to do based on the window. In your case, you can have it bind/unbind they key of interest.

    And remember kids. Asking questions to proprietary generative AI enshitifies everything for everyone.

    • Quills@sh.itjust.worksOP
      link
      fedilink
      English
      arrow-up
      1
      ·
      11 months ago

      Seems nice, but i don’t know if i got it… How would i do that? i don’t have much of experience with all this script stuff…

  • DirigibleProtein
    link
    fedilink
    arrow-up
    1
    ·
    11 months ago

    Use a mode. Not at my computer right now, but off the top of my head, something like this example from the manual:

    # Press $mod+o followed by either f, t, Escape or Return to launch firefox,
    # thunderbird or return to the default mode, respectively.
    set $mode_launcher Launch: [f]irefox [t]hunderbird
    bindsym $mod+o mode "$mode_launcher"
    
    mode "$mode_launcher" {
        bindsym f exec firefox
        bindsym t exec thunderbird
    
        bindsym Escape mode "default"
        bindsym Return mode "default"
    }
    

    Change ’$mod+o’ to your own combination. Inside the Mode Definition, before the exec, change your key bindings, and change them back afterwards, before you exit with mode default.

  • dm_me_your_boobs@lemm.ee
    link
    fedilink
    arrow-up
    1
    arrow-down
    2
    ·
    11 months ago

    I asked bing because I miss using I3, and here’s the short version of what it gave me.

    bindsym --release --no-repeat $mod+Shift+q [class="Firefox"] nop

    Might have to fiddle with it, but then dropped the command into a new chat and had it explain what it does, and it figured out that it should use nop when Firefox is focused.

    So, hope it helps some. Now I’ll go think about getting back to i3 somehow.