config/.config/xmobar/xmobarrc-single.hs
2022-04-25 16:36:45 +09:30

139 lines
6.9 KiB
Haskell

Config {
-- appearance
font = "xft:Fira Code:size=9:antialias=true:hinting=true"
, additionalFonts = [ "xft:FiraCode Nerd Font:size=9:antialias=true:hinting=true" ]
, bgColor = "#282a36"
, fgColor = "#f8f8f2"
, position = Top
, border = BottomB
, borderColor = "#282a36"
, iconRoot = "/home/solomon/.xmonad/xpm/" -- default: "."
-- layout
, sepChar = "%" -- delineator between plugin names and straight text
, alignSep = "}{" -- separator between left-right alignment
, template = " <action=`xdotool key super+a`><icon=haskell_20.xpm/></action> <fc=#bd93f9>%cpu% %memory%</fc> <action=`nm-connection-editor`>%network%</action> <action=`toggle-sink-mute`>%volume%</action> <fc=#6272a4>|</fc> %UnsafeStdinReader% }{ %keyboard% <fc=#6272a4>|</fc> %date% <fc=#6272a4>|</fc> %YPAD% <fc=#6272a4>|</fc> %updates% %trayerpad%"
-- general behavior
, lowerOnStart = True -- send to bottom of window stack on start
, hideOnStart = False -- start with window unmapped (hidden)
, allDesktops = True -- show on all desktops
, overrideRedirect = True -- set the Override Redirect flag (Xlib)
, pickBroadest = False -- choose widest display (multi-monitor)
, persistent = True -- enable/disable hiding (True = disabled)
-- plugins
-- Numbers can be automaticallJy colored according to their value. xmobar
-- decides color based on a three-tier/two-cutoff system, controlled by
-- command options:
-- --Low sets the low cutoff
-- --High sets the high cutoff
--
-- --low sets the color below --Low cutoff
-- --normal sets the color between --Low and --High cutoffs
-- --High sets the color above --High cutoff
--
-- The --template option controls how the plugin is displayed. Text
-- color can be set by enclosing in <fc></fc> tags. For more details
-- see http://projects.haskell.org/xmobar/#system-monitor-plugins.
, commands =
-- weather monitor
[ Run Weather "YPAD" ["--template" , "<station>: <tempC><fn=1>\x00b0</fn>C"
, "--Low" , "10"
, "--High" , "25"
, "--normal" , "#50fa7b"
, "--high" , "#ff5555"
, "--low" , "lightblue"
] 36000
-- network activity monitor
-- , Run Network "enp33s0" [ "--template" , "eth: <icon=net_up_20.xpm/><tx>kB/s <icon=net_down_20.xpm/><rx>kB/s"
-- , "--Low" , "100000" -- units: B/s
-- , "--High" , "500000" -- units: B/s
-- , "--low" , "#50fa7b"
-- , "--normal" , "#ffb86c"
-- , "--high" , "#ff5555"
-- ] 10
-- , Run Network "wlp36s0" [ "--template" , "wlan: <icon=net_up_20.xpm/><tx>kB/s <icon=net_down_20.xpm/><rx>kB/s"
-- , "--Low" , "100000" -- units: B/s
-- , "--High" , "500000" -- units: B/s
-- , "--low" , "#50fa7b"
-- , "--normal" , "#ffb86c"
-- , "--high" , "#ff5555"
-- ] 10
-- network activity monitor (dynamic interface resolution)
-- , Run DynNetwork [ "--template" , "net: <tx>kB/s <rx>kB/s"
-- , "--Low" , "100000" -- units: B/s
-- , "--High" , "500000" -- units: B/s
-- , "--low" , "#50fa7b"
-- , "--normal" , "#ffb86c"
-- , "--high" , "#ff5555"
-- ] 10
-- cpu activity monitor
, Run Cpu [ "--template" , "cpu <total>%"
, "--Low" , "30" -- units: %
, "--High" , "60" -- units: %
, "--low" , "#50fa7b"
, "--normal" , "#ffb86c"
, "--high" , "#ff5555"
] 10
-- memory usage monitor
-- , Run Memory [ "--template" ,"mem: <usedratio>% (<used>Mb)"
, Run Memory [ "--template" ,"mem <usedratio>%"
, "--Low" , "20" -- units: %
, "--High" , "70" -- units: %
, "--low" , "#50fa7b"
, "--normal" , "#ffb86c"
, "--high" , "#ff5555"
] 10
-- time and date indicator
-- (%F = y-m-d date, %a = day of week, %T = h:m:s time)
, Run Date "<fc=#268bd2><fn=1>\xf073 </fn>%a %_d %b %Y</fc> <fc=#6272a4>|</fc> <fc=#2AA198><fn=1>\xf017 </fn>%H:%M:%S</fc>" "date" 10
-- keyboard layout indicator
-- , Run Kbd [ ("us(dvorak)" , "DV")
-- , ("us" , "US")
-- ]
-- Battery information. This is likely to require some customization
-- based upon your specific hardware. Or, for a desktop you may want
-- to just remove this section entirely.
-- , Run BatteryP ["BAT0"]
-- [ "--template", "<acstatus> <left>%, <timeleft>"
-- , "-L", "10", "-H", "80"
-- , "-l", "#ff5555", "-h", "#50fa7b"
-- , "--", "-O", "Charging", "-o", "Battery"
-- -- , "-a", "notify-send -u critical 'Battery running out!!'"
-- -- , "-A", "10"
-- ] 10
-- Runs a standard shell command 'uname -r' to get kernel version
-- , Run Com "uname" ["-r"] "" 3600
-- Runs a simple script that counts the number of system updates to apply
, Run Com "xmobar-status-updates" [] "updates" 3600
-- Script that dynamically adjusts xmobar padding depending on number of trayer icons.
, Run Com "xmobar-trayer-padding-icon" [] "trayerpad" 20
-- Script that pulls network information and builds string to display
, Run Com "xmobar-status-net" [] "network" 5
-- Script that pulls keyboard layout and builds string to display
, Run Com "xmobar-status-keyboard" [] "keyboard" 20
-- Script that pulls volume related data and builds string to dislpay
, Run Com "xmobar-status-vol" [] "volume" 5
-- Prints out the left side items such as workspaces, layout, etc.
, Run UnsafeStdinReader
]
}