Получение текущего имени рабочей области в виде строки в xmonad

Получение текущего имени рабочей области в виде строки в xmonad

Я хочу получить текущий активный тег в xmonad как строку. Я импортировал stackset с помощью

import qualified XMonad.StackSet as W

Я могу получить тег текущей рабочей области с фокусом с помощью W.currentTag, но его тип —StackSet i0 l0 a0 s0 sd0 -> i0

Как преобразовать это в строку?

решение1

iимеет типhttp://hackage.haskell.org/package/xmonad-0.15/docs/XMonad-Core.html#t:WindowSetкоторый является псевдонимом типа для String.

currentTagбудет оценен как , Stringесли вы дадите ему параметр, относящийся к StackSet.

http://hackage.haskell.org/package/xmonad-0.15/docs/XMonad-Core.html#v:withWindowSetэто то, что вы могли бы использовать.

Так что я думаю, что вы можете сделать: withWindowSet (pure . currentTag)это выражение типаX String


Также доступно здесь:https://hackage.haskell.org/package/xmonad-contrib-0.15/docs/XMonad-Util-Loggers.html#v:logCurrent

import XMonad.Util.Loggers
logCurrent :: X (Maybe String)

Связанный контент