首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在xmonad中,一些键绑定可以工作,而另一些不能?

在xmonad中,一些键绑定可以工作,而另一些不能?
EN

Stack Overflow用户
提问于 2020-11-07 17:14:25
回答 1查看 266关注 0票数 0

我正在尝试Xmonad,并且正在构建一个配置文件。但是,我对键绑定有一个问题。我的一些键绑定正在工作,而另一些不工作。我不明白为什么。它编译得很好,没有错误。对我来说,要么都能工作,要么什么都不能做。为什么只有一些?

例如,我可以启动一个终端,锁定我的屏幕,启动文件管理器,但我不能启动firefox或vscode。下一节也是如此。我可以启动rofi launcher,rofi window finder,但dmenu和rofi exit菜单在我的配置中不起作用:

代码语言:javascript
复制
terminalCmd         = "alacritty"
browserCmd          = "firefox"
editorCmd           = "code"
fileManagerCmd      = "nautilus --new-window"
dmenuCmd            = "dmenu_run"
rofiCmd             = "rofi -show drun -theme clean"
rofiWinCmd          = "rofi -show window -theme clean_window"
rofiExitCmd         = "~/.config/rofi/launch.sh powermenu"
screenLockCmd       = "slock"
myFocusFollowsMouse = True

myKeybindings conf@XConfig {modMask = modMask} = M.fromList $
    --Launch programs
    [ ((modMask, xK_Return), spawn terminalCmd)              --Launch terminal
    , ((modMask, xK_w), spawn browserCmd)                    --Launch browser
    , ((modMask, xK_e), spawn editorCmd)                     --Launch editor
    , ((modMask, xK_a), spawn fileManagerCmd)                --Launch file manager
    , ((modMask, xK_l), spawn screenLockCmd)                 --Lock the screen

    --Launchers and menus
    , ((modMask, xK_r), spawn dmenuCmd)                      --Launch dmenu launcher
    , ((modMask, xK_p), spawn rofiCmd)                       --Launch rofi launcher
    , ((modMask .|. shiftMask, xK_p), spawn rofiWinCmd)      --Launch rofi window finder
    , ((modMask .|. shiftMask, xK_e), spawn rofiExitCmd)     --Launch rofi exit menu

main = xmonad $ def
    { modMask             = mod4Mask
    , focusFollowsMouse   = myFocusFollowsMouse
    , borderWidth         = 1
    , terminal            = terminalCmd
    , normalBorderColor   = "#cccccc"
    , focusedBorderColor  = "#cd8b00"
    , workspaces          = myWorkspaces 
    , keys                = myKeybindings
    , startupHook         = myStartupHook }
EN

回答 1

Stack Overflow用户

发布于 2020-11-09 06:44:24

下面是我调试这个问题的方法。

  1. 尝试在终端中键入原始命令。如果这不起作用,您知道问题不在于XMonad配置或XMonad,而在于命令本身。

  1. 如果该命令在终端中有效,请尝试将其绑定到XMonad中的其他密钥。如果这是可行的,那么问题出在键绑定上。启动xev,按要使用的键,然后仔细检查触发的事件的名称。

  1. 使用XMonad启动当前正在运行的命令之一,并尝试将其绑定到您遇到问题的密钥之一。

  • 如果它工作正常,那么说明您的原始命令有问题。如果步骤1有效,那么问题可能与直接在XWindows而不是终端中启动命令有关。

  • 如果它不起作用,那就更能证明你没有使用正确的密钥绑定。

此外,为了排除XMonad看到的PATH环境变量的值与终端看到的值之间的任何差异,请尝试在您的配置中提供命令的完整路径。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64726136

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档