From 447528532e2344263a8255caceaf4ddcc1636ffd Mon Sep 17 00:00:00 2001 From: aibrash Date: Wed, 28 Oct 2026 09:38:40 +0500 Subject: [PATCH] Kitty theme, rofi selection fix, outputs, mouse speed, hotkeys on RU layout Co-Authored-By: Claude Sonnet 5.5 --- .config/kitty/kitty.conf | 122 +++++++++++++++++++++- .config/rofi/catppuccin.rasi | 2 + .config/sway/config | 126 +++++++++++------------ .config/sway/config.d/05-outputs.conf | 3 + .config/sway/config.d/06-mouse.conf | 4 + .config/sway/config.d/10-appearance.conf | 4 +- .config/sway/config.d/30-workflow.conf | 26 ++--- README.md | 4 +- 8 files changed, 209 insertions(+), 82 deletions(-) create mode 100644 .config/sway/config.d/05-outputs.conf create mode 100644 .config/sway/config.d/06-mouse.conf diff --git a/.config/kitty/kitty.conf b/.config/kitty/kitty.conf index fdb3f21..3456535 100644 --- a/.config/kitty/kitty.conf +++ b/.config/kitty/kitty.conf @@ -1,4 +1,120 @@ -# Translucent terminal so SwayFX blur shows through -background_opacity 0.78 +# ---------- Font ---------- +font_family family="JetBrains Mono" style="Medium" +bold_font family="JetBrains Mono" style="ExtraBold" +italic_font family="JetBrains Mono" style="Medium Italic" +bold_italic_font family="JetBrains Mono" style="ExtraBold Italic" +font_size 13.5 +# Ligatures (-> => != ===) stay on; they only break when the cursor is on them +disable_ligatures cursor +adjust_line_height 106% +# Nerd Font icons are built into kitty and picked up automatically + +# ---------- Window / glass ---------- +background_opacity 0.80 dynamic_background_opacity yes -window_padding_width 10 +background_blur 0 +window_padding_width 12 14 +hide_window_decorations yes +confirm_os_window_close 0 +remember_window_size no +initial_window_width 110c +initial_window_height 32c + +# ---------- Cursor ---------- +cursor_shape beam +cursor_beam_thickness 1.8 +cursor_blink_interval 0.6 ease-in-out +cursor_trail 3 +cursor_trail_decay 0.1 0.35 +cursor_trail_start_threshold 2 + +# ---------- Scrollback ---------- +scrollback_lines 20000 +scrollback_pager_history_size 100 +mouse_hide_wait 2.0 +copy_on_select clipboard +strip_trailing_spaces smart + +# ---------- Tabs ---------- +tab_bar_edge top +tab_bar_style powerline +tab_powerline_style round +tab_bar_min_tabs 2 +tab_title_template "{index}: {title[:24]}" +active_tab_font_style bold +tab_bar_margin_width 8 +tab_bar_margin_height 6 0 + +# ---------- Splits ---------- +enabled_layouts splits:split_axis=horizontal,stack,tall +active_border_color #bb9af7 +inactive_border_color #3b4261 +inactive_text_alpha 0.75 +window_border_width 1pt + +# ---------- URLs ---------- +url_color #7dcfff +url_style curly +detect_urls yes +underline_hyperlinks hover + +# ---------- Bell ---------- +enable_audio_bell no +visual_bell_duration 0.15 ease-out +window_alert_on_bell yes + +# ---------- Colors: Tokyo Night Storm tuned for glass ---------- +foreground #c0caf5 +background #11111b +selection_foreground #11111b +selection_background #bb9af7 +cursor #ff9e64 +cursor_text_color #11111b +url_color #7dcfff + +active_tab_foreground #11111b +active_tab_background #bb9af7 +inactive_tab_foreground #a9b1d6 +inactive_tab_background #1f2335 +tab_bar_background none + +mark1_foreground #11111b +mark1_background #ff9e64 + +color0 #414868 +color8 #565f89 +color1 #f7768e +color9 #ff899d +color2 #9ece6a +color10 #b9f27c +color3 #e0af68 +color11 #ffc777 +color4 #7aa2f7 +color12 #8db0ff +color5 #bb9af7 +color13 #c9a9ff +color6 #7dcfff +color14 #a4daff +color7 #a9b1d6 +color15 #c0caf5 + +# ---------- Shortcuts ---------- +map ctrl+shift+t new_tab_with_cwd +map ctrl+shift+enter launch --location=vsplit --cwd=current +map ctrl+alt+enter launch --location=hsplit --cwd=current +map ctrl+shift+left neighboring_window left +map ctrl+shift+right neighboring_window right +map ctrl+shift+up neighboring_window up +map ctrl+shift+down neighboring_window down +map ctrl+shift+z toggle_layout stack +map ctrl+shift+equal change_font_size current +1.0 +map ctrl+shift+minus change_font_size current -1.0 +map ctrl+shift+0 change_font_size current 0 +map ctrl+shift+alt+left previous_tab +map ctrl+shift+alt+right next_tab +map ctrl+shift+f show_scrollback +map ctrl+shift+o kitten hints --type path --program - +map ctrl+shift+e kitten hints --type url +map ctrl+shift+u kitten unicode_input +map ctrl+shift+backspace set_background_opacity +0.05 +map ctrl+shift+delete set_background_opacity -0.05 diff --git a/.config/rofi/catppuccin.rasi b/.config/rofi/catppuccin.rasi index 4fccbf3..20a8df8 100644 --- a/.config/rofi/catppuccin.rasi +++ b/.config/rofi/catppuccin.rasi @@ -20,4 +20,6 @@ entry { placeholder: "Search..."; placeholder-color: @subtext; } listview { lines: 8; scrollbar: false; spacing: 4px; fixed-height: true; } element { padding: 9px 14px; border-radius: 14px; spacing: 10px; } element selected { background-color: rgba(232,232,232,0.92); text-color: #0c0c0c; } +element-text { text-color: inherit; } +element selected element-text { text-color: #0c0c0c; } element-icon { size: 1.4em; } diff --git a/.config/sway/config b/.config/sway/config index b1a79b1..6d304cf 100644 --- a/.config/sway/config +++ b/.config/sway/config @@ -69,13 +69,13 @@ output * bg /usr/share/backgrounds/default.jxl fill # Basics: # # Start a terminal - bindsym $mod+Return exec $term + bindsym --to-code $mod+Return exec $term # Kill focused window - bindsym $mod+Shift+q kill + bindsym --to-code $mod+Shift+q kill # Start your launcher - bindsym $mod+d exec $menu + bindsym --to-code $mod+d exec $menu # Drag floating windows by holding down $mod and left mouse button. # Resize them with right mouse button + $mod. @@ -85,59 +85,59 @@ output * bg /usr/share/backgrounds/default.jxl fill floating_modifier $mod normal # Reload the configuration file - bindsym $mod+Shift+c reload + bindsym --to-code $mod+Shift+c reload # Exit sway (logs you out of your Wayland session) - bindsym $mod+Shift+e exec swaynag -t warning -m 'You pressed the exit shortcut. Do you really want to exit sway? This will end your Wayland session.' -B 'Yes, exit sway' 'swaymsg exit' + bindsym --to-code $mod+Shift+e exec swaynag -t warning -m 'You pressed the exit shortcut. Do you really want to exit sway? This will end your Wayland session.' -B 'Yes, exit sway' 'swaymsg exit' # # Moving around: # # Move your focus around - bindsym $mod+$left focus left - bindsym $mod+$down focus down - bindsym $mod+$up focus up - bindsym $mod+$right focus right + bindsym --to-code $mod+$left focus left + bindsym --to-code $mod+$down focus down + bindsym --to-code $mod+$up focus up + bindsym --to-code $mod+$right focus right # Or use $mod+[up|down|left|right] - bindsym $mod+Left focus left - bindsym $mod+Down focus down - bindsym $mod+Up focus up - bindsym $mod+Right focus right + bindsym --to-code $mod+Left focus left + bindsym --to-code $mod+Down focus down + bindsym --to-code $mod+Up focus up + bindsym --to-code $mod+Right focus right # Move the focused window with the same, but add Shift - bindsym $mod+Shift+$left move left - bindsym $mod+Shift+$down move down - bindsym $mod+Shift+$up move up - bindsym $mod+Shift+$right move right + bindsym --to-code $mod+Shift+$left move left + bindsym --to-code $mod+Shift+$down move down + bindsym --to-code $mod+Shift+$up move up + bindsym --to-code $mod+Shift+$right move right # Ditto, with arrow keys - bindsym $mod+Shift+Left move left - bindsym $mod+Shift+Down move down - bindsym $mod+Shift+Up move up - bindsym $mod+Shift+Right move right + bindsym --to-code $mod+Shift+Left move left + bindsym --to-code $mod+Shift+Down move down + bindsym --to-code $mod+Shift+Up move up + bindsym --to-code $mod+Shift+Right move right # # Workspaces: # # Switch to workspace - bindsym $mod+1 workspace number 1 - bindsym $mod+2 workspace number 2 - bindsym $mod+3 workspace number 3 - bindsym $mod+4 workspace number 4 - bindsym $mod+5 workspace number 5 - bindsym $mod+6 workspace number 6 - bindsym $mod+7 workspace number 7 - bindsym $mod+8 workspace number 8 - bindsym $mod+9 workspace number 9 - bindsym $mod+0 workspace number 10 + bindsym --to-code $mod+1 workspace number 1 + bindsym --to-code $mod+2 workspace number 2 + bindsym --to-code $mod+3 workspace number 3 + bindsym --to-code $mod+4 workspace number 4 + bindsym --to-code $mod+5 workspace number 5 + bindsym --to-code $mod+6 workspace number 6 + bindsym --to-code $mod+7 workspace number 7 + bindsym --to-code $mod+8 workspace number 8 + bindsym --to-code $mod+9 workspace number 9 + bindsym --to-code $mod+0 workspace number 10 # Move focused container to workspace - bindsym $mod+Shift+1 move container to workspace number 1 - bindsym $mod+Shift+2 move container to workspace number 2 - bindsym $mod+Shift+3 move container to workspace number 3 - bindsym $mod+Shift+4 move container to workspace number 4 - bindsym $mod+Shift+5 move container to workspace number 5 - bindsym $mod+Shift+6 move container to workspace number 6 - bindsym $mod+Shift+7 move container to workspace number 7 - bindsym $mod+Shift+8 move container to workspace number 8 - bindsym $mod+Shift+9 move container to workspace number 9 - bindsym $mod+Shift+0 move container to workspace number 10 + bindsym --to-code $mod+Shift+1 move container to workspace number 1 + bindsym --to-code $mod+Shift+2 move container to workspace number 2 + bindsym --to-code $mod+Shift+3 move container to workspace number 3 + bindsym --to-code $mod+Shift+4 move container to workspace number 4 + bindsym --to-code $mod+Shift+5 move container to workspace number 5 + bindsym --to-code $mod+Shift+6 move container to workspace number 6 + bindsym --to-code $mod+Shift+7 move container to workspace number 7 + bindsym --to-code $mod+Shift+8 move container to workspace number 8 + bindsym --to-code $mod+Shift+9 move container to workspace number 9 + bindsym --to-code $mod+Shift+0 move container to workspace number 10 # Note: workspaces can have any name you want, not just numbers. # We just use 1-10 as the default. # @@ -146,25 +146,25 @@ output * bg /usr/share/backgrounds/default.jxl fill # You can "split" the current object of your focus with # $mod+b or $mod+v, for horizontal and vertical splits # respectively. - bindsym $mod+b splith - bindsym $mod+v splitv + bindsym --to-code $mod+b splith + bindsym --to-code $mod+v splitv # Switch the current container between different layout styles - bindsym $mod+s layout stacking - bindsym $mod+w layout tabbed - bindsym $mod+e layout toggle split + bindsym --to-code $mod+s layout stacking + bindsym --to-code $mod+w layout tabbed + bindsym --to-code $mod+e layout toggle split # Make the current focus fullscreen - bindsym $mod+f fullscreen + bindsym --to-code $mod+f fullscreen # Toggle the current focus between tiling and floating mode - bindsym $mod+Shift+space floating toggle + bindsym --to-code $mod+Shift+space floating toggle # Swap focus between the tiling area and the floating area - bindsym $mod+space focus mode_toggle + bindsym --to-code $mod+space focus mode_toggle # Move focus to the parent container - bindsym $mod+a focus parent + bindsym --to-code $mod+a focus parent # # Scratchpad: # @@ -172,11 +172,11 @@ output * bg /usr/share/backgrounds/default.jxl fill # You can send windows there and get them back later. # Move the currently focused window to the scratchpad - bindsym $mod+Shift+minus move scratchpad + bindsym --to-code $mod+Shift+minus move scratchpad # Show the next scratchpad window or hide the focused scratchpad window. # If there are multiple scratchpad windows, this command cycles through them. - bindsym $mod+minus scratchpad show + bindsym --to-code $mod+minus scratchpad show # # Resizing containers: # @@ -185,22 +185,22 @@ mode "resize" { # right will grow the containers width # up will shrink the containers height # down will grow the containers height - bindsym $left resize shrink width 10px - bindsym $down resize grow height 10px - bindsym $up resize shrink height 10px - bindsym $right resize grow width 10px + bindsym --to-code $left resize shrink width 10px + bindsym --to-code $down resize grow height 10px + bindsym --to-code $up resize shrink height 10px + bindsym --to-code $right resize grow width 10px # Ditto, with arrow keys - bindsym Left resize shrink width 10px - bindsym Down resize grow height 10px - bindsym Up resize shrink height 10px - bindsym Right resize grow width 10px + bindsym --to-code Left resize shrink width 10px + bindsym --to-code Down resize grow height 10px + bindsym --to-code Up resize shrink height 10px + bindsym --to-code Right resize grow width 10px # Return to default mode - bindsym Return mode "default" - bindsym Escape mode "default" + bindsym --to-code Return mode "default" + bindsym --to-code Escape mode "default" } -bindsym $mod+r mode "resize" +bindsym --to-code $mod+r mode "resize" # Include configs from 3 locations: # - /usr/share/sway/config.d diff --git a/.config/sway/config.d/05-outputs.conf b/.config/sway/config.d/05-outputs.conf new file mode 100644 index 0000000..86dac00 --- /dev/null +++ b/.config/sway/config.d/05-outputs.conf @@ -0,0 +1,3 @@ +# Monitor layout: laptop on the left (scaled), external HDMI monitor on the right +output eDP-1 position 0 0 scale 1.25 +output HDMI-A-1 position 1536 0 diff --git a/.config/sway/config.d/06-mouse.conf b/.config/sway/config.d/06-mouse.conf new file mode 100644 index 0000000..9a62903 --- /dev/null +++ b/.config/sway/config.d/06-mouse.conf @@ -0,0 +1,4 @@ +# Mouse sensitivity: -1 (slowest) .. 1 (fastest), 0 is default. Touchpad is set in 10-appearance.conf +input type:pointer { + pointer_accel -0.5 +} diff --git a/.config/sway/config.d/10-appearance.conf b/.config/sway/config.d/10-appearance.conf index b0f571e..a680cdf 100644 --- a/.config/sway/config.d/10-appearance.conf +++ b/.config/sway/config.d/10-appearance.conf @@ -28,7 +28,7 @@ client.background $base # Autostart exec_always sh -c 'pkill -x dunst; exec dunst' exec_always sh -c 'pkill -x nm-applet; exec nm-applet --indicator' -bindsym $mod+Shift+x exec ~/.config/sway/lock.sh +bindsym --to-code $mod+Shift+x exec ~/.config/sway/lock.sh # Touchpad input type:touchpad { @@ -47,7 +47,7 @@ for_window [app_id="rofi"] border none titlebar_padding 6 3 focus_follows_mouse no workspace_auto_back_and_forth yes -bindsym $mod+Shift+p exec ~/.config/rofi/powermenu.sh +bindsym --to-code $mod+Shift+p exec ~/.config/rofi/powermenu.sh # Wallpaper + idle/lock output * bg ~/Pictures/wallpapers/current fill diff --git a/.config/sway/config.d/30-workflow.conf b/.config/sway/config.d/30-workflow.conf index db1116d..dd5b85d 100644 --- a/.config/sway/config.d/30-workflow.conf +++ b/.config/sway/config.d/30-workflow.conf @@ -3,21 +3,21 @@ # Drop-down scratchpad terminal: $mod+grave exec kitty --class scratch for_window [app_id="scratch"] move scratchpad, resize set 1000 560, move position center, border pixel 2 -bindsym $mod+grave scratchpad show +bindsym --to-code $mod+grave scratchpad show # Workspace navigation -bindsym $mod+Tab workspace next_on_output -bindsym $mod+Shift+Tab workspace prev_on_output -bindsym $mod+Ctrl+Right workspace next_on_output -bindsym $mod+Ctrl+Left workspace prev_on_output +bindsym --to-code $mod+Tab workspace next_on_output +bindsym --to-code $mod+Shift+Tab workspace prev_on_output +bindsym --to-code $mod+Ctrl+Right workspace next_on_output +bindsym --to-code $mod+Ctrl+Left workspace prev_on_output # Quick layout / window helpers -bindsym $mod+Shift+f floating toggle, resize set 1000 600, move position center -bindsym $mod+c exec swaymsg [con_id=__focused__] move position center +bindsym --to-code $mod+Shift+f floating toggle, resize set 1000 600, move position center +bindsym --to-code $mod+c exec swaymsg [con_id=__focused__] move position center # Screenshots: area -> clipboard, area -> file -bindsym Shift+Print exec ~/.config/sway/screenshot.sh clip -bindsym $mod+Print exec ~/.config/sway/screenshot.sh file +bindsym --to-code Shift+Print exec ~/.config/sway/screenshot.sh clip +bindsym --to-code $mod+Print exec ~/.config/sway/screenshot.sh file # Keep video/browser-video windows undimmed for_window [app_id="firefox"] inhibit_idle fullscreen @@ -27,8 +27,8 @@ for_window [app_id="mpv"] floating enable, dim_inactive 0 exec_always ~/.config/sway/mirror.sh # Rice helpers -bindsym $mod+Shift+w exec ~/.config/sway/wallpaper.sh -bindsym $mod+Shift+s exec ~/.config/sway/screenshot-menu.sh -bindsym $mod+F1 exec ~/.config/sway/cheatsheet.sh +bindsym --to-code $mod+Shift+w exec ~/.config/sway/wallpaper.sh +bindsym --to-code $mod+Shift+s exec ~/.config/sway/screenshot-menu.sh +bindsym --to-code $mod+F1 exec ~/.config/sway/cheatsheet.sh # Performance mode: toggle blur + shadows -bindsym $mod+Shift+b blur toggle; shadows toggle +bindsym --to-code $mod+Shift+b blur toggle; shadows toggle diff --git a/README.md b/README.md index c6c89ea..03c4b15 100644 --- a/README.md +++ b/README.md @@ -16,6 +16,8 @@ | `.config/swaylock` | локскрин с обоями | | `.config/kitty/kitty.conf` | прозрачность терминала, чтобы был виден blur | | `.config/sway/config.d/40-bar.conf` | запуск waybar (без `sway-config-fedora`) | +| `.config/sway/config.d/05-outputs.conf` | расположение и масштаб мониторов (ноутбук слева, HDMI справа; подгоните под своё железо) | +| `.config/sway/config.d/06-mouse.conf` | чувствительность мыши | | `wallpapers/` | `original.jpg` (основные), `mono-glow`, `mono-orb`, `mono-smoke`, `mono-grid`, `mono-dusk` | ### Что было добавлено @@ -56,7 +58,7 @@ | `Super+C` | центрировать плавающее окно | | `Super+R` | режим изменения размера (`H/J/K/L`, `Esc`) | | `Super+S` / `Super+W` / `Super+E` | layout: stacking / tabbed / split | -| `Alt+Shift` | переключение раскладки (us / ru) | +| `Alt+Shift` | переключение раскладки (us / ru); все хоткеи работают и на русской раскладке (`bindsym --to-code`, первой в `xkb_layout` должна стоять `us`) | ## Установка одной командой (Fedora)