戴尔 xps 15 上的 xmonad 中的 Fn 键

戴尔 xps 15 上的 xmonad 中的 Fn 键

我刚买了新的 Dell XPS 15,并安装了带有 XMonad 的 ubuntu 16.04。除了按键之外,其他都运行良好。键盘背光可以通过+Fn启用,但其他按钮(如+或+ (降低和增加亮度))不起作用。FnF10FnF11FnF12

在 Unity 下所有Fn按键均可正常工作。

我可以使用哪个配置来启用FnXMonad 下的密钥?

答案1

您必须将自定义键绑定添加到 xmonad 配置文件中。键码为XF86MonBrightnessUpXF86MonBrightnessDown。然后您必须使用类似勒克斯

以下是我的使用方法:

  import XMonad
  import XMonad.Hooks.DynamicLog
  import XMonad.Hooks.ManageDocks
  import XMonad.Util.EZConfig(additionalKeys, additionalKeysP)
  import XMonad.Util.Run(spawnPipe)
  import XMonad.Config.Desktop
  import XMonad.Config.Gnome
  import XMonad.Hooks.ManageHelpers
  import System.IO
  import Graphics.X11.ExtraTypes.XF86

  main = do
    xmproc <- spawnPipe "tint2"
    nm <- spawnPipe "nm-applet"
    xmonad $ desktopConfig
      { modMask = myModMask
      , terminal = "termite"
      , borderWidth = 1 
      , layoutHook = avoidStruts $ layoutHook defaultConfig
      , manageHook = manageHook defaultConfig <+> manageDocks
      } `additionalKeysP` myKeys

  myModMask = mod4Mask -- Use Super instead of Alt

  myKeys =  [ ("<XF86AudioRaiseVolume>", spawn "pactl set-sink-volume @DEFAULT_SINK@ +1.5%")
            , ("<XF86AudioLowerVolume>", spawn "pactl set-sink-volume @DEFAULT_SINK@  -1.5%")
            , ("<XF86AudioMute>", spawn "pactl set-sink-mute @DEFAULT_SINK@ toggle")    

            , ("<XF86AudioPlay>", spawn "playerctl play-pause")    
            , ("<XF86AudioPrev>", spawn "playerctl previous")    
            , ("<XF86AudioNext>", spawn "playerctl next")    

            , ("<XF86MonBrightnessUp>", spawn "lux -a 5%")    
            , ("<XF86MonBrightnessDown>", spawn "lux -s 5%")    
            ]

我希望这可以帮助你。

相关内容