;==========================================================
;
;
;   ██████╗  ██████╗ ██╗  ██╗   ██╗██████╗  █████╗ ██████╗
;   ██╔══██╗██╔═══██╗██║  ╚██╗ ██╔╝██╔══██╗██╔══██╗██╔══██╗
;   ██████╔╝██║   ██║██║   ╚████╔╝ ██████╔╝███████║██████╔╝
;   ██╔═══╝ ██║   ██║██║    ╚██╔╝  ██╔══██╗██╔══██║██╔══██╗
;   ██║     ╚██████╔╝███████╗██║   ██████╔╝██║  ██║██║  ██║
;   ╚═╝      ╚═════╝ ╚══════╝╚═╝   ╚═════╝ ╚═╝  ╚═╝╚═╝  ╚═╝
;
;
;   To learn more about how to configure Polybar
;   go to https://github.com/polybar/polybar
;
;   The README contains a lot of information
;
;==========================================================

[colors]
background = #171520
background-alt = #130f23
foreground = #dfdfdf
foreground-alt = #555
primary = #ffb52a
secondary = #e60053
alert = #bd2c40

ws-active-fg = #ffffff
ws-active-bg = #d33682
ws-active-ul = #d33682

ws-occupied-fg = #268bd2
ws-occupied-bg = #130f23
ws-occupied-ul = #130f23

ws-empty-fg = #02fc45
ws-empty-bg = ${colors.background}
ws-empty-ul = ${colors.background}

[bar/mybar]
;monitor = ${env:MONITOR:HDMI-1}
width = 100%
height = 35
offset-x = 0%
offset-y = 0%
radius = 0
fixed-center = false
bottom = 0

background = ${colors.background}
foreground = ${colors.foreground}

line-size = 3
line-color = #f00

border-size = 0
border-color = #00000000

padding-left = 0
padding-right = 2

module-margin-left = 1
module-margin-right = 2

font-0 = "Sauce Code Pro:size=12"
font-1 = "Source Han Sans JP Normal:size=12"
font-2 = fixed:pixelsize=10;1
font-3 = unifont:fontformat=truetype:size=8:antialias=false;0
font-4 = siji:pixelsize=10;1

modules-left = ewmh xwindow
modules-right = pulseaudio memory cpu temperature xkeyboard wlan eth date

tray-position = right
tray-padding = 2
tray-background = #0063ff

;wm-restack = bspwm
;wm-restack = i3

override-redirect = true

;scroll-up = bspwm-desknext
;scroll-down = bspwm-deskprev

;scroll-up = i3wm-wsnext
;scroll-down = i3wm-wsprev

cursor-click = pointer
cursor-scroll = ns-resize


; same as mybar but with bspwm instead of ewmh module
[bar/mybar-bspwm]
;monitor = ${env:MONITOR:HDMI-1}
width = 100%
height = 35
offset-x = 0%
offset-y = 0%
radius = 0
fixed-center = false
bottom = 0

background = ${colors.background}
foreground = ${colors.foreground}

line-size = 3
line-color = #f00

border-size = 0
border-color = #00000000

padding-left = 0
padding-right = 2

module-margin-left = 1
module-margin-right = 2

font-0 = "Sauce Code Pro:size=12"
font-1 = "Source Han Sans JP Normal:size=12"
font-2 = fixed:pixelsize=10;1
font-3 = unifont:fontformat=truetype:size=8:antialias=false;0
font-4 = siji:pixelsize=10;1

modules-left = bspwm xwindow
modules-right = pulseaudio memory cpu temperature xkeyboard wlan eth date

tray-position = right
tray-padding = 2
tray-background = #0063ff

;wm-restack = bspwm
;wm-restack = i3

override-redirect = true

scroll-up = bspwm-desknext
scroll-down = bspwm-deskprev

cursor-click = pointer
cursor-scroll = ns-resize

[module/xwindow]
type = internal/xwindow
label = %title:0:50:...%

[module/xkeyboard]
type = internal/xkeyboard
;blacklist-0 = num lock

format-prefix = ""
format-prefix-foreground = ${colors.foreground-alt}
format-prefix-underline = ${colors.secondary}

label-layout = %layout%
label-layout-underline = ${colors.secondary}

label-indicator-padding = 2
label-indicator-margin = 1
label-indicator-background = ${colors.secondary}
label-indicator-underline = ${colors.secondary}

[module/filesystem]
type = internal/fs
interval = 25

mount-0 = /
mount-1 = /home
;mount-2 = /mnt

label-mounted = %{F#0a81f5}%mountpoint%%{F-}: %percentage_used%%
label-unmounted = %mountpoint% not mounted
label-unmounted-foreground = ${colors.foreground-alt}

[module/mpd]
type = internal/mpd
format-online = <label-song>  <icon-prev> <icon-stop> <toggle> <icon-next>

icon-prev = 
icon-stop = 
icon-play = 
icon-pause = 
icon-next = 

label-song-maxlen = 25
label-song-ellipsis = true

bar-width = 10
bar-indicator = |
bar-indicator-foreground = #fff
bar-indicator-font = 2
bar-fill = ─
bar-fill-font = 2
bar-fill-foreground = #9f78e1
bar-empty = ─
bar-empty-font = 2
bar-empty-foreground = ${colors.foreground-alt}

[module/cpu]
type = internal/cpu
interval = 2
format-prefix = ""
format-prefix-foreground = ${colors.foreground-alt}
format-underline = #f90000
label = %percentage:2%%

[module/memory]
type = internal/memory
interval = 2
format-prefix = ""
format-prefix-foreground = ${colors.foreground-alt}
format-underline = #4bffdc
label = %percentage_used%%

[module/wlan]
type = internal/network
interface = wlo1
interval = 3.0

format-connected = <ramp-signal> <label-connected>
format-connected-underline = #9f78e1
label-connected = %essid%

format-disconnected =
;format-disconnected = <label-disconnected>
;format-disconnected-underline = ${self.format-connected-underline}
;label-disconnected = %ifname% disconnected
;label-disconnected-foreground = ${colors.foreground-alt}

ramp-signal-0 =
ramp-signal-1 =
ramp-signal-2 =
ramp-signal-3 =
ramp-signal-4 =
ramp-signal-foreground = ${colors.foreground-alt}

[module/eth]
type = internal/network
interface = eno1
interval = 3.0

format-connected-underline = #55aa55
format-connected-prefix = ""
format-connected-prefix-foreground = ${colors.foreground-alt}
label-connected = %local_ip%

format-disconnected =
;format-disconnected = <label-disconnected>
;format-disconnected-underline = ${self.format-connected-underline}
;label-disconnected = %ifname% disconnected
;label-disconnected-foreground = ${colors.foreground-alt}

[module/date]
type = internal/date
interval = 5

;date =
;date-alt = " %d-%m-%Y"

time = %I:%M %p
time-alt = %d %B %Y (%A) %H:%M:%S

format-prefix =
format-prefix-foreground = ${colors.foreground-alt}
format-underline = #0a6cf5

label = %date% %time%

[module/pulseaudio]
type = internal/pulseaudio

;format-volume = <label-volume> <bar-volume>
format-volume = <label-volume>
label-volume = VOL %percentage%%
label-volume-foreground = ${root.foreground}

label-muted = muted
label-muted-foreground = #666

;bar-volume-width = 10
;bar-volume-foreground-0 = #55aa55
;bar-volume-foreground-1 = #55aa55
;bar-volume-foreground-2 = #55aa55
;bar-volume-foreground-3 = #55aa55
;bar-volume-foreground-4 = #55aa55
;bar-volume-foreground-5 = #f5a70a
;bar-volume-foreground-6 = #ff5555
;bar-volume-gradient = false
;bar-volume-indicator = |
;bar-volume-indicator-font = 2
;bar-volume-fill = ─
;bar-volume-fill-font = 2
;bar-volume-empty = ─
;bar-volume-empty-font = 2
;bar-volume-empty-foreground = ${colors.foreground-alt}

[module/alsa]
type = internal/alsa

format-volume = <label-volume> <bar-volume>
label-volume = VOL
label-volume-foreground = ${root.foreground}

format-muted-prefix = " "
format-muted-foreground = ${colors.foreground-alt}
label-muted = sound muted

bar-volume-width = 10
bar-volume-foreground-0 = #55aa55
bar-volume-foreground-1 = #55aa55
bar-volume-foreground-2 = #55aa55
bar-volume-foreground-3 = #55aa55
bar-volume-foreground-4 = #55aa55
bar-volume-foreground-5 = #f5a70a
bar-volume-foreground-6 = #ff5555
bar-volume-gradient = false
bar-volume-indicator = |
bar-volume-indicator-font = 2
bar-volume-fill = ─
bar-volume-fill-font = 2
bar-volume-empty = ─
bar-volume-empty-font = 2
bar-volume-empty-foreground = ${colors.foreground-alt}

[module/temperature]
type = internal/temperature
thermal-zone = 0
warn-temperature = 60

format = <ramp> <label>
format-underline = #f50a4d
format-warn = <ramp> <label-warn>
format-warn-underline = ${self.format-underline}

label = %temperature-c%
label-warn = %temperature-c%
label-warn-foreground = ${colors.secondary}

ramp-0 =
ramp-1 =
ramp-2 =
ramp-foreground = ${colors.foreground-alt}

[settings]
screenchange-reload = true
;compositing-background = xor
;compositing-background = screen
;compositing-foreground = source
;compositing-border = over
;pseudo-transparency = false

[global/wm]
margin-top = 0
margin-bottom = 0

; vim:ft=dosini

[module/ewmh]
type = internal/xworkspaces

pin-workspaces = false
enable-click = true
enable-scroll = false
format = <label-state>

label-monitor = %name%

label-active = %name%
label-active-foreground = ${colors.ws-active-fg}
label-active-background = ${colors.ws-active-bg}
label-active-underline = ${colors.ws-active-ul}
label-active-padding = 2

label-occupied = %name%
label-occupied-foreground = ${colors.ws-occupied-fg}
label-occupied-background = ${colors.ws-occupied-bg}
label-occupied-underline = ${colors.ws-occupied-ul}
label-occupied-padding = 2

label-empty = %name%
label-empty-foreground = ${colors.ws-empty-fg}
label-empty-background = ${colors.ws-empty-bg}
label-empty-underline = ${colors.ws-empty-ul}
label-empty-padding = 2

label-urgent = %name%
label-urgent-foreground = #000000
label-urgent-background = #bd2c40
label-urgent-underline = #9b0a20
label-urgent-padding = 4

[module/bspwm]
type = internal/bspwm

; this is exactly the same as ewmh but the type is different
; somehow ewmh conflicts with lxsession in bspwm
pin-workspaces = false
enable-click = true
enable-scroll = false
format = <label-state>

label-monitor = %name%

label-active = %name%
label-active-foreground = ${colors.ws-active-fg}
label-active-background = ${colors.ws-active-bg}
label-active-underline = ${colors.ws-active-ul}
label-active-padding = 2

label-occupied = %name%
label-occupied-foreground = ${colors.ws-occupied-fg}
label-occupied-background = ${colors.ws-occupied-bg}
label-occupied-underline = ${colors.ws-occupied-ul}
label-occupied-padding = 2

label-empty = %name%
label-empty-foreground = ${colors.ws-empty-fg}
label-empty-background = ${colors.ws-empty-bg}
label-empty-underline = ${colors.ws-empty-ul}
label-empty-padding = 2

label-urgent = %name%
label-urgent-foreground = #000000
label-urgent-background = #bd2c40
label-urgent-underline = #9b0a20
label-urgent-padding = 4