xmobar-0.49: A Minimalistic Text Based Status Bar
Copyright(c) 2011 2012 2013 2014 2015 2017 2018 2019 2022 Jose Antonio Ortega Ruiz
(c) 2007 Andrea Rossato
LicenseBSD-style (see LICENSE)
MaintainerJose A. Ortega Ruiz <jao@gnu.org>
Stabilityunstable
Portabilityunportable
Safe HaskellNone
LanguageHaskell2010

Xmobar

Description

Public interface of the xmobar library

Synopsis

Documentation

xmobar :: Config -> IO () Source #

defaultConfig :: Config Source #

The default configuration values

tenthSeconds :: Int -> IO () Source #

Sleep for a given amount of tenths of a second.

(Work around the Int max bound: since threadDelay takes an Int, it is not possible to set a thread delay grater than about 45 minutes. With a little recursion we solve the problem.)

data Runnable Source #

Constructors

(Exec r, Read r, Show r) => Run r 

Instances

Instances details
Read Runnable Source # 
Instance details

Defined in Xmobar.Run.Runnable

Methods

readsPrec :: Int -> ReadS Runnable

readList :: ReadS [Runnable]

readPrec :: ReadPrec Runnable

readListPrec :: ReadPrec [Runnable]

Show Runnable Source # 
Instance details

Defined in Xmobar.Run.Runnable

Methods

showsPrec :: Int -> Runnable -> ShowS

show :: Runnable -> String

showList :: [Runnable] -> ShowS

Exec Runnable Source # 
Instance details

Defined in Xmobar.Run.Runnable

Methods

alias :: Runnable -> String Source #

rate :: Runnable -> Int Source #

run :: Runnable -> IO String Source #

start :: Runnable -> (String -> IO ()) -> IO () Source #

trigger :: Runnable -> (Maybe SignalType -> IO ()) -> IO () Source #

class Show e => Exec e where Source #

Minimal complete definition

Nothing

Methods

alias :: e -> String Source #

rate :: e -> Int Source #

run :: e -> IO String Source #

start :: e -> (String -> IO ()) -> IO () Source #

trigger :: e -> (Maybe SignalType -> IO ()) -> IO () Source #

Instances

Instances details
Exec ArchUpdates Source # 
Instance details

Defined in Xmobar.Plugins.ArchUpdates

Methods

alias :: ArchUpdates -> String Source #

rate :: ArchUpdates -> Int Source #

run :: ArchUpdates -> IO String Source #

start :: ArchUpdates -> (String -> IO ()) -> IO () Source #

trigger :: ArchUpdates -> (Maybe SignalType -> IO ()) -> IO () Source #

Exec BufferedPipeReader Source # 
Instance details

Defined in Xmobar.Plugins.BufferedPipeReader

Methods

alias :: BufferedPipeReader -> String Source #

rate :: BufferedPipeReader -> Int Source #

run :: BufferedPipeReader -> IO String Source #

start :: BufferedPipeReader -> (String -> IO ()) -> IO () Source #

trigger :: BufferedPipeReader -> (Maybe SignalType -> IO ()) -> IO () Source #

Exec Command Source # 
Instance details

Defined in Xmobar.Plugins.Command

Methods

alias :: Command -> String Source #

rate :: Command -> Int Source #

run :: Command -> IO String Source #

start :: Command -> (String -> IO ()) -> IO () Source #

trigger :: Command -> (Maybe SignalType -> IO ()) -> IO () Source #

Exec CommandReader Source # 
Instance details

Defined in Xmobar.Plugins.CommandReader

Methods

alias :: CommandReader -> String Source #

rate :: CommandReader -> Int Source #

run :: CommandReader -> IO String Source #

start :: CommandReader -> (String -> IO ()) -> IO () Source #

trigger :: CommandReader -> (Maybe SignalType -> IO ()) -> IO () Source #

Exec Date Source # 
Instance details

Defined in Xmobar.Plugins.Date

Methods

alias :: Date -> String Source #

rate :: Date -> Int Source #

run :: Date -> IO String Source #

start :: Date -> (String -> IO ()) -> IO () Source #

trigger :: Date -> (Maybe SignalType -> IO ()) -> IO () Source #

Exec DateZone Source # 
Instance details

Defined in Xmobar.Plugins.DateZone

Methods

alias :: DateZone -> String Source #

rate :: DateZone -> Int Source #

run :: DateZone -> IO String Source #

start :: DateZone -> (String -> IO ()) -> IO () Source #

trigger :: DateZone -> (Maybe SignalType -> IO ()) -> IO () Source #

Exec EWMH Source # 
Instance details

Defined in Xmobar.Plugins.EWMH

Methods

alias :: EWMH -> String Source #

rate :: EWMH -> Int Source #

run :: EWMH -> IO String Source #

start :: EWMH -> (String -> IO ()) -> IO () Source #

trigger :: EWMH -> (Maybe SignalType -> IO ()) -> IO () Source #

Exec HandleReader Source #

Asynchronously read from the Handle.

Instance details

Defined in Xmobar.Plugins.HandleReader

Methods

alias :: HandleReader -> String Source #

rate :: HandleReader -> Int Source #

run :: HandleReader -> IO String Source #

start :: HandleReader -> (String -> IO ()) -> IO () Source #

trigger :: HandleReader -> (Maybe SignalType -> IO ()) -> IO () Source #

Exec Kbd Source # 
Instance details

Defined in Xmobar.Plugins.Kbd

Methods

alias :: Kbd -> String Source #

rate :: Kbd -> Int Source #

run :: Kbd -> IO String Source #

start :: Kbd -> (String -> IO ()) -> IO () Source #

trigger :: Kbd -> (Maybe SignalType -> IO ()) -> IO () Source #

Exec Locks Source # 
Instance details

Defined in Xmobar.Plugins.Locks

Methods

alias :: Locks -> String Source #

rate :: Locks -> Int Source #

run :: Locks -> IO String Source #

start :: Locks -> (String -> IO ()) -> IO () Source #

trigger :: Locks -> (Maybe SignalType -> IO ()) -> IO () Source #

Exec MBox Source # 
Instance details

Defined in Xmobar.Plugins.MBox

Methods

alias :: MBox -> String Source #

rate :: MBox -> Int Source #

run :: MBox -> IO String Source #

start :: MBox -> (String -> IO ()) -> IO () Source #

trigger :: MBox -> (Maybe SignalType -> IO ()) -> IO () Source #

Exec Mail Source # 
Instance details

Defined in Xmobar.Plugins.Mail

Methods

alias :: Mail -> String Source #

rate :: Mail -> Int Source #

run :: Mail -> IO String Source #

start :: Mail -> (String -> IO ()) -> IO () Source #

trigger :: Mail -> (Maybe SignalType -> IO ()) -> IO () Source #

Exec MailX Source # 
Instance details

Defined in Xmobar.Plugins.Mail

Methods

alias :: MailX -> String Source #

rate :: MailX -> Int Source #

run :: MailX -> IO String Source #

start :: MailX -> (String -> IO ()) -> IO () Source #

trigger :: MailX -> (Maybe SignalType -> IO ()) -> IO () Source #

Exec MarqueePipeReader Source # 
Instance details

Defined in Xmobar.Plugins.MarqueePipeReader

Methods

alias :: MarqueePipeReader -> String Source #

rate :: MarqueePipeReader -> Int Source #

run :: MarqueePipeReader -> IO String Source #

start :: MarqueePipeReader -> (String -> IO ()) -> IO () Source #

trigger :: MarqueePipeReader -> (Maybe SignalType -> IO ()) -> IO () Source #

Exec Monitors Source # 
Instance details

Defined in Xmobar.Plugins.Monitors

Methods

alias :: Monitors -> String Source #

rate :: Monitors -> Int Source #

run :: Monitors -> IO String Source #

start :: Monitors -> (String -> IO ()) -> IO () Source #

trigger :: Monitors -> (Maybe SignalType -> IO ()) -> IO () Source #

Exec NotmuchMail Source #

How to execute this plugin.

Instance details

Defined in Xmobar.Plugins.NotmuchMail

Methods

alias :: NotmuchMail -> String Source #

rate :: NotmuchMail -> Int Source #

run :: NotmuchMail -> IO String Source #

start :: NotmuchMail -> (String -> IO ()) -> IO () Source #

trigger :: NotmuchMail -> (Maybe SignalType -> IO ()) -> IO () Source #

Exec PipeReader Source # 
Instance details

Defined in Xmobar.Plugins.PipeReader

Methods

alias :: PipeReader -> String Source #

rate :: PipeReader -> Int Source #

run :: PipeReader -> IO String Source #

start :: PipeReader -> (String -> IO ()) -> IO () Source #

trigger :: PipeReader -> (Maybe SignalType -> IO ()) -> IO () Source #

Exec StdinReader Source # 
Instance details

Defined in Xmobar.Plugins.StdinReader

Methods

alias :: StdinReader -> String Source #

rate :: StdinReader -> Int Source #

run :: StdinReader -> IO String Source #

start :: StdinReader -> (String -> IO ()) -> IO () Source #

trigger :: StdinReader -> (Maybe SignalType -> IO ()) -> IO () Source #

Exec XMonadLog Source # 
Instance details

Defined in Xmobar.Plugins.XMonadLog

Methods

alias :: XMonadLog -> String Source #

rate :: XMonadLog -> Int Source #

run :: XMonadLog -> IO String Source #

start :: XMonadLog -> (String -> IO ()) -> IO () Source #

trigger :: XMonadLog -> (Maybe SignalType -> IO ()) -> IO () Source #

Exec Runnable Source # 
Instance details

Defined in Xmobar.Run.Runnable

Methods

alias :: Runnable -> String Source #

rate :: Runnable -> Int Source #

run :: Runnable -> IO String Source #

start :: Runnable -> (String -> IO ()) -> IO () Source #

trigger :: Runnable -> (Maybe SignalType -> IO ()) -> IO () Source #

Exec (QueueReader a) Source #

Async queue/channel reading.

Instance details

Defined in Xmobar.Plugins.QueueReader

Methods

alias :: QueueReader a -> String Source #

rate :: QueueReader a -> Int Source #

run :: QueueReader a -> IO String Source #

start :: QueueReader a -> (String -> IO ()) -> IO () Source #

trigger :: QueueReader a -> (Maybe SignalType -> IO ()) -> IO () Source #

data Command Source #

Constructors

Com Program Args Alias Rate 
ComX Program Args String Alias Rate 

Instances

Instances details
Read Command Source # 
Instance details

Defined in Xmobar.Plugins.Command

Methods

readsPrec :: Int -> ReadS Command

readList :: ReadS [Command]

readPrec :: ReadPrec Command

readListPrec :: ReadPrec [Command]

Show Command Source # 
Instance details

Defined in Xmobar.Plugins.Command

Methods

showsPrec :: Int -> Command -> ShowS

show :: Command -> String

showList :: [Command] -> ShowS

Eq Command Source # 
Instance details

Defined in Xmobar.Plugins.Command

Methods

(==) :: Command -> Command -> Bool

(/=) :: Command -> Command -> Bool

Exec Command Source # 
Instance details

Defined in Xmobar.Plugins.Command

Methods

alias :: Command -> String Source #

rate :: Command -> Int Source #

run :: Command -> IO String Source #

start :: Command -> (String -> IO ()) -> IO () Source #

trigger :: Command -> (Maybe SignalType -> IO ()) -> IO () Source #

data SignalType Source #

Constructors

Wakeup 
Reposition 
ChangeScreen 
Hide Int 
Reveal Int 
Toggle Int 
SetAlpha Int 
TogglePersistent 
Action Button Position 

Instances

Instances details
IsVariant SignalType Source # 
Instance details

Defined in Xmobar.System.Signal

Methods

toVariant :: SignalType -> Variant

fromVariant :: Variant -> Maybe SignalType

Read SignalType Source # 
Instance details

Defined in Xmobar.System.Signal

Methods

readsPrec :: Int -> ReadS SignalType

readList :: ReadS [SignalType]

readPrec :: ReadPrec SignalType

readListPrec :: ReadPrec [SignalType]

Show SignalType Source # 
Instance details

Defined in Xmobar.System.Signal

Methods

showsPrec :: Int -> SignalType -> ShowS

show :: SignalType -> String

showList :: [SignalType] -> ShowS

data Config Source #

The configuration data type

Constructors

Config 

Fields

  • font :: String

    Font

  • additionalFonts :: [String]

    List of alternative fonts

  • wmClass :: String

    X11 WM_CLASS property value

  • wmName :: String

    X11 WM_NAME property value

  • bgColor :: String

    Backgroud color

  • fgColor :: String

    Default font color

  • position :: XPosition

    Top Bottom or Static

  • textOutput :: Bool

    Write data to stdout instead of X

  • textOutputFormat :: TextOutputFormat

    Which color format to use for stdout: Ansi or Pango

  • textOffset :: Int

    Offset from top of window for text

  • textOffsets :: [Int]

    List of offsets for additionalFonts

  • iconOffset :: Int

    Offset from top of window for icons

  • border :: Border

    NoBorder TopB BottomB or FullB

  • borderColor :: String

    Border color

  • borderWidth :: Int

    Border width

  • alpha :: Int

    Transparency from 0 (transparent) to 255 (opaque)

  • hideOnStart :: Bool

    Hide (Unmap) the window on initialization

  • allDesktops :: Bool

    Tell the WM to map to all desktops

  • overrideRedirect :: Bool

    Needed for dock behaviour in some non-tiling WMs

  • pickBroadest :: Bool

    Use the broadest display instead of the first one by default

  • lowerOnStart :: Bool

    lower to the bottom of the window stack on initialization

  • persistent :: Bool

    Whether automatic hiding should be enabled or disabled

  • iconRoot :: FilePath

    Root folder for icons

  • commands :: [Runnable]

    For setting the command, the command arguments and refresh rate for the programs to run (optional)

  • sepChar :: String

    The character to be used for indicating commands in the output template (default %)

  • alignSep :: String

    Separators for left, center and right text alignment

  • template :: String

    The output template

  • verbose :: Bool

    Emit additional debug messages

  • signal :: SignalChan

    Channel to send signals to xmobar

  • dpi :: Double

    DPI scaling factor for fonts

Instances

Instances details
Read Config Source # 
Instance details

Defined in Xmobar.Config.Types

Methods

readsPrec :: Int -> ReadS Config

readList :: ReadS [Config]

readPrec :: ReadPrec Config

readListPrec :: ReadPrec [Config]

Show Config Source # 
Instance details

Defined in Xmobar.Config.Types

Methods

showsPrec :: Int -> Config -> ShowS

show :: Config -> String

showList :: [Config] -> ShowS

data XPosition Source #

The position datatype

Constructors

Top

Top of the screen, full width, auto height

TopH

Top of the screen, full width with specific height

Fields

  • Int

    Height (in pixels)

TopHM

Top of the screen, full width with specific height and margins

Fields

  • Int

    Height (in pixels)

  • Int

    Left margin (in pixels)

  • Int

    Right margin (in pixels)

  • Int

    Top margin (in pixels)

  • Int

    Bottom margin (in pixels)

TopW

Top of the screen with specific width (as screen percentage) and alignment

Fields

  • Align

    Alignement (L|C|R)

  • Int

    Width as screen percentage (0-100)

TopSize

Top of the screen with specific width (as screen percentage), height and alignment

Fields

  • Align

    Alignement (L|C|R)

  • Int

    Width as screen percentage (0-100)

  • Int

    Height (in pixels)

TopP

Top of the screen with specific left/right margins

Fields

  • Int

    Left margin (in pixels)

  • Int

    Right margin (in pixels)

Bottom

Bottom of the screen, full width, auto height

BottomH

Bottom of the screen, full width, with specific height

Fields

  • Int

    Height (in pixels)

BottomHM

Bottom of the screen with specific height and margins

Fields

  • Int

    Height (in pixels)

  • Int

    Left margin (in pixels)

  • Int

    Right margin (in pixels)

  • Int

    Top margin (in pixels)

  • Int

    Bottom margin (in pixels)

BottomP

Bottom of the screen with specific left/right margins

Fields

  • Int

    Left margin (in pixels)

  • Int

    Bottom margin (in pixels)

BottomW

Bottom of the screen with specific width (as screen percentage) and alignment and alignment

Fields

  • Align

    Alignement (L|C|R)

  • Int

    Width as screen percentage (0-100)

BottomSize

Bottom of the screen with specific width (as screen percentage), height and alignment

Fields

  • Align

    Alignement (L|C|R)

  • Int

    Width as screen percentage (0-100)

  • Int

    Height (in pixels)

Static

Static position and specific size

Fields

  • xpos :: Int

    Position X (in pixels)

  • ypos :: Int

    Position Y (in pixels)

  • width :: Int

    Width (in pixels)

  • height :: Int

    Height (in pixels)

OnScreen

Along with the position characteristics specify the screen to display the bar

Fields

Instances

Instances details
Read XPosition Source # 
Instance details

Defined in Xmobar.Config.Types

Methods

readsPrec :: Int -> ReadS XPosition

readList :: ReadS [XPosition]

readPrec :: ReadPrec XPosition

readListPrec :: ReadPrec [XPosition]

Show XPosition Source # 
Instance details

Defined in Xmobar.Config.Types

Methods

showsPrec :: Int -> XPosition -> ShowS

show :: XPosition -> String

showList :: [XPosition] -> ShowS

Eq XPosition Source # 
Instance details

Defined in Xmobar.Config.Types

Methods

(==) :: XPosition -> XPosition -> Bool

(/=) :: XPosition -> XPosition -> Bool

data Align Source #

Constructors

L 
R 
C 

Instances

Instances details
Read Align Source # 
Instance details

Defined in Xmobar.Config.Types

Methods

readsPrec :: Int -> ReadS Align

readList :: ReadS [Align]

readPrec :: ReadPrec Align

readListPrec :: ReadPrec [Align]

Show Align Source # 
Instance details

Defined in Xmobar.Config.Types

Methods

showsPrec :: Int -> Align -> ShowS

show :: Align -> String

showList :: [Align] -> ShowS

Eq Align Source # 
Instance details

Defined in Xmobar.Config.Types

Methods

(==) :: Align -> Align -> Bool

(/=) :: Align -> Align -> Bool

data Border Source #

Constructors

NoBorder 
TopB 
BottomB 
FullB 
TopBM Int 
BottomBM Int 
FullBM Int 

Instances

Instances details
Read Border Source # 
Instance details

Defined in Xmobar.Config.Types

Methods

readsPrec :: Int -> ReadS Border

readList :: ReadS [Border]

readPrec :: ReadPrec Border

readListPrec :: ReadPrec [Border]

Show Border Source # 
Instance details

Defined in Xmobar.Config.Types

Methods

showsPrec :: Int -> Border -> ShowS

show :: Border -> String

showList :: [Border] -> ShowS

Eq Border Source # 
Instance details

Defined in Xmobar.Config.Types

Methods

(==) :: Border -> Border -> Bool

(/=) :: Border -> Border -> Bool

data TextOutputFormat Source #

Constructors

Plain 
Ansi 
Pango 
Swaybar 

Instances

Instances details
Read TextOutputFormat Source # 
Instance details

Defined in Xmobar.Config.Types

Show TextOutputFormat Source # 
Instance details

Defined in Xmobar.Config.Types

Methods

showsPrec :: Int -> TextOutputFormat -> ShowS

show :: TextOutputFormat -> String

showList :: [TextOutputFormat] -> ShowS

Eq TextOutputFormat Source # 
Instance details

Defined in Xmobar.Config.Types

type FontIndex = Int Source #

data Box Source #

Constructors

Box 

Fields

Instances

Instances details
Show Box Source # 
Instance details

Defined in Xmobar.Config.Types

Methods

showsPrec :: Int -> Box -> ShowS

show :: Box -> String

showList :: [Box] -> ShowS

Eq Box Source # 
Instance details

Defined in Xmobar.Config.Types

Methods

(==) :: Box -> Box -> Bool

(/=) :: Box -> Box -> Bool

data BoxBorder Source #

Instances

Instances details
Read BoxBorder Source # 
Instance details

Defined in Xmobar.Config.Types

Methods

readsPrec :: Int -> ReadS BoxBorder

readList :: ReadS [BoxBorder]

readPrec :: ReadPrec BoxBorder

readListPrec :: ReadPrec [BoxBorder]

Show BoxBorder Source # 
Instance details

Defined in Xmobar.Config.Types

Methods

showsPrec :: Int -> BoxBorder -> ShowS

show :: BoxBorder -> String

showList :: [BoxBorder] -> ShowS

Eq BoxBorder Source # 
Instance details

Defined in Xmobar.Config.Types

Methods

(==) :: BoxBorder -> BoxBorder -> Bool

(/=) :: BoxBorder -> BoxBorder -> Bool

data BoxOffset Source #

Constructors

BoxOffset Align Int32 

Instances

Instances details
Show BoxOffset Source # 
Instance details

Defined in Xmobar.Config.Types

Methods

showsPrec :: Int -> BoxOffset -> ShowS

show :: BoxOffset -> String

showList :: [BoxOffset] -> ShowS

Eq BoxOffset Source # 
Instance details

Defined in Xmobar.Config.Types

Methods

(==) :: BoxOffset -> BoxOffset -> Bool

(/=) :: BoxOffset -> BoxOffset -> Bool

data BoxMargins Source #

Constructors

BoxMargins Int32 Int32 Int32 Int32 

Instances

Instances details
Show BoxMargins Source # 
Instance details

Defined in Xmobar.Config.Types

Methods

showsPrec :: Int -> BoxMargins -> ShowS

show :: BoxMargins -> String

showList :: [BoxMargins] -> ShowS

Eq BoxMargins Source # 
Instance details

Defined in Xmobar.Config.Types

Methods

(==) :: BoxMargins -> BoxMargins -> Bool

(/=) :: BoxMargins -> BoxMargins -> Bool

data TextRenderInfo Source #

Constructors

TextRenderInfo 

Fields

Instances

Instances details
Show TextRenderInfo Source # 
Instance details

Defined in Xmobar.Config.Types

Methods

showsPrec :: Int -> TextRenderInfo -> ShowS

show :: TextRenderInfo -> String

showList :: [TextRenderInfo] -> ShowS

data Widget Source #

Constructors

Icon String 
Text String 
Hspace Int32 

Instances

Instances details
Show Widget Source # 
Instance details

Defined in Xmobar.Config.Types

Methods

showsPrec :: Int -> Widget -> ShowS

show :: Widget -> String

showList :: [Widget] -> ShowS

newtype SignalChan Source #

Constructors

SignalChan 

Fields

Instances

Instances details
Read SignalChan Source # 
Instance details

Defined in Xmobar.Config.Types

Methods

readsPrec :: Int -> ReadS SignalChan

readList :: ReadS [SignalChan]

readPrec :: ReadPrec SignalChan

readListPrec :: ReadPrec [SignalChan]

Show SignalChan Source # 
Instance details

Defined in Xmobar.Config.Types

Methods

showsPrec :: Int -> SignalChan -> ShowS

show :: SignalChan -> String

showList :: [SignalChan] -> ShowS

data Action Source #

Constructors

Spawn [Button] String 

Instances

Instances details
Read Action Source # 
Instance details

Defined in Xmobar.Run.Actions

Methods

readsPrec :: Int -> ReadS Action

readList :: ReadS [Action]

readPrec :: ReadPrec Action

readListPrec :: ReadPrec [Action]

Show Action Source # 
Instance details

Defined in Xmobar.Run.Actions

Methods

showsPrec :: Int -> Action -> ShowS

show :: Action -> String

showList :: [Action] -> ShowS

Eq Action Source # 
Instance details

Defined in Xmobar.Run.Actions

Methods

(==) :: Action -> Action -> Bool

(/=) :: Action -> Action -> Bool

type Button = Word32 Source #

readConfig :: Config -> FilePath -> IO (Either ParseError (Config, [String])) Source #

Reads the configuration from a file or an error if it cannot be parsed.

parseConfig :: Config -> String -> Either ParseError (Config, [String]) Source #

Parse the config, logging a list of fields that were missing and replaced by the default definition.

indexedFont :: Config -> FontIndex -> String Source #

Extracts from a configuration the additional font at the corresponding index. Returns the default font if not present.

indexedOffset :: Config -> FontIndex -> Int Source #

Extracts from a configuration the offset at the corresponding index. Returns the default offset if not present.

colorComponents :: Config -> String -> (String, String) Source #

Splits a colors string into its two components

data ArchUpdates Source #

Constructors

ArchUpdates (String, String, String) Rate 

Instances

Instances details
Read ArchUpdates Source # 
Instance details

Defined in Xmobar.Plugins.ArchUpdates

Methods

readsPrec :: Int -> ReadS ArchUpdates

readList :: ReadS [ArchUpdates]

readPrec :: ReadPrec ArchUpdates

readListPrec :: ReadPrec [ArchUpdates]

Show ArchUpdates Source # 
Instance details

Defined in Xmobar.Plugins.ArchUpdates

Methods

showsPrec :: Int -> ArchUpdates -> ShowS

show :: ArchUpdates -> String

showList :: [ArchUpdates] -> ShowS

Exec ArchUpdates Source # 
Instance details

Defined in Xmobar.Plugins.ArchUpdates

Methods

alias :: ArchUpdates -> String Source #

rate :: ArchUpdates -> Int Source #

run :: ArchUpdates -> IO String Source #

start :: ArchUpdates -> (String -> IO ()) -> IO () Source #

trigger :: ArchUpdates -> (Maybe SignalType -> IO ()) -> IO () Source #

data BufferedPipeReader Source #

Constructors

BufferedPipeReader String [(Int, Bool, String)] 

Instances

Instances details
Read BufferedPipeReader Source # 
Instance details

Defined in Xmobar.Plugins.BufferedPipeReader

Show BufferedPipeReader Source # 
Instance details

Defined in Xmobar.Plugins.BufferedPipeReader

Methods

showsPrec :: Int -> BufferedPipeReader -> ShowS

show :: BufferedPipeReader -> String

showList :: [BufferedPipeReader] -> ShowS

Exec BufferedPipeReader Source # 
Instance details

Defined in Xmobar.Plugins.BufferedPipeReader

Methods

alias :: BufferedPipeReader -> String Source #

rate :: BufferedPipeReader -> Int Source #

run :: BufferedPipeReader -> IO String Source #

start :: BufferedPipeReader -> (String -> IO ()) -> IO () Source #

trigger :: BufferedPipeReader -> (Maybe SignalType -> IO ()) -> IO () Source #

data CommandReader Source #

Constructors

CommandReader String String 

Instances

Instances details
Read CommandReader Source # 
Instance details

Defined in Xmobar.Plugins.CommandReader

Methods

readsPrec :: Int -> ReadS CommandReader

readList :: ReadS [CommandReader]

readPrec :: ReadPrec CommandReader

readListPrec :: ReadPrec [CommandReader]

Show CommandReader Source # 
Instance details

Defined in Xmobar.Plugins.CommandReader

Methods

showsPrec :: Int -> CommandReader -> ShowS

show :: CommandReader -> String

showList :: [CommandReader] -> ShowS

Exec CommandReader Source # 
Instance details

Defined in Xmobar.Plugins.CommandReader

Methods

alias :: CommandReader -> String Source #

rate :: CommandReader -> Int Source #

run :: CommandReader -> IO String Source #

start :: CommandReader -> (String -> IO ()) -> IO () Source #

trigger :: CommandReader -> (Maybe SignalType -> IO ()) -> IO () Source #

data Date Source #

Constructors

Date String String Int 

Instances

Instances details
Read Date Source # 
Instance details

Defined in Xmobar.Plugins.Date

Methods

readsPrec :: Int -> ReadS Date

readList :: ReadS [Date]

readPrec :: ReadPrec Date

readListPrec :: ReadPrec [Date]

Show Date Source # 
Instance details

Defined in Xmobar.Plugins.Date

Methods

showsPrec :: Int -> Date -> ShowS

show :: Date -> String

showList :: [Date] -> ShowS

Exec Date Source # 
Instance details

Defined in Xmobar.Plugins.Date

Methods

alias :: Date -> String Source #

rate :: Date -> Int Source #

run :: Date -> IO String Source #

start :: Date -> (String -> IO ()) -> IO () Source #

trigger :: Date -> (Maybe SignalType -> IO ()) -> IO () Source #

date :: IORef TimeZone -> String -> IO String Source #

data DateZone Source #

Constructors

DateZone String String String String Int 

Instances

Instances details
Read DateZone Source # 
Instance details

Defined in Xmobar.Plugins.DateZone

Methods

readsPrec :: Int -> ReadS DateZone

readList :: ReadS [DateZone]

readPrec :: ReadPrec DateZone

readListPrec :: ReadPrec [DateZone]

Show DateZone Source # 
Instance details

Defined in Xmobar.Plugins.DateZone

Methods

showsPrec :: Int -> DateZone -> ShowS

show :: DateZone -> String

showList :: [DateZone] -> ShowS

Exec DateZone Source # 
Instance details

Defined in Xmobar.Plugins.DateZone

Methods

alias :: DateZone -> String Source #

rate :: DateZone -> Int Source #

run :: DateZone -> IO String Source #

start :: DateZone -> (String -> IO ()) -> IO () Source #

trigger :: DateZone -> (Maybe SignalType -> IO ()) -> IO () Source #

data EWMH Source #

Constructors

EWMH 
EWMHFMT Component 

Instances

Instances details
Read EWMH Source # 
Instance details

Defined in Xmobar.Plugins.EWMH

Methods

readsPrec :: Int -> ReadS EWMH

readList :: ReadS [EWMH]

readPrec :: ReadPrec EWMH

readListPrec :: ReadPrec [EWMH]

Show EWMH Source # 
Instance details

Defined in Xmobar.Plugins.EWMH

Methods

showsPrec :: Int -> EWMH -> ShowS

show :: EWMH -> String

showList :: [EWMH] -> ShowS

Exec EWMH Source # 
Instance details

Defined in Xmobar.Plugins.EWMH

Methods

alias :: EWMH -> String Source #

rate :: EWMH -> Int Source #

run :: EWMH -> IO String Source #

start :: EWMH -> (String -> IO ()) -> IO () Source #

trigger :: EWMH -> (Maybe SignalType -> IO ()) -> IO () Source #

data HandleReader Source #

A HandleReader displays any text received from a Handle.

This is only useful if you are running xmobar from other Haskell code. You can create a pair of (read, write) Handles using createPipe. Pass the read Handle to HandleReader and write your desired output to the write Handle.

 (readHandle, writeHandle) <- createPipe
 xmobarProcess <- forkProcess $ xmobar myConfig
         { commands =
             Run (HandleReader readHandle "handle") : commands myConfig
         }
 hPutStr writeHandle "Hello World"

Constructors

HandleReader 

Fields

  • Handle

    The Handle to read from.

  • String

    Alias for the HandleReader

Instances

Instances details
Read HandleReader Source #

WARNING: This Read instance will throw an exception if used! It is only implemented because it is required to use HandleReader with Run in commands.

Instance details

Defined in Xmobar.Plugins.HandleReader

Methods

readsPrec :: Int -> ReadS HandleReader

readList :: ReadS [HandleReader]

readPrec :: ReadPrec HandleReader

readListPrec :: ReadPrec [HandleReader]

Show HandleReader Source # 
Instance details

Defined in Xmobar.Plugins.HandleReader

Methods

showsPrec :: Int -> HandleReader -> ShowS

show :: HandleReader -> String

showList :: [HandleReader] -> ShowS

Exec HandleReader Source #

Asynchronously read from the Handle.

Instance details

Defined in Xmobar.Plugins.HandleReader

Methods

alias :: HandleReader -> String Source #

rate :: HandleReader -> Int Source #

run :: HandleReader -> IO String Source #

start :: HandleReader -> (String -> IO ()) -> IO () Source #

trigger :: HandleReader -> (Maybe SignalType -> IO ()) -> IO () Source #

data QueueReader a Source #

A QueueReader displays data from an 'TQueue a' where the data items a are rendered by a user supplied function.

Like the HandleReader plugin this is only useful if you are running xmobar from other Haskell code. You should create a new TQueue a and pass it to this plugin.

main :: IO
main = do
  q <- STM.newQueueIO @String
  bar <- forkIO $ xmobar conf
    { commands = Run (QueueReader q id Queue) : commands conf }
  STM.atomically $ STM.writeTQueue q "Some Message"

Constructors

QueueReader 

Fields

Instances

Instances details
Read (QueueReader a) Source #

WARNING: This read instance will throw an exception if used! It is only implemented, because it is required by Run in commands.

Instance details

Defined in Xmobar.Plugins.QueueReader

Methods

readsPrec :: Int -> ReadS (QueueReader a)

readList :: ReadS [QueueReader a]

readPrec :: ReadPrec (QueueReader a)

readListPrec :: ReadPrec [QueueReader a]

Show (QueueReader a) Source #

This cannot be read back.

Instance details

Defined in Xmobar.Plugins.QueueReader

Methods

showsPrec :: Int -> QueueReader a -> ShowS

show :: QueueReader a -> String

showList :: [QueueReader a] -> ShowS

Exec (QueueReader a) Source #

Async queue/channel reading.

Instance details

Defined in Xmobar.Plugins.QueueReader

Methods

alias :: QueueReader a -> String Source #

rate :: QueueReader a -> Int Source #

run :: QueueReader a -> IO String Source #

start :: QueueReader a -> (String -> IO ()) -> IO () Source #

trigger :: QueueReader a -> (Maybe SignalType -> IO ()) -> IO () Source #

newtype Kbd Source #

Constructors

Kbd [(String, String)] 

Instances

Instances details
Read Kbd Source # 
Instance details

Defined in Xmobar.Plugins.Kbd

Methods

readsPrec :: Int -> ReadS Kbd

readList :: ReadS [Kbd]

readPrec :: ReadPrec Kbd

readListPrec :: ReadPrec [Kbd]

Show Kbd Source # 
Instance details

Defined in Xmobar.Plugins.Kbd

Methods

showsPrec :: Int -> Kbd -> ShowS

show :: Kbd -> String

showList :: [Kbd] -> ShowS

Exec Kbd Source # 
Instance details

Defined in Xmobar.Plugins.Kbd

Methods

alias :: Kbd -> String Source #

rate :: Kbd -> Int Source #

run :: Kbd -> IO String Source #

start :: Kbd -> (String -> IO ()) -> IO () Source #

trigger :: Kbd -> (Maybe SignalType -> IO ()) -> IO () Source #

data Locks Source #

Constructors

Locks 
Locks' [(String, (String, String))] 

Instances

Instances details
Read Locks Source # 
Instance details

Defined in Xmobar.Plugins.Locks

Methods

readsPrec :: Int -> ReadS Locks

readList :: ReadS [Locks]

readPrec :: ReadPrec Locks

readListPrec :: ReadPrec [Locks]

Show Locks Source # 
Instance details

Defined in Xmobar.Plugins.Locks

Methods

showsPrec :: Int -> Locks -> ShowS

show :: Locks -> String

showList :: [Locks] -> ShowS

Exec Locks Source # 
Instance details

Defined in Xmobar.Plugins.Locks

Methods

alias :: Locks -> String Source #

rate :: Locks -> Int Source #

run :: Locks -> IO String Source #

start :: Locks -> (String -> IO ()) -> IO () Source #

trigger :: Locks -> (Maybe SignalType -> IO ()) -> IO () Source #

data Mail Source #

A list of mail box names and paths to maildirs.

Constructors

Mail [(String, FilePath)] String 

Instances

Instances details
Read Mail Source # 
Instance details

Defined in Xmobar.Plugins.Mail

Methods

readsPrec :: Int -> ReadS Mail

readList :: ReadS [Mail]

readPrec :: ReadPrec Mail

readListPrec :: ReadPrec [Mail]

Show Mail Source # 
Instance details

Defined in Xmobar.Plugins.Mail

Methods

showsPrec :: Int -> Mail -> ShowS

show :: Mail -> String

showList :: [Mail] -> ShowS

Exec Mail Source # 
Instance details

Defined in Xmobar.Plugins.Mail

Methods

alias :: Mail -> String Source #

rate :: Mail -> Int Source #

run :: Mail -> IO String Source #

start :: Mail -> (String -> IO ()) -> IO () Source #

trigger :: Mail -> (Maybe SignalType -> IO ()) -> IO () Source #

data MailX Source #

A list of mail box names, paths to maildirs and display colors.

Constructors

MailX [(String, FilePath, String)] [String] String 

Instances

Instances details
Read MailX Source # 
Instance details

Defined in Xmobar.Plugins.Mail

Methods

readsPrec :: Int -> ReadS MailX

readList :: ReadS [MailX]

readPrec :: ReadPrec MailX

readListPrec :: ReadPrec [MailX]

Show MailX Source # 
Instance details

Defined in Xmobar.Plugins.Mail

Methods

showsPrec :: Int -> MailX -> ShowS

show :: MailX -> String

showList :: [MailX] -> ShowS

Exec MailX Source # 
Instance details

Defined in Xmobar.Plugins.Mail

Methods

alias :: MailX -> String Source #

rate :: MailX -> Int Source #

run :: MailX -> IO String Source #

start :: MailX -> (String -> IO ()) -> IO () Source #

trigger :: MailX -> (Maybe SignalType -> IO ()) -> IO () Source #

data MBox Source #

A list of display names, paths to mbox files and display colours, followed by a list of options.

Constructors

MBox [(String, FilePath, String)] [String] String 

Instances

Instances details
Read MBox Source # 
Instance details

Defined in Xmobar.Plugins.MBox

Methods

readsPrec :: Int -> ReadS MBox

readList :: ReadS [MBox]

readPrec :: ReadPrec MBox

readListPrec :: ReadPrec [MBox]

Show MBox Source # 
Instance details

Defined in Xmobar.Plugins.MBox

Methods

showsPrec :: Int -> MBox -> ShowS

show :: MBox -> String

showList :: [MBox] -> ShowS

Exec MBox Source # 
Instance details

Defined in Xmobar.Plugins.MBox

Methods

alias :: MBox -> String Source #

rate :: MBox -> Int Source #

run :: MBox -> IO String Source #

start :: MBox -> (String -> IO ()) -> IO () Source #

trigger :: MBox -> (Maybe SignalType -> IO ()) -> IO () Source #

data NotmuchMail Source #

A full mail configuration.

Constructors

NotmuchMail 

Fields

Instances

Instances details
Read NotmuchMail Source # 
Instance details

Defined in Xmobar.Plugins.NotmuchMail

Methods

readsPrec :: Int -> ReadS NotmuchMail

readList :: ReadS [NotmuchMail]

readPrec :: ReadPrec NotmuchMail

readListPrec :: ReadPrec [NotmuchMail]

Show NotmuchMail Source # 
Instance details

Defined in Xmobar.Plugins.NotmuchMail

Methods

showsPrec :: Int -> NotmuchMail -> ShowS

show :: NotmuchMail -> String

showList :: [NotmuchMail] -> ShowS

Exec NotmuchMail Source #

How to execute this plugin.

Instance details

Defined in Xmobar.Plugins.NotmuchMail

Methods

alias :: NotmuchMail -> String Source #

rate :: NotmuchMail -> Int Source #

run :: NotmuchMail -> IO String Source #

start :: NotmuchMail -> (String -> IO ()) -> IO () Source #

trigger :: NotmuchMail -> (Maybe SignalType -> IO ()) -> IO () Source #

data MailItem Source #

A MailItem is a name, an address, and a query to give to notmuch.

Constructors

MailItem 

Fields

  • name :: String

    Display name for the item in the bar

  • address :: String

    Only check for mail sent to this address; may be the empty string to query all indexed mail instead

  • query :: String

    Query to give to notmuch search

Instances

Instances details
Read MailItem Source # 
Instance details

Defined in Xmobar.Plugins.NotmuchMail

Methods

readsPrec :: Int -> ReadS MailItem

readList :: ReadS [MailItem]

readPrec :: ReadPrec MailItem

readListPrec :: ReadPrec [MailItem]

Show MailItem Source # 
Instance details

Defined in Xmobar.Plugins.NotmuchMail

Methods

showsPrec :: Int -> MailItem -> ShowS

show :: MailItem -> String

showList :: [MailItem] -> ShowS

data Monitors Source #

Instances

Instances details
Read Monitors Source # 
Instance details

Defined in Xmobar.Plugins.Monitors

Methods

readsPrec :: Int -> ReadS Monitors

readList :: ReadS [Monitors]

readPrec :: ReadPrec Monitors

readListPrec :: ReadPrec [Monitors]

Show Monitors Source # 
Instance details

Defined in Xmobar.Plugins.Monitors

Methods

showsPrec :: Int -> Monitors -> ShowS

show :: Monitors -> String

showList :: [Monitors] -> ShowS

Eq Monitors Source # 
Instance details

Defined in Xmobar.Plugins.Monitors

Methods

(==) :: Monitors -> Monitors -> Bool

(/=) :: Monitors -> Monitors -> Bool

Exec Monitors Source # 
Instance details

Defined in Xmobar.Plugins.Monitors

Methods

alias :: Monitors -> String Source #

rate :: Monitors -> Int Source #

run :: Monitors -> IO String Source #

start :: Monitors -> (String -> IO ()) -> IO () Source #

trigger :: Monitors -> (Maybe SignalType -> IO ()) -> IO () Source #

type Rate = Int Source #

type Interface = String Source #

type Args = [String] Source #

type Program = String Source #

type Alias = String Source #

type DiskSpec = [(String, String)] Source #

type Zone = String Source #

type ZoneNo = Int Source #

type Slot = String Source #

type Station = String Source #

type SkyConditions = [(String, String)] Source #

data PipeReader Source #

Constructors

PipeReader String String 

Instances

Instances details
Read PipeReader Source # 
Instance details

Defined in Xmobar.Plugins.PipeReader

Methods

readsPrec :: Int -> ReadS PipeReader

readList :: ReadS [PipeReader]

readPrec :: ReadPrec PipeReader

readListPrec :: ReadPrec [PipeReader]

Show PipeReader Source # 
Instance details

Defined in Xmobar.Plugins.PipeReader

Methods

showsPrec :: Int -> PipeReader -> ShowS

show :: PipeReader -> String

showList :: [PipeReader] -> ShowS

Exec PipeReader Source # 
Instance details

Defined in Xmobar.Plugins.PipeReader

Methods

alias :: PipeReader -> String Source #

rate :: PipeReader -> Int Source #

run :: PipeReader -> IO String Source #

start :: PipeReader -> (String -> IO ()) -> IO () Source #

trigger :: PipeReader -> (Maybe SignalType -> IO ()) -> IO () Source #

data MarqueePipeReader Source #

Constructors

MarqueePipeReader String (Length, Rate, Separator) String 

Instances

Instances details
Read MarqueePipeReader Source # 
Instance details

Defined in Xmobar.Plugins.MarqueePipeReader

Show MarqueePipeReader Source # 
Instance details

Defined in Xmobar.Plugins.MarqueePipeReader

Methods

showsPrec :: Int -> MarqueePipeReader -> ShowS

show :: MarqueePipeReader -> String

showList :: [MarqueePipeReader] -> ShowS

Exec MarqueePipeReader Source # 
Instance details

Defined in Xmobar.Plugins.MarqueePipeReader

Methods

alias :: MarqueePipeReader -> String Source #

rate :: MarqueePipeReader -> Int Source #

run :: MarqueePipeReader -> IO String Source #

start :: MarqueePipeReader -> (String -> IO ()) -> IO () Source #

trigger :: MarqueePipeReader -> (Maybe SignalType -> IO ()) -> IO () Source #

data StdinReader Source #

Instances

Instances details
Read StdinReader Source # 
Instance details

Defined in Xmobar.Plugins.StdinReader

Methods

readsPrec :: Int -> ReadS StdinReader

readList :: ReadS [StdinReader]

readPrec :: ReadPrec StdinReader

readListPrec :: ReadPrec [StdinReader]

Show StdinReader Source # 
Instance details

Defined in Xmobar.Plugins.StdinReader

Methods

showsPrec :: Int -> StdinReader -> ShowS

show :: StdinReader -> String

showList :: [StdinReader] -> ShowS

Exec StdinReader Source # 
Instance details

Defined in Xmobar.Plugins.StdinReader

Methods

alias :: StdinReader -> String Source #

rate :: StdinReader -> Int Source #

run :: StdinReader -> IO String Source #

start :: StdinReader -> (String -> IO ()) -> IO () Source #

trigger :: StdinReader -> (Maybe SignalType -> IO ()) -> IO () Source #

data XMonadLog Source #

Constructors

XMonadLog 
UnsafeXMonadLog 
XPropertyLog String 
UnsafeXPropertyLog String 
NamedXPropertyLog String String 
UnsafeNamedXPropertyLog String String 

Instances

Instances details
Read XMonadLog Source # 
Instance details

Defined in Xmobar.Plugins.XMonadLog

Methods

readsPrec :: Int -> ReadS XMonadLog

readList :: ReadS [XMonadLog]

readPrec :: ReadPrec XMonadLog

readListPrec :: ReadPrec [XMonadLog]

Show XMonadLog Source # 
Instance details

Defined in Xmobar.Plugins.XMonadLog

Methods

showsPrec :: Int -> XMonadLog -> ShowS

show :: XMonadLog -> String

showList :: [XMonadLog] -> ShowS

Exec XMonadLog Source # 
Instance details

Defined in Xmobar.Plugins.XMonadLog

Methods

alias :: XMonadLog -> String Source #

rate :: XMonadLog -> Int Source #

run :: XMonadLog -> IO String Source #

start :: XMonadLog -> (String -> IO ()) -> IO () Source #

trigger :: XMonadLog -> (Maybe SignalType -> IO ()) -> IO () Source #