hyprwm / Hyprland

Hyprland is an independent, highly customizable, dynamic tiling Wayland compositor that doesn't sacrifice on its looks.
https://hyprland.org
BSD 3-Clause "New" or "Revised" License
21.83k stars 908 forks source link

`bind = $mainMod, n, workspace, emptynm` open workspace in other monitor #8416

Open ssqzr opened 2 weeks ago

ssqzr commented 2 weeks ago

Already reported ? *

Regression?

No

System Info and Version

System/Version info ```sh ❯ hyprctl systeminfo -c Hyprland, built from branch at commit 4520b30d498daca8079365bdb909a8dea38e8d55 (version: bump to 0.44.1). Date: Wed Oct 9 12:54:39 2024 Tag: v0.44.1, commits: 5309 built against aquamarine 0.4.3 flags: (if any) System Information: System name: Linux Node name: lzw Release: 6.11.6-arch1-1 Version: #1 SMP PREEMPT_DYNAMIC Fri, 01 Nov 2024 03:30:41 +0000 GPU information: 00:02.0 VGA compatible controller [0300]: Intel Corporation Xeon E3-1200 v3/4th Gen Core Processor Integrated Graphics Controller [8086:0412] (rev 06) (prog-if 00 [VGA controller]) 02:00.0 VGA compatible controller [0300]: Advanced Micro Devices, Inc. [AMD/ATI] Polaris 20 XL [Radeon RX 580 2048SP] [1002:6fdf] (rev ef) (prog-if 00 [VGA controller]) os-release: NAME="Arch Linux" PRETTY_NAME="Arch Linux" ID=arch BUILD_ID=rolling ANSI_COLOR="38;2;23;147;209" HOME_URL="https://archlinux.org/" DOCUMENTATION_URL="https://wiki.archlinux.org/" SUPPORT_URL="https://bbs.archlinux.org/" BUG_REPORT_URL="https://gitlab.archlinux.org/groups/archlinux/-/issues" PRIVACY_POLICY_URL="https://terms.archlinux.org/docs/privacy-policy/" LOGO=archlinux-logo plugins: hyprfocus by Vortex ver 2.0 ======Config-Start====== Config File: /home/lzw/.config/hypr/hyprland.conf: Read Succeeded source = conf.d/* # 设置插件 exec-once = sleep 3 && hyprpm reload -n Config File: /home/lzw/.config/hypr/conf.d/010-variables.conf: Read Succeeded # 全局变量的定义,所有的配置都可以使用的配置 # 单个模块的变量可以定义到模块内部 $mainMod = SUPER # 用于最小化的特殊工作空间 $minimizedWorkspace = minimized # 引入颜色主题 source = ~/.cache/colors/hyprland.conf Config File: /home/lzw/.cache/colors/hyprland.conf: Read Succeeded $background = rgb(111210) $foreground = rgb(F8FCE6) $color0 = rgb(393A38) $color1 = rgb(0D1405) $color2 = rgb(734C4A) $color3 = rgb(66754D) $color4 = rgb(7389AB) $color5 = rgb(D8A08A) $color6 = rgb(EBF5B7) $color7 = rgb(EDF2D3) $color8 = rgb(A6A993) $color9 = rgb(0D1405) $color10 = rgb(734C4A) $color11 = rgb(66754D) $color12 = rgb(7389AB) $color13 = rgb(D8A08A) $color14 = rgb(EBF5B7) $color15 = rgb(EDF2D3) Config File: /home/lzw/.config/hypr/conf.d/020-animations.conf: Read Succeeded animations { enabled = yes # Some default animations, see https://wiki.hyprland.org/Configuring/Animations/ for more bezier = myBezier, 0.05, 0.9, 0.1, 1.05 animation = windows, 1, 7, myBezier animation = windowsOut, 1, 7, default, popin 80% animation = border, 1, 10, default animation = borderangle, 1, 8, default animation = fade, 1, 7, default animation = workspaces, 1, 6, default } Config File: /home/lzw/.config/hypr/conf.d/020-cursor.conf: Read Succeeded # 光标设置 env = HYPRCURSOR_SIZE,24 env = XCURSOR_SIZE,24 cursor { hide_on_key_press = true # 光标不活动多少秒后隐藏它 inactive_timeout = 5 hide_on_touch = true # 测试 vmware 的虚拟机里光标没有显示,设置 no_hardware_cursors 为 true 可以解决 # FIXME: https://github.com/hyprwm/Hyprland/issues/7577 # 定期检查新版本是否已经解决 no_hardware_cursors = true } Config File: /home/lzw/.config/hypr/conf.d/020-debug.conf: Read Succeeded debug { disable_logs = false disable_time = false } Config File: /home/lzw/.config/hypr/conf.d/020-decoration.conf: Read Succeeded decoration { # See https://wiki.hyprland.org/Configuring/Variables/ for more rounding = 10 blur { enabled = true size = 3 # passes = 1 # popups = true # noise = 0.8 # contrast = 1 } drop_shadow = yes shadow_range = 4 shadow_render_power = 3 col.shadow = rgba(1a1a1aee) # 非活动窗口的透明度 inactive_opacity = 1 # 当特殊工作区打开时,屏幕其余部分要调暗多少。默认值是0.2 dim_special = 0.7 } Config File: /home/lzw/.config/hypr/conf.d/020-dwindle.conf: Read Succeeded dwindle { # See https://wiki.hyprland.org/Configuring/Dwindle-Layout/ for more pseudotile = yes # master switch for pseudotiling. Enabling is bound to mainMod + P in the keybinds section below preserve_split = yes # you probably want this } Config File: /home/lzw/.config/hypr/conf.d/020-general.conf: Read Succeeded general { # See https://wiki.hyprland.org/Configuring/Variables/ for more gaps_in = 2 gaps_out = 5 border_size = 2 col.active_border = $color1 $color3 $color5 45deg col.inactive_border = $color0 layout = master # Please see https://wiki.hyprland.org/Configuring/Tearing/ before you turn this on allow_tearing = false # 通过单击并拖动边框和间隙来调整窗口大小 resize_on_border = true } Config File: /home/lzw/.config/hypr/conf.d/020-gestures.conf: Read Succeeded gestures { # See https://wiki.hyprland.org/Configuring/Variables/ for more workspace_swipe = off } Config File: /home/lzw/.config/hypr/conf.d/020-input.conf: Read Succeeded # For all categories, see https://wiki.hyprland.org/Configuring/Variables/ input { kb_layout = us kb_variant = kb_model = kb_options = kb_rules = # https://wiki.hyprland.org/Configuring/Variables/#follow-mouse-cursor # 0 光标移动不会改变焦点。 # 1 光标移动将始终将焦点更改到光标下方的窗口。 # 2 光标焦点将与键盘焦点分离。单击窗口会将键盘焦点移动到该窗口。 # 3 光标焦点将与键盘焦点完全分开。单击窗口不会改变键盘焦点。 follow_mouse = 1 touchpad { natural_scroll = no } sensitivity = 0 # -1.0 - 1.0, 0 means no modification. } Config File: /home/lzw/.config/hypr/conf.d/020-master.conf: Read Succeeded master { # See https://wiki.hyprland.org/Configuring/Master-Layout/ for more orientation = right mfact = 0.65 } Config File: /home/lzw/.config/hypr/conf.d/020-misc.conf: Read Succeeded misc { # See https://wiki.hyprland.org/Configuring/Variables/ for more force_default_wallpaper = -1 # Set to 0 or 1 to disable the anime mascot wallpapers new_window_takes_over_fullscreen = 1 # https://github.com/hyprwm/Hyprland/issues/570 enable_swallow = true # 希望被 swallow 的窗口类名匹配规则 swallow_regex = ^(org.wezfurlong.wezterm)$ # 不需要启用 swallow 的窗口标题名匹配规则,注意匹配的是父级窗口的标题 # 例如: # 1. wezterm 下运行 wev # 2. 会有 wezterm 的进程 和一个 wev 的进程 # 3. 这里匹配的是 wezterm 的标题 swallow_exception_regex = ^(wev)$ } Config File: /home/lzw/.config/hypr/conf.d/030-base.conf: Read Succeeded # =========================== BEGIN 环境变量设置 BEGIN =========================== # 没有分类的环境变量 env = LC_ALL, env = EDITOR,vim # 设置XDG相关的环境变量 # https://wiki.hyprland.org/Configuring/Environment-variables/#xdg-specifications # XDG门户也会设置 #env = XDG_CURRENT_DESKTOP,Hyprland #env = XDG_SESSION_TYPE,wayland #env = XDG_SESSION_DESKTOP,Hyprland # 设置Toolkit Backend的环境变量 # https://wiki.hyprland.org/Configuring/Environment-variables/#toolkit-backend-variables env = GDK_BACKEND,wayland,x11 env = QT_QPA_PLATFORM,wayland;xcb env = SDL_VIDEODRIVER,wayland,x11 env = CLUTTER_BACKEND,wayland # 设置QT环境变量 env = QT_AUTO_SCREEN_SCALE_FACTOR,1 # 上面已经设置了 #env = QT_QPA_PLATFORM,wayland;xcb env = QT_WAYLAND_DISABLE_WINDOWDECORATION,1 # change to qt6ct if you have that env = QT_QPA_PLATFORMTHEME,qt5ct # 设置Electron相关的环境变量 # https://wiki.archlinux.org/title/wayland#Environment_variable # Electron >= 28 设置 env = ELECTRON_OZONE_PLATFORM_HINT,auto # =========================== END 环境变量设置 END =========================== # 全局的窗口规则 # https://wiki.hyprland.org/Configuring/Window-Rules/ # nomaximizerequest 被废弃了,使用 suppressevent # windowrulev2 = nomaximizerequest, class:.* # https://github.com/hyprwm/Hyprland/issues/5197 windowrulev2 = suppressevent maximize, class:.* # 全屏功能还是需要的 #windowrulev2 = suppressevent fullscreen, class:.* # https://wiki.hyprland.org/Configuring/Binds/ bind = $mainMod, q, killactive bind = $mainMod, escape, exit bind = $mainMod, v, togglefloating # dwindle bind = $mainMod, p, pseudo # dwindle bind = $mainMod, j, togglesplit # ======================= 工作空间的操作 ======================= # 当前显示器上的工作空间切换 bind = $mainMod, tab, workspace, m+1 # `和~ 键码是 code:49,也可使用 grave bind = $mainMod, grave, workspace, e+1 # 新建一个空的工作空间 # FIXME: 当工作空间A已经在配置文件中定义,但是是其他显示器的,此时新建空的工作空间将会是A,而不是当前显示器的空工作空间 # https://github.com/hyprwm/Hyprland/pull/6089 bind = $mainMod, n, workspace, emptynm # 两个显示器交换工作空间 # https://www.reddit.com/r/hyprland/comments/13tbdyc/help_swappingmoving_active_workspaces_across/ # https://wiki.hyprland.org/Configuring/Dispatchers bind = $mainMod, s, swapactiveworkspaces,current +1 # ======================= 窗口的操作 ======================= # 当前工作空间的窗口切换焦点 bind = CTRL, tab, cyclenext # 焦点聚焦显示器 # `和~ 键码是 code:49,也可使用 grave bind = CTRL, grave, focusmonitor, +1 bind = $mainMod, m, movetoworkspacesilent, emptynm bind = $mainMod SHIFT, m, movetoworkspace, emptynm # 交换窗口 bind = $mainMod, left, swapwindow, l bind = $mainMod, right, swapwindow, r bind = $mainMod, up, swapwindow, u bind = $mainMod, down, swapwindow, d # 移动窗口 bind = $mainMod SHIFT, left, movewindow, l bind = $mainMod SHIFT, right, movewindow, r bind = $mainMod SHIFT, up, movewindow, u bind = $mainMod SHIFT, down, movewindow, d bind = $mainMod CTRL, left, movetoworkspace, m-1 bind = $mainMod CTRL, right, movetoworkspace, m+1 # 这个全屏并不是程序自身全屏,而是窗口全屏,程序没有全屏 # 例如:chrome的全屏是没有菜单和标签页的,但是这个全屏后还是有菜单和标签页的,只是窗口全屏了 bind = $mainMod, F11, fullscreen # 改变窗口的大小 # resizeactive的参数行为很奇怪,还是用鼠标吧 # binde = $mainMod CTRL ALT, left, resizeactive, 10 10 # Move/resize windows with mainMod + LMB/RMB and dragging bindm = $mainMod, mouse:272, movewindow bindm = $mainMod, mouse:273, resizewindow # 鼠标中键调整窗口大小 bindm = , mouse:274, resizewindow # https://wiki.hyprland.org/Configuring/Dispatchers # 不明白 forcerendererreload 的意思 # bind = $mainMod, F5, forcerendererreload # 运行 Authentication Agent # https://wiki.hyprland.org/Useful-Utilities/Must-have/\#authentication-agent exec-once=/usr/lib/polkit-kde-authentication-agent-1 # FIXME: https://www.reddit.com/r/hyprland/comments/1agzq86/blur_problem_in_chrome/ # 如果启用wayland,启动chrome会有一个只有chrome图标的窗口,这个是因为启用了“关闭 Google Chrome 后继续运行后台应用” # 虚拟桌面 # https://github.com/levnikmyskin/hyprland-virtual-desktops # csgo 自定义分辨率 # https://github.com/hyprwm/hyprland-plugins/tree/main/csgo-vulkan-fix # 目前我没有使用自定义分辨率,没有遇到问题 # 放大镜的快捷键 # $mainMod + "+/=" 实现放大功能 bind = $mainMod, equal, exec, ~/.config/hypr/scripts/zoom.sh in # $mainMod + "-/_" 实现缩小功能 bind = $mainMod, minus, exec, ~/.config/hypr/scripts/zoom.sh out # 截屏 bind = , Print, exec, mkdir -p ~/.cache/hypr/screenshot && grim -c ~/.cache/hypr/screenshot/$(date +screenshot_%F_%T.png) bind = $mainMod, Print, exec, mkdir -p ~/.cache/hypr/screenshot && grim -c -g "$(slurp)" ~/.cache/hypr/screenshot/$(date +screenshot_%F_%T.png) Config File: /home/lzw/.config/hypr/conf.d/040-minimized.conf: Read Succeeded workspace = special:$minimizedWorkspace, gapsout:50 bind = , F10, movetoworkspacesilent, special:$minimizedWorkspace # 从最小化窗口选择一个窗口回到上个workspace # !!!! 确保每次关闭 $minimizedWorkspace 时都需要 reset submap bind = $mainMod, F10, togglespecialworkspace, $minimizedWorkspace bind = $mainMod, F10, submap, back_from_min submap=back_from_min # 关闭窗口 bind = $mainMod, q, killactive bind = $mainMod, F10, togglespecialworkspace, $minimizedWorkspace bind = $mainMod, F10, submap,reset # bind = ALT, tab, cyclenext # bind = ALT SHIFT, tab, cyclenext, prev # 将焦点的窗口移动到上个workspace,并且跟随到workspace bind = , F10, movetoworkspace, +0 bind = , F10, submap,reset bind = CTRL, F10, movetoworkspacesilent, +0 # 关闭 $minimizedWorkspace bind=,escape,togglespecialworkspace,$minimizedWorkspace bind=,escape,submap,reset submap=reset # 将最小化窗口里的最后一个窗口移动到当前的workspace bind = $mainMod, F12, togglespecialworkspace, $minimizedWorkspace bind = $mainMod, F12, movetoworkspace, +0 Config File: /home/lzw/.config/hypr/conf.d/050-monitor.conf: Read Succeeded $mainMonitorDesc = BNQ BenQ VZ2750 7AG03909CL0 $secondMonitorDesc = Invalid Vendor Codename - RTK 32V3H-H6A 0x00000001 # 显示器设置 # See https://wiki.hyprland.org/Configuring/Monitors/ monitor=desc:$mainMonitorDesc, 1920x1080, 0x0, 1 monitor=desc:$secondMonitorDesc, 960x540, -960x540, 1, transform, 2 Config File: /home/lzw/.config/hypr/conf.d/350-audio.conf: Read Succeeded # https://wiki.hyprland.org/Configuring/Binds/#example-binds bindel = , XF86AudioRaiseVolume, exec, wpctl set-volume -l 1.0 @DEFAULT_AUDIO_SINK@ 5%+ bindel = , XF86AudioLowerVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%- bindl = , XF86AudioMute, exec, wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle bindl = , XF86AudioPlay, exec, playerctl play-pause bindl = , XF86AudioStop, exec, playerctl stop bindl = , XF86AudioPrev, exec, playerctl previous bindl = , XF86AudioNext, exec, playerctl next Config File: /home/lzw/.config/hypr/conf.d/350-cavasik.conf: Read Succeeded # 设置 Cavasik 的窗口规则 # FIXME: 目前是以窗口的形式展示,后面需要修改为以layer展示 windowrulev2 = noborder, title:^Cavasik$,class:(Cavasik)$ windowrulev2 = noblur, title:^Cavasik$,class:(Cavasik)$ windowrulev2 = noshadow, title:^Cavasik$,class:(Cavasik)$ Config File: /home/lzw/.config/hypr/conf.d/350-chrome.conf: Read Succeeded windowrulev2 = idleinhibit fullscreen, class: ^(Google-chrome)$ Config File: /home/lzw/.config/hypr/conf.d/350-dolphin.conf: Read Succeeded # 文件管理器设置 bind = $mainMod, e, exec, org.kde.dolphin Config File: /home/lzw/.config/hypr/conf.d/350-fcitx5.conf: Read Succeeded # 设置输入法 exec-once = fcitx5 # 如果不设置GTK_IM_MODULE,chrome输入有问题,例如输入“我是”,可能在输入的过程中输入框输入了“i” env = GTK_IM_MODULE,fcitx env = QT_IM_MODULE,fcitx env = XMODIFIERS,@im=fcitx Config File: /home/lzw/.config/hypr/conf.d/350-flameshot.conf: Read Succeeded # 设置截图快捷键 bind = CTRL ALT, A, exec, flameshot gui windowrulev2 = float, class:^(flameshot)$ windowrulev2 = fullscreenstate 2, class:^(flameshot)$ # FIXME: -960 是我的第二个显示器的分辨率的宽度。这里先写死,因为没想到好办法和显示器配置互动。 windowrulev2 = move -960 0, class:^(flameshot)$, xwayland:0 # 配置窗口 windowrulev2 = center 1, class:^(flameshot)$, title: ^(配置)$ # pin 窗口 windowrulev2 = center 1, class:^(flameshot)$, xwayland:1 Config File: /home/lzw/.config/hypr/conf.d/350-hyprfocus.conf: Read Succeeded # https://github.com/VortexCoyote/hyprfocus 的配置 # plugin:hyprfocus { # enabled = yes # # keyboard_focus_animation = shrink # mouse_focus_animation = flash # # bezier = bezIn, 0.5,0.0,1.0,0.5 # bezier = bezOut, 0.0,0.5,0.5,1.0 # # flash { # flash_opacity = 0.7 # # in_bezier = bezIn # in_speed = 0.5 # # out_bezier = bezOut # out_speed = 3 # } # # shrink { # shrink_percentage = 0.8 # # in_bezier = bezIn # in_speed = 0.5 # # out_bezier = bezOut # out_speed = 3 # } # } # https://github.com/pyt0xic/hyprfocus 的配置 plugin:hyprfocus { enabled = yes animate_floating = yes animate_workspacechange = yes focus_animation = shrink # Beziers for focus animations bezier = bezIn, 0.5,0.0,1.0,0.5 bezier = bezOut, 0.0,0.5,0.5,1.0 bezier = overshot, 0.05, 0.9, 0.1, 1.05 bezier = smoothOut, 0.36, 0, 0.66, -0.56 bezier = smoothIn, 0.25, 1, 0.5, 1 bezier = realsmooth, 0.28,0.29,.69,1.08 # Flash settings flash { flash_opacity = 0.95 in_bezier = realsmooth in_speed = 0.5 out_bezier = realsmooth out_speed = 3 } # Shrink settings shrink { shrink_percentage = 0.97 in_bezier = realsmooth in_speed = 1 out_bezier = realsmooth out_speed = 2 } } Config File: /home/lzw/.config/hypr/conf.d/350-hypridle.conf: Read Succeeded # 设置 hypridle exec-once = hypridle --config ~/.config/hypridle/hypridle.conf Config File: /home/lzw/.config/hypr/conf.d/350-hyprlock.conf: Read Succeeded # 设置锁屏 bind = $mainMod, L, exec, hyprlock --config ~/.config/hyprlock/hyprlock.conf Config File: /home/lzw/.config/hypr/conf.d/350-hyprpaper.conf: Read Succeeded # 设置壁纸 exec-once = hyprpaper --config ~/.config/hyprpaper/hyprpaper.conf exec-once = ~/.config/hyprpaper/scripts/wallpaper.sh Config File: /home/lzw/.config/hypr/conf.d/350-hyprpicker.conf: Read Succeeded # 取色器 bind = $mainMod, c, exec, hyprpicker -a -f hex Config File: /home/lzw/.config/hypr/conf.d/350-localsend.conf: Read Succeeded windowrulev2 = float, class:^(localsend)$ Config File: /home/lzw/.config/hypr/conf.d/350-peazip.conf: Read Succeeded # wayland 的 class 是 peazip, xwayland 的 class 是 PeaZip windowrulev2 = float, class:^(PeaZip|peazip)$ Config File: /home/lzw/.config/hypr/conf.d/350-pot.conf: Read Succeeded # 翻译软件 # xwayland 启动 pot, wayland 的使用体验不好 # 使用 xwayland 可以改善的体验: # 1. 失去焦点关闭翻译窗口,并且多次调用翻译时不需要先关闭残留的窗口再打开新的翻译窗口 exec-once=mkdir -p ~/.cache/com.pot-app.desktop && XDG_SESSION_TYPE=x11 GDK_BACKEND=x11 pot bind = , F6, exec, curl "127.0.0.1:60828/selection_translate" bind = $mainMod, F6, exec, curl "127.0.0.1:60828/config" # https://github.com/pot-app/pot-desktop?tab=readme-ov-file#%E6%88%AA%E5%9B%BE%E6%97%A0%E6%B3%95%E4%BD%BF%E7%94%A8 bind = $mainMod, F7, exec, grim -g "$(slurp)" ~/.cache/com.pot-app.desktop/pot_screenshot_cut.png && curl "127.0.0.1:60828/ocr_recognize?screenshot=false" # 截图翻译 bind = , F7, exec, grim -g "$(slurp)" ~/.cache/com.pot-app.desktop/pot_screenshot_cut.png && curl "127.0.0.1:60828/ocr_translate?screenshot=false" # https://github.com/pot-app/pot-desktop?tab=readme-ov-file#%E5%88%92%E8%AF%8D%E7%BF%BB%E8%AF%91%E7%AA%97%E5%8F%A3%E8%B7%9F%E9%9A%8F%E9%BC%A0%E6%A0%87%E4%BD%8D%E7%BD%AE # wayland 下的 class 是 pot ,xwayland 下的 class 是 Pot 。 windowrulev2 = float, class:^([pP]ot)$, title:^(Translate|Translator|OCR|PopClip|Screenshot Translate|Config|Recognize)$ windowrulev2 = move cursor 0 0, class:^([pP]ot)$, title:^(Translate|Translator|PopClip|Screenshot Translate)$ windowrulev2 = center, class:^([pP]ot)$, title:^(Config|Recognize)$ Config File: /home/lzw/.config/hypr/conf.d/350-rofi.conf: Read Succeeded bind = $mainMod, R, exec, rofi -show-icons -show combi -combi-modes "drun,window,run,ssh" -modes combi Config File: /home/lzw/.config/hypr/conf.d/350-rpcs3.conf: Read Succeeded windowrulev2 = idleinhibit fullscreen, class: ^(rpcs3)$ Config File: /home/lzw/.config/hypr/conf.d/350-ryujinx.conf: Read Succeeded # 设置 Ryujinx 的窗口规则 # 玩游戏的时候不要锁屏 windowrulev2 = idleinhibit focus, class: ^(Ryujinx)$ Config File: /home/lzw/.config/hypr/conf.d/350-steam.conf: Read Succeeded # https://wiki.hyprland.org/faq/#steams-file-picker-no-worky # https://github.com/hyprwm/Hyprland/issues/2661#issuecomment-1629219873 windowrulev2 = float, title:^(Steam 设置)$,class:^(steam)$ windowrulev2 = center 1, title:^(Steam 设置)$,class:^(steam)$ windowrulev2 = float, title:^(好友列表)$,class:^(steam)$ windowrulev2 = center 1, title:^(好友列表)$,class:^(steam)$ windowrulev2 = noborder, title:^(Dota 2)$,class:^(dota2)$ Config File: /home/lzw/.config/hypr/conf.d/350-swaync.conf: Read Succeeded # 设置通知守护进程 exec-once = swaync Config File: /home/lzw/.config/hypr/conf.d/350-thunderbird.conf: Read Succeeded # 启动邮箱 exec-once=[workspace special:$minimizedWorkspace silent] thunderbird Config File: /home/lzw/.config/hypr/conf.d/350-wezterm.conf: Read Succeeded # 终端的设置 $terminal = wezterm env = TERMINAL, $terminal bind = $mainMod, t, exec, $terminal # TODO: 访Yakuake的效果 # https://github.com/hyprwm/Hyprland/issues/1510 # bind = , F12, exec, [floating] $terminal Config File: /home/lzw/.config/hypr/conf.d/350-wlogout.conf: Read Succeeded # 设置登出菜单 bind = $mainMod, delete, exec, ~/.config/wlogout/wlogout_wrap.sh ======Config-End======== ```

Description

I have two monitors. There is no workspace on the secondary monitor. The current focus is on the main monitor, and when I use the keyboard shortcut to open a new empty workspace, it opens on the secondary monitor instead of on the current monitor.

but when i run hyprctl dispatch workspace emptynm in terminal, it opened in current monitor.

How to reproduce

Crash reports, logs, images, videos

No response

ssqzr commented 2 weeks ago

A serendipitous discovery.

Previously I connected my first monitor to the GPU. The second monitor is connected to the motherboard and uses an integrated graphics card.

When I also connect the second monitor to the GPU, the two monitors are connected to the two interfaces of the same graphics card. this problem disappears.