Je suis nouveau à Xmonad (juste l'installer hier), et puisque je n'ai jamais utilisé Haskell auparavant, j'ai trouvé une configuration un peu déroutant pour moi. J'ai eu un peu de travail de Xmobar et de Trayer, mais je ne sais pas comment puis-je créer des clés multimédia pour ajuster le volume. Quelqu'un peut-il aider avec ça?
Question supplémentaire: Comment gérez-vous votre volume à Xmonad? Utilisez-vous l'icône du plateau ou d'autres choses comme ça?
Voici ma configuration xmonad:
import XMonad
import XMonad.Hooks.DynamicLog
import XMonad.Hooks.ManageDocks
import XMonad.Util.EZConfig(additionalKeys)
import System.IO
main = xmonad =<< statusBar myBar myPP toggleStrutKey myConfig
-- Command to launch the bar
myBar = "xmobar"
-- Custom PP, it determines what is written to the bar
myPP = xmobarPP { ppCurrent = xmobarColor "#429942" "" . wrap "<" ">" }
-- Key bindings to toggle the gap for the bar
toggleStrutKey XConfig {XMonad.modMask = modMask} = (modMask, xK_b)
myConfig = defaultConfig {
manageHook = manageDocks <+> manageHook defaultConfig,
layoutHook = avoidStruts $ layoutHook defaultConfig,
modMask = mod4Mask -- Rebind Mod to windows key
} `additionalKeys`
[ ((mod4Mask .|. shiftMask, xK_z), spawn "xscreensaver-command -lock")
]
Voir ceci graphiques.x11.extraytypes.xf86 pour les touches souhaitées et ajoutez à votre fichier de configuration:
import Graphics.X11.ExtraTypes.XF86
myKeys conf@(XConfig {XMonad.modMask = modm}) = M.fromList $
[ ...
, ((0, xF86XK_AudioLowerVolume ), spawn "amixer set Master 2-")
, ((0, xF86XK_AudioRaiseVolume ), spawn "amixer set Master 2+")
, ((0, xF86XK_AudioMute ), spawn "amixer set Master toggle")
...]
Si vous utilisez PulseAudio, pactl
doit également fonctionner.
, ((0 , xF86XK_AudioRaiseVolume), spawn "pactl set-sink-volume 0 +1.5%")
, ((0 , xF86XK_AudioLowerVolume), spawn "pactl set-sink-volume 0 -- -1.5%")
, ((0 , xF86XK_AudioMute), spawn "pactl set-sink-mute 0 toggle")
]
0
est un identifiant de puissant. pactl list short sinks
montrera la liste des lavabo.
pactl stat|grep 'Default Sink' | cut -f2 -d':'
montrera l'évier par défaut actuel. Vous pouvez utiliser un nom de lavabo plutôt numérique.
Doulier Doulble --
dit que ce n'est pas l'option (comme -h), juste une valeur 'to pactl
.
Si amixer set Master 2-
ne marche pas. Essayer amixer -D Pulse set Master 2-
au lieu. Également 2%-
et 2%+
changera le volume de 2%, ce qui peut être plus facile à utiliser. Vous pouvez tester ces commandes dans le terminal pour les adapter à votre goût avant de les mettre dans votre fichier de configuration Xmonad.