戴尔 xps 15 上 xmonad 中的 Fn 键

gri*_*kov 2 brightness dell xmonad

我刚买了新的戴尔 XPS 15 并用 XMonad 安装了 ubuntu 16.04。除了Fn钥匙之外,一切都很好。键盘背光可以通过Fn+启用F10,但其他按钮,如Fn+F11Fn+ F12(降低和增加亮度)不起作用。

在 Unity 下,所有Fn键都可以正常工作。

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

小智 5

您必须将自定义键绑定添加到您的 xmonad 配置文件。密钥代码是XF86MonBrightnessUpXF86MonBrightnessDown。然后你必须使用类似lux 的东西。

这是我如何使用它:

  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%")    
            ]
Run Code Online (Sandbox Code Playgroud)

我希望这可以帮助你。