# ╭───────╮ # │ Input │ # ╰───────╯ # https://wiki.hyprland.org/Configuring/Variables/#input input { kb_layout = de kb_variant = kb_model = kb_options = kb_rules = numlock_by_default = true follow_mouse = 1 sensitivity = 0 # -1.0 - 1.0, 0 means no modification. touchpad { natural_scroll = false } } # ──────────────< https://wiki.hyprland.org/Configuring/Variables/#gestures >──────────── gestures { workspace_swipe = true } # ─< Example per-device config >────────────────────────────────────────────────────────── # ─< See https://wiki.hyprland.org/Configuring/Keywords/#per-device-input-configs for more >─ device { name = epic-mouse-v1 sensitivity = 0 } # ─────────────────< See https://wiki.hyprland.org/Configuring/Keywords/ >─────────────── $scripts = ~/.config/hypr/.scripts # ─< set mod key >──────────────────────────────────────────────────────────────────────── $mainMod = ALT # Sets "ALT" key as main modifier # ╭─────────────╮ # │ MY PROGRAMS │ # ╰─────────────╯ # menus $rofi = pkill rofi || rofi -show drun -modi drun,filebrowser,run,window,ssh $tofi = pkill tofi || tofi-drun -c $HOME/.config/tofi/config # ─< Set programs that you use >────────────────────────────────────────────────────────── $terminal = ghostty # kitty --class="shell" -e zsh # wezterm start --always-new-process zsh #bash ghostty kitty --class="shell" -e zsh $browser = zen-browser # brave-browser $fileManager = caja # pcmanfm nautilus cosmic-files caja thunar dolphin $menu = $rofi $lockscreen = swaylock --screenshots --clock --indicator --effect-pixelate 18 --effect-blur 8x8 $logout = wlogout $wallpaper = $scripts/random_swww.sh $notify = swaync-client --open-panel $test = $scripts/a.sh # $screenshotTool = $scripts/screenshot_area $screenshotTool = hyprshot --clipboard-only -m region # ─< exit hyprland >────────────────────────────────────────────────────────────────────── bind = $mainMod, M, exit, # ─< window-actions >───────────────────────────────────────────────────────────────────── bind = $mainMod, Q, killactive, bind = $mainMod SHIFT, F, togglefloating, bind = $mainMod, F, fullscreen, 1 # ─< start predefined applications >───────────────────────────────────────────────────────────────── bind = $mainMod, T, exec, $terminal bind = $mainMod SHIFT, T, exec, kitty bind = $mainMod, C, exec, $browser bind = $mainMod, E, exec, $fileManager bind = SUPER, R, exec, $rofi # backup for both variants bind = SUPER, T, exec, $tofi # backup for both variants bindr = SUPER, SUPER_L, exec, $menu bind = $mainMod SHIFT, W, exec, bash -c $wallpaper # bind = $mainMod SHIFT, M, exec, $notify bind = SUPER SHIFT, S, exec, $screenshotTool bind = $mainMod CTRL, RETURN, exec, $logout bind = $SUPER, L, exec, $lockscreen # ─< start other applications >─────────────────────────────────────────────────────────── bind = $mainMod SHIFT, N, exec, nwg-look bind = $mainMod SHIFT, S, exec, steam bind = $mainMod, O, exec, obsidian bind = $mainMod, N, exec, neovide bind = $mainMod, V, exec, virt-manager # ─< Hotkeys to scripts >───────────────────────────────────────────────────────────────── bind = $mainMod SHIFT, R, exec, $scripts/refresh.sh bind = $mainMod CTRL, G, exec, $scripts/looking-glass.sh # Test keybindings # bind = $mainMod SHIFT, T, exec, $scripts/a.sh # ─< Switch workspaces with mainMod + [0-9] >───────────────────────────────────────────── bind = $mainMod, 1, workspace, 1 bind = $mainMod, 2, workspace, 2 bind = $mainMod, 3, workspace, 3 bind = $mainMod, 4, workspace, 4 bind = $mainMod, 5, workspace, 5 bind = $mainMod, 6, workspace, 6 bind = $mainMod, 7, workspace, 7 bind = $mainMod, 8, workspace, 8 bind = $mainMod, 9, workspace, 9 # ─< Move active window to a workspace with mainMod + SHIFT + [0-9] >───────────────────── bind = $mainMod SHIFT, 1, movetoworkspace, 1 bind = $mainMod SHIFT, 2, movetoworkspace, 2 bind = $mainMod SHIFT, 3, movetoworkspace, 3 bind = $mainMod SHIFT, 4, movetoworkspace, 4 bind = $mainMod SHIFT, 5, movetoworkspace, 5 bind = $mainMod SHIFT, 6, movetoworkspace, 6 bind = $mainMod SHIFT, 7, movetoworkspace, 7 bind = $mainMod SHIFT, 8, movetoworkspace, 8 bind = $mainMod SHIFT, 9, movetoworkspace, 9 # ─< gaming workspace with tearing true >──────────────────────────────────────────────────── bind = $mainMod, G, workspace, 69 bind = $mainMod SHIFT, G, movetoworkspace, 69 # ─< Example special workspace (scratchpad) >───────────────────────────────────────────── bind = $mainMod, X, togglespecialworkspace, magic bind = $mainMod SHIFT, X, movetoworkspace, special:magic # ─< windoof lookingglass workspace >──────────────────────────────────────────────────────── bind = $mainMod, Y, togglespecialworkspace, windoof bind = $mainMod SHIFT, Y, movetoworkspace, special:windoof # ─< Scroll through existing workspaces with mainMod + scroll >─────────────────────────── bind = $mainMod, mouse_down, workspace, e+1 bind = $mainMod, mouse_up, workspace, e-1 # ─< Move/resize windows with mainMod + LMB/RMB and dragging >──────────────────────────── bindm = $mainMod, mouse:272, movewindow bindm = $mainMod, mouse:273, resizewindow # ───────────────────────────────────────< VIM-Keys >─────────────────────────────────────── # ─< Move focus with mainMod + arrow keys >─────────────────────────────────────────────── bind = $mainMod, l, movefocus, r bind = $mainMod, h, movefocus, l bind = $mainMod, k, movefocus, u bind = $mainMod, j, movefocus, d # ─< Resize active window with mainMod + vim-keys >─────────────────────────────────────── binde = $mainMod SHIFT, h, resizeactive,-50 0 binde = $mainMod SHIFT, l, resizeactive,50 0 binde = $mainMod SHIFT, k, resizeactive,0 -50 binde = $mainMod SHIFT, j, resizeactive,0 50 # ─< Move active window with mainMod + vim-keys >───────────────────────────────────────── bind = $mainMod CTRL, l, movewindow, r bind = $mainMod CTRL, h, movewindow, l bind = $mainMod CTRL, k, movewindow, u bind = $mainMod CTRL, j, movewindow, d # Adjust brightness bind=,XF86MonBrightnessUp,exec,brightnessctl set +7% bind=,XF86MonBrightnessDown,exec,brightnessctl set 7%- # ─< Volume control >─────────────────────────────────────────────────────────────────────── bind=,XF86AudioLowerVolume,exec,pamixer -ud 3 && pamixer --get-volume > /tmp/$HYPRLAND_INSTANCE_SIGNATURE.wob bind=,XF86AudioRaiseVolume,exec,pamixer -ui 3 && pamixer --get-volume > /tmp/$HYPRLAND_INSTANCE_SIGNATURE.wob bind=,Button6,exec,pamixer -ud 3 && pamixer --get-volume > /tmp/$HYPRLAND_INSTANCE_SIGNATURE.wob bind=,Button7,exec,pamixer -ui 3 && pamixer --get-volume > /tmp/$HYPRLAND_INSTANCE_SIGNATURE.wob # ─< mute sound >─────────────────────────────────────────────────────────────────────────── bind=,XF86AudioMute,exec,amixer sset Master toggle | sed -En '/\[on\]/ s/.*\[([0-9]+)%\].*/\1/ p; /\[off\]/ s/.*/0/p' | head -1 > /tmp/$HYPRLAND_INSTANCE_SIGNATURE.wob # ─< Playback control >───────────────────────────────────────────────────────────────────── bind=,XF86AudioPlay,exec, playerctl play-pause bind=,XF86AudioNext,exec, playerctl next bind=,XF86AudioPrev,exec, playerctl previous